[nongnu] elpa/cider updated (1367b25eb3 -> dea866c0d8)

2023-07-02 Thread ELPA Syncer
elpasync pushed a change to branch elpa/cider.

  from  1367b25eb3 PR feedback
   new  c61c558323 Fix `sesman-restart` regression issue with SIGHUP 
handling in server
   new  c58eebe15c repeat integrationt tests on failure, update sesman test 
comments
   new  dea866c0d8 Refine shadow-cljs documentation (#3360)


Summary of changes:
 .github/workflows/test.yml |  5 +++-
 CHANGELOG.md   |  1 +
 .../ROOT/pages/basics/middleware_setup.adoc|  2 +-
 doc/modules/ROOT/pages/cljs/figwheel.adoc  |  4 +--
 doc/modules/ROOT/pages/cljs/other_repls.adoc   |  2 +-
 doc/modules/ROOT/pages/cljs/overview.adoc  |  6 +++--
 doc/modules/ROOT/pages/cljs/shadow-cljs.adoc   | 23 ++--
 doc/modules/ROOT/pages/cljs/up_and_running.adoc|  2 +-
 nrepl-client.el| 11 +---
 test/cider-tests.el| 31 ++
 test/nrepl-server-mock.el  | 16 +--
 11 files changed, 81 insertions(+), 22 deletions(-)



[nongnu] elpa/cider dea866c0d8 3/3: Refine shadow-cljs documentation (#3360)

2023-07-02 Thread ELPA Syncer
branch: elpa/cider
commit dea866c0d8911bf1b13c11d727aba30b7e0a9831
Author: vemv 
Commit: GitHub 

Refine shadow-cljs documentation (#3360)
---
 .../ROOT/pages/basics/middleware_setup.adoc|  2 +-
 doc/modules/ROOT/pages/cljs/figwheel.adoc  |  4 ++--
 doc/modules/ROOT/pages/cljs/other_repls.adoc   |  2 +-
 doc/modules/ROOT/pages/cljs/overview.adoc  |  6 --
 doc/modules/ROOT/pages/cljs/shadow-cljs.adoc   | 23 ++
 doc/modules/ROOT/pages/cljs/up_and_running.adoc|  2 +-
 6 files changed, 24 insertions(+), 15 deletions(-)

diff --git a/doc/modules/ROOT/pages/basics/middleware_setup.adoc 
b/doc/modules/ROOT/pages/basics/middleware_setup.adoc
index df9e54b9f2..da2fe9aec7 100644
--- a/doc/modules/ROOT/pages/basics/middleware_setup.adoc
+++ b/doc/modules/ROOT/pages/basics/middleware_setup.adoc
@@ -89,7 +89,7 @@ run `cider-connect` or `cider-connect-cljs`.
 
   :cider-cljs {:extra-deps {org.clojure/clojurescript {:mvn/version "1.10.339"}
 cider/cider-nrepl {:mvn/version "0.22.4"}
-cider/piggieback {:mvn/version "0.5.1"}}
+cider/piggieback {:mvn/version "0.5.3"}}
:main-opts ["-m" "nrepl.cmdline" "--middleware"

"[cider.nrepl/cider-middleware,cider.piggieback/wrap-cljs-repl]"]}
 
diff --git a/doc/modules/ROOT/pages/cljs/figwheel.adoc 
b/doc/modules/ROOT/pages/cljs/figwheel.adoc
index ba56459a8c..46050a8983 100644
--- a/doc/modules/ROOT/pages/cljs/figwheel.adoc
+++ b/doc/modules/ROOT/pages/cljs/figwheel.adoc
@@ -25,7 +25,7 @@ You'll also have to configure Piggieback manually if you're 
planning to use
 +
 [source,clojure]
 
-[cider/piggieback "0.5.1"]
+[cider/piggieback "0.5.3"]
 
 +
 . Add this to your dev `:repl-options` (not needed for `cider-jack-in-cljs`):
@@ -123,7 +123,7 @@ in the root of your Leiningen project definition.
 +
 [source,clojure]
 
-[cider/piggieback "0.5.1"] ; not needed for cider-jack-in-cljs
+[cider/piggieback "0.5.3"] ; not needed for cider-jack-in-cljs
 [figwheel-sidecar "0.5.19"] ; use here whatever the current version of 
figwheel is
 
 +
diff --git a/doc/modules/ROOT/pages/cljs/other_repls.adoc 
b/doc/modules/ROOT/pages/cljs/other_repls.adoc
index 43ae210312..010a922f47 100644
--- a/doc/modules/ROOT/pages/cljs/other_repls.adoc
+++ b/doc/modules/ROOT/pages/cljs/other_repls.adoc
@@ -61,7 +61,7 @@ Internally, it's powered by Weasel. Let's go over the steps 
required to use it.
 [adzerk/boot-cljs-repl   "X.Y.Z"  :scope "test"]
 [pandeiro/boot-http  "X.Y.Z"  :scope "test"]
 [weasel  "0.7.1"  :scope "test"]
-[cider/piggieback "0.5.1"  :scope "test"] ; not needed for cider-jack-in-cljs
+[cider/piggieback "0.5.3"  :scope "test"] ; not needed for cider-jack-in-cljs
 
 +
 and this at the end of `build.boot`:
diff --git a/doc/modules/ROOT/pages/cljs/overview.adoc 
b/doc/modules/ROOT/pages/cljs/overview.adoc
index a81cc29096..19a4be7557 100644
--- a/doc/modules/ROOT/pages/cljs/overview.adoc
+++ b/doc/modules/ROOT/pages/cljs/overview.adoc
@@ -17,7 +17,7 @@ and how to setup the most popular ClojureScript REPLs.
 == nREPL and ClojureScript
 
 nREPL doesn't natively support ClojureScript evaluation, that why an additional
-middleware is needed. CIDER relies on the popular Piggieback middleware for its
+middleware is needed. For most REPLs (with the notable exceptions of 
`shadow-cljs`, `nbb`), CIDER relies on the popular Piggieback middleware for its
 ClojureScript support.
 
 Piggieback works in the following manner:
@@ -32,7 +32,9 @@ On the bright side - this also means that you can host side 
by side Clojure and
 REPLs in a single nREPL connection! This opens up all sorts of interesting 
possibilities
 that we'll discuss later on.
 
-== Differences with the Standard ClojureScript REPL
+NOTE: `shadow-cljs`'s REPL is implemented in a very similar fashion, but its 
mechanism is provided by its own nREPL middleware - not Piggieback.
+
+== Piggieback differences with the Standard ClojureScript REPL
 
 While the Piggieback-powered ClojureScript REPLs behave more or less
 the same as the standard ClojureScript REPL, there are few subtle
diff --git a/doc/modules/ROOT/pages/cljs/shadow-cljs.adoc 
b/doc/modules/ROOT/pages/cljs/shadow-cljs.adoc
index 4e487fb87b..64bf7b214d 100644
--- a/doc/modules/ROOT/pages/cljs/shadow-cljs.adoc
+++ b/doc/modules/ROOT/pages/cljs/shadow-cljs.adoc
@@ -54,15 +54,26 @@ Alternatively you can start the server manually with 
something like:
 
 [source,sh]
 
-$ npx shadow-cljs server
+$ shadow-cljs watch app
 
 
 And connect to it with `cider-connect`.
 
+...For that to work, `shadow-cljs.edn` contents like the following are assumed:
+
+```clj
+ :dependencies [[cider/cider-nrepl "0.31.0"] ;; mandatory (unless it's 
inherited from deps.edn or otherwise present in the classpath of shadow-cljs's 
JVM process)
+[refactor-nrepl/refactor-nr

[nongnu] elpa/cider c61c558323 1/3: Fix `sesman-restart` regression issue with SIGHUP handling in server

2023-07-02 Thread ELPA Syncer
branch: elpa/cider
commit c61c5583236b1e0ae95a3e01cb73d86499845311
Author: ikappaki 
Commit: Bozhidar Batsov 

Fix `sesman-restart` regression issue with SIGHUP handling in server
---
 CHANGELOG.md  |  1 +
 nrepl-client.el   | 11 +++
 test/cider-tests.el   | 30 ++
 test/nrepl-server-mock.el | 16 ++--
 4 files changed, 52 insertions(+), 6 deletions(-)

diff --git a/CHANGELOG.md b/CHANGELOG.md
index 936d8c97b4..141ed0545c 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -11,6 +11,7 @@
 - [#3341](https://github.com/clojure-emacs/cider/issues/3341): Escape 
clojure-cli args on MS-Windows on non powershell invocations.
 - [#3353](https://github.com/clojure-emacs/cider/issues/3353): Fix regression 
which caused new connections to prompt for reusing dead REPLs.
 - [#3355](https://github.com/clojure-emacs/cider/pull/3355): Fix `cider-mode` 
disabling itself after a disconnect when `cider-auto-mode` is set to nil.
+- [#3362](https://github.com/clojure-emacs/cider/issues/3362): Fix 
`sesman-restart` regression issue.
 
 ### Changes
 
diff --git a/nrepl-client.el b/nrepl-client.el
index a3d2672b74..beb9b32dbc 100644
--- a/nrepl-client.el
+++ b/nrepl-client.el
@@ -1191,8 +1191,9 @@ up."
 (declare-function cider--close-connection "cider-connection")
 (defun nrepl-server-sentinel (process event)
   "Handle nREPL server PROCESS EVENT.
-On a fatal EVENT, attempt to close any open client connections, and signal
-an `error' if the nREPL PROCESS exited because it couldn't start up."
+If the nREPL PROCESS failed to initiate and encountered a fatal EVENT
+signal, raise an 'error'.  Additionally, if the EVENT signal is SIGHUP,
+close any existing client connections."
   ;; only interested on fatal signals.
   (when (not (process-live-p process))
 (emacs-bug-46284/when-27.1-windows-nt
@@ -1212,8 +1213,10 @@ an `error' if the nREPL PROCESS exited because it 
couldn't start up."
   (eq (buffer-local-value 'nrepl-server-buffer 
b)
   server-buffer))
 (buffer-list
-  ;; close any known open client connections
-  (mapc #'cider--close-connection clients)
+
+  ;; see https://github.com/clojure-emacs/cider/pull/
+  (when (string-match-p "^hangup" event)
+(mapc #'cider--close-connection clients))
 
   (if (process-get process :cider--nrepl-server-ready)
   (progn
diff --git a/test/cider-tests.el b/test/cider-tests.el
index e023d27634..3b1425365e 100644
--- a/test/cider-tests.el
+++ b/test/cider-tests.el
@@ -668,6 +668,36 @@
 ;; kill server
 (delete-process (get-buffer-process client-buffer
 
+(describe "sesman"
+  (it "can restart session"
+(with-temp-buffer
+  (let* ((server-process (nrepl-start-mock-server-process))
+ (server-buffer (process-buffer server-process)))
+;; wait for the connection to be established
+(nrepl-tests-poll-until (local-variable-p 'nrepl-endpoint 
server-buffer) 5)
+(let ((client-buffer (cider-connect-sibling-clj
+  `(:repl-buffer ,(current-buffer))
+  server-buffer))
+  (endpoint-bef)
+  (endpoint-aft))
+  (expect (buffer-local-value 'cider-repl-type client-buffer)
+  :to-equal 'clj)
+
+  (with-current-buffer (cider-current-repl)
+(setq endpoint-bef nrepl-endpoint))
+
+  (sesman-restart)
+  ;; wait until a new server is brought up, i.e. the port has
+  ;; changed. It will throw if it doesn't.
+  (nrepl-tests-poll-until (when-let ((repl (cider-current-repl)))
+(with-current-buffer repl
+  (setq endpoint-aft nrepl-endpoint)
+  ;; (message ":endpoints %S %S" 
endpoint-bef endpoint-aft)
+  (not (= (plist-get endpoint-bef :port) 
(plist-get endpoint-aft :port)
+  5)
+  ;; kill server
+  (delete-process (get-buffer-process client-buffer)))
+
 (provide 'cider-tests)
 
 ;;; cider-tests.el ends here
diff --git a/test/nrepl-server-mock.el b/test/nrepl-server-mock.el
index 77a7313668..54643c0837 100644
--- a/test/nrepl-server-mock.el
+++ b/test/nrepl-server-mock.el
@@ -31,15 +31,17 @@
 (require 'nrepl-client)
 (require 'nrepl-tests-utils "test/utils/nrepl-tests-utils")
 (require 'queue)
+(require 'cl)
 
 (defun nrepl-server-mock-filter (proc output)
   "Handle the nREPL message found in OUTPUT sent by the client
 PROC. Minimal implementation, just enough for fulfilling clients' testing
 requirements."
-  (mock/log! ":mock.filter/output %s :msg %s" proc output)
+  ;; (mock/log! ":mock.filter/output %s :msg %s" proc output)
 
   (condition-case error-details
   (let* ((msg (queu

[nongnu] elpa/cider c58eebe15c 2/3: repeat integrationt tests on failure, update sesman test comments

2023-07-02 Thread ELPA Syncer
branch: elpa/cider
commit c58eebe15c74db5e4c3fd9a88750032c1eb2d074
Author: ikappaki 
Commit: Bozhidar Batsov 

repeat integrationt tests on failure, update sesman test comments
---
 .github/workflows/test.yml | 5 -
 test/cider-tests.el| 5 +++--
 2 files changed, 7 insertions(+), 3 deletions(-)

diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml
index 8fd31cd774..0e51ec25c2 100644
--- a/.github/workflows/test.yml
+++ b/.github/workflows/test.yml
@@ -78,4 +78,7 @@ jobs:
 
 - name: Test integration
   run: |
-eldev -p -dtTC test --test-type integration
+# The tests occasionally fail on macos&win in what is seems to
+# be GH connectivity runner issues. We attempt to address this
+# problem by rerunning the tests more than once.
+eldev -p -dtTC test --test-type integration || eldev -p -dtTC test 
--test-type integration
diff --git a/test/cider-tests.el b/test/cider-tests.el
index 3b1425365e..8729331de2 100644
--- a/test/cider-tests.el
+++ b/test/cider-tests.el
@@ -687,8 +687,9 @@
 (setq endpoint-bef nrepl-endpoint))
 
   (sesman-restart)
-  ;; wait until a new server is brought up, i.e. the port has
-  ;; changed. It will throw if it doesn't.
+  ;; wait until a new server is brought up by continuously checking 
that
+  ;; the port has changed. If it remains the same, an exception is
+  ;; thrown, causing the test to fail.
   (nrepl-tests-poll-until (when-let ((repl (cider-current-repl)))
 (with-current-buffer repl
   (setq endpoint-aft nrepl-endpoint)



[elpa] externals/ssh-deploy 95fb076c9b 2/2: Updated version and modified data for 3.1.16

2023-07-02 Thread Christian Johansson
branch: externals/ssh-deploy
commit 95fb076c9b657c5f1bfad3ee5bf1f8691c50d428
Author: Christian Johansson 
Commit: Christian Johansson 

Updated version and modified data for 3.1.16
---
 ssh-deploy.el | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/ssh-deploy.el b/ssh-deploy.el
index d74741d4aa..917d7f1504 100644
--- a/ssh-deploy.el
+++ b/ssh-deploy.el
@@ -5,8 +5,8 @@
 ;; Author: Christian Johansson 
 ;; Maintainer: Christian Johansson 
 ;; Created: 5 Jul 2016
-;; Modified: 1 Jul 2023
-;; Version: 3.1.15
+;; Modified: 2 Jul 2023
+;; Version: 3.1.16
 ;; Keywords: tools, convenience
 ;; URL: https://github.com/cjohansson/emacs-ssh-deploy
 



[elpa] externals/ssh-deploy 575ab39905 1/2: Decreased doc-string length

2023-07-02 Thread Christian Johansson
branch: externals/ssh-deploy
commit 575ab39905fa5d2773f3ccb8dbfd84f28555cb4e
Author: Christian Johansson 
Commit: Christian Johansson 

Decreased doc-string length
---
 ssh-deploy.el | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/ssh-deploy.el b/ssh-deploy.el
index a9c0e2eb91..d74741d4aa 100644
--- a/ssh-deploy.el
+++ b/ssh-deploy.el
@@ -174,7 +174,7 @@
 (put 'ssh-deploy-on-explicit-save 'safe-local-variable 'integerp)
 
 (defcustom ssh-deploy-run-script-on-explicit-save 0
-  "Boolean variable if deploy script should be executed on explicit save, 0 by 
default."
+  "Boolean variable if script should be executed on save, 0 by default."
   :type 'integer)
 (put 'ssh-deploy-run-script-on-explicit-save 'permanent-local t)
 (put 'ssh-deploy-run-script-on-explicit-save 'safe-local-variable 'integerp)



[elpa] externals/ssh-deploy updated (5496715b52 -> 95fb076c9b)

2023-07-02 Thread Christian Johansson
cjohansson pushed a change to branch externals/ssh-deploy.

  from  5496715b52 Updated version and modified date for 3.1.15
   new  575ab39905 Decreased doc-string length
   new  95fb076c9b Updated version and modified data for 3.1.16


Summary of changes:
 ssh-deploy.el | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)



[elpa] externals/cape c8e3a75f2b: Version 0.16

2023-07-02 Thread ELPA Syncer
branch: externals/cape
commit c8e3a75f2b1096fbb09c9f4b3f60ab1fdcfee13b
Author: Daniel Mendler 
Commit: Daniel Mendler 

Version 0.16
---
 CHANGELOG.org | 2 +-
 cape.el   | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/CHANGELOG.org b/CHANGELOG.org
index c911a17ed6..c09b2f056e 100644
--- a/CHANGELOG.org
+++ b/CHANGELOG.org
@@ -2,7 +2,7 @@
 #+author: Daniel Mendler
 #+language: en
 
-* Development
+* Version 0.16 (2023-07-02)
 
 - =cape-dabbrev=: Respect =dabbrev-abbrev-char-regexp= and
   =dabbrev-abbrev-skip-leading-regexp=.
diff --git a/cape.el b/cape.el
index 8cb83c8546..3923a5e027 100644
--- a/cape.el
+++ b/cape.el
@@ -5,7 +5,7 @@
 ;; Author: Daniel Mendler 
 ;; Maintainer: Daniel Mendler 
 ;; Created: 2021
-;; Version: 0.15
+;; Version: 0.16
 ;; Package-Requires: ((emacs "27.1") (compat "29.1.4.0"))
 ;; Homepage: https://github.com/minad/cape
 ;; Keywords: abbrev, convenience, matching, completion, wp



[elpa] externals/consult fe49dedd71: Version 0.35

2023-07-02 Thread ELPA Syncer
branch: externals/consult
commit fe49dedd71802ff97be7b89f1ec4bd61b98c2b13
Author: Daniel Mendler 
Commit: Daniel Mendler 

Version 0.35
---
 CHANGELOG.org | 2 +-
 consult.el| 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/CHANGELOG.org b/CHANGELOG.org
index 8c590e1bb4..368b9683d7 100644
--- a/CHANGELOG.org
+++ b/CHANGELOG.org
@@ -2,7 +2,7 @@
 #+author: Daniel Mendler
 #+language: en
 
-* Development
+* Version 0.35 (2023-07-02)
 
 - Bugfixes.
 - =consult--read= now accepts programmable completion tables as argument, e.g.,
diff --git a/consult.el b/consult.el
index 4c9f306a65..37cfc570bd 100644
--- a/consult.el
+++ b/consult.el
@@ -5,7 +5,7 @@
 ;; Author: Daniel Mendler and Consult contributors
 ;; Maintainer: Daniel Mendler 
 ;; Created: 2020
-;; Version: 0.34
+;; Version: 0.35
 ;; Package-Requires: ((emacs "27.1") (compat "29.1.4.1"))
 ;; Homepage: https://github.com/minad/consult
 ;; Keywords: matching, files, completion



[elpa] externals/corfu 664ef966f3 2/2: Version 0.37

2023-07-02 Thread ELPA Syncer
branch: externals/corfu
commit 664ef966f3668f3b5c30a8c5db429ae38ca00c61
Author: Daniel Mendler 
Commit: Daniel Mendler 

Version 0.37
---
 CHANGELOG.org | 2 +-
 corfu.el  | 2 +-
 extensions/corfu-echo.el  | 2 +-
 extensions/corfu-history.el   | 2 +-
 extensions/corfu-indexed.el   | 2 +-
 extensions/corfu-info.el  | 2 +-
 extensions/corfu-popupinfo.el | 2 +-
 extensions/corfu-quick.el | 2 +-
 8 files changed, 8 insertions(+), 8 deletions(-)

diff --git a/CHANGELOG.org b/CHANGELOG.org
index a648794730..f5341d38f4 100644
--- a/CHANGELOG.org
+++ b/CHANGELOG.org
@@ -2,7 +2,7 @@
 #+author: Daniel Mendler
 #+language: en
 
-* Development
+* Version 0.37 (2023-07-02)
 
 - Bugfixes.
 - Improve child frame display code, =corfu--popup-show= takes a =posn= 
argument.
diff --git a/corfu.el b/corfu.el
index 67a157f9d5..e3b9c66a79 100644
--- a/corfu.el
+++ b/corfu.el
@@ -5,7 +5,7 @@
 ;; Author: Daniel Mendler 
 ;; Maintainer: Daniel Mendler 
 ;; Created: 2021
-;; Version: 0.36
+;; Version: 0.37
 ;; Package-Requires: ((emacs "27.1") (compat "29.1.4.0"))
 ;; Homepage: https://github.com/minad/corfu
 ;; Keywords: abbrev, convenience, matching, completion, wp
diff --git a/extensions/corfu-echo.el b/extensions/corfu-echo.el
index 4427ae2ad6..74cadb59f3 100644
--- a/extensions/corfu-echo.el
+++ b/extensions/corfu-echo.el
@@ -6,7 +6,7 @@
 ;; Maintainer: Daniel Mendler 
 ;; Created: 2022
 ;; Version: 0.1
-;; Package-Requires: ((emacs "27.1") (corfu "0.36"))
+;; Package-Requires: ((emacs "27.1") (corfu "0.37"))
 ;; Homepage: https://github.com/minad/corfu
 
 ;; This file is part of GNU Emacs.
diff --git a/extensions/corfu-history.el b/extensions/corfu-history.el
index c924b33b0b..13330ef905 100644
--- a/extensions/corfu-history.el
+++ b/extensions/corfu-history.el
@@ -6,7 +6,7 @@
 ;; Maintainer: Daniel Mendler 
 ;; Created: 2022
 ;; Version: 0.1
-;; Package-Requires: ((emacs "27.1") (corfu "0.36"))
+;; Package-Requires: ((emacs "27.1") (corfu "0.37"))
 ;; Homepage: https://github.com/minad/corfu
 
 ;; This file is part of GNU Emacs.
diff --git a/extensions/corfu-indexed.el b/extensions/corfu-indexed.el
index 3a2b2629bb..e624a650b5 100644
--- a/extensions/corfu-indexed.el
+++ b/extensions/corfu-indexed.el
@@ -6,7 +6,7 @@
 ;; Maintainer: Daniel Mendler 
 ;; Created: 2022
 ;; Version: 0.1
-;; Package-Requires: ((emacs "27.1") (corfu "0.36"))
+;; Package-Requires: ((emacs "27.1") (corfu "0.37"))
 ;; Homepage: https://github.com/minad/corfu
 
 ;; This file is part of GNU Emacs.
diff --git a/extensions/corfu-info.el b/extensions/corfu-info.el
index 89d660e6ed..3e2bef8b31 100644
--- a/extensions/corfu-info.el
+++ b/extensions/corfu-info.el
@@ -6,7 +6,7 @@
 ;; Maintainer: Daniel Mendler 
 ;; Created: 2022
 ;; Version: 0.1
-;; Package-Requires: ((emacs "27.1") (corfu "0.36"))
+;; Package-Requires: ((emacs "27.1") (corfu "0.37"))
 ;; Homepage: https://github.com/minad/corfu
 
 ;; This file is part of GNU Emacs.
diff --git a/extensions/corfu-popupinfo.el b/extensions/corfu-popupinfo.el
index 53f79d8915..04e1a3be20 100644
--- a/extensions/corfu-popupinfo.el
+++ b/extensions/corfu-popupinfo.el
@@ -6,7 +6,7 @@
 ;; Maintainer: Daniel Mendler 
 ;; Created: 2022
 ;; Version: 0.1
-;; Package-Requires: ((emacs "27.1") (corfu "0.36"))
+;; Package-Requires: ((emacs "27.1") (corfu "0.37"))
 ;; Homepage: https://github.com/minad/corfu
 
 ;; This file is part of GNU Emacs.
diff --git a/extensions/corfu-quick.el b/extensions/corfu-quick.el
index 3ee6f0ac7f..40ecdd7a56 100644
--- a/extensions/corfu-quick.el
+++ b/extensions/corfu-quick.el
@@ -6,7 +6,7 @@
 ;; Maintainer: Daniel Mendler 
 ;; Created: 2022
 ;; Version: 0.1
-;; Package-Requires: ((emacs "27.1") (corfu "0.36"))
+;; Package-Requires: ((emacs "27.1") (corfu "0.37"))
 ;; Homepage: https://github.com/minad/corfu
 
 ;; This file is part of GNU Emacs.



[elpa] externals/corfu updated (9ec9f08428 -> 664ef966f3)

2023-07-02 Thread ELPA Syncer
elpasync pushed a change to branch externals/corfu.

  from  9ec9f08428 Use correct format of corfu-popupinfo face remapping 
alist (Fix #342)
   new  d4892282d3 Update changelog
   new  664ef966f3 Version 0.37


Summary of changes:
 CHANGELOG.org | 4 +++-
 corfu.el  | 2 +-
 extensions/corfu-echo.el  | 2 +-
 extensions/corfu-history.el   | 2 +-
 extensions/corfu-indexed.el   | 2 +-
 extensions/corfu-info.el  | 2 +-
 extensions/corfu-popupinfo.el | 2 +-
 extensions/corfu-quick.el | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)



[elpa] externals/corfu d4892282d3 1/2: Update changelog

2023-07-02 Thread ELPA Syncer
branch: externals/corfu
commit d4892282d34c73d74fac92880b5ca40e8c3c8cb5
Author: Daniel Mendler 
Commit: Daniel Mendler 

Update changelog
---
 CHANGELOG.org | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/CHANGELOG.org b/CHANGELOG.org
index 7f1ba79c50..a648794730 100644
--- a/CHANGELOG.org
+++ b/CHANGELOG.org
@@ -4,6 +4,8 @@
 
 * Development
 
+- Bugfixes.
+- Improve child frame display code, =corfu--popup-show= takes a =posn= 
argument.
 - Ensure that the popup font matches the font of the parent frame.
 - Close popup when window selection changes.
 - Remove =corfu-history-length=. Instead set the =history-length= property of



[elpa] externals/hyperbole updated (92437c6c68 -> ac6e50e3ec)

2023-07-02 Thread ELPA Syncer
elpasync pushed a change to branch externals/hyperbole.

  from  92437c6c68 Preload `kotl-autoloads` (#355)
   new  841535cf50 Remove some byte compilation warnings (#354)
   new  a609d7cdca Remove redundant :group args and obsolete * in defcustom 
docstrings (#353)
   new  ac6e50e3ec Align header fields consistently (#356)


Summary of changes:
 ChangeLog | 16 
 hactypes.el   | 10 +-
 hbdata.el | 12 ++--
 hbut.el   | 10 +-
 hpath.el  |  4 ++--
 hui.el|  4 ++--
 hyperbole.el  | 18 +-
 hyrolo.el | 50 --
 kotl/kview.el |  4 ++--
 9 files changed, 67 insertions(+), 61 deletions(-)



[elpa] externals/hyperbole ac6e50e3ec 3/3: Align header fields consistently (#356)

2023-07-02 Thread ELPA Syncer
branch: externals/hyperbole
commit ac6e50e3ecf98017999d43808ac8cab50d84278f
Author: Mats Lidell 
Commit: GitHub 

Align header fields consistently (#356)
---
 ChangeLog|  1 +
 hyperbole.el | 18 +-
 2 files changed, 10 insertions(+), 9 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index ae3afb2a65..d1f7eecebb 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -14,6 +14,7 @@
 
 * hyperbole.el: Preload `kotl-autoloads`.  Submitted by Stefan
 Monnier. Thanks Stefan.
+Align header fields consistently with other files.
 
 2023-06-29  Mats Lidell  
 
diff --git a/hyperbole.el b/hyperbole.el
index 1dcc9a57f5..7cdb137436 100644
--- a/hyperbole.el
+++ b/hyperbole.el
@@ -4,16 +4,16 @@
 ;;
 ;; Copyright (C) 1992-2023  Free Software Foundation, Inc.
 
-;; Author:   Bob Weiner
-;; Maintainer:   Bob Weiner , Mats Lidell 
-;; Created:  06-Oct-92 at 11:52:51
-;; Last-Mod:  1-Jul-23 at 10:33:45 by Mats Lidell
-;; Released: 03-Dec-22
-;; Version:  8.0.1pre
-;; Keywords: comm, convenience, files, frames, hypermedia, languages, 
mail, matching, mouse, multimedia, outlines, tools, wp
-;; Package:  hyperbole
+;; Author:   Bob Weiner
+;; Maintainer:   Bob Weiner , Mats Lidell 
+;; Created:  06-Oct-92 at 11:52:51
+;; Last-Mod:  1-Jul-23 at 23:42:43 by Mats Lidell
+;; Released: 03-Dec-22
+;; Version:  8.0.1pre
+;; Keywords: comm, convenience, files, frames, hypermedia, languages, 
mail, matching, mouse, multimedia, outlines, tools, wp
+;; Package:  hyperbole
 ;; Package-Requires: ((emacs "27.0"))
-;; URL:  http://www.gnu.org/software/hyperbole
+;; URL:  http://www.gnu.org/software/hyperbole
 
 ;; See the "HY-COPY" file for license information.
 



[elpa] externals/jinx 9a10a621c5: Version 0.9

2023-07-02 Thread ELPA Syncer
branch: externals/jinx
commit 9a10a621c505c65acfb640263e29ad546f68
Author: Daniel Mendler 
Commit: Daniel Mendler 

Version 0.9
---
 CHANGELOG.org | 2 +-
 jinx.el   | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/CHANGELOG.org b/CHANGELOG.org
index e3d7714551..3eb4bd425b 100644
--- a/CHANGELOG.org
+++ b/CHANGELOG.org
@@ -2,7 +2,7 @@
 #+author: Daniel Mendler
 #+language: en
 
-* Development
+* Version 0.9 (2023-07-02)
 
 - 🪄 Make sure that Emojis are not marked as misspelled 🧙🏼‍♀️.
 - Rename =jinx-correct-next/previous= to =jinx-next/previous=. The commands 
can be
diff --git a/jinx.el b/jinx.el
index a87e9486d3..4604975a75 100644
--- a/jinx.el
+++ b/jinx.el
@@ -5,7 +5,7 @@
 ;; Author: Daniel Mendler 
 ;; Maintainer: Daniel Mendler 
 ;; Created: 2023
-;; Version: 0.8
+;; Version: 0.9
 ;; Package-Requires: ((emacs "27.1") (compat "29.1.4.0"))
 ;; Homepage: https://github.com/minad/jinx
 ;; Keywords: convenience, wp



[elpa] externals/hyperbole a609d7cdca 2/3: Remove redundant :group args and obsolete * in defcustom docstrings (#353)

2023-07-02 Thread ELPA Syncer
branch: externals/hyperbole
commit a609d7cdca802b6d01345910637e59ca62c46082
Author: Mats Lidell 
Commit: GitHub 

Remove redundant :group args and obsolete * in defcustom docstrings (#353)

* Remove redundant :group args and obsolete * in defcustom docstrings

Contribution from Stefan Monnier. Thanks Stefan.
---
 ChangeLog |  3 +++
 hyrolo.el | 50 --
 2 files changed, 23 insertions(+), 30 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index 2e0a3499c4..ae3afb2a65 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -17,6 +17,9 @@
 
 2023-06-29  Mats Lidell  
 
+* hyrolo.el: Remove redundant `:group` args.  Remove obsolete `*` in
+`defcustom` docstrings. Contribution from Stefan Monnier. Thanks Stefan.
+
 * hbut.el (defib): Remove redundant indent property. Change by Stefan
 Monnier.
 
diff --git a/hyrolo.el b/hyrolo.el
index 211e270278..191a748a72 100644
--- a/hyrolo.el
+++ b/hyrolo.el
@@ -71,11 +71,10 @@
   :group 'hyperbole)
 
 (defcustom hyrolo-date-format "%m/%d/%Y"
-  "*Format of date string used in Rolo automatic date stamps.
+  "Format of date string used in Rolo automatic date stamps.
 Default is American style.  See documentation of the function
 `format-time-string' for format options."
-  :type 'string
-  :group 'hyperbole-rolo)
+  :type 'string)
 
 (defvar hyrolo-display-format-function
   (lambda (entry)
@@ -84,37 +83,32 @@ Default is American style.  See documentation of the 
function
 The argument is a rolo entry string.")
 
 (defcustom hyrolo-email-format "%s\t\t<%s>"
-  "*Format string to use when adding an entry with e-mail addr from a mail msg.
+  "Format string to use when adding an entry with e-mail addr from a mail msg.
 It must contain a %s indicating where to put the entry name and a second
 %s indicating where to put the e-mail address."
-  :type 'string
-  :group 'hyperbole-rolo)
+  :type 'string)
 
 (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-file-suffix-regexp "\\.\\(kotl\\|md\\|org\\|otl\\)$"
   "File suffix regexp used to select files to search with HyRolo."
-  :type 'string
-  :group 'hyperbole-rolo)
+  :type 'string)
 
 (defcustom hyrolo-find-file-function #'find-file
-  "*Function to interactively display a `hyrolo-file-list' file for editing.
+  "Function to interactively display a `hyrolo-file-list' file for editing.
 Use the `hyrolo-edit' function instead to edit a new or existing entry."
-  :type 'function
-  :group 'hyperbole-rolo)
+  :type 'function)
 
 (defcustom hyrolo-find-file-noselect-function #'find-file-noselect
-  "*Function used by HyRolo to read `hyrolo-file-list' files into Emacs."
-  :type 'function
-  :group 'hyperbole-rolo)
+  "Function used by HyRolo to read `hyrolo-file-list' files into Emacs."
+  :type 'function)
 
 (defcustom hyrolo-google-contacts-flag t
-  "*Non-nil means search Google Contacts on each hyrolo query.
+  "Non-nil means search Google Contacts on each hyrolo query.
 The google-contact package must be loaded and a gpg encryption
 executable must be found as well (for Oauth security)."
-  :type 'boolean
-  :group 'hyperbole-rolo)
+  :type 'boolean)
 
 (defvar hyrolo-next-match-function #'hyrolo-next-regexp-match
   "Value is the function to find next match within a HyRolo file.
@@ -185,34 +179,30 @@ A hyrolo-file consists of:
hyrolo-hdr-regexp;
(2) one or more rolo entries which each begin with
hyrolo-entry-regexp and may be nested."
-  :group 'hyperbole-rolo
   :type '(repeat file))
 
 (defcustom hyrolo-highlight-face 'match
-  "*Face used to highlight rolo search matches."
+  "Face used to highlight rolo search matches."
   :type 'face
-  :initialize #'custom-initialize-default
-  :group 'hyperbole-rolo)
+  :initialize #'custom-initialize-default)
 
 (defcustom hyrolo-kill-buffers-after-use nil
-  "*Non-nil means kill rolo file buffers after searching them for entries.
+  "Non-nil means kill rolo file buffers after searching them for entries.
 Only unmodified buffers are killed."
-  :type 'boolean
-  :group 'hyperbole-rolo)
+  :type 'boolean)
 
 (defcustom hyrolo-save-buffers-after-use t
-  "*Non-nil means save rolo file after an entry is killed."
-  :type 'boolean
-  :group 'hyperbole-rolo)
+  "Non-nil means save rolo file after an entry is killed."
+  :type 'boolean)
 
 ;; Insert or update the entry date each time an entry is added or edited.
 (add-hook 'hyrolo-add-hook  #'hyrolo-set-date)
 (add-hook 'hyrolo-edit-hook #'hyrolo-set-date)
 
-(defvar hyrolo-yank-reformat-function nil
-  "*A function of two arguments, START and END, invoked after a hyrolo-yank.
+(defvar hyrolo-yank-reformat-function #'ignore
+  "*A function of two arguments, START and END, invoked after a `hyrolo-yank'.
 It should reformat the region given by the arguments to some preferred style.
-Default value is nil, meaning no reformmating is

[elpa] externals/hyperbole 841535cf50 1/3: Remove some byte compilation warnings (#354)

2023-07-02 Thread ELPA Syncer
branch: externals/hyperbole
commit 841535cf507221278085a598a263328461d926ba
Author: Mats Lidell 
Commit: GitHub 

Remove some byte compilation warnings (#354)

* Remove some byte compilation warnings

* hui.el:
  hpath.el:
  hbut.el:
  hbdata.el: Fix single quotes in docstrings.

* kotl/kview.el (kcell-view:to-label-end): Add missing point to error
message.

* hactypes.el (require): Load hsys-org for org-fold-show-context.
(link-to-org-id-marker): Use org-fold-show-context.
(link-to-org-id): Silence byte compile warnings when org-roam not 
loaded.

* Update after review comments
---
 ChangeLog | 12 
 hactypes.el   | 10 +-
 hbdata.el | 12 ++--
 hbut.el   | 10 +-
 hpath.el  |  4 ++--
 hui.el|  4 ++--
 kotl/kview.el |  4 ++--
 7 files changed, 34 insertions(+), 22 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index 6303b89bcc..2e0a3499c4 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,17 @@
 2023-07-01  Mats Lidell  
 
+* hui.el:
+  hpath.el:
+  hbut.el:
+  hbdata.el: Fix single quotes in docstrings.
+
+* kotl/kview.el (kcell-view:to-label-end): Add missing point to error
+message.
+
+* hactypes.el (require): Load hsys-org for org-fold-show-context.
+(link-to-org-id-marker): Use org-fold-show-context.
+(org-roam-id-find): declare-function.
+
 * hyperbole.el: Preload `kotl-autoloads`.  Submitted by Stefan
 Monnier. Thanks Stefan.
 
diff --git a/hactypes.el b/hactypes.el
index bf7744d347..981af765a9 100644
--- a/hactypes.el
+++ b/hactypes.el
@@ -3,7 +3,7 @@
 ;; Author:   Bob Weiner
 ;;
 ;; Orig-Date:23-Sep-91 at 20:34:36
-;; Last-Mod: 25-Jun-23 at 13:48:01 by Bob Weiner
+;; Last-Mod:  1-Jul-23 at 23:06:38 by Mats Lidell
 ;;
 ;; SPDX-License-Identifier: GPL-3.0-or-later
 ;;
@@ -18,7 +18,7 @@
 ;;; Other required Elisp libraries
 ;;; 
 
-(eval-and-compile (mapc #'require '(bookmark hvar hsettings comint hbut hpath 
hargs hmail man)))
+(eval-and-compile (mapc #'require '(bookmark hvar hsettings comint hbut hpath 
hargs hmail man hsys-org)))
 
 ;;; 
 ;;; Public declarations
@@ -27,6 +27,7 @@
 (declare-function kotl-mode:goto-cell "kotl-mode")
 (declare-function kotl-mode:beginning-of-buffer "kotl-mode")
 (declare-function rmail:msg-to-p "hrmail")
+(declare-function org-roam-id-find "‎ext:org-roam-id")
 
 ;;; 
 ;;; Standard Hyperbole action types
@@ -503,7 +504,7 @@ available.  Filename may be given without the .info suffix."
 (hypb:error "(link-to-Info-node): Invalid Info node: `%s'" string)))
 
 (defact link-to-ibut (name-key &optional but-src point)
-  "Perform implicit button action specified by NAME-KEY, optional BUT-SRC and 
POINT.
+  "Activate implicit button given by NAME-KEY, optional BUT-SRC and POINT.
 NAME-KEY must be a normalized key for an ibut <[name]>.
 BUT-SRC defaults to the current buffer's file or if there is no
 attached file, then to its buffer name.  POINT defaults to the
@@ -612,7 +613,7 @@ See doc of `ibtypes::org-id' for usage."
 (org-mark-ring-push)
 (hact #'link-to-buffer-tmp (marker-buffer marker) marker)
 (move-marker marker nil)
-(org-show-context))
+(org-fold-show-context))
 
 (defact link-to-regexp-match (regexp n source &optional buffer-p)
   "Find REGEXP's Nth occurrence in SOURCE and display location at window top.
@@ -739,4 +740,3 @@ Optional SECTIONS-START limits toc entries to those after 
that point."
 (provide 'hactypes)
 
 ;;; hactypes.el ends here
-
diff --git a/hbdata.el b/hbdata.el
index 757bd7ece8..432e31b938 100644
--- a/hbdata.el
+++ b/hbdata.el
@@ -3,7 +3,7 @@
 ;; Author:   Bob Weiner
 ;;
 ;; Orig-Date: 2-Apr-91
-;; Last-Mod: 13-Jun-23 at 01:27:25 by Bob Weiner
+;; Last-Mod: 30-Jun-23 at 22:36:04 by Mats Lidell
 ;;
 ;; SPDX-License-Identifier: GPL-3.0-or-later
 ;;
@@ -288,9 +288,9 @@ class `hbdata' to operate on the entry."
   "Given NAME-KEY, return next ibutton instance number string for current 
buffer.
 If there is no existing ibutton with NAME-KEY, return t.
 
-With NAME-KEY nil or NAME-KEY 'name' and no existing in-buffer ibutton
+With NAME-KEY nil or NAME-KEY `name' and no existing in-buffer ibutton
 with that name, return t.
-With NAME-KEY 'name' and highest in-buffer ibutton 'name:3',
+With NAME-KEY `name' and highest in-buffer ibutton `name:3',
 return ':4'."
   (if (null name-key)
   t
@@ -305,8 +305,8 @@ Instance number is returned as an integer.  Return 1 if 
NAME-KEY exists
 in the buffer but no other instances do; nil if no instance.
 
 With no match, return nil.
-With only 'name' found, return 1.
-With 'name' and 'name:2' found, return 2."
+With only `name' found, return 1.
+With `name' and `name:2' found, return 2."
   (let

[elpa] externals/marginalia 8cffd7dcdb: Version 1.3

2023-07-02 Thread ELPA Syncer
branch: externals/marginalia
commit 8cffd7dcdb411f8796258183a4224653d407ae3f
Author: Daniel Mendler 
Commit: Daniel Mendler 

Version 1.3
---
 CHANGELOG.org | 2 +-
 marginalia.el | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/CHANGELOG.org b/CHANGELOG.org
index 31b388321d..3d160c26e5 100644
--- a/CHANGELOG.org
+++ b/CHANGELOG.org
@@ -2,7 +2,7 @@
 #+author: Omar AntolĂ­n Camarena, Daniel Mendler
 #+language: en
 
-* Development
+* Version 1.3 (2023-07-02)
 
 - =marginalia-classify-by-prompt=: Use case-insensitive matching.
 - =marginalia-annotate-symbol=: Additional symbol classes. Use =M= for module
diff --git a/marginalia.el b/marginalia.el
index 1494844f34..cd41cdf463 100644
--- a/marginalia.el
+++ b/marginalia.el
@@ -5,7 +5,7 @@
 ;; Author: Omar AntolĂ­n Camarena , Daniel Mendler 

 ;; Maintainer: Omar AntolĂ­n Camarena , Daniel Mendler 

 ;; Created: 2020
-;; Version: 1.2
+;; Version: 1.3
 ;; Package-Requires: ((emacs "27.1") (compat "29.1.4.0"))
 ;; Homepage: https://github.com/minad/marginalia
 ;; Keywords: docs, help, matching, completion



[elpa] externals/org-modern 63372bda43: Version 0.10

2023-07-02 Thread ELPA Syncer
branch: externals/org-modern
commit 63372bda43a9d0dd9940c1ec3c53f752b642ac41
Author: Daniel Mendler 
Commit: Daniel Mendler 

Version 0.10
---
 CHANGELOG.org | 3 ++-
 org-modern.el | 2 +-
 2 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/CHANGELOG.org b/CHANGELOG.org
index 487a621ab3..dcb0f01384 100644
--- a/CHANGELOG.org
+++ b/CHANGELOG.org
@@ -2,8 +2,9 @@
 #+author: Daniel Mendler
 #+language: en
 
-* Development
+* Version 0.10 (2023-07-02)
 
+- Bugfixes.
 - Fix star prettification if =org-indent-mode= is enabled.
 - Prettify =filetags=.
 
diff --git a/org-modern.el b/org-modern.el
index 8832603822..0416a6e644 100644
--- a/org-modern.el
+++ b/org-modern.el
@@ -5,7 +5,7 @@
 ;; Author: Daniel Mendler 
 ;; Maintainer: Daniel Mendler 
 ;; Created: 2022
-;; Version: 0.9
+;; Version: 0.10
 ;; Package-Requires: ((emacs "27.1") (compat "29.1.4.0"))
 ;; Homepage: https://github.com/minad/org-modern
 ;; Keywords: outlines, hypermedia, wp



[elpa] externals/osm b2481ef66d: Version 0.13

2023-07-02 Thread ELPA Syncer
branch: externals/osm
commit b2481ef66d4443402bfbac66cbbfe51a52152407
Author: Daniel Mendler 
Commit: Daniel Mendler 

Version 0.13
---
 CHANGELOG.org | 2 +-
 osm.el| 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/CHANGELOG.org b/CHANGELOG.org
index 9880062d0f..8f20ceeccc 100644
--- a/CHANGELOG.org
+++ b/CHANGELOG.org
@@ -2,7 +2,7 @@
 #+author: Daniel Mendler
 #+language: en
 
-* Development
+* Version 0.13 (2023-07-02)
 
 - Provide =osm-prefix-map=.
 - =osm-server-list=: Add support for an api-key placeholder =%k= in the server 
=:url=.
diff --git a/osm.el b/osm.el
index 33652243fb..a09e50c52f 100644
--- a/osm.el
+++ b/osm.el
@@ -5,7 +5,7 @@
 ;; Author: Daniel Mendler 
 ;; Maintainer: Daniel Mendler 
 ;; Created: 2022
-;; Version: 0.12
+;; Version: 0.13
 ;; Package-Requires: ((emacs "27.1") (compat "29.1.4.0"))
 ;; Homepage: https://github.com/minad/osm
 ;; Keywords: network, multimedia, hypermedia, mouse



[elpa] externals/tempel fd46702a84: Version 0.8

2023-07-02 Thread ELPA Syncer
branch: externals/tempel
commit fd46702a849b23c9d9b39cb7810a6d727655d9d0
Author: Daniel Mendler 
Commit: Daniel Mendler 

Version 0.8
---
 CHANGELOG.org | 2 +-
 tempel.el | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/CHANGELOG.org b/CHANGELOG.org
index 7a51a1ea3f..b26890bafa 100644
--- a/CHANGELOG.org
+++ b/CHANGELOG.org
@@ -2,7 +2,7 @@
 #+author: Daniel Mendler
 #+language: en
 
-* Development
+* Version 0.8 (2023-07-02)
 
 - Ensure that modification hooks are never inhibited during field modification,
   which is needed for lsp-mode in order to keep the server synchronized.
diff --git a/tempel.el b/tempel.el
index c6f867ea0d..8dd23a64c9 100644
--- a/tempel.el
+++ b/tempel.el
@@ -5,7 +5,7 @@
 ;; Author: Daniel Mendler 
 ;; Maintainer: Daniel Mendler 
 ;; Created: 2022
-;; Version: 0.7
+;; Version: 0.8
 ;; Package-Requires: ((emacs "27.1") (compat "29.1.4.0"))
 ;; Homepage: https://github.com/minad/tempel
 ;; Keywords: abbrev, languages, tools, wp



[elpa] externals/vertico 0a8994adeb 1/3: Update changelog

2023-07-02 Thread ELPA Syncer
branch: externals/vertico
commit 0a8994adeb8dccde3d3e7e56d999dd787e2f494d
Author: Daniel Mendler 
Commit: Daniel Mendler 

Update changelog
---
 CHANGELOG.org | 6 ++
 1 file changed, 6 insertions(+)

diff --git a/CHANGELOG.org b/CHANGELOG.org
index 3b966102f6..20f9a1542b 100644
--- a/CHANGELOG.org
+++ b/CHANGELOG.org
@@ -2,6 +2,12 @@
 #+author: Daniel Mendler
 #+language: en
 
+* Development
+
+- =vertico-grid-annotate=: Fix width computation.
+- =vertico--display-string=: Fix display issue with =consult-line= and 
=org-modern=.
+- Set =scroll-margin=0= in the minibuffer.
+
 * Version 1.3 (2023-04-25)
 
 - =vertico-grid-annotate= and =vertico-flat-annotate=: New customization 
variables



[elpa] externals/vertico updated (d3cb3d10e0 -> 30d8782356)

2023-07-02 Thread ELPA Syncer
elpasync pushed a change to branch externals/vertico.

  from  d3cb3d10e0 Remove unused customization option
   new  0a8994adeb Update changelog
   new  438f9a47f8 Version 1.4
   new  30d8782356 vertico-directory-enter: Exit with input if prefix 
argument is given


Summary of changes:
 CHANGELOG.org | 11 +++
 extensions/vertico-buffer.el  |  2 +-
 extensions/vertico-directory.el   | 14 --
 extensions/vertico-flat.el|  2 +-
 extensions/vertico-grid.el|  2 +-
 extensions/vertico-indexed.el |  2 +-
 extensions/vertico-mouse.el   |  2 +-
 extensions/vertico-multiform.el   |  2 +-
 extensions/vertico-quick.el   |  2 +-
 extensions/vertico-repeat.el  |  2 +-
 extensions/vertico-reverse.el |  2 +-
 extensions/vertico-unobtrusive.el |  2 +-
 vertico.el|  2 +-
 13 files changed, 30 insertions(+), 17 deletions(-)



[elpa] externals/vertico 30d8782356 3/3: vertico-directory-enter: Exit with input if prefix argument is given

2023-07-02 Thread ELPA Syncer
branch: externals/vertico
commit 30d8782356b126719346b6f8d3c5a196db15424a
Author: Daniel Mendler 
Commit: Daniel Mendler 

vertico-directory-enter: Exit with input if prefix argument is given
---
 CHANGELOG.org   |  5 +
 extensions/vertico-directory.el | 12 +++-
 2 files changed, 12 insertions(+), 5 deletions(-)

diff --git a/CHANGELOG.org b/CHANGELOG.org
index 2855a00144..cc8db48b6b 100644
--- a/CHANGELOG.org
+++ b/CHANGELOG.org
@@ -2,6 +2,11 @@
 #+author: Daniel Mendler
 #+language: en
 
+* Development
+
+- =vertico-directory-enter=: Exit with input if prefix argument is given. 
Mirrors
+  the behavior of =vertico-exit=.
+
 * Version 1.4 (2023-07-02)
 
 - =vertico-grid-annotate=: Fix width computation.
diff --git a/extensions/vertico-directory.el b/extensions/vertico-directory.el
index 544f76dc21..79f9a75206 100644
--- a/extensions/vertico-directory.el
+++ b/extensions/vertico-directory.el
@@ -42,10 +42,12 @@
 (eval-when-compile (require 'subr-x))
 
 ;;;###autoload
-(defun vertico-directory-enter ()
-  "Enter directory or exit completion with current candidate."
-  (interactive)
-  (if-let (((>= vertico--index 0))
+(defun vertico-directory-enter (&optional arg)
+  "Enter directory or exit completion with current candidate.
+Exit with current input if prefix ARG is given."
+  (interactive "P")
+  (if-let (((not arg))
+   ((>= vertico--index 0))
((eq 'file (vertico--metadata-get 'category)))
;; Check vertico--base for stepwise file path completion
((not (equal vertico--base "")))
@@ -62,7 +64,7 @@
   (setq cand (replace-regexp-in-string "/[^/|:]+/\\.\\./\\'" "/" 
cand)))
 (delete-minibuffer-contents)
 (insert cand))
-(vertico-exit)))
+(vertico-exit arg)))
 
 ;;;###autoload
 (defun vertico-directory-up (&optional n)



[elpa] externals/vertico 438f9a47f8 2/3: Version 1.4

2023-07-02 Thread ELPA Syncer
branch: externals/vertico
commit 438f9a47f8adc0c1d3de056c190d4edba3d4ad35
Author: Daniel Mendler 
Commit: Daniel Mendler 

Version 1.4
---
 CHANGELOG.org | 2 +-
 extensions/vertico-buffer.el  | 2 +-
 extensions/vertico-directory.el   | 2 +-
 extensions/vertico-flat.el| 2 +-
 extensions/vertico-grid.el| 2 +-
 extensions/vertico-indexed.el | 2 +-
 extensions/vertico-mouse.el   | 2 +-
 extensions/vertico-multiform.el   | 2 +-
 extensions/vertico-quick.el   | 2 +-
 extensions/vertico-repeat.el  | 2 +-
 extensions/vertico-reverse.el | 2 +-
 extensions/vertico-unobtrusive.el | 2 +-
 vertico.el| 2 +-
 13 files changed, 13 insertions(+), 13 deletions(-)

diff --git a/CHANGELOG.org b/CHANGELOG.org
index 20f9a1542b..2855a00144 100644
--- a/CHANGELOG.org
+++ b/CHANGELOG.org
@@ -2,7 +2,7 @@
 #+author: Daniel Mendler
 #+language: en
 
-* Development
+* Version 1.4 (2023-07-02)
 
 - =vertico-grid-annotate=: Fix width computation.
 - =vertico--display-string=: Fix display issue with =consult-line= and 
=org-modern=.
diff --git a/extensions/vertico-buffer.el b/extensions/vertico-buffer.el
index e5c29ebb06..b9dcfe4ea2 100644
--- a/extensions/vertico-buffer.el
+++ b/extensions/vertico-buffer.el
@@ -6,7 +6,7 @@
 ;; Maintainer: Daniel Mendler 
 ;; Created: 2021
 ;; Version: 0.1
-;; Package-Requires: ((emacs "27.1") (vertico "1.3"))
+;; Package-Requires: ((emacs "27.1") (vertico "1.4"))
 ;; Homepage: https://github.com/minad/vertico
 
 ;; This file is part of GNU Emacs.
diff --git a/extensions/vertico-directory.el b/extensions/vertico-directory.el
index ee98bdbad7..544f76dc21 100644
--- a/extensions/vertico-directory.el
+++ b/extensions/vertico-directory.el
@@ -6,7 +6,7 @@
 ;; Maintainer: Daniel Mendler 
 ;; Created: 2021
 ;; Version: 0.1
-;; Package-Requires: ((emacs "27.1") (vertico "1.3"))
+;; Package-Requires: ((emacs "27.1") (vertico "1.4"))
 ;; Homepage: https://github.com/minad/vertico
 
 ;; This file is part of GNU Emacs.
diff --git a/extensions/vertico-flat.el b/extensions/vertico-flat.el
index e4a41312a5..0666e1064a 100644
--- a/extensions/vertico-flat.el
+++ b/extensions/vertico-flat.el
@@ -6,7 +6,7 @@
 ;; Maintainer: Daniel Mendler 
 ;; Created: 2021
 ;; Version: 0.1
-;; Package-Requires: ((emacs "27.1") (vertico "1.3"))
+;; Package-Requires: ((emacs "27.1") (vertico "1.4"))
 ;; Homepage: https://github.com/minad/vertico
 
 ;; This file is part of GNU Emacs.
diff --git a/extensions/vertico-grid.el b/extensions/vertico-grid.el
index e3654da437..ef299571b3 100644
--- a/extensions/vertico-grid.el
+++ b/extensions/vertico-grid.el
@@ -6,7 +6,7 @@
 ;; Maintainer: Daniel Mendler 
 ;; Created: 2021
 ;; Version: 0.1
-;; Package-Requires: ((emacs "27.1") (vertico "1.3"))
+;; Package-Requires: ((emacs "27.1") (vertico "1.4"))
 ;; Homepage: https://github.com/minad/vertico
 
 ;; This file is part of GNU Emacs.
diff --git a/extensions/vertico-indexed.el b/extensions/vertico-indexed.el
index 268562c336..6c8f0d73bb 100644
--- a/extensions/vertico-indexed.el
+++ b/extensions/vertico-indexed.el
@@ -6,7 +6,7 @@
 ;; Maintainer: Daniel Mendler 
 ;; Created: 2021
 ;; Version: 0.1
-;; Package-Requires: ((emacs "27.1") (vertico "1.3"))
+;; Package-Requires: ((emacs "27.1") (vertico "1.4"))
 ;; Homepage: https://github.com/minad/vertico
 
 ;; This file is part of GNU Emacs.
diff --git a/extensions/vertico-mouse.el b/extensions/vertico-mouse.el
index 25c53b8ae6..94c5739b8b 100644
--- a/extensions/vertico-mouse.el
+++ b/extensions/vertico-mouse.el
@@ -6,7 +6,7 @@
 ;; Maintainer: Daniel Mendler 
 ;; Created: 2021
 ;; Version: 0.1
-;; Package-Requires: ((emacs "27.1") (vertico "1.3"))
+;; Package-Requires: ((emacs "27.1") (vertico "1.4"))
 ;; Homepage: https://github.com/minad/vertico
 
 ;; This file is part of GNU Emacs.
diff --git a/extensions/vertico-multiform.el b/extensions/vertico-multiform.el
index 4953e7c136..6b06ae4ab4 100644
--- a/extensions/vertico-multiform.el
+++ b/extensions/vertico-multiform.el
@@ -6,7 +6,7 @@
 ;; Maintainer: Daniel Mendler 
 ;; Created: 2021
 ;; Version: 0.1
-;; Package-Requires: ((emacs "27.1") (vertico "1.3"))
+;; Package-Requires: ((emacs "27.1") (vertico "1.4"))
 ;; Homepage: https://github.com/minad/vertico
 
 ;; This file is part of GNU Emacs.
diff --git a/extensions/vertico-quick.el b/extensions/vertico-quick.el
index 930ef2d958..442d9e15e1 100644
--- a/extensions/vertico-quick.el
+++ b/extensions/vertico-quick.el
@@ -6,7 +6,7 @@
 ;; Maintainer: Daniel Mendler 
 ;; Created: 2021
 ;; Version: 0.1
-;; Package-Requires: ((emacs "27.1") (vertico "1.3"))
+;; Package-Requires: ((emacs "27.1") (vertico "1.4"))
 ;; Homepage: https://github.com/minad/vertico
 
 ;; This file is part of GNU Emacs.
diff --git a/extensions/vertico-repeat.el b/extensions/vertico-repeat.el
index f342ea467a..2317ef8e4f 100644
--- a/extensions/vertico-repeat.el
+++ b/extensions/vertico-repeat.el
@@ -6,7 +6,7 @@
 ;; Maintainer: Daniel Mendler 
 ;; Cre

[nongnu] elpa/evil updated (4d0088dc66 -> 2a0f8d8a83)

2023-07-02 Thread ELPA Syncer
elpasync pushed a change to branch elpa/evil.

  from  4d0088dc66 Small cleanups
   new  d2770cac1e Store command properties as symbol property
   new  2a0f8d8a83 Remove evil-repeat-start-hook


Summary of changes:
 evil-commands.el |   2 +-
 evil-common.el   | 340 +++
 evil-core.el |  43 +++
 evil-ex.el   |  13 +--
 evil-macros.el   |  76 ++---
 evil-repeat.el   |  71 ++--
 evil-states.el   |  25 ++--
 evil-tests.el|   9 +-
 evil-vars.el |  16 +--
 9 files changed, 246 insertions(+), 349 deletions(-)



[nongnu] elpa/evil 2a0f8d8a83 2/2: Remove evil-repeat-start-hook

2023-07-02 Thread ELPA Syncer
branch: elpa/evil
commit 2a0f8d8a83a57311c62e0597ace6992aa5992f12
Author: Axel Forsman 
Commit: Axel Forsman 

Remove evil-repeat-start-hook

It was a no-op since (evil-repeat-type this-command t) does not
returns t, and otherwise the call to evil-repeat-start would overwrite
changes done by (funcall repeat-type 'pre) in evil-repeat-pre-hook.
---
 evil-macros.el |  2 +-
 evil-repeat.el | 68 +-
 evil-states.el | 25 +++--
 evil-tests.el  |  9 
 evil-vars.el   | 13 ++-
 5 files changed, 49 insertions(+), 68 deletions(-)

diff --git a/evil-macros.el b/evil-macros.el
index 9e7d2f34c4..ebc188e0c4 100644
--- a/evil-macros.el
+++ b/evil-macros.el
@@ -58,7 +58,7 @@ The return value is a list (BEG END TYPE)."
   (evil-this-type
(or type (evil-get-command-property motion :type 
'exclusive
   (condition-case err
-  (let ((repeat-type (evil-repeat-type motion t)))
+  (let ((repeat-type (evil--repeat-type motion)))
 (when (functionp repeat-type) (funcall repeat-type 'pre))
 (unless (with-local-quit
   (setq range (call-interactively motion))
diff --git a/evil-repeat.el b/evil-repeat.el
index edc6db1e44..b9141fb5b4 100644
--- a/evil-repeat.el
+++ b/evil-repeat.el
@@ -122,12 +122,6 @@
 
 (require 'evil-states)
 
-(declare-function evil-visual-state-p "evil-visual")
-(declare-function evil-visual-range "evil-visual")
-(declare-function evil-visual-char "evil-visual")
-(declare-function evil-visual-line "evil-visual")
-(declare-function evil-visual-block "evil-visual")
-
 (defmacro evil-without-repeat (&rest body)
   (declare (indent defun)
(debug t))
@@ -173,8 +167,7 @@ Update `evil-repeat-ring' with the accumulated changes
 in `evil-repeat-info' and clear variables."
   (unwind-protect
   (when (evil-repeat-recording-p)
-(setq evil-repeat-info
-  (evil-normalize-repeat-info evil-repeat-info))
+(setq evil-repeat-info (evil-normalize-repeat-info evil-repeat-info))
 (when (and evil-repeat-info evil-repeat-ring)
   (ring-insert evil-repeat-ring evil-repeat-info)))
 (evil-repeat-reset nil)))
@@ -224,43 +217,51 @@ buffer is known and different from the current buffer."
(not (minibufferp))
(not (eq (current-buffer) evil-repeat-buffer
 
+(defvar evil-repeat-types
+  '((t . evil-repeat-keystrokes)
+(change . evil-repeat-changes)
+(motion . evil-repeat-motion)
+(insert-at-point . evil-repeat-insert-at-point)
+(ignore . nil))
+  "Alist of defined repeat-types.")
+
+(defun evil--repeat-type (command)
+  "Return the :repeat property of COMMAND."
+  (when (functionp command) ; ignore keyboard macros
+(let* ((type (evil-get-command-property command :repeat t))
+   (repeat-type (assq type evil-repeat-types)))
+  (if repeat-type (cdr repeat-type) type
+
 (defun evil-repeat-type (command &optional default)
   "Return the :repeat property of COMMAND.
 If COMMAND doesn't have this property, return DEFAULT."
+  (declare (obsolete evil--repeat-type "1.15.0"))
   (when (functionp command) ; ignore keyboard macros
 (let* ((type (evil-get-command-property command :repeat default))
(repeat-type (assq type evil-repeat-types)))
   (if repeat-type (cdr repeat-type) type
 
 (defun evil-repeat-force-abort-p (repeat-type)
-  "Return non-nil iff the current command should abort the recording of repeat 
information."
-  (or (evil-repeat-different-buffer-p)   ; ... buffer changed
-  (eq repeat-type 'abort); ... explicitely forced
-  (eq evil-recording-repeat 'abort)  ; ... already aborted
-  (evil-emacs-state-p)   ; ... in Emacs state
-  (and (evil-mouse-events-p (this-command-keys))  ; ... mouse events
+  "Return non-nil if the current command should abort the recording of repeat 
info."
+  (or (evil-repeat-different-buffer-p)  ; ... buffer changed
+  (eq repeat-type 'abort)   ; ... explicitely forced
+  (eq evil-recording-repeat 'abort) ; ... already aborted
+  (evil-emacs-state-p)  ; ... in Emacs state
+  (and (evil-mouse-events-p ; ... mouse events
+(this-command-keys-vector))
(eq repeat-type nil))
-  (minibufferp))); ... minibuffer activated
+  (minibufferp)))   ; ... minibuffer activated
 
 (defun evil-repeat-record (info)
-  "Add INFO to the end of `evil-repeat-info'."
+  "Append INFO to `evil-repeat-info'."
   (when (evil-repeat-recording-p)
 (setq evil-repeat-info (nconc evil-repeat-info (list info)
 
-;; called from `evil-normal-state-exit-hook'
-(defun evil-repeat-start-hook ()
-  "Record a new repeat when exiting Normal state.
-Does not record in Emacs

[nongnu] elpa/evil d2770cac1e 1/2: Store command properties as symbol property

2023-07-02 Thread ELPA Syncer
branch: elpa/evil
commit d2770cac1e3b3c59172adc7dc6f575a0e871310f
Author: Axel Forsman 
Commit: Axel Forsman 

Store command properties as symbol property

Also replace a few calls to evil-filter-list that destructively
modified user-provided lists with cl-remove-if.
---
 evil-commands.el |   2 +-
 evil-common.el   | 340 +++
 evil-core.el |  43 +++
 evil-ex.el   |  13 +--
 evil-macros.el   |  74 +---
 evil-repeat.el   |   3 +-
 evil-vars.el |   3 -
 7 files changed, 197 insertions(+), 281 deletions(-)

diff --git a/evil-commands.el b/evil-commands.el
index 68e9663e4b..e654487c1f 100644
--- a/evil-commands.el
+++ b/evil-commands.el
@@ -1524,7 +1524,7 @@ Save in REGISTER or in the kill-ring with YANK-HANDLER."
  (or (= beg end)
  (/= (char-before end) ?\n))
  (/= beg (point-min))
- (=  (char-before beg) ?\n))
+ (= (char-before beg) ?\n))
 (delete-region (1- beg) end))
(t (delete-region beg end)))
   (when (and (eq type 'line)
diff --git a/evil-common.el b/evil-common.el
index 49a5456d9c..e1ce7df4d9 100644
--- a/evil-common.el
+++ b/evil-common.el
@@ -76,47 +76,21 @@ the buffer-local value of HOOK is modified."
 
 ;;; List functions
 
-(defmacro evil--add-to-alist (list-var &rest elements)
-  "Add the assocation of KEY and VAL to the value of LIST-VAR.
+(defmacro evil--add-to-alist (alist &rest elements)
+  "Add the association of KEY and VAL to the value of ALIST.
 If the list already contains an entry for KEY, update that entry;
-otherwise add at the end of the list.
+otherwise prepend it to the list.
 
-\(fn LIST-VAR KEY VAL &rest ELEMENTS)"
-  (when (eq (car-safe list-var) 'quote)
-(setq list-var (cadr list-var)))
+\(fn ALIST [KEY VAL]...)"
   `(progn
- ,@(if (version< emacs-version "26")
-   ;; TODO: Remove this path when support for Emacs 25 is dropped
-   (cl-loop for (key val) on elements by #'cddr
-collect `(let* ((key ,key)
-(val ,val)
-(cell (assoc key ,list-var)))
-   (if cell
-   (setcdr cell val)
- (push (cons key val) ,list-var
- (cl-loop for (key val) on elements by #'cddr
-  collect `(setf (alist-get ,key ,list-var nil nil #'equal) 
,val)))
- ,list-var))
-
-(defun evil-add-to-alist (list-var key val &rest elements)
-  "Add the assocation of KEY and VAL to the value of LIST-VAR.
-If the list already contains an entry for KEY, update that entry;
-otherwise add at the end of the list."
-  (let ((tail (symbol-value list-var)))
-(while (and tail (not (equal (car-safe (car-safe tail)) key)))
-  (setq tail (cdr tail)))
-(if tail
-(setcar tail (cons key val))
-  (set list-var (append (symbol-value list-var)
-(list (cons key val)
-(if elements
-(with-no-warnings
-  (apply #'evil-add-to-alist list-var elements))
-  (symbol-value list-var
-
-(make-obsolete 'evil-add-to-alist
-   "use `evil--add-to-alist' instead. You may need to recompile 
code with evil macros."
-   "1.13.1")
+ ,@(cl-loop
+for (key val) on elements by #'cddr collect
+(if (< emacs-major-version 26)
+(macroexp-let2* nil ((k key) (p `(assoc ,k ,alist)))
+  `(if ,p (setcdr ,p ,val)
+ (push (cons ,k ,val) ,alist)))
+  `(setf (alist-get ,key ,alist nil nil #'equal) ,val)))
+ ,alist))
 
 ;; custom version of `delete-if'
 (defun evil-filter-list (predicate list &optional pointer)
@@ -153,6 +127,7 @@ in the list."
 
 (defun evil-member-recursive-if (predicate tree)
   "Find the first item satisfying PREDICATE in TREE."
+  (declare (obsolete nil "1.15.0"))
   (cond
((funcall predicate tree)
 tree)
@@ -308,30 +283,22 @@ last, sorting in between."
[&optional ("interactive" [&rest form])]
def-body)))
   (let ((interactive '(interactive))
-arg args doc doc-form key keys)
+args doc doc-form keys)
 ;; collect arguments
-(when (listp (car-safe body))
+(when (listp (car body))
   (setq args (pop body)))
 ;; collect docstring
-(when (> (length body) 1)
-  (if (eq (car-safe (car-safe body)) 'format)
-  (setq doc-form (pop body))
-(when (stringp (car-safe body))
-  (setq doc (pop body)
+(cond ((stringp (car body)) (setq doc (pop body)))
+  ((eq (car-safe (car body)) #'format) (setq doc-form (pop body
 ;; collect keywords
-(setq keys (plist-put keys :repeat t))
-(while (keywordp (car-safe body))
-  (setq key (pop body)
-arg (pop body))
-  (unless nil ; TODO: add keyword check
-(setq keys (plist-put keys key arg

[nongnu] elpa/helm updated (87059794e9 -> 179e6c30aa)

2023-07-02 Thread ELPA Syncer
elpasync pushed a change to branch elpa/helm.

  from  87059794e9 Ensure [+] is used and documented everywhere
   new  2eb150766a Get rid of the icon FCT in HFF
   new  179e6c30aa Forget to remove the icon FCT in read-file-name


Summary of changes:
 helm-files.el | 165 +-
 helm-mode.el  |   5 +-
 2 files changed, 83 insertions(+), 87 deletions(-)



[nongnu] elpa/helm 179e6c30aa 2/2: Forget to remove the icon FCT in read-file-name

2023-07-02 Thread ELPA Syncer
branch: elpa/helm
commit 179e6c30aad85d9b5059ab2290532ca45f821a8a
Author: Thierry Volpiatto 
Commit: Thierry Volpiatto 

Forget to remove the icon FCT in read-file-name
---
 helm-mode.el | 5 +
 1 file changed, 1 insertion(+), 4 deletions(-)

diff --git a/helm-mode.el b/helm-mode.el
index 7d2858a838..b6ca7a76b6 100644
--- a/helm-mode.el
+++ b/helm-mode.el
@@ -1541,10 +1541,7 @@ Keys description:
  :match-on-real t
  :filtered-candidate-transformer (delq nil `(helm-ff-fct
  
helm-ff-maybe-show-thumbnails
- 
helm-ff-sort-candidates
- ,(and 
helm-ff-icon-mode
-   (featurep 
'all-the-icons)
-   
'helm-ff-icons-transformer)))
+ 
helm-ff-sort-candidates))
  :persistent-action-if persistent-action-if
  :persistent-help persistent-help
  :volatile t



[nongnu] elpa/helm-core updated (87059794e9 -> 179e6c30aa)

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

  from  87059794e9 Ensure [+] is used and documented everywhere
  adds  2eb150766a Get rid of the icon FCT in HFF
  adds  179e6c30aa Forget to remove the icon FCT in read-file-name

No new revisions were added by this update.

Summary of changes:
 helm-files.el | 165 +-
 helm-mode.el  |   5 +-
 2 files changed, 83 insertions(+), 87 deletions(-)



[nongnu] elpa/helm 2eb150766a 1/2: Get rid of the icon FCT in HFF

2023-07-02 Thread ELPA Syncer
branch: elpa/helm
commit 2eb150766aad6dac6ac418dd3ad4f9335347eb4e
Author: Thierry Volpiatto 
Commit: Thierry Volpiatto 

Get rid of the icon FCT in HFF

It is faster, the behavior of helm-ff-prefix-filename is now more
clear, no need to rebuild source when toggling helm-ff-icon-mode.

Icons are now added from helm-ff-prefix-filename.
---
 helm-files.el | 165 +-
 1 file changed, 82 insertions(+), 83 deletions(-)

diff --git a/helm-files.el b/helm-files.el
index 4a58b89d00..3cff97ef66 100644
--- a/helm-files.el
+++ b/helm-files.el
@@ -3936,22 +3936,24 @@ in `helm-find-files-persistent-action-if'."
 "Run open file externally without quitting helm."
   'open-file-externally 'helm-ff-persistent-open-file-externally)
 
-(defun helm-ff-prefix-filename (fname &optional file-or-symlinkp new-file)
-  "Add display property to FNAME.
-Display property presents a string maybe prefixed with [+] or [@].
-If FILE-OR-SYMLINKP is non-nil this means we assume FNAME is an
-existing filename or valid symlink and there is no need to test
-it.
-NEW-FILE when non-nil means FNAME is a non existing file and
-return FNAME with display property prefixed with [+]."
+(defun helm-ff-prefix-filename (disp fname &optional new-file)
+  "Return DISP maybe prefixed with a string or an icon.
+
+Arg FNAME is the real filename whereas DISP is the display part of candidate.
+
+Icons are used when `helm-ff-icon-mode' is enabled.
+
+When NEW-FILE is non nil, returns a string prefixed with
+[+] or [@] or a special icon, otherwise DISP is
+returned prefixed with its icon or unchanged."
   (let (prefix-new prefix-url)
-(cond (file-or-symlinkp fname)
-  ((or (string-match helm-ff-url-regexp fname)
-   (and helm--url-regexp
-(string-match helm--url-regexp fname)))
+(cond ((and new-file
+(or (string-match helm-ff-url-regexp disp)
+(and helm--url-regexp
+ (string-match helm--url-regexp disp
(setq prefix-url
  (if helm-ff-icon-mode
- (helm-acase (match-string 1 fname)
+ (helm-acase (match-string 1 disp)
("mailto:";
 (all-the-icons-octicon "mail"))
(t (all-the-icons-octicon "link-external")))
@@ -3959,18 +3961,19 @@ return FNAME with display property prefixed with [+]."
 " " 'display
 (propertize "[@]" 'face 'helm-ff-prefix
(add-text-properties 0 1 '(helm-url t) prefix-url)
-   (concat prefix-url " " fname))
+   (concat prefix-url " " disp))
   (new-file
(setq prefix-new
  (if helm-ff-icon-mode
- (if (string-match "/\\'" fname)
+ (if (string-match "/\\'" disp)
  (all-the-icons-material "create_new_folder")
(all-the-icons-material "note_add"))
(propertize
 " " 'display
 (propertize "[+]" 'face 'helm-ff-prefix
(add-text-properties 0 1 '(helm-new-file t) prefix-new)
-   (concat prefix-new " " fname)
+   (concat prefix-new " " disp))
+  (t (concat (helm-ff-get-icon disp fname) disp)
 
 (defun helm-ff-score-candidate-for-pattern (real disp pattern)
   (cond ((member real '("." "..")) 90)
@@ -4085,17 +4088,26 @@ If SKIP-BORING-CHECK is non nil don't filter boring 
files."
(helm-file-on-mounted-network-p helm-pattern)))
   (helm-acond (;; Dot directories . and ..
dot
-   (cons (propertize file 'face 'helm-ff-dotted-directory) 
file))
+   (cons (helm-ff-prefix-filename
+  (propertize file 'face 'helm-ff-dotted-directory)
+  file)
+ file))
   ;; Directories.
   ((get-text-property 1 'helm-ff-dir file)
-   (cons (propertize disp 'face 'helm-ff-directory) file))
+   (cons (helm-ff-prefix-filename
+  (propertize disp 'face 'helm-ff-directory)
+  file)
+ file))
   ;; Backup files.
   (backup
-   (cons (propertize disp 'face 'helm-ff-backup-file) 
file))
+   (cons (helm-ff-prefix-filename
+  (propertize disp 'face 'helm-ff-backup-file)
+  file)
+ file))
   ;; Executable files.
   ((get-text-property 1 'helm-ff-exe file)
(add-face-text-property 0 len 'helm-ff-executable t 
disp)
-  

[elpa] externals/jinx 6541afe26f: jinx-exclude-regexps: Ignore hyphens used as bullet points (Fix #87)

2023-07-02 Thread ELPA Syncer
branch: externals/jinx
commit 6541afe26fd1ce3f981052c2592d63bdfe54878d
Author: Daniel Mendler 
Commit: Daniel Mendler 

jinx-exclude-regexps: Ignore hyphens used as bullet points (Fix #87)
---
 jinx.el | 1 +
 1 file changed, 1 insertion(+)

diff --git a/jinx.el b/jinx.el
index 4604975a75..4c493be18c 100644
--- a/jinx.el
+++ b/jinx.el
@@ -148,6 +148,7 @@ checking."
 (defcustom jinx-exclude-regexps
   '((emacs-lisp-mode "Package-Requires:.*$")
 (t "[A-Z]+\\>" ;; Uppercase words
+   "-\\>"  ;; Hyphens used as bullet points
"\\w*?[0-9]\\w*\\>" ;; Words with numbers, hex codes
"[a-z]+://\\S-+";; URI
"?" ;; Email



[nongnu] elpa/geiser-stklos 364d922b39 3/4: Implement logging (STklos side only)

2023-07-02 Thread ELPA Syncer
branch: elpa/geiser-stklos
commit 364d922b392589d0e9915273bd1c7d9947e9e9e9
Author: Jeronimo Pellegrini 
Commit: Jeronimo Pellegrini 

Implement logging (STklos side only)

geiser-stklos-log-file can now be used to customize the name of the
log file used for the STklos process.

The Emacs side is still missing.
---
 geiser-stklos.el | 19 +++
 geiser.stk   | 15 ---
 2 files changed, 27 insertions(+), 7 deletions(-)

diff --git a/geiser-stklos.el b/geiser-stklos.el
index 5f8566f2d8..bc21528ac8 100644
--- a/geiser-stklos.el
+++ b/geiser-stklos.el
@@ -130,8 +130,10 @@ option."
 (geiser-custom--defcustom geiser-stklos-log-file
 ""
   "Name of the file where the STklos part of the system will log its
-actions. FOR GEISER-STKLOS DEVELOPMENT ONLY -- currently there is no
-effect for the common user."
+actions. Note that forms are sent from emacs to STklos, and then
+from STklos back to Emacs. This is the file where *only* the
+STklos process will show the forms it receives, and the answer it
+gives back to Emacs. Leave empty for no logging."
   :type 'string
   :group 'geiser-stklos)
 
@@ -362,11 +364,20 @@ Argument BINARY is a string containing the binary name."
   "Hook for startup.  The argument is ignored."
   (let ((geiser-log-verbose-p t))
 (compilation-setup t)
+
+;; If the user wants to log the forms that STklos receives, and the
+;; answer it gives back, we send to STklos the form
+;;
+;; (geiser:eval "GEISER" (geiser:set-log-file FILENAME))
+;;
+;; besides (newline), which we always send.
+;; This is *only* the STklos part of logging. The STklos process will
+;; log the forms received and sent back.
 (let ((c (if (zerop (length geiser-stklos-log-file))
  "(newline)"
- (concat "(begin (geiser:eval \"GEISER\" geiser:set-log-file "
+ (concat "(begin (geiser:eval \"GEISER\" (geiser:set-log-file 
\""
  geiser-stklos-log-file
- ") (newline))"
+ "\")) (newline))"
   (geiser-eval--send/wait c
 
 (defconst geiser-stklos-builtin-keywords
diff --git a/geiser.stk b/geiser.stk
index 84b6add19f..863b8639cc 100644
--- a/geiser.stk
+++ b/geiser.stk
@@ -32,10 +32,16 @@
   (when (string? name)
 (set! geiser-log-file (open-output-file name
 
+;; The variable geiser-log-file may be a port, but it may also
+;; be #f when no logging is going on, so this wrapper is used to
+;; flush it.
+(define (flush-when-port p)
+  (when (output-port? p) (flush-output-port p)))
+
 (define (geiser-format port . rest)
   (when (output-port? port)
 (apply format (cons port rest))
-(flush-output-port port)))
+(flush-when-port port)))
 
 ;; executes thunk, with all its output (standar and error) redirected
 ;; to a string.
@@ -88,7 +94,8 @@
  `((result ,@result)
(output . ,output
   (write out-form)
-  (geiser-format geiser-log-file "call-with-result response: ~s~%" 
out-form))
+  (geiser-format geiser-log-file "call-with-result response: ~s~%" 
out-form)
+  (flush-when-port geiser-log-file))
 
 (newline)))
 
@@ -112,7 +119,8 @@
 (define (geiser:eval module-name form . rest)
   (geiser-format geiser-log-file "_~%")
   (geiser-format geiser-log-file "geiser:eval form: ~s~%" form)
-
+  (flush-when-port geiser-log-file)
+  
   ;; All calls start at toplevel
   (let ((module (or (and (symbol? module-name )
 (find-module module-name))
@@ -124,6 +132,7 @@
(lambda () (eval form module)
   (let ((ret (call-with-result thunk)))
 (geiser-format geiser-log-file "geiser:eval return: ~s~%" ret)
+(flush-when-port geiser-log-file)
 ret
 
 



[nongnu] elpa/geiser-stklos updated (6ae96bfb96 -> 0e5dc47f07)

2023-07-02 Thread ELPA Syncer
elpasync pushed a change to branch elpa/geiser-stklos.

  from  6ae96bfb96 Fix STklos not autloading
   new  c108d2a921 Break docstrings at 80 characters
   new  d3caaf3e8e Add symbols to the highlited list
   new  364d922b39 Implement logging (STklos side only)
   new  0e5dc47f07 Add comment about logging being supported


Summary of changes:
 geiser-stklos.el | 45 ++---
 geiser.stk   | 15 ---
 2 files changed, 50 insertions(+), 10 deletions(-)



[nongnu] elpa/geiser-stklos 0e5dc47f07 4/4: Add comment about logging being supported

2023-07-02 Thread ELPA Syncer
branch: elpa/geiser-stklos
commit 0e5dc47f079d0652381441aee4e84d3c48da96f2
Author: Jeronimo Pellegrini 
Commit: Jeronimo Pellegrini 

Add comment about logging being supported
---
 geiser-stklos.el | 1 +
 1 file changed, 1 insertion(+)

diff --git a/geiser-stklos.el b/geiser-stklos.el
index bc21528ac8..359eac7685 100644
--- a/geiser-stklos.el
+++ b/geiser-stklos.el
@@ -43,6 +43,7 @@
 ;; * autodoc (signature of procedures and values of symbols are displayed in 
the minibuffer
 ;;   when the mouse hovers over their names)
 ;; * symbol documentation (docstrings for procedures, and values of variables)
+;; * logging (STklos side only)
 ;;
 ;; Unsupported Geiser features
 ;; ───



[nongnu] elpa/geiser-stklos c108d2a921 1/4: Break docstrings at 80 characters

2023-07-02 Thread ELPA Syncer
branch: elpa/geiser-stklos
commit c108d2a921fe61c544d15314e68564e4ddac27b1
Author: Jeronimo Pellegrini 
Commit: Jeronimo Pellegrini 

Break docstrings at 80 characters
---
 geiser-stklos.el | 6 --
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/geiser-stklos.el b/geiser-stklos.el
index 6839f3fff7..2e8914fdfd 100644
--- a/geiser-stklos.el
+++ b/geiser-stklos.el
@@ -213,7 +213,8 @@ Optional argument ARGS are the arguments to the procedure."
 
 (defconst geiser-stklos--module-re
   "(define-\\(module\\|library\\) +\\([^) ]+\\)"
-  "Regular expression used to try to guess which module the current file is 
associated to.")
+  "Regular expression used to try to guess which module the current
+file is associated to.")
 
 
 (defun geiser-stklos--find-close-par (&optional start-point)
@@ -384,7 +385,8 @@ Argument BINARY is a string containing the binary name."
 "These are symbols that we want to be highlighted in STklos code.")
 
 (defun geiser-stklos--keywords ()
-  "The symbols that are to be highlighted as keywords, besides the standard 
Scheme ones."
+  "The symbols that are to be highlighted as keywords, besides the
+standard Scheme ones."
   (append (geiser-syntax--simple-keywords geiser-stklos-extra-keywords)
   (geiser-syntax--simple-keywords geiser-stklos-builtin-keywords)))
 



[nongnu] elpa/geiser-stklos d3caaf3e8e 2/4: Add symbols to the highlited list

2023-07-02 Thread ELPA Syncer
branch: elpa/geiser-stklos
commit d3caaf3e8e9ca7789554f6579c08970af69a6c38
Author: Jeronimo Pellegrini 
Commit: Jeronimo Pellegrini 

Add symbols to the highlited list
---
 geiser-stklos.el | 19 ++-
 1 file changed, 18 insertions(+), 1 deletion(-)

diff --git a/geiser-stklos.el b/geiser-stklos.el
index 2e8914fdfd..5f8566f2d8 100644
--- a/geiser-stklos.el
+++ b/geiser-stklos.el
@@ -378,9 +378,26 @@ Argument BINARY is a string containing the binary name."
 "define-struct"
 "dotimes"
 "fluid-let"
+"include-file"
 "macro-expand"
+"match-case"
 "repeat"
+"require-extension"
+"require-feature"
+"require-for-syntax"
+"require-library"
 "tagbody"
+"until"
+"when-compile"
+"when-load-and-compile"
+"with-error-to-file"
+"with-error-to-port"
+"with-input-from-port"
+"with-input-from-string"
+"with-mutex"
+"with-output-to-port"
+"with-output-to-string"
+"while"
 "with-handler" )
 "These are symbols that we want to be highlighted in STklos code.")
 
@@ -416,7 +433,7 @@ standard Scheme ones."
   (unsupported'(callers callees)); doesn't seem to 
make any difference?
   )
 
-;; STklos files are .stk, and we may wat to open .scm files with STklos also:
+;; STklos files are .stk, and we may want to open .scm files with STklos also:
 ;;
 (geiser-implementation-extension 'stklos "scm")
 (geiser-implementation-extension 'stklos "stk")



[nongnu] branch scratch/evil deleted (was d3b7b6f5d4)

2023-07-02 Thread Stefan Monnier via
monnier pushed a change to branch scratch/evil.

   was  d3b7b6f5d4 Various code cleanups

This change permanently discards the following revisions:

  discards  d3b7b6f5d4 Various code cleanups



[nongnu] scratch/evil d366673c77 3/8: Prefer #' to quote function names

2023-07-02 Thread Stefan Monnier via
branch: scratch/evil
commit d366673c773d5482ce6b83c6d46aaf75058c73d3
Author: Stefan Monnier 
Commit: Stefan Monnier 

Prefer #' to quote function names
---
 evil-commands.el| 16 +--
 evil-common.el  | 10 +++
 evil-core.el|  8 +++---
 evil-ex.el  |  2 +-
 evil-integration.el |  2 +-
 evil-keybindings.el |  2 +-
 evil-search.el  |  4 +--
 evil-tests.el   | 58 
 evil-vars.el| 77 +
 9 files changed, 93 insertions(+), 86 deletions(-)

diff --git a/evil-commands.el b/evil-commands.el
index abac1aea57..0b28ceac34 100644
--- a/evil-commands.el
+++ b/evil-commands.el
@@ -3263,7 +3263,7 @@ not interfere with another."
   (if (null list)
   (user-error
"Enable one of the following modes for folding to work: %s"
-   (mapconcat 'symbol-name (mapcar 'caar evil-fold-list) ", "))
+   (mapconcat #'symbol-name (mapcar #'caar evil-fold-list) ", "))
 (let* ((modes (caar list)))
   (if (evil--mode-p modes)
   (let* ((actions (cdar list))
@@ -5175,9 +5175,9 @@ if the previous state was Emacs state."
   "No insert-state repeat info is recorded after executing in normal state.
 Restore the disabled repeat hooks on insert-state exit."
   (evil-repeat-stop)
-  (add-hook 'pre-command-hook 'evil-repeat-pre-hook)
-  (add-hook 'post-command-hook 'evil-repeat-post-hook)
-  (remove-hook 'evil-insert-state-exit-hook 'evil--restore-repeat-hooks))
+  (add-hook 'pre-command-hook #'evil-repeat-pre-hook)
+  (add-hook 'post-command-hook #'evil-repeat-post-hook)
+  (remove-hook 'evil-insert-state-exit-hook #'evil--restore-repeat-hooks))
 
 (defvar evil--execute-normal-return-state nil
   "The state to return to after executing in normal state.")
@@ -5216,9 +5216,9 @@ Restore the disabled repeat hooks on insert-state exit."
  (unless (memq evil-state '(replace insert))
(evil-change-state ',evil-state))
  (when (eq 'insert evil-state)
-   (remove-hook 'pre-command-hook 'evil-repeat-pre-hook)
-   (remove-hook 'post-command-hook 'evil-repeat-post-hook)
-   (add-hook 'evil-insert-state-exit-hook 'evil--restore-repeat-hooks))
+   (remove-hook 'pre-command-hook #'evil-repeat-pre-hook)
+   (remove-hook 'post-command-hook #'evil-repeat-post-hook)
+   (add-hook 'evil-insert-state-exit-hook 
#'evil--restore-repeat-hooks))
  (setq evil-execute-normal-keys nil))
 'post-command-hook)
   (setq evil-insert-count nil
@@ -5231,7 +5231,7 @@ Restore the disabled repeat hooks on insert-state exit."
 (defun evil-stop-execute-in-emacs-state ()
   (when (and (not (eq this-command #'evil-execute-in-emacs-state))
  (not (minibufferp)))
-(remove-hook 'post-command-hook 'evil-stop-execute-in-emacs-state)
+(remove-hook 'post-command-hook #'evil-stop-execute-in-emacs-state)
 (when (buffer-live-p evil-execute-in-emacs-state-buffer)
   (with-current-buffer evil-execute-in-emacs-state-buffer
 (if (and (eq evil-previous-state 'visual)
diff --git a/evil-common.el b/evil-common.el
index 3e4ce01519..1311ae366d 100644
--- a/evil-common.el
+++ b/evil-common.el
@@ -345,11 +345,11 @@ last, sorting in between."
,(when (and command doc-form)
   `(put ',command 'function-documentation ,doc-form))
;; set command properties for symbol or lambda function
-   (let ((func ',(if (and (null command) body)
- `(lambda ,args
-,interactive
-,@body)
-   command)))
+   (let ((func #',(if (and (null command) body)
+  `(lambda ,args
+ ,interactive
+ ,@body)
+command)))
  (apply #'evil-set-command-properties func ',keys)
  func
 
diff --git a/evil-core.el b/evil-core.el
index 546288e14c..8f7eba9002 100644
--- a/evil-core.el
+++ b/evil-core.el
@@ -126,12 +126,12 @@
 (evil-initialize-state)
 (add-hook 'input-method-activate-hook #'evil-activate-input-method t t)
 (add-hook 'input-method-deactivate-hook #'evil-deactivate-input-method 
t t)
-(add-hook 'activate-mark-hook 'evil-visual-activate-hook nil t)
+(add-hook 'activate-mark-hook #'evil-visual-activate-hook nil t)
 ;; FIXME: Add these hooks buffer-locally
-(add-hook 'pre-command-hook 'evil-repeat-pre-hook)
-(add-hook 'post-command-hook 'evil-repeat-post-hook))
+(add-hook 'pre-command-hook #'evil-repeat-pre-hook)
+(add-hook 'post-command-hook #'evil-repeat-post-hook))
 (evil-refresh-mode-line)
-(remove-hook 'activate-mark-hook 'evil-visual-activate-hook t)
+(remove-hook 'activate-mark-hook #'evil-visual-activate-hook t)
 (remove-hook 'input-method-activate-hook #'evil-activate-input-method t)
 (remove-h

[nongnu] branch scratch/evil created (now be5584efb1)

2023-07-02 Thread Stefan Monnier via
monnier pushed a change to branch scratch/evil.

at  be5584efb1 Misc minor changes

This branch includes the following new commits:

   new  141f483adb evil-pkg.el: Remove file
   new  335ff20ebf Better follow conventions for use of ' in docstrings
   new  d366673c77 Prefer #' to quote function names
   new  79ef3ad9f5 (evil-with-delay): New macro, extracted from `evil-delay`
   new  d7999e33f3 Use lexical-binding everywhere
   new  40a326753a Remove redundant `:group` args
   new  c0a6878a8f Replace uses of `defadvice` with `advice-add`
   new  be5584efb1 Misc minor changes




[nongnu] scratch/evil be5584efb1 8/8: Misc minor changes

2023-07-02 Thread Stefan Monnier via
branch: scratch/evil
commit be5584efb1b1af7729627c30d8449893ea04f494
Author: Stefan Monnier 
Commit: Stefan Monnier 

Misc minor changes

* evil-command-window.el (evil-command-window-draw-prefix):
Mark `ignored` as, well, ignored.
* README.md: Mention that `undo-fu` is also in NonGNU ELPA.
* evil-core (evil-get-auxiliary-keymap): Simplify `vconcat` to `vector`.
(evil-auxiliary-keymap-p): Unhide arg by moving it to its own line.
* evil-macros.el (evil-define-interactive-code): Move shared `setq func`
out of `cond`.  Move the insertion of quote around `func` to the `cond`
so the `quote` is not incorrectly added around lambda forms.
---
 README.md  |  2 +-
 evil-command-window.el |  2 +-
 evil-core.el   |  5 +++--
 evil-macros.el | 18 +-
 4 files changed, 14 insertions(+), 13 deletions(-)

diff --git a/README.md b/README.md
index 198b18317c..6473ba66f2 100644
--- a/README.md
+++ b/README.md
@@ -47,7 +47,7 @@ file.
   * 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)
+(available via MELPA and NonGNU ELPA)
 
 * For the motions `g;` `g,` and for the last-change-register `.`, Evil
   requires the [goto-chg.el](https://github.com/emacs-evil/goto-chg)
diff --git a/evil-command-window.el b/evil-command-window.el
index 21299a2dc0..566ee3a79e 100644
--- a/evil-command-window.el
+++ b/evil-command-window.el
@@ -164,7 +164,7 @@ function to execute."
   (push result evil-search-backward-history)))
   (evil-search result forward evil-regexp-search
 
-(defun evil-command-window-draw-prefix (&rest ignored)
+(defun evil-command-window-draw-prefix (&rest _ignored)
   "Display `evil-command-window-cmd-key' as a prefix to the current line.
 Parameters passed in through IGNORED are ignored."
   (let ((prefix (propertize evil-command-window-cmd-key
diff --git a/evil-core.el b/evil-core.el
index 4e50b1878f..ddab7de5c4 100644
--- a/evil-core.el
+++ b/evil-core.el
@@ -845,7 +845,7 @@ IGNORE-PARENT are non-nil then a new auxiliary
 keymap is created even if the parent of MAP has
 one already."
   (when state
-(let* ((key (vconcat (list (intern (format "%s-state" state)
+(let* ((key (vector (intern (format "%s-state" state
(parent-aux (when (and ignore-parent
   (keymap-parent map))
  (lookup-key (keymap-parent map) key)))
@@ -884,7 +884,8 @@ does not already exist."
   "Whether MAP is an auxiliary keymap."
   (and (keymapp map)
(string-match-p "Auxiliary keymap"
-   (or (keymap-prompt map) "")) t))
+   (or (keymap-prompt map) ""))
+   t))
 
 (defun evil-minor-mode-keymap-p (map)
   "Whether MAP is a minor-mode keymap."
diff --git a/evil-macros.el b/evil-macros.el
index a164fe6981..458a2119e2 100644
--- a/evil-macros.el
+++ b/evil-macros.el
@@ -763,19 +763,19 @@ via KEY-VALUE pairs. BODY should evaluate to a list of 
values.
 (while (keywordp (car-safe body))
   (setq properties
 (append properties (list (pop body) (pop body)
-(cond
- (args
-  (setq func `(lambda ,args
+(setq func (cond
+(args
+ `(lambda ,args
 ,@(when doc `(,doc))
-,@body)))
- ((> (length body) 1)
-  (setq func `(progn ,@body)))
- (t
-  (setq func (car body
+,@body))
+((> (length body) 1)
+ `'(progn ,@body))
+(t
+ `',(car body
 `(eval-and-compile
(let* ((code ,code)
   (entry (assoc code evil-interactive-alist))
-  (value (cons ',func ',properties)))
+  (value (cons ,func ',properties)))
  (if entry
  (setcdr entry value)
(push (cons code value) evil-interactive-alist))



[nongnu] scratch/evil c0a6878a8f 7/8: Replace uses of `defadvice` with `advice-add`

2023-07-02 Thread Stefan Monnier via
branch: scratch/evil
commit c0a6878a8f4727d223d5ca1ceba69f119a51d864
Author: Stefan Monnier 
Commit: Stefan Monnier 

Replace uses of `defadvice` with `advice-add`

This either requires a dependency on the `nadvice` package,
or bumping the minimum Emacs version to 24.4.  I went with
the `nadvice` package, but maybe bumping up to 24.4 would be better.

* evil.el: Require `nadvice`.

* evil-core.el (evil--advice-list): New var.
(evil-mode): Use it instead of `ad-dis/enable`.
(evil--advice-add): New function.
(set-window-buffer, select-window, toggle-input-method, use-global-map):
* evil-search.el (isearch-message-prefix, isearch-delete-char)
(isearch-lazy-highlight-search):
* evil-integration.el (keyboard-quit, wdired-change-to-dired-mode)
(show-paren-function, quail-show-key, describe-char, ace-jump-done):
Use `evail--advice-add` insyead of `defadvice`.
(preceding-sexp, pp-last-sexp): Remove old code for when `advice-add`
is not available.

* evil-repeat.el (evil--read-key-sequence-advice): Adapt to use in
`advice-add`.
(read-key-sequence, read-key-sequence-vector): Use `evail--advice-add`.

* evil-keybindings.el (elp-results): Use `evil--advice-add` and move outside
of `eval-after-load`.
---
 evil-core.el| 43 +--
 evil-integration.el | 85 +++--
 evil-keybindings.el |  6 ++--
 evil-repeat.el  |  8 ++---
 evil-search.el  | 18 +++-
 evil.el |  2 +-
 6 files changed, 80 insertions(+), 82 deletions(-)

diff --git a/evil-core.el b/evil-core.el
index 5db6326952..4e50b1878f 100644
--- a/evil-core.el
+++ b/evil-core.el
@@ -168,6 +168,14 @@ To enable Evil globally, do (evil-mode)."
 
 (defalias 'evil--fundamental-mode #'fundamental-mode)
 
+(defvar evil--advice-list nil)
+
+(defun evil--advice-add (&rest args)
+  "Like `advice-add' but only records them for later use.
+The pieces of advice are activated/deactivated by `evil-mode'."
+  (when evil-mode (apply #'advice-add args))
+  (push args evil--advice-list))
+
 ;;;###autoload (autoload 'evil-mode "evil" nil t)
 (define-globalized-minor-mode evil-mode
   evil-local-mode evil-initialize
@@ -181,13 +189,13 @@ To enable Evil globally, do (evil-mode)."
 (and (eval-when-compile (version< emacs-version "26.1"))
  (eq (default-value 'major-mode) 'fundamental-mode)
  (setq-default major-mode 'evil--fundamental-mode))
-(ad-enable-regexp "^evil")
-(ad-activate-regexp "^evil")
+(pcase-dolist (advice evil--advice-list)
+  (apply #'advice-add advice))
 (evil-esc-mode 1))
 (when (eq (default-value 'major-mode) 'evil--fundamental-mode)
   (setq-default major-mode 'fundamental-mode))
-(ad-disable-regexp "^evil")
-(ad-update-regexp "^evil")
+(pcase-dolist (`(,funname ,_where ,adfun) evil--advice-list)
+  (advice-remove funname adfun))
 (evil-esc-mode -1)))
 
 (defun evil-change-state (state &optional message)
@@ -338,18 +346,21 @@ then this function does nothing."
 ;; run. This is appropriate since many buffers are used for throwaway
 ;; purposes. Passing the buffer to `set-window-buffer' indicates
 ;; otherwise, though, so advise this function to initialize Evil.
-(defadvice set-window-buffer (before evil)
+(evil--advice-add 'set-window-buffer :before #'evil--swb-initialize)
+(defun evil--swb-initialize (_window buffer &rest _)
   "Initialize Evil in the displayed buffer."
   (when evil-mode
-(when (get-buffer (ad-get-arg 1))
-  (with-current-buffer (ad-get-arg 1)
+(when (get-buffer buffer)
+  (with-current-buffer buffer
 (unless evil-local-mode
   (save-match-data (evil-initialize)))
 
 ;; Refresh cursor color.
 ;; Cursor color can only be set for each frame but not for each buffer.
+;; FIXME: Shouldn't this belong in `evil-(local-)mode'?
 (add-hook 'window-configuration-change-hook #'evil-refresh-cursor)
-(defadvice select-window (after evil activate)
+(evil--advice-add 'select-window :after #'evil--sw-refresh-cursor)
+(defun evil--sw-refresh-cursor (&rest _)
   (evil-refresh-cursor))
 
 (defun evil-generate-mode-line-tag (&optional state)
@@ -432,16 +443,17 @@ This allows input methods to be used in normal-state."
  (add-hook 'input-method-activate-hook #'evil-activate-input-method nil t)
  (add-hook 'input-method-deactivate-hook #'evil-deactivate-input-method 
nil t)))
 
-(defadvice toggle-input-method (around evil)
+(evil--advice-add 'toggle-input-method :around #'evil--refresh-inpput-method)
+(defun evil--refresh-inpput-method (orig-fun &rest args)
   "Refresh `evil-input-method'."
   (cond
((not evil-local-mode)
-ad-do-it)
+(apply orig-fun args))
((evil-state-property evil-state :input-method)
-ad-do-it)
+(apply orig-fun args))
(t
 (let ((current-input-method evil-input-method))
-  ad-do-i

[nongnu] scratch/evil 335ff20ebf 2/8: Better follow conventions for use of ' in docstrings

2023-07-02 Thread Stefan Monnier via
branch: scratch/evil
commit 335ff20ebf53491a904325df02e864a396f6d31d
Author: Stefan Monnier 
Commit: Stefan Monnier 

Better follow conventions for use of ' in docstrings

This fixes some incorrect uses and eliminates some warnings but many
warnings remain about it.
---
 evil-commands.el |  9 -
 evil-common.el   | 30 +++---
 evil-core.el | 42 +-
 evil-ex.el   | 14 +++---
 evil-macros.el   |  2 +-
 evil-repeat.el   |  3 ++-
 evil-search.el   | 22 +++---
 evil-vars.el |  6 +++---
 8 files changed, 64 insertions(+), 64 deletions(-)

diff --git a/evil-commands.el b/evil-commands.el
index 68e9663e4b..abac1aea57 100644
--- a/evil-commands.el
+++ b/evil-commands.el
@@ -307,8 +307,7 @@ If called after a change operator, i.e. cw or cW,
 then both behave like ce or cE.
 
 If point is at the end of the buffer and cannot be moved signal
-'end-of-buffer is raised.
-"
+`end-of-buffer' is raised."
   :type exclusive
   (let ((thing (if bigword 'evil-WORD 'evil-word))
 (orig (point))
@@ -591,7 +590,7 @@ and jump to the corresponding one."
   (evil-next-flyspell-error (- (or count 1
 
 (evil-define-motion evil-previous-open-paren (count)
-  "Go to [count] previous unmatched '('."
+  "Go to [count] previous unmatched \"(\"."
   :type exclusive
   (evil-up-paren ?\( ?\) (- (or count 1
 
@@ -3079,7 +3078,7 @@ Calls `evil-complete-previous-line-func'."
 
 (defun evil-repeat-search (flag)
   "Called to record a search command.
-FLAG is either 'pre or 'post if the function is called before resp.
+FLAG is either `pre' or `post' if the function is called before resp.
 after executing the command."
   (cond
((and (evil-operator-state-p) (eq flag 'pre))
@@ -3890,7 +3889,7 @@ Change to `%s'? "
 
 (defun evil-repeat-ex-search (flag)
   "Called to record a search command.
-FLAG is either 'pre or 'post if the function is called before
+FLAG is either `pre' or `post' if the function is called before
 resp.  after executing the command."
   (cond
((and (evil-operator-state-p) (eq flag 'pre))
diff --git a/evil-common.el b/evil-common.el
index 49a5456d9c..3e4ce01519 100644
--- a/evil-common.el
+++ b/evil-common.el
@@ -123,7 +123,7 @@ otherwise add at the end of the list."
   "Delete by side-effect all items satisfying PREDICATE in LIST.
 Stop when reaching POINTER.  If the first item satisfies PREDICATE,
 there is no way to remove it by side-effect; therefore, write
-\(setq foo (evil-filter-list 'predicate foo)) to be sure of
+\(setq foo (evil-filter-list #\\='predicate foo)) to be sure of
 changing the value of `foo'."
   (let ((tail list) elt head)
 (while (and tail (not (eq tail pointer)))
@@ -1086,9 +1086,9 @@ immediately quits.
 
 (defun evil-signal-at-bob-or-eob (&optional count)
   "Signal error if `point' is at boundaries.
-If `point' is at bob and COUNT is negative this function signal
-`beginning-of-buffer'. If `point' is at eob and COUNT is positive
-this function singal `end-of-buffer'. This function should be used
+If `point' is at bob and COUNT is negative this function signals
+`beginning-of-buffer'.  If `point' is at eob and COUNT is positive
+this function signals `end-of-buffer'.  This function should be used
 in motions. COUNT defaults to 1."
   (setq count (or count 1))
   (cond
@@ -2745,7 +2745,7 @@ list of command properties as passed to 
`evil-define-command'."
 
 (defun evil-set-type (object type)
   "Set the type of OBJECT to TYPE.
-For example, (evil-set-type 'next-line 'line)
+For example, (evil-set-type \\='next-line \\='line)
 will make `line' the type of the `next-line' command."
   (cond
((overlayp object)
@@ -3087,10 +3087,10 @@ linewise, otherwise it is character wise."
 OP and CL are pairs of buffer positions for the opening and
 closing delimiter of a range. SELECTION-TYPE is the desired type
 of selection.  It is a symbol that determines which parts of the
-block are selected.  If it is 'inclusive or t the returned range
-is \(cons (car OP) (cdr CL)). If it is 'exclusive or nil the
+block are selected.  If it is `inclusive' or t the returned range
+is \(cons (car OP) (cdr CL)). If it is `exclusive' or nil the
 returned range is (cons (cdr OP) (car CL)).  If it is
-'exclusive-line the returned range will skip whitespace at the
+`exclusive-line' the returned range will skip whitespace at the
 end of the line of OP and at the beginning of the line of CL."
   (cond
((memq selection-type '(inclusive t)) (cons (car op) (cdr cl)))
@@ -3124,9 +3124,9 @@ delimited object must be given by THING-up function (see
 `evil-up-block').
 
 SELECTION-TYPE is symbol that determines which parts of the block
-are selected.  If it is 'inclusive or t OPEN and CLOSE are
-included in the range. If it is 'exclusive or nil the delimiters
-are not contained. If it is 'exclusive-line the delimiters are
+are selected.  If it is `inclusive' or t OPEN and CLOSE are
+included in t

[nongnu] scratch/evil 141f483adb 1/8: evil-pkg.el: Remove file

2023-07-02 Thread Stefan Monnier via
branch: scratch/evil
commit 141f483adb9c5d63353e7de2357c54b81b0f3f15
Author: Stefan Monnier 
Commit: Stefan Monnier 

evil-pkg.el: Remove file

This file is auto-generated from headers in `evil.el` anyway.
* evil.el: Synchronize metadata with what was in `evil-pkg.el`.
---
 evil-pkg.el | 7 ---
 evil.el | 2 +-
 2 files changed, 1 insertion(+), 8 deletions(-)

diff --git a/evil-pkg.el b/evil-pkg.el
deleted file mode 100644
index 0ab78cb335..00
--- a/evil-pkg.el
+++ /dev/null
@@ -1,7 +0,0 @@
-(define-package
-  "evil"
-  "1.15.0"
-  "Extensible Vi layer for Emacs."
-  '((emacs "24.1")
-(goto-chg "1.6")
-(cl-lib "0.5")))
diff --git a/evil.el b/evil.el
index dc13a828c0..00e7d7ce9c 100644
--- a/evil.el
+++ b/evil.el
@@ -1,4 +1,4 @@
-;;; evil.el --- extensible vi layer
+;;; evil.el --- Extensible Vi layer for Emacs
 
 ;; The following list of authors was kept up to date until the beginning of
 ;; 2017, when evil moved under new maintainers. For authors since then, please



[nongnu] scratch/evil 40a326753a 6/8: Remove redundant `:group` args

2023-07-02 Thread Stefan Monnier via
branch: scratch/evil
commit 40a326753abc1a41196d571d9d4b2d3b01d2ff8b
Author: Stefan Monnier 
Commit: Stefan Monnier 

Remove redundant `:group` args

In the absence of `:group`, `defcustom` and `defface` default to
the group that was last defined in the same file.

* evil-digraphs.el (evil-digraphs-table-user):
* evil-jumps.el: Remove redundant `:group` args.
---
 evil-digraphs.el |  3 +--
 evil-jumps.el| 15 +--
 2 files changed, 6 insertions(+), 12 deletions(-)

diff --git a/evil-digraphs.el b/evil-digraphs.el
index 7344bd9d00..180a57626b 100644
--- a/evil-digraphs.el
+++ b/evil-digraphs.el
@@ -42,8 +42,7 @@ where the digraph is a list of two characters.
 See also `evil-digraphs-table'."
   :type '(alist :key-type (list character character)
 :value-type character)
-  :require 'evil-digraphs
-  :group 'evil-digraphs)
+  :require 'evil-digraphs)
 
 (defconst evil-digraphs-table
   '(((?N ?U) . ?\x00)
diff --git a/evil-jumps.el b/evil-jumps.el
index 93bf4cbcb6..2fadb8b205 100644
--- a/evil-jumps.el
+++ b/evil-jumps.el
@@ -38,28 +38,23 @@
 (defcustom evil-jumps-cross-buffers t
   "When non-nil, the jump commands can cross borders between buffers.
 Otherwise the jump commands act only within the current buffer."
-  :type 'boolean
-  :group 'evil-jumps)
+  :type 'boolean)
 
 (defcustom evil-jumps-max-length 100
   "The maximum number of jumps to keep track of."
-  :type 'integer
-  :group 'evil-jumps)
+  :type 'integer)
 
 (defcustom evil-jumps-pre-jump-hook nil
   "Hooks to run just before jumping to a location in the jump list."
-  :type 'hook
-  :group 'evil-jumps)
+  :type 'hook)
 
 (defcustom evil-jumps-post-jump-hook nil
   "Hooks to run just after jumping to a location in the jump list."
-  :type 'hook
-  :group 'evil-jumps)
+  :type 'hook)
 
 (defcustom evil-jumps-ignored-file-patterns '("COMMIT_EDITMSG$" "TAGS$")
   "List of regexps to exclude file path from inclusion in the jump list."
-  :type '(repeat string)
-  :group 'evil-jumps)
+  :type '(repeat string))
 
 ;;
 



[nongnu] scratch/evil d7999e33f3 5/8: Use lexical-binding everywhere

2023-07-02 Thread Stefan Monnier via
branch: scratch/evil
commit d7999e33f3d4a2368111819d2983a203d0f3aa9a
Author: Stefan Monnier 
Commit: Stefan Monnier 

Use lexical-binding everywhere

Most of the code already used lexical-binding, but there were
still a few of remnant of use of the old dynbound dialect.

* evil-tests.el: Activate `lexical-binding`.
(evil-test-change-state): Initialize the local vars immediately rather
than as a separate step.  Remove unused vars `keymap` and `local-keymap`.
(evil-test-auxiliary-maps): Rename local var to `evil--map` and declare
it dynbound since we need `evil-define-key` to have access to it.
(evil-test-exclusive-type): Remove unused var `third`.
(evil-test-text-object): Mark unused var `type`.
(evil-with-both-search-modules): Move before first use.
(evil-test-properties): Rename local var to `evil--alist` and declare
it dynbound since we need `evil-put-property` to have access to it.

* evil.el: Activate `lexical-binding`.

* evil-ex.el (evil-ex-execute, evil-ex-update, evil-ex-repeat):
* evil-types.el (""):
* evil-common.el (evil--eval-expr):
* evil-commands.el (evil-ex-global): Tell `eval` to use the lexbind
dialect of ELisp.
---
 evil-commands.el |  2 +-
 evil-common.el   |  2 +-
 evil-ex.el   | 11 
 evil-tests.el| 83 +---
 evil-types.el|  2 +-
 evil.el  |  2 +-
 6 files changed, 53 insertions(+), 49 deletions(-)

diff --git a/evil-commands.el b/evil-commands.el
index 347ba5c939..2dd09b47d2 100644
--- a/evil-commands.el
+++ b/evil-commands.el
@@ -4334,7 +4334,7 @@ Use `evil-flush-lines' if INVERT is nil, or 
`evil-keep-lines' if not."
 (setq evil--ex-global-active-p t)
 (dolist (marker markers)
   (goto-char marker)
-  (eval command-form)))
+  (eval command-form t)))
 (progn
   (setq evil--ex-global-active-p nil)
   ;; ensure that all markers are deleted afterwards,
diff --git a/evil-common.el b/evil-common.el
index 969d5432a8..a09065c99c 100644
--- a/evil-common.el
+++ b/evil-common.el
@@ -1949,7 +1949,7 @@ If INPUT starts with a number, +, -, or . use `calc-eval' 
instead."
  (result (if calcable-p
  (let ((calc-multiplication-has-precedence nil))
(calc-eval input))
-   (eval (car (read-from-string input))
+   (eval (car (read-from-string input)) t
 (cond
  ((stringp result) result)
  ((or (numberp result) (symbolp result))
diff --git a/evil-ex.el b/evil-ex.el
index 5e498e0b4b..979fceed80 100644
--- a/evil-ex.el
+++ b/evil-ex.el
@@ -396,7 +396,7 @@ is appended to the line."
   (evil-ex-update nil nil nil result)
   ;; execute command
   (unless (zerop (length result))
-(eval (or evil-ex-expression (user-error "Ex: syntax error")
+(eval (or evil-ex-expression (user-error "Ex: syntax error")) t)))
 
 (defun evil-ex-delete-backward-char ()
   "Close the minibuffer if it is empty.
@@ -477,9 +477,9 @@ in case of incomplete or unknown commands."
   (with-current-buffer evil-ex-current-buffer
 (setq expr (evil-ex-parse string))
 (when (eq (car expr) #'evil-ex-call-command)
-  (setq count (eval (nth 1 expr))
-cmd (eval (nth 2 expr))
-arg (eval (nth 3 expr))
+  (setq count (eval (nth 1 expr) t)
+cmd (eval (nth 2 expr) t)
+arg (eval (nth 3 expr) t)
 range (cond
((evil-range-p count) count)
((numberp count) (evil-ex-range count count)))
@@ -845,7 +845,8 @@ This function interprets special file names like # and %."
 (unless (eq binding #'evil-ex-repeat)
   (setq hist nil)
   (eval (or evil-ex-expression
-(user-error "Ex: syntax error"))
+(user-error "Ex: syntax error"))
+t
 
 (defun evil-ex-call-command (range command argument)
   "Execute the given command COMMAND."
diff --git a/evil-tests.el b/evil-tests.el
index d9311a59d9..455f7470c3 100644
--- a/evil-tests.el
+++ b/evil-tests.el
@@ -1,4 +1,4 @@
-;; evil-tests.el --- unit tests for Evil -*- coding: utf-8 -*-
+;; evil-tests.el --- unit tests for Evil -*- coding: utf-8; lexical-binding: 
t; -*-
 
 ;; Author: Vegard Øye 
 ;; Maintainer: Vegard Øye 
@@ -200,13 +200,12 @@ with `M-x evil-tests-run'"))
 
 (defun evil-test-change-state (state)
   "Change state to STATE and check keymaps"
-  (let (mode keymap local-mode local-keymap tag)
-(evil-change-state state)
-(setq mode (evil-state-property state :mode)
-  keymap (evil-state-property state :keymap t)
-  local-mode (evil-state-property state :local)
-  local-keymap (evil-state-property state :local-keymap 

[nongnu] scratch/evil 79ef3ad9f5 4/8: (evil-with-delay): New macro, extracted from `evil-delay`

2023-07-02 Thread Stefan Monnier via
branch: scratch/evil
commit 79ef3ad9f5e9f8024477929ebd0a023069ae893c
Author: Stefan Monnier 
Commit: Stefan Monnier 

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

Save some kitten by using a macro instead of using `eval`.
This also exposes more code to the compiler, so should result in
more efficient code and potentially better compiler warnings.

* evil-common.el (evil-unquote): Delete unused function.
(evil--with-delay): New function, extracted from `evil-delay`.
(evil-with-delay): New macro, extracted from `evil-delay`.
(evil-delay): Redefine using `evil-with-delay` and declare obsolete.

* evil-states.el (evil-visual-activate-hook):
* evil-core.el (evil-define-key):
* evil-commands.el (evil-execute-in-normal-state): Use `evil-with-delay`.
---
 evil-commands.el | 68 +---
 evil-common.el   | 48 ++-
 evil-core.el | 24 +++-
 evil-states.el   | 21 +
 4 files changed, 86 insertions(+), 75 deletions(-)

diff --git a/evil-commands.el b/evil-commands.el
index 0b28ceac34..347ba5c939 100644
--- a/evil-commands.el
+++ b/evil-commands.el
@@ -5188,39 +5188,41 @@ Restore the disabled repeat hooks on insert-state exit."
 (defun evil-execute-in-normal-state ()
   "Execute the next command in Normal state."
   (interactive)
-  (evil-delay '(not (memq this-command
-  '(nil
-evil-execute-in-normal-state
-evil-replace-state
-evil-use-register
-digit-argument
-negative-argument
-universal-argument
-universal-argument-minus
-universal-argument-more
-universal-argument-other-key)))
-  `(with-current-buffer ,(current-buffer)
- ;; If cursor was after EOL before CTRL-O and is now at EOL,
- ;; put it after EOL.
- (and (or (when evil--execute-normal-eol-pos
-(= (1+ (point)) (save-excursion
-  (goto-char evil--execute-normal-eol-pos)
-  (set-marker evil--execute-normal-eol-pos 
nil)
-  (line-end-position
-  (and (eq (or goal-column temporary-goal-column) 
most-positive-fixnum)
-   (memq this-command '(next-line previous-line
-  (not (eolp))
-  (not (memq this-command
- '(evil-insert evil-beginning-of-line 
evil-first-non-blank)))
-  (forward-char))
- (unless (memq evil-state '(replace insert))
-   (evil-change-state ',evil-state))
- (when (eq 'insert evil-state)
-   (remove-hook 'pre-command-hook #'evil-repeat-pre-hook)
-   (remove-hook 'post-command-hook #'evil-repeat-post-hook)
-   (add-hook 'evil-insert-state-exit-hook 
#'evil--restore-repeat-hooks))
- (setq evil-execute-normal-keys nil))
-'post-command-hook)
+  (let ((buf (current-buffer))
+(estate evil-state))
+(evil-with-delay (not (memq this-command
+'(nil
+  evil-execute-in-normal-state
+  evil-replace-state
+  evil-use-register
+  digit-argument
+  negative-argument
+  universal-argument
+  universal-argument-minus
+  universal-argument-more
+  universal-argument-other-key)))
+post-command-hook
+  (with-current-buffer buf
+;; If cursor was after EOL before CTRL-O and is now at EOL,
+;; put it after EOL.
+(and (or (when evil--execute-normal-eol-pos
+   (= (1+ (point)) (save-excursion
+ (goto-char evil--execute-normal-eol-pos)
+ (set-marker evil--execute-normal-eol-pos 
nil)
+ (line-end-position
+ (and (eq (or goal-column temporary-goal-column) 
most-positive-fixnum)
+  (memq this-command '(next-line previous-line
+ (not (eolp))
+ (not (memq this-command
+'(evil-insert evil-beginning-of-line 
evil-first-non-blank)))
+ (forward-char))
+(unless (memq evil-state '(replace insert))
+  (evil-change-state estate))
+(when (eq 'insert evil-state)
+  (remove-hook 'pre-command-hook #'evil-repeat-pre-hook)
+  (remove-hook 'post-command-hook #'evil-repeat-post-hook)
+  (add-hook '

[elpa] externals/company 4bcef32d7f 1/2: Fix byte-compiler warning

2023-07-02 Thread ELPA Syncer
branch: externals/company
commit 4bcef32d7f0b69a6f02627707f7599ab9340c012
Author: YugaEgo 
Commit: YugaEgo 

Fix byte-compiler warning
---
 test/frontends-tests.el | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/test/frontends-tests.el b/test/frontends-tests.el
index a824dbd903..718d4d361a 100644
--- a/test/frontends-tests.el
+++ b/test/frontends-tests.el
@@ -486,7 +486,7 @@
  "-*-foobar zz"
 
 (ert-deftest company-modify-line-with-invisible-prop ()
-  (let ((str "-*-foobar")
+  (let ((str (copy-sequence "-*-foobar"))
 (buffer-invisibility-spec '((outline . t) t)))
 (put-text-property 1 2 'invisible 'foo str)
 (should (equal



[elpa] externals/company b2df4b680a 2/2: Merge pull request #1391 from yugaego/fix-compilation

2023-07-02 Thread ELPA Syncer
branch: externals/company
commit b2df4b680aacc4534d60b79c871d0e4c37137d41
Merge: 23f44eba28 4bcef32d7f
Author: Dmitry Gutov 
Commit: GitHub 

Merge pull request #1391 from yugaego/fix-compilation

Fix byte-compiler warning
---
 test/frontends-tests.el | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/test/frontends-tests.el b/test/frontends-tests.el
index a824dbd903..718d4d361a 100644
--- a/test/frontends-tests.el
+++ b/test/frontends-tests.el
@@ -486,7 +486,7 @@
  "-*-foobar zz"
 
 (ert-deftest company-modify-line-with-invisible-prop ()
-  (let ((str "-*-foobar")
+  (let ((str (copy-sequence "-*-foobar"))
 (buffer-invisibility-spec '((outline . t) t)))
 (put-text-property 1 2 'invisible 'foo str)
 (should (equal



[nongnu] branch scratch/evil deleted (was be5584efb1)

2023-07-02 Thread Stefan Monnier via
monnier pushed a change to branch scratch/evil.

   was  be5584efb1 Misc minor changes

This change permanently discards the following revisions:

  discards  be5584efb1 Misc minor changes
  discards  c0a6878a8f Replace uses of `defadvice` with `advice-add`
  discards  40a326753a Remove redundant `:group` args
  discards  d7999e33f3 Use lexical-binding everywhere
  discards  79ef3ad9f5 (evil-with-delay): New macro, extracted from `evil-delay`
  discards  d366673c77 Prefer #' to quote function names
  discards  335ff20ebf Better follow conventions for use of ' in docstrings
  discards  141f483adb evil-pkg.el: Remove file



[nongnu] scratch/evil 0a03b8d2ad 6/8: Remove redundant `:group` args

2023-07-02 Thread Stefan Monnier via
branch: scratch/evil
commit 0a03b8d2ad65ea0f9c422d635474b4290b78b284
Author: Stefan Monnier 
Commit: Stefan Monnier 

Remove redundant `:group` args

In the absence of `:group`, `defcustom` and `defface` default to
the group that was last defined in the same file.

* evil-digraphs.el (evil-digraphs-table-user):
* evil-jumps.el: Remove redundant `:group` args.
---
 evil-digraphs.el |  3 +--
 evil-jumps.el| 15 +--
 2 files changed, 6 insertions(+), 12 deletions(-)

diff --git a/evil-digraphs.el b/evil-digraphs.el
index 7344bd9d00..180a57626b 100644
--- a/evil-digraphs.el
+++ b/evil-digraphs.el
@@ -42,8 +42,7 @@ where the digraph is a list of two characters.
 See also `evil-digraphs-table'."
   :type '(alist :key-type (list character character)
 :value-type character)
-  :require 'evil-digraphs
-  :group 'evil-digraphs)
+  :require 'evil-digraphs)
 
 (defconst evil-digraphs-table
   '(((?N ?U) . ?\x00)
diff --git a/evil-jumps.el b/evil-jumps.el
index 93bf4cbcb6..2fadb8b205 100644
--- a/evil-jumps.el
+++ b/evil-jumps.el
@@ -38,28 +38,23 @@
 (defcustom evil-jumps-cross-buffers t
   "When non-nil, the jump commands can cross borders between buffers.
 Otherwise the jump commands act only within the current buffer."
-  :type 'boolean
-  :group 'evil-jumps)
+  :type 'boolean)
 
 (defcustom evil-jumps-max-length 100
   "The maximum number of jumps to keep track of."
-  :type 'integer
-  :group 'evil-jumps)
+  :type 'integer)
 
 (defcustom evil-jumps-pre-jump-hook nil
   "Hooks to run just before jumping to a location in the jump list."
-  :type 'hook
-  :group 'evil-jumps)
+  :type 'hook)
 
 (defcustom evil-jumps-post-jump-hook nil
   "Hooks to run just after jumping to a location in the jump list."
-  :type 'hook
-  :group 'evil-jumps)
+  :type 'hook)
 
 (defcustom evil-jumps-ignored-file-patterns '("COMMIT_EDITMSG$" "TAGS$")
   "List of regexps to exclude file path from inclusion in the jump list."
-  :type '(repeat string)
-  :group 'evil-jumps)
+  :type '(repeat string))
 
 ;;
 



[nongnu] scratch/evil 9456d95bef 3/8: Prefer #' to quote function names

2023-07-02 Thread Stefan Monnier via
branch: scratch/evil
commit 9456d95befc25b13370522bfcc4131b597b005b4
Author: Stefan Monnier 
Commit: Stefan Monnier 

Prefer #' to quote function names
---
 evil-commands.el| 16 +-
 evil-common.el  | 10 +++
 evil-core.el|  8 ++---
 evil-ex.el  |  2 +-
 evil-integration.el |  2 +-
 evil-keybindings.el |  2 +-
 evil-search.el  |  4 +--
 evil-tests.el   | 58 ++--
 evil-vars.el| 85 +
 9 files changed, 97 insertions(+), 90 deletions(-)

diff --git a/evil-commands.el b/evil-commands.el
index abac1aea57..0b28ceac34 100644
--- a/evil-commands.el
+++ b/evil-commands.el
@@ -3263,7 +3263,7 @@ not interfere with another."
   (if (null list)
   (user-error
"Enable one of the following modes for folding to work: %s"
-   (mapconcat 'symbol-name (mapcar 'caar evil-fold-list) ", "))
+   (mapconcat #'symbol-name (mapcar #'caar evil-fold-list) ", "))
 (let* ((modes (caar list)))
   (if (evil--mode-p modes)
   (let* ((actions (cdar list))
@@ -5175,9 +5175,9 @@ if the previous state was Emacs state."
   "No insert-state repeat info is recorded after executing in normal state.
 Restore the disabled repeat hooks on insert-state exit."
   (evil-repeat-stop)
-  (add-hook 'pre-command-hook 'evil-repeat-pre-hook)
-  (add-hook 'post-command-hook 'evil-repeat-post-hook)
-  (remove-hook 'evil-insert-state-exit-hook 'evil--restore-repeat-hooks))
+  (add-hook 'pre-command-hook #'evil-repeat-pre-hook)
+  (add-hook 'post-command-hook #'evil-repeat-post-hook)
+  (remove-hook 'evil-insert-state-exit-hook #'evil--restore-repeat-hooks))
 
 (defvar evil--execute-normal-return-state nil
   "The state to return to after executing in normal state.")
@@ -5216,9 +5216,9 @@ Restore the disabled repeat hooks on insert-state exit."
  (unless (memq evil-state '(replace insert))
(evil-change-state ',evil-state))
  (when (eq 'insert evil-state)
-   (remove-hook 'pre-command-hook 'evil-repeat-pre-hook)
-   (remove-hook 'post-command-hook 'evil-repeat-post-hook)
-   (add-hook 'evil-insert-state-exit-hook 'evil--restore-repeat-hooks))
+   (remove-hook 'pre-command-hook #'evil-repeat-pre-hook)
+   (remove-hook 'post-command-hook #'evil-repeat-post-hook)
+   (add-hook 'evil-insert-state-exit-hook 
#'evil--restore-repeat-hooks))
  (setq evil-execute-normal-keys nil))
 'post-command-hook)
   (setq evil-insert-count nil
@@ -5231,7 +5231,7 @@ Restore the disabled repeat hooks on insert-state exit."
 (defun evil-stop-execute-in-emacs-state ()
   (when (and (not (eq this-command #'evil-execute-in-emacs-state))
  (not (minibufferp)))
-(remove-hook 'post-command-hook 'evil-stop-execute-in-emacs-state)
+(remove-hook 'post-command-hook #'evil-stop-execute-in-emacs-state)
 (when (buffer-live-p evil-execute-in-emacs-state-buffer)
   (with-current-buffer evil-execute-in-emacs-state-buffer
 (if (and (eq evil-previous-state 'visual)
diff --git a/evil-common.el b/evil-common.el
index 3e4ce01519..1311ae366d 100644
--- a/evil-common.el
+++ b/evil-common.el
@@ -345,11 +345,11 @@ last, sorting in between."
,(when (and command doc-form)
   `(put ',command 'function-documentation ,doc-form))
;; set command properties for symbol or lambda function
-   (let ((func ',(if (and (null command) body)
- `(lambda ,args
-,interactive
-,@body)
-   command)))
+   (let ((func #',(if (and (null command) body)
+  `(lambda ,args
+ ,interactive
+ ,@body)
+command)))
  (apply #'evil-set-command-properties func ',keys)
  func
 
diff --git a/evil-core.el b/evil-core.el
index 546288e14c..8f7eba9002 100644
--- a/evil-core.el
+++ b/evil-core.el
@@ -126,12 +126,12 @@
 (evil-initialize-state)
 (add-hook 'input-method-activate-hook #'evil-activate-input-method t t)
 (add-hook 'input-method-deactivate-hook #'evil-deactivate-input-method 
t t)
-(add-hook 'activate-mark-hook 'evil-visual-activate-hook nil t)
+(add-hook 'activate-mark-hook #'evil-visual-activate-hook nil t)
 ;; FIXME: Add these hooks buffer-locally
-(add-hook 'pre-command-hook 'evil-repeat-pre-hook)
-(add-hook 'post-command-hook 'evil-repeat-post-hook))
+(add-hook 'pre-command-hook #'evil-repeat-pre-hook)
+(add-hook 'post-command-hook #'evil-repeat-post-hook))
 (evil-refresh-mode-line)
-(remove-hook 'activate-mark-hook 'evil-visual-activate-hook t)
+(remove-hook 'activate-mark-hook #'evil-visual-activate-hook t)
 (remove-hook 'input-method-activate-hook #'evil-activate-input-method t)
 (remove-hook 'i

[nongnu] scratch/evil 49ba6e6fc5 5/8: Use lexical-binding everywhere

2023-07-02 Thread Stefan Monnier via
branch: scratch/evil
commit 49ba6e6fc5b9fb545b32fe48ae23f0179c57e75f
Author: Stefan Monnier 
Commit: Stefan Monnier 

Use lexical-binding everywhere

Most of the code already used lexical-binding, but there were
still a few of remnant of use of the old dynbound dialect.

* evil-tests.el: Activate `lexical-binding`.
(evil-test-change-state): Initialize the local vars immediately rather
than as a separate step.  Remove unused vars `keymap` and `local-keymap`.
(evil-test-auxiliary-maps): Rename local var to `evil--map` and declare
it dynbound since we need `evil-define-key` to have access to it.
(evil-test-exclusive-type): Remove unused var `third`.
(evil-test-text-object): Mark unused var `type`.
(evil-with-both-search-modules): Move before first use.
(evil-test-properties): Rename local var to `evil--alist` and declare
it dynbound since we need `evil-put-property` to have access to it.

* evil.el: Activate `lexical-binding`.

* evil-ex.el (evil-ex-execute, evil-ex-update, evil-ex-repeat):
* evil-types.el (""):
* evil-common.el (evil--eval-expr):
* evil-commands.el (evil-ex-global): Tell `eval` to use the lexbind
dialect of ELisp.
---
 evil-commands.el |  2 +-
 evil-common.el   |  2 +-
 evil-ex.el   | 11 
 evil-tests.el| 83 +---
 evil-types.el|  2 +-
 evil.el  |  2 +-
 6 files changed, 53 insertions(+), 49 deletions(-)

diff --git a/evil-commands.el b/evil-commands.el
index 347ba5c939..2dd09b47d2 100644
--- a/evil-commands.el
+++ b/evil-commands.el
@@ -4334,7 +4334,7 @@ Use `evil-flush-lines' if INVERT is nil, or 
`evil-keep-lines' if not."
 (setq evil--ex-global-active-p t)
 (dolist (marker markers)
   (goto-char marker)
-  (eval command-form)))
+  (eval command-form t)))
 (progn
   (setq evil--ex-global-active-p nil)
   ;; ensure that all markers are deleted afterwards,
diff --git a/evil-common.el b/evil-common.el
index 1613196ad2..81d7a00070 100644
--- a/evil-common.el
+++ b/evil-common.el
@@ -1951,7 +1951,7 @@ If INPUT starts with a number, +, -, or . use `calc-eval' 
instead."
  (result (if calcable-p
  (let ((calc-multiplication-has-precedence nil))
(calc-eval input))
-   (eval (car (read-from-string input))
+   (eval (car (read-from-string input)) t
 (cond
  ((stringp result) result)
  ((or (numberp result) (symbolp result))
diff --git a/evil-ex.el b/evil-ex.el
index 1a26a053c7..052fd995bf 100644
--- a/evil-ex.el
+++ b/evil-ex.el
@@ -396,7 +396,7 @@ is appended to the line."
   (evil-ex-update nil nil nil result)
   ;; execute command
   (unless (zerop (length result))
-(eval (or evil-ex-expression (user-error "Ex: syntax error")
+(eval (or evil-ex-expression (user-error "Ex: syntax error")) t)))
 
 (defun evil-ex-delete-backward-char ()
   "Close the minibuffer if it is empty.
@@ -477,9 +477,9 @@ in case of incomplete or unknown commands."
   (with-current-buffer evil-ex-current-buffer
 (setq expr (evil-ex-parse string))
 (when (eq (car expr) #'evil-ex-call-command)
-  (setq count (eval (nth 1 expr))
-cmd (eval (nth 2 expr))
-arg (eval (nth 3 expr))
+  (setq count (eval (nth 1 expr) t)
+cmd (eval (nth 2 expr) t)
+arg (eval (nth 3 expr) t)
 range (cond
((evil-range-p count) count)
((numberp count) (evil-ex-range count count)))
@@ -845,7 +845,8 @@ This function interprets special file names like # and %."
 (unless (eq binding #'evil-ex-repeat)
   (setq hist nil)
   (eval (or evil-ex-expression
-(user-error "Ex: syntax error"))
+(user-error "Ex: syntax error"))
+t
 
 (defun evil-ex-call-command (range command argument)
   "Execute the given command COMMAND."
diff --git a/evil-tests.el b/evil-tests.el
index d9311a59d9..455f7470c3 100644
--- a/evil-tests.el
+++ b/evil-tests.el
@@ -1,4 +1,4 @@
-;; evil-tests.el --- unit tests for Evil -*- coding: utf-8 -*-
+;; evil-tests.el --- unit tests for Evil -*- coding: utf-8; lexical-binding: 
t; -*-
 
 ;; Author: Vegard Øye 
 ;; Maintainer: Vegard Øye 
@@ -200,13 +200,12 @@ with `M-x evil-tests-run'"))
 
 (defun evil-test-change-state (state)
   "Change state to STATE and check keymaps"
-  (let (mode keymap local-mode local-keymap tag)
-(evil-change-state state)
-(setq mode (evil-state-property state :mode)
-  keymap (evil-state-property state :keymap t)
-  local-mode (evil-state-property state :local)
-  local-keymap (evil-state-property state :local-keymap 

[nongnu] scratch/evil a3657caba8 7/8: Replace uses of `defadvice` with `advice-add`

2023-07-02 Thread Stefan Monnier via
branch: scratch/evil
commit a3657caba8515c2b0e732ec994659ea8e05c3f14
Author: Stefan Monnier 
Commit: Stefan Monnier 

Replace uses of `defadvice` with `advice-add`

This either requires a dependency on the `nadvice` package,
or bumping the minimum Emacs version to 24.4.  I went with
the `nadvice` package, but maybe bumping up to 24.4 would be better.

* evil.el: Require `nadvice`.

* evil-core.el (evil--advice-list): New var.
(evil-mode): Use it instead of `ad-dis/enable`.
(evil--advice-add): New function.
(set-window-buffer, select-window, toggle-input-method, use-global-map):
* evil-search.el (isearch-message-prefix, isearch-delete-char)
(isearch-lazy-highlight-search):
* evil-integration.el (keyboard-quit, wdired-change-to-dired-mode)
(show-paren-function, quail-show-key, describe-char, ace-jump-done):
Use `evail--advice-add` insyead of `defadvice`.
(preceding-sexp, pp-last-sexp): Remove old code for when `advice-add`
is not available.

* evil-repeat.el (evil--read-key-sequence-advice): Adapt to use in
`advice-add`.
(read-key-sequence, read-key-sequence-vector): Use `evail--advice-add`.

* evil-keybindings.el (elp-results): Use `evil--advice-add` and move outside
of `eval-after-load`.
---
 evil-core.el| 43 +--
 evil-integration.el | 85 +++--
 evil-keybindings.el |  6 ++--
 evil-repeat.el  |  8 ++---
 evil-search.el  | 18 +++-
 evil.el |  2 +-
 6 files changed, 80 insertions(+), 82 deletions(-)

diff --git a/evil-core.el b/evil-core.el
index 5db6326952..f53d84c5d4 100644
--- a/evil-core.el
+++ b/evil-core.el
@@ -168,6 +168,8 @@ To enable Evil globally, do (evil-mode)."
 
 (defalias 'evil--fundamental-mode #'fundamental-mode)
 
+(defvar evil--advice-list nil)
+
 ;;;###autoload (autoload 'evil-mode "evil" nil t)
 (define-globalized-minor-mode evil-mode
   evil-local-mode evil-initialize
@@ -181,15 +183,21 @@ To enable Evil globally, do (evil-mode)."
 (and (eval-when-compile (version< emacs-version "26.1"))
  (eq (default-value 'major-mode) 'fundamental-mode)
  (setq-default major-mode 'evil--fundamental-mode))
-(ad-enable-regexp "^evil")
-(ad-activate-regexp "^evil")
+(pcase-dolist (advice evil--advice-list)
+  (apply #'advice-add advice))
 (evil-esc-mode 1))
 (when (eq (default-value 'major-mode) 'evil--fundamental-mode)
   (setq-default major-mode 'fundamental-mode))
-(ad-disable-regexp "^evil")
-(ad-update-regexp "^evil")
+(pcase-dolist (`(,funname ,_where ,adfun) evil--advice-list)
+  (advice-remove funname adfun))
 (evil-esc-mode -1)))
 
+(defun evil--advice-add (&rest args)
+  "Like `advice-add' but only records them for later use.
+The pieces of advice are activated/deactivated by `evil-mode'."
+  (when evil-mode (apply #'advice-add args))
+  (push args evil--advice-list))
+
 (defun evil-change-state (state &optional message)
   "Change the state to STATE.
 If STATE is nil, disable all states."
@@ -338,18 +346,21 @@ then this function does nothing."
 ;; run. This is appropriate since many buffers are used for throwaway
 ;; purposes. Passing the buffer to `set-window-buffer' indicates
 ;; otherwise, though, so advise this function to initialize Evil.
-(defadvice set-window-buffer (before evil)
+(evil--advice-add 'set-window-buffer :before #'evil--swb-initialize)
+(defun evil--swb-initialize (_window buffer &rest _)
   "Initialize Evil in the displayed buffer."
   (when evil-mode
-(when (get-buffer (ad-get-arg 1))
-  (with-current-buffer (ad-get-arg 1)
+(when (get-buffer buffer)
+  (with-current-buffer buffer
 (unless evil-local-mode
   (save-match-data (evil-initialize)))
 
 ;; Refresh cursor color.
 ;; Cursor color can only be set for each frame but not for each buffer.
+;; FIXME: Shouldn't this belong in `evil-(local-)mode'?
 (add-hook 'window-configuration-change-hook #'evil-refresh-cursor)
-(defadvice select-window (after evil activate)
+(evil--advice-add 'select-window :after #'evil--sw-refresh-cursor)
+(defun evil--sw-refresh-cursor (&rest _)
   (evil-refresh-cursor))
 
 (defun evil-generate-mode-line-tag (&optional state)
@@ -432,16 +443,17 @@ This allows input methods to be used in normal-state."
  (add-hook 'input-method-activate-hook #'evil-activate-input-method nil t)
  (add-hook 'input-method-deactivate-hook #'evil-deactivate-input-method 
nil t)))
 
-(defadvice toggle-input-method (around evil)
+(evil--advice-add 'toggle-input-method :around #'evil--refresh-inpput-method)
+(defun evil--refresh-inpput-method (orig-fun &rest args)
   "Refresh `evil-input-method'."
   (cond
((not evil-local-mode)
-ad-do-it)
+(apply orig-fun args))
((evil-state-property evil-state :input-method)
-ad-do-it)
+(apply orig-fun args))
(

[nongnu] branch scratch/evil created (now 30e812bb6c)

2023-07-02 Thread Stefan Monnier via
monnier pushed a change to branch scratch/evil.

at  30e812bb6c Misc minor changes

This branch includes the following new commits:

   new  f77b9d3723 evil-pkg.el: Remove file
   new  891af30ef2 Better follow conventions for use of ' in docstrings
   new  9456d95bef Prefer #' to quote function names
   new  b9298c600f (evil-with-delay): New macro, extracted from `evil-delay`
   new  49ba6e6fc5 Use lexical-binding everywhere
   new  0a03b8d2ad Remove redundant `:group` args
   new  a3657caba8 Replace uses of `defadvice` with `advice-add`
   new  30e812bb6c Misc minor changes




[nongnu] scratch/evil 891af30ef2 2/8: Better follow conventions for use of ' in docstrings

2023-07-02 Thread Stefan Monnier via
branch: scratch/evil
commit 891af30ef2668d7e5bcdb4f9b46eb1ba7d4581a3
Author: Stefan Monnier 
Commit: Stefan Monnier 

Better follow conventions for use of ' in docstrings

Also try and make the docstring fit within 80 columns.
This fixes some incorrect uses and eliminates some warnings.
---
 evil-commands.el |  9 -
 evil-common.el   | 30 +++---
 evil-core.el | 42 +-
 evil-ex.el   | 22 +++---
 evil-macros.el   |  2 +-
 evil-repeat.el   |  6 --
 evil-search.el   | 22 +++---
 evil-vars.el |  6 +++---
 8 files changed, 70 insertions(+), 69 deletions(-)

diff --git a/evil-commands.el b/evil-commands.el
index 68e9663e4b..abac1aea57 100644
--- a/evil-commands.el
+++ b/evil-commands.el
@@ -307,8 +307,7 @@ If called after a change operator, i.e. cw or cW,
 then both behave like ce or cE.
 
 If point is at the end of the buffer and cannot be moved signal
-'end-of-buffer is raised.
-"
+`end-of-buffer' is raised."
   :type exclusive
   (let ((thing (if bigword 'evil-WORD 'evil-word))
 (orig (point))
@@ -591,7 +590,7 @@ and jump to the corresponding one."
   (evil-next-flyspell-error (- (or count 1
 
 (evil-define-motion evil-previous-open-paren (count)
-  "Go to [count] previous unmatched '('."
+  "Go to [count] previous unmatched \"(\"."
   :type exclusive
   (evil-up-paren ?\( ?\) (- (or count 1
 
@@ -3079,7 +3078,7 @@ Calls `evil-complete-previous-line-func'."
 
 (defun evil-repeat-search (flag)
   "Called to record a search command.
-FLAG is either 'pre or 'post if the function is called before resp.
+FLAG is either `pre' or `post' if the function is called before resp.
 after executing the command."
   (cond
((and (evil-operator-state-p) (eq flag 'pre))
@@ -3890,7 +3889,7 @@ Change to `%s'? "
 
 (defun evil-repeat-ex-search (flag)
   "Called to record a search command.
-FLAG is either 'pre or 'post if the function is called before
+FLAG is either `pre' or `post' if the function is called before
 resp.  after executing the command."
   (cond
((and (evil-operator-state-p) (eq flag 'pre))
diff --git a/evil-common.el b/evil-common.el
index 49a5456d9c..3e4ce01519 100644
--- a/evil-common.el
+++ b/evil-common.el
@@ -123,7 +123,7 @@ otherwise add at the end of the list."
   "Delete by side-effect all items satisfying PREDICATE in LIST.
 Stop when reaching POINTER.  If the first item satisfies PREDICATE,
 there is no way to remove it by side-effect; therefore, write
-\(setq foo (evil-filter-list 'predicate foo)) to be sure of
+\(setq foo (evil-filter-list #\\='predicate foo)) to be sure of
 changing the value of `foo'."
   (let ((tail list) elt head)
 (while (and tail (not (eq tail pointer)))
@@ -1086,9 +1086,9 @@ immediately quits.
 
 (defun evil-signal-at-bob-or-eob (&optional count)
   "Signal error if `point' is at boundaries.
-If `point' is at bob and COUNT is negative this function signal
-`beginning-of-buffer'. If `point' is at eob and COUNT is positive
-this function singal `end-of-buffer'. This function should be used
+If `point' is at bob and COUNT is negative this function signals
+`beginning-of-buffer'.  If `point' is at eob and COUNT is positive
+this function signals `end-of-buffer'.  This function should be used
 in motions. COUNT defaults to 1."
   (setq count (or count 1))
   (cond
@@ -2745,7 +2745,7 @@ list of command properties as passed to 
`evil-define-command'."
 
 (defun evil-set-type (object type)
   "Set the type of OBJECT to TYPE.
-For example, (evil-set-type 'next-line 'line)
+For example, (evil-set-type \\='next-line \\='line)
 will make `line' the type of the `next-line' command."
   (cond
((overlayp object)
@@ -3087,10 +3087,10 @@ linewise, otherwise it is character wise."
 OP and CL are pairs of buffer positions for the opening and
 closing delimiter of a range. SELECTION-TYPE is the desired type
 of selection.  It is a symbol that determines which parts of the
-block are selected.  If it is 'inclusive or t the returned range
-is \(cons (car OP) (cdr CL)). If it is 'exclusive or nil the
+block are selected.  If it is `inclusive' or t the returned range
+is \(cons (car OP) (cdr CL)). If it is `exclusive' or nil the
 returned range is (cons (cdr OP) (car CL)).  If it is
-'exclusive-line the returned range will skip whitespace at the
+`exclusive-line' the returned range will skip whitespace at the
 end of the line of OP and at the beginning of the line of CL."
   (cond
((memq selection-type '(inclusive t)) (cons (car op) (cdr cl)))
@@ -3124,9 +3124,9 @@ delimited object must be given by THING-up function (see
 `evil-up-block').
 
 SELECTION-TYPE is symbol that determines which parts of the block
-are selected.  If it is 'inclusive or t OPEN and CLOSE are
-included in the range. If it is 'exclusive or nil the delimiters
-are not contained. If it is 'exclusive-line the delimiters are
+are selected.  If it is `inclusive' or t O

[nongnu] scratch/evil b9298c600f 4/8: (evil-with-delay): New macro, extracted from `evil-delay`

2023-07-02 Thread Stefan Monnier via
branch: scratch/evil
commit b9298c600fc0d0e08fac8db3fa7ca2e0f2eb72d6
Author: Stefan Monnier 
Commit: Stefan Monnier 

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

Save some kitten by using a macro instead of using `eval`.
This also exposes more code to the compiler, so should result in
more efficient code and potentially better compiler warnings.

* evil-common.el (evil-unquote): Delete unused function.
(evil--with-delay): New function, extracted from `evil-delay`.
(evil-with-delay): New macro, extracted from `evil-delay`.
(evil-delay): Redefine using `evil-with-delay` and declare obsolete.

* evil-states.el (evil-visual-activate-hook):
* evil-core.el (evil-define-key):
* evil-commands.el (evil-execute-in-normal-state): Use `evil-with-delay`.
---
 evil-commands.el | 68 +---
 evil-common.el   | 50 -
 evil-core.el | 24 +++-
 evil-states.el   | 21 +
 4 files changed, 88 insertions(+), 75 deletions(-)

diff --git a/evil-commands.el b/evil-commands.el
index 0b28ceac34..347ba5c939 100644
--- a/evil-commands.el
+++ b/evil-commands.el
@@ -5188,39 +5188,41 @@ Restore the disabled repeat hooks on insert-state exit."
 (defun evil-execute-in-normal-state ()
   "Execute the next command in Normal state."
   (interactive)
-  (evil-delay '(not (memq this-command
-  '(nil
-evil-execute-in-normal-state
-evil-replace-state
-evil-use-register
-digit-argument
-negative-argument
-universal-argument
-universal-argument-minus
-universal-argument-more
-universal-argument-other-key)))
-  `(with-current-buffer ,(current-buffer)
- ;; If cursor was after EOL before CTRL-O and is now at EOL,
- ;; put it after EOL.
- (and (or (when evil--execute-normal-eol-pos
-(= (1+ (point)) (save-excursion
-  (goto-char evil--execute-normal-eol-pos)
-  (set-marker evil--execute-normal-eol-pos 
nil)
-  (line-end-position
-  (and (eq (or goal-column temporary-goal-column) 
most-positive-fixnum)
-   (memq this-command '(next-line previous-line
-  (not (eolp))
-  (not (memq this-command
- '(evil-insert evil-beginning-of-line 
evil-first-non-blank)))
-  (forward-char))
- (unless (memq evil-state '(replace insert))
-   (evil-change-state ',evil-state))
- (when (eq 'insert evil-state)
-   (remove-hook 'pre-command-hook #'evil-repeat-pre-hook)
-   (remove-hook 'post-command-hook #'evil-repeat-post-hook)
-   (add-hook 'evil-insert-state-exit-hook 
#'evil--restore-repeat-hooks))
- (setq evil-execute-normal-keys nil))
-'post-command-hook)
+  (let ((buf (current-buffer))
+(estate evil-state))
+(evil-with-delay (not (memq this-command
+'(nil
+  evil-execute-in-normal-state
+  evil-replace-state
+  evil-use-register
+  digit-argument
+  negative-argument
+  universal-argument
+  universal-argument-minus
+  universal-argument-more
+  universal-argument-other-key)))
+post-command-hook
+  (with-current-buffer buf
+;; If cursor was after EOL before CTRL-O and is now at EOL,
+;; put it after EOL.
+(and (or (when evil--execute-normal-eol-pos
+   (= (1+ (point)) (save-excursion
+ (goto-char evil--execute-normal-eol-pos)
+ (set-marker evil--execute-normal-eol-pos 
nil)
+ (line-end-position
+ (and (eq (or goal-column temporary-goal-column) 
most-positive-fixnum)
+  (memq this-command '(next-line previous-line
+ (not (eolp))
+ (not (memq this-command
+'(evil-insert evil-beginning-of-line 
evil-first-non-blank)))
+ (forward-char))
+(unless (memq evil-state '(replace insert))
+  (evil-change-state estate))
+(when (eq 'insert evil-state)
+  (remove-hook 'pre-command-hook #'evil-repeat-pre-hook)
+  (remove-hook 'post-command-hook #'evil-repeat-post-hook)
+  (add-hook

[nongnu] scratch/evil f77b9d3723 1/8: evil-pkg.el: Remove file

2023-07-02 Thread Stefan Monnier via
branch: scratch/evil
commit f77b9d372369b99488855acad8822a90ef24490a
Author: Stefan Monnier 
Commit: Stefan Monnier 

evil-pkg.el: Remove file

This file is auto-generated from headers in `evil.el` anyway.
* evil.el: Synchronize metadata with what was in `evil-pkg.el`.
* .gitignore: Add `evil-pkg.el`.
---
 .gitignore  | 3 ++-
 evil-pkg.el | 7 ---
 evil.el | 2 +-
 3 files changed, 3 insertions(+), 9 deletions(-)

diff --git a/.gitignore b/.gitignore
index a9b6f32c53..34991abef5 100644
--- a/.gitignore
+++ b/.gitignore
@@ -4,7 +4,8 @@
 *.pg
 *.tp
 .depend
-evil-autoloads.el
+/evil-autoloads.el
+/evil-pkg.el
 test-results.txt
 typescript
 
diff --git a/evil-pkg.el b/evil-pkg.el
deleted file mode 100644
index 0ab78cb335..00
--- a/evil-pkg.el
+++ /dev/null
@@ -1,7 +0,0 @@
-(define-package
-  "evil"
-  "1.15.0"
-  "Extensible Vi layer for Emacs."
-  '((emacs "24.1")
-(goto-chg "1.6")
-(cl-lib "0.5")))
diff --git a/evil.el b/evil.el
index dc13a828c0..00e7d7ce9c 100644
--- a/evil.el
+++ b/evil.el
@@ -1,4 +1,4 @@
-;;; evil.el --- extensible vi layer
+;;; evil.el --- Extensible Vi layer for Emacs
 
 ;; The following list of authors was kept up to date until the beginning of
 ;; 2017, when evil moved under new maintainers. For authors since then, please



[nongnu] scratch/evil 30e812bb6c 8/8: Misc minor changes

2023-07-02 Thread Stefan Monnier via
branch: scratch/evil
commit 30e812bb6c2841cdf728f6735a90e638d5522dad
Author: Stefan Monnier 
Commit: Stefan Monnier 

Misc minor changes

* evil-command-window.el (evil-command-window-draw-prefix):
Mark `ignored` as, well, ignored.
* README.md: Mention that `undo-fu` is also in NonGNU ELPA.
* evil-core (evil-get-auxiliary-keymap): Simplify `vconcat` to `vector`.
(evil-auxiliary-keymap-p): Unhide arg by moving it to its own line.
* evil-macros.el (evil-define-interactive-code): Move shared `setq func`
out of `cond`.  Move the insertion of quote around `func` to the `cond`
so the `quote` is not incorrectly added around lambda forms.
* evil-tests.el: Add a few FIXMEs.
---
 README.md  |  2 +-
 evil-command-window.el |  2 +-
 evil-core.el   |  5 +++--
 evil-macros.el | 18 +-
 evil-tests.el  |  5 +
 5 files changed, 19 insertions(+), 13 deletions(-)

diff --git a/README.md b/README.md
index 198b18317c..6473ba66f2 100644
--- a/README.md
+++ b/README.md
@@ -47,7 +47,7 @@ file.
   * 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)
+(available via MELPA and NonGNU ELPA)
 
 * For the motions `g;` `g,` and for the last-change-register `.`, Evil
   requires the [goto-chg.el](https://github.com/emacs-evil/goto-chg)
diff --git a/evil-command-window.el b/evil-command-window.el
index 21299a2dc0..566ee3a79e 100644
--- a/evil-command-window.el
+++ b/evil-command-window.el
@@ -164,7 +164,7 @@ function to execute."
   (push result evil-search-backward-history)))
   (evil-search result forward evil-regexp-search
 
-(defun evil-command-window-draw-prefix (&rest ignored)
+(defun evil-command-window-draw-prefix (&rest _ignored)
   "Display `evil-command-window-cmd-key' as a prefix to the current line.
 Parameters passed in through IGNORED are ignored."
   (let ((prefix (propertize evil-command-window-cmd-key
diff --git a/evil-core.el b/evil-core.el
index f53d84c5d4..02e50e8652 100644
--- a/evil-core.el
+++ b/evil-core.el
@@ -845,7 +845,7 @@ IGNORE-PARENT are non-nil then a new auxiliary
 keymap is created even if the parent of MAP has
 one already."
   (when state
-(let* ((key (vconcat (list (intern (format "%s-state" state)
+(let* ((key (vector (intern (format "%s-state" state
(parent-aux (when (and ignore-parent
   (keymap-parent map))
  (lookup-key (keymap-parent map) key)))
@@ -884,7 +884,8 @@ does not already exist."
   "Whether MAP is an auxiliary keymap."
   (and (keymapp map)
(string-match-p "Auxiliary keymap"
-   (or (keymap-prompt map) "")) t))
+   (or (keymap-prompt map) ""))
+   t))
 
 (defun evil-minor-mode-keymap-p (map)
   "Whether MAP is a minor-mode keymap."
diff --git a/evil-macros.el b/evil-macros.el
index a164fe6981..458a2119e2 100644
--- a/evil-macros.el
+++ b/evil-macros.el
@@ -763,19 +763,19 @@ via KEY-VALUE pairs. BODY should evaluate to a list of 
values.
 (while (keywordp (car-safe body))
   (setq properties
 (append properties (list (pop body) (pop body)
-(cond
- (args
-  (setq func `(lambda ,args
+(setq func (cond
+(args
+ `(lambda ,args
 ,@(when doc `(,doc))
-,@body)))
- ((> (length body) 1)
-  (setq func `(progn ,@body)))
- (t
-  (setq func (car body
+,@body))
+((> (length body) 1)
+ `'(progn ,@body))
+(t
+ `',(car body
 `(eval-and-compile
(let* ((code ,code)
   (entry (assoc code evil-interactive-alist))
-  (value (cons ',func ',properties)))
+  (value (cons ,func ',properties)))
  (if entry
  (setcdr entry value)
(push (cons code value) evil-interactive-alist))
diff --git a/evil-tests.el b/evil-tests.el
index 455f7470c3..378619fd53 100644
--- a/evil-tests.el
+++ b/evil-tests.el
@@ -61,6 +61,7 @@
 ;;
 ;; This file is NOT part of Evil itself.
 
+;; FIXME: Merely loading an ELisp file should not change Emacs's config!
 (setq load-prefer-newer t)
 
 (require 'cl-lib)
@@ -8971,6 +8972,10 @@ parameter set."
 (ert-deftest evil-test-parser ()
   "Test `evil-parser'"
   (cl-flet ((parse
+ ;; FIXME: `evil-parser' is defined in `evil-ex' which is known to
+ ;; loaded at this point (thanks to (require 'evil)), but that file
+ ;; defines `evil-parser' only inside an `eval-when-compile',
+ ;; So this will misbehave if `evil-ex' has been compiled!
  (evil-parser
   '((number "[0-9]+" #'string-to-number)
 (plus "\\+" #'intern)