[nongnu] elpa/popup 1ed0404318: ci: No more platform specific
branch: elpa/popup commit 1ed0404318eed671a7172c5d09def59f29aa Author: Jen-Chieh Shen Commit: Jen-Chieh Shen ci: No more platform specific --- Makefile | 17 + 1 file changed, 5 insertions(+), 12 deletions(-) diff --git a/Makefile b/Makefile index b195fa999f..7a6c52ecdb 100644 --- a/Makefile +++ b/Makefile @@ -5,18 +5,12 @@ EASK ?= eask TEST-FILES := $(shell ls test/popup-*.el) -.PHONY: clean package install compile lint unix-test +.PHONY: clean checkdoc lint package install compile test ci: clean package install compile -clean: - @echo "Cleaning..." - $(EASK) clean-all - package: @echo "Packaging..." - $(EASK) autoloads - $(EASK) pkg-file $(EASK) package install: @@ -27,10 +21,9 @@ compile: @echo "Compiling..." $(EASK) compile -lint: - @echo "Linting..." - $(EASK) lint - -unix-test: +test: @echo "Testing..." $(EASK) exec ert-runner -L . $(LOAD-TEST-FILES) -t '!no-win' -t '!org' + +clean: + rm -rf .cask *.elc
[elpa] externals/cape 6c02a8ed24: cape-dabbrev: More flexible `cape-dabbrev-check-other-buffers' (#35)
branch: externals/cape commit 6c02a8ed24d0f4a8b0200d0846c53340654afb9c Author: Ingo Lohmar Commit: GitHub cape-dabbrev: More flexible `cape-dabbrev-check-other-buffers' (#35) Previously, the setting was boolean, and it checked only the current or (basically) all other buffers. This adds an option to use any other non-nil value, which allows the user to make use of dabbrev's "select-buffer" mechanism. --- cape.el | 14 ++ 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/cape.el b/cape.el index e17888b7fd..a016b62774 100644 --- a/cape.el +++ b/cape.el @@ -68,8 +68,14 @@ auto completion does not pop up too aggressively." :type 'integer) (defcustom cape-dabbrev-check-other-buffers t - "Buffers to check for dabbrev." - :type 'boolean) + "Buffers to check for dabbrev. + +If t, check all other buffers (subject to dabbrev ignore rules). +Any other non-nil value only checks some other buffers, as per +`dabbrev-select-buffers-function'." + :type '(choice (const :tag "off" nil) +(const :tag "some" 'some) +(other :tag "all" t))) (defcustom cape-file-directory-must-exist t "The parent directory must exist for file completion." @@ -529,8 +535,8 @@ If INTERACTIVE is nil the function acts like a capf." "Find all dabbrev expansions for WORD." (require 'dabbrev) (cape--silent -(let ((dabbrev-check-all-buffers cape-dabbrev-check-other-buffers) - (dabbrev-check-other-buffers cape-dabbrev-check-other-buffers)) +(let ((dabbrev-check-other-buffers (not (null cape-dabbrev-check-other-buffers))) + (dabbrev-check-all-buffers (eq cape-dabbrev-check-other-buffers t))) (dabbrev--reset-global-variables)) (cl-loop with min-len = (+ cape-dabbrev-min-length (length word)) for w in (dabbrev--find-all-expansions word (dabbrev--ignore-case-p word))
[elpa] externals/cape 25591ef5a2: Add cape-capf-prefix-length (Fix #33)
branch: externals/cape commit 25591ef5a2bd0acefb2ca82a610c24909ae7a2ba Author: Daniel Mendler Commit: Daniel Mendler Add cape-capf-prefix-length (Fix #33) --- README.org | 1 + cape.el| 16 ++-- 2 files changed, 15 insertions(+), 2 deletions(-) diff --git a/README.org b/README.org index 6c50dd12c9..15383d74d9 100644 --- a/README.org +++ b/README.org @@ -222,6 +222,7 @@ achieve a similarly refreshing strategy. - ~cape-wrap-case-fold~, ~cape-capf-case-fold~: Create a Capf which is case insensitive. - ~cape-wrap-properties~, ~cape-capf-properties~: Add completion properties to a Capf. - ~cape-wrap-predicate~, ~cape-capf-predicate~: Add candidate predicate to a Capf. +- ~cape-wrap-prefix-length~, ~cape-capf-prefix-length~: Enforce a minimal prefix length. * Contributions diff --git a/cape.el b/cape.el index a016b62774..29465800a7 100644 --- a/cape.el +++ b/cape.el @@ -74,8 +74,8 @@ If t, check all other buffers (subject to dabbrev ignore rules). Any other non-nil value only checks some other buffers, as per `dabbrev-select-buffers-function'." :type '(choice (const :tag "off" nil) -(const :tag "some" 'some) -(other :tag "all" t))) + (const :tag "some" 'some) + (other :tag "all" t))) (defcustom cape-file-directory-must-exist t "The parent directory must exist for file completion." @@ -1066,6 +1066,17 @@ If DONT-FOLD is non-nil return a case sensitive table instead." (`(,beg ,end ,table . ,plist) `(,beg ,end ,(cape--noninterruptible-table table) ,@plist +;;;###autoload +(defun cape-wrap-prefix-length (capf length) + "Call CAPF and ensure that prefix length is greater or equal than LENGTH. +If the prefix is long enough, enforce auto completion." + (pcase (funcall capf) +(`(,beg ,end ,table . ,plist) + (when (>= (- end beg) length) + `(,beg ,end ,table + :company-prefix-length t + ,@plist) + ;;;###autoload (defun cape-wrap-purify (capf) "Call CAPF and ensure that it does not modify the buffer." @@ -1102,6 +1113,7 @@ If DONT-FOLD is non-nil return a case sensitive table instead." (cape--capf-wrapper properties) (cape--capf-wrapper buster) (cape--capf-wrapper purify) +(cape--capf-wrapper prefix-length) (provide 'cape) ;;; cape.el ends here
[elpa] externals/cape ee826d70fd: Add missing autoloads
branch: externals/cape commit ee826d70fdd2e8324a4af1a427ea9ce54f5e32e6 Author: Daniel Mendler Commit: Daniel Mendler Add missing autoloads --- cape.el | 20 +++- 1 file changed, 11 insertions(+), 9 deletions(-) diff --git a/cape.el b/cape.el index 29465800a7..85a8bf6c57 100644 --- a/cape.el +++ b/cape.el @@ -1100,20 +1100,22 @@ If the prefix is long enough, enforce auto completion." `(defun ,(intern (format "cape-capf-%s" wrapper)) (&rest args) (lambda () (apply #',(intern (format "cape-wrap-%s" wrapper)) args -;;;###autoload (autoload 'cape-capf-noninterruptible "cape") -;;;###autoload (autoload 'cape-capf-case-fold "cape") -;;;###autoload (autoload 'cape-capf-silent "cape") -;;;###autoload (autoload 'cape-capf-predicate "cape") -;;;###autoload (autoload 'cape-capf-properties "cape") ;;;###autoload (autoload 'cape-capf-buster "cape") -(cape--capf-wrapper noninterruptible) +(cape--capf-wrapper buster) +;;;###autoload (autoload 'cape-capf-case-fold "cape") (cape--capf-wrapper case-fold) -(cape--capf-wrapper silent) +;;;###autoload (autoload 'cape-capf-noninterruptible "cape") +(cape--capf-wrapper noninterruptible) +;;;###autoload (autoload 'cape-capf-predicate "cape") (cape--capf-wrapper predicate) +;;;###autoload (autoload 'cape-capf-prefix-length "cape") +(cape--capf-wrapper prefix-length) +;;;###autoload (autoload 'cape-capf-properties "cape") (cape--capf-wrapper properties) -(cape--capf-wrapper buster) +;;;###autoload (autoload 'cape-capf-purify "cape") (cape--capf-wrapper purify) -(cape--capf-wrapper prefix-length) +;;;###autoload (autoload 'cape-capf-silent "cape") +(cape--capf-wrapper silent) (provide 'cape) ;;; cape.el ends here
[elpa] externals/hyperbole 422cf12f3e 1/2: Fix multi-level hyrolo-add entry and add a test case
branch: externals/hyperbole commit 422cf12f3ef49ce1b248a9d171176e8aace741fb Author: Bob Weiner Commit: Bob Weiner Fix multi-level hyrolo-add entry and add a test case --- ChangeLog| 6 + hyrolo.el| 65 ++-- test/hyrolo-tests.el | 14 ++- 3 files changed, 56 insertions(+), 29 deletions(-) diff --git a/ChangeLog b/ChangeLog index 7ebf46475d..5feea8a5b4 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2022-03-26 Bob Weiner + +* hyrolo.el (hyrolo-add): Fix both top-level and multi-level insertion. +(hyrolo-entry-name-regexp): Add. + test/hyrolo-tests.el (hyrolo-add-items-at-multiple-levels): Add from Mats. + 2022-03-20 Bob Weiner * HY-NEWS (New Tree Promotion/Demotion Keys): diff --git a/hyrolo.el b/hyrolo.el index 2fda1b9a2b..3869ce73a0 100644 --- a/hyrolo.el +++ b/hyrolo.el @@ -3,7 +3,7 @@ ;; Author: Bob Weiner ;; ;; Orig-Date: 7-Jun-89 at 22:08:29 -;; Last-Mod: 20-Mar-22 at 10:53:11 by Bob Weiner +;; Last-Mod: 26-Mar-22 at 14:57:44 by Bob Weiner ;; ;; Copyright (C) 1991-2021 Free Software Foundation, Inc. ;; See the "HY-COPY" file for license information. @@ -65,6 +65,9 @@ It must contain a %s indicating where to put the entry name and a second :type 'string :group 'hyperbole-rolo) +(defvar hyrolo-entry-name-regexp "[-_a-zA-Z0-9@.]+\\( ?, ?[-_a-zA-Z0-9@.]+\\)?" + "*Regexp matching a hyrolo entry name after matching to `hyrolo-entry-regexp'.") + (defcustom hyrolo-find-file-function #'find-file "*Function to interactively display a `hyrolo-file-list' file for editing. Use the `hyrolo-edit' function instead to edit a new or existing entry." @@ -209,14 +212,16 @@ entry which begins with the parent string." (let ((parent "") (level "") end) (widen) (goto-char 1) -(while (string-match "\\`[^\]\[<>{}\"]*/" name) +;; If name includes slash level separator character, walk down +;; existing matching tree of entries to find insertion point. +(while (string-match "\\`[^\]\[/<>{}\"]*/" name) (setq end (1- (match-end 0)) parent (substring name 0 end) name (substring name (min (1+ end) (length name (if (re-search-forward - (concat hyrolo-entry-regexp (regexp-quote parent)) nil t) + (concat hyrolo-entry-regexp (regexp-quote parent) "\\s-") nil t) (setq level (match-string-no-properties hyrolo-entry-group-number)) - (error "(hyrolo-add): `%s' category not found in \"%s\"" + (error "(hyrolo-add): Insertion failed, `%s' parent entry not found in \"%s\"" parent file))) (narrow-to-region (point) (progn (hyrolo-to-entry-end t (length level)) (point))) (let* ((len (length name)) @@ -233,36 +238,40 @@ entry which begins with the parent string." ;; to that of `name'. (if (and (= level-len 1) (equal hyrolo-entry-regexp "^\\(\\*+\\)\\([ \t]+\\)")) - (progn (goto-char (point-min)) -(if (re-search-forward (concat hyrolo-entry-regexp - (regexp-quote (char-to-string first-char))) - nil t) -(goto-char (match-beginning 0)) - (goto-char (point-max)) - (if (and (> first-char ?0) - (re-search-backward -(concat "^\\*[ \t]+[" -(substring - "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz" - 0 (min (- first-char ?0) 62)) -"]") -nil t)) - (progn (goto-char (match-end 0)) - (hyrolo-to-entry-end t level-len) - ;; Now at the insertion point, immediately after - ;; the last existing entry whose first character - ;; is less than that of `name'. Setting `again' - ;; to nil prevents further searching for an - ;; insertion point. - (setq again nil) + (let ((case-fold-search)) + (goto-char (point-min)) + (if (re-search-forward (concat hyrolo-entry-regexp + (regexp-quote (char-to-string first-char))) + nil t) + (goto-char (match-beginning 0)) + (goto-char (point-max)) + (if (and (> first-char ?0) + (re-search-backward + (concat "^\\*[ \t]+[" + (substring + "0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[]^_`abcdefghijklmnopqrstuvwxyz" +0 (min (-
[elpa] externals/hyperbole 1907156d82 2/2: Merge branch 'master' of hyperbole
branch: externals/hyperbole commit 1907156d828ddf01c1fa5d6d39387e432ca60361 Merge: 422cf12f3e e9ed3706b5 Author: Bob Weiner Commit: Bob Weiner Merge branch 'master' of hyperbole --- ChangeLog | 6 ++ test/hib-kbd-tests.el | 7 ++- 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index 5feea8a5b4..35cc1f054e 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,9 +1,15 @@ +<<< HEAD 2022-03-26 Bob Weiner * hyrolo.el (hyrolo-add): Fix both top-level and multi-level insertion. (hyrolo-entry-name-regexp): Add. test/hyrolo-tests.el (hyrolo-add-items-at-multiple-levels): Add from Mats. +2022-03-26 Mats Lidell + +* test/hib-kbd-tests.el (kbd-key-hy-demo-factorial-test): Preload DEMO +file to avoid race with *ert* display. + 2022-03-20 Bob Weiner * HY-NEWS (New Tree Promotion/Demotion Keys): diff --git a/test/hib-kbd-tests.el b/test/hib-kbd-tests.el index 291181afac..bca9e0d56f 100644 --- a/test/hib-kbd-tests.el +++ b/test/hib-kbd-tests.el @@ -3,7 +3,7 @@ ;; Author: Mats Lidell ;; ;; Orig-Date:30-Jan-21 at 12:00:00 -;; Last-Mod: 6-Feb-22 at 00:55:55 by Bob Weiner +;; Last-Mod: 26-Mar-22 at 11:25:43 by Mats Lidell ;; ;; Copyright (C) 2021 Free Software Foundation, Inc. ;; See the "HY-COPY" file for license information. @@ -36,6 +36,11 @@ (skip-unless (not noninteractive)) (unwind-protect (progn +;; Preload DEMO file to avoid race with *ert* buffer and set +;; *ert* buffer current +(hypb:display-file-with-logo "DEMO") +(set-buffer "*ert*") + (should (hact 'kbd-key "C-u C-h h d d")) (hy-test-helpers:consume-input-events) (should (string= (buffer-name (current-buffer)) "DEMO" ))
[elpa] externals/eglot 7a0b93a76d: Close #900: Map more Emacs variables to LSP FormattingOptions fields
branch: externals/eglot commit 7a0b93a76d1c53811a1670eb8f8091e3536aa248 Author: Felicián Németh Commit: GitHub Close #900: Map more Emacs variables to LSP FormattingOptions fields * eglot.el (eglot-format): Map require-final-newline to insertFinalNewline and delete-trailing-lines to trimFinalNewlines. --- eglot.el | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/eglot.el b/eglot.el index 1c16240890..58ad4588ae 100644 --- a/eglot.el +++ b/eglot.el @@ -2381,7 +2381,9 @@ is not active." (cl-list* :textDocument (eglot--TextDocumentIdentifier) :options (list :tabSize tab-width - :insertSpaces (if indent-tabs-mode :json-false t)) + :insertSpaces (if indent-tabs-mode :json-false t) + :insertFinalNewline (if require-final-newline t :json-false) + :trimFinalNewlines (if delete-trailing-lines t :json-false)) args) :deferred method
[nongnu] elpa/geiser 9507e81a07: Shorten docstring that is over 80 characters wide
branch: elpa/geiser commit 9507e81a075351d090fd1f4f708efd05d6470cba Author: Jonas Bernoulli Commit: Jonas Bernoulli Shorten docstring that is over 80 characters wide The byte-compiler complained about it. --- elisp/geiser-connection.el | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/elisp/geiser-connection.el b/elisp/geiser-connection.el index b269727d6b..c1d5712d2b 100644 --- a/elisp/geiser-connection.el +++ b/elisp/geiser-connection.el @@ -261,7 +261,7 @@ (interrupt-process proc (defun geiser-con--wait (req timeout) - "Wait for the given request REQ to finish, up to TIMEOUT msecs, returning its result." + "Wait up to TIMEOUT msecs for request REQ to finish, returning its result." (let* ((con (or (geiser-con--request-connection req) (error "Geiser connection not active"))) (proc (geiser-con--connection-process con))
[elpa] externals/company 073aef72dd: Add a wrapper for the wrapper, to handle misbehaving capfs
branch: externals/company commit 073aef72ddf93f897a856c246c58dcdfe003674e Author: Dmitry Gutov Commit: Dmitry Gutov Add a wrapper for the wrapper, to handle misbehaving capfs See https://github.com/company-mode/company-mode/discussions/1278. Fixes #409 and fixes #974. --- company-capf.el | 14 +- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/company-capf.el b/company-capf.el index 6c8dcc78a5..84b79de679 100644 --- a/company-capf.el +++ b/company-capf.el @@ -67,9 +67,21 @@ so we can't just use the preceding variable instead.") (completion-at-point-functions (company--capf-workaround)) (data (run-hook-wrapped 'completion-at-point-functions ;; Ignore misbehaving functions. - #'completion--capf-wrapper 'optimist))) + #'company--capf-wrapper 'optimist))) (when (and (consp (cdr data)) (integer-or-marker-p (nth 1 data))) data))) +(defun company--capf-wrapper (fun which) + (let ((buffer-read-only t) +(inhibit-read-only nil) +(completion-in-region-function + (lambda (beg end coll pred) + (throw 'company--illegal-completion-in-region + (list fun beg end coll :predicate pred) +(catch 'company--illegal-completion-in-region + (condition-case nil + (completion--capf-wrapper fun which) +(buffer-read-only nil) + (declare-function python-shell-get-process "python") (defun company--capf-workaround ()
[nongnu] elpa/parseclj b04eae6738 2/2: Merge pull request #39 from ikappaki/issue/symbol-pipe-char
branch: elpa/parseclj commit b04eae67384c1d8181edf318fd62d422a8220724 Merge: f32c041f2b bd11cf4a42 Author: Arne Brasseur Commit: GitHub Merge pull request #39 from ikappaki/issue/symbol-pipe-char add `|` to the list of valid symbol chars --- parseclj-lex.el | 16 +++- test/parseclj-lex-test.el | 7 ++- 2 files changed, 21 insertions(+), 2 deletions(-) diff --git a/parseclj-lex.el b/parseclj-lex.el index 42145b12e4..0dfab226db 100644 --- a/parseclj-lex.el +++ b/parseclj-lex.el @@ -29,6 +29,20 @@ (require 'parseclj-alist) +(defcustom parseclj-lex-symbol-special-chars + '(?. ?* ?+ ?! ?- ?_ ?? ?$ ?% ?& ?= ?< ?> ?/ ?') + "The list of characters that can consitute a symbol or keyword's name. + +Please note that Clojure might at runtime accept keywords with +more constituent characters than those found in the default value +of this variable (which is the officially supported list), but +the end result should be treated as undefined. This could be the +case for example when keywordized maps are created from external +sources without keyword validation. Change this value at your +own risk." + :type 'sexp + :group 'parseclj) + (defvar parseclj-lex--leaf-tokens '(:whitespace :comment :symbolic-value @@ -303,7 +317,7 @@ alphabetic characters only. ALPHA-ONLY ensures this behavior." (not (not (and char (or (and (<= ?a char) (<= char ?z)) (and (<= ?A char) (<= char ?Z)) - (and (not alpha-only) (member char '(?. ?* ?+ ?! ?- ?_ ?? ?$ ?% ?& ?= ?< ?> ?/ ?' + (and (not alpha-only) (member char parseclj-lex-symbol-special-chars))) (defun parseclj-lex-symbol-rest-p (char) "Return t if CHAR is a valid character in a symbol. diff --git a/test/parseclj-lex-test.el b/test/parseclj-lex-test.el index dbf71c3003..63a910defd 100644 --- a/test/parseclj-lex-test.el +++ b/test/parseclj-lex-test.el @@ -309,7 +309,12 @@ (should (equal (parseclj-lex-symbol-rest-p ?A) t)) (should (equal (parseclj-lex-symbol-rest-p ?.) t)) (should (equal (parseclj-lex-symbol-rest-p ?~) nil)) - (should (equal (parseclj-lex-symbol-rest-p ? ) nil))) + (should (equal (parseclj-lex-symbol-rest-p ? ) nil)) + + (should (equal (parseclj-lex-symbol-rest-p ?|) nil)) + (let ((parseclj-lex-symbol-special-chars (cons ?| parseclj-lex-symbol-special-chars))) +(should (equal (parseclj-lex-symbol-rest-p ?|) t))) + (should (equal (parseclj-lex-symbol-rest-p ?|) nil))) (ert-deftest parseclj-lex-test-get-symbol-at-point () (with-temp-buffer
[nongnu] elpa/parseclj bd11cf4a42 1/2: Make list of symbol/keyword constituent characters a custom option
branch: elpa/parseclj commit bd11cf4a42abbe718a017d1cb4256172d38b7415 Author: ikappaki Commit: ikappaki Make list of symbol/keyword constituent characters a custom option --- parseclj-lex.el | 16 +++- test/parseclj-lex-test.el | 7 ++- 2 files changed, 21 insertions(+), 2 deletions(-) diff --git a/parseclj-lex.el b/parseclj-lex.el index 42145b12e4..0dfab226db 100644 --- a/parseclj-lex.el +++ b/parseclj-lex.el @@ -29,6 +29,20 @@ (require 'parseclj-alist) +(defcustom parseclj-lex-symbol-special-chars + '(?. ?* ?+ ?! ?- ?_ ?? ?$ ?% ?& ?= ?< ?> ?/ ?') + "The list of characters that can consitute a symbol or keyword's name. + +Please note that Clojure might at runtime accept keywords with +more constituent characters than those found in the default value +of this variable (which is the officially supported list), but +the end result should be treated as undefined. This could be the +case for example when keywordized maps are created from external +sources without keyword validation. Change this value at your +own risk." + :type 'sexp + :group 'parseclj) + (defvar parseclj-lex--leaf-tokens '(:whitespace :comment :symbolic-value @@ -303,7 +317,7 @@ alphabetic characters only. ALPHA-ONLY ensures this behavior." (not (not (and char (or (and (<= ?a char) (<= char ?z)) (and (<= ?A char) (<= char ?Z)) - (and (not alpha-only) (member char '(?. ?* ?+ ?! ?- ?_ ?? ?$ ?% ?& ?= ?< ?> ?/ ?' + (and (not alpha-only) (member char parseclj-lex-symbol-special-chars))) (defun parseclj-lex-symbol-rest-p (char) "Return t if CHAR is a valid character in a symbol. diff --git a/test/parseclj-lex-test.el b/test/parseclj-lex-test.el index dbf71c3003..63a910defd 100644 --- a/test/parseclj-lex-test.el +++ b/test/parseclj-lex-test.el @@ -309,7 +309,12 @@ (should (equal (parseclj-lex-symbol-rest-p ?A) t)) (should (equal (parseclj-lex-symbol-rest-p ?.) t)) (should (equal (parseclj-lex-symbol-rest-p ?~) nil)) - (should (equal (parseclj-lex-symbol-rest-p ? ) nil))) + (should (equal (parseclj-lex-symbol-rest-p ? ) nil)) + + (should (equal (parseclj-lex-symbol-rest-p ?|) nil)) + (let ((parseclj-lex-symbol-special-chars (cons ?| parseclj-lex-symbol-special-chars))) +(should (equal (parseclj-lex-symbol-rest-p ?|) t))) + (should (equal (parseclj-lex-symbol-rest-p ?|) nil))) (ert-deftest parseclj-lex-test-get-symbol-at-point () (with-temp-buffer