[elpa] externals/denote d26b50bf58 3/3: Acknowledge leinfink for commit 21f1c98

2023-11-15 Thread ELPA Syncer
branch: externals/denote
commit d26b50bf5840b58321675ffdc35c189a197b2a7f
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

Acknowledge leinfink for commit 21f1c98

This change is within the ~15 line limit and thus does not require
copyright assignment to the Free Software Foundation.

It was done in pull request 191 on the GitHub mirror:
.
---
 README.org | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/README.org b/README.org
index 8cbd7959a2..3886ec6b10 100644
--- a/README.org
+++ b/README.org
@@ -4708,7 +4708,7 @@ Denote is meant to be a collective effort.  Every bit of 
help matters.
   Meyer, Marc Fargas, Matthew Lemon, Noboru Ota (nobiot), Norwid
   Behrnd, Peter Prevos, Philip Kaludercic, Quiliro Ordóñez, Stefan
   Monnier, Stefan Thesing, Thibaut Benjamin, Tomasz Hołubowicz, Vedang
-  Manerikar, ezchi, mentalisttraceur, relict007.
+  Manerikar, ezchi, leinfink (Henrik), mentalisttraceur, relict007.
 
 + Ideas and/or user feedback :: Abin Simon, Aditya Yadav, Alan
   Schmitt, Alfredo Borrás, Ashton Wiersdorf, Benjamin Kästner, Colin



[elpa] externals/denote 21f1c98339 1/3: allow checking for subdirs of `denote-dired-directories' (fix #190)

2023-11-15 Thread ELPA Syncer
branch: externals/denote
commit 21f1c98339b8f1c2dcf91a7edbbb19e74af361ad
Author: Henrik Hörmann 
Commit: Henrik Hörmann 

allow checking for subdirs of `denote-dired-directories' (fix #190)
---
 denote.el | 37 ++---
 1 file changed, 34 insertions(+), 3 deletions(-)

diff --git a/denote.el b/denote.el
index b5150ec3db..1538a1e24d 100644
--- a/denote.el
+++ b/denote.el
@@ -2811,6 +2811,15 @@ to the `dired-mode-hook'."
   :link '(info-link "(denote) Fontification in Dired")
   :group 'denote-dired)
 
+ (defcustom denote-dired-include-subdirectories nil
+"Whether to enable `denote-dired-mode' in subdirectories of 
`denote-dired-directories'.
+
+If nil, enable  `denote-dired-mode' only in directories exactly matching one 
of `denote-dired-directories', excluding subdirectories.
+
+If non-nil, enable `denote-dired-mode' in `denote-dired-directories' and their 
subdirectories."
+:group 'denote-dired
+:type 'boolean)
+
 ;; FIXME 2022-08-12: Make `denote-dired-mode' work with diredfl.  This
 ;; may prove challenging.
 
@@ -2862,9 +2871,31 @@ written, it is always returned as a directory."
 ;;;###autoload
 (defun denote-dired-mode-in-directories ()
   "Enable `denote-dired-mode' in `denote-dired-directories'.
-Add this function to `dired-mode-hook'."
-  (when (member (file-truename default-directory) 
(denote-dired--modes-dirs-as-dirs))
-(denote-dired-mode 1)))
+Add this function to `dired-mode-hook'.
+
+If `denote-dired-include-subdirectories' is non-nil, also enable
+it in all subdirectories."
+  (cl-labels ((partial-paths (dir)
+;; e.g '("/home/", "/home/docs/", "/home/docs/stuff/")
+   (let* ((path-elements (split-string dir "/" t)))
+ (collect-paths
+  (cons (concat "/" (car path-elements))
+(cdr path-elements))
+  nil)))
+ (collect-paths (path-elements coll)
+   (if path-elements
+   (collect-paths
+(cdr path-elements)
+(cons (concat (car coll) (car path-elements) "/")
+  coll))
+ coll)))
+(let ((cur-path (file-truename default-directory)))
+  (when (seq-intersection
+(if denote-dired-include-subdirectories
+(partial-paths cur-path)
+  (list cur-path))
+(denote-dired--modes-dirs-as-dirs))
+   (denote-dired-mode 1)
 
  The linking facility
 



[elpa] externals/denote 36db77d496 2/3: Merge pull request #191 from leinfink/main

2023-11-15 Thread ELPA Syncer
branch: externals/denote
commit 36db77d496bffa1f6bbf698e076fdb0f6587b2ff
Merge: 75534eea53 21f1c98339
Author: Protesilaos Stavrou 
Commit: GitHub 

Merge pull request #191 from leinfink/main

Allow checking for subdirs of `denote-dired-directories' (fix #190)
---
 denote.el | 37 ++---
 1 file changed, 34 insertions(+), 3 deletions(-)

diff --git a/denote.el b/denote.el
index b5150ec3db..1538a1e24d 100644
--- a/denote.el
+++ b/denote.el
@@ -2811,6 +2811,15 @@ to the `dired-mode-hook'."
   :link '(info-link "(denote) Fontification in Dired")
   :group 'denote-dired)
 
+ (defcustom denote-dired-include-subdirectories nil
+"Whether to enable `denote-dired-mode' in subdirectories of 
`denote-dired-directories'.
+
+If nil, enable  `denote-dired-mode' only in directories exactly matching one 
of `denote-dired-directories', excluding subdirectories.
+
+If non-nil, enable `denote-dired-mode' in `denote-dired-directories' and their 
subdirectories."
+:group 'denote-dired
+:type 'boolean)
+
 ;; FIXME 2022-08-12: Make `denote-dired-mode' work with diredfl.  This
 ;; may prove challenging.
 
@@ -2862,9 +2871,31 @@ written, it is always returned as a directory."
 ;;;###autoload
 (defun denote-dired-mode-in-directories ()
   "Enable `denote-dired-mode' in `denote-dired-directories'.
-Add this function to `dired-mode-hook'."
-  (when (member (file-truename default-directory) 
(denote-dired--modes-dirs-as-dirs))
-(denote-dired-mode 1)))
+Add this function to `dired-mode-hook'.
+
+If `denote-dired-include-subdirectories' is non-nil, also enable
+it in all subdirectories."
+  (cl-labels ((partial-paths (dir)
+;; e.g '("/home/", "/home/docs/", "/home/docs/stuff/")
+   (let* ((path-elements (split-string dir "/" t)))
+ (collect-paths
+  (cons (concat "/" (car path-elements))
+(cdr path-elements))
+  nil)))
+ (collect-paths (path-elements coll)
+   (if path-elements
+   (collect-paths
+(cdr path-elements)
+(cons (concat (car coll) (car path-elements) "/")
+  coll))
+ coll)))
+(let ((cur-path (file-truename default-directory)))
+  (when (seq-intersection
+(if denote-dired-include-subdirectories
+(partial-paths cur-path)
+  (list cur-path))
+(denote-dired--modes-dirs-as-dirs))
+   (denote-dired-mode 1)
 
  The linking facility
 



[elpa] externals/denote updated (75534eea53 -> d26b50bf58)

2023-11-15 Thread ELPA Syncer
elpasync pushed a change to branch externals/denote.

  from  75534eea53 Fix typos
   new  21f1c98339 allow checking for subdirs of `denote-dired-directories' 
(fix #190)
   new  36db77d496 Merge pull request #191 from leinfink/main
   new  d26b50bf58 Acknowledge leinfink for commit 21f1c98


Summary of changes:
 README.org |  2 +-
 denote.el  | 37 ++---
 2 files changed, 35 insertions(+), 4 deletions(-)



[elpa] externals/denote updated (d26b50bf58 -> 4ad77f92dd)

2023-11-15 Thread ELPA Syncer
elpasync pushed a change to branch externals/denote.

  from  d26b50bf58 Acknowledge leinfink for commit 21f1c98
   new  c0438cd2d6 Simplify denote-dired-mode-in-directories (tweak 21f1c98)
   new  4ad77f92dd Document inclusion of subdirs for denote-dired-mode; 
update symbol of user option


Summary of changes:
 README.org |  7 +++
 denote.el  | 55 +++
 2 files changed, 30 insertions(+), 32 deletions(-)



[elpa] externals/denote 4ad77f92dd 2/2: Document inclusion of subdirs for denote-dired-mode; update symbol of user option

2023-11-15 Thread ELPA Syncer
branch: externals/denote
commit 4ad77f92dd6c71a701afe1f969cae54ab0cbddd3
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

Document inclusion of subdirs for denote-dired-mode; update symbol of user 
option

This is a follow-up to pull request 190 on the GitHub mirror, which
added the original idea: .
Thanks to leinfink for the contribution!
---
 README.org |  7 +++
 denote.el  | 27 +++
 2 files changed, 22 insertions(+), 12 deletions(-)

diff --git a/README.org b/README.org
index 3886ec6b10..3a09781932 100644
--- a/README.org
+++ b/README.org
@@ -2237,6 +2237,13 @@ the function ~denote-dired-mode-in-directories~:
 (add-hook 'dired-mode-hook #'denote-dired-mode-in-directories)
 #+end_src
 
+#+vindex: denote-dired-directories-include-subdirectories
+The user option ~denote-dired-directories-include-subdirectories~
+specifies whether the ~denote-dired-directories~ also cover their
+subdirectories. By default they do not. Set this option to ~t~ to
+include subdirectories as well. [ This feature is part of
+{{{development-version}}}. ]
+
 The faces we define for this purpose are:
 
 #+vindex: denote-faces-date
diff --git a/denote.el b/denote.el
index e9dc910de2..23e074d24f 100644
--- a/denote.el
+++ b/denote.el
@@ -2805,20 +2805,23 @@ and seconds."
 (defcustom denote-dired-directories (list denote-directory)
   "List of directories where `denote-dired-mode' should apply to.
 For this to take effect, add `denote-dired-mode-in-directories',
-to the `dired-mode-hook'."
+to the `dired-mode-hook'.
+
+If `denote-dired-directories-include-subdirectories' is non-nil,
+also apply the effect to all subdirectories of those specified in
+the list."
   :type '(repeat directory)
   :package-version '(denote . "0.1.0")
   :link '(info-link "(denote) Fontification in Dired")
   :group 'denote-dired)
 
- (defcustom denote-dired-include-subdirectories nil
-"Whether to enable `denote-dired-mode' in subdirectories of 
`denote-dired-directories'.
-
-If nil, enable  `denote-dired-mode' only in directories exactly matching one 
of `denote-dired-directories', excluding subdirectories.
-
-If non-nil, enable `denote-dired-mode' in `denote-dired-directories' and their 
subdirectories."
-:group 'denote-dired
-:type 'boolean)
+(defcustom denote-dired-directories-include-subdirectories nil
+  "If non-nil `denote-dired-directories' also affects all subdirectories.
+Otherwise `denote-dired-directories' works only with exact matches."
+  :package-version '(denote . "2.2.0")
+  :link '(info-link "(denote) Fontification in Dired")
+  :type 'boolean
+  :group 'denote-dired)
 
 ;; FIXME 2022-08-12: Make `denote-dired-mode' work with diredfl.  This
 ;; may prove challenging.
@@ -2873,12 +2876,12 @@ written, it is always returned as a directory."
   "Enable `denote-dired-mode' in `denote-dired-directories'.
 Add this function to `dired-mode-hook'.
 
-If `denote-dired-include-subdirectories' is non-nil, also enable
-it in all subdirectories."
+If `denote-dired-directories-include-subdirectories' is non-nil,
+also enable it in all subdirectories."
   (when-let ((dirs (denote-dired--modes-dirs-as-dirs))
  ;; Also include subdirs
  ((or (member (file-truename default-directory) dirs)
-  (and denote-dired-include-subdirectories
+  (and denote-dired-directories-include-subdirectories
(seq-some
 (lambda (dir)
   (string-prefix-p dir (file-truename 
default-directory)))



[elpa] externals/denote c0438cd2d6 1/2: Simplify denote-dired-mode-in-directories (tweak 21f1c98)

2023-11-15 Thread ELPA Syncer
branch: externals/denote
commit c0438cd2d6ae5864511e15c4fc9925a0f4b73789
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

Simplify denote-dired-mode-in-directories (tweak 21f1c98)

Thanks to leinfink for the feedback in the comments of pull request
190 on the GitHub mirror: .
---
 denote.el | 30 +-
 1 file changed, 9 insertions(+), 21 deletions(-)

diff --git a/denote.el b/denote.el
index 1538a1e24d..e9dc910de2 100644
--- a/denote.el
+++ b/denote.el
@@ -2875,27 +2875,15 @@ Add this function to `dired-mode-hook'.
 
 If `denote-dired-include-subdirectories' is non-nil, also enable
 it in all subdirectories."
-  (cl-labels ((partial-paths (dir)
-;; e.g '("/home/", "/home/docs/", "/home/docs/stuff/")
-   (let* ((path-elements (split-string dir "/" t)))
- (collect-paths
-  (cons (concat "/" (car path-elements))
-(cdr path-elements))
-  nil)))
- (collect-paths (path-elements coll)
-   (if path-elements
-   (collect-paths
-(cdr path-elements)
-(cons (concat (car coll) (car path-elements) "/")
-  coll))
- coll)))
-(let ((cur-path (file-truename default-directory)))
-  (when (seq-intersection
-(if denote-dired-include-subdirectories
-(partial-paths cur-path)
-  (list cur-path))
-(denote-dired--modes-dirs-as-dirs))
-   (denote-dired-mode 1)
+  (when-let ((dirs (denote-dired--modes-dirs-as-dirs))
+ ;; Also include subdirs
+ ((or (member (file-truename default-directory) dirs)
+  (and denote-dired-include-subdirectories
+   (seq-some
+(lambda (dir)
+  (string-prefix-p dir (file-truename 
default-directory)))
+dirs)
+(denote-dired-mode 1)))
 
  The linking facility
 



[elpa] externals/org 819cd73cb4: lisp/ox-publish.el (org-publish-timestamp-filename): Document function arguments

2023-11-15 Thread ELPA Syncer
branch: externals/org
commit 819cd73cb4caaa407dfa88fa89dcd60096c2d41d
Author: Ihor Radchenko 
Commit: Ihor Radchenko 

lisp/ox-publish.el (org-publish-timestamp-filename): Document function 
arguments
---
 lisp/ox-publish.el | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/lisp/ox-publish.el b/lisp/ox-publish.el
index 1e88667ac6..ceada63455 100644
--- a/lisp/ox-publish.el
+++ b/lisp/ox-publish.el
@@ -358,7 +358,9 @@ You can overwrite this default per project in your
 ;;; Timestamp-related functions
 
 (defun org-publish-timestamp-filename (filename &optional pub-dir pub-func)
-  "Return path to timestamp file for filename FILENAME."
+  "Return path to timestamp file for filename FILENAME.
+The timestamp file name is constructed using FILENAME, publishing
+directory PUB-DIR, and PUB-FUNC publishing function."
   (setq filename (concat filename "::" (or pub-dir "") "::"
 (format "%s" (or pub-func ""
   (concat "X" (if (fboundp 'sha1) (sha1 filename) (md5 filename



[elpa] externals/spacious-padding 058c2e2c31: Affect padding of {header, mode-line}-line and tab-bar

2023-11-15 Thread ELPA Syncer
branch: externals/spacious-padding
commit 058c2e2c317fb740ebddc222917bfd85e66fe409
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

Affect padding of {header,mode-line}-line and tab-bar
---
 spacious-padding.el | 32 
 1 file changed, 32 insertions(+)

diff --git a/spacious-padding.el b/spacious-padding.el
index cda609a047..258ab20a31 100644
--- a/spacious-padding.el
+++ b/spacious-padding.el
@@ -53,14 +53,21 @@
 
 (defcustom spacious-padding-widths
   '( :internal-border-width 15
+ :header-line-width 4
+ :mode-line-width 6
+ :tab-width 4
  :right-divider-width 30
  :scroll-bar-width 8)
   "Number of pixels for frame and window divider border width."
   :type '(plist
   :key-type (choice (const :internal-border-width)
 (const :right-divider-width)
+(const :tab-width)
+(const :header-line-width)
+(const :mode-line-width)
 (const :scroll-bar-width))
   :value-type natnum)
+  :package-version '(spacious-padding . "0.2.0")
   :group 'spacious-padding)
 
 (defun spacious-padding-set-invisible-dividers (_theme)
@@ -68,6 +75,25 @@
   (let ((bg (face-background 'default)))
 (custom-set-faces
  `(fringe ((t :background ,bg)))
+ `(header-line ((t :box ( :line-width ,(plist-get spacious-padding-widths 
:header-line-width)
+:color ,(face-background 'header-line nil 'default)
+:style nil
+ `(mode-line ((t :box ( :line-width ,(plist-get spacious-padding-widths 
:mode-line-width)
+:color ,(face-background 'mode-line)
+:style nil
+ ;; We cannot use :inherit mode-line because it does not get our version 
of it...
+ `(mode-line-active ((t :box ( :line-width ,(plist-get 
spacious-padding-widths :mode-line-width)
+:color ,(face-background 'mode-line-active nil 
'mode-line)
+:style nil
+ `(mode-line-inactive ((t :box ( :line-width ,(plist-get 
spacious-padding-widths :mode-line-width)
+ :color ,(face-background 
'mode-line-inactive)
+ :style nil
+ `(tab-bar-tab ((t :box ( :line-width ,(plist-get spacious-padding-widths 
:tab-width)
+  :color ,(face-background 'tab-bar-tab nil 
'tab-bar)
+  :style nil
+ `(tab-bar-tab-inactive ((t :box ( :line-width ,(plist-get 
spacious-padding-widths :tab-width)
+   :color ,(face-background 
'tab-bar-tab-inactive nil 'tab-bar)
+   :style nil
  `(window-divider ((t :background ,bg :foreground ,bg)))
  `(window-divider-first-pixel ((t :background ,bg :foreground ,bg)))
  `(window-divider-last-pixel ((t :background ,bg :foreground ,bg))
@@ -76,6 +102,12 @@
   "Make window dividers for THEME invisible."
   (custom-set-faces
'(fringe (( )))
+   '(header-line (( )))
+   '(mode-line (( )))
+   '(mode-line-active (( )))
+   '(mode-line-inactive (( )))
+   '(tab-bar-tab (( )))
+   '(tab-bar-tab-inactive (( )))
'(window-divider (( )))
'(window-divider-first-pixel (( )))
'(window-divider-last-pixel (( )



[nongnu] elpa/org-contrib 33ae9833e1: * lisp/org-contrib.el: Switch to lexical binding

2023-11-15 Thread ELPA Syncer
branch: elpa/org-contrib
commit 33ae9833e104cfc8e45ac1e683dcf3c17a0a16fb
Author: Ihor Radchenko 
Commit: Ihor Radchenko 

* lisp/org-contrib.el: Switch to lexical binding

The sole purpose is getting rid of the compiler warning.
---
 lisp/org-contrib.el | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/lisp/org-contrib.el b/lisp/org-contrib.el
index 2b327df89e..59c7fba8bb 100644
--- a/lisp/org-contrib.el
+++ b/lisp/org-contrib.el
@@ -1,4 +1,4 @@
-;;; org-contrib.el --- Unmaintained add-ons for Org-mode
+;;; org-contrib.el --- Unmaintained add-ons for Org-mode  -*- lexical-binding: 
t; -*-
 
 ;; Copyright (C) 2021 Bastien Guerry
 



[elpa] externals/modus-themes bdb18b2ee2: Make 'header-line-highlight' draw a box around it

2023-11-15 Thread ELPA Syncer
branch: externals/modus-themes
commit bdb18b2ee27344e44e2a17c78524205d02d5174c
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

Make 'header-line-highlight' draw a box around it

This makes the mouse hover effect easier to spot against the grey
background.
---
 modus-themes.el | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/modus-themes.el b/modus-themes.el
index a8c535e475..e858fc9bf2 100644
--- a/modus-themes.el
+++ b/modus-themes.el
@@ -1776,7 +1776,7 @@ FG and BG are the main colors."
 `(escape-glyph ((,c :foreground ,err)))
 `(file-name-shadow ((,c :inherit shadow)))
 `(header-line ((,c :inherit modus-themes-ui-variable-pitch :background 
,bg-dim)))
-`(header-line-highlight ((,c :inherit highlight)))
+`(header-line-highlight ((,c :background ,bg-hover :foreground ,fg-main 
:box ,fg-main)))
 `(help-argument-name ((,c :inherit modus-themes-slant :foreground 
,variable)))
 `(help-key-binding ((,c :inherit modus-themes-key-binding)))
 `(highlight ((,c :background ,bg-hover :foreground ,fg-main)))



[nongnu] elpa/racket-mode a745a92579 3/3: Ignore new elements

2023-11-15 Thread ELPA Syncer
branch: elpa/racket-mode
commit a745a92579ff65d2941a1226383a80a00b0c490c
Author: Greg Hendershott 
Commit: Greg Hendershott 

Ignore new  elements

These use "link" and "i" emoticons that...

(a) render as \nnn byte strings, because we're using
insert-file-contents-literally, and I don't have time now to figure
out why we use that instead of insert-file-contents, and how to use
the latter for encoding while avoiding whatever other behavior we
wanted to avoid.

(b) in a browser only show when the user hovers with the mouse, but in
our case would appear always, after every main section heading, which
is nosiy.

Someday/maybe we should figure out a way to present the hidden
information -- a "link here" URL, as well as the scribble source doc
URL on GitHub -- that's appropriate for our UX. And then deal with the
various ways this has been presented in Scribble HTML over time.
---
 racket-scribble.el | 6 ++
 1 file changed, 6 insertions(+)

diff --git a/racket-scribble.el b/racket-scribble.el
index 363af6c68e..5bce1a6b34 100644
--- a/racket-scribble.el
+++ b/racket-scribble.el
@@ -165,12 +165,18 @@ In some cases we resort to returning custom elements for
 (`(a ((name . ,name)) . ,xs)
  `(racket-anchor ((name . ,name)) . ,xs))
 
+;; Ignore new  elements.
+(`(span ((class . "button-group")) . ,_)
+ `(span))
+
 ;; Replace  with  or . The
 ;; former are links to follow using racket-describe-mode, the
 ;; latter using browse-url (a general-purpose, probably external
 ;; web browser).
 (`(a ,_ . ,xs)
  (pcase (dom-attr dom 'href)
+   ;; No href.
+   (`() `(span () ,@(mapcar #'racket--walk-dom xs)))
;; Handle "local-redirect" links. Scribble writes these as
;; external links, and generates doc/local-redirect.js to
;; adjust these on page load. Partially mimic that js here.



[nongnu] elpa/racket-mode updated (dfd9c23692 -> a745a92579)

2023-11-15 Thread ELPA Syncer
elpasync pushed a change to branch elpa/racket-mode.

  from  dfd9c23692 Work with highlight-indent-guides-mode; fixes #669
   new  0abcedb2c3 Fix: Ensure REPL configure from edit buffer happens on 
first run
   new  216d297912 Don't relay write-special for stdout/stderr; fixes #677
   new  a745a92579 Ignore new  elements


Summary of changes:
 racket-hash-lang.el| 30 --
 racket-repl.el | 32 +++-
 racket-scribble.el |  6 ++
 racket/repl-output.rkt |  7 +--
 4 files changed, 42 insertions(+), 33 deletions(-)



[nongnu] elpa/racket-mode 216d297912 2/3: Don't relay write-special for stdout/stderr; fixes #677

2023-11-15 Thread ELPA Syncer
branch: elpa/racket-mode
commit 216d297912cd3cfc67e84c926ccb38d7e9cc7f0f
Author: Greg Hendershott 
Commit: Greg Hendershott 

Don't relay write-special for stdout/stderr; fixes #677

Although we handle write-special in a temporary values port in
print.rkt, for convertible image values, we don't need to generally
for current-output-port or current-error-port.

We were already ignoring non-image special values in the Emacs front
end. So handling write-special in the general ports in the back end
only means we might try, unnecessarily, to elisp-write some arbitrary
Racket value, and sometimes fail. (Whatever the student langs and
DrRacket are doing in this regard with write-special, beyond images,
we can ignore for now, and maybe forever.)
---
 racket/repl-output.rkt | 7 +--
 1 file changed, 1 insertion(+), 6 deletions(-)

diff --git a/racket/repl-output.rkt b/racket/repl-output.rkt
index a55e6a013a..c7857cf23e 100644
--- a/racket/repl-output.rkt
+++ b/racket/repl-output.rkt
@@ -94,13 +94,8 @@
 (async-channel-put repl-output-channel
(repl-output kind (subbytes bstr start end)))
 (- end start))
-  (define (write-out-special v _non-block? _breakable?)
-(async-channel-put repl-output-channel
-   (repl-output special-kind v))
-#t)
   (define close void)
   (make-output-port name
 repl-output-channel
 write-out
-close
-write-out-special))
+close))



[nongnu] elpa/racket-mode 0abcedb2c3 1/3: Fix: Ensure REPL configure from edit buffer happens on first run

2023-11-15 Thread ELPA Syncer
branch: elpa/racket-mode
commit 0abcedb2c3b16263f95ffbdc1b0b018366fe9865
Author: Greg Hendershott 
Commit: Greg Hendershott 

Fix: Ensure REPL configure from edit buffer happens on first run

This requires waiting to do it until the repl buffer is created and
sufficiently initialized -- but before issuing any command to start a
repl session.

While we're add it, change this from a hook to a direct function call.
There's nothing "hooky" about this, we just need to avoid a mutual
require, and we can do that the usual way with declare-function and
autoload.
---
 racket-hash-lang.el | 30 --
 racket-repl.el  | 32 +++-
 2 files changed, 35 insertions(+), 27 deletions(-)

diff --git a/racket-hash-lang.el b/racket-hash-lang.el
index f4a2f1b831..01a082b7e9 100644
--- a/racket-hash-lang.el
+++ b/racket-hash-lang.el
@@ -637,13 +637,12 @@ When the lang lexer token is...
   :lighter " #lang"
   :keymap racket-hash-lang-repl-mode-map)
 
-(defun racket--hash-lang-configure-repl-buffer-from-edit-buffer ()
-  "Update the `racket-repl-mode' buffer associated with the current edit 
buffer.
+(defun racket--configure-repl-buffer-from-edit-buffer (edit-buffer repl-buffer)
+  "Configure REPL-BUFFER from EDIT-BUFFER.
 
-A value for the hook `racket--repl-configure-buffer-hook'.
-
-To be called when a `racket-mode' or `racket-hash-lang-mode' edit
-buffer is `current-buffer'.
+To be called upon each run command. EDIT-BUFFER is the buffer
+where the run command was issued, REPL-BUFFER is the
+`racket-repl-mode' buffer to be used.
 
 It is possible for multiple edit buffers to \"take turns\" using
 the same `racket-repl-mode' buffer, for successive `racket-run'
@@ -651,17 +650,14 @@ commands. Even if various edit buffers all use
 `racket-hash-lang-mode', the hash-lang for each may differ, e.g.
 one buffer is \"#lang racket\" while another is \"#lang
 rhombus\"."
-  ;;;(message "racket--hash-lang-configure-repl called from buffer %s" 
(buffer-name))
-  (let ((hl (eq major-mode 'racket-hash-lang-mode))
-(edit-buffer (current-buffer)))
-;; FIXME: On the very first run, the before-run hook is called
-;; before the REPL buffer exists so none of the following happens.
-(with-racket-repl-buffer
+  ;;;(message "%S" (list 'racket--configure-repl-buffer-from-edit-buffer 
edit-buffer repl-buffer))
+  (let ((hash-lang-p (with-current-buffer edit-buffer (eq major-mode 
'racket-hash-lang-mode
+(with-current-buffer repl-buffer
   ;; Clean up from previous hash-lang use of REPL, if any
   (racket--hash-lang-delete)
 
   ;; Maybe create hash-lang object, synchronously.
-  (when hl
+  (when hash-lang-p
 (setq-local
  racket--hash-lang-id
  (racket--cmd/await
@@ -693,14 +689,12 @@ rhombus\"."
   ;; nav
   (setq-local forward-sexp-function
   (with-current-buffer edit-buffer forward-sexp-function))
-  (racket-hash-lang-repl-mode (if hl 1 -1)) ;keybindings
-  (if hl
+  (racket-hash-lang-repl-mode (if hash-lang-p 1 -1)) ;keybindings
+  (if hash-lang-p
   (add-hook 'after-change-functions 
#'racket--hash-lang-after-change-hook t t)
 (remove-hook 'after-change-functions  
#'racket--hash-lang-after-change-hook t))
   (setq-local racket-repl-submit-function
-  (if hl #'racket-hash-lang-submit nil)
-(add-hook 'racket--repl-before-run-hook
-  #'racket--hash-lang-configure-repl-buffer-from-edit-buffer)
+  (if hash-lang-p #'racket-hash-lang-submit nil)
 
 (defun racket--hash-lang-repl-on-stop-back-end ()
   (dolist (buf (buffer-list))
diff --git a/racket-repl.el b/racket-repl.el
index a0631261df..79d4dfdd7f 100644
--- a/racket-repl.el
+++ b/racket-repl.el
@@ -479,6 +479,7 @@ Mode's REPL as intended, then consider using a plain Emacs
   (interactive "P")
   (racket-call-racket-repl-buffer-name-function)
   (racket--repl-ensure-buffer-and-session
+   nil
(lambda (repl-buffer)
  (racket--repl-refresh-namespace-symbols)
  (unless noselect
@@ -719,6 +720,10 @@ for end user customization is `racket-after-run-hook'.
 Here \"after\" means that the run has completed and e.g. the REPL
 is waiting at another prompt.")
 
+;; Don't (require 'racket-hash-lang). Mutual dependency. Instead:
+(declare-function racket--configure-repl-buffer-from-edit-buffer 
"racket-hash-lang" (edit-buf repl-buf))
+(autoload'racket--configure-repl-buffer-from-edit-buffer 
"racket-hash-lang")
+
 (defun racket--repl-run (&optional what extra-submods context-level callback)
   "Do an initial or subsequent run.
 
@@ -771,11 +776,6 @@ be nil which is equivalent to #\\='ignore."
   (message "")
   (racket-start-back-end)))
 
-  (racket--repl-delete-prompt-mark 'abandon)
-  (with-racket-repl-buffer ;if it already exists
-(set-marker racket--repl-run-mark (point)))
-  (run-hooks 'racket--repl-before

[elpa] externals-release/gpr-mode 9ca25ec5ca: Release version 1.0.5; packaging fix

2023-11-15 Thread Stephen Leake
branch: externals-release/gpr-mode
commit 9ca25ec5ca871f04b4704b39fb3ba129694e02ac
Author: Stephen Leake 
Commit: Stephen Leake 

Release version 1.0.5; packaging fix

* NEWS: Version.
* README:
* build.sh:
* gpr-mode.el:
---
 NEWS|  5 +
 README  |  2 +-
 build.sh| 12 
 gpr-mode.el |  4 ++--
 4 files changed, 16 insertions(+), 7 deletions(-)

diff --git a/NEWS b/NEWS
index 3d66dd122a..5a83acda4f 100644
--- a/NEWS
+++ b/NEWS
@@ -6,6 +6,11 @@ Please send gpr-mode bug reports to bug-gnu-em...@gnu.org, with
 'gpr-mode' in the subject. If possible, use M-x report-emacs-bug.
 
 
+* gpr mode 1.0.5
+10 Nov 2023
+
+** Fix alire.toml wisitoken version.
+
 * gpr mode 1.0.4
 20 Sep 2023
 
diff --git a/README b/README
index d7bbfe68eb..33154adba0 100644
--- a/README
+++ b/README
@@ -1,4 +1,4 @@
-Emacs gpr mode version 1.0.4
+Emacs gpr mode version 1.0.5
 
 gpr mode provides auto-casing, fontification, navigation, and
 indentation for gpr source code files.
diff --git a/build.sh b/build.sh
index ef62145bdd..21409016b0 100755
--- a/build.sh
+++ b/build.sh
@@ -1,6 +1,6 @@
 #!/bin/sh
 # Build executables for gpr mode.
-#build.sh 
+#build.sh options when not using Alire; 
 #e.g. 'build.sh -j0' : use all available processors to compile
 # 'build.sh -wn' : treat warnings as warnings.
 # 'build.sh -vh' : Verbose output (high verbosity)
@@ -8,15 +8,17 @@
 # See install.sh for install
 
 if type alr; then
+# alr can be installed from https://alire.ada.dev/
 echo "building gpr-mode executables via Alire"
-alr get emacs_gpr_mode~1.0.4
+
+alr get emacs_gpr_mode~1.0.5
 cd emacs_gpr_mode_*; alr build --release
 
 elif type gprbuild; then
 echo "building gpr-mode executables via gnat compiler"
 
-if [ -d ../wisi-4.3.? ]; then
-WISI_DIR=`ls -d ../wisi-4.3.?`
+if [ -d ../wisi-4.3.0 ]; then
+WISI_DIR=`ls -d ../wisi-4.3.*`
 fi
 
 args=`echo -DELPA="yes" $WISI_DIR/wisi.gpr.gp $WISI_DIR/wisi.gpr`
@@ -31,6 +33,8 @@ elif type gprbuild; then
 
 gprclean -r -P gpr_mode_wisi_parse.gpr -aP$WISI_DIR
 
+# We don't generate the parser code here (unlike ada-mode),
+# because it is small enough to keep in ELPA
 gprbuild -p -j8 -P gpr_mode_wisi_parse.gpr -aP $WISI_DIR "$@"
 
 else
diff --git a/gpr-mode.el b/gpr-mode.el
index e58ad88bc0..0a33d4320b 100644
--- a/gpr-mode.el
+++ b/gpr-mode.el
@@ -4,8 +4,8 @@
 
 ;; Author: Stephen Leake 
 ;; Maintainer: Stephen Leake 
-;; Version: 1.0.4
-;; package-requires: ((emacs "25.3") (wisi "4.3.0") (gnat-compiler "1.0.3"))
+;; Version: 1.0.5
+;; package-requires: ((emacs "25.3") (wisi "4.3.2") (gnat-compiler "1.0.3"))
 ;; URL: https://stephe-leake.org/ada/wisitoken.html
 
 ;; This file is part of GNU Emacs.



[elpa] externals/gpr-mode updated (ed12dc7327 -> 9ca25ec5ca)

2023-11-15 Thread Stephen Leake
stephen_leake pushed a change to branch externals/gpr-mode.

  from  ed12dc7327 Release version 1.0.4
   new  9ca25ec5ca Release version 1.0.5; packaging fix


Summary of changes:
 NEWS|  5 +
 README  |  2 +-
 build.sh| 12 
 gpr-mode.el |  4 ++--
 4 files changed, 16 insertions(+), 7 deletions(-)



[elpa] externals/consult d7a0415c4f: consult--jump-preview: Simplify

2023-11-15 Thread ELPA Syncer
branch: externals/consult
commit d7a0415c4ff3a84b696e5ddbc2ef15d0d45c405d
Author: Daniel Mendler 
Commit: Daniel Mendler 

consult--jump-preview: Simplify
---
 consult.el | 141 -
 1 file changed, 64 insertions(+), 77 deletions(-)

diff --git a/consult.el b/consult.el
index 3243b166fb..9021a9a671 100644
--- a/consult.el
+++ b/consult.el
@@ -1476,14 +1476,10 @@ See `isearch-open-necessary-overlays' and 
`isearch-open-overlay-temporary'."
   "Ensure that buffer of marker POS is displayed, return t if successful."
   (or (not (markerp pos))
   ;; Switch to buffer if it is not visible
-  (if-let ((buf (marker-buffer pos)))
-  (or (and (eq (current-buffer) buf) (eq (window-buffer) buf))
-  (consult--buffer-action buf 'norecord)
-  t)
-;; Only print a message, since an error would disable the minibuffer
-;; post command.
-(message "Buffer is dead")
-nil)))
+  (when-let ((buf (marker-buffer pos)))
+(or (and (eq (current-buffer) buf) (eq (window-buffer) buf))
+(consult--buffer-action buf 'norecord)
+t
 
 (defun consult--jump (pos)
   "Jump to POS.
@@ -1511,73 +1507,65 @@ position and run `consult-after-jump-hook'."
 (defun consult--jump-preview ()
   "The preview function used if selecting from a list of candidate positions.
 The function can be used as the `:state' argument of `consult--read'."
-  (let ((orig-min (point-min-marker))
-(orig-max (point-max-marker))
-(orig-pos (point-marker))
-restore)
-(set-marker-insertion-type orig-max t) ;; Grow when text is inserted
+  (let (restore)
 (lambda (action cand)
   (when (eq action 'preview)
 (mapc #'funcall restore)
 (setq restore nil)
-(if-let ((pos (or (car-safe cand) cand))) ;; Candidate can be previewed
-(when (consult--jump-ensure-buffer pos)
-  (let ((saved-min (point-min-marker))
-(saved-max (point-max-marker))
-(saved-pos (point-marker)))
-(set-marker-insertion-type saved-max t) ;; Grow when text is 
inserted
-(push (lambda ()
-(when-let ((buf (marker-buffer saved-pos)))
-  (with-current-buffer buf
-(narrow-to-region saved-min saved-max)
-(goto-char saved-pos)
-(set-marker saved-pos nil)
-(set-marker saved-min nil)
-(set-marker saved-max nil
-  restore))
-  (unless (= (goto-char pos) (point)) ;; Widen if jump failed
-(widen)
-(goto-char pos))
-  (setq restore (nconc (consult--invisible-open-temporarily) 
restore))
-  ;; Ensure that cursor is properly previewed 
(gh:minad/consult#764)
-  (unless (eq cursor-in-non-selected-windows 'box)
-(let ((orig cursor-in-non-selected-windows)
-  (buf (current-buffer)))
-  (push
-   (if (local-variable-p 'cursor-in-non-selected-windows)
-   (lambda ()
- (when (buffer-live-p buf)
-   (with-current-buffer buf
- (setq-local cursor-in-non-selected-windows 
orig
- (lambda ()
-   (when (buffer-live-p buf)
- (with-current-buffer buf
-   (kill-local-variable 
'cursor-in-non-selected-windows)
-   restore)
-  (setq-local cursor-in-non-selected-windows 'box)))
-  ;; Match previews
-  (let ((overlays
- (list (save-excursion
- (let ((vbeg (progn (beginning-of-visual-line) 
(point)))
-   (vend (progn (end-of-visual-line) (point)))
-   (end (pos-eol)))
-   (consult--make-overlay vbeg (if (= vend end) 
(1+ end) vend)
-  'face 
'consult-preview-line
-  'window (selected-window)
-  'priority 1))
-(dolist (match (cdr-safe cand))
-  (push (consult--make-overlay (+ (point) (car match))
-   (+ (point) (cdr match))
-   'face 'consult-preview-match
-   'window (selected-window)
-   'priority 2)
-overlays))
-(push (lambda () (mapc #'delete-overlay overlays)) restore))
-  (run-h

[elpa] externals/vertico d6971cc1ef: README: Update section about Tramp completion

2023-11-15 Thread ELPA Syncer
branch: externals/vertico
commit d6971cc1ef87a69cb69cb79fca423fea4ac8a76d
Author: Daniel Mendler 
Commit: Daniel Mendler 

README: Update section about Tramp completion

https://github.com/oantolin/orderless/issues/150
---
 README.org | 25 ++---
 1 file changed, 10 insertions(+), 15 deletions(-)

diff --git a/README.org b/README.org
index 7c54e0cc65..c957a11b0c 100644
--- a/README.org
+++ b/README.org
@@ -664,16 +664,12 @@ exiting with the empty string is possible by pressing 
=RET= only.
 
 ** Tramp hostname and username completion
 
-*NOTE:* On upcoming Emacs 30 and Tramp 2.6.0.2 the workarounds described in 
this
-section are not necessary anymore, since the relevant completion tables have
-been improved.
-
-In combination with Orderless or other non-prefix completion styles like
-=substring= or =flex=, host names and user names are not made available for
-completion after entering =/ssh:=. In order to avoid this problem, the =basic=
-completion style should be specified for the file completion category, such 
that
-=basic= is tried before =orderless=. This can be achieved by putting =basic= 
first in
-the completion style overrides for the file completion category.
+In combination with Orderless, protocols, host names and user names are not
+filtered on Emacs 29 or even made available for completion after entering 
=/ssh:=
+on Emacs 28 and older. In order to avoid this problem, the =basic= completion
+style should be specified for the file completion category, such that =basic= 
is
+tried before =orderless=. This can be achieved by putting =basic= first in the
+completion style overrides for the file completion category.
 
 #+begin_src emacs-lisp
 (setq completion-styles '(orderless basic)
@@ -681,11 +677,10 @@ the completion style overrides for the file completion 
category.
   completion-category-overrides '((file (styles basic 
partial-completion
 #+end_src
 
-If you are familiar with the =completion-style= machinery and want to dig a bit
-deeper, you may also define a custom completion style which sets in only for
-remote files. The custom completion style ensures that you can always match
-substrings within non-remote file names, since =orderless= will stay the 
preferred
-style for non-remote files.
+If you are familiar with the =completion-style= machinery, you may also define 
a
+custom completion style which activates only for remote files. The custom
+completion style ensures that you can always match substrings within non-remote
+file names, since =orderless= will stay the preferred style for non-remote 
files.
 
 #+begin_src emacs-lisp
 (defun basic-remote-try-completion (string table pred point)



[nongnu] elpa/xah-fly-keys 1763784cde 1/3: url change for some function docstrings

2023-11-15 Thread ELPA Syncer
branch: elpa/xah-fly-keys
commit 1763784cde58a251eeb45114e6b29ed76f7aab31
Author: Xah Lee 
Commit: Xah Lee 

url change for some function docstrings
---
 xah-fly-keys.el | 32 ++--
 1 file changed, 14 insertions(+), 18 deletions(-)

diff --git a/xah-fly-keys.el b/xah-fly-keys.el
index 35d12907a9..91c5918a46 100644
--- a/xah-fly-keys.el
+++ b/xah-fly-keys.el
@@ -4,7 +4,7 @@
 
 ;; Author: Xah Lee ( http://xahlee.info/ )
 ;; Maintainer: Xah Lee 
-;; Version: 24.18.20231112185021
+;; Version: 24.18.20231114193811
 ;; Created: 2013-09-10
 ;; Package-Requires: ((emacs "27"))
 ;; Keywords: convenience, vi, vim, ergoemacs, keybinding
@@ -2025,8 +2025,8 @@ Version: 2021-01-05 2023-08-25 2023-08-31 2023-09-19"
   "Select the current/next block plus 1 blankline.
 If region is active, extend selection downward by block.
 
-URL `http://xahlee.info/emacs/emacs/modernization_mark-word.html'
-Version: 2019-12-26 2021-04-04 2021-08-13"
+URL `http://xahlee.info/emacs/emacs/emacs_select_text_block.html'
+Version: 2019-12-26 2021-08-13 2023-11-14"
   (interactive)
   (if (region-active-p)
   (re-search-forward "\n[ \t]*\n[ \t]*\n*" nil :move)
@@ -2041,8 +2041,8 @@ Version: 2019-12-26 2021-04-04 2021-08-13"
   "Select current line. If region is active, extend selection downward by line.
 If `visual-line-mode' is on, consider line as visual line.
 
-URL `http://xahlee.info/emacs/emacs/modernization_mark-word.html'
-Version: 2017-11-01 2021-03-19 2023-07-16"
+URL `http://xahlee.info/emacs/emacs/emacs_select_line.html'
+Version: 2017-11-01 2023-07-16 2023-11-14"
   (interactive)
   (if (region-active-p)
   (if visual-line-mode
@@ -2071,8 +2071,8 @@ when there is no selection,
 
 when there is a selection, the selection extension behavior is still 
experimental. But when cursor is on a any type of bracket (parenthesis, quote), 
it extends selection to outer bracket.
 
-URL `http://xahlee.info/emacs/emacs/modernization_mark-word.html'
-Version: 2020-02-04 2023-07-23 2023-08-02 2023-08-24"
+URL `http://xahlee.info/emacs/emacs/emacs_extend_selection.html'
+Version: 2020-02-04 2023-08-24 2023-11-14"
   (interactive)
 
   (cond
@@ -2173,13 +2173,13 @@ Version: 2020-02-04 2023-07-23 2023-08-02 2023-08-24"
 
 (defun xah-select-text-in-quote ()
   "Select text between the nearest left and right delimiters.
-Delimiters here includes the following chars: \" ` and anything in 
`xah-brackets'.
+Delimiters here includes QUOTATION MARK, GRAVE ACCENT, and anything in 
`xah-brackets'.
 This command ignores nesting. For example, if text is
-(a(b)c▮)
-the selected char is “c”, not “a(b)c”.
+「(a(b)c▮)」
+the selected char is 「c」, not 「a(b)c」.
 
-URL `http://xahlee.info/emacs/emacs/modernization_mark-word.html'
-Version: 2020-11-24 2023-07-16 2023-07-23"
+URL `http://xahlee.info/emacs/emacs/emacs_select_quote_text.html'
+Version: 2020-11-24 2023-07-23 2023-11-14"
   (interactive)
   (let ((xskipChars (concat "^\"`" (mapconcat #'identity xah-brackets ""
 (skip-chars-backward xskipChars)
@@ -2188,13 +2188,9 @@ Version: 2020-11-24 2023-07-16 2023-07-23"
 
 (defun xah-cut-text-in-quote ()
   "Cut text between the nearest left and right delimiters.
-Delimiters here includes the following chars: \" ` and anything in 
`xah-brackets'.
-This command ignores nesting. For example, if text is
-(a(b)c▮)
-the selected char is “c”, not “a(b)c”.
+See `xah-select-text-in-quote'
 
-URL `http://xahlee.info/emacs/emacs/modernization_mark-word.html'
-Version: 2023-07-23"
+Version: 2023-07-23 2023-11-14"
   (interactive)
   (let ((xskipChars (concat "^\"`" (mapconcat #'identity xah-brackets ""
 (skip-chars-backward xskipChars)



[nongnu] elpa/xah-fly-keys 68335b2a90 3/3: fix bug 33. now xah-temp-dir-path is created if no exist.

2023-11-15 Thread ELPA Syncer
branch: elpa/xah-fly-keys
commit 68335b2a903d9d9163129e92bbbf8927599739a6
Author: Xah Lee 
Commit: Xah Lee 

fix bug 33. now xah-temp-dir-path is created if no exist.
---
 xah-fly-keys.el | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/xah-fly-keys.el b/xah-fly-keys.el
index e35774a6bc..25a3267177 100644
--- a/xah-fly-keys.el
+++ b/xah-fly-keys.el
@@ -4,7 +4,7 @@
 
 ;; Author: Xah Lee ( http://xahlee.info/ )
 ;; Maintainer: Xah Lee 
-;; Version: 24.18.20231114222037
+;; Version: 24.18.20231115084756
 ;; Created: 2013-09-10
 ;; Package-Requires: ((emacs "27"))
 ;; Keywords: convenience, vi, vim, ergoemacs, keybinding
@@ -2358,6 +2358,7 @@ Version: 2016-06-19 2023-09-27 2023-10-25"
 xah-temp-dir-path
 (format-time-string "%Y%m%d_%H%M%S")
 (random #xf
+  (when (not (file-exists-p xah-temp-dir-path)) (make-directory 
xah-temp-dir-path))
   (write-region (point-min) (point-max) xnewName)
   (xah-add-to-recently-closed (buffer-name) xnewName)
   (kill-buffer)))



[nongnu] elpa/xah-fly-keys updated (708199618a -> 68335b2a90)

2023-11-15 Thread ELPA Syncer
elpasync pushed a change to branch elpa/xah-fly-keys.

  from  708199618a major update on xah-smart-delete and related. 
xah-smart-delete now support extension. e.g. if in html mode, pressing the key 
deletes a whole html element, instead of bracketed text. Mechanism is via the 
var xah-smart-delete-dispatch. xah-delete-backward-char-or-bracket-text 
removed, replaced by xah-delete-bracket-text-backward. 
xah-delete-string-backward new. Issues: alpha version. might be some bug, also 
design might improve in coming weeks. e.g. right now, if a ma [...]
   new  1763784cde url change for some function docstrings
   new  eb2e552a72 url change for some function docstrings
   new  68335b2a90 fix bug 33. now xah-temp-dir-path is created if no exist.


Summary of changes:
 xah-fly-keys.el | 41 +++--
 1 file changed, 19 insertions(+), 22 deletions(-)



[nongnu] elpa/xah-fly-keys eb2e552a72 2/3: url change for some function docstrings

2023-11-15 Thread ELPA Syncer
branch: elpa/xah-fly-keys
commit eb2e552a72774d5fa212d789d67de0333f2d4ba9
Author: Xah Lee 
Commit: Xah Lee 

url change for some function docstrings
---
 xah-fly-keys.el | 10 +-
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/xah-fly-keys.el b/xah-fly-keys.el
index 91c5918a46..e35774a6bc 100644
--- a/xah-fly-keys.el
+++ b/xah-fly-keys.el
@@ -4,7 +4,7 @@
 
 ;; Author: Xah Lee ( http://xahlee.info/ )
 ;; Maintainer: Xah Lee 
-;; Version: 24.18.20231114193811
+;; Version: 24.18.20231114222037
 ;; Created: 2013-09-10
 ;; Package-Requires: ((emacs "27"))
 ;; Keywords: convenience, vi, vim, ergoemacs, keybinding
@@ -989,8 +989,8 @@ Version: 2020-11-01 2023-03-31 2023-08-25 2023-09-29"
   "Toggle the letter case of current word or selection.
 Always cycle in this order: Init Caps, ALL CAPS, all lower.
 
-URL `http://xahlee.info/emacs/emacs/modernization_upcase-word.html'
-Version: 2020-06-26"
+URL `http://xahlee.info/emacs/emacs/emacs_toggle_letter_case.html'
+Version: 2020-06-26 2023-11-14"
   (interactive)
   (let ( (deactivate-mark nil) xp1 xp2)
 (if (region-active-p)
@@ -1021,8 +1021,8 @@ Version: 2020-06-26"
 (defun xah-toggle-previous-letter-case ()
   "Toggle the letter case of the letter to the left of cursor.
 
-URL `http://xahlee.info/emacs/emacs/modernization_upcase-word.html'
-Version: 2015-12-22"
+URL `http://xahlee.info/emacs/emacs/emacs_toggle_letter_case.html'
+Version: 2015-12-22 2023-11-14"
   (interactive)
   (let ((case-fold-search nil))
 (left-char 1)



[elpa] externals/company f1b36de47c: Remove outdated comment

2023-11-15 Thread ELPA Syncer
branch: externals/company
commit f1b36de47ced087c7e0d7a55be3f655ddb0adbb6
Author: Dmitry Gutov 
Commit: Dmitry Gutov 

Remove outdated comment
---
 company.el | 2 --
 1 file changed, 2 deletions(-)

diff --git a/company.el b/company.el
index 00bdd930bf..89f68fdf93 100644
--- a/company.el
+++ b/company.el
@@ -2960,8 +2960,6 @@ from the candidates list.")
 (string-width str)))
 
 ;; TODO: Add more tests!
-;; FIXME: Could work better with text-scale-mode.  But that requires copying
-;; face-remapping-alist into " *string-pixel-width*".
 (defun company-safe-pixel-substring (str from &optional to)
   (let ((from-chars 0)
 (to-chars 0)



[nongnu] elpa/haskell-mode 8d0f44bfe2: Release 17.5

2023-11-15 Thread ELPA Syncer
branch: elpa/haskell-mode
commit 8d0f44bfe2a9ab6b0969c9bafb75089f315ff5ae
Author: Steve Purcell 
Commit: Steve Purcell 

Release 17.5
---
 Makefile  | 2 +-
 NEWS  | 4 
 doc/haskell-mode.texi | 4 ++--
 haskell-mode.el   | 2 +-
 4 files changed, 8 insertions(+), 4 deletions(-)

diff --git a/Makefile b/Makefile
index a17910e6d4..af684535b1 100644
--- a/Makefile
+++ b/Makefile
@@ -10,7 +10,7 @@
 # We should have a script that changes it everywhere it is needed and
 # syncs it with current git tag.
 #
-VERSION = 17.4
+VERSION = 17.5
 
 INSTALL_INFO = install-info
 
diff --git a/NEWS b/NEWS
index 222a0f7c65..a837abd0d3 100644
--- a/NEWS
+++ b/NEWS
@@ -6,6 +6,10 @@ This file uses Org mode. Some useful (default) key-bindings:
  - Use "" to cycle visibility of all nodes
  - Use "C-c C-o" to open links
 
+* Changes in 17.5
+
+- See [[https://github.com/haskell/haskell-mode/compare/v17.4...v17.5][Git 
history]]
+
 * Changes in 17.4
 
 - See [[https://github.com/haskell/haskell-mode/compare/v17.3...v17.4][Git 
history]]
diff --git a/doc/haskell-mode.texi b/doc/haskell-mode.texi
index fb65442a1c..855ef92f5b 100644
--- a/doc/haskell-mode.texi
+++ b/doc/haskell-mode.texi
@@ -2,7 +2,7 @@
 @c %**start of header
 @setfilename haskell-mode.info
 @documentencoding UTF-8
-@settitle Haskell Mode 17.4
+@settitle Haskell Mode 17.5
 @c %**end of header
 
 @c Macro used to mark references of defcustom variables
@@ -17,7 +17,7 @@
 @end direntry
 
 @copying
-This manual is for Haskell mode, version 17.4
+This manual is for Haskell mode, version 17.5
 
 Copyright @copyright{} 2013-2017 Haskell Mode contributors.
 
diff --git a/haskell-mode.el b/haskell-mode.el
index 670866a79a..f8e7c3fb35 100644
--- a/haskell-mode.el
+++ b/haskell-mode.el
@@ -5,7 +5,7 @@
 
 ;; Copyright © 1992, 1997-1998  Simon Marlow, Graeme E Moss, and Tommy Thorn
 
-;; Version: 17.4
+;; Version: 17.5
 ;; Package-Requires: ((emacs "25.1"))
 ;; Keywords: haskell cabal ghc repl languages
 ;; URL: https://github.com/haskell/haskell-mode



[nongnu] elpa/racket-mode 296de3c155: racket-describe: truncate-lines, disable line numbers; fixes #678

2023-11-15 Thread ELPA Syncer
branch: elpa/racket-mode
commit 296de3c15580805f2d84dd30e01eb9b12f18bc3f
Author: Greg Hendershott 
Commit: Greg Hendershott 

racket-describe: truncate-lines, disable line numbers; fixes #678
---
 racket-describe.el | 14 +++---
 1 file changed, 11 insertions(+), 3 deletions(-)

diff --git a/racket-describe.el b/racket-describe.el
index 43cc6ebcbf..6c95763c57 100644
--- a/racket-describe.el
+++ b/racket-describe.el
@@ -128,9 +128,13 @@ anchor. If numberp, move to that position."
  (concat path (cond ((stringp goto) (concat " " goto))
 ((numberp goto) (format " %s" goto
  'face '(:height 0.75)))
-  (cl-macrolet ((disable (id) `(and (boundp ',id) ,id (fboundp ',id) (,id 
-1
-(disable linum-mode)
-(disable display-line-numbers-mode))
+  ;; Although `shr' carefully fills to fit window width, if user
+  ;; resizes window or changes text scaling, we don't want it to wrap.
+  (setq truncate-lines t)
+  ;; Modes that show line numbers in the buffer just eat up valuable
+  ;; space; disable. (Also we'll set a text prop below.)
+  (when (fboundp 'linum-mode)(linum-mode -1))
+  (when (fboundp 'display-line-numbers-mode) (display-line-numbers-mode -1))
   (let ((buffer-read-only nil))
 (erase-buffer)
 (let ((shr-use-fonts nil)
@@ -152,6 +156,10 @@ anchor. If numberp, move to that position."
 (goto-char (point-min))
 (while (re-search-forward (string racket--scribble-temp-nbsp) nil t)
   (replace-match " " t t))
+;; Just in case disabling `display-line-numbers-mode' doesn't
+;; suffice (#678), as well as to cover e.g. user enabling
+;; `global-display-line-numbers-mode' later:
+(put-text-property (point-min) (point-max) 'display-line-numbers-disable t)
 (racket--describe-goto goto)))
 
 (defun racket--describe-goto (goto)



[elpa] externals/company e22230561e: company-safe-pixel-substring: Bind inhibit-read-only just in case

2023-11-15 Thread ELPA Syncer
branch: externals/company
commit e22230561ef559b032b4a2d79bef686d494b8ea6
Author: Dmitry Gutov 
Commit: Dmitry Gutov 

company-safe-pixel-substring: Bind inhibit-read-only just in case

Seems like it fixes #1428
---
 company.el | 1 +
 1 file changed, 1 insertion(+)

diff --git a/company.el b/company.el
index 89f68fdf93..0b75547a19 100644
--- a/company.el
+++ b/company.el
@@ -2968,6 +2968,7 @@ from the candidates list.")
 front back
 (orig-buf (window-buffer))
 (bis buffer-invisibility-spec)
+(inhibit-read-only t)
 window-configuration-change-hook)
 (with-current-buffer (get-buffer-create " *company-sps*")
   (unwind-protect



[elpa] externals/srht ce6892bc59 3/5: srht: srht-with-no-message: New macro.

2023-11-15 Thread ELPA Syncer
branch: externals/srht
commit ce6892bc59fa8a396a8af691679a5ab140796384
Author: Aleksandr Vityazev 
Commit: Aleksandr Vityazev 

srht: srht-with-no-message: New macro.

* lisp/srht (srht-gql-mutation): New macro.
Inhibit auth-source messages.
(srht--view): Fix.
---
 lisp/srht.el | 61 +++-
 1 file changed, 36 insertions(+), 25 deletions(-)

diff --git a/lisp/srht.el b/lisp/srht.el
index 3b67dec13b..6aa1d5bebe 100644
--- a/lisp/srht.el
+++ b/lisp/srht.el
@@ -79,6 +79,12 @@ an error."
 (error "srht-token must not be empty"))
   token)))
 
+(defmacro srht-with-no-message (&rest body)
+  "Evaluate BODY with messages are not displayed."
+  `(let ((inhibit-message t)
+ (message-log-max nil))
+ ,@body))
+
 (cl-defun srht--build-uri-string (scheme &key host path query)
   "Construct a URI string.
 SCHEME should be a symbol.  HOST should be strings or nil
@@ -155,7 +161,9 @@ fails with one argument, a `plz-error' struct."
 (content-type (or form "application/json")))
 (plz method uri
   :headers `(,(cons "Content-Type" content-type)
- ,(cons "Authorization" (concat "token " (srht-token 
"sr.ht"
+ ,(cons "Authorization"
+(concat "token " (srht-with-no-message
+  (srht-token "sr.ht")
   :body body
   :then then
   :else else
@@ -171,7 +179,9 @@ fails with one argument, a `plz-error' struct."
 (content-type (or form "application/json")))
 (plz 'post uri
   :headers `(,(cons "Content-Type" content-type)
- ,(cons "Authorization" (format "Bearer %s" (srht-token 
token-host
+ ,(cons "Authorization"
+(format "Bearer %s" (srht-with-no-message
+ (srht-token token-host)
   :body query
   :then then
   :else else
@@ -320,29 +330,30 @@ object under point."
   (declare (indent 2))
   (let ((buffer (get-buffer-create "*Sourcehut repositories*")))
 (with-current-buffer buffer
-  (srht--make-vtable
-   :columns '("Name"
-  (:name "Visibility"
-   :formatter (lambda (val) (when val (downcase val
-  (:name "Created"
-   :formatter srht--format-date
-   :width 10)
-  (:name "Updated"
-   :formatter srht--format-date
-   :width 10))
-   :objects (plist-get repositories (intern instance))
-   :getter (lambda (object column vtable)
- (pcase (srht--vtable-colum vtable column)
-   ("Name" (plist-get object :name))
-   ("Visibility" (plist-get object :visibility))
-   ("Created" (plist-get object :created))
-   ("Updated" (plist-get object :updated
-   :separator-width 5
-   :actions actions
-   :keymap (srht--define-keymap
- "q" #'kill-current-buffer
- "n" #'next-line
- "p" #'previous-line))
+  (let ((inhibit-read-only t))
+(srht--make-vtable
+ :columns '("Name"
+(:name "Visibility"
+ :formatter (lambda (val) (when val (downcase val
+(:name "Created"
+ :formatter srht--format-date
+ :width 10)
+(:name "Updated"
+ :formatter srht--format-date
+ :width 10))
+ :objects (plist-get repositories (intern instance))
+ :getter (lambda (object column vtable)
+   (pcase (srht--vtable-colum vtable column)
+ ("Name" (plist-get object :name))
+ ("Visibility" (plist-get object :visibility))
+ ("Created" (plist-get object :created))
+ ("Updated" (plist-get object :updated
+ :separator-width 5
+ :actions actions
+ :keymap (srht--define-keymap
+   "q" #'kill-current-buffer
+   "n" #'next-line
+   "p" #'previous-line)))
   (read-only-mode)
   (hl-line-mode))
 (switch-to-buffer buffer)))



[elpa] externals/srht 0704d02564 2/5: srht-gql: srht-gql-mutation: Fix.

2023-11-15 Thread ELPA Syncer
branch: externals/srht
commit 0704d02564f65166b0f6a434ec5b60077fd91d29
Author: Aleksandr Vityazev 
Commit: Aleksandr Vityazev 

srht-gql: srht-gql-mutation: Fix.
---
 lisp/srht-gql.el | 36 +++-
 1 file changed, 27 insertions(+), 9 deletions(-)

diff --git a/lisp/srht-gql.el b/lisp/srht-gql.el
index 366758d766..404ddd8c72 100644
--- a/lisp/srht-gql.el
+++ b/lisp/srht-gql.el
@@ -28,6 +28,19 @@
 (declare-function json-encode "json" (object))
 (declare-function map-apply "map")
 
+(defsubst srht-gql--kw->str (kw)
+  (substring (symbol-name kw) 1))
+
+(defun srht-gql--serialize-plist (f plist)
+  (format
+   "{%s}"
+   (mapconcat
+(lambda (el)
+  (pcase el
+((pred keywordp) (concat (srht-gql--kw->str el) ": "))
+(_ (funcall f el
+plist " ")))
+
 (defun srht-gql--string (val)
   (pcase val
 ((pred symbolp)
@@ -35,15 +48,19 @@
 ((pred integerp)
  (number-to-string val))
 ((pred stringp)
- (json-encode val
+ (json-encode val))
+((pred plistp)
+ (srht-gql--serialize-plist #'srht-gql--string val
 
 (defun srht-gql--string-join (plist)
-  (let ((lst (map-apply (lambda (kw val)
-  (if val
-  (concat (substring (symbol-name kw) 1) ": "
-  (srht-gql--string val))
-""))
-plist)))
+  (let ((lst (remove
+  ""
+  (map-apply (lambda (kw val)
+   (if val
+   (concat (srht-gql--kw->str kw) ": "
+   (srht-gql--string val))
+ ""))
+ plist
 (mapconcat #'identity lst ", ")))
 
 (defun srht-gql--serialize-args (args)
@@ -52,7 +69,7 @@
 (format "(%s)" (srht-gql--string-join args
 
 (defun srht-gql--serialize-fields (lst)
-  "Serialize all type fields from the LST."
+  "Serialize fields from the LST."
   (let* ((type (plist-get lst :type))
  (args (plist-get lst :arguments))
  (fields (if type (plist-get lst :fields) lst)))
@@ -78,7 +95,8 @@
   (json-encode `(("query" . ,(srht-gql-serialize base-query)
 
 (defun srht-gql-mutation (base-query)
-  (json-encode `(("mutation" . ,(srht-gql-serialize base-query)
+  (json-encode
+   `(("query" . ,(concat "mutation" (srht-gql-serialize base-query))
 
 (provide 'srht-gql)
 ;;; srht-gql.el ends here



[elpa] externals/srht 7322b06ffe 4/5: srht-git: use graphql api in commands.

2023-11-15 Thread ELPA Syncer
branch: externals/srht
commit 7322b06ffeaa0fcf30f6df9ff9c5a46469e9ebe2
Author: Aleksandr Vityazev 
Commit: Aleksandr Vityazev 

srht-git: use graphql api in commands.
---
 lisp/srht-git.el | 332 ++-
 1 file changed, 204 insertions(+), 128 deletions(-)

diff --git a/lisp/srht-git.el b/lisp/srht-git.el
index 50bbb33bf4..b9d6e248e9 100644
--- a/lisp/srht-git.el
+++ b/lisp/srht-git.el
@@ -27,6 +27,7 @@
 
 (require 'srht)
 (require 'srht-gql)
+(require 'transient)
 
 (defvar srht-git-repositories nil
   "Authenticated user repos plist of the form (:instance repos ...).")
@@ -48,7 +49,7 @@ subsequent request, you'll get the next page.")
 
 (defun srht-git--gql-next-query (cursor)
   "Created next query from CURSOR."
-  (pcase-let* ((plist (copy-sequence srht-git-gql-base-query))
+  (pcase-let* ((plist (seq-copy srht-git-gql-base-query))
((map (:fields (seq n lst))) plist))
 (plist-put
  plist
@@ -77,6 +78,208 @@ Or CALLBACK may be `sync' to make a synchronous request."
 pointer (append results ac)))
   ac)))
 
+(defun srht-git--candidates (instance)
+  "Return completion candidates for INSTANCE."
+  (seq-map (pcase-lambda ((map (:created c)
+   (:visibility v)
+   (:name n)))
+ (list n c v))
+   (plist-get
+(or srht-git-repositories
+(srht-put srht-git-repositories
+  instance (srht-git-repos instance)))
+(intern instance
+
+(defun srht-git--annot (instance str)
+  "Function to add annotations in the completions buffer for STR and INSTANCE."
+  (pcase-let (((seq _n created visibility)
+   (assoc str (srht-git--candidates instance
+(srht-annotation str visibility created)))
+
+(defun srht-git--select-repo (instance)
+  "Read a repository name in the minibuffer, with completion.
+INSTANCE is the instance name of the Sourcehut instance."
+  (srht-read-with-annotaion "Select repository: "
+(srht-git--candidates instance)
+(lambda (str) (srht-git--annot instance str))
+'sourcehut-git-repository))
+
+(defun srht-git--message (instance &rest args)
+  "Display a message at the bottom of the screen.
+Update repositories from INSTANCE."
+  (declare (indent 1))
+  (apply #'message args)
+  (srht-put srht-git-repositories
+instance (srht-git-repos instance)))
+
+(defvar srht-git-repo-name-history nil
+  "History variable.")
+
+(defun srht-git--read-non-empty (prompt initial-input history)
+  "Read non-empty string from the minibuffer, prompting with string PROMPT.
+INITIAL-INPUT, HISTORY (see `read-from-minibuffer')."
+  (save-match-data
+(cl-block nil
+  (while t
+(let ((str (read-from-minibuffer prompt initial-input nil nil 
history)))
+  (unless (string-empty-p str)
+(cl-return str)))
+(message "Please enter non-empty!")
+(sit-for 1)
+
+;;;###autoload (autoload 'srht-git-repo-create "srht-git" nil t)
+(transient-define-prefix srht-git-repo-create ()
+  "Prefix that just shows off many typical infix types."
+  ["Repo input"
+   ("i" "instance" "instance="
+:always-read t
+:init-value (lambda (obj) (oset obj value (seq-first srht-instances
+   ("n" "name" "name="
+:always-read t
+:prompt "Git repository name: "
+:reader srht-git--read-non-empty)
+   ("v" "visibility" "visibility="
+:choices (public unlisted private)
+:always-read t
+:allow-empty nil)
+   ("d" "description" "description="
+:always-read t
+:prompt "Repository description (markdown): ")
+   ("u" "clone URL" "cloneUrl="
+:always-read t
+:prompt "Repository will be cloned from the given URL: "
+;; TODO: add custom reader
+)]
+  ["New repository"
+   ("c" "create repository" srht-git-repo-create0)])
+
+(defun srht-git--transient-value (arg)
+  "Return the value of ARG."
+  (transient-arg-value arg (transient-args 'srht-git-repo-create)))
+
+(transient-define-suffix srht-git-repo-create0 ()
+  "Create the NAME repository on an instance with the instance name INSTANCE.
+Set VISIBILITY and DESCRIPTION."
+  (interactive)
+  (let ((instance (srht-git--transient-value "instance="))
+(name (let ((val (srht-git--transient-value "name=")))
+(if (or (null val) (string-empty-p val))
+(error "Repository name required")
+  val)))
+(visibility (let ((val (srht-git--transient-value "visibility=")))
+  (if (or (null val) (string-empty-p val))
+  (error "Visibility required")
+(intern (upcase val)
+(description (srht-git--transient-value "description="))
+(cloneurl (srht-git--transient-value "cloneUrl=")))
+(srht--gql-api-request
+ :instance instance
+ :service 'git
+ :token-host "git.sr.ht"
+ :query (srht-gql-mutation
+ 

[elpa] externals/srht 70c4d346e9 1/5: srht-git: srht-git-gql-base-query: Add description to fields.

2023-11-15 Thread ELPA Syncer
branch: externals/srht
commit 70c4d346e91c647dd1cb83982d357eceb44cc808
Author: Aleksandr Vityazev 
Commit: Aleksandr Vityazev 

srht-git: srht-git-gql-base-query: Add description to fields.
---
 lisp/srht-git.el | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/lisp/srht-git.el b/lisp/srht-git.el
index 5218c28258..50bbb33bf4 100644
--- a/lisp/srht-git.el
+++ b/lisp/srht-git.el
@@ -44,7 +44,7 @@ subsequent request, you'll get the next page.")
   :fields
   (cursor
(:type results
-:fields(id name created updated visibility)))
+:fields(id name description created updated visibility)))
 
 (defun srht-git--gql-next-query (cursor)
   "Created next query from CURSOR."



[elpa] externals/srht f641152cd6 5/5: Add transient to required packages.

2023-11-15 Thread ELPA Syncer
branch: externals/srht
commit f641152cd61f850981f33a241bbb150bc218a6c6
Author: Aleksandr Vityazev 
Commit: Aleksandr Vityazev 

Add transient to required packages.
---
 lisp/srht.el | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/lisp/srht.el b/lisp/srht.el
index 6aa1d5bebe..864e8cfcd6 100644
--- a/lisp/srht.el
+++ b/lisp/srht.el
@@ -8,7 +8,7 @@
 ;; Package-Version: 0.3
 ;; Homepage: https://sr.ht/~akagi/srht.el/
 ;; Keywords: comm
-;; Package-Requires: ((emacs "27.1") (plz "0.7"))
+;; Package-Requires: ((emacs "27.1") (plz "0.7") (transient "0.4.3"))
 
 ;; This file is part of GNU Emacs.
 



[elpa] externals/srht updated (ffd32bfcc8 -> f641152cd6)

2023-11-15 Thread ELPA Syncer
elpasync pushed a change to branch externals/srht.

  from  ffd32bfcc8 srht: srht--view: Use existing formatters.
   new  70c4d346e9 srht-git: srht-git-gql-base-query: Add description to 
fields.
   new  0704d02564 srht-gql: srht-gql-mutation: Fix.
   new  ce6892bc59 srht: srht-with-no-message: New macro.
   new  7322b06ffe srht-git: use graphql api in commands.
   new  f641152cd6 Add transient to required packages.


Summary of changes:
 lisp/srht-git.el | 334 ++-
 lisp/srht-gql.el |  36 --
 lisp/srht.el |  63 ++-
 3 files changed, 269 insertions(+), 164 deletions(-)



[elpa] externals/vertico-posframe 63de823902 1/2: v0.7.4

2023-11-15 Thread ELPA Syncer
branch: externals/vertico-posframe
commit 63de823902ed0600b6570a7535bcc8a59fb87dca
Author: Feng Shu 
Commit: Feng Shu 

v0.7.4
---
 vertico-posframe.el | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/vertico-posframe.el b/vertico-posframe.el
index 6b173cce51..2b04e9a147 100644
--- a/vertico-posframe.el
+++ b/vertico-posframe.el
@@ -5,7 +5,7 @@
 ;; Author: Feng Shu 
 ;; Maintainer: Feng Shu 
 ;; URL: https://github.com/tumashu/vertico-posframe
-;; Version: 0.7.3
+;; Version: 0.7.4
 ;; Keywords: abbrev, convenience, matching, vertico
 ;; Package-Requires: ((emacs "26.0") (posframe "1.4.0") (vertico "1.1"))
 



[elpa] externals/vertico-posframe updated (1307b80180 -> 1b7b64af1a)

2023-11-15 Thread ELPA Syncer
elpasync pushed a change to branch externals/vertico-posframe.

  from  1307b80180 Add vertico-posframe-mode-workable-p.
   new  63de823902 v0.7.4
   new  1b7b64af1a Add vertico-posframe--multiform-function


Summary of changes:
 vertico-posframe.el | 28 +++-
 1 file changed, 15 insertions(+), 13 deletions(-)



[elpa] externals/vertico-posframe 1b7b64af1a 2/2: Add vertico-posframe--multiform-function

2023-11-15 Thread ELPA Syncer
branch: externals/vertico-posframe
commit 1b7b64af1abbf506b2162ff388be6b0e6b864557
Author: Feng Shu 
Commit: Feng Shu 

Add vertico-posframe--multiform-function
---
 vertico-posframe.el | 26 ++
 1 file changed, 14 insertions(+), 12 deletions(-)

diff --git a/vertico-posframe.el b/vertico-posframe.el
index 2b04e9a147..789e18bde5 100644
--- a/vertico-posframe.el
+++ b/vertico-posframe.el
@@ -186,18 +186,20 @@ minibuffer will not be hided by minibuffer-cover."
 (define-minor-mode vertico-posframe-mode
   "Display Vertico in posframe instead of the minibuffer."
   :global t
-  (cond
-   (vertico-posframe-mode
-(when (not (posframe-workable-p))
-  (funcall (buffer-local-value 'vertico-posframe-fallback-mode 
(current-buffer)) 1)))
-   (t
-(if (not (posframe-workable-p))
-(funcall (buffer-local-value 'vertico-posframe-fallback-mode 
(current-buffer)) -1)
-  ;; When vertico-posframe-mode is disabled, hide posframe and let
-  ;; the contents of minibuffer show again, this approach let
-  ;; vertico-posframe works with vertico multiform toggle.
-  (set-window-vscroll (active-minibuffer-window) 0)
-  (posframe-hide vertico-posframe--buffer)
+  (if vertico-posframe-mode
+  (unless (posframe-workable-p)
+(funcall (buffer-local-value 'vertico-posframe-fallback-mode 
(current-buffer)) 1))
+(if (posframe-workable-p)
+(vertico-posframe--multiform-function)
+  (funcall (buffer-local-value 'vertico-posframe-fallback-mode 
(current-buffer)) -1
+
+(defun vertico-posframe--multiform-function ()
+  "Function work with `'vertico-multiform-mode'.
+When `vertico-posframe-mode' is disabled, hide posframe and let
+the contents of minibuffer show again, this approach let
+vertico-posframe works with vertico multiform toggle."
+  (set-window-vscroll (active-minibuffer-window) 0)
+  (posframe-hide vertico-posframe--buffer))
 
 ;; Support vertico-multiform
 (cl-pushnew 'vertico-posframe-mode vertico-multiform--display-modes)