[nongnu] elpa/evil 1e9b243426: Fix evil-with-delay with dynamic binding

2023-08-13 Thread ELPA Syncer
branch: elpa/evil
commit 1e9b2434264529fe0dd964b68fe89236a4abeac3
Author: Axel Forsman 
Commit: Axel Forsman 

Fix evil-with-delay with dynamic binding

If dynamic binding is used when expanding the macro, then the function
will not capture fun-name as a closure. Fix this by using
apply-partially which is defined in a source file that uses lexical
binding.
---
 evil-common.el | 12 +++-
 1 file changed, 7 insertions(+), 5 deletions(-)

diff --git a/evil-common.el b/evil-common.el
index 84b0817c17..9504cda27f 100644
--- a/evil-common.el
+++ b/evil-common.el
@@ -59,11 +59,13 @@ If LOCAL is non-nil, the buffer-local value of HOOK is 
modified."
 (macroexp-let2* nil
 ((fun-name `(make-symbol
  ,(or name (format "evil-delay-in-%s" hook-sym
- (fun `(lambda (&rest _)
- (when ,(or condition t)
-   (remove-hook ,hook-sym ,fun-name ,local)
-   ,@body
-   t
+ (fun `(apply-partially
+(lambda (name &rest _)
+  (when ,(or condition t)
+(remove-hook ,hook-sym name ,local)
+,@body
+t))
+,fun-name)))
   `(unless ,(and condition `(funcall ,fun))
  (progn (fset ,fun-name ,fun)
 ,@(when local `((put ,fun-name 'permanent-local-hook t)))



[nongnu] elpa/helm be0b88584b 2/2: Add package-vc-checkout and package-vc-install to package category

2023-08-13 Thread ELPA Syncer
branch: elpa/helm
commit be0b88584b26cdff4ff508b002d3abd57955a779
Author: Thierry Volpiatto 
Commit: Thierry Volpiatto 

Add package-vc-checkout and package-vc-install to package category
---
 helm-mode.el | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/helm-mode.el b/helm-mode.el
index e47345f7b6..58c7ec1314 100644
--- a/helm-mode.el
+++ b/helm-mode.el
@@ -998,6 +998,8 @@ behavior as emacs vanilla.")
 ("find-variable" . symbol-help)
 ("kill-buffer" . buffer)
 ("package-install" . package)
+("package-vc-install" . package)
+("package-vc-checkout" . package)
 ("describe-package" . package))
   "An alist to specify metadata category by command.
 



[nongnu] elpa/helm-core updated (8ca4af16d7 -> be0b88584b)

2023-08-13 Thread ELPA Syncer
elpasync pushed a change to branch elpa/helm-core.

  from  8ca4af16d7 Declare package fns in helm-mode
  adds  adb4810105 Improve package affix fn
  adds  be0b88584b Add package-vc-checkout and package-vc-install to 
package category

No new revisions were added by this update.

Summary of changes:
 helm-mode.el | 19 ---
 1 file changed, 16 insertions(+), 3 deletions(-)



[nongnu] elpa/helm adb4810105 1/2: Improve package affix fn

2023-08-13 Thread ELPA Syncer
branch: elpa/helm
commit adb4810105b63fff25b7b60004b30e304c17709f
Author: Thierry Volpiatto 
Commit: Thierry Volpiatto 

Improve package affix fn
---
 helm-mode.el | 17 ++---
 1 file changed, 14 insertions(+), 3 deletions(-)

diff --git a/helm-mode.el b/helm-mode.el
index a0da4be59a..e47345f7b6 100644
--- a/helm-mode.el
+++ b/helm-mode.el
@@ -29,6 +29,7 @@
 (defvar helm-completion--sorting-done)
 (defvar helm-mode)
 (defvar password-cache)
+(defvar package--builtins)
 
 ;; No warnings in Emacs built --without-x
 (declare-function x-file-dialog "xfns.c")
@@ -40,6 +41,8 @@
 (declare-function help--symbol-class "help-fns.el")
 (declare-function helm-get-first-line-documentation "helm-elisp")
 (declare-function package-desc-summary   "package")
+(declare-function package-built-in-p "package")
+(declare-function package-desc-status "package")
 (declare-function package-get-descriptor "package")
 
 (defgroup helm-mode nil
@@ -1106,13 +1109,21 @@ is used."
 (defun helm-completion-package-affix (_completions)
   (lambda (comp)
 (let* ((sym (intern-soft comp))
-   (desc (helm-aand (package-get-descriptor sym)
-(package-desc-summary it)))
+   (id (package-get-descriptor sym))
+   (built-in (package-built-in-p sym))
+   (status (and id (package-desc-status id)))
+   (desc (if built-in
+ (aref (assoc-default sym package--builtins) 2)
+   (and id (package-desc-summary id
(sep (make-string (1+ (- (helm-in-buffer-get-longest-candidate)
 (length comp)))
  ? )))
   (list comp
-""
+(propertize
+ (if status
+ (format "%s " (substring status 0 1))
+   "b ")
+  'face 'font-lock-property-name-face)
 (or (helm-aand desc
(propertize (concat sep it) 'face 
'font-lock-warning-face)
(propertize " " 'display it))



[nongnu] elpa/helm updated (8ca4af16d7 -> be0b88584b)

2023-08-13 Thread ELPA Syncer
elpasync pushed a change to branch elpa/helm.

  from  8ca4af16d7 Declare package fns in helm-mode
   new  adb4810105 Improve package affix fn
   new  be0b88584b Add package-vc-checkout and package-vc-install to 
package category


Summary of changes:
 helm-mode.el | 19 ---
 1 file changed, 16 insertions(+), 3 deletions(-)



[elpa] externals/org updated (70a082c9fb -> 36dcb2a23c)

2023-08-13 Thread ELPA Syncer
elpasync pushed a change to branch externals/org.

  from  70a082c9fb org-babel-expand-src-block: Mention all the header 
arguments in the docstring
   new  a0830f94ea * testing/org-test.el: Avoid looking into .emacs.d when 
ran non-interactively
   new  36dcb2a23c org-babel-combine-header-arg-lists: Describe arguments 
in the docstring


Summary of changes:
 lisp/ob-core.el |  2 +-
 testing/org-test.el | 59 +++--
 2 files changed, 31 insertions(+), 30 deletions(-)



[elpa] externals/org a0830f94ea 1/2: * testing/org-test.el: Avoid looking into .emacs.d when ran non-interactively

2023-08-13 Thread ELPA Syncer
branch: externals/org
commit a0830f94ea434a3b802b94d8ac9ed286df8df8f4
Author: Ihor Radchenko 
Commit: Ihor Radchenko 

* testing/org-test.el: Avoid looking into .emacs.d when ran 
non-interactively

(org-test-load):
(org-test-update-id-locations): Set `org-id-locations-file' inside
test dir, but only when running in batch mode.

Reported-by: Morgan Smith 
Link: https://orgmode.org/list/ub84qp$6pu$1...@ciao.gmane.io
---
 testing/org-test.el | 59 +++--
 1 file changed, 30 insertions(+), 29 deletions(-)

diff --git a/testing/org-test.el b/testing/org-test.el
index 47687b9f7a..6030d33221 100644
--- a/testing/org-test.el
+++ b/testing/org-test.el
@@ -387,35 +387,34 @@ Tramp related features.  We mostly follow
 (defun org-test-load ()
   "Load up the Org test suite."
   (interactive)
-  (setq org-id-locations-file
-(expand-file-name ".test-org-id-locations" org-test-dir))
-  (cl-flet ((rld (base)
-;; Recursively load all files, if files throw errors
-;; then silently ignore the error and continue to the
-;; next file.  This allows files to error out if
-;; required executables aren't available.
-(mapc
- (lambda (path)
-   (if (file-directory-p path)
-   (rld path)
- (condition-case nil
- (when (string-match "\\`[A-Za-z].*\\.el\\'"
- (file-name-nondirectory path))
-(let ((feature-name
-   (intern
-(file-name-base
- (file-name-nondirectory path)
- (require feature-name path)))
-   (missing-test-dependency
-(let ((name (intern
- (concat "org-missing-dependency/"
- (file-name-nondirectory
-  (file-name-sans-extension 
path))
-  (eval `(ert-deftest ,name ()
-(skip-unless nil) ;; Make it prominent.
-   :expected-result :failed (should nil
- (directory-files base 'full
-  
"\\`\\([^.]\\|\\.\\([^.]\\|\\..\\)\\).*\\.el\\'"
+  (cl-flet
+  ((rld (base)
+;; Recursively load all files, if files throw errors
+;; then silently ignore the error and continue to the
+;; next file.  This allows files to error out if
+;; required executables aren't available.
+(mapc
+ (lambda (path)
+   (if (file-directory-p path)
+   (rld path)
+ (condition-case nil
+ (when (string-match "\\`[A-Za-z].*\\.el\\'"
+ (file-name-nondirectory path))
+(let ((feature-name
+   (intern
+(file-name-base
+ (file-name-nondirectory path)
+ (require feature-name path)))
+   (missing-test-dependency
+(let ((name (intern
+ (concat "org-missing-dependency/"
+ (file-name-nondirectory
+  (file-name-sans-extension path))
+  (eval `(ert-deftest ,name ()
+(skip-unless nil) ;; Make it prominent.
+   :expected-result :failed (should nil
+ (directory-files base 'full
+  "\\`\\([^.]\\|\\.\\([^.]\\|\\..\\)\\).*\\.el\\'"
 (rld (expand-file-name "lisp" org-test-dir
 
 (defun org-test-current-defun ()
@@ -447,6 +446,8 @@ Tramp related features.  We mostly follow
   (when (buffer-live-p b) (kill-buffer b)
 
 (defun org-test-update-id-locations ()
+  (setq org-id-locations-file
+(expand-file-name ".test-org-id-locations" org-test-dir))
   (org-id-update-id-locations
(directory-files
 org-test-example-dir 'full



[elpa] externals/org 36dcb2a23c 2/2: org-babel-combine-header-arg-lists: Describe arguments in the docstring

2023-08-13 Thread ELPA Syncer
branch: externals/org
commit 36dcb2a23c57d6eab50848fc137057c2635bca0a
Author: Ihor Radchenko 
Commit: Ihor Radchenko 

org-babel-combine-header-arg-lists: Describe arguments in the docstring

* lisp/ob-core.el (org-babel-combine-header-arg-lists): Describe all
the header arguments in the docstring.
---
 lisp/ob-core.el | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/lisp/ob-core.el b/lisp/ob-core.el
index 88ae0ec425..c26d236be1 100644
--- a/lisp/ob-core.el
+++ b/lisp/ob-core.el
@@ -966,7 +966,7 @@ arguments and pop open the results in a preview buffer."
   expanded)))
 
 (defun org-babel-combine-header-arg-lists (original &rest others)
-  "Combine a number of lists of header argument names and arguments."
+  "Combine ORIGINAL and OTHERS lists of header argument names and arguments."
   (let ((results (copy-sequence original)))
 (dolist (new-list others)
   (dolist (arg-pair new-list)



[elpa] externals/org updated (36dcb2a23c -> 34ee6f1a21)

2023-08-13 Thread ELPA Syncer
elpasync pushed a change to branch externals/org.

  from  36dcb2a23c org-babel-combine-header-arg-lists: Describe arguments 
in the docstring
   new  99cc9619c5 org-bibtex-yank: Fix bibtex parser not initialized in 
temp buffer
   new  34ee6f1a21 Merge branch 'bugfix'


Summary of changes:
 lisp/ol-bibtex.el | 5 -
 1 file changed, 4 insertions(+), 1 deletion(-)



[elpa] externals-release/org 99cc9619c5: org-bibtex-yank: Fix bibtex parser not initialized in temp buffer

2023-08-13 Thread ELPA Syncer
branch: externals-release/org
commit 99cc9619c562b5c21a292dec7351d05df37d39fd
Author: Ihor Radchenko 
Commit: Ihor Radchenko 

org-bibtex-yank: Fix bibtex parser not initialized in temp buffer

* lisp/ol-bibtex.el (org-bibtex-yank): Make sure that we parse bibtex
entry from the kill ring in a `bibtex-mode' buffer.  Otherwise,
calling `org-bibtex-read' (that calls `bibtex-parse-entry') may err
because some Bibtex parser variables are not initialized.

Reported-by: J. G. 
Link: 
https://orgmode.org/list/1939460027.3272000.1691771671...@mail.yahoo.com
---
 lisp/ol-bibtex.el | 5 -
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/lisp/ol-bibtex.el b/lisp/ol-bibtex.el
index fd9517233e..a16a4b3927 100644
--- a/lisp/ol-bibtex.el
+++ b/lisp/ol-bibtex.el
@@ -761,7 +761,10 @@ drawer."
   "If kill ring holds a bibtex entry yank it as an Org headline."
   (interactive)
   (let (entry)
-(with-temp-buffer (yank 1) (setf entry (org-bibtex-read)))
+(with-temp-buffer
+  (yank 1)
+  (bibtex-mode)
+  (setf entry (org-bibtex-read)))
 (if entry
(org-bibtex-write)
   (error "Yanked text does not appear to contain a BibTeX entry"



[elpa] externals/org 34ee6f1a21: Merge branch 'bugfix'

2023-08-13 Thread ELPA Syncer
branch: externals/org
commit 34ee6f1a21f8ab2b584a710570afd540f9445b86
Merge: 36dcb2a23c 99cc9619c5
Author: Ihor Radchenko 
Commit: Ihor Radchenko 

Merge branch 'bugfix'
---
 lisp/ol-bibtex.el | 5 -
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/lisp/ol-bibtex.el b/lisp/ol-bibtex.el
index 4308424a3f..17fbb9fbd4 100644
--- a/lisp/ol-bibtex.el
+++ b/lisp/ol-bibtex.el
@@ -765,7 +765,10 @@ drawer."
   "If kill ring holds a bibtex entry yank it as an Org headline."
   (interactive)
   (let (entry)
-(with-temp-buffer (yank 1) (setf entry (org-bibtex-read)))
+(with-temp-buffer
+  (yank 1)
+  (bibtex-mode)
+  (setf entry (org-bibtex-read)))
 (if entry
(org-bibtex-write)
   (error "Yanked text does not appear to contain a BibTeX entry"



[nongnu] elpa/helm 7f3fcf19b6 3/3: Normalize affixation function names

2023-08-13 Thread ELPA Syncer
branch: elpa/helm
commit 7f3fcf19b6e3b30a5df17a8bcc3ad4273f04d39c
Author: Thierry Volpiatto 
Commit: Thierry Volpiatto 

Normalize affixation function names
---
 helm-mode.el | 12 ++--
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/helm-mode.el b/helm-mode.el
index 9b30e15e46..e327ce2215 100644
--- a/helm-mode.el
+++ b/helm-mode.el
@@ -965,14 +965,14 @@ that use `helm-comp-read'.  See `helm-M-x' for example."
 ;;
 (defvar helm-completing-read-extra-metadata
   '((buffer . (metadata
-   (affixation-function . helm-completing-read-buffer-affix)
+   (affixation-function . helm-completing-read-buffer-affixation)
(category . buffer)
(flags . (helm-completing-read--buffer-lgst-mode
 (symbol-help . (metadata
-(affixation-function . 
helm--symbol-completion-table-affixation)
+(affixation-function . 
helm-symbol-completion-table-affixation)
 (category . symbol-help)))
 (package . (metadata
-(affixation-function . helm-completion-package-affix)
+(affixation-function . helm-completion-package-affixation)
 (category . package
   "Extra metadata for completing-read.
 
@@ -1009,7 +1009,7 @@ we allow here specifying the category of the completion 
provided by a specific
 command.  The command should be specified as a string and the category as a 
symbol.")
 
 (defvar helm-completing-read--buffer-lgst-mode nil)
-(defun helm-completing-read-buffer-affix (completions)
+(defun helm-completing-read-buffer-affixation (completions)
   (let ((len-mode (or helm-completing-read--buffer-lgst-mode
   (cl-loop for bname in completions
maximize (with-current-buffer bname
@@ -1052,7 +1052,7 @@ command.  The command should be specified as a string and 
the category as a symb
   (propertize " " 'display prefix)
   (propertize " " 'display suffix))
 
-(defun helm--symbol-completion-table-affixation (_completions)
+(defun helm-symbol-completion-table-affixation (_completions)
   "Override `help--symbol-completion-table-affixation'.
 
 Normally affixation functions use COMPLETIONS as arg, and return a list of
@@ -1109,7 +1109,7 @@ is used."
   (propertize " " 'display it))
  "")
 
-(defun helm-completion-package-affix (_completions)
+(defun helm-completion-package-affixation (_completions)
   (lambda (comp)
 (let* ((sym (intern-soft comp))
(id (package-get-descriptor sym))



[nongnu] elpa/helm-core updated (be0b88584b -> 7f3fcf19b6)

2023-08-13 Thread ELPA Syncer
elpasync pushed a change to branch elpa/helm-core.

  from  be0b88584b Add package-vc-checkout and package-vc-install to 
package category
  adds  256eeddc8a Ensure file category is used when set from
  adds  0fcca93e42 Allow new category library
  adds  7f3fcf19b6 Normalize affixation function names

No new revisions were added by this update.

Summary of changes:
 helm-mode.el | 52 +++-
 1 file changed, 27 insertions(+), 25 deletions(-)



[nongnu] elpa/helm 0fcca93e42 2/3: Allow new category library

2023-08-13 Thread ELPA Syncer
branch: elpa/helm
commit 0fcca93e42feddefe7f8ebefc98ccd68677d0884
Author: Thierry Volpiatto 
Commit: Thierry Volpiatto 

Allow new category library

This is needed to differency file and library completions.

Now use CATEGORY instead of FILE-COMP-P as argument for
helm-completion--initial-filter.
---
 helm-mode.el | 36 ++--
 1 file changed, 18 insertions(+), 18 deletions(-)

diff --git a/helm-mode.el b/helm-mode.el
index 55d4a0e0fc..9b30e15e46 100644
--- a/helm-mode.el
+++ b/helm-mode.el
@@ -996,7 +996,7 @@ behavior as emacs vanilla.")
 ("customize-group" . symbol-help)
 ("find-function" . symbol-help)
 ("find-variable" . symbol-help)
-("find-library" . file) ; FIXME needs a special category library.
+("find-library" . library)
 ("kill-buffer" . buffer)
 ("package-install" . package)
 ("package-vc-install" . package)
@@ -1170,7 +1170,6 @@ dynamically otherwise use 
`helm-completing-read-default-2'."
  (afix (or (plist-get completion-extra-properties :affixation-function)
(completion-metadata-get metadata 'affixation-function)))
  (category (completion-metadata-get metadata 'category))
- (file-comp-p (eq category 'file))
  (sort-fn (unless (eq helm-completion-style 'helm-fuzzy)
 (or
  (completion-metadata-get
@@ -1181,8 +1180,7 @@ dynamically otherwise use 
`helm-completing-read-default-2'."
 (helm-aif (assoc-default name helm-completing-read-command-categories)
 (unless (completion-metadata-get metadata 'category)
   (setq metadata `(metadata (category . ,it))
-category it
-file-comp-p (eq category 'file
+category it)))
 (helm-aif (and completions-detailed
(assoc-default category 
helm-completing-read-extra-metadata))
 (progn
@@ -1207,13 +1205,13 @@ dynamically otherwise use 
`helm-completing-read-default-2'."
  (memq require-match
'(confirm 
confirm-after-completion)))
 1 0)
-  :fc-transformer (append (and (or afix afun file-comp-p sort-fn)
+  :fc-transformer (append (and (or afix afun (memq category '(file 
library)) sort-fn)
(list (lambda (candidates _source)
(helm-completion--initial-filter
 (if (and sort-fn (> (length 
helm-pattern) 0))
 (funcall sort-fn 
candidates)
   candidates)
-afun afix file-comp-p
+afun afix category
   '(helm-cr-default-transformer))
   :quit-when-no-cand (eq require-match t)
   :nomark (null helm-comp-read-use-marked)
@@ -1256,7 +1254,7 @@ This handler uses dynamic matching which allows honouring 
`completion-styles'."
(completion-metadata-get metadata 'annotation-function)))
  (afix (or (plist-get completion-extra-properties :affixation-function)
(completion-metadata-get metadata 'affixation-function)))
- (file-comp-p (eq (completion-metadata-get metadata 'category) 'file))
+ (category (completion-metadata-get metadata 'category))
  (compfn (lambda (str _predicate _action)
(let* ((completion-ignore-case (helm-set-case-fold-search))
   (comps
@@ -1307,7 +1305,7 @@ This handler uses dynamic matching which allows honouring 
`completion-styles'."
(delete default lst))
   (setq default nil))
   lst))
-  afun afix file-comp-p)
+  afun afix category)
  (data (if (memq helm-completion-style '(helm helm-fuzzy))
(funcall compfn (or input "") nil nil)
  compfn))
@@ -2028,13 +2026,14 @@ The `helm-find-files' history `helm-ff-history' is used 
here."
   (propertize str 'read-only t 'face 'helm-mode-prefix 'rear-nonsticky t)
 str))
 
-(defun helm-completion--initial-filter (comps afun afix file-comp-p)
-  "Compute COMPS with function AFUN or AFIX unless FILE-COMP-P non nil.
+(defun helm-completion--initial-filter (comps afun afix category)
+  "Compute COMPS with function AFIX or AFUN.
+
+When CATEGORY is file or library remove dot files from COMPS.
 
-If both AFUN and AFIX are provided only AFIX is used.
-When FILE-COMP-P is provided only filter out dot files.
+If both AFUN and AFIX are provided, AFIX takes precedence.
 
-When AFUN, AFIX and FILE-COMP-P are n

[nongnu] elpa/helm 256eeddc8a 1/3: Ensure file category is used when set from

2023-08-13 Thread ELPA Syncer
branch: elpa/helm
commit 256eeddc8aea57a8b889f61fb0b3bd7ea93a1ca8
Author: Thierry Volpiatto 
Commit: Thierry Volpiatto 

Ensure file category is used when set from

helm-completing-read-command-categories.
---
 helm-mode.el | 12 +++-
 1 file changed, 7 insertions(+), 5 deletions(-)

diff --git a/helm-mode.el b/helm-mode.el
index 58c7ec1314..55d4a0e0fc 100644
--- a/helm-mode.el
+++ b/helm-mode.el
@@ -996,6 +996,7 @@ behavior as emacs vanilla.")
 ("customize-group" . symbol-help)
 ("find-function" . symbol-help)
 ("find-variable" . symbol-help)
+("find-library" . file) ; FIXME needs a special category library.
 ("kill-buffer" . buffer)
 ("package-install" . package)
 ("package-vc-install" . package)
@@ -1168,7 +1169,8 @@ dynamically otherwise use 
`helm-completing-read-default-2'."
(completion-metadata-get metadata 'annotation-function)))
  (afix (or (plist-get completion-extra-properties :affixation-function)
(completion-metadata-get metadata 'affixation-function)))
- (file-comp-p (eq (completion-metadata-get metadata 'category) 'file))
+ (category (completion-metadata-get metadata 'category))
+ (file-comp-p (eq category 'file))
  (sort-fn (unless (eq helm-completion-style 'helm-fuzzy)
 (or
  (completion-metadata-get
@@ -1178,11 +1180,11 @@ dynamically otherwise use 
`helm-completing-read-default-2'."
  flags)
 (helm-aif (assoc-default name helm-completing-read-command-categories)
 (unless (completion-metadata-get metadata 'category)
-  (setq metadata
-`(metadata (category . ,it)
+  (setq metadata `(metadata (category . ,it))
+category it
+file-comp-p (eq category 'file
 (helm-aif (and completions-detailed
-   (assoc-default (completion-metadata-get metadata 'category)
-  helm-completing-read-extra-metadata))
+   (assoc-default category 
helm-completing-read-extra-metadata))
 (progn
   (setq metadata it)
   (setq afun (completion-metadata-get metadata 'annotation-function)



[nongnu] elpa/helm updated (be0b88584b -> 7f3fcf19b6)

2023-08-13 Thread ELPA Syncer
elpasync pushed a change to branch elpa/helm.

  from  be0b88584b Add package-vc-checkout and package-vc-install to 
package category
   new  256eeddc8a Ensure file category is used when set from
   new  0fcca93e42 Allow new category library
   new  7f3fcf19b6 Normalize affixation function names


Summary of changes:
 helm-mode.el | 52 +++-
 1 file changed, 27 insertions(+), 25 deletions(-)



[elpa] scratch/yasnippet 2f751c3a0a: * yasnippet.el (debug-ignored-errors): Don't modify it

2023-08-13 Thread Stefan Monnier via
branch: scratch/yasnippet
commit 2f751c3a0a5ea7df075a8460aeb3e82bd1500e9c
Author: Stefan Monnier 
Commit: Stefan Monnier 

* yasnippet.el (debug-ignored-errors): Don't modify it

(debug-ignored-errors): Remove left over code that became obsolete with
commit 175e0a3a102c22.
(yas--read-lisp): Fix code generation.
(yas-exception): Use `define-error`.
---
 yasnippet.el | 7 ++-
 1 file changed, 2 insertions(+), 5 deletions(-)

diff --git a/yasnippet.el b/yasnippet.el
index ce59d25a9a..c4f8ae48fa 100644
--- a/yasnippet.el
+++ b/yasnippet.el
@@ -1490,7 +1490,7 @@ return an expression that when evaluated will issue an 
error."
   (condition-case err
   (read string)
 (error (and (not nil-on-error)
-`(error (error-message-string ,err))
+`(error (error-message-string ',err))
 
 (defun yas--read-keybinding (keybinding)
   "Read KEYBINDING as a snippet keybinding, return a vector."
@@ -3041,8 +3041,7 @@ snippet field.  The arguments are the same as 
`completing-read'.
 (defun yas-throw (text)
   "Signal `yas-exception' with TEXT as the reason."
   (signal 'yas-exception (list text)))
-(put 'yas-exception 'error-conditions '(error yas-exception))
-(put 'yas-exception 'error-message "[yas] Exception")
+(define-error 'yas-exception "[yas] Exception")
 
 (defun yas-verify-value (possibilities)
   "Verify that the current field value is in POSSIBILITIES.
@@ -3943,8 +3942,6 @@ Move the overlays, or create them if they do not exit."
   (cl-loop for snippet in snippets
do (yas--commit-snippet snippet)
 
-(add-to-list 'debug-ignored-errors "^Exit the snippet first!$")
-
 
 ;;; Snippet expansion and "stacked" expansion:
 ;;



[nongnu] elpa/evil b7b4961a14: Urgent revert of recent commits while evil is broken

2023-08-13 Thread ELPA Syncer
branch: elpa/evil
commit b7b4961a14cd1a51e9a10564fd6c741567d39891
Author: Tom Dalziel 
Commit: Tom Dalziel 

Urgent revert of recent commits while evil is broken

Some of these commits can be almost immediately restored,
once the time is found to do so.

Revert "Fix evil-with-delay with dynamic binding"

This reverts commit 1e9b2434264529fe0dd964b68fe89236a4abeac3.

Revert "Some cleanups"

This reverts commit 0cbd61f2de104fab16602d0418605cd0513b16f3.

Revert "Misc minor changes"

This reverts commit b291039b0c6ffc3b2f3c9f02b8ad2f0041127b12.

Revert "Merge evil-with-delay condition and body lambdas"

This reverts commit 1b56ffcc102b4c5f8b015e760b5f9cf5932622af.

Revert "(evil-with-delay): New macro, extracted from `evil-delay`"

This reverts commit 3d7faadf30016a8c20699a5fb1b5731b8a49dcd2.

Revert "Make evil-search-wrap-ring-bell work with evil-search"

This reverts commit 5e72cf5b6d57b785ea229236bb5c4638db2c9a05.

Revert "Stop the ' and '[/'] marks from intertwining"

This reverts commit 26db9441a13ebedb2481d7ada4c3b5e60ec22795.

Revert "Remove redundant `:group` args"

This reverts commit 6e30037fdc6a275d78d6b82d89bd8e47bcf4d4e3.

Revert "Avoid eval in evil-test-buffer"

This reverts commit 27d81ad406d2d3e07591b927357d2354ef5b5c65.

Revert "Use lexical-binding everywhere"

This reverts commit 44c7f301468c264a781be4ee8ae879fe1b457e60.
---
 README.md  |   9 +-
 evil-command-window.el |   3 +-
 evil-commands.el   | 370 +++--
 evil-common.el |  88 +++-
 evil-core.el   |  76 ++
 evil-ex.el |  52 ---
 evil-jumps.el  |  15 +-
 evil-macros.el |   4 +-
 evil-maps.el   |  10 +-
 evil-search.el |  59 
 evil-states.el |  21 +--
 evil-test-helpers.el   |   8 +-
 evil-tests.el  | 122 
 evil-types.el  |   2 +-
 evil-vars.el   |   9 ++
 evil.el|   4 +-
 16 files changed, 473 insertions(+), 379 deletions(-)

diff --git a/README.md b/README.md
index 02215faf2a..198b18317c 100644
--- a/README.md
+++ b/README.md
@@ -44,8 +44,10 @@ file.
 
 * Evil requires any of the following for `C-r`:
   * `undo-redo` from Emacs 28
-  * The [undo-tree] package (available via GNU ELPA)
-  * The [undo-fu] package (available via MELPA and NonGNU ELPA)
+  * The [undo-tree](https://gitlab.com/tsc25/undo-tree) package
+(available via GNU ELPA)
+  * The [undo-fu](https://gitlab.com/ideasman42/emacs-undo-fu) package
+(available via MELPA)
 
 * For the motions `g;` `g,` and for the last-change-register `.`, Evil
   requires the [goto-chg.el](https://github.com/emacs-evil/goto-chg)
@@ -78,6 +80,3 @@ Visit us on `irc.libera.chat #evil-mode`.
 See
 
[CONTRIBUTING.md](https://github.com/emacs-evil/evil/blob/master/CONTRIBUTING.md)
 for guidelines for issues and pull requests.
-
-[undo-tree]: https://gitlab.com/tsc25/undo-tree
-[undo-fu]: https://codeberg.org/ideasman42/emacs-undo-fu
diff --git a/evil-command-window.el b/evil-command-window.el
index c364e41868..68068a8384 100644
--- a/evil-command-window.el
+++ b/evil-command-window.el
@@ -44,7 +44,8 @@
 (define-derived-mode evil-command-window-mode fundamental-mode "Evil-cmd"
   "Major mode for the Evil command line window."
   (auto-fill-mode 0)
-  (add-hook 'after-change-functions #'evil-command-window-draw-prefix nil t))
+  (setq-local after-change-functions
+  (cons #'evil-command-window-draw-prefix after-change-functions)))
 
 (defun evil-command-window (history cmd-key execute-fn)
   "Open a command line window for HISTORY with CMD-KEY and EXECUTE-FN.
diff --git a/evil-commands.el b/evil-commands.el
index 7dfc1e0ae8..45f6b596c0 100644
--- a/evil-commands.el
+++ b/evil-commands.el
@@ -37,6 +37,7 @@
 (require 'cl-lib)
 (require 'reveal)
 
+(declare-function flyspell-overlay-p "flyspell")
 (declare-function imenu--in-alist "imenu")
 
 ;;; Motions
@@ -214,9 +215,10 @@ move COUNT - 1 screen lines downward first."
   "Move the cursor to COUNT % of the width of the current line.
 If no COUNT is given, default to 50%."
   :type exclusive
-  (let ((line-length (- (line-end-position) (line-beginning-position)
+  (let ((line-length (- (line-end-position)
+(line-beginning-position)
 (if evil-move-beyond-eol -1 0
-(move-to-column (truncate (* line-length (or count 50)) 100
+(move-to-column (truncate (* line-length (/ (or count 50) 100.0))
 
 (evil-define-motion evil-first-non-blank ()
   "Move the cursor to the first non-blank character of the current line."
@@ -227,9 +229,13 @@ If no COUNT is given, default to 50%."
   "Move the cursor to the last non-blank character of the current line.
 If COUNT is given, move COUNT - 1 lines downward firs

[nongnu] elpa/cider 4a35e243c2 2/2: `nrepl--port-from-file`: remove any trailing newline

2023-08-13 Thread ELPA Syncer
branch: elpa/cider
commit 4a35e243c2e6830af23d05dcb648c71816e3da97
Author: vemv 
Commit: vemv 

`nrepl--port-from-file`: remove any trailing newline

Merely a presentational improvement.
---
 nrepl-client.el | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/nrepl-client.el b/nrepl-client.el
index f6e2876d99..97be8e0f8f 100644
--- a/nrepl-client.el
+++ b/nrepl-client.el
@@ -258,7 +258,8 @@ PARAMS is as in `nrepl-make-buffer-name'."
   (when (file-exists-p file)
 (with-temp-buffer
   (insert-file-contents file)
-  (buffer-string
+  (replace-regexp-in-string "\n\\'" "" ;; remove any trailing newline, so 
that our UIs look better.
+(buffer-string)
 
 
 ;;; Bencode



[nongnu] elpa/cider updated (f376d2de9d -> 4a35e243c2)

2023-08-13 Thread ELPA Syncer
elpasync pushed a change to branch elpa/cider.

  from  f376d2de9d Enhance `cider-connect` to show all nREPLs available 
ports, instead of only Leiningen ones (#3399)
   new  e0436e564d Fix a bug recently introduced into 
`cider-locate-running-nrepl-ports`
   new  4a35e243c2 `nrepl--port-from-file`: remove any trailing newline


Summary of changes:
 cider.el| 2 +-
 nrepl-client.el | 3 ++-
 2 files changed, 3 insertions(+), 2 deletions(-)



[nongnu] elpa/cider e0436e564d 1/2: Fix a bug recently introduced into `cider-locate-running-nrepl-ports`

2023-08-13 Thread ELPA Syncer
branch: elpa/cider
commit e0436e564db6571cbfa3c06e5ae079069021258d
Author: vemv 
Commit: vemv 

Fix a bug recently introduced into `cider-locate-running-nrepl-ports`

Closes https://github.com/clojure-emacs/cider/issues/3406
---
 cider.el | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/cider.el b/cider.el
index d666c6d54f..c180790361 100644
--- a/cider.el
+++ b/cider.el
@@ -1828,7 +1828,7 @@ When DIR is non-nil also look for nREPL port files in 
DIR.  Return a list
 of list of the form (project-dir port)."
   (let* ((pairs (cider--running-nrepl-paths))
  (pairs (if-let (c (and dir (clojure-project-dir dir)))
-(cons (cider--path->path-port-pairs c) pairs)
+(append (cider--path->path-port-pairs c) pairs)
   pairs)))
 (thread-last pairs
  (delq nil)



[nongnu] elpa/devil updated (e0a12cd773 -> 887c47d7ee)

2023-08-13 Thread ELPA Syncer
elpasync pushed a change to branch elpa/devil.

  from  e0a12cd773 Use quoted list to define devil-translations
   new  bf1e65ff39 Add support for repeatable key groups
   new  887c47d7ee Revert devil-translations to constructed list


Summary of changes:
 CHANGES.org |  28 +++-
 MANUAL.org  | 230 ++--
 README.org  |   1 +
 devil.el| 139 
 4 files changed, 299 insertions(+), 99 deletions(-)



[nongnu] elpa/devil 887c47d7ee 2/2: Revert devil-translations to constructed list

2023-08-13 Thread ELPA Syncer
branch: elpa/devil
commit 887c47d7ee6bd240698c5ab8b4b73a589c4988d0
Author: Susam Pal 
Commit: Susam Pal 

Revert devil-translations to constructed list

Commit e0a12cd changed the default value of devil-translations to a
quoted list.  However, that change now appears to be misguided because
a user may have existing configuration that modifies this list.
Therefore revert the value of this variable from a quoted list to a
list constructed with the list function.

Thanks to Morgan Willcock for reviewing the earlier commit and
pointing this issue out.
---
 README.org |  1 +
 devil.el   | 14 +++---
 2 files changed, 8 insertions(+), 7 deletions(-)

diff --git a/README.org b/README.org
index 728530225c..91f9304ecb 100644
--- a/README.org
+++ b/README.org
@@ -80,6 +80,7 @@ Thanks to:
 
 - [[https://github.com/riscy][Chris Rayner]] for initial code review.
 - [[https://github.com/phikal][Philip Kaludercic]] for initial code review and 
patches.
+- [[https://github.com/morganwillcock][Morgan Willcock]] for initial feedback 
and code reviews.
 
 ** Reactions
 :PROPERTIES:
diff --git a/devil.el b/devil.el
index b6a1d00030..53014c7ee0 100644
--- a/devil.el
+++ b/devil.el
@@ -141,13 +141,13 @@ supported by `devil-format' may be used in the keys."
   :type '(alist :key-type string :value-type function))
 
 (defcustom devil-translations
-  '(("%k m m" . "C-M-")
-("%k m %k" . "M-,")
-("%k m z" . "M-")
-("%k m" . "M-")
-("%k %k" . "%k")
-("%k z" . "C-")
-("%k" . "C-"))
+  (list (cons "%k m m" "C-M-")
+(cons "%k m %k" "M-,")
+(cons "%k m z" "M-")
+(cons "%k m" "M-")
+(cons "%k %k" "%k")
+(cons "%k z" "C-")
+(cons "%k"  "C-"))
   "Translation rules to convert Devil input to Emacs key sequence.
 
 The value of this variable is an alist where each item represents



[nongnu] elpa/devil bf1e65ff39 1/2: Add support for repeatable key groups

2023-08-13 Thread ELPA Syncer
branch: elpa/devil
commit bf1e65ff399f3443b5afc938f4735a721507148b
Author: Susam Pal 
Commit: Susam Pal 

Add support for repeatable key groups

The variable devil-repeatable-keys is now a list of lists instead of a
list.  Earlier each item in the list represented a repeatable Devil
key sequence.  However, now each item is a list that represents a
group of repeatable Devil key sequences.  When any key sequence in a
group is typed, any key in the same group as the key sequence typed
may be repeated merely by typing the last character of the key.

For those users who customise devil-repeatable-keys, this change
happens to be a breaking change, unfortunately.  Users who do not
customise it will experience no adverse effects.  However, users who
do customise it need to update the value they set
devil-repeatable-keys to from being a list of strings to being a list
of lists of strings.
---
 CHANGES.org |  28 +++-
 MANUAL.org  | 230 ++--
 devil.el| 125 +++--
 3 files changed, 291 insertions(+), 92 deletions(-)

diff --git a/CHANGES.org b/CHANGES.org
index 2aa4cd4699..a5faa40be5 100644
--- a/CHANGES.org
+++ b/CHANGES.org
@@ -2,7 +2,33 @@
 
 * Changelog
 
-** Version 0.6.0 (UNRELEASED)
+** Version 0.7.0 (2023-08-12)
+:PROPERTIES:
+:CUSTOM_ID: 0.7.0
+:END:
+
+*** Added
+
+- Repeatable key sequence =, m e=.
+
+*** Changed
+
+- Support for repeatable key groups.  When a Devil key sequence in a
+  repeatable group is typed, then that key sequence or any another key
+  sequence in the same group can be executed and repeated merely by
+  typing the last character of that key sequence.
+- Repeatable key groups defined in =devil-repeatable-keys= is not
+  ignored anymore when =devil-all-keys-repeatable= is set to non-nil.
+- Devil key sequences =, p=, =, n=, =, f=, and =, b= have been grouped
+  together into a repeatable key group.
+- Devil key sequences =, m f= and =, m b= have been grouped together
+  into a repeatable key group.
+
+*** Fixed
+
+- Prevent special key sequences from being repeatable.
+
+** Version 0.6.0 (2023-07-30)
 :PROPERTIES:
 :CUSTOM_ID: 0.6.0
 :END:
diff --git a/MANUAL.org b/MANUAL.org
index 41ef50cd31..33e04bbed5 100644
--- a/MANUAL.org
+++ b/MANUAL.org
@@ -37,7 +37,8 @@ with using =,= to mean the =C-= modifier?  It turns out, this 
terrible
 idea can be made to work without too much of a hassle.  At least it
 works for me.  It might work for you too.  If it does not, Devil can
 be configured to use another key instead of =,= to mean the =C-=
-modifier.  See the section [[*Custom Devil Key]] for an example.
+modifier.  See the section [[*Custom Devil Key]] and the subsequent
+sections for a few examples.
 
 A sceptical reader may rightfully ask: If =,= is translated to =C-=,
 how on earth are we going to insert a literal =,= into the text when
@@ -184,49 +185,63 @@ Devil may be used:
key sequences can be repeated by typing the last key of the Devil
key sequence over and over again.
 
-4. Another example of a repeatable Devil key sequence is =, f f f=
-   which moves the cursor word by multiple characters.  A few other
-   examples of repeatable keys are =, k k k= to kill lines, =, / / /=
-   to undo changes, etc.  Type =C-h v devil-repeatable-keys RET= to
-   see the complete list of repeatable keys.  If you want all Devil
-   key sequences to be repeatable, see the section [[*Make All Keys
-   Repeatable]] to find out how to do this.
-
-5. Type =, s= and watch Devil translate it to =C-s= and invoke
+4. Each repeatable key sequence belongs to a repeatable key sequence
+   groups.  Like before, type =, p p p= to move the cursor up by a few
+   lines.  But then immediately type =n n= to move the cursor down by
+   a couple of lines.  Then immediately type =p n b f= to move the
+   cursor up, down, left, and right.  The key sequences =, p= and =,
+   n= and =, f= and =, b= form a single repeatable key sequence group.
+   Therefore after we type any one of them, we can repeat that key
+   sequence or any other key sequence in the same group over and over
+   again merely by typing the last character of that key sequence.
+   Typing any other key stops the repetition and the default behaviour
+   of that other key is then observed.  Type =C-h v
+   devil-repeatable-keys RET= to see the complete list of all
+   repeatable key sequence groups.
+
+5. Sometimes a repeatable key sequence may be the only key sequence in
+   a repeatable key sequence group.  An example of such a key sequence
+   is =, m ^= which translates to =M-^= and joins the current line to
+   the previous line.  In a text buffer with multiple lines type =, m
+   ^= to join the current line to the previous line.  Then type =^=
+   repeatedly to continue joining lines.  Typing any other key stops
+   the repetition.
+
+6. Type =, s= and watch Devil translate it to =C-s= and invoke

[nongnu] elpa/macrostep 0b04a89f69: macrostep-collect-macro-forms: conditionally override macroexpand-1

2023-08-13 Thread ELPA Syncer
branch: elpa/macrostep
commit 0b04a89f698c335c9ea492553470a8d45c113edd
Author: Torbjörn Norinder 
Commit: Jonas Bernoulli 

macrostep-collect-macro-forms: conditionally override macroexpand-1

As of Emacs commit ca4bc9baf9d2c861ad776da07e56381da8e3722a,
macroexpand-1 is used by macroexpand-all rather than macroexpand.

Also see #9.
---
 macrostep.el | 52 ++--
 1 file changed, 30 insertions(+), 22 deletions(-)

diff --git a/macrostep.el b/macrostep.el
index 4a00a603f7..56b9dfe6a2 100644
--- a/macrostep.el
+++ b/macrostep.el
@@ -942,28 +942,36 @@ corresponding local environments are collected for these.
 Forms and environments are extracted from FORM by instrumenting
 Emacs's builtin `macroexpand' function and calling
 `macroexpand-all'."
-  (let ((real-macroexpand (indirect-function #'macroexpand))
-(macro-form-alist '())
-(compiler-macro-forms '()))
-(cl-letf
-(((symbol-function #'macroexpand)
-  (lambda (form environment &rest args)
-(let ((expansion
-   (apply real-macroexpand form environment args)))
-  (cond ((not (eq expansion form))
- (setq macro-form-alist
-   (cons (cons form environment)
- macro-form-alist)))
-((and (consp form)
-  (symbolp (car form))
-  macrostep-expand-compiler-macros
-  (not (eq form
-   (cl-compiler-macroexpand form
- (setq compiler-macro-forms
-   (cons form compiler-macro-forms
-  expansion
-  (ignore-errors
-(macroexpand-all form environment)))
+  (let* ((macro-form-alist '())
+ (compiler-macro-forms '())
+ (override (lambda (real-macroexpand form environment &rest args)
+ (let ((expansion
+(apply real-macroexpand form environment args)))
+   (cond ((not (eq expansion form))
+  (setq macro-form-alist
+(cons (cons form environment)
+  macro-form-alist)))
+ ((and (consp form)
+   (symbolp (car form))
+   macrostep-expand-compiler-macros
+   (not (eq form
+(cl-compiler-macroexpand form
+  (setq compiler-macro-forms
+(cons form compiler-macro-forms
+   expansion
+(cl-macrolet ((with-override (fn &rest body)
+`(cl-letf (((symbol-function ,fn)
+(apply-partially override (indirect-function 
,fn
+   ,@body))
+  (with-macroexpand-1 (&rest body)
+(if (< emacs-major-version 30)
+`(progn ,@body) `(with-override #'macroexpand-1 
,@body)))
+  (with-macroexpand (&rest body)
+`(with-override #'macroexpand ,@body)))
+  (with-macroexpand-1
+   (with-macroexpand
+(ignore-errors
+  (macroexpand-all form environment)
 (list macro-form-alist compiler-macro-forms)))
 
 (defvar macrostep-collected-macro-form-alist nil



[nongnu] elpa/devil edc71d41cb: Add M-h, C-x [, etc. to repeatable key sequences

2023-08-13 Thread ELPA Syncer
branch: elpa/devil
commit edc71d41cb97cc8ec356a29364e14158a05ef70c
Author: Susam Pal 
Commit: Susam Pal 

Add M-h, C-x [, etc. to repeatable key sequences
---
 CHANGES.org |  4 
 devil.el| 18 +++---
 2 files changed, 15 insertions(+), 7 deletions(-)

diff --git a/CHANGES.org b/CHANGES.org
index a5faa40be5..c998e2e380 100644
--- a/CHANGES.org
+++ b/CHANGES.org
@@ -10,6 +10,10 @@
 *** Added
 
 - Repeatable key sequence =, m e=.
+- Repeatable key sequence =, m h=.
+- Repeatable key sequence group for =, x [= and =, x ]=.
+- Repeatable key sequence group for =, x ^=, =, x {=, and =, x }=.
+- Repeatable key sequence =, x u=.
 
 *** Changed
 
diff --git a/devil.el b/devil.el
index 53014c7ee0..20a7d7d1b7 100644
--- a/devil.el
+++ b/devil.el
@@ -4,7 +4,7 @@
 
 ;; Author: Susam Pal 
 ;; Maintainer: Susam Pal 
-;; Version: 0.7.0-beta1
+;; Version: 0.7.0-beta2
 ;; Package-Requires: ((emacs "24.4"))
 ;; Keywords: convenience, abbrev
 ;; URL: https://github.com/susam/devil
@@ -163,16 +163,20 @@ by `devil-format' may be used in the keys and values."
   :type '(alist :key-type string :value-type string))
 
 (defcustom devil-repeatable-keys
-  '(("%k p" "%k n" "%k f" "%k b")
+  '(("%k /")
 ("%k d")
 ("%k k")
-("%k s")
-("%k /")
-("%k m f" "%k m b")
+("%k m ^")
 ("%k m e")
+("%k m f" "%k m b")
+("%k m h")
 ("%k m y")
-("%k m ^")
-("%k x o"))
+("%k p" "%k n" "%k f" "%k b")
+("%k s")
+("%k x [" "%k x ]")
+("%k x ^" "%k x {" "%k x }")
+("%k x o")
+("%k x u"))
   "Devil mode repeatable key sequences arranged in groups.
 
 The value of this variable is a list of lists.  Each item (each



[elpa] externals/ement 271cf5242d 2/4: Require seq library

2023-08-13 Thread ELPA Syncer
branch: externals/ement
commit 271cf5242dd7d188b736deab9aabaa9f0921695e
Author: Adam Porter 
Commit: Adam Porter 

Require seq library
---
 ement-lib.el | 1 +
 1 file changed, 1 insertion(+)

diff --git a/ement-lib.el b/ement-lib.el
index 0138101381..a0edf9db9a 100644
--- a/ement-lib.el
+++ b/ement-lib.el
@@ -41,6 +41,7 @@
 
 (require 'color)
 (require 'map)
+(require 'seq)
 (require 'xml)
 
 (require 'ement-api)



[elpa] externals/ement updated (dbe2212cba -> eb0e0f85cf)

2023-08-13 Thread ELPA Syncer
elpasync pushed a change to branch externals/ement.

  from  dbe2212cba Fix: (ement-room-list-next-unread) Infinite loop
   new  2349b91eb3 Fix room list display with empty notification actions
   new  271cf5242d Require seq library
   new  89b3fc3510 Update changelog
   new  eb0e0f85cf Fix: (ement-room-notification-state) Push rules' actions 
order


Summary of changes:
 README.org   |  1 +
 ement-lib.el | 11 ++-
 2 files changed, 7 insertions(+), 5 deletions(-)



[elpa] externals/ement 2349b91eb3 1/4: Fix room list display with empty notification actions

2023-08-13 Thread ELPA Syncer
branch: externals/ement
commit 2349b91eb3106f9a550940471b982802ebc05ed9
Author: Steven Allen 
Commit: Adam Porter 

Fix room list display with empty notification actions

Parse actions according to
https://spec.matrix.org/v1.7/client-server-api/#actions, allowing for 0
or more actions in any order.

fixes #181
---
 ement-lib.el | 10 +-
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/ement-lib.el b/ement-lib.el
index 985523d1de..0138101381 100644
--- a/ement-lib.el
+++ b/ement-lib.el
@@ -597,12 +597,12 @@ Returns one of nil (meaning default rules are used), 
`all-loud',
  (equal "room_id" key)
  (equal (ement-room-id room) 
pattern)
 (mute-rule-p
- (rule) (and (= 1 (length (alist-get 'actions rule)))
- (equal "dont_notify" (elt (alist-get 'actions 
rule) 0
+ (rule) (when-let ((actions (alist-get 'actions rule)))
+  (seq-contains-p actions "dont_notify")))
 (tweak-rule-p
- (type rule) (pcase-let (((map ('actions `[,action ,alist])) 
rule))
-   (and (equal "notify" action)
-(equal type (alist-get 'set_tweak 
alist))
+ (type rule) (when-let ((actions (alist-get 'actions rule)))
+   (and (seq-contains-p actions "notify")
+(seq-contains-p actions `(set_tweak . 
,type) 'seq-contains-p)
   ;; If none of these match, nil is returned, meaning that the default 
rule is used
   ;; for the room.
   (if (override-mute-rule-for-room-p room)



[elpa] externals/ement eb0e0f85cf 4/4: Fix: (ement-room-notification-state) Push rules' actions order

2023-08-13 Thread ELPA Syncer
branch: externals/ement
commit eb0e0f85cf5a998a3e82084ccea2a3e978733309
Merge: dbe2212cba 89b3fc3510
Author: Adam Porter 
Commit: Adam Porter 

Fix: (ement-room-notification-state) Push rules' actions order

Closes #190.  Thanks to Steven Allen (@Stebalien).
---
 README.org   |  1 +
 ement-lib.el | 11 ++-
 2 files changed, 7 insertions(+), 5 deletions(-)

diff --git a/README.org b/README.org
index 71e304e617..7cbd2314bf 100644
--- a/README.org
+++ b/README.org
@@ -309,6 +309,7 @@ Note that, while ~matrix-client~ remains usable, and 
probably will for some time
 
 *Fixes*
 + Allow editing of already-edited events.
++ Push rules' actions may be listed in any order.  (Fixes compatibility with 
[[https://spec.matrix.org/v1.7/client-server-api/#actions][v1.7 of the spec]].  
Thanks to [[https://github.com/Stebalien][Steven Allen]].)
 + Call external browser for SSO login page.  (JavaScript is usually required, 
which EWW doesn't support, and loading the page twice seems to change state on 
the server that causes the SSO login to fail, so it's best to load the page in 
the external browser directly).
 + Clean up SSO server process after two minutes in case SSO login fails.
 + Don't stop syncing if an error is signaled while sending a notification.
diff --git a/ement-lib.el b/ement-lib.el
index 985523d1de..a0edf9db9a 100644
--- a/ement-lib.el
+++ b/ement-lib.el
@@ -41,6 +41,7 @@
 
 (require 'color)
 (require 'map)
+(require 'seq)
 (require 'xml)
 
 (require 'ement-api)
@@ -597,12 +598,12 @@ Returns one of nil (meaning default rules are used), 
`all-loud',
  (equal "room_id" key)
  (equal (ement-room-id room) 
pattern)
 (mute-rule-p
- (rule) (and (= 1 (length (alist-get 'actions rule)))
- (equal "dont_notify" (elt (alist-get 'actions 
rule) 0
+ (rule) (when-let ((actions (alist-get 'actions rule)))
+  (seq-contains-p actions "dont_notify")))
 (tweak-rule-p
- (type rule) (pcase-let (((map ('actions `[,action ,alist])) 
rule))
-   (and (equal "notify" action)
-(equal type (alist-get 'set_tweak 
alist))
+ (type rule) (when-let ((actions (alist-get 'actions rule)))
+   (and (seq-contains-p actions "notify")
+(seq-contains-p actions `(set_tweak . 
,type) 'seq-contains-p)
   ;; If none of these match, nil is returned, meaning that the default 
rule is used
   ;; for the room.
   (if (override-mute-rule-for-room-p room)



[elpa] externals/ement 89b3fc3510 3/4: Update changelog

2023-08-13 Thread ELPA Syncer
branch: externals/ement
commit 89b3fc351067f11406c188c0ab40e63ccae35d90
Author: Adam Porter 
Commit: Adam Porter 

Update changelog
---
 README.org | 1 +
 1 file changed, 1 insertion(+)

diff --git a/README.org b/README.org
index 71e304e617..7cbd2314bf 100644
--- a/README.org
+++ b/README.org
@@ -309,6 +309,7 @@ Note that, while ~matrix-client~ remains usable, and 
probably will for some time
 
 *Fixes*
 + Allow editing of already-edited events.
++ Push rules' actions may be listed in any order.  (Fixes compatibility with 
[[https://spec.matrix.org/v1.7/client-server-api/#actions][v1.7 of the spec]].  
Thanks to [[https://github.com/Stebalien][Steven Allen]].)
 + Call external browser for SSO login page.  (JavaScript is usually required, 
which EWW doesn't support, and loading the page twice seems to change state on 
the server that causes the SSO login to fail, so it's best to load the page in 
the external browser directly).
 + Clean up SSO server process after two minutes in case SSO login fails.
 + Don't stop syncing if an error is signaled while sending a notification.



[elpa] externals/pyim 41c1766341: Update .github/workflows/test.yml

2023-08-13 Thread ELPA Syncer
branch: externals/pyim
commit 41c1766341209209528a5393af2046536f535021
Author: Feng Shu 
Commit: Feng Shu 

Update .github/workflows/test.yml
---
 .github/workflows/test.yml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml
index 586e8d2b2b..6f8ba6f0f0 100644
--- a/.github/workflows/test.yml
+++ b/.github/workflows/test.yml
@@ -8,7 +8,7 @@ jobs:
 strategy:
   fail-fast: false
   matrix:
-emacs_version: [27.1, 28.1, release-snapshot, snapshot]
+emacs_version: [27.1, 28.1, 29.1, release-snapshot, snapshot]
 steps:
 - uses: purcell/setup-emacs@master
   with: