[elpa] externals/consult 21ccad0e75: Quote quote

2022-05-28 Thread ELPA Syncer
branch: externals/consult
commit 21ccad0e75db4098befc592168002b03f2d663ec
Author: Daniel Mendler 
Commit: Daniel Mendler 

Quote quote
---
 consult-register.el | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/consult-register.el b/consult-register.el
index 51d2f36941..bff95fe66a 100644
--- a/consult-register.el
+++ b/consult-register.el
@@ -40,7 +40,7 @@
 (?f . "File")
 (?w . "Window"))
   "Register type names.
-Each element of the list must have the form '(char . name).")
+Each element of the list must have the form \\='(char . name).")
 
 (cl-defun consult-register--format-value (val)
   "Format generic register VAL as string."



[elpa] externals/compat updated (5f1f156d80 -> faabc69ba8)

2022-05-28 Thread ELPA Syncer
elpasync pushed a change to branch externals/compat.

  from  5f1f156d80 Bump version to 28.1.1.1
   new  ec82f43ef0 Use same test as json-available-p for json.c functions
   new  faabc69ba8 Assume compat-XY defines definitions for Emacs XY.1


Summary of changes:
 compat-27.el   | 36 
 compat-macs.el |  2 +-
 2 files changed, 17 insertions(+), 21 deletions(-)



[elpa] externals/compat ec82f43ef0 1/2: Use same test as json-available-p for json.c functions

2022-05-28 Thread ELPA Syncer
branch: externals/compat
commit ec82f43ef01a67c1875754efb9612e0c42099582
Author: Philip Kaludercic 
Commit: Philip Kaludercic 

Use same test as json-available-p for json.c functions
---
 compat-27.el | 36 
 1 file changed, 16 insertions(+), 20 deletions(-)

diff --git a/compat-27.el b/compat-27.el
index 56f69267a2..29af04036f 100644
--- a/compat-27.el
+++ b/compat-27.el
@@ -159,11 +159,10 @@ represent a JSON false value.  It defaults to `:false'.
 In you specify the same value for `:null-object' and `:false-object',
 a potentially ambiguous situation, the JSON output will not contain
 any JSON false values."
-  :cond (condition-case nil
-(let ((inhibit-message t))
-  (equal (json-parse-string "[]") nil))
-  (json-unavailable t)
-  (void-function t))
+  :cond (not (condition-case nil
+ (json-serialize t)
+   (:success t)
+   (json-unavailable nil)))
   :realname compat--json-serialize
   (require 'json)
   (letrec ((fix (lambda (obj)
@@ -220,11 +219,10 @@ any JSON false values."
 This is the same as (insert (json-serialize OBJECT)), but potentially
 faster.  See the function `json-serialize' for allowed values of
 OBJECT."
-  :cond (condition-case nil
-(let ((inhibit-message t))
-  (equal (json-parse-string "[]") nil))
-  (json-unavailable t)
-  (void-function t))
+  :cond (not (condition-case nil
+ (json-serialize t)
+   (:success t)
+   (json-unavailable nil)))
   (insert (apply #'compat--json-serialize object args)))
 
 (compat-defun json-parse-string (string &rest args)
@@ -251,11 +249,10 @@ to represent a JSON null value.  It defaults to `:null'.
 
 The keyword argument `:false-object' specifies which object to use to
 represent a JSON false value.  It defaults to `:false'."
-  :cond (condition-case nil
-(let ((inhibit-message t))
-  (equal (json-parse-string "[]") nil))
-  (json-unavailable t)
-  (void-function t))
+  :cond (not (condition-case nil
+ (json-serialize t)
+   (:success t)
+   (json-unavailable nil)))
   (require 'json)
   (condition-case err
   (let ((json-object-type (or (plist-get args :object-type) 'hash-table))
@@ -295,11 +292,10 @@ to represent a JSON null value.  It defaults to `:null'.
 
 The keyword argument `:false-object' specifies which object to use to
 represent a JSON false value.  It defaults to `:false'."
-  :cond (condition-case nil
-(let ((inhibit-message t))
-  (equal (json-parse-string "[]") nil))
-  (json-unavailable t)
-  (void-function t))
+  :cond (not (condition-case nil
+ (json-serialize t)
+   (:success t)
+   (json-unavailable nil)))
   (require 'json)
   (condition-case err
   (let ((json-object-type (or (plist-get args :object-type) 'hash-table))



[elpa] externals/compat faabc69ba8 2/2: Assume compat-XY defines definitions for Emacs XY.1

2022-05-28 Thread ELPA Syncer
branch: externals/compat
commit faabc69ba84598e0ba21e92506653f5b671767c2
Author: Philip Kaludercic 
Commit: Philip Kaludercic 

Assume compat-XY defines definitions for Emacs XY.1

This avoids confusion when someone is tracking an older development
release, so that compat does not assume all the functionality that was
part of the final release was already available.  Instead on a XY.0.Z
release, every definition is checked for availability, just like with
any previous release.

Thanks to Jacek Złydach for bringing the issue to my attention:

https://lists.sr.ht/~pkal/compat-devel/%3Cf8635d7d-e233-448f-b325-9e850363241c%40www.fastmail.com%3E
---
 compat-macs.el | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/compat-macs.el b/compat-macs.el
index e1dcf81eff..4f2d44e2fd 100644
--- a/compat-macs.el
+++ b/compat-macs.el
@@ -93,7 +93,7 @@ DEF-FN, INSTALL-FN, CHECK-FN, ATTR and TYPE."
  ((string-match
"compat-\\([[:digit:]]+\\)\\.\\(?:elc?\\)\\'"
file)
-  (match-string 1 file))
+  (concat (match-string 1 file) ".1"))
  ((error "No version number could be extracted"))
  (realname (or (plist-get attr :realname)
(intern (format "compat--%S" name



[elpa] externals/eglot aa50b4bb9e: Update README.md

2022-05-28 Thread ELPA Syncer
branch: externals/eglot
commit aa50b4bb9e52d15472c7a4f9c6101506dfa4f8b4
Author: jgart <47760695+jga...@users.noreply.github.com>
Commit: Stefan Kangas 

Update README.md
---
 README.md | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/README.md b/README.md
index 18d895943f..8a54156882 100644
--- a/README.md
+++ b/README.md
@@ -434,7 +434,7 @@ signature is relayed to the [ElDoc][eldoc] system.  The 
commands
 
 There are customization variables to help adjust [ElDoc][eldoc]'s
 liberal use of the lower "echo area", among other options.  If you
-still find the solicitous nature of this LSP feature too distracing,
+still find the solicitous nature of this LSP feature too distracting,
 you can use `eglot-ignored-server-capabilities` to turn it off.
 
 ## Rename



[nongnu] elpa/multiple-cursors fd8441bfc8: support undo-fu commands

2022-05-28 Thread ELPA Syncer
branch: elpa/multiple-cursors
commit fd8441bfc8738d463601823e5a3d9c2d7123bfbf
Author: Will B Chang <14329786+willbch...@users.noreply.github.com>
Commit: Magnar Sveen 

support undo-fu commands

https://github.com/emacsmirror/undo-fu
---
 multiple-cursors-core.el | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/multiple-cursors-core.el b/multiple-cursors-core.el
index 5103e6d9c9..12132089e7 100644
--- a/multiple-cursors-core.el
+++ b/multiple-cursors-core.el
@@ -753,6 +753,8 @@ for running commands with multiple cursors."
  redo
  undo-tree-undo
  undo-tree-redo
+ undo-fu-only-undo
+ undo-fu-only-redo
  universal-argument
  universal-argument-more
  universal-argument-other-key



[nongnu] elpa/popon b08d36b115 1/3: Bump version to 0.2

2022-05-28 Thread ELPA Syncer
branch: elpa/popon
commit b08d36b1154235bd133274395c3982021f863071
Author: Akib Azmain Turja 
Commit: Akib Azmain Turja 

Bump version to 0.2
---
 popon.el | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/popon.el b/popon.el
index 881f69af10..96eab20cf6 100644
--- a/popon.el
+++ b/popon.el
@@ -4,7 +4,7 @@
 
 ;; Author: Akib Azmain Turja 
 ;; Created: 2022-04-11
-;; Version: 0.1
+;; Version: 0.2
 ;; Package-Requires: ((emacs "25.1"))
 ;; Keywords: lisp extensions frames
 ;; Homepage: https://codeberg.org/akib/emacs-popon



[nongnu] elpa/popon f8d22acad5 2/3: Check arguments in popon-create and add support for priority

2022-05-28 Thread ELPA Syncer
branch: elpa/popon
commit f8d22acad55ac72aa575e99448e7c8eb39d1f087
Author: Akib Azmain Turja 
Commit: Akib Azmain Turja 

Check arguments in popon-create and add support for priority
---
 popon.el | 28 ++--
 1 file changed, 26 insertions(+), 2 deletions(-)

diff --git a/popon.el b/popon.el
index 96eab20cf6..5493ec83cb 100644
--- a/popon.el
+++ b/popon.el
@@ -178,6 +178,14 @@ Return nil if popon POPON is killed."
   (when (popon-live-p popon)
 (plist-get (cdr popon) :buffer)))
 
+;;;###autaload
+(defun popon-priority (popon)
+  "Return the priority of popon POPON.
+
+Return nil if popon POPON is killed."
+  (when (popon-live-p popon)
+(plist-get (cdr popon) :priority)))
+
 ;;;###autoload
 (defun popon-text (popon)
   "Return the text popon POPON is displaying.
@@ -195,7 +203,7 @@ POPON may be a killed popon.  Return nil if POPON isn't a 
popon at all."
(plist-get (cdr popon) :width)))
 
 ;;;###autoload
-(defun popon-create (text pos &optional window buffer)
+(defun popon-create (text pos &optional window buffer priority)
   "Create a popon showing TEXT at POS of WINDOW.
 
 Display popon only if WINDOW is displaying BUFFER.
@@ -205,7 +213,21 @@ should be a string or a cons cell of form (STR . WIDTH).  
When TEXT is a
 string, each line of it should be of same length (i.e `string-width' should
 return the same length for every line).  When TEXT is a cons cell, STR is
 used as the text to display and each line of it should be of visual length
-width."
+width.
+
+PRIORITY is a number (integer or float) between -100 and 100.  Popons with
+larger priority values are rendered first."
+  (when (not (or (consp text) (stringp text)))
+(signal 'wrong-type-argument
+`((or (consp text) (stringp text)) ,text)))
+  (when (not (consp pos))
+(signal 'wrong-type-argument `(consp ,pos)))
+  (when (and window (not (windowp window)))
+(signal 'wrong-type-argument `(windowp ,window)))
+  (when (and buffer (not (bufferp buffer)))
+(signal 'wrong-type-argument `(bufferp ,buffer)))
+  (when (not (numberp priority))
+(signal 'wrong-type-argument `(numberp ,priority)))
   (let* ((lines (split-string (if (consp text) (car text) text) "\n"))
  (popon `(popon :live t
 :x ,(car pos)
@@ -215,6 +237,7 @@ width."
 (string-width (car lines)))
 :window ,(or window (selected-window))
 :buffer ,buffer
+:priority ,(or priority 0)
 :plist nil)))
 (push popon (window-parameter window 'popon-list))
 (popon-update)
@@ -422,6 +445,7 @@ When FORCE is non-nil, update all overlays."
 (while (window-parameter window 'popon-overlays)
   (delete-overlay
(pop (window-parameter window 'popon-overlays
+(setq popons (nreverse (sort popons #'popon-priority)))
 (with-selected-window window
   (let* ((framebuffer (popon--make-framebuffer)))
 (dolist (popon popons)



[nongnu] elpa/popon updated (12ec6811d0 -> 26224d2345)

2022-05-28 Thread ELPA Syncer
elpasync pushed a change to branch elpa/popon.

  from  12ec6811d0 Don't let popon-visible-popons to change due to 
side-effects
   new  b08d36b115 Bump version to 0.2
   new  f8d22acad5 Check arguments in popon-create and add support for 
priority
   new  26224d2345 Bump version to 0.3


Summary of changes:
 popon.el | 39 +++
 1 file changed, 31 insertions(+), 8 deletions(-)



[nongnu] elpa/popon 26224d2345 3/3: Bump version to 0.3

2022-05-28 Thread ELPA Syncer
branch: elpa/popon
commit 26224d2345ca4e39e376d1d39c96c81bb533de8b
Author: Akib Azmain Turja 
Commit: Akib Azmain Turja 

Bump version to 0.3
---
 popon.el | 15 +++
 1 file changed, 7 insertions(+), 8 deletions(-)

diff --git a/popon.el b/popon.el
index 5493ec83cb..b07748cbc1 100644
--- a/popon.el
+++ b/popon.el
@@ -4,7 +4,7 @@
 
 ;; Author: Akib Azmain Turja 
 ;; Created: 2022-04-11
-;; Version: 0.2
+;; Version: 0.3
 ;; Package-Requires: ((emacs "25.1"))
 ;; Keywords: lisp extensions frames
 ;; Homepage: https://codeberg.org/akib/emacs-popon
@@ -226,7 +226,7 @@ larger priority values are rendered first."
 (signal 'wrong-type-argument `(windowp ,window)))
   (when (and buffer (not (bufferp buffer)))
 (signal 'wrong-type-argument `(bufferp ,buffer)))
-  (when (not (numberp priority))
+  (when (and priority (not (numberp priority)))
 (signal 'wrong-type-argument `(numberp ,priority)))
   (let* ((lines (split-string (if (consp text) (car text) text) "\n"))
  (popon `(popon :live t
@@ -428,7 +428,7 @@ When FORCE is non-nil, update all overlays."
(/ (+ (car fringes) (cadr fringes))
   (frame-char-width frame)))
(if (zerop (window-hscroll)) 0 1))
-(window-parameter window 'popon-list
+(copy-sequence (window-parameter window 'popon-list)
   (when (or force
 (not
  (and
@@ -445,16 +445,15 @@ When FORCE is non-nil, update all overlays."
 (while (window-parameter window 'popon-overlays)
   (delete-overlay
(pop (window-parameter window 'popon-overlays
-(setq popons (nreverse (sort popons #'popon-priority)))
+(setq popons (sort popons (lambda (a b)
+(< (popon-priority a)
+   (popon-priority b)
 (with-selected-window window
   (let* ((framebuffer (popon--make-framebuffer)))
 (dolist (popon popons)
   (popon--render popon framebuffer (window-hscroll)))
 (popon--make-overlays framebuffer)))
-(set-window-parameter window 'popon-visible-popons
-  ;; We must copy it to prevent changes
-  ;; from any side-effect of anything else.
-  (copy-sequence popons))
+(set-window-parameter window 'popon-visible-popons popons)
 (set-window-parameter window 'popon-window-start
   (window-start window))
 (set-window-parameter window 'popon-window-hscroll



[elpa] externals/compat 2f3593ab7f 1/2: Clarify when to load compat-XY.el files

2022-05-28 Thread ELPA Syncer
branch: externals/compat
commit 2f3593ab7f41ce46cc2dbf40868fcf0b4dbd0cd5
Author: Philip Kaludercic 
Commit: Philip Kaludercic 

Clarify when to load compat-XY.el files

Thanks to Jonas for reporting the discrepancy in this issue:
https://todo.sr.ht/~pkal/compat/3.
---
 compat-24.el | 10 +-
 compat-25.el |  5 -
 compat-26.el | 10 +-
 compat-27.el | 12 +++-
 compat-28.el | 12 +++-
 5 files changed, 44 insertions(+), 5 deletions(-)

diff --git a/compat-24.el b/compat-24.el
index a4beccb73f..1d3c18d167 100644
--- a/compat-24.el
+++ b/compat-24.el
@@ -25,7 +25,15 @@
 ;; Find here the functionality added in Emacs 24.4, needed by older
 ;; versions.
 ;;
-;; Do NOT load this library manually.  Instead require `compat'.
+;; Only load this library if you need to use one of the following
+;; functions:
+;;
+;; - `compat-='
+;; - `compat-<'
+;; - `compat->'
+;; - `compat-<='
+;; - `compat->='
+;; - `split-string'.
 
 ;;; Code:
 
diff --git a/compat-25.el b/compat-25.el
index d31b13372a..4f35b9109e 100644
--- a/compat-25.el
+++ b/compat-25.el
@@ -25,7 +25,10 @@
 ;; Find here the functionality added in Emacs 25.1, needed by older
 ;; versions.
 ;;
-;; Do NOT load this library manually.  Instead require `compat'.
+;; Only load this library if you need to use one of the following
+;; functions:
+;;
+;; - `compat-sort'
 
 ;;; Code:
 
diff --git a/compat-26.el b/compat-26.el
index 07ab3a48db..c1d46ddfb3 100644
--- a/compat-26.el
+++ b/compat-26.el
@@ -25,7 +25,15 @@
 ;; Find here the functionality added in Emacs 26.1, needed by older
 ;; versions.
 ;;
-;; Do NOT load this library manually.  Instead require `compat'.
+;; Only load this library if you need to use one of the following
+;; functions:
+;;
+;; - `compat-sort'
+;; - `line-number-at-pos'
+;; - `compat-alist-get'
+;; - `string-trim-left'
+;; - `string-trim-right'
+;; - `string-trim'
 
 ;;; Code:
 
diff --git a/compat-27.el b/compat-27.el
index 29af04036f..f3f74c3819 100644
--- a/compat-27.el
+++ b/compat-27.el
@@ -25,7 +25,17 @@
 ;; Find here the functionality added in Emacs 27.1, needed by older
 ;; versions.
 ;;
-;; Do NOT load this library manually.  Instead require `compat'.
+;; Only load this library if you need to use one of the following
+;; functions or macros:
+;;
+;; - `compat-recenter'
+;; - `compat-lookup-key'
+;; - `compat-setq-local'
+;; - `compat-assoc-delete-all'
+;; - `compat-file-size-human-readable'
+;; - `compat-executable-find'
+;; - `compat-regexp-opt'
+;; - `compat-dired-get-marked-files'
 
 ;;; Code:
 
diff --git a/compat-28.el b/compat-28.el
index e94ac9750e..5a984ddce4 100644
--- a/compat-28.el
+++ b/compat-28.el
@@ -25,7 +25,17 @@
 ;; Find here the functionality added in Emacs 28.1, needed by older
 ;; versions.
 ;;
-;; Do NOT load this library manually.  Instead require `compat'.
+;; Only load this library if you need to use one of the following
+;; functions:
+;;
+;; - `unlock-buffer'
+;; - `string-width'
+;; - `directory-files'
+;; - `json-serialize'
+;; - `json-insert'
+;; - `json-parse-string'
+;; - `json-parse-buffer'
+;; - `count-windows'
 
 ;;; Code:
 



[elpa] externals/compat fb73dccc67 2/2: Change package tagline

2022-05-28 Thread ELPA Syncer
branch: externals/compat
commit fb73dccc67f27161df8afb0c4b38eac5c6da966d
Author: Philip Kaludercic 
Commit: Philip Kaludercic 

Change package tagline
---
 compat.el | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/compat.el b/compat.el
index 2d1c175ae1..ed60ba53ab 100644
--- a/compat.el
+++ b/compat.el
@@ -1,4 +1,4 @@
-;;; compat.el --- Compatibility Library  -*- lexical-binding: t; 
-*-
+;;; compat.el --- Emacs Lisp Compatibility Library -*- lexical-binding: t; -*-
 
 ;; Copyright (C) 2021, 2022 Free Software Foundation, Inc.
 



[elpa] externals/compat updated (faabc69ba8 -> fb73dccc67)

2022-05-28 Thread ELPA Syncer
elpasync pushed a change to branch externals/compat.

  from  faabc69ba8 Assume compat-XY defines definitions for Emacs XY.1
   new  2f3593ab7f Clarify when to load compat-XY.el files
   new  fb73dccc67 Change package tagline


Summary of changes:
 compat-24.el | 10 +-
 compat-25.el |  5 -
 compat-26.el | 10 +-
 compat-27.el | 12 +++-
 compat-28.el | 12 +++-
 compat.el|  2 +-
 6 files changed, 45 insertions(+), 6 deletions(-)



[elpa] externals/org-transclusion updated (9f9737af71 -> 1515c7a1e0)

2022-05-28 Thread ELPA Syncer
elpasync pushed a change to branch externals/org-transclusion.

  from  9f9737af71 chore: remove superfluous white spaces
   new  135ec40411 (doc) fixing manual generation error
   new  1515c7a1e0 doc: fix examples' links


Summary of changes:
 docs/org-transclusion-manual.org | 26 +-
 1 file changed, 9 insertions(+), 17 deletions(-)



[elpa] externals/org-transclusion 135ec40411 1/2: (doc) fixing manual generation error

2022-05-28 Thread ELPA Syncer
branch: externals/org-transclusion
commit 135ec40411b0836bd9e3910aa7d1ec58aea53743
Author: Noboru Ota 
Commit: Noboru Ota 

(doc) fixing manual generation error
---
 docs/org-transclusion-manual.org | 14 +++---
 1 file changed, 3 insertions(+), 11 deletions(-)

diff --git a/docs/org-transclusion-manual.org b/docs/org-transclusion-manual.org
index c3524743cf..9fb3b67154 100644
--- a/docs/org-transclusion-manual.org
+++ b/docs/org-transclusion-manual.org
@@ -1,7 +1,7 @@
 #+title: Org-transclusion User Manual
 #+author: Noboru Ota 
 #+macro: version 1.2.x
-#+macro: modified 27 May 2022
+#+macro: modified 28 May 2022
 
 #+language: en
 #+export_file_name: org-transclusion.texi
@@ -284,21 +284,13 @@ You can use the property in the following way.
 As an exanmple if you have the content of this source file like this:
 
 #+begin_example
-Content of path/to/file.org
-
-* Heading
-
-[[file:test2.org]]
+This is a sample file link to file:test2.org]]][Test 2 file]].
 #+end_example
 
 For this source file, you will get the following transclusion with the link 
expanded [fn:1]
 
 #+begin_example
-Content of path/to/file.org
-
-* Heading
-
-[[file:/home/user/org/test2.org]]
+This is a sample file link to 
[[[file:/home/user/org/test2.org]]][[file:test2.or][[Test 2 file.
 #+end_example
 
 [fn:1] "Expanding" in Emacs means converting a relative file name to an 
absolute one. Info node `(elisp) File-Name-Expansion'



[elpa] externals/org-transclusion 1515c7a1e0 2/2: doc: fix examples' links

2022-05-28 Thread ELPA Syncer
branch: externals/org-transclusion
commit 1515c7a1e0765eaf1487eddeed2b95ee1fa75f28
Author: Noboru Ota 
Commit: Noboru Ota 

doc: fix examples' links
---
 docs/org-transclusion-manual.org | 16 
 1 file changed, 8 insertions(+), 8 deletions(-)

diff --git a/docs/org-transclusion-manual.org b/docs/org-transclusion-manual.org
index 9fb3b67154..80445c35bf 100644
--- a/docs/org-transclusion-manual.org
+++ b/docs/org-transclusion-manual.org
@@ -277,21 +277,21 @@ You can combine =:only-contents= and =:exclude-elements= 
to control how you tran
 
 You can use the property in the following way.
 
-#+begin_example
+#+begin_src org
 #+transclude: [[file:path/to/file.org]] :expand-links
-#+end_example
+#+end_src
 
 As an exanmple if you have the content of this source file like this:
 
-#+begin_example
-This is a sample file link to file:test2.org]]][Test 2 file]].
-#+end_example
+#+begin_src org
+This is a sample file link to [[file:test2.org]].
+#+end_src
 
 For this source file, you will get the following transclusion with the link 
expanded [fn:1]
 
-#+begin_example
-This is a sample file link to 
[[[file:/home/user/org/test2.org]]][[file:test2.or][[Test 2 file.
-#+end_example
+#+begin_src org
+This is a sample file link to [[file:/home/user/org/test2.org]].
+#+end_src
 
 [fn:1] "Expanding" in Emacs means converting a relative file name to an 
absolute one. Info node `(elisp) File-Name-Expansion'
 



[elpa] main 3c8857c4b9: * elpa-packages (vc-got): The URL now needs a final `.git`

2022-05-28 Thread Stefan Monnier via
branch: main
commit 3c8857c4b93541fc534c6ca0593adbb2a0b94323
Author: Stefan Monnier 
Commit: Stefan Monnier 

* elpa-packages (vc-got): The URL now needs a final `.git`
---
 elpa-packages | 7 +--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/elpa-packages b/elpa-packages
index 22369efa29..0822b2da44 100644
--- a/elpa-packages
+++ b/elpa-packages
@@ -145,6 +145,9 @@
   :doc "README.org"
   :renames (("extensions/" ""))
   :auto-sync t)
+ ;; ("corfu-doc"   :url "https://github.com/galeo/corfu-doc";
+ ;;  :ignored-files ("LICENSE")
+ ;;  :auto-sync t)
  ("coterm" :url "https://repo.or.cz/emacs-coterm.git";
   :auto-sync t)
  ("counsel":url "https://github.com/abo-abo/swiper";)
@@ -675,9 +678,9 @@
  ("url-http-ntlm"  :url nil)
  ("validate"   :url "https://github.com/Malabarba/validate.el";)
  ("valign" :url "https://github.com/casouri/valign";)
- ("vc-got" :url "https://git.omarpolo.com/vc-got";
+ ("vc-got" :url "https://git.omarpolo.com/vc-got.git";
   ;; Mirror: https://github.com/omar-polo/vc-got/
-  :ignored-files ("targets")
+  :ignored-files ("targets" "LICENSE")
   :auto-sync t)
  ("vc-hgcmd"   :url "https://github.com/muffinmad/emacs-vc-hgcmd";
   :auto-sync t)



[nongnu] main 3f4cf18bcc: * elpa-packages (caml): Problem fixed

2022-05-28 Thread Stefan Monnier via
branch: main
commit 3f4cf18bccd5c7cbb93078a37c0efc7db5ecf8e4
Author: Stefan Monnier 
Commit: Stefan Monnier 

* elpa-packages (caml): Problem fixed
---
 elpa-packages | 2 --
 1 file changed, 2 deletions(-)

diff --git a/elpa-packages b/elpa-packages
index aa624527c0..3d63d453b4 100644
--- a/elpa-packages
+++ b/elpa-packages
@@ -61,8 +61,6 @@
   :readme "README.md"
   :ignored-files ("COPYING"))
 
- ;; FIXME: The upstream has accidentally diverged, see
- ;; https://github.com/ocaml/caml-mode/pull/9
  ("caml"   :url "https://github.com/ocaml/caml-mode";
   ;; The version 4.7.1 from Melpa-stable seems to correspond to
   ;; revision a9134009.



[elpa] externals/vc-got f0d7c7e7cf 6/7: simplify some bits of code

2022-05-28 Thread ELPA Syncer
branch: externals/vc-got
commit f0d7c7e7cfb672768f74d899163439451088b147
Author: Stefan Monnier 
Commit: Omar Polo 

simplify some bits of code
---
 vc-got.el | 12 +---
 1 file changed, 5 insertions(+), 7 deletions(-)

diff --git a/vc-got.el b/vc-got.el
index 2cf17f80b5..1c7735f345 100755
--- a/vc-got.el
+++ b/vc-got.el
@@ -1,6 +1,6 @@
 ;;; vc-got.el --- VC backend for Game of Trees VCS   -*- lexical-binding: t; 
-*-
 
-;; Copyright (C) 2021  Free Software Foundation, Inc.
+;; Copyright (C) 2021-2022  Free Software Foundation, Inc.
 
 ;; Author: Omar Polo 
 ;; Timo Myyrä 
@@ -401,10 +401,9 @@ files on disk."
   (let (process-file-side-effects)
 (vc-got-with-worktree default-directory
   (with-temp-buffer
-(if (zerop (vc-got--call "branch" "--" name))
-t
-  (error "[vc-got] can't create branch %s: %s" name
- (buffer-string)))
+(or (zerop (vc-got--call "branch" "--" name))
+(error "[vc-got] can't create branch %s: %s" name
+   (buffer-string)))
 
 
 ;; Backend properties
@@ -432,8 +431,7 @@ files on disk."
   nil   ; got doesn't track directories
 (when (vc-find-root file ".got")
   (let ((s (vc-got-state file)))
-(not (or (eq s 'unregistered)
- (null s)))
+(not (memq s '(nil unregistered)))
 
 (defun vc-got-state (file)
   "Return the current version control state of FILE.  See `vc-state'."



[elpa] externals/vc-got 78607b0cc5 1/7: update package URL

2022-05-28 Thread ELPA Syncer
branch: externals/vc-got
commit 78607b0cc53ec1f5a653841d181f7c2448323266
Author: Omar Polo 
Commit: Omar Polo 

update package URL
---
 vc-got.el | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/vc-got.el b/vc-got.el
index fc5896e178..ce91f697be 100755
--- a/vc-got.el
+++ b/vc-got.el
@@ -4,7 +4,7 @@
 
 ;; Author: Omar Polo 
 ;; Timo Myyrä 
-;; URL: https://git.omarpolo.com/vc-got/
+;; URL: https://projects.omarpolo.com/vc-got.html
 ;; Keywords: vc tools
 ;; Version: 1.1
 ;; Package-Requires: ((emacs "25.1"))



[elpa] externals/vc-got d009a36e09 7/7: ignore files created by elpa

2022-05-28 Thread ELPA Syncer
branch: externals/vc-got
commit d009a36e0933bafedec30516e7293fb15e84dd19
Author: Stefan Monnier 
Commit: Omar Polo 

ignore files created by elpa
---
 .gitignore | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/.gitignore b/.gitignore
index c531d9867f..a5ce18ac0a 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1 +1,3 @@
 *.elc
+/vc-got-autoloads.el
+/vc-got-pkg.el



[elpa] externals/vc-got 18cc42ab3c 4/7: tag 1.1.1

2022-05-28 Thread ELPA Syncer
branch: externals/vc-got
commit 18cc42ab3c12d124fb013923f4583dd25ffe5dcd
Author: Omar Polo 
Commit: Omar Polo 

tag 1.1.1

- update package URL
- don't list the TODOs in the package description
- update vc-got-{pull,push} docstrings
---
 vc-got.el | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/vc-got.el b/vc-got.el
index 6783109abf..dce4e00478 100755
--- a/vc-got.el
+++ b/vc-got.el
@@ -6,7 +6,7 @@
 ;; Timo Myyrä 
 ;; URL: https://projects.omarpolo.com/vc-got.html
 ;; Keywords: vc tools
-;; Version: 1.1
+;; Version: 1.1.1
 ;; Package-Requires: ((emacs "25.1"))
 
 ;; This program is free software; you can redistribute it and/or modify



[elpa] externals/vc-got b3b5f78ac6 2/7: don't list the TODO in the package description

2022-05-28 Thread ELPA Syncer
branch: externals/vc-got
commit b3b5f78ac6f4a33cd1962cee45fd61717369347d
Author: Omar Polo 
Commit: Omar Polo 

don't list the TODO in the package description
---
 vc-got.el | 10 +-
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/vc-got.el b/vc-got.el
index ce91f697be..e3622c5359 100755
--- a/vc-got.el
+++ b/vc-got.el
@@ -24,9 +24,9 @@
 
 ;;; Commentary:
 
-;; This file contains a VC backend for the Game of Trees (got) version
-;; control system.
-
+;; vc-got is a VC backend for the Game of Trees (got) version control
+;; system.
+;;
 ;; Backend implementation status
 ;;
 ;; Function marked with `*' are required, those with `-' are optional.
@@ -118,6 +118,8 @@
 ;; - conflicted-files   DONE
 ;; - repository-url DONE
 
+;;; Code:
+
 ;; TODO: vc-git has most function that starts with:
 ;;
 ;;(let* ((root (vc-git-root default-directory))
@@ -128,8 +130,6 @@
 ;; we should 1) investigate if also other backends do something like
 ;; this (or if there is a better way) and 2) try to do the same.
 
-;;; Code:
-
 (eval-when-compile
   (require 'subr-x))
 



[elpa] externals/vc-got dd4e6a2cc7 5/7: fix the quote in the docstring of `vc-got--status'

2022-05-28 Thread ELPA Syncer
branch: externals/vc-got
commit dd4e6a2cc72980b1044a36207117a950aa501241
Author: Stefan Monnier 
Commit: Omar Polo 

fix the quote in the docstring of `vc-got--status'
---
 vc-got.el | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/vc-got.el b/vc-got.el
index dce4e00478..2cf17f80b5 100755
--- a/vc-got.el
+++ b/vc-got.el
@@ -246,7 +246,7 @@ worktree."
   t)
 
 (defun vc-got--status (status-codes dir-or-file &optional files)
-  "Return a list of lists '(FILE STATUS STAGE-STATUS).
+  "Return a list of lists (FILE STATUS STAGE-STATUS).
 DIR-OR-FILE can be either a directory or a file.  If FILES is
 given, return the status of those files, otherwise the status of
 DIR-OR-FILE.  STATUS-CODES is either nil, or a string that's



[elpa] externals/vc-got 16a2f37b7f 3/7: update vc-got-{pull, push} docstrings

2022-05-28 Thread ELPA Syncer
branch: externals/vc-got
commit 16a2f37b7f5f3ac712085ac0f0bed74fae47fce6
Author: Omar Polo 
Commit: Omar Polo 

update vc-got-{pull,push} docstrings

* use the got terminology (send/fetch) instead of push and pull
* vc-got-push has been using `got send' for a long time already
---
 vc-got.el | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/vc-got.el b/vc-got.el
index e3622c5359..6783109abf 100755
--- a/vc-got.el
+++ b/vc-got.el
@@ -663,12 +663,11 @@ It's like `vc-process-filter' but supports \r inside S."
 ;; be updated, either with a ``got update -b branch-name'' or ``got
 ;; update -b remote/branchname'' plus a rebase.
 (defun vc-got-pull (prompt)
-  "Execute a pull prompting for the full command if PROMPT is not nil."
+  "Execute a fetch prompting for the full command if PROMPT is not nil."
   (vc-got--push-pull vc-got-program "fetch" prompt))
 
 (defun vc-got-push (prompt)
-  "Run git push (not got!) in the repository dir.
-If PROMPT is non-nil, prompt for the git command to run."
+  "Execute a send prompting for the full command if PROMPT is not nil."
   (vc-got--push-pull vc-got-program "send" prompt))
 
 



[elpa] externals/inspector e1459a1725: Update README: install from ELPA

2022-05-28 Thread ELPA Syncer
branch: externals/inspector
commit e1459a1725a9cc91624a65ff0f266958cd1325a1
Author: Mariano Montone 
Commit: GitHub 

Update README: install from ELPA
---
 README.md | 15 ++-
 1 file changed, 2 insertions(+), 13 deletions(-)

diff --git a/README.md b/README.md
index 57d527e6b1..5999bfc6c8 100644
--- a/README.md
+++ b/README.md
@@ -10,20 +10,9 @@ Similar to inspectors available for Smalltalk and Common 
Lisp, but for Emacs Lis
 
 ## Installation
 
-This is work in progress at the moment. Just download and load the file into 
Emacs for now.
+This package is available from ELPA.
 
-### Via el-get
-
-This is the [el-get](https://www.emacswiki.org/emacs/el-get "el-get") recipe:
-
-```lisp
-(push '(:name emacs-inspector
-   :type git
-   :url "git://github.com/mmontone/emacs-inspector.git"
-   :features inspector
-   :compile "inspector.el")
-  el-get-sources)
-```
+`M-x package-install inspector RET`
 
 ## Usage
 



[elpa] externals/vc-got updated (86d9909a7e -> d009a36e09)

2022-05-28 Thread ELPA Syncer
elpasync pushed a change to branch externals/vc-got.

  from  86d9909a7e tag 1.1
   new  78607b0cc5 update package URL
   new  b3b5f78ac6 don't list the TODO in the package description
   new  16a2f37b7f update vc-got-{pull,push} docstrings
   new  18cc42ab3c tag 1.1.1
   new  dd4e6a2cc7 fix the quote in the docstring of `vc-got--status'
   new  f0d7c7e7cf simplify some bits of code
   new  d009a36e09 ignore files created by elpa


Summary of changes:
 .gitignore |  2 ++
 vc-got.el  | 33 +++--
 2 files changed, 17 insertions(+), 18 deletions(-)



[nongnu] elpa/vc-fossil 72538f815d 3/3: README.md: Update.

2022-05-28 Thread ELPA Syncer
branch: elpa/vc-fossil
commit 72538f815df3b4fc91a5dac9623bfc2524383aba
Author: Alfred M. Szmidt 
Commit: Alfred M. Szmidt 

README.md: Update.
---
 README.md | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/README.md b/README.md
index 83fc7b6f27..287b7897dd 100644
--- a/README.md
+++ b/README.md
@@ -1,4 +1,6 @@
 # vc-fossil
 VC Mode for Emacs to work with the Fossil SCM
 
-This is mirrored from https://tumbleweed.nu/r/vc-fossil/ .
+This is mirrored from https://tumbleweed.nu/r/vc-fossil/ -- please
+file all bug reports there, the Github mirror is only sporadically for
+non-GNU ELPA.



[nongnu] elpa/vc-fossil 88e2e164c0 2/3: vc-fossil.el: Update from Fossil.

2022-05-28 Thread ELPA Syncer
branch: elpa/vc-fossil
commit 88e2e164c0f547497b92b5b0b68ba214bff22c6a
Author: Alfred M. Szmidt 
Commit: Alfred M. Szmidt 

vc-fossil.el: Update from Fossil.
---
 vc-fossil.el | 91 +---
 1 file changed, 62 insertions(+), 29 deletions(-)

diff --git a/vc-fossil.el b/vc-fossil.el
index 835e80890e..d3b85d6a91 100644
--- a/vc-fossil.el
+++ b/vc-fossil.el
@@ -2,7 +2,7 @@
 
 ;; Author: Venkat Iyer 
 ;; Maintainer: Alfred M. Szmidt 
-;; Version: 20210928
+;; Version: 20220528
 
 ;; vc-fossil.el free software: you can redistribute it and/or modify
 ;; it under the terms of the GNU General Public License as published
@@ -51,12 +51,22 @@
 ;; * checkout (file &optional rev) OK
 ;; * revert (file &optional contents-done) OK
 ;; - merge-file (file &optional rev1 rev2) ??
-;; - merge-branch ()   ??
+;; - merge-branch ()   OK
 ;; - merge-news (file) ??
 ;; - pull (prompt) OK
 ;; ? push (prompt) OK
 ;; - steal-lock (file &optional revision)  ??
-;; - modify-change-comment (files rev comment) ??
+;; - modify-change-comment (files rev comment) BROKEN
+;; This requires a different version of LOG-VIEW-EXTRACT-COMMENT
+;; and LOG-VIEW-CURRENT-FILE to work.
+;;
+;; For LOG-VIEW-CURRENT-FILE there has been a bug report filed
+;; with a fix for GNU Emacs
+;; (https://lists.gnu.org/archive/html/emacs-devel/2022-05/msg00759.html).
+;;
+;; LOG-VIEW-EXTRACT-COMMENT needs to be fixed as well somehow to
+;; extract the actual log message around point.
+;;
 ;; - mark-resolved (files) ??
 ;; - find-admin-dir (file) ??
 ;; HISTORY FUNCTIONS
@@ -201,6 +211,18 @@
 (dolist (l (split-string (vc-fossil--run "remote" "list") "\n" t))
   (push (split-string l) remotes))
 remotes))
+
+(defun vc-fossil--branches ()
+  "Return the existing branches, as a list of strings.
+The car of the list is the current branch."
+  (with-temp-buffer
+;;;---!!! This requires that fossil is compiled with JSON support.
+(vc-fossil--call t "json" "branch" "list")
+(goto-char (point-min))
+(let* ((payload (gethash "payload" (json-parse-buffer)))
+  (current-branch (gethash "current" payload))
+  (branches (append (gethash "branches" payload) nil)))
+  (cons current-branch (remove current-branch branches)
 
 ;; Customization
 
@@ -394,7 +416,16 @@ If nil, use the value of `vc-diff-switches'.  If t, use no 
switches."
 
 ;; - merge-file (file &optional rev1 rev2)
 
-;; - merge-branch ()
+(defun vc-fossil-merge-branch ()
+  "Merge changes into the current branch.
+This prompts for a branch to merge from."
+  (let* ((root (vc-fossil-root default-directory))
+(buffer (format "*vc-fossil : %s*" (expand-file-name root)))
+(branches (cdr (vc-fossil--branches)))
+(merge-source (completing-read "Merge from branch: " branches nil t)))
+(apply #'vc-do-async-command buffer root "fossil" "merge" (list 
merge-source))
+(with-current-buffer buffer (vc-run-delayed (vc-compilation-mode 'Fossil)))
+(vc-set-async-update buffer)))
 
 ;; - merge-news (file)
 
@@ -411,7 +442,8 @@ If nil, use the value of `vc-diff-switches'.  If t, use no 
switches."
 
 ;; - steal-lock (file &optional revision)
 
-;; - modify-change-comment (files rev comment)
+(defun vc-fossil-modify-change-comment (files rev comment)
+  (vc-fossil--call t "amend" rev "-m" comment))
 
 ;; - mark-resolved (files)
 
@@ -430,7 +462,8 @@ If nil, use the value of `vc-diff-switches'.  If t, use no 
switches."
   (nconc
(when start-revision (list "before" start-revision))
(when limit (list "-n" (number-to-string limit)))
-   (list "-p" (file-relative-name (expand-file-name file)
+   (list "-p" (file-relative-name (expand-file-name file))
+  (goto-char (point-min)
 
 ;; * log-outgoing (buffer remote-location)
 
@@ -445,23 +478,23 @@ If nil, use the value of `vc-diff-switches'.  If t, use 
no switches."
 
 (define-derived-mode vc-fossil-log-view-mode log-view-mode "Fossil-Log-View"
   (setq word-wrap t)
-  (set (make-local-variable 'wrap-prefix) "  ")
-  (set (make-local-variable 'log-view-file-re) "\\`a\\`")
-  (set (make-local-variable 'log-view-per-file-logs) nil)
-  (set (make-local-variable 'log-view-message-re)
-   "^[0-9:]+ \\[\\([0-9a-fA-F]*\\)\\] \\(?:\\*[^*]*\\*\\)? ?\\(.*\\)")
-  (set (make-local-variable &

[nongnu] elpa/vc-fossil updated (7815c30d73 -> 72538f815d)

2022-05-28 Thread ELPA Syncer
elpasync pushed a change to branch elpa/vc-fossil.

  from  7815c30d73 vc-fossil.el: Update from fossil.
   new  4ecc0108ab README.md: Update.
   new  88e2e164c0 vc-fossil.el: Update from Fossil.
   new  72538f815d README.md: Update.


Summary of changes:
 README.md|  6 ++--
 vc-fossil.el | 91 +---
 2 files changed, 66 insertions(+), 31 deletions(-)



[nongnu] elpa/vc-fossil 4ecc0108ab 1/3: README.md: Update.

2022-05-28 Thread ELPA Syncer
branch: elpa/vc-fossil
commit 4ecc0108ab5fc2df2096ccb983c7d7fec8526190
Author: Alfred M. Szmidt 
Commit: Alfred M. Szmidt 

README.md: Update.
---
 README.md | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/README.md b/README.md
index bd313d4edd..83fc7b6f27 100644
--- a/README.md
+++ b/README.md
@@ -1,4 +1,4 @@
-# emacs-fossil
+# vc-fossil
 VC Mode for Emacs to work with the Fossil SCM
 
-This is mirrored from https://chiselapp.com/user/venks/repository/emacs-fossil
+This is mirrored from https://tumbleweed.nu/r/vc-fossil/ .



[elpa] externals/inspector 8e9ce69a5b: Update README.md

2022-05-28 Thread ELPA Syncer
branch: externals/inspector
commit 8e9ce69a5b605b02fe119dab3569c7c28a33ea2d
Author: Mariano Montone 
Commit: GitHub 

Update README.md
---
 README.md | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/README.md b/README.md
index 5999bfc6c8..775eaae009 100644
--- a/README.md
+++ b/README.md
@@ -12,7 +12,7 @@ Similar to inspectors available for Smalltalk and Common 
Lisp, but for Emacs Lis
 
 This package is available from ELPA.
 
-`M-x package-install inspector RET`
+`M-x package-install RET inspector RET`
 
 ## Usage
 



[nongnu] elpa/flymake-popon updated (46803bee57 -> 3423e462fc)

2022-05-28 Thread ELPA Syncer
elpasync pushed a change to branch elpa/flymake-popon.

  from  46803bee57 Add installation instruction for package.el
   new  096b9ab242 Use ephemeral buffer for posframe display
   new  3423e462fc Specify dependency versions and bump version to 0.2


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



[nongnu] elpa/flymake-popon 096b9ab242 1/2: Use ephemeral buffer for posframe display

2022-05-28 Thread ELPA Syncer
branch: elpa/flymake-popon
commit 096b9ab2425f1a9a78544f94556bebe742c08fd3
Author: Akib Azmain Turja 
Commit: Akib Azmain Turja 

Use ephemeral buffer for posframe display
---
 flymake-popon.el | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/flymake-popon.el b/flymake-popon.el
index d4aa261591..db22a33aa5 100644
--- a/flymake-popon.el
+++ b/flymake-popon.el
@@ -183,7 +183,7 @@ The value should be in seconds."
  (if (>= (cdr pos) (length lines))
  (cons (car pos) (- (cdr pos) (length lines)))
(cons (car pos) (1+ (cdr pos)))
-  (let ((buffer (get-buffer-create "*flymake-popon*")))
+  (let ((buffer (get-buffer-create " *flymake-popon*")))
 (apply #'posframe-show buffer :string message
`(,@(unless
(zerop flymake-popon-posframe-border-width)



[nongnu] elpa/flymake-popon 3423e462fc 2/2: Specify dependency versions and bump version to 0.2

2022-05-28 Thread ELPA Syncer
branch: elpa/flymake-popon
commit 3423e462fc32a3a87b43a4b118933606d02882f5
Author: Akib Azmain Turja 
Commit: Akib Azmain Turja 

Specify dependency versions and bump version to 0.2
---
 flymake-popon.el | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/flymake-popon.el b/flymake-popon.el
index db22a33aa5..22173af434 100644
--- a/flymake-popon.el
+++ b/flymake-popon.el
@@ -4,8 +4,8 @@
 
 ;; Author: Akib Azmain Turja 
 ;; Created: 2022-04-28
-;; Version: 0.1
-;; Package-Requires: ((emacs "26.1") (flymake "0") (popon "0") (posframe "0"))
+;; Version: 0.2
+;; Package-Requires: ((emacs "26.1") (flymake "1.2.2") (popon "0.1") (posframe 
"1.1.7"))
 ;; Keywords: convenience
 ;; Homepage: https://codeberg.org/akib/emacs-flymake-popon
 



[elpa] externals/pyim e00b7d633a 3/8: Add pyim-process-code-criteria variable.

2022-05-28 Thread ELPA Syncer
branch: externals/pyim
commit e00b7d633a92f841a88c40dd75b5fa5d2a98360e
Author: Feng Shu 
Commit: Feng Shu 

Add pyim-process-code-criteria variable.

* pyim-process.el (pyim-process-code-criteria): New variable.
(pyim-process-create-code-criteria): Use above variable.
(pyim-process-create-word, pyim-process-terminate): Use above 
variable.

* pyim-cstring.el (pyim-cstring-to-code-criteria): Removed.
---
 pyim-cstring.el |  9 -
 pyim-process.el | 21 +++--
 2 files changed, 15 insertions(+), 15 deletions(-)

diff --git a/pyim-cstring.el b/pyim-cstring.el
index 331124941e..6de6a96ee0 100644
--- a/pyim-cstring.el
+++ b/pyim-cstring.el
@@ -37,15 +37,6 @@
   "Chinese string tools for pyim."
   :group 'pyim)
 
-(defvar pyim-cstring-to-code-criteria nil
-  "用于 code 选取的基准字符串。
-
-`pyim-cstring-to-codes' 获取到一个词条的多个 codes 时,会将所有的
-codes 与这个字符串进行比较,然后选择一个最相似的 code 输出.
-
-这个字符串主要用于全拼和双拼输入法的多音字矫正,一般使用用户输入
-生成的 imobjs 转换得到,保留了用户原始输入的许多信息。")
-
 (defun pyim-cstring-partition (string &optional to-cchar)
   "STRING partition.
 
diff --git a/pyim-process.el b/pyim-process.el
index ebd9b73f9e..c807e0aa22 100644
--- a/pyim-process.el
+++ b/pyim-process.el
@@ -108,6 +108,15 @@ entered (nihaom) 的第一个候选词。
 (defvar pyim-process-last-created-words nil
   "记录最近创建的词条, 用于实现快捷删词功能: `pyim-delete-last-word' .")
 
+(defvar pyim-process-code-criteria nil
+  "用于 code 选取的基准字符串。
+
+当获取到一个词条的多个 codes 时, pyim 会将所有的 codes 与这个字
+符串进行比较,然后选择一个与这个字符串最相似的 code.
+
+这个变量主要用于全拼和双拼输入法的多音字矫正,其取值一般使用用户
+输入生成的 imobjs 转换得到,保留了用户原始输入的许多信息。")
+
 (defvar pyim-process-run-async-timer nil
   "异步处理 entered 时,使用的 timer.")
 
@@ -579,14 +588,14 @@ alist 列表。"
   (not (pyim-process-auto-switch-english-input-p))
 
 (defun pyim-process-create-code-criteria ()
-  "创建 `pyim-cstring-to-code-criteria'."
-  (setq pyim-cstring-to-code-criteria
+  "创建 `pyim-process-code-criteria'."
+  (setq pyim-process-code-criteria
 (let ((str (string-join
 (pyim-codes-create (pyim-process-get-first-imobj)
(pyim-scheme-name)
-  (if (> (length pyim-cstring-to-code-criteria)
+  (if (> (length pyim-process-code-criteria)
  (length str))
-  pyim-cstring-to-code-criteria
+  pyim-process-code-criteria
 str
 
 (defun pyim-process-create-word (word &optional prepend wordcount-handler 
criteria)
@@ -624,7 +633,7 @@ BUG:拼音无法有效地处理多音字。"
(code-prefix (pyim-scheme-get-option scheme-name :code-prefix))
(codes (pyim-cstring-to-codes
word scheme-name
-   (or criteria pyim-cstring-to-code-criteria
+   (or criteria pyim-process-code-criteria
   ;; 保存对应词条的词频
   (when (> (length word) 0)
 (pyim-dcache-update-wordcount word (or wordcount-handler #'1+)))
@@ -657,10 +666,10 @@ BUG:拼音无法有效地处理多音字。"
   "Terminate the translation of the current key."
   (setq pyim-process-translating nil)
   (pyim-entered-erase-buffer)
+  (setq pyim-process-code-criteria nil)
   (setq pyim-process-force-input-chinese nil)
   (setq pyim-candidates nil)
   (setq pyim-candidates-last nil)
-  (setq pyim-cstring-to-code-criteria nil)
   (pyim-process-run-async-timer-reset)
   (pyim-process-ui-hide)
   (let* ((class (pyim-scheme-get-option (pyim-scheme-name) :class))



[elpa] externals/pyim 12b3e98f1b 5/8: 降低 pyim.el 对 pyim-cstring-utils 和 pyim-cregexp-utils 的依赖。

2022-05-28 Thread ELPA Syncer
branch: externals/pyim
commit 12b3e98f1b5e9ddac58329b36a8b58570847267c
Author: Feng Shu 
Commit: Feng Shu 

降低 pyim.el 对 pyim-cstring-utils 和 pyim-cregexp-utils 的依赖。
---
 README.org|  51 +++--
 pyim-cstring-utils.el |   7 ++-
 pyim-cstring.el   |   6 ++
 pyim.el   | 149 +++---
 4 files changed, 113 insertions(+), 100 deletions(-)

diff --git a/README.org b/README.org
index a886cf23b8..7a6ea128f3 100644
--- a/README.org
+++ b/README.org
@@ -9,6 +9,16 @@
 
 * 不兼容更新
 
+** <2022-05-29 Sun> Cregexp 和 Cstring 部分命令需要用户自己 require.
+
+Pyim 将部分与输入法功能关联不大的 cregexp 和 cstring 命令独立出来了,默认不会加
+载,需要用户手动加载,这样可以减少 pyim 的依赖数量,降低 pyim 的代码复杂度。
+
+#+begin_src emacs-lisp
+(require 'pyim-cstring-utils)
+(require 'pyim-cregexp-utils)
+#+end_src
+
 ** <2021-04-28 Wed> 五笔输入法和仓颉输入法的不兼容更新
 
 五笔输入法和仓颉输入法原来使用一个标点符号作为 code-prefix, 现在使用 "wubi/" 和
@@ -121,6 +131,7 @@ pyim 的目标是: *尽最大的努力成为一个好用的 Emacs 中文输入
 ;; pyim-probe-punctuation-after-punctuation))
 
 ;; 开启代码搜索中文功能(比如拼音,五笔码等)
+(require 'pyim-cregexp-utils)
 (pyim-isearch-mode 1)
 
 ;; 显示5个候选词。
@@ -486,15 +497,16 @@ E-Neo 同学编写了一个词库转换工具: [[https://github.com/E-Neo/scel2p
 2. `pyim-cstring-to-pinyin-simple'  (不考虑多音字)
 
 ** 中文分词
-pyim 包含了一个简单的分词函数:`pyim-cstring-split-to-list', 可以将一个中文字符
-串分成一个词条列表,比如:
+pyim-cstring-utils 包含了一个简单的分词函数:`pyim-cstring-split-to-list', 可以
+将一个中文字符串分成一个词条列表,比如:
 
-#+begin_example
-  (("天安" 5 7)
-我爱北京天安门 ->  ("天安门" 5 8)
-   ("北京" 3 5)
-   ("我爱" 1 3))
-#+end_example
+#+begin_src emacs-lisp :results verbatim
+(require 'pyim-cstring-utils)
+(pyim-cstring-split-to-list "我爱北京天安门")
+#+end_src
+
+#+RESULTS:
+: (("天安" 4 6) ("天安门" 4 7) ("北京" 2 4) ("我爱" 0 2))
 
 其中,每一个词条列表中包含三个元素,第一个元素为词条本身,第二个元素为词条相对于
 字符串的起始位置,第三个元素为词条结束位置。
@@ -506,8 +518,8 @@ pyim 包含了一个简单的分词函数:`pyim-cstring-split-to-list', 可以
 在的中文词条。
 
 ** 获取光标处的中文词条
-pyim 包含了一个简单的命令:`pyim-cstring-words-at-point', 这个命令可以得到光标处
-的 *英文* 或者 *中文* 词条的 *列表*,这个命令依赖分词函数:
+pyim-cstring-utils 包含了一个简单的命令:`pyim-cstring-words-at-point', 这个命令
+可以得到光标处的 *英文* 或者 *中文* 词条的 *列表*,这个命令依赖分词函数:
 `pyim-cstring-split-to-list'。
 
 ** 让 `forward-word' 和 `back-backward’ 在中文环境下正常工作
@@ -520,17 +532,19 @@ pyim 包含了一个简单的命令:`pyim-cstring-words-at-point', 这个命
 
 用户只需将其绑定到快捷键上就可以了,比如:
 
-#+begin_example
+#+begin_src emacs-lisp
+(require 'pyim-cstring-utils)
 (global-set-key (kbd "M-f") 'pyim-forward-word)
 (global-set-key (kbd "M-b") 'pyim-backward-word)
-#+end_example
+#+end_src
 
 ** 为 isearch 相关命令添加拼音搜索支持
 pyim 安装后,可以通过下面的设置开启拼音搜索功能:
 
-#+begin_example
+#+begin_src emacs-lisp
+(require 'pyim-cregexp-utils)
 (pyim-isearch-mode 1)
-#+end_example
+#+end_src
 
 注意:这个功能有一些限制,搜索字符串中只能出现 “a-z” 和 “'”,如果有其他字符(比
 如 regexp 操作符),则自动关闭拼音搜索功能。
@@ -557,10 +571,11 @@ pyim 安装后,可以通过下面的设置开启拼音搜索功能:
 
 ** 让 ivy 支持拼音搜索候选项功能
 
-#+begin_example
+#+begin_src emacs-lisp
+(require 'pyim-cregexp-utils)
 (setq ivy-re-builders-alist
   '((t . pyim-cregexp-ivy)))
-#+end_example
+#+end_src
 
 ** 让 avy 支持拼音搜索
 #+begin_src emacs-lisp
@@ -572,10 +587,10 @@ pyim 安装后,可以通过下面的设置开启拼音搜索功能:
 #+end_src
 ** 让 vertico, selectrum 等补全框架,通过 orderless 支持拼音搜索候选项功能。
 
-#+begin_example
+#+begin_src emacs-lisp
 (defun my-orderless-regexp (orig-func component)
   (let ((result (funcall orig-func component)))
 (pyim-cregexp-build result)))
 
 (advice-add 'orderless-regexp :around #'my-orderless-regexp)
-#+end_example
+#+end_src
diff --git a/pyim-cstring-utils.el b/pyim-cstring-utils.el
index 40f1a49251..034f583cb9 100644
--- a/pyim-cstring-utils.el
+++ b/pyim-cstring-utils.el
@@ -262,8 +262,11 @@ CHINESE-STRING 分词,得到一个词条 alist,这个 alist 的元素都是
(max-length (max (or max-length 1) 1)))
   (backward-char max-length
 
+(defalias 'pyim-forward-word 'pyim-cstring-forward-word)
+(defalias 'pyim-backward-word 'pyim-cstring-backward-word)
+
 ;; * Footer
-(provide 'pyim-cstring)
+(provide 'pyim-cstring-utils)
 
-;;; pyim-cstring.el ends here
+;;; pyim-cstring-utils.el ends here
 
diff --git a/pyim-cstring.el b/pyim-cstring.el
index 6de6a96ee0..444fab28de 100644
--- a/pyim-cstring.el
+++ b/pyim-cstring.el
@@ -231,6 +231,12 @@ CRITERIA 字符串一般是通过 imobjs 构建的,它保留了用户原始的
   (pyim-string-distance b criteria)
  (list (car codes-sorted
 
+;; PYIM 重构以前使用的一些函数名称,alias 一下,便于兼容。
+(defalias 'pyim-hanzi2pinyin-simple 'pyim-cstring-to-pinyin-simple)
+(defalias 'pyim-hanzi2pinyin 'pyim-cstring-to-pinyin)
+(defalias 'pyim-hanzi2xingma 'pyim-cstring-to-xingma)
+(defalias 'pyim-cwords-at-point 'pyim-cstring-words-at-point)
+
 ;; * Footer
 (provide 'pyim-cstring)
 
diff --git a/pyim.el b/pyim.el
index a5fb5b0ca7..8a983b6f7c 100644
--- a/pyim.el
+++ b/pyim.el
@@ -746,82 +746,76 @@ FILE 的格式与 `pyim-dcache-export' 生成的文件格式相同,
 
 ;; ** 金手指功能
 ;;;###autoload
-(defun pyim-convert-string-at-point (&optional return-cregexp)
-  "将光标前的用户输入的字符串转换为中文.
-
-如果 RETURN-CREGEXP 为真, pyim 会把用户输入的字符串当作
-拼音,依照这个拼音来构建一个 regexp, 用户可以用这个

[elpa] externals/pyim updated (c982b3fc3f -> 506ed8e1cd)

2022-05-28 Thread ELPA Syncer
elpasync pushed a change to branch externals/pyim.

  from  c982b3fc3f pyim-pymap.el update pyim-pymap-*-cache* docstrings.
   new  a36f2295cd Add pyim-cregexp-utils.el
   new  4b1ba0e47e Add pyim-cstring-utils.el
   new  e00b7d633a Add pyim-process-code-criteria variable.
   new  3f8761b752 Sort pyim.el
   new  12b3e98f1b 降低 pyim.el 对 pyim-cstring-utils 和 pyim-cregexp-utils 的依赖。
   new  adf7958538 Update Development.org
   new  fa0d22689d Add pyim-dict-manager.el
   new  506ed8e1cd Update README.


Summary of changes:
 Development.org  |   8 +-
 README.org   |  68 ++---
 pyim-cregexp-utils.el| 128 
 pyim-cregexp.el  |  44 +-
 pyim-cstring.el => pyim-cstring-utils.el | 218 +--
 pyim-cstring.el  | 243 +--
 pyim-dict.el => pyim-dict-manager.el |  64 +---
 pyim-dict.el | 165 +
 pyim-process.el  |  21 ++-
 pyim.el  | 208 ++
 tests/pyim-tests.el  |   2 +
 11 files changed, 292 insertions(+), 877 deletions(-)
 create mode 100644 pyim-cregexp-utils.el
 copy pyim-cstring.el => pyim-cstring-utils.el (53%)
 copy pyim-dict.el => pyim-dict-manager.el (77%)



[elpa] externals/pyim adf7958538 6/8: Update Development.org

2022-05-28 Thread ELPA Syncer
branch: externals/pyim
commit adf7958538f7f9cd41bdf513acca137fccc71ffa
Author: Feng Shu 
Commit: Feng Shu 

Update Development.org
---
 Development.org | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/Development.org b/Development.org
index cc78ac6a63..91fbcdee10 100644
--- a/Development.org
+++ b/Development.org
@@ -11,7 +11,7 @@
 | 
+-+
 |
 | | PYIM 用户命令层:  PYIM 视图层: 
| |
 | |   
  | |
-| | Pyim 输入法用户命令   Page
  | |
+| | Pyim 输入法相关命令   Page
  | |
 | | Cregexp-utils 
Preview   | |
 | | Cstring-utils 
Indicator | |
 | | Pymap-utils
 | |



[elpa] externals/pyim a36f2295cd 1/8: Add pyim-cregexp-utils.el

2022-05-28 Thread ELPA Syncer
branch: externals/pyim
commit a36f2295cd2c60250610050c5a73a1403da7e434
Author: Feng Shu 
Commit: Feng Shu 

Add pyim-cregexp-utils.el
---
 Development.org   |   7 +--
 pyim-cregexp-utils.el | 131 ++
 pyim-cregexp.el   |  44 +
 pyim.el   |  48 +-
 tests/pyim-tests.el   |   1 +
 5 files changed, 138 insertions(+), 93 deletions(-)

diff --git a/Development.org b/Development.org
index 63f72f38fb..cc78ac6a63 100644
--- a/Development.org
+++ b/Development.org
@@ -11,9 +11,10 @@
 | 
+-+
 |
 | | PYIM 用户命令层:  PYIM 视图层: 
| |
 | |   
  | |
-| | Pyim 用户命令, Entered 用户命令   Page 
 | |
-| | Cregexp 用户命令,Cstring 用户命令Preview   
| |
-| | Dict 管理命令,标点用户命令,Pymap-utils  Indicator |  
   |
+| | Pyim 输入法用户命令   Page
  | |
+| | Cregexp-utils 
Preview   | |
+| | Cstring-utils 
Indicator | |
+| | Pymap-utils
 | |
 | |
 | |
 | | +-+
 | |
 | | 自动上屏器: | PYIM 用例层: Process   | 
| |
diff --git a/pyim-cregexp-utils.el b/pyim-cregexp-utils.el
new file mode 100644
index 00..f4dbc8453c
--- /dev/null
+++ b/pyim-cregexp-utils.el
@@ -0,0 +1,131 @@
+;;; pyim-cregexp-utils.el --- Chinese regexp tools for pyim.-*- 
lexical-binding: t; -*-
+
+;; * Header
+;; Copyright (C) 2021 Free Software Foundation, Inc.
+
+;; Author: Feng Shu 
+;; Maintainer: Feng Shu 
+;; URL: https://github.com/tumashu/pyim
+;; Keywords: convenience, Chinese, pinyin, input-method
+
+;; This file is part of GNU Emacs.
+
+;; GNU Emacs is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU General Public License as published by
+;; the Free Software Foundation, either version 3 of the License, or
+;; (at your option) any later version.
+
+;; GNU Emacs is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+;; GNU General Public License for more details.
+
+;; You should have received a copy of the GNU General Public License
+;; along with GNU Emacs.  If not, see .
+
+;;; Commentary:
+
+;;; Code:
+;; * 代码   :code:
+(require 'pyim-cregexp)
+
+(defgroup pyim-cregexp nil
+  "Chinese regexp tools for pyim."
+  :group 'pyim)
+
+(defcustom pyim-cregexp-convert-at-point-function
+  #'pyim-cregexp-convert-at-point-function
+  "`pyim-cregexp-convert-at-point' 使用的函数。
+
+此函数有一个参数 cregexp, 表示生成的 cregexp. 其返回值会插入当前
+buffer."
+  :type 'function)
+
+;;;###autoload
+(defun pyim-cregexp-convert-at-point (&optional insert-only)
+  "将光标前的字符串按拼音的规则转换为一个搜索中文的 regexp.
+用于实现拼音搜索中文的功能。
+
+在 minibuffer 中,这个命令默认会自动运行 `exit-minibuffer'.
+这个可以使用 INSERT-ONLY 参数控制。"
+  (interactive "P")
+  (pyim-pymap-cache-create)
+  (let* ((string (if mark-active
+ (buffer-substring-no-properties
+  (region-beginning) (region-end))
+   (buffer-substring
+(point)
+(save-excursion
+  (skip-syntax-backward "w")
+  (point)
+ (length (length string))
+ (cregexp (pyim-cregexp-build string)))
+(delete-char (- 0 length))
+(insert (funcall pyim-cregexp-convert-at-point-function cregexp))
+(when (and (not insert-only)
+   (window-minibuffer-p))
+  (exit-minibuffer
+
+(defun pyim-cregexp-convert-at-point-function (cregexp)
+  "这个函数是变量 `pyim-cregexp-convert-at-point-function' 的默认取值。"
+  (cond
+   ;; Deal with `org-search-view'
+   ((and (window-minibuffer-p)
+ (string-match-p
+  (regexp-quote "[+-]Word/{Regexp}")
+  (buffer-substring (point-min) (point-max
+(format "{%s}" cregexp))
+   (t cregexp)))
+
+;; 让 isearch 支持用 code 搜索中文功能
+(declare-function isearch-search-fun "isearch")
+(defvar isearch-forward)
+
+;;;###autoload
+(define-minor-mode pyim-isearch-mode
+  "这个 mode 为 isearch 添加拼音搜索功能."
+  :global t
+  :require 'pyim
+  :lighter " pyim-isearch"
+  (if pyim-isearch-mode
+  (progn
+(advice-add 'isearch-search-fun :override #

[elpa] externals/pyim fa0d22689d 7/8: Add pyim-dict-manager.el

2022-05-28 Thread ELPA Syncer
branch: externals/pyim
commit fa0d22689d417214ad3a802b9b8a0026f9938c4f
Author: Feng Shu 
Commit: Feng Shu 

Add pyim-dict-manager.el
---
 Development.org  |   7 +-
 README.org   |  22 +++--
 pyim-dict.el => pyim-dict-manager.el |  64 +-
 pyim-dict.el | 165 +--
 pyim.el  |   1 -
 5 files changed, 25 insertions(+), 234 deletions(-)

diff --git a/Development.org b/Development.org
index 91fbcdee10..3648277c30 100644
--- a/Development.org
+++ b/Development.org
@@ -12,9 +12,8 @@
 | | PYIM 用户命令层:  PYIM 视图层: 
| |
 | |   
  | |
 | | Pyim 输入法相关命令   Page
  | |
-| | Cregexp-utils 
Preview   | |
-| | Cstring-utils 
Indicator | |
-| | Pymap-utils
 | |
+| | Cregexp-Utils, Cstring-Utils  
Preview   | |
+| | Pymap-Utils, Dict-Manager 
Indicator | |
 | |
 | |
 | | +-+
 | |
 | | 自动上屏器: | PYIM 用例层: Process   | 
| |
@@ -26,7 +25,7 @@
 | | |  | Candidates, Outcome,  |  |
 | |
 | | |  | Punctuations, Pinyin, |  |
 | |
 | | |  | Cstring, Cregexp, |  |
 | |
-| | |  | Scheme, Assistant-scheme  |  |
 | |
+| | |  | Scheme, Assistant-Scheme  |  |
 | |
 | | |  +---+  |
 | |
 | | |  | Common, Dcache, Pymap |  |
 | |
 | | |  |   |  |
 | |
diff --git a/README.org b/README.org
index 7a6ea128f3..541382a785 100644
--- a/README.org
+++ b/README.org
@@ -9,14 +9,20 @@
 
 * 不兼容更新
 
-** <2022-05-29 Sun> Cregexp 和 Cstring 部分命令需要用户自己 require.
+** <2022-05-29 Sun> Cregexp, Cstring 和 Dict-Manager 一些功能需要用户手工 require.
 
-Pyim 将部分与输入法功能关联不大的 cregexp 和 cstring 命令独立出来了,默认不会加
-载,需要用户手动加载,这样可以减少 pyim 的依赖数量,降低 pyim 的代码复杂度。
+Pyim 将部分与输入法功能正常运行关联不大的 cregexp 和 cstring 命令独立出来了,默
+认不会加载,需要用户手动加载,这样可以减少 pyim 的依赖数量,降低 pyim 的代码复杂
+度。
+
+由于许多用户不使用 pyim-dict-manager, 所以默认也不 require 这个包。
 
 #+begin_src emacs-lisp
 (require 'pyim-cstring-utils)
 (require 'pyim-cregexp-utils)
+;; 如果用户是通过 elpa 来安装词库,或者直接手工管理 pyim-dicts 变量,就不需要
+;; 加载 pyim-dict-manager 这个包。
+(require 'pyim-dict-manager)
 #+end_src
 
 ** <2021-04-28 Wed> 五笔输入法和仓颉输入法的不兼容更新
@@ -450,8 +456,14 @@ pyim 默认没有携带任何拼音词库,用户可以使用下面几种方式
 
 [[file:snapshots/imewlconverter-wordfreq.gif]]
 
-生成词库后,运行 `pyim-dicts-manager' ,按照命令提示,将转换得到的词库文件的信息
-添加到 `pyim-dicts' 中,完成后运行命令 `pyim-restart' 或者重启emacs。
+生成词库后,
+
+#+begin_src emacs-lisp
+(require 'pyim-dict-manager)
+#+end_src
+
+然后运行 `pyim-dicts-manager' ,按照命令提示,将转换得到的词库文件的信息添加到
+`pyim-dicts' 中,完成后运行命令 `pyim-restart' 或者重启emacs。
 
 *** 第二种方式 (Linux & Unix 用户推荐使用)
 E-Neo 同学编写了一个词库转换工具: [[https://github.com/E-Neo/scel2pyim][scel2pyim]] , 
可以将一个搜狗词库转换为 pyim 词库。
diff --git a/pyim-dict.el b/pyim-dict-manager.el
similarity index 77%
copy from pyim-dict.el
copy to pyim-dict-manager.el
index ca8cd8146c..b0c5f66ecf 100644
--- a/pyim-dict.el
+++ b/pyim-dict-manager.el
@@ -1,4 +1,4 @@
-;;; pyim-dict.el --- dict tools for pyim.-*- lexical-binding: t; -*-
+;;; pyim-dict-manager.el --- Dict manager for pyim.-*- 
lexical-binding: t; -*-
 
 ;; * Header
 ;; Copyright (C) 2021 Free Software Foundation, Inc.
@@ -27,30 +27,12 @@
 
 ;;; Code:
 ;; * 代码   :code:
+(require 'pyim-dict)
 
 (defgroup pyim-dict nil
   "Dict tools for pyim."
   :group 'pyim)
 
-(defcustom pyim-dicts nil
-  "一个列表,用于保存 `pyim' 的词库信息.
-每一个 element 都代表一条词库的信息, 用户可以使用词库管理命令
-`pyim-dicts-manager' 来添加词库信息,每一条词库信息都使用一个
-plist 来表示,比如:
-
-(:name \"100万大词库\" :file \"/path/to/pinyin-bigdict.pyim\")
-
-其中:
-1. `:name'  代表词库名称,用户可以按照喜好来确定(可选项)。
-2. `:file'  表示词库文件,
-
-另外一个与这个变量功能类似的变量是: `pyim-extra-dicts', 专门
-用于和 elpa 格式的词库包集成。"
-  :type 'list)
-
-(defvar pyim-extra-dicts nil "与 `pyim-dicts' 类似, 用于和 elpa 格式的词库包集成。.")
-
-;; ** pyim 词库管理工具
 (defvar pyim-dict-manager-buffer "*pyim-dict-manager*")
 
 (defun pyim-dict-manager-refresh ()

[elpa] externals/pyim 4b1ba0e47e 2/8: Add pyim-cstring-utils.el

2022-05-28 Thread ELPA Syncer
branch: externals/pyim
commit 4b1ba0e47e2856c32455662b5c05fac42cad4925
Author: Feng Shu 
Commit: Feng Shu 

Add pyim-cstring-utils.el
---
 pyim-cregexp-utils.el|   3 -
 pyim-cregexp.el  |   2 +-
 pyim-cstring.el => pyim-cstring-utils.el | 211 +---
 pyim-cstring.el  | 230 +--
 pyim.el  |   2 +-
 tests/pyim-tests.el  |   1 +
 6 files changed, 7 insertions(+), 442 deletions(-)

diff --git a/pyim-cregexp-utils.el b/pyim-cregexp-utils.el
index f4dbc8453c..d8c2cbf1f1 100644
--- a/pyim-cregexp-utils.el
+++ b/pyim-cregexp-utils.el
@@ -107,9 +107,6 @@ buffer."
 ;; 让 ivy 支持 code 搜索。
 (declare-function ivy--regex-plus "ivy")
 
-;; pyim-cregexp.el 是核心库,为保持稳定,不能添加太多的依赖,所以我把这个函数从
-;; pyim-cregexp.el 移到这里,也许我应该更改一下这个函数的名称,让其不使用
-;; pyim-cregexp 前缀,但由于向后兼容的原因,我决定再观察观察。
 (defun pyim-cregexp-ivy (str)
   "Let ivy support search Chinese with pinyin feature."
   (let ((x (ivy--regex-plus str))
diff --git a/pyim-cregexp.el b/pyim-cregexp.el
index 69a9829a12..540f2ca513 100644
--- a/pyim-cregexp.el
+++ b/pyim-cregexp.el
@@ -1,4 +1,4 @@
-;;; pyim-cregexp.el --- Chinese regexp core for pyim.-*- 
lexical-binding: t; -*-
+;;; pyim-cregexp.el --- Chinese regexp core tools for pyim.-*- 
lexical-binding: t; -*-
 
 ;; * Header
 ;; Copyright (C) 2021 Free Software Foundation, Inc.
diff --git a/pyim-cstring.el b/pyim-cstring-utils.el
similarity index 53%
copy from pyim-cstring.el
copy to pyim-cstring-utils.el
index 2c1de8af70..40f1a49251 100644
--- a/pyim-cstring.el
+++ b/pyim-cstring-utils.el
@@ -1,4 +1,4 @@
-;;; pyim-cstring.el --- Chinese string tools for pyim.-*- 
lexical-binding: t; -*-
+;;; pyim-cstring-utils.el --- Chinese string tools for pyim.-*- 
lexical-binding: t; -*-
 
 ;; * Header
 ;; Copyright (C) 2021 Free Software Foundation, Inc.
@@ -28,66 +28,12 @@
 ;;; Code:
 ;; * 代码   :code:
 (require 'cl-lib)
-(require 'pyim-common)
-(require 'pyim-dcache)
-(require 'pyim-scheme)
-(require 'pyim-pymap)
+(require 'pyim-cstring)
 
 (defgroup pyim-cstring nil
   "Chinese string tools for pyim."
   :group 'pyim)
 
-(defvar pyim-cstring-to-code-criteria nil
-  "用于 code 选取的基准字符串。
-
-`pyim-cstring-to-codes' 获取到一个词条的多个 codes 时,会将所有的
-codes 与这个字符串进行比较,然后选择一个最相似的 code 输出.
-
-这个字符串主要用于全拼和双拼输入法的多音字矫正,一般使用用户输入
-生成的 imobjs 转换得到,保留了用户原始输入的许多信息。")
-
-(defun pyim-cstring-partition (string &optional to-cchar)
-  "STRING partition.
-
-1. Hello你好 -> (\"Hello\" \"你\" \"好\"), when TO-CCHAR is non-nil.
-2. Hello你好 -> (\"Hello\" \"你好\"), when TO-CCHAR is nil."
-  ;; NOTE: 使用5个\0作为分割符有没有其它副作用?有待观察。
-  (let ((sep (make-string 5 ?\0)))
-(if (pyim-string-match-p "\\CC" string)
-;; 处理中英文混合的情况
-(remove "" (split-string
-(replace-regexp-in-string
- (if to-cchar "\\(\\cc\\)" "\\(\\cc+\\)")
- (concat sep "\\1" sep) string)
-sep))
-  (if to-cchar
-  (cl-mapcar #'char-to-string string)
-(list string)
-
-(defun pyim-cstring-substrings (cstring &optional max-length number)
-  "找出 CSTRING 中所有长度不超过 MAX-LENGTH 的子字符串,生成一个 alist。
-
-这个 alist 中的每个元素为:(子字符串 开始位置 结束位置), 参数
-NUMBER 用于递归,表示子字符串在 CSTRING 中的位置。"
-  (let ((number (or number 0)))
-(cond
- ((= (length cstring) 0) nil)
- (t (append (pyim-cstring-substrings-1 cstring max-length number)
-(pyim-cstring-substrings (substring cstring 1)
- max-length (1+ number)))
-
-(defun pyim-cstring-substrings-1 (cstring max-length number)
-  "`pyim-cstring-substrings' 的内部函数。"
-  (cond
-   ((< (length cstring) 2) nil)
-   (t (append
-   (let ((length (length cstring)))
- (when (<= length (or max-length 6))
-   (list (list cstring number (+ number length)
-   (pyim-cstring-substrings-1
-(substring cstring 0 -1)
-max-length number)
-
 ;; ** 中文字符串分词相关功能
 (defun pyim-cstring-split-to-list (chinese-string &optional max-word-length 
delete-dups prefer-short-word)
   "一个基于 pyim 的中文分词函数。这个函数可以将中文字符串
@@ -194,158 +140,6 @@ CHINESE-STRING 分词,得到一个词条 alist,这个 alist 的元素都是
   (goto-char (point-min))
   (message "分词完成!"))
 
-;; ** 中文字符串到拼音的转换工具
-;;;###autoload
-(defun pyim-cstring-to-pinyin (string &optional shou-zi-mu separator
-  return-list ignore-duo-yin-zi 
adjust-duo-yin-zi)
-  "将汉字字符串转换为对应的拼音字符串的工具.
-
-如果 SHOU-ZI-MU 设置为 t, 转换仅得到拼音首字母字符串。当
-RETURN-LIST 设置为 t 时,返回一个拼音列表,这个列表包含词条的一个
-或者多个拼音(词条包含多音字时);如果 IGNORE-DUO-YIN-ZI 设置为
-t, 遇到多音字时,只使用第一个拼音,其它拼音忽略;当
-ADJUST-DUO-YIN-Zi 设置为 t 时, `pyim-cstring-to-pinyin' 会使用 pyim 已
-安装的词库来校正多音字,但这个功能有一定的限制:
-
-1. pyim 普通词库中不存在的词条不能较正
-2. 多音字校正速度比较慢,实时转换会产生卡顿。
-
-BUG: 当 STRING 中包含其它标点符号,并且设置 SEPERATER 时,结果会
-包含多余的连接符:比如: '你=好' --> 'ni-=-hao'"
-  (if (not (pyim-string-match-p "\\cc"

[elpa] externals/pyim 3f8761b752 4/8: Sort pyim.el

2022-05-28 Thread ELPA Syncer
branch: externals/pyim
commit 3f8761b752a9a4c9ad38125429fe369e2e9c698e
Author: Feng Shu 
Commit: Feng Shu 

Sort pyim.el
---
 pyim.el | 12 ++--
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/pyim.el b/pyim.el
index 82d642f288..a5fb5b0ca7 100644
--- a/pyim.el
+++ b/pyim.el
@@ -838,6 +838,12 @@ FILE 的格式与 `pyim-dcache-export' 生成的文件格式相同,
   (message "PYIM: 没有找到 %S 对应的编码。" string)))
   (deactivate-mark
 
+;; ** pyim 探针
+(require 'pyim-probe)
+
+;; ** pyim 云输入法
+(require 'pyim-cloudim)
+
 ;; ** pyim 中文字符串工具
 (require 'pyim-cstring-utils)
 (defalias 'pyim-forward-word 'pyim-cstring-forward-word)
@@ -851,12 +857,6 @@ FILE 的格式与 `pyim-dcache-export' 生成的文件格式相同,
 ;; ** pyim 中文 regexp 工具
 (require 'pyim-cregexp-utils)
 
-;; ** pyim 探针
-(require 'pyim-probe)
-
-;; ** pyim 云输入法
-(require 'pyim-cloudim)
-
 ;; * Footer
 (provide 'pyim)
 



[elpa] externals/pyim 506ed8e1cd 8/8: Update README.

2022-05-28 Thread ELPA Syncer
branch: externals/pyim
commit 506ed8e1cd0dea27e7c23dc26915bb7ee9351a17
Author: Feng Shu 
Commit: Feng Shu 

Update README.
---
 README.org | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/README.org b/README.org
index 541382a785..b0503f849a 100644
--- a/README.org
+++ b/README.org
@@ -103,6 +103,8 @@ pyim 的目标是: *尽最大的努力成为一个好用的 Emacs 中文输入
 
 #+begin_src elisp
 (require 'pyim)
+(require 'pyim-cstring-utils)
+(require 'pyim-cregexp-utils)
 
 (setq default-input-method "pyim")
 
@@ -137,7 +139,6 @@ pyim 的目标是: *尽最大的努力成为一个好用的 Emacs 中文输入
 ;; pyim-probe-punctuation-after-punctuation))
 
 ;; 开启代码搜索中文功能(比如拼音,五笔码等)
-(require 'pyim-cregexp-utils)
 (pyim-isearch-mode 1)
 
 ;; 显示5个候选词。



[elpa] externals/pyim 01a924ba8c: * pyim.el (pyim-dict): Require again.

2022-05-28 Thread ELPA Syncer
branch: externals/pyim
commit 01a924ba8c3b523f8b3e5682a5ad521adf1d16cd
Author: Feng Shu 
Commit: Feng Shu 

* pyim.el (pyim-dict): Require again.
---
 pyim.el | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/pyim.el b/pyim.el
index 14b5a5696b..db8a0fc9bb 100644
--- a/pyim.el
+++ b/pyim.el
@@ -37,6 +37,9 @@
 (require 'pyim-autoselector)
 (require 'pyim-common)
 (require 'pyim-cstring)
+;; NOTE: pyim.el 不依赖这个包, 但由于历史原因,许多 elpa 词库包通过 pyim 来得到
+;; dict 相关的操作函数,所以暂时需要保留。
+(require 'pyim-dict)
 (require 'pyim-indicator)
 (require 'pyim-page)
 (require 'pyim-preview)



[elpa] externals/pyim-basedict df05bdef7b 2/3: v0.5.1

2022-05-28 Thread ELPA Syncer
branch: externals/pyim-basedict
commit df05bdef7bebae763b9a53e380d42c0ff9c70b2f
Author: Feng Shu 
Commit: Feng Shu 

v0.5.1
---
 pyim-basedict.el | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/pyim-basedict.el b/pyim-basedict.el
index cc430577fd..37a90c7977 100644
--- a/pyim-basedict.el
+++ b/pyim-basedict.el
@@ -5,7 +5,7 @@
 
 ;; Author: Feng Shu 
 ;; URL: https://github.com/tumashu/pyim-basedict
-;; Version: 0.5.0
+;; Version: 0.5.1
 ;; Keywords: convenience, Chinese, pinyin, input-method, complete
 
 ;; This file is part of GNU Emacs.



[elpa] externals/pyim-basedict bcb84adb35 1/3: * pyim-basedict.el (pyim-extra-dicts-add-dict): Update.

2022-05-28 Thread ELPA Syncer
branch: externals/pyim-basedict
commit bcb84adb35d6774dc3bb9c73746e5134f701ce19
Author: Feng Shu 
Commit: Feng Shu 

* pyim-basedict.el (pyim-extra-dicts-add-dict): Update.
---
 pyim-basedict.el | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/pyim-basedict.el b/pyim-basedict.el
index 55ad19c1f2..cc430577fd 100644
--- a/pyim-basedict.el
+++ b/pyim-basedict.el
@@ -75,7 +75,7 @@ tarball and extract data/* to this directory.")
 (defvar pyim-basedict-libpinyin-count-info nil
   "The count info of libpinyin.")
 
-(declare-function 'pyim-extra-dicts-add-dict "pyim")
+(declare-function 'pyim-extra-dicts-add-dict "pyim-dict")
 
 ;;;###autoload
 (defun pyim-basedict-enable ()



[elpa] externals/pyim-basedict c606c34101 3/3: v0.5.2

2022-05-28 Thread ELPA Syncer
branch: externals/pyim-basedict
commit c606c34101b2c07352ee6bf16f90abeac26a2f2c
Author: Feng Shu 
Commit: Feng Shu 

v0.5.2
---
 pyim-basedict.el | 9 -
 1 file changed, 4 insertions(+), 5 deletions(-)

diff --git a/pyim-basedict.el b/pyim-basedict.el
index 37a90c7977..2c79375e24 100644
--- a/pyim-basedict.el
+++ b/pyim-basedict.el
@@ -5,7 +5,7 @@
 
 ;; Author: Feng Shu 
 ;; URL: https://github.com/tumashu/pyim-basedict
-;; Version: 0.5.1
+;; Version: 0.5.2
 ;; Keywords: convenience, Chinese, pinyin, input-method, complete
 
 ;; This file is part of GNU Emacs.
@@ -90,7 +90,7 @@ tarball and extract data/* to this directory.")
   ;; Maybe we should just (require 'pyim) and call
   ;; `pyim-extra-dicts-add-dict' unconditionally, or maybe we should
   ;; use `with-eval-after-load'.
-  (if (featurep 'pyim)
+  (if (featurep 'pyim-dict)
   (pyim-extra-dicts-add-dict
`(;; Make Indent beautiful :-)
  :name "Basedict-elpa"
@@ -100,7 +100,7 @@ tarball and extract data/* to this directory.")
  :elpa t))
 (message "pyim 没有安装,pyim-basedict 启用失败。")
 
-(declare-function 'pyim-dline-parse "pyim")
+(declare-function 'pyim-dline-parse "pyim-common")
 
 (defun pyim-basedict-generate-count-info ()
   "从 libpinyin data 文件中获取词条的 count 信息。"
@@ -133,8 +133,7 @@ tarball and extract data/* to this directory.")
   (interactive)
   (pyim-basedict-generate-count-info)
   (let ((dir pyim-basedict-libpinyin-datadir)
-(hash-table (make-hash-table :test #'equal))
-(count-info (make-hash-table :test #'equal)))
+(hash-table (make-hash-table :test #'equal)))
 (if (not (and dir (file-directory-p dir)))
 (message "Warn: `pyim-basedict-libpinyin-datadir' is not a directory.")
   (with-temp-buffer



[elpa] externals/pyim-basedict updated (86f6de3e3a -> c606c34101)

2022-05-28 Thread ELPA Syncer
elpasync pushed a change to branch externals/pyim-basedict.

  from  86f6de3e3a Update README
   new  bcb84adb35 * pyim-basedict.el (pyim-extra-dicts-add-dict): Update.
   new  df05bdef7b v0.5.1
   new  c606c34101 v0.5.2


Summary of changes:
 pyim-basedict.el | 11 +--
 1 file changed, 5 insertions(+), 6 deletions(-)



[nongnu] elpa/xah-fly-keys dd58ad0009: updated link in readme

2022-05-28 Thread ELPA Syncer
branch: elpa/xah-fly-keys
commit dd58ad00094ce3b40e9fb524405dc1a2191b1642
Author: Xah Lee 
Commit: Xah Lee 

updated link in readme
---
 README.md | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/README.md b/README.md
index 5a59af0f55..747097e140 100755
--- a/README.md
+++ b/README.md
@@ -5,8 +5,8 @@ A modal keybinding for emacs (like vim), but based on command 
frequency and ergo
 
 This is the most efficient editing system in the universe.
 
-home page at
-http://ergoemacs.org/misc/ergoemacs_vi_mode.html
+Xah Fly Keys home page at
+http://xahlee.info/emacs/misc/ergoemacs_vi_mode.html
 
 2020-04-18 News: Key Engine Rewrite
 ===
@@ -59,7 +59,7 @@ The following keyboard layouts are supported:
 Full Documentation
 ---
 
-http://ergoemacs.org/misc/ergoemacs_vi_mode.html
+http://xahlee.info/emacs/misc/ergoemacs_vi_mode.html
 
 Been working on this since 2013, and since 2007 on ergoemacs-mode.
 



[nongnu] elpa/cider dd4c555fd8: Style thread-first/last with new Emacs 28 indent format

2022-05-28 Thread ELPA Syncer
branch: elpa/cider
commit dd4c555fd88834581306ac54f1aaefe2b0efec99
Author: ikappaki 
Commit: Bozhidar Batsov 

Style thread-first/last with new Emacs 28 indent format

It was changed to (indent 0) from (indent 1) with 
https://git.savannah.gnu.org/cgit/emacs.git/commit/?id=2a736738095c313ccef07d074aac4c5467b750e0
---
 .dir-locals.el  |   4 +-
 cider-browse-spec.el|  35 ++--
 cider-client.el | 109 +---
 cider-clojuredocs.el|  11 ++---
 cider-connection.el |  36 ++--
 cider-debug.el  |   8 ++--
 cider-eldoc.el  |  14 ---
 cider-eval.el   |   6 +--
 cider-format.el |   5 ++-
 cider-inspector.el  |  40 +-
 cider-macroexpansion.el |   8 ++--
 cider-ns.el |  14 +++
 cider-popup.el  |   2 +-
 cider-repl.el   |   7 ++--
 cider-test.el   |  15 +++
 cider-tracing.el|   4 +-
 cider-util.el   |   3 +-
 cider.el|  42 ---
 nrepl-client.el |   6 ++-
 19 files changed, 210 insertions(+), 159 deletions(-)

diff --git a/.dir-locals.el b/.dir-locals.el
index 5b30948cc2..292d4dcf53 100644
--- a/.dir-locals.el
+++ b/.dir-locals.el
@@ -27,8 +27,8 @@
   (insert-rect . defun)   ;; cl-flet
   (cl-defun . 2)
   (with-parsed-tramp-file-name . 2)
-  (thread-first . 1)
-  (thread-last . 1)
+  (thread-first . 0)
+  (thread-last . 0)
 
 ;; To use the bug-reference stuff, do:
 ;; (add-hook 'text-mode-hook #'bug-reference-mode)
diff --git a/cider-browse-spec.el b/cider-browse-spec.el
index 211f93dc73..f111dd63b1 100644
--- a/cider-browse-spec.el
+++ b/cider-browse-spec.el
@@ -129,7 +129,8 @@ Display TITLE at the top and SPECS are indented underneath."
   (insert (cider-propertize title 'emph) "\n")
   (dolist (spec-name specs)
 (insert (propertize "  " 'spec-name spec-name))
-(thread-first (cider-font-lock-as-clojure spec-name)
+(thread-first
+  (cider-font-lock-as-clojure spec-name)
   (insert-text-button 'type 'cider-browse-spec--spec)
   (button-put 'spec-name spec-name))
 (insert (propertize "\n" 'spec-name spec-name)))
@@ -148,13 +149,15 @@ Display TITLE at the top and SPECS are indented 
underneath."
   (cond ((stringp form)
  (if (cider--qualified-keyword-p form)
  (with-temp-buffer
-   (thread-first form
+   (thread-first
+ form
  (insert-text-button 'type 'cider-browse-spec--spec)
  (button-put 'spec-name form))
(buffer-string))
;; to make it easier to read replace all clojure.spec ns with s/
;; and remove all clojure.core ns
-   (thread-last form
+   (thread-last
+ form
  (replace-regexp-in-string 
"^\\(clojure.spec\\|clojure.spec.alpha\\)/" "s/")
  (replace-regexp-in-string "^\\(clojure.core\\)/" ""
 
@@ -168,7 +171,8 @@ Display TITLE at the top and SPECS are indented underneath."
(format "(fn [%%] %s)" (cl-reduce #'concat (mapcar 
#'cider-browse-spec--pprint (cl-rest (cl-rest form)))
 ;; prettier (s/and )
 ((cider--spec-fn-p form-tag "and")
- (format "(s/and\n%s)" (string-join (thread-last (cl-rest form)
+ (format "(s/and\n%s)" (string-join (thread-last
+  (cl-rest form)
   (mapcar 
#'cider-browse-spec--pprint)
   (mapcar (lambda (x) (format 
"%s" x
 "\n")))
@@ -176,12 +180,14 @@ Display TITLE at the top and SPECS are indented 
underneath."
 ((cider--spec-fn-p form-tag "or")
  (let ((name-spec-pair (seq-partition (cl-rest form) 2)))
(format "(s/or\n%s)" (string-join
- (thread-last name-spec-pair
+ (thread-last
+   name-spec-pair
(mapcar (lambda (s) (format "%s %s" 
(cl-first s) (cider-browse-spec--pprint (cl-second s))
  "\n"
 ;; prettier (s/merge )
 ((cider--spec-fn-p form-tag "merge")
- (format "(s/merge\n%s)" (string-join (thread-last (cl-rest form)
+ (format "(s/merge\n%s)" (string-join (thread-last
+(cl-rest form)
 (mapcar 
#'cider-browse-spec--pprint)

[nongnu] elpa/cider b2dd4a7d9d: Allow merging sesman sessions of a project

2022-05-28 Thread ELPA Syncer
branch: elpa/cider
commit b2dd4a7d9def83d420424fcaf69fd791198a264b
Author: lycheese 
Commit: Bozhidar Batsov 

Allow merging sesman sessions of a project

- Makes cider-repls return the combination of all sesman sessions
  or those sessions with same host associated with a project
- Adds a custom var for toggling the new functionality

Closes clojure-emacs/cider#2946.
---
 CHANGELOG.md   |  2 +
 cider-connection.el| 61 +++-
 .../ROOT/pages/usage/managing_connections.adoc | 18 -
 test/cider-connection-tests.el | 84 ++
 4 files changed, 159 insertions(+), 6 deletions(-)

diff --git a/CHANGELOG.md b/CHANGELOG.md
index 8d0d94ebee..7dc22ed4ea 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -17,6 +17,8 @@ JVM-specific code outside of JVM Clojure.
   * Do not always perform `undef-all`. Undef only with `C-u` prefix.
   * Fix extraction of namespace name.
 
+* [#2946](https://github.com/clojure-emacs/cider/issues/2946): Add custom var 
`cider-merge-sessions` to allow combining sessions in two different ways: 
Setting `cider-merge-sessions` to `'host` will merge all sessions associated 
with the same host within a project. Setting it to `'project` will combine all 
sessions of a project irrespective of their host.
+
 ## 1.4.0 (2022-05-02)
 
 ## New features
diff --git a/cider-connection.el b/cider-connection.el
index 213c67f434..dace071292 100644
--- a/cider-connection.el
+++ b/cider-connection.el
@@ -61,6 +61,19 @@ available) and the matching REPL buffer."
   :safe #'booleanp
   :package-version '(cider . "0.9.0"))
 
+;;;###autoload
+(defcustom cider-merge-sessions nil
+  "Controls session combination behaviour.
+
+Symbol `host' combines all sessions of a project associated with the same host.
+Symbol `project' combines all sessions of a project.
+
+All other values do not combine any sessions."
+  :type 'symbol
+  :group 'cider
+  :safe #'symbolp
+  :package-version '(cider . "1.5"))
+
 (defconst cider-required-nrepl-version "0.6.0"
   "The minimum nREPL version that's known to work properly with CIDER.")
 
@@ -874,6 +887,33 @@ no linked session or there is no REPL of TYPE within the 
current session."
   ((listp type) (member buffer-repl-type type))
   (t (string= type buffer-repl-type)
 
+(defun cider--get-host-from-session (session)
+  "Returns the host associated with SESSION."
+  (plist-get (cider--gather-session-params session)
+ :host))
+
+(defun cider--make-sessions-list-with-hosts (sessions)
+  "Makes a list of SESSIONS and their hosts.
+Returns a list of the form ((session1 host1) (session2 host2) ...)."
+  (mapcar (lambda (session)
+(list session (cider--get-host-from-session session)))
+  sessions))
+
+(defun cider--get-sessions-with-same-host (session sessions)
+  "Returns a list of SESSIONS with the same host as SESSION."
+  (mapcar #'car
+  (seq-filter (lambda (x)
+(string-equal (cadr x)
+  (cider--get-host-from-session session)))
+  (cider--make-sessions-list-with-hosts sessions
+
+(defun cider--extract-connections (sessions)
+  "Returns a flattened list of all session buffers in SESSIONS."
+  (cl-reduce (lambda (x y)
+   (append x (cdr y)))
+ sessions
+ :initial-value '()))
+
 (defun cider-repls (&optional type ensure)
   "Return cider REPLs of TYPE from the current session.
 If TYPE is nil or multi, return all REPLs.  If TYPE is a list of types,
@@ -883,9 +923,24 @@ throw an error if no linked session exists."
((listp type)
 (mapcar #'cider-maybe-intern type))
((cider-maybe-intern type
-(repls (cdr (if ensure
-(sesman-ensure-session 'CIDER)
-  (sesman-current-session 'CIDER)
+(repls (pcase cider-merge-sessions
+ ('host
+  (if ensure
+  (or (cider--extract-connections 
(cider--get-sessions-with-same-host
+   (sesman-current-session 
'CIDER)
+   
(sesman-current-sessions 'CIDER)))
+  (user-error "No linked %s sessions" 'CIDER))
+(cider--extract-connections 
(cider--get-sessions-with-same-host
+ (sesman-current-session 
'CIDER)
+ (sesman-current-sessions 
'CIDER)
+ ('project
+  (if ensure
+  (or (cider--extract-connections (sesman-current-sessions 
'CIDER))
+  (user-error "No linked %s sessions" 'CIDER))
+(cider--extract-connections (sesman-current-sessions 
'CIDER))