[nongnu] elpa/git-commit a7ae411 03/11: magit-mode-map: Reindent bindings

2021-08-13 Thread ELPA Syncer
branch: elpa/git-commit
commit a7ae411bbc325ba1cb15f28f9567a1e30e8cd520
Author: Jonas Bernoulli 
Commit: Jonas Bernoulli 

magit-mode-map: Reindent bindings
---
 lisp/magit-mode.el | 16 
 1 file changed, 8 insertions(+), 8 deletions(-)

diff --git a/lisp/magit-mode.el b/lisp/magit-mode.el
index abeaf9a..4b51eb3 100644
--- a/lisp/magit-mode.el
+++ b/lisp/magit-mode.el
@@ -336,16 +336,16 @@ recommended value."
 (defvar magit-mode-map
   (let ((map (make-sparse-keymap)))
 (set-keymap-parent map magit-section-mode-map)
-(define-key map [C-return]  'magit-visit-thing)
-(define-key map (kbd "C-m") 'magit-visit-thing)
+(define-key map [C-return]'magit-visit-thing)
+(define-key map (kbd "C-m")   'magit-visit-thing)
 (define-key map (kbd "C-M-i") 'magit-dired-jump)
-(define-key map [M-tab] 'magit-section-cycle-diffs)
-(define-key map (kbd "SPC") 'magit-diff-show-or-scroll-up)
+(define-key map [M-tab]   'magit-section-cycle-diffs)
+(define-key map (kbd   "SPC") 'magit-diff-show-or-scroll-up)
 (define-key map (kbd "S-SPC") 'magit-diff-show-or-scroll-down)
-(define-key map (kbd "DEL") 'magit-diff-show-or-scroll-down)
-(define-key map "+" 'magit-diff-more-context)
-(define-key map "-" 'magit-diff-less-context)
-(define-key map "0" 'magit-diff-default-context)
+(define-key map (kbd   "DEL") 'magit-diff-show-or-scroll-down)
+(define-key map "+"   'magit-diff-more-context)
+(define-key map "-"   'magit-diff-less-context)
+(define-key map "0"   'magit-diff-default-context)
 (define-key map "a" 'magit-cherry-apply)
 (define-key map "A" 'magit-cherry-pick)
 (define-key map "b" 'magit-branch)



[nongnu] elpa/git-commit 413a98f 05/11: Use kbd function more when defining key bindings

2021-08-13 Thread ELPA Syncer
branch: elpa/git-commit
commit 413a98f7ec50eb418f560d21766f528cc89653d1
Author: Jonas Bernoulli 
Commit: Jonas Bernoulli 

Use kbd function more when defining key bindings

Use `kbd' instead of quoting.  This makes searching easier because
we only have to look for one form.  Continue to avoid `kbd' when
it would return its argument unchanged.  Make exceptions to avoid
placing definitions that use `kbd' next to definitions that don't.
---
 lisp/magit-log.el | 20 ++--
 lisp/magit-process.el |  2 +-
 lisp/magit-reflog.el  |  4 ++--
 lisp/magit-refs.el|  4 ++--
 lisp/magit-section.el |  8 
 5 files changed, 19 insertions(+), 19 deletions(-)

diff --git a/lisp/magit-log.el b/lisp/magit-log.el
index ea4100a..f83907e 100644
--- a/lisp/magit-log.el
+++ b/lisp/magit-log.el
@@ -951,9 +951,9 @@ of the current repository first; creating it if necessary."
 (defvar magit-log-mode-map
   (let ((map (make-sparse-keymap)))
 (set-keymap-parent map magit-mode-map)
-(define-key map "\C-c\C-b" 'magit-go-backward)
-(define-key map "\C-c\C-f" 'magit-go-forward)
-(define-key map "\C-c\C-n" 'magit-log-move-to-parent)
+(define-key map (kbd "C-c C-b") 'magit-go-backward)
+(define-key map (kbd "C-c C-f") 'magit-go-forward)
+(define-key map (kbd "C-c C-n") 'magit-log-move-to-parent)
 (define-key map "j" 'magit-log-move-to-revision)
 (define-key map "=" 'magit-log-toggle-commit-limit)
 (define-key map "+" 'magit-log-double-commit-limit)
@@ -1529,13 +1529,13 @@ The shortstat style is experimental and rather slow."
 (defvar magit-log-select-mode-map
   (let ((map (make-sparse-keymap)))
 (set-keymap-parent map magit-log-mode-map)
-(define-key map "\C-c\C-b" 'undefined)
-(define-key map "\C-c\C-f" 'undefined)
-(define-key map "."'magit-log-select-pick)
-(define-key map "e"'magit-log-select-pick)
-(define-key map "\C-c\C-c" 'magit-log-select-pick)
-(define-key map "q"'magit-log-select-quit)
-(define-key map "\C-c\C-k" 'magit-log-select-quit)
+(define-key map (kbd "C-c C-b") 'undefined)
+(define-key map (kbd "C-c C-f") 'undefined)
+(define-key map (kbd ".")   'magit-log-select-pick)
+(define-key map (kbd "e")   'magit-log-select-pick)
+(define-key map (kbd "C-c C-c") 'magit-log-select-pick)
+(define-key map (kbd "q")   'magit-log-select-quit)
+(define-key map (kbd "C-c C-k") 'magit-log-select-quit)
 map)
   "Keymap for `magit-log-select-mode'.")
 
diff --git a/lisp/magit-process.el b/lisp/magit-process.el
index 7fef19f..845129e 100644
--- a/lisp/magit-process.el
+++ b/lisp/magit-process.el
@@ -772,7 +772,7 @@ Magit status buffer."
   (let ((map (cl-gensym)))
 `(let ((,map (make-sparse-keymap)))
(set-keymap-parent ,map minibuffer-local-map)
-   (define-key ,map "\C-g"
+   (define-key ,map (kbd "C-g")
  (lambda ()
(interactive)
(ignore-errors (kill-process ,proc))
diff --git a/lisp/magit-reflog.el b/lisp/magit-reflog.el
index 384cfa4..a001dfc 100644
--- a/lisp/magit-reflog.el
+++ b/lisp/magit-reflog.el
@@ -136,8 +136,8 @@ If `HEAD' is detached, then show the reflog for that 
instead."
 (defvar magit-reflog-mode-map
   (let ((map (make-sparse-keymap)))
 (set-keymap-parent map magit-log-mode-map)
-(define-key map "\C-c\C-n" 'undefined)
-(define-key map "L" 'magit-margin-settings)
+(define-key map (kbd "C-c C-n") 'undefined)
+(define-key map (kbd "L")   'magit-margin-settings)
 map)
   "Keymap for `magit-reflog-mode'.")
 
diff --git a/lisp/magit-refs.el b/lisp/magit-refs.el
index 13ceec7..d3895ea 100644
--- a/lisp/magit-refs.el
+++ b/lisp/magit-refs.el
@@ -277,8 +277,8 @@ the outcome.
 (defvar magit-refs-mode-map
   (let ((map (make-sparse-keymap)))
 (set-keymap-parent map magit-mode-map)
-(define-key map "\C-y" 'magit-refs-set-show-commit-count)
-(define-key map "L"'magit-margin-settings)
+(define-key map (kbd "C-y") 'magit-refs-set-show-commit-count)
+(define-key map (kbd "L")   'magit-margin-settings)
 map)
   "Keymap for `magit-refs-mode'.")
 
diff --git a/lisp/magit-section.el b/lisp/magit-section.el
index 428e30b..d44074e 100644
--- a/lisp/magit-section.el
+++ b/lisp/magit-section.el
@@ -328,10 +328,10 @@ but that ship has sailed, thus this option."
 (define-key map (kbd   "n") 'magit-section-forward)
 (define-key map (kbd "M-p") 'magit-section-backward-sibling)
 (define-key map (kbd "M-n") 'magit-section-forward-sibling)
-(define-key map "1" 'magit-section-show-level-1)
-(define-key map "2" 'magit-section-show-level-2)
-(define-key map "3" 'magit-section-show-level-3)
-(define-key map "4" 'magit-section-show-level-4)
+(define-key map (kbd   "1") 'magit-section-show-level-1)
+(define-key map (kbd   "2") 'magit-section-show-level-2)
+(define-key map (kbd   "3") 'magit-sect

[nongnu] elpa/git-commit 5bba626 06/11: magit-help: New command

2021-08-13 Thread ELPA Syncer
branch: elpa/git-commit
commit 5bba6262933a0bfc54dec0d36a3d4e93e26204df
Author: Jonas Bernoulli 
Commit: Jonas Bernoulli 

magit-help: New command
---
 lisp/magit-mode.el | 5 +
 lisp/magit.el  | 1 +
 2 files changed, 6 insertions(+)

diff --git a/lisp/magit-mode.el b/lisp/magit-mode.el
index 26ea42d..2a042d1 100644
--- a/lisp/magit-mode.el
+++ b/lisp/magit-mode.el
@@ -443,6 +443,11 @@ which visits the thing at point using `browse-url'."
   (interactive)
   (user-error "There is no thing at point that could be browsed"))
 
+(defun magit-help ()
+  "Visit the Magit manual."
+  (interactive)
+  (info "magit"))
+
 (defvar bug-reference-map)
 (with-eval-after-load 'bug-reference
   (define-key bug-reference-map [remap magit-visit-thing]
diff --git a/lisp/magit.el b/lisp/magit.el
index 50e196b..04fe7c0 100644
--- a/lisp/magit.el
+++ b/lisp/magit.el
@@ -307,6 +307,7 @@ Also see info node `(magit)Commands for Buffers Visiting 
Files'."
 ("E" "Ediff"  magit-ediff)]
[("f" "Fetch"  magit-fetch)
 ("F" "Pull"   magit-pull)
+("h" "Help"   magit-help)
 ("I" "Init"   magit-init)
 ("j" "Jump to section"magit-status-jump  :if-mode magit-status-mode)
 ("j" "Display status" magit-status-quick :if-not-mode magit-status-mode)



[nongnu] elpa/git-commit b8e64dc 11/11: Remove stray whitespace

2021-08-13 Thread ELPA Syncer
branch: elpa/git-commit
commit b8e64dcb98677adeb00e6f9e52a5ae59732daafb
Author: Jonas Bernoulli 
Commit: Jonas Bernoulli 

Remove stray whitespace
---
 lisp/magit.el | 2 --
 1 file changed, 2 deletions(-)

diff --git a/lisp/magit.el b/lisp/magit.el
index 1bf695c..df068c4 100644
--- a/lisp/magit.el
+++ b/lisp/magit.el
@@ -365,8 +365,6 @@ This affects `magit-git-command', 
`magit-git-command-topdir',
 ;;;###autoload (autoload 'magit-run "magit" nil t)
 (transient-define-prefix magit-run ()
   "Run git or another command, or launch a graphical utility."
-
-
   [["Run git subcommand"
 ("!" "in repository root"   magit-git-command-topdir)
 ("p" "in working directory" magit-git-command)]



[nongnu] elpa/git-commit ae9a3eb 08/11: magit-dispatch: Bind magit-gitignore to "i" like in magit-mode-map

2021-08-13 Thread ELPA Syncer
branch: elpa/git-commit
commit ae9a3ebeb8051b235b8f2099bf5a0dde50b6a464
Author: Jonas Bernoulli 
Commit: Jonas Bernoulli 

magit-dispatch: Bind magit-gitignore to "i" like in magit-mode-map
---
 lisp/magit.el | 1 +
 1 file changed, 1 insertion(+)

diff --git a/lisp/magit.el b/lisp/magit.el
index 04fe7c0..33c960d 100644
--- a/lisp/magit.el
+++ b/lisp/magit.el
@@ -308,6 +308,7 @@ Also see info node `(magit)Commands for Buffers Visiting 
Files'."
[("f" "Fetch"  magit-fetch)
 ("F" "Pull"   magit-pull)
 ("h" "Help"   magit-help)
+("i" "Ignore" magit-gitignore)
 ("I" "Init"   magit-init)
 ("j" "Jump to section"magit-status-jump  :if-mode magit-status-mode)
 ("j" "Display status" magit-status-quick :if-not-mode magit-status-mode)



[nongnu] elpa/git-commit b54b537 07/11: magit-mode-map: Bind magit-init to "I" like in magit-dispatch

2021-08-13 Thread ELPA Syncer
branch: elpa/git-commit
commit b54b537dbace2c9cf3e1ceb084e9baeb00a8570a
Author: Jonas Bernoulli 
Commit: Jonas Bernoulli 

magit-mode-map: Bind magit-init to "I" like in magit-dispatch
---
 lisp/magit-mode.el | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/lisp/magit-mode.el b/lisp/magit-mode.el
index 2a042d1..7bb620d 100644
--- a/lisp/magit-mode.el
+++ b/lisp/magit-mode.el
@@ -363,7 +363,7 @@ recommended value."
 (define-key map "h" 'magit-dispatch)
 (define-key map "?" 'magit-dispatch)
 (define-key map "i" 'magit-gitignore)
-(define-key map "I" 'magit-gitignore)
+(define-key map "I" 'magit-init)
 (define-key map "j" 'magit-status-quick)
 (define-key map "J" 'magit-display-repository-buffer)
 (define-key map "k" 'magit-delete-thing)



[nongnu] elpa/git-commit 9d7a34e 04/11: Use RET and TAB syntax in key definitions

2021-08-13 Thread ELPA Syncer
branch: elpa/git-commit
commit 9d7a34ee8e23aba93eb96b9cbe7f36e025369157
Author: Jonas Bernoulli 
Commit: Jonas Bernoulli 

Use RET and TAB syntax in key definitions
---
 lisp/magit-mode.el| 4 ++--
 lisp/magit-section.el | 2 +-
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/lisp/magit-mode.el b/lisp/magit-mode.el
index 4b51eb3..26ea42d 100644
--- a/lisp/magit-mode.el
+++ b/lisp/magit-mode.el
@@ -337,8 +337,8 @@ recommended value."
   (let ((map (make-sparse-keymap)))
 (set-keymap-parent map magit-section-mode-map)
 (define-key map [C-return]'magit-visit-thing)
-(define-key map (kbd "C-m")   'magit-visit-thing)
-(define-key map (kbd "C-M-i") 'magit-dired-jump)
+(define-key map (kbd   "RET") 'magit-visit-thing)
+(define-key map (kbd "M-TAB") 'magit-dired-jump)
 (define-key map [M-tab]   'magit-section-cycle-diffs)
 (define-key map (kbd   "SPC") 'magit-diff-show-or-scroll-up)
 (define-key map (kbd "S-SPC") 'magit-diff-show-or-scroll-down)
diff --git a/lisp/magit-section.el b/lisp/magit-section.el
index 66da1e5..428e30b 100644
--- a/lisp/magit-section.el
+++ b/lisp/magit-section.el
@@ -318,7 +318,7 @@ but that ship has sailed, thus this option."
 (defvar magit-section-mode-map
   (let ((map (make-keymap)))
 (suppress-keymap map t)
-(define-key map (kbd "C-i") 'magit-section-toggle)
+(define-key map (kbd "TAB") 'magit-section-toggle)
 (define-key map [C-tab] 'magit-section-cycle)
 (define-key map [M-tab] 'magit-section-cycle)
 ;; [backtab] is the most portable binding for Shift+Tab.



[nongnu] elpa/git-commit updated (0348f1f -> b8e64dc)

2021-08-13 Thread ELPA Syncer
elpasync pushed a change to branch elpa/git-commit.

  from  0348f1f   magit-version: If installed from Melpa then also show 
base version
   new  4ee9c9a   Add several commands for switching to existing Magit 
buffers
   new  b1b5b85   magit-mode-map: Rearrange bindings
   new  a7ae411   magit-mode-map: Reindent bindings
   new  9d7a34e   Use RET and TAB syntax in key definitions
   new  413a98f   Use kbd function more when defining key bindings
   new  5bba626   magit-help: New command
   new  b54b537   magit-mode-map: Bind magit-init to "I" like in 
magit-dispatch
   new  ae9a3eb   magit-dispatch: Bind magit-gitignore to "i" like in 
magit-mode-map
   new  9bec1c5   magit-{mode-map,dispatch}: Add bindings for "H", "Q" and 
"Z"
   new  dbf3897   magit-dispatch: Refill columns
   new  b8e64dc   Remove stray whitespace


Summary of changes:
 Documentation/RelNotes/3.3.0.org | 11 
 Documentation/magit.org  | 44 ++--
 Documentation/magit.texi | 54 ++--
 lisp/magit-extras.el | 45 +
 lisp/magit-log.el| 20 +++
 lisp/magit-mode.el   | 45 +++--
 lisp/magit-process.el|  2 +-
 lisp/magit-reflog.el |  4 +--
 lisp/magit-refs.el   |  4 +--
 lisp/magit-section.el| 10 
 lisp/magit-status.el | 23 +
 lisp/magit.el| 27 
 12 files changed, 236 insertions(+), 53 deletions(-)



[nongnu] elpa/git-commit b1b5b85 02/11: magit-mode-map: Rearrange bindings

2021-08-13 Thread ELPA Syncer
branch: elpa/git-commit
commit b1b5b8553479126a2348d514ee050695e4075a76
Author: Jonas Bernoulli 
Commit: Jonas Bernoulli 

magit-mode-map: Rearrange bindings
---
 lisp/magit-mode.el | 14 +++---
 1 file changed, 7 insertions(+), 7 deletions(-)

diff --git a/lisp/magit-mode.el b/lisp/magit-mode.el
index 2e967e9..abeaf9a 100644
--- a/lisp/magit-mode.el
+++ b/lisp/magit-mode.el
@@ -340,19 +340,12 @@ recommended value."
 (define-key map (kbd "C-m") 'magit-visit-thing)
 (define-key map (kbd "C-M-i") 'magit-dired-jump)
 (define-key map [M-tab] 'magit-section-cycle-diffs)
-(define-key map (kbd   "P") 'magit-push)
-(define-key map (kbd   "k") 'magit-delete-thing)
-(define-key map (kbd   "K") 'magit-file-untrack)
-(define-key map (kbd   "i") 'magit-gitignore)
-(define-key map (kbd   "I") 'magit-gitignore)
 (define-key map (kbd "SPC") 'magit-diff-show-or-scroll-up)
 (define-key map (kbd "S-SPC") 'magit-diff-show-or-scroll-down)
 (define-key map (kbd "DEL") 'magit-diff-show-or-scroll-down)
 (define-key map "+" 'magit-diff-more-context)
 (define-key map "-" 'magit-diff-less-context)
 (define-key map "0" 'magit-diff-default-context)
-(define-key map "$" 'magit-process-buffer)
-(define-key map "%" 'magit-worktree)
 (define-key map "a" 'magit-cherry-apply)
 (define-key map "A" 'magit-cherry-pick)
 (define-key map "b" 'magit-branch)
@@ -369,14 +362,19 @@ recommended value."
 (define-key map "G" 'magit-refresh-all)
 (define-key map "h" 'magit-dispatch)
 (define-key map "?" 'magit-dispatch)
+(define-key map "i" 'magit-gitignore)
+(define-key map "I" 'magit-gitignore)
 (define-key map "j" 'magit-status-quick)
 (define-key map "J" 'magit-display-repository-buffer)
+(define-key map "k" 'magit-delete-thing)
+(define-key map "K" 'magit-file-untrack)
 (define-key map "l" 'magit-log)
 (define-key map "L" 'magit-log-refresh)
 (define-key map "m" 'magit-merge)
 (define-key map "M" 'magit-remote)
 (define-key map "o" 'magit-submodule)
 (define-key map "O" 'magit-subtree)
+(define-key map "P" 'magit-push)
 (define-key map "q" 'magit-mode-bury-buffer)
 (define-key map "r" 'magit-rebase)
 (define-key map "R" 'magit-file-rename)
@@ -396,6 +394,8 @@ recommended value."
 (define-key map "Y" 'magit-cherry)
 (define-key map "z" 'magit-stash)
 (define-key map "Z" 'magit-stash)
+(define-key map "%" 'magit-worktree)
+(define-key map "$" 'magit-process-buffer)
 (define-key map ":" 'magit-git-command)
 (define-key map "!" 'magit-run)
 (define-key map (kbd "C-c C-c") 'magit-dispatch)



[nongnu] elpa/git-commit 4ee9c9a 01/11: Add several commands for switching to existing Magit buffers

2021-08-13 Thread ELPA Syncer
branch: elpa/git-commit
commit 4ee9c9a1981cbc99b93623858edccfe9aee8f7d6
Author: Jonas Bernoulli 
Commit: Jonas Bernoulli 

Add several commands for switching to existing Magit buffers

Closes #4259.
---
 Documentation/RelNotes/3.3.0.org |  8 ++
 Documentation/magit.org  | 44 ++--
 Documentation/magit.texi | 54 ++--
 lisp/magit-extras.el | 45 +
 lisp/magit-mode.el   |  2 ++
 lisp/magit-status.el | 23 +
 lisp/magit.el|  3 +++
 7 files changed, 175 insertions(+), 4 deletions(-)

diff --git a/Documentation/RelNotes/3.3.0.org b/Documentation/RelNotes/3.3.0.org
index 0fc3075..adea68c 100644
--- a/Documentation/RelNotes/3.3.0.org
+++ b/Documentation/RelNotes/3.3.0.org
@@ -15,6 +15,14 @@
   Like most newly added expert arguments they have to be explicitly
   
[[https://magit.vc/manual/transient/Enabling-and-Disabling-Suffixes.html][revealed]].
  #4387
 
+- Added new command ~magit-status-quick~, which shows the status buffer
+  but avoids refreshing it for performance reasons.  #4259
+
+- Added new commands ~magit-display-repository-buffer~ (bound to ~j~ in
+  Magit buffers) and ~magit-switch-to-repository-buffer~ (bound to ~J~)
+  and variants for switching to any existing Magit buffer belonging
+  to the current repository.  #4259
+
 ** Fixes since v3.2.0
 
 - Make ~magit-branch-remote-head~ and ~magit-branch-current~ fall back
diff --git a/Documentation/magit.org b/Documentation/magit.org
index 1f510f1..9577830 100644
--- a/Documentation/magit.org
+++ b/Documentation/magit.org
@@ -8,7 +8,7 @@
 #+TEXINFO_DIR_CATEGORY: Emacs
 #+TEXINFO_DIR_TITLE: Magit: (magit).
 #+TEXINFO_DIR_DESC: Using Git from Emacs with Magit.
-#+SUBTITLE: for version 3.2.1 (v3.2.1-11-g16316ed16+1)
+#+SUBTITLE: for version 3.2.1 (v3.2.1-13-g0348f1f87+1)
 
 #+TEXINFO_DEFFN: t
 #+OPTIONS: H:4 num:3 toc:2
@@ -25,7 +25,7 @@ directly from within Emacs.  While many fine Git clients 
exist, only
 Magit and Git itself deserve to be called porcelains.
 
 #+TEXINFO: @noindent
-This manual is for Magit version 3.2.1 (v3.2.1-11-g16316ed16+1).
+This manual is for Magit version 3.2.1 (v3.2.1-13-g0348f1f87+1).
 
 #+BEGIN_QUOTE
 Copyright (C) 2015-2021 Jonas Bernoulli 
@@ -2065,6 +2065,34 @@ that it should be bound globally.  We recommend using 
~C-x g~:
   ~magit-list-repositories~.  It also affects ~magit-status~ (which see)
   in potentially surprising ways (see above).
 
+- Command: magit-status-quick
+
+  This command is an alternative to ~magit-status~ that usually avoids
+  refreshing the status buffer.
+
+  If the status buffer of the current Git repository exists but isn't
+  being displayed in the selected frame, then it is displayed without
+  being refreshed.
+
+  If the status buffer is being displayed in the selected frame,
+  then this command refreshes it.
+
+  Prefix arguments have the same meaning as for ~magit-status~,
+  and additionally cause the buffer to be refresh.
+
+  To use this command add this to your init file:
+
+  #+BEGIN_SRC emacs-lisp
+(global-set-key (kbd "C-x g") 'magit-status-quick).
+  #+END_SRC
+
+  If you do that and then for once want to redisplay the buffer and
+  also immediately refresh it, then type ~C-x g~ followed by ~g~.
+
+  A possible alternative command is ~magit-display-repository-buffer~.
+  It supports displaying any existing Magit buffer that belongs to the
+  current repository; not just the status buffer.
+
 - Command: ido-enter-magit-status
 
   From an Ido prompt used to open a file, instead drop into
@@ -6900,6 +6928,18 @@ Also see [[man:git-worktree]]
 
 ** Common Commands
 
+- Command: magit-switch-to-repository-buffer
+- Command: magit-switch-to-repository-buffer-other-window
+- Command: magit-switch-to-repository-buffer-other-frame
+- Command: magit-display-repository-buffer
+
+  These commands read any existing Magit buffer that belongs to the
+  current repository from the user and then switch to the selected
+  buffer (without refreshing it).
+
+  The last variant uses ~magit-display-buffer~ to do so and thus
+  respects ~magit-display-buffer-function~.
+
 These are some of the commands that can be used in all buffers whose
 major-modes derive from ~magit-mode~.  There are other common commands
 beside the ones below, but these didn't fit well anywhere else.
diff --git a/Documentation/magit.texi b/Documentation/magit.texi
index df73be4..049db74 100644
--- a/Documentation/magit.texi
+++ b/Documentation/magit.texi
@@ -31,7 +31,7 @@ General Public License for more details.
 @finalout
 @titlepage
 @title Magit User Manual
-@subtitle for version 3.2.1 (v3.2.1-11-g16316ed16+1)
+@subtitle for version 3.2.1 (v3.2.1-13-g0348f1f87+1)
 @author Jonas Bernoulli
 @page
 @vskip 0pt plus 1filll
@@ -53,7 +53,7 @@ directly from within Emacs.  While many fine Git clients 
exist, only
 Magit and Git itself dese

[nongnu] elpa/git-commit dbf3897 10/11: magit-dispatch: Refill columns

2021-08-13 Thread ELPA Syncer
branch: elpa/git-commit
commit dbf3897466bb7462c9e871755e4bd0564c580a1d
Author: Jonas Bernoulli 
Commit: Jonas Bernoulli 

magit-dispatch: Refill columns
---
 lisp/magit.el | 20 ++--
 1 file changed, 10 insertions(+), 10 deletions(-)

diff --git a/lisp/magit.el b/lisp/magit.el
index b613094..1bf695c 100644
--- a/lisp/magit.el
+++ b/lisp/magit.el
@@ -304,12 +304,12 @@ Also see info node `(magit)Commands for Buffers Visiting 
Files'."
 ("d" "Diff"   magit-diff)
 ("D" "Diff (change)"  magit-diff-refresh)
 ("e" "Ediff (dwim)"   magit-ediff-dwim)
-("E" "Ediff"  magit-ediff)]
-   [("f" "Fetch"  magit-fetch)
+("E" "Ediff"  magit-ediff)
+("f" "Fetch"  magit-fetch)
 ("F" "Pull"   magit-pull)
 ("h" "Help"   magit-help)
-("H" "Section info"   magit-describe-section :if-derived magit-mode)
-("i" "Ignore" magit-gitignore)
+("H" "Section info"   magit-describe-section :if-derived magit-mode)]
+   [("i" "Ignore" magit-gitignore)
 ("I" "Init"   magit-init)
 ("j" "Jump to section"magit-status-jump  :if-mode magit-status-mode)
 ("j" "Display status" magit-status-quick :if-not-mode magit-status-mode)
@@ -319,17 +319,17 @@ Also see info node `(magit)Commands for Buffers Visiting 
Files'."
 ("m" "Merge"  magit-merge)
 ("M" "Remote" magit-remote)
 ("o" "Submodule"  magit-submodule)
-("O" "Subtree"magit-subtree)]
-   [("P" "Push"   magit-push)
-("Q" "Command"magit-git-command)
-("r" "Rebase" magit-rebase)
+("O" "Subtree"magit-subtree)
+("P" "Push"   magit-push)
+("Q" "Command"magit-git-command)]
+   [("r" "Rebase" magit-rebase)
 ("t" "Tag"magit-tag)
 ("T" "Note"   magit-notes)
 ("V" "Revert" magit-revert)
 ("w" "Apply patches"  magit-am)
 ("W" "Format patches" magit-patch)
-("X" "Reset"  magit-reset)]
-   [("y" "Show Refs"  magit-show-refs)
+("X" "Reset"  magit-reset)
+("y" "Show Refs"  magit-show-refs)
 ("Y" "Cherries"   magit-cherry)
 ("z" "Stash"  magit-stash)
 ("Z" "Worktree"   magit-worktree)



[nongnu] elpa/git-commit 9bec1c5 09/11: magit-{mode-map, dispatch}: Add bindings for "H", "Q" and "Z"

2021-08-13 Thread ELPA Syncer
branch: elpa/git-commit
commit 9bec1c54ab0705eb68ae4aa6c8a0498999a018f6
Author: Jonas Bernoulli 
Commit: Jonas Bernoulli 

magit-{mode-map,dispatch}: Add bindings for "H", "Q" and "Z"
---
 Documentation/RelNotes/3.3.0.org | 3 +++
 lisp/magit-mode.el   | 6 --
 lisp/magit.el| 6 --
 3 files changed, 11 insertions(+), 4 deletions(-)

diff --git a/Documentation/RelNotes/3.3.0.org b/Documentation/RelNotes/3.3.0.org
index adea68c..9f7b760 100644
--- a/Documentation/RelNotes/3.3.0.org
+++ b/Documentation/RelNotes/3.3.0.org
@@ -23,6 +23,9 @@
   and variants for switching to any existing Magit buffer belonging
   to the current repository.  #4259
 
+- A few existing commands got a new or better binding in
+  ~magit-dispatch~ and/or ~magit-mode-map~.
+
 ** Fixes since v3.2.0
 
 - Make ~magit-branch-remote-head~ and ~magit-branch-current~ fall back
diff --git a/lisp/magit-mode.el b/lisp/magit-mode.el
index 7bb620d..4d8e12b 100644
--- a/lisp/magit-mode.el
+++ b/lisp/magit-mode.el
@@ -362,6 +362,7 @@ recommended value."
 (define-key map "G" 'magit-refresh-all)
 (define-key map "h" 'magit-dispatch)
 (define-key map "?" 'magit-dispatch)
+(define-key map "H" 'magit-describe-section)
 (define-key map "i" 'magit-gitignore)
 (define-key map "I" 'magit-init)
 (define-key map "j" 'magit-status-quick)
@@ -376,6 +377,8 @@ recommended value."
 (define-key map "O" 'magit-subtree)
 (define-key map "P" 'magit-push)
 (define-key map "q" 'magit-mode-bury-buffer)
+(define-key map "Q" 'magit-git-command)
+(define-key map ":" 'magit-git-command)
 (define-key map "r" 'magit-rebase)
 (define-key map "R" 'magit-file-rename)
 (define-key map "s" 'magit-stage-file)
@@ -393,10 +396,9 @@ recommended value."
 (define-key map "y" 'magit-show-refs)
 (define-key map "Y" 'magit-cherry)
 (define-key map "z" 'magit-stash)
-(define-key map "Z" 'magit-stash)
+(define-key map "Z" 'magit-worktree)
 (define-key map "%" 'magit-worktree)
 (define-key map "$" 'magit-process-buffer)
-(define-key map ":" 'magit-git-command)
 (define-key map "!" 'magit-run)
 (define-key map (kbd "C-c C-c") 'magit-dispatch)
 (define-key map (kbd "C-c C-e") 'magit-edit-thing)
diff --git a/lisp/magit.el b/lisp/magit.el
index 33c960d..b613094 100644
--- a/lisp/magit.el
+++ b/lisp/magit.el
@@ -308,6 +308,7 @@ Also see info node `(magit)Commands for Buffers Visiting 
Files'."
[("f" "Fetch"  magit-fetch)
 ("F" "Pull"   magit-pull)
 ("h" "Help"   magit-help)
+("H" "Section info"   magit-describe-section :if-derived magit-mode)
 ("i" "Ignore" magit-gitignore)
 ("I" "Init"   magit-init)
 ("j" "Jump to section"magit-status-jump  :if-mode magit-status-mode)
@@ -320,6 +321,7 @@ Also see info node `(magit)Commands for Buffers Visiting 
Files'."
 ("o" "Submodule"  magit-submodule)
 ("O" "Subtree"magit-subtree)]
[("P" "Push"   magit-push)
+("Q" "Command"magit-git-command)
 ("r" "Rebase" magit-rebase)
 ("t" "Tag"magit-tag)
 ("T" "Note"   magit-notes)
@@ -330,8 +332,8 @@ Also see info node `(magit)Commands for Buffers Visiting 
Files'."
[("y" "Show Refs"  magit-show-refs)
 ("Y" "Cherries"   magit-cherry)
 ("z" "Stash"  magit-stash)
-("!" "Run"magit-run)
-("%" "Worktree"   magit-worktree)]]
+("Z" "Worktree"   magit-worktree)
+("!" "Run"magit-run)]]
   ["Applying changes"
:if-derived magit-mode
[("a" "Apply"  magit-apply)



[nongnu] elpa/magit updated (0348f1f -> b8e64dc)

2021-08-13 Thread ELPA Syncer
elpasync pushed a change to branch elpa/magit.

  from  0348f1f   magit-version: If installed from Melpa then also show 
base version
  adds  4ee9c9a   Add several commands for switching to existing Magit 
buffers
  adds  b1b5b85   magit-mode-map: Rearrange bindings
  adds  a7ae411   magit-mode-map: Reindent bindings
  adds  9d7a34e   Use RET and TAB syntax in key definitions
  adds  413a98f   Use kbd function more when defining key bindings
  adds  5bba626   magit-help: New command
  adds  b54b537   magit-mode-map: Bind magit-init to "I" like in 
magit-dispatch
  adds  ae9a3eb   magit-dispatch: Bind magit-gitignore to "i" like in 
magit-mode-map
  adds  9bec1c5   magit-{mode-map,dispatch}: Add bindings for "H", "Q" and 
"Z"
  adds  dbf3897   magit-dispatch: Refill columns
  adds  b8e64dc   Remove stray whitespace

No new revisions were added by this update.

Summary of changes:
 Documentation/RelNotes/3.3.0.org | 11 
 Documentation/magit.org  | 44 ++--
 Documentation/magit.texi | 54 ++--
 lisp/magit-extras.el | 45 +
 lisp/magit-log.el| 20 +++
 lisp/magit-mode.el   | 45 +++--
 lisp/magit-process.el|  2 +-
 lisp/magit-reflog.el |  4 +--
 lisp/magit-refs.el   |  4 +--
 lisp/magit-section.el| 10 
 lisp/magit-status.el | 23 +
 lisp/magit.el| 27 
 12 files changed, 236 insertions(+), 53 deletions(-)



[nongnu] elpa/magit-section updated (0348f1f -> b8e64dc)

2021-08-13 Thread ELPA Syncer
elpasync pushed a change to branch elpa/magit-section.

  from  0348f1f   magit-version: If installed from Melpa then also show 
base version
  adds  4ee9c9a   Add several commands for switching to existing Magit 
buffers
  adds  b1b5b85   magit-mode-map: Rearrange bindings
  adds  a7ae411   magit-mode-map: Reindent bindings
  adds  9d7a34e   Use RET and TAB syntax in key definitions
  adds  413a98f   Use kbd function more when defining key bindings
  adds  5bba626   magit-help: New command
  adds  b54b537   magit-mode-map: Bind magit-init to "I" like in 
magit-dispatch
  adds  ae9a3eb   magit-dispatch: Bind magit-gitignore to "i" like in 
magit-mode-map
  adds  9bec1c5   magit-{mode-map,dispatch}: Add bindings for "H", "Q" and 
"Z"
  adds  dbf3897   magit-dispatch: Refill columns
  adds  b8e64dc   Remove stray whitespace

No new revisions were added by this update.

Summary of changes:
 Documentation/RelNotes/3.3.0.org | 11 
 Documentation/magit.org  | 44 ++--
 Documentation/magit.texi | 54 ++--
 lisp/magit-extras.el | 45 +
 lisp/magit-log.el| 20 +++
 lisp/magit-mode.el   | 45 +++--
 lisp/magit-process.el|  2 +-
 lisp/magit-reflog.el |  4 +--
 lisp/magit-refs.el   |  4 +--
 lisp/magit-section.el| 10 
 lisp/magit-status.el | 23 +
 lisp/magit.el| 27 
 12 files changed, 236 insertions(+), 53 deletions(-)



[nongnu] elpa/editorconfig 3f56ff9: Update texi doc

2021-08-13 Thread ELPA Syncer
branch: elpa/editorconfig
commit 3f56ff9e0e4a7c8d45e25a7a4bf239b261c39d28
Author: 10sr <8.slas...@gmail.com>
Commit: 10sr <8.slas...@gmail.com>

Update texi doc
---
 doc/editorconfig.texi | 284 ++
 1 file changed, 150 insertions(+), 134 deletions(-)

diff --git a/doc/editorconfig.texi b/doc/editorconfig.texi
index 2fd8d5c..5e7d3b8 100644
--- a/doc/editorconfig.texi
+++ b/doc/editorconfig.texi
@@ -8,44 +8,51 @@
 @anchor{#editorconfig-emacs-plugin}
 This is an @uref{https://editorconfig.org,EditorConfig} plugin for
 @uref{https://www.gnu.org/software/emacs/,Emacs}.
+
 @menu
-* Installation::
+* Getting Started::
 * Supported properties::
 * Customize::
-* Testing::
+* Troubleshooting::
 * Submitting Bugs and Feature Requests::
 * License::
 @end menu
 
-@node Installation
-@section Installation
-@anchor{#installation}
-Download the
-@uref{https://github.com/editorconfig/editorconfig-core-c,EditorConfig C
-Core} and follow the instructions in the README and INSTALL files to
-install it.
+@node Getting Started
+@section Getting Started
+@anchor{#getting-started}
 
-This plugin also has a built-in core library implemented in Emacs-Lisp,
-and fallback to it when no core executable is found.
+@menu
+* packageel::
+* use-package::
+* Manual installation::
+@end menu
 
-In either case, copy @code{.el} files in this repository to
-@code{~/.emacs.d/lisp} and add the following to your @code{~/.emacs}
-file:
+@node packageel
+@subsection package.el
+@anchor{#package.el}
+This package is available from
+@uref{https://melpa.org/#/editorconfig,MELPA},
+@uref{https://stable.melpa.org/#/editorconfig,MELPA Stable} and
+@uref{http://elpa.nongnu.org/nongnu/editorconfig.html,NonGNU ELPA}.
+Install from these repositories and enable global minor-mode
+@code{editorconfig-mode}:
 
 @verbatim
-(add-to-list 'load-path "~/.emacs.d/lisp")
-(require 'editorconfig)
 (editorconfig-mode 1)
 @end verbatim
 
-Alternatively, you can find the package available on
-@uref{https://melpa.org/#/editorconfig,MELPA} and
-@uref{https://stable.melpa.org/#/editorconfig,MELPA Stable}
-(@uref{http://marmalade-repo.org/packages/editorconfig,The Marmalade
-package} is deprecated).
+Normally, enabling @code{editorconfig-mode} should be enough for this
+plugin to work: all other configurations are optional. This mode sets up
+hooks so that EditorConfig properties will be loaded and applied to the
+new buffers automatically when visiting files.
 
-Or if you use
-@uref{https://www.emacswiki.org/emacs/UsePackage,@strong{use-package}}:
+@node use-package
+@subsection use-package
+@anchor{#use-package}
+If you use
+@uref{https://www.emacswiki.org/emacs/UsePackage,@strong{use-package}},
+add the following to your @code{init.el} file:
 
 @verbatim
 (use-package editorconfig
@@ -54,6 +61,18 @@ Or if you use
   (editorconfig-mode 1))
 @end verbatim
 
+@node Manual installation
+@subsection Manual installation
+@anchor{#manual-installation}
+Copy all @code{.el} files in this repository to @code{~/.emacs.d/lisp}
+and add the following:
+
+@verbatim
+(add-to-list 'load-path "~/.emacs.d/lisp")
+(require 'editorconfig)
+(editorconfig-mode 1)
+@end verbatim
+
 @node Supported properties
 @section Supported properties
 @anchor{#supported-properties}
@@ -85,8 +104,10 @@ trailing-newline-free
 @code{max_line_length}
 @item
 @code{file_type_ext} (Experimental)
+(See below)
 @item
 @code{file_type_emacs} (Experimental)
+(See below)
 @item
 @code{root} (only used by EditorConfig core)
 @end itemize
@@ -96,78 +117,86 @@ implementing missing features warmly welcomed! Typically, 
you will want
 to tie these to native functionality, or the configuration of existing
 packages handling the feature.
 
-As several packages have their own handling of, say, indentation, we might
-not yet cover some mode you use, but we try to add the ones that show up
-on our radar. Similarly, we don't yet hook in to all different packages
-for whitespace trimming to inform them about editorconfig settings, but
-aim for better coverage of things like
-@uref{ftp://ftp.lysator.liu.se/pub/emacs/ws-trim.el,ws-trim}.
+As several packages have their own handling of, say, indentation, we
+might not yet cover some mode you use, but we try to add the ones that
+show up on our radar.
+
 @menu
-* File Type::
+* File Type file_type_ext file_type_emacs::
 @end menu
 
-@node File Type
-@subsection File Type
-@anchor{#file-type}
-This plugin has experimental supports for @code{file_type_ext} and
-@code{file_type_emacs}, which specify ``file types'' for files. As for
-Emacs, it means @code{major-mode} can be set.
-
-@strong{file_type_ext} When it is set to @code{md} for @code{a.txt}, for
-example, @code{major-mode} will be decided as if the file name would be
-@code{a.txt.md} (and thus @code{markdown-mode} is likely to be used).
-
-@strong{file_type_emacs} When it is set to @code{markdown} for
-@code{a.txt}, @code{markdown-mode} will be enabled when opening
-@code{a.txt

[nongnu] elpa/editorconfig 375418d: Prepare v0.8.2 (#262)

2021-08-13 Thread ELPA Syncer
branch: elpa/editorconfig
commit 375418d1d63f6ec780876593181b6d39054919da
Author: 10sr <8.slas...@gmail.com>
Commit: GitHub 

Prepare v0.8.2 (#262)

* Update CHANGELOG

* 2021

* Prepare v0.8.2
---
 CHANGELOG.md| 47 +++--
 editorconfig-conf-mode.el   |  2 +-
 editorconfig-core-handle.el |  2 +-
 editorconfig-core.el|  2 +-
 editorconfig-fnmatch.el |  2 +-
 editorconfig.el |  4 ++--
 6 files changed, 51 insertions(+), 8 deletions(-)

diff --git a/CHANGELOG.md b/CHANGELOG.md
index 10df711..2b22162 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -5,19 +5,46 @@ All notable changes to this project will be documented in 
this file.
 The format is based on [Keep a 
Changelog](https://keepachangelog.com/en/1.0.0/),
 and this project adheres to [Semantic 
Versioning](https://semver.org/spec/v2.0.0.html).
 
-
 ## [Unreleased]
 
 ### Added
 
+### Changed
+
+### Deprecated
+
+### Removed
+
+### Fixed
+
+### Security
+
+
+## [0.8.2] - 2021-08-13
+
+### Added
+
 - Add rustic-mode to editorconfig-indentation-alist ([#208])
 - Add conf-mode abbrev-table definitions ([#220])
+- Add meson-mode indentation rule ([#253])
+- Add support for rjsx-mode ([#254])
+- Update README for NonGNU ELPA repository ([#259])
+- Add new implementation of editorconfig-mode ([#248], [#250], [#251], [#255], 
[#258], [#260])
+  - By default this is disabled: set `(setq 
editorconfig--enable-20210221-testing t)` to use this
 
 ### Fixed
 
 - Fix so that "?" does not match "/" ([#211])
 - Fix document typo ([#213])
 - Don't make unchanged vars buffer-local ([#222])
+- Silence byte-compiler warnings ([#235])
+- Use revert-buffer-with-coding-system to set coding system ([#236])
+- Do not run editorconfig-apply on recentf-save-file ([#241])
+- Skip special-mode buffers when applying ([#247])
+- Stop excluding remote files by default ([#234], [#245])
+- Fix editorconfig execution for remote hosts via tramp ([#249])
+- Add minor fixes to tests ([#252])
+- Fix excluding the recentf-save-file when in a symlinked directory ([#256])
 
 ### Changed
 
@@ -199,7 +226,8 @@ and this project adheres to [Semantic 
Versioning](https://semver.org/spec/v2.0.0
 *Undocumented*
 
 
-[Unreleased]: 
https://github.com/editorconfig/editorconfig-emacs/compare/v0.8.1...HEAD
+[Unreleased]: 
https://github.com/editorconfig/editorconfig-emacs/compare/v0.8.2...HEAD
+[0.8.2]: 
https://github.com/editorconfig/editorconfig-emacs/compare/v0.8.1...v0.8.2
 [0.8.1]: 
https://github.com/editorconfig/editorconfig-emacs/compare/v0.8.0...v0.8.1
 [0.8.0]: 
https://github.com/editorconfig/editorconfig-emacs/compare/v0.7.14...v0.8.0
 [0.7.14]: 
https://github.com/editorconfig/editorconfig-emacs/compare/v0.7.13...v0.7.14
@@ -225,6 +253,21 @@ and this project adheres to [Semantic 
Versioning](https://semver.org/spec/v2.0.0
 [0.3]: https://github.com/editorconfig/editorconfig-emacs/compare/v0.2...v0.3
 [0.2]: https://github.com/editorconfig/editorconfig-emacs/compare/v0.1...v0.2
 [0.1]: https://github.com/editorconfig/editorconfig-emacs/releases/tag/v0.1
+[#260]: https://github.com/editorconfig/editorconfig-emacs/issues/260
+[#258]: https://github.com/editorconfig/editorconfig-emacs/issues/258
+[#255]: https://github.com/editorconfig/editorconfig-emacs/issues/255
+[#251]: https://github.com/editorconfig/editorconfig-emacs/issues/251
+[#250]: https://github.com/editorconfig/editorconfig-emacs/issues/250
+[#248]: https://github.com/editorconfig/editorconfig-emacs/issues/248
+[#259]: https://github.com/editorconfig/editorconfig-emacs/issues/259
+[#256]: https://github.com/editorconfig/editorconfig-emacs/issues/256
+[#252]: https://github.com/editorconfig/editorconfig-emacs/issues/252
+[#249]: https://github.com/editorconfig/editorconfig-emacs/issues/249
+[#245]: https://github.com/editorconfig/editorconfig-emacs/issues/245
+[#234]: https://github.com/editorconfig/editorconfig-emacs/issues/234
+[#241]: https://github.com/editorconfig/editorconfig-emacs/issues/241
+[#236]: https://github.com/editorconfig/editorconfig-emacs/issues/236
+[#235]: https://github.com/editorconfig/editorconfig-emacs/issues/235
 [#222]: https://github.com/editorconfig/editorconfig-emacs/issues/222
 [#222]: https://github.com/editorconfig/editorconfig-emacs/issues/222
 [#220]: https://github.com/editorconfig/editorconfig-emacs/issues/220
diff --git a/editorconfig-conf-mode.el b/editorconfig-conf-mode.el
index 613dd7c..9d4182c 100644
--- a/editorconfig-conf-mode.el
+++ b/editorconfig-conf-mode.el
@@ -1,6 +1,6 @@
 ;;; editorconfig-conf-mode.el --- Major mode for editing .editorconfig files  
-*- lexical-binding: t -*-
 
-;; Copyright (C) 2011-2020 EditorConfig Team
+;; Copyright (C) 2011-2021 EditorConfig Team
 
 ;; Author: EditorConfig Team 
 
diff --git a/editorconfig-core-handle.el b/editorconfig-core-handle.el
index d6a212f..afe2dfd 100644
--- a/editorconfig-core-handle.el
+++ b/editorconfig-core-handle.el
@@ -1,6 +1

[elpa] externals/auctex 51c960c: Release GNU AUCTeX 13.0.13

2021-08-13 Thread Tassilo Horn
branch: externals/auctex
commit 51c960c49e26fcd3f17ce7b7eba11399e7f847c1
Author: Tassilo Horn 
Commit: Tassilo Horn 

Release GNU AUCTeX 13.0.13

* GNU AUCTeX Version 13.0.13 released.
---
 auctex.el  |   2 +-
 auctex.info| 204 ++---
 preview-latex.info |  78 ++--
 tex-site.el|   4 +-
 4 files changed, 144 insertions(+), 144 deletions(-)

diff --git a/auctex.el b/auctex.el
index 09775e9..4ea1109 100644
--- a/auctex.el
+++ b/auctex.el
@@ -2,7 +2,7 @@
 
 ;; Copyright (C) 2014-2021 Free Software Foundation, Inc.
 
-;; Version: 13.0.12
+;; Version: 13.0.13
 ;; URL: https://www.gnu.org/software/auctex/
 ;; Maintainer: auctex-de...@gnu.org
 ;; Notifications-To: auctex-di...@gnu.org
diff --git a/auctex.info b/auctex.info
index ebc0391..8c4828b 100644
--- a/auctex.info
+++ b/auctex.info
@@ -1,7 +1,7 @@
 This is auctex.info, produced by makeinfo version 6.8 from auctex.texi.
 
-This manual is for AUCTeX (version 13.0.12.2021-08-12 from 2021-08-12),
-a sophisticated TeX environment for Emacs.
+This manual is for AUCTeX (version 13.0.13 from 2021-08-13), a
+sophisticated TeX environment for Emacs.
 
Copyright (C) 1992-1995, 2001, 2002, 2004-2021 Free Software
 Foundation, Inc.
@@ -6016,8 +6016,8 @@ A.1 Copying this Manual
 
 The copyright notice for this manual is:
 
-   This manual is for AUCTeX (version 13.0.12.2021-08-12 from
-2021-08-12), a sophisticated TeX environment for Emacs.
+   This manual is for AUCTeX (version 13.0.13 from 2021-08-13), a
+sophisticated TeX environment for Emacs.
 
Copyright (C) 1992-1995, 2001, 2002, 2004-2021 Free Software
 Foundation, Inc.
@@ -9299,104 +9299,104 @@ Concept Index
 
 
 Tag Table:
-Node: Top929
-Node: Copying7386
-Node: Introduction9331
-Node: Summary9601
-Node: Installation12334
-Node: Prerequisites14307
-Node: Configure16506
-Node: Build/install and uninstall21084
-Node: Loading the package21837
-Node: Advice for package providers23530
-Node: Advice for non-privileged users26335
-Node: Installation under MS Windows31681
-Node: Customizing45303
-Node: Quick Start46888
-Ref: Quick Start-Footnote-149010
-Node: Editing Facilities49104
-Node: Processing Facilities53799
-Node: Editing58528
-Node: Quotes59858
-Node: Font Specifiers68298
-Node: Sectioning70366
-Node: Environments74885
-Node: Equations80038
-Node: Floats80630
-Node: Itemize-like82634
-Node: Tabular-like83356
-Node: Customizing Environments85129
-Node: Mathematics85369
-Node: Completion88805
-Node: Marking95836
-Node: Marking (LaTeX)96460
-Node: Marking (Texinfo)97402
-Node: Commenting99013
-Node: Indenting100338
-Node: Filling106352
-Node: Display112224
-Node: Font Locking114719
-Node: Fontification of macros116798
-Node: Fontification of quotes126314
-Node: Fontification of math127808
-Node: Verbatim content131476
-Node: Faces132250
-Node: Known problems132747
-Node: Folding133744
-Node: Outline144517
-Node: Narrowing145796
-Node: Prettifying146865
-Node: Processing148102
-Node: Commands149430
-Node: Starting a Command149986
-Node: Selecting a Command154901
-Node: Processor Options163999
-Node: Viewing174392
-Node: Starting Viewers174766
-Node: I/O Correlation180416
-Node: Debugging185645
-Node: Ignoring warnings188263
-Node: Error overview190322
-Node: Checking192230
-Node: Control193846
-Node: Cleaning195955
-Node: Documentation197314
-Node: Customization198029
-Node: Modes and Hooks198522
-Node: Multifile200410
-Node: Parsing Files205142
-Node: Internationalization210131
-Node: European211479
-Node: Japanese218958
-Node: Automatic224022
-Node: Automatic Global226513
-Node: Automatic Private227645
-Node: Automatic Local228981
-Node: Style Files230012
-Node: Simple Style230818
-Node: Adding Macros234539
-Node: Adding Environments244038
-Node: Adding Other248702
-Node: Hacking the Parser251251
-Node: Appendices255240
-Node: Copying this Manual255536
-Node: GNU Free Documentation License256431
-Node: Changes281552
-Node: Development332381
-Node: Mid-term Goals333027
-Node: Wishlist334971
-Node: Bugs340419
-Node: FAQ341520
-Node: Texinfo mode346708
-Node: Exploiting347842
-Node: Superseding348660
-Node: Mapping352891
-Node: Unbinding354726
-Node: Indices355547
-Node: Key Index355710
-Node: Function Index363239
-Node: Variable Index374998
-Node: Concept Index399774
+Node: Top918
+Node: Copying7375
+Node: Introduction9320
+Node: Summary9590
+Node: Installation12323
+Node: Prerequisites14296
+Node: Configure16495
+Node: Build/install and uninstall21073
+Node: Loading the package21826
+Node: Advice for package providers23519
+Node: Advice for non-privileged users26324
+Node: Installation under MS Windows31670
+Node: Customizing45292
+Node: Quick Start46877
+Ref: Quick Start-Footnote-148999
+Node: Editing Facilities49093
+Node: Processing Facilities53788
+Node: Editing58517
+Node: Quotes59847
+No

[elpa] externals/emms 89e2caf: * emms.el: add player preference

2021-08-13 Thread ELPA Syncer
branch: externals/emms
commit 89e2caf942299b64360280c2606cf2553dccb58a
Author: Yoni Rabkin 
Commit: Yoni Rabkin 

* emms.el: add player preference
---
 emms.el | 38 +-
 1 file changed, 37 insertions(+), 1 deletion(-)

diff --git a/emms.el b/emms.el
index 37116b1..f3bb678 100644
--- a/emms.el
+++ b/emms.el
@@ -314,6 +314,10 @@ being the playlist buffer.")
 (defvar emms-playlist-buffer nil
   "The current playlist buffer, if any.")
 
+(defvar emms-players-preference-f #'emms-players-default-preference-f
+  "Default function for player preference.")
+
+
 
 ;;; Macros
 
@@ -1454,11 +1458,43 @@ non-nil, or nil if no such player exists."
 (car lis)
   nil)))
 
+(defun emms-players-default-preference-f (track players)
+  "Default preference function.
+
+Returns the first player."
+  (ignore track)
+  (car players))
+
+(defun emms-players-preference (track players)
+  "Call `emms-players-preference-f' with TRACK and PLAYERS.
+
+The function `emms-players-preference-f' must accept an Emms
+track and a list of players. It can be assumed that all of the
+players in PLAYERS can play TRACK.
+
+The function must return one of the players from PLAYERS."
+  (funcall emms-players-preference-f track players))
+
+(defun emms-players-for (track)
+  "Return a player for TRACK.
+
+If the track can be played by more than one player, call
+`emms-players-preference' to choose a player."
+  (let (players)
+(mapc
+ #'(lambda (player)
+(when (funcall (emms-player-get player 'playablep) track)
+  (push player players)))
+ emms-player-list)
+(if (< 1 (length players))
+   (emms-players-preference track players)
+  (car players
+
 (defun emms-player-start (track)
   "Start playing TRACK."
   (if emms-player-playing-p
   (error "A player is already playing")
-(let ((player (emms-player-for track)))
+(let ((player (emms-players-for track)))
   (if (not player)
   (error "Don't know how to play track: %S" track)
 ;; Change default-directory so we don't accidentally block any



[elpa] elpa-admin 384e805: * elpa-admin.el (elpaa--sandbox): Default to nil on w32 and macos

2021-08-13 Thread monnier--- via
branch: elpa-admin
commit 384e8059a11625ecbfad22bb295ba23bd15a2e41
Author: Stefan Monnier 
Commit: Stefan Monnier 

* elpa-admin.el (elpaa--sandbox): Default to nil on w32 and macos

This basically reverts commit 069c128aea984b2f98567a5dcef82bee71f46e69,
because it provides a different solution to the same original problem.

(elpaa--make-one-tarball, elpaa--make-one-tarball-1):
Remove `no-symlink` arg.  Ignore symlink failure instead.
(elpaa-batch-make-one-devel, elpaa-batch-make-one-info): Delete functions.
(elpaa--make-one-package): Remove `devel-only` arg.
(elpaa--release-email): Handle multiple maintainers.
---
 elpa-admin.el | 77 +++
 1 file changed, 41 insertions(+), 36 deletions(-)

diff --git a/elpa-admin.el b/elpa-admin.el
index f060d1f..16bc7a0 100644
--- a/elpa-admin.el
+++ b/elpa-admin.el
@@ -55,11 +55,17 @@
 
 (defvar elpaa--sandbox-extra-ro-dirs nil)
 
-(defvar elpaa--sandbox t
+(defvar elpaa--sandbox
+  ;; Currently sandboxing is implemented using `bwrap' which AFAIK doesn't
+  ;; exist for w32 nor for macos, so there's no point defaulting to non-nil
+  ;; on those platforms.
+  ;; On GNU/linux we do default to non-nil regardless if we find `bwrap' in
+  ;; $PATH just out of paranoia (in case `bwrap' ends up missing by accident).
+  (not (memq system-type '(darwin ms-dos windows-nt cygwin)))
   "If non-nil, run some of the less trusted commands in a sandbox.
 This is recommended when building packages from untrusted sources,
-but this requires Bubblewrap to be installed and has only been tested
-on some Debian systems.")
+but this requires Bubblewrap (https://github.com/containers/bubblewrap)
+to be installed and has only been tested on some Debian systems.")
 
 (defvar elpaa--debug nil)
 
@@ -317,7 +323,17 @@ Do it without leaving the current branch."
 (unless (zerop (buffer-size))
   (if (zerop
(elpaa--call t "git" "stash" "push" "-u" "-m"
-"Saved changes while building tarball"))
+"Saved changes while building tarball"
+;; Don't stash the deletion of -pkg.el,
+;; since it would cause a merge conflict
+;; later in "stash apply".
+;; Don't know when this was introduced into Git
+;; and it seems somewhat fiddly (e.g. git-2.30.2
+;; gives a weird behavior if the "*" is missing),
+;; so not sure it's worth the trouble:
+;;
+;; "--" "*" ":(exclude,glob)*-pkg.el"
+))
   (elpaa--temp-file
(lambda ()
  (with-temp-buffer
@@ -493,7 +509,7 @@ Do it without leaving the current branch."
   oldtarballs)
 
 (defun elpaa--make-one-tarball ( tarball dir pkg-spec metadata
- &optional revision-function tarball-only 
no-symlink)
+ &optional revision-function tarball-only)
   "Create file TARBALL for PKGNAME if not done yet.
 Return non-nil if a new tarball was created."
   (elpaa--message "Building tarball %s..." tarball)
@@ -509,7 +525,7 @@ Return non-nil if a new tarball was created."
   (condition-case err
   (setq res (elpaa--make-one-tarball-1
  tarball dir pkg-spec metadata
- revision-function tarball-only no-symlink))
+ revision-function tarball-only))
 (error (message "Build error for %s: %S" tarball err)
nil))
 (message (if res " Built new package %s!"
@@ -517,7 +533,7 @@ Return non-nil if a new tarball was created."
  tarball)
 
 (defun elpaa--make-one-tarball-1 ( tarball dir pkg-spec metadata
- &optional revision-function tarball-only 
no-symlink)
+ &optional revision-function tarball-only)
   (elpaa--with-temp-files
dir
(let* ((destdir (file-name-directory tarball))
@@ -586,9 +602,9 @@ Return non-nil if a new tarball was created."
  (elpaa--call nil "git" "tag" "-f"
   (format "%s-release/%s-%s"
   elpaa--name pkgname vers
-(unless no-symlink
-   (let ((link (expand-file-name (format "%s.tar" pkgname) destdir)))
-(when (file-symlink-p link) (delete-file link))
+ (let ((link (expand-file-name (format "%s.tar" pkgname) destdir)))
+  (when (file-symlink-p link) (delete-file link))
+  (ignore-error file-error ;E.g. under w32!
 (make-symbolic-link (file-name-nondirectory tarball) link)))
  (setq oldtarballs
(elpaa--prune-old-tarballs tarball oldtarb

[nongnu] elpa/git-commit b6b6251: magit-refresh-get-relative-position: Don't use count-lines

2021-08-13 Thread ELPA Syncer
branch: elpa/git-commit
commit b6b625134729ec52413cd126b4a76645f3279c28
Author: Jonas Bernoulli 
Commit: Jonas Bernoulli 

magit-refresh-get-relative-position: Don't use count-lines

This function does not reliably return the number of lines between
two positions.  It returns either that, or that plus one; which is
of course completely bonkers.

Closes #4148.
---
 Documentation/RelNotes/3.3.0.org | 3 +++
 lisp/magit-mode.el   | 3 ++-
 2 files changed, 5 insertions(+), 1 deletion(-)

diff --git a/Documentation/RelNotes/3.3.0.org b/Documentation/RelNotes/3.3.0.org
index 9f7b760..2b30741 100644
--- a/Documentation/RelNotes/3.3.0.org
+++ b/Documentation/RelNotes/3.3.0.org
@@ -33,3 +33,6 @@
   a terminal.  If this change does not have any effect for you then
   your theme probably changes these faces and should stop doing so.
   #4206
+
+- In some cases refreshing a buffer caused the cursor to jump to a
+  different position.  #4148
diff --git a/lisp/magit-mode.el b/lisp/magit-mode.el
index 4d8e12b..8d50b04 100644
--- a/lisp/magit-mode.el
+++ b/lisp/magit-mode.el
@@ -1118,7 +1118,8 @@ Run hooks `magit-pre-refresh-hook' and 
`magit-post-refresh-hook'."
 (defun magit-refresh-get-relative-position ()
   (when-let ((section (magit-current-section)))
 (let ((start (oref section start)))
-  (list (count-lines start (point))
+  (list (- (line-number-at-pos (point))
+   (line-number-at-pos start))
 (- (point) (line-beginning-position))
 (and (magit-hunk-section-p section)
  (region-active-p)



[nongnu] elpa/magit updated (b8e64dc -> b6b6251)

2021-08-13 Thread ELPA Syncer
elpasync pushed a change to branch elpa/magit.

  from  b8e64dc   Remove stray whitespace
  adds  b6b6251   magit-refresh-get-relative-position: Don't use count-lines

No new revisions were added by this update.

Summary of changes:
 Documentation/RelNotes/3.3.0.org | 3 +++
 lisp/magit-mode.el   | 3 ++-
 2 files changed, 5 insertions(+), 1 deletion(-)



[nongnu] elpa/magit-section updated (b8e64dc -> b6b6251)

2021-08-13 Thread ELPA Syncer
elpasync pushed a change to branch elpa/magit-section.

  from  b8e64dc   Remove stray whitespace
  adds  b6b6251   magit-refresh-get-relative-position: Don't use count-lines

No new revisions were added by this update.

Summary of changes:
 Documentation/RelNotes/3.3.0.org | 3 +++
 lisp/magit-mode.el   | 3 ++-
 2 files changed, 5 insertions(+), 1 deletion(-)



[nongnu] elpa/proof-general updated (bc86736 -> d64f5a1)

2021-08-13 Thread ELPA Syncer
elpasync pushed a change to branch elpa/proof-general.

  from  bc86736   Fixing #578: Canonical is a keyword bin itself.
   new  063d066   * ci/compile-tests/*/runtest.el: Use lexical-binding and 
find `cct-lib`
   new  ad2f811   * lib/*.el: Use lexical-binding plus other minor changes
   new  91ce5cd   * coq/*.el: Use lexical-binding plus various minor changes
   new  d64f5a1   * generic/*.el: Use lexical-binding in 
proof-(tree|splash|pg-pamacs)


Summary of changes:
 ci/compile-tests/001-mini-project/runtest.el   |   4 +-
 .../002-require-no-dependencies/runtest.el |   4 +-
 ci/compile-tests/003-require-error/runtest.el  |   4 +-
 ci/compile-tests/004-dependency-cycle/runtest.el   |   4 +-
 ci/compile-tests/005-change-recompile/runtest.el   |   6 +-
 ci/compile-tests/006-ready-dependee/runtest.el |   6 +-
 ci/compile-tests/007-slow-require/runtest.el   |   6 +-
 ci/compile-tests/008-default-dir/runtest.el|   6 +-
 ci/compile-tests/009-failure-processing/runtest.el |   6 +-
 coq/coq-compile-common.el  |  81 +++---
 coq/coq-diffs.el   |   2 +-
 coq/coq-indent.el  |   6 +-
 coq/coq-par-compile.el |  91 +++---
 coq/coq-seq-compile.el |  80 ++---
 coq/coq-smie.el|  35 +--
 coq/coq-syntax.el  |   6 +-
 coq/coq-system.el  |  14 +-
 coq/coq-unicode-tokens.el  |  10 +-
 coq/coq.el | 324 ++---
 generic/pg-pamacs.el   |  46 +--
 generic/proof-depends.el   |  25 +-
 generic/proof-script.el|  24 +-
 generic/proof-site.el  |  24 +-
 generic/proof-splash.el|  27 +-
 generic/proof-tree.el  |  30 +-
 lib/bufhist.el |  40 +--
 lib/holes.el   |  23 +-
 lib/maths-menu.el  |  12 +-
 lib/unicode-tokens.el  | 161 +-
 29 files changed, 555 insertions(+), 552 deletions(-)



[nongnu] elpa/proof-general 91ce5cd 3/4: * coq/*.el: Use lexical-binding plus various minor changes

2021-08-13 Thread ELPA Syncer
branch: elpa/proof-general
commit 91ce5cdec5ae4f4a00ea7411aea67d347895bef4
Author: Stefan Monnier 
Commit: Stefan Monnier 

* coq/*.el: Use lexical-binding plus various minor changes

Fit docstrings within 80 columns.  Prefer #' to quote function names.

* coq/coq.el: Use lexical-binding.
(proof-shell-process-urgent-message-default): Remove deadcode.
(coq-set-auto-adapt-printing-width): Fix longstanding confusion between
`set` and `setq`.
(coq--show-proof-stepwise-cmds): New function.
(coq-empty-action-list-command): Use it.  Avoid `add-to-list` on
local variables.
(coq-guess-goal-buffer-at-next-command): Fix longstanding paren typo.
(coq-proof-tree-get-new-subgoals): Use `push`.
(coq-shell-theorem-dependency-list-regexp): Use `defconst`.
(coq-dependency-menu-system-specific): Prefer closures over `(lambda..).

* coq/coq-unicode-tokens.el: Use lexical-binding.
(coq-control-region-format-regexp): Remove ineffective backslashes.

* coq/coq-system.el (coq-autodetect-help): Simplify.

* coq/coq-syntax.el (coq-queries-commands-db): Fix docstring within
80 columns.

* coq/coq-smie.el (coq-smie-search-token-backward):
Remove longstanding deadcode and optimize a bit.
(coq-smie-backward-token-aux): Re-layout a bit to fit within 80 columns.
(coq-show-smie--parent): Simplify.
(coq-smie-rules): Pass second arg to `looking-back` to avoid
pathological performance.

* coq/coq-seq-compile.el: Use lexical-binding.
(coq-seq-auto-compile-externally):
Rename arg `qualified-id` to avoid dynbound name.
Mark as dynbound those vars passed to `coq-compile-substitution-list`.
(coq-seq-preprocess-require-commands): Declare `coq-object-hash-symbol`
as dynbound.

* coq/coq-par-compile.el: Use lexical-binding.
(coq-par-coqdep-arguments, coq-par-coqc-arguments, coq-par-job-init-common)
(coq-par-create-require-job, coq-par-create-file-job):
Rename arg `coq-load-path` to avoid dynbound name.
(coq-par-retire-top-level-job, coq-par-kickoff-queue-maybe)
(coq-par-handle-require-list):
Prefer closures over `(lambda...).

* coq/coq-diffs.el: Use lexical-binding.

* coq/coq-compile-common.el: Use lexical-binding.
Remove redundant `:group`.
(coq-display-compile-response-buffer): Avoid deprecated
`font-lock-fontify-buffer`.
---
 coq/coq-compile-common.el |  81 +---
 coq/coq-diffs.el  |   2 +-
 coq/coq-indent.el |   6 +-
 coq/coq-par-compile.el|  91 ++---
 coq/coq-seq-compile.el|  80 ++--
 coq/coq-smie.el   |  35 ++---
 coq/coq-syntax.el |   6 +-
 coq/coq-system.el |  14 +-
 coq/coq-unicode-tokens.el |  10 +-
 coq/coq.el| 324 ++
 10 files changed, 316 insertions(+), 333 deletions(-)

diff --git a/coq/coq-compile-common.el b/coq/coq-compile-common.el
index 10eae53..8d836b6 100644
--- a/coq/coq-compile-common.el
+++ b/coq/coq-compile-common.el
@@ -1,9 +1,9 @@
-;;; coq-compile-common.el --- common part of compilation feature
+;;; coq-compile-common.el --- common part of compilation feature  -*- 
lexical-binding: t; -*-
 
 ;; This file is part of Proof General.
 
 ;; Portions © Copyright 1994-2012  David Aspinall and University of Edinburgh
-;; Portions © Copyright 2003-2018  Free Software Foundation, Inc.
+;; Portions © Copyright 2003-2021  Free Software Foundation, Inc.
 ;; Portions © Copyright 2001-2017  Pierre Courtieu
 ;; Portions © Copyright 2010, 2016  Erik Martin-Dorel
 ;; Portions © Copyright 2011-2013, 2016-2017, 2019-2021  Hendrik Tews
@@ -47,33 +47,33 @@
   "Enable parallel compilation.
 Must be used together with `coq-seq-disable'."
   (add-hook 'proof-shell-extend-queue-hook
-   'coq-par-preprocess-require-commands)
+   #'coq-par-preprocess-require-commands)
   (add-hook 'proof-shell-signal-interrupt-hook
-   'coq-par-user-interrupt)
+   #'coq-par-user-interrupt)
   (add-hook 'proof-shell-handle-error-or-interrupt-hook
-   'coq-par-user-interrupt))
+   #'coq-par-user-interrupt))
 
 (defun coq-par-disable ()
   "Disable parallel compilation.
 Must be used together with `coq-seq-enable'."
   (remove-hook 'proof-shell-extend-queue-hook
-  'coq-par-preprocess-require-commands)
+  #'coq-par-preprocess-require-commands)
   (remove-hook 'proof-shell-signal-interrupt-hook
-  'coq-par-user-interrupt)
+  #'coq-par-user-interrupt)
   (remove-hook 'proof-shell-handle-error-or-interrupt-hook
-  'coq-par-user-interrupt))
+  #'coq-par-user-interrupt))
 
 (defun coq-seq-enable ()
   "Enable sequential synchronous compilation.
 Must be used together with `coq-par-disable'."
   (add-hook 'proof-shell-extend-queue-hook
-   'coq-seq-preprocess-require-commands))
+   #'coq-seq-preprocess-requ

[nongnu] elpa/proof-general 063d066 1/4: * ci/compile-tests/*/runtest.el: Use lexical-binding and find `cct-lib`

2021-08-13 Thread ELPA Syncer
branch: elpa/proof-general
commit 063d066cb77dc2ec628c42f2d8e35fc24be341e4
Author: Stefan Monnier 
Commit: Stefan Monnier 

* ci/compile-tests/*/runtest.el: Use lexical-binding and find `cct-lib`

This removes the presumption that `ci/compile-tests` has somehow been added
to `load-path` which is not always justified.
---
 ci/compile-tests/001-mini-project/runtest.el| 4 ++--
 ci/compile-tests/002-require-no-dependencies/runtest.el | 4 ++--
 ci/compile-tests/003-require-error/runtest.el   | 4 ++--
 ci/compile-tests/004-dependency-cycle/runtest.el| 4 ++--
 ci/compile-tests/005-change-recompile/runtest.el| 6 +++---
 ci/compile-tests/006-ready-dependee/runtest.el  | 6 +++---
 ci/compile-tests/007-slow-require/runtest.el| 6 +++---
 ci/compile-tests/008-default-dir/runtest.el | 6 +++---
 ci/compile-tests/009-failure-processing/runtest.el  | 6 +++---
 9 files changed, 23 insertions(+), 23 deletions(-)

diff --git a/ci/compile-tests/001-mini-project/runtest.el 
b/ci/compile-tests/001-mini-project/runtest.el
index 71858d8..2048684 100644
--- a/ci/compile-tests/001-mini-project/runtest.el
+++ b/ci/compile-tests/001-mini-project/runtest.el
@@ -1,4 +1,4 @@
-;; This file is part of Proof General.
+;; This file is part of Proof General.  -*- lexical-binding: t; -*-
 ;; 
 ;; © Copyright 2020  Hendrik Tews
 ;; 
@@ -26,7 +26,7 @@
 
 
 ;; require cct-lib for the elisp compilation, otherwise this is present already
-(require 'cct-lib)
+(require 'cct-lib "ci/compile-tests/cct-lib")
 
 ;;; set configuration
 (cct-configure-proof-general)
diff --git a/ci/compile-tests/002-require-no-dependencies/runtest.el 
b/ci/compile-tests/002-require-no-dependencies/runtest.el
index f2feefa..07115d6 100644
--- a/ci/compile-tests/002-require-no-dependencies/runtest.el
+++ b/ci/compile-tests/002-require-no-dependencies/runtest.el
@@ -1,4 +1,4 @@
-;; This file is part of Proof General.
+;; This file is part of Proof General.  -*- lexical-binding: t; -*-
 ;; 
 ;; © Copyright 2020  Hendrik Tews
 ;; 
@@ -23,7 +23,7 @@
 
 
 ;; require cct-lib for the elisp compilation, otherwise this is present already
-(require 'cct-lib)
+(require 'cct-lib "ci/compile-tests/cct-lib")
 
 ;;; set configuration
 (cct-configure-proof-general)
diff --git a/ci/compile-tests/003-require-error/runtest.el 
b/ci/compile-tests/003-require-error/runtest.el
index c5e2a71..a843f6b 100644
--- a/ci/compile-tests/003-require-error/runtest.el
+++ b/ci/compile-tests/003-require-error/runtest.el
@@ -1,4 +1,4 @@
-;; This file is part of Proof General.
+;; This file is part of Proof General.  -*- lexical-binding: t; -*-
 ;;
 ;; © Copyright 2020  Hendrik Tews
 ;;
@@ -26,7 +26,7 @@
 
 
 ;; require cct-lib for the elisp compilation, otherwise this is present already
-(require 'cct-lib)
+(require 'cct-lib "ci/compile-tests/cct-lib")
 
 ;;; set configuration
 (cct-configure-proof-general)
diff --git a/ci/compile-tests/004-dependency-cycle/runtest.el 
b/ci/compile-tests/004-dependency-cycle/runtest.el
index 97d60fb..f2005bf 100644
--- a/ci/compile-tests/004-dependency-cycle/runtest.el
+++ b/ci/compile-tests/004-dependency-cycle/runtest.el
@@ -1,4 +1,4 @@
-;; This file is part of Proof General.
+;; This file is part of Proof General.  -*- lexical-binding: t; -*-
 ;;
 ;; © Copyright 2020  Hendrik Tews
 ;;
@@ -26,7 +26,7 @@
 
 
 ;; require cct-lib for the elisp compilation, otherwise this is present already
-(require 'cct-lib)
+(require 'cct-lib "ci/compile-tests/cct-lib")
 
 ;;; set configuration
 (cct-configure-proof-general)
diff --git a/ci/compile-tests/005-change-recompile/runtest.el 
b/ci/compile-tests/005-change-recompile/runtest.el
index 825ad83..e8bc6f7 100644
--- a/ci/compile-tests/005-change-recompile/runtest.el
+++ b/ci/compile-tests/005-change-recompile/runtest.el
@@ -1,4 +1,4 @@
-;; This file is part of Proof General.
+;; This file is part of Proof General.  -*- lexical-binding: t; -*-
 ;;
 ;; © Copyright 2020  Hendrik Tews
 ;;
@@ -36,7 +36,7 @@
 ;;
 
 ;; require cct-lib for the elisp compilation, otherwise this is present already
-(require 'cct-lib)
+(require 'cct-lib "ci/compile-tests/cct-lib")
 
 ;;; set configuration
 (cct-configure-proof-general)
@@ -53,7 +53,7 @@
   "All ancestors.")
 
 (defconst all-compiled-ancestors
-  (mapcar 'cct-library-vo-of-v-file all-ancestors)
+  (mapcar #'cct-library-vo-of-v-file all-ancestors)
   "All vo ancestors files.")
   
 
diff --git a/ci/compile-tests/006-ready-dependee/runtest.el 
b/ci/compile-tests/006-ready-dependee/runtest.el
index 9f4a2ce..f64a0f4 100644
--- a/ci/compile-tests/006-ready-dependee/runtest.el
+++ b/ci/compile-tests/006-ready-dependee/runtest.el
@@ -1,4 +1,4 @@
-;; This file is part of Proof General.
+;; This file is part of Proof General.  -*- lexical-binding: t; -*-
 ;;
 ;; © Copyright 2020  Hendrik Tews
 ;;
@@ -35,7 +35,7 @@
 
 
 ;; require cct-lib for the elisp compilation, otherwise this is present already
-(require 'cct-lib)
+(re

[nongnu] elpa/proof-general d64f5a1 4/4: * generic/*.el: Use lexical-binding in proof-(tree|splash|pg-pamacs)

2021-08-13 Thread ELPA Syncer
branch: elpa/proof-general
commit d64f5a10bc4747f04b4ae908f88c21ae7f452495
Author: Stefan Monnier 
Commit: Stefan Monnier 

* generic/*.el: Use lexical-binding in proof-(tree|splash|pg-pamacs)

Plus various minor changes found along the way.

* generic/proof-tree.el: Use lexical-binding.
(proof-tree-insert-script, proof-tree-make-show-goal-callback):
Prefer closures over `(lambda...).
(proof-tree-handle-proof-command): Remove unused var `proof-state`.

* generic/proof-splash.el: Use lexical-binding.
(proof-splash-message): Prefer closures over `(lambda...).

* generic/proof-site.el (proof-assistants): Use `mapconcat` and quote
symbols using the ELisp docstring convention.

* generic/proof-script.el (pg-add-element): Prefer closures over
`(lambda...).
(proof-config-done): Remove calls to `easy-menu-add` since we don't
support XEmacs any more.

* generic/proof-depends.el (proof-dependency-in-span-context-menu):
Simplify by eta-reduction.
(proof-dep-make-submenu): Prefer closures over `(lambda...).

* generic/pg-pamacs.el: Use lexical-binding.
(proof-defpgcustom-fn): Remove unused var `newargs`.  Simplify a bit
using `push` and `memq`.
---
 generic/pg-pamacs.el | 46 --
 generic/proof-depends.el | 25 +
 generic/proof-script.el  | 24 +++-
 generic/proof-site.el| 24 ++--
 generic/proof-splash.el  | 27 +--
 generic/proof-tree.el| 30 +++---
 6 files changed, 90 insertions(+), 86 deletions(-)

diff --git a/generic/pg-pamacs.el b/generic/pg-pamacs.el
index 1492e0c..c603d15 100644
--- a/generic/pg-pamacs.el
+++ b/generic/pg-pamacs.el
@@ -1,9 +1,9 @@
-;;; pg-pamacs.el --- Macros for per-proof assistant configuration
+;;; pg-pamacs.el --- Macros for per-proof assistant configuration  -*- 
lexical-binding: t; -*-
 
 ;; This file is part of Proof General.
 
 ;; Portions © Copyright 1994-2012  David Aspinall and University of Edinburgh
-;; Portions © Copyright 2003, 2012, 2014  Free Software Foundation, Inc.
+;; Portions © Copyright 2003-2021  Free Software Foundation, Inc.
 ;; Portions © Copyright 2001-2017  Pierre Courtieu
 ;; Portions © Copyright 2010, 2016  Erik Martin-Dorel
 ;; Portions © Copyright 2011-2013, 2016-2017  Hendrik Tews
@@ -75,7 +75,7 @@ This macro should only be invoked once a specific prover is 
engaged."
 (defun proof-ass-differs-from-default (sym)
   "Return non-nil if SYM for current prover differs from its customize 
standard value."
   (let ((pasym (proof-ass-symv sym)))
-(not (equal (eval (car (get pasym 'standard-value)))
+(not (equal (eval (car (get pasym 'standard-value)) t)
(symbol-value pasym)
 
 (defun proof-defpgcustom-fn (sym args)
@@ -83,14 +83,16 @@ This macro should only be invoked once a specific prover is 
engaged."
 Helper for macro `defpgcustom'."
   (let ((specific-var (proof-ass-symv sym))
 (generic-var  (intern (concat "proof-assistant-" (symbol-name sym
-(newargs (if (member :group args)
- args
-   (append (list :group
- proof-assistant-internals-cusgrp)
-   args
+;; (newargs (if (member :group args)
+;;   args
+;; (append (list :group
+;;   proof-assistant-internals-cusgrp)
+;; args)))
+)
 (eval
  `(defcustom ,specific-var
-   ,@args))
+   ,@args)
+ t)
 ;; For functions, we could simply use defalias.  Unfortunately there
 ;; is nothing similar for values, so we define a new set/get function.
 (eval
@@ -100,7 +102,8 @@ Helper for macro `defpgcustom'."
 If NEWVAL is present, set the variable, otherwise return its current value.")
(if newval
(setq ,specific-var newval)
- ,specific-var)
+ ,specific-var))
+ t)))
 
 (defun undefpgcustom (sym)
   (let ((specific-var (proof-ass-symv sym))
@@ -188,7 +191,7 @@ Usage: (defpgdefault SYM VALUE)"
(setq args (cdr args)))
((eq (car args) :type)
(setq type (cadr args))
-   (if (eq (eval type) 'float)
+   (if (eq (eval type t) 'float)
(setq type (quote 'number))) ; widget type for defcustom
(setq args (cdr args))
(setq newargs (cons type (cons :type newargs
@@ -198,10 +201,7 @@ Usage: (defpgdefault SYM VALUE)"
 (setq newargs (reverse newargs))
 (setq descr (car-safe newargs))
 (unless (and type
- (or (eq (eval type) 'boolean)
- (eq (eval type) 'integer)
- (eq (eval type) 'number)
- (eq (eval type) 'string)))
+ (memq (eval type t) '(boolean integer number s

[nongnu] elpa/proof-general ad2f811 2/4: * lib/*.el: Use lexical-binding plus other minor changes

2021-08-13 Thread ELPA Syncer
branch: elpa/proof-general
commit ad2f811883106995005d2d396b48451c46f27861
Author: Stefan Monnier 
Commit: Stefan Monnier 

* lib/*.el: Use lexical-binding plus other minor changes

E.g. prefer #' to quote function names.

* lib/unicode-tokens.el: Use lexical-binding.
(unicode-tokens-toggle-add-help-echo, unicode-tokens-show-symbols)
(unicode-tokens-highlight-unicode, unicode-tokens-mode):
Avoid deprecated `font-lock-fontify-buffer`.
(unicode-tokens-quail-define-rules): Simplify with a more functional style.
(unicode-tokens-set-font-var): Avoid needless `setq`.
(unicode-tokens-customize-submenu, unicode-tokens-define-menu):
Prefer closures over `(lambda..).

* lib/maths-menu.el (maths-menu-build-menu): Prefer closure over 
`(lambda..).
(maths-menu-mode): Avoid ancient position-based calling
convention of `define-minor-mode`.

* lib/holes.el (holes-mode): Avoid ancient position-based calling
convention of `define-minor-mode`.

* lib/bufhist.el: Use lexical-binding.
(bufhist-mode-map): Rename from `bufhist-minor-mode-map` to follow the
usual conventions.
(bufhist-mode): Avoid ancient position-based calling convention of
`define-minor-mode`.
---
 lib/bufhist.el|  40 ++---
 lib/holes.el  |  23 
 lib/maths-menu.el |  12 ++--
 lib/unicode-tokens.el | 161 +++---
 4 files changed, 126 insertions(+), 110 deletions(-)

diff --git a/lib/bufhist.el b/lib/bufhist.el
index 7e96682..91cfd67 100644
--- a/lib/bufhist.el
+++ b/lib/bufhist.el
@@ -1,9 +1,9 @@
-;; bufhist.el --- keep read-only history of buffer contents for browsing
+;; bufhist.el --- keep read-only history of buffer contents for browsing  -*- 
lexical-binding: t; -*-
 
 ;; This file is part of Proof General.
 
 ;; Portions © Copyright 1994-2012  David Aspinall and University of Edinburgh
-;; Portions © Copyright 2003-2018  Free Software Foundation, Inc.
+;; Portions © Copyright 2003-2021  Free Software Foundation, Inc.
 ;; Portions © Copyright 2001-2017  Pierre Courtieu
 ;; Portions © Copyright 2010, 2016  Erik Martin-Dorel
 ;; Portions © Copyright 2011-2013, 2016-2017  Hendrik Tews
@@ -59,8 +59,7 @@
   :group 'tools)
 
 (defcustom bufhist-ring-size 30
-  "*Default size of buffer history ring."
-  :group 'bufhist
+  "Default size of buffer history ring."
   :type 'integer)
 
 (defvar bufhist-ring nil
@@ -98,10 +97,10 @@
 (let ((map (make-sparse-keymap)))
   ;; FIXME: clicking can go wrong here because the
   ;; current buffer can be something else which has no hist!
-  (define-key map [mode-line mouse-1] 'bufhist-prev)
-  (define-key map [mode-line mouse-3] 'bufhist-next)
-  ;; (define-key map [mode-line control mouse-1] 
'bufhist-first)
-  ;; (define-key map [mode-line control mouse-3] 'bufhist-last)
+  (define-key map [mode-line mouse-1] #'bufhist-prev)
+  (define-key map [mode-line mouse-3] #'bufhist-next)
+  ;; (define-key map [mode-line control mouse-1] 
#'bufhist-first)
+  ;; (define-key map [mode-line control mouse-3] 
#'bufhist-last)
   map))
'mouse-face 'mode-line-highlight
 
@@ -113,15 +112,17 @@
 
 ;;; Minor mode
 
-(defconst bufhist-minor-mode-map
+(define-obsolete-variable-alias
+  'bufhist-minor-mode-map 'bufhist-mode-map "2021")
+(defconst bufhist-mode-map
   (let ((map (make-sparse-keymap)))
-;; (define-key map [mouse-2] 'bufhist-popup-menu)
-(define-key map [(meta left)] 'bufhist-prev)
-(define-key map [(meta right)] 'bufhist-next)
-(define-key map [(meta up)] 'bufhist-first)
-(define-key map [(meta down)] 'bufhist-last)
-(define-key map [(meta c)] 'bufhist-clear)
-(define-key map [(meta d)] 'bufhist-delete)
+;; (define-key map [mouse-2]   #'bufhist-popup-menu)
+(define-key map [(meta left)]  #'bufhist-prev)
+(define-key map [(meta right)] #'bufhist-next)
+(define-key map [(meta up)]#'bufhist-first)
+(define-key map [(meta down)]  #'bufhist-last)
+(define-key map [(meta c)] #'bufhist-clear)
+(define-key map [(meta d)] #'bufhist-delete)
 map)
   "Keymap for `bufhist-minor-mode'.")
 
@@ -129,15 +130,14 @@
 (define-minor-mode bufhist-mode
   "Minor mode retaining an in-memory history of the buffer contents.
 
-Commands:\\
+Commands:\\
 \\[bufhist-prev]bufhist-prevgo back in history
 \\[bufhist-next]bufhist-nextgo forward in history
 \\[bufhist-first]   bufhist-first   go to first item in history
 \\[bufhist-last]bufhist-lastgo to last (current) item in history.
 \\[bufhist-clear]   bufhist-clear   clear history.
 \\[bufhist-delete]  bufhist-clear   delete current item from history."
-  nil "" bufhist-minor-mode-map
-  :group 'bufhist
+  :lighter ""
   (if bufhist-mode
  

[nongnu] elpa/git-commit e401bd4: magit-mode-map: Reserve "N" for forge-dispatch

2021-08-13 Thread ELPA Syncer
branch: elpa/git-commit
commit e401bd4d39c1799d8689f116f066bb8a7c7e8899
Author: Jonas Bernoulli 
Commit: Jonas Bernoulli 

magit-mode-map: Reserve "N" for forge-dispatch

And mention bindings of "n" and "p".
---
 lisp/magit-mode.el | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/lisp/magit-mode.el b/lisp/magit-mode.el
index 8d50b04..7396a26 100644
--- a/lisp/magit-mode.el
+++ b/lisp/magit-mode.el
@@ -373,8 +373,11 @@ recommended value."
 (define-key map "L" 'magit-log-refresh)
 (define-key map "m" 'magit-merge)
 (define-key map "M" 'magit-remote)
+;;  section-map "n"  magit-section-forward
+;; reserved "N"  forge-dispatch
 (define-key map "o" 'magit-submodule)
 (define-key map "O" 'magit-subtree)
+;;  section-map "p"  magit-section-backward
 (define-key map "P" 'magit-push)
 (define-key map "q" 'magit-mode-bury-buffer)
 (define-key map "Q" 'magit-git-command)



[nongnu] elpa/magit updated (b6b6251 -> e401bd4)

2021-08-13 Thread ELPA Syncer
elpasync pushed a change to branch elpa/magit.

  from  b6b6251   magit-refresh-get-relative-position: Don't use count-lines
  adds  e401bd4   magit-mode-map: Reserve "N" for forge-dispatch

No new revisions were added by this update.

Summary of changes:
 lisp/magit-mode.el | 3 +++
 1 file changed, 3 insertions(+)



[nongnu] elpa/magit-section updated (b6b6251 -> e401bd4)

2021-08-13 Thread ELPA Syncer
elpasync pushed a change to branch elpa/magit-section.

  from  b6b6251   magit-refresh-get-relative-position: Don't use count-lines
  adds  e401bd4   magit-mode-map: Reserve "N" for forge-dispatch

No new revisions were added by this update.

Summary of changes:
 lisp/magit-mode.el | 3 +++
 1 file changed, 3 insertions(+)



[nongnu] elpa/proof-general 3d361fa: * doc/PG-adapting.texi: Refresh with `make -C doc magic`

2021-08-13 Thread monnier--- via
branch: elpa/proof-general
commit 3d361fa6915df412c3ecf707f219316ccb894e62
Author: Stefan Monnier 
Commit: Stefan Monnier 

* doc/PG-adapting.texi: Refresh with `make -C doc magic`

* lib/texi-docstring-magic.el: Use lexical-binding.
Fix regexps to avoid ineffective backslashes.
(texi-docstring--args, texi-docstring--in-quoted-region):
Rename dynamically scoped vars.
(texi-docstring-magic-munge-table): Use functions rather than
quoted expressions.
(texi-docstring--funcall): New function.
(texi-docstring-magic-munge-docstring): Use it instead of `eval`.
---
 doc/PG-adapting.texi|  16 +++
 lib/texi-docstring-magic.el | 110 ++--
 2 files changed, 70 insertions(+), 56 deletions(-)

diff --git a/doc/PG-adapting.texi b/doc/PG-adapting.texi
index 86b7eab..4e0ec65 100644
--- a/doc/PG-adapting.texi
+++ b/doc/PG-adapting.texi
@@ -335,7 +335,7 @@ more details.
 @c Internals.
 
 @c TEXI DOCSTRING MAGIC: proof-assistant-table
-@defopt proof-assistant-table 
+@defvar proof-assistant-table 
 Proof General's table of supported proof assistants.@*
 This is copied from @samp{@code{proof-assistant-table-default}} at load time,
 removing any entries that do not have a corresponding directory
@@ -360,9 +360,7 @@ file for the mode, which will be
 @end lisp
 where @var{proof-home-directory} is the value of the
 variable @samp{@code{proof-home-directory}}.
-
-The default value is @code{((isar "Isabelle" "thy") (coq "Coq" "v" nil (".vo" 
".glob")) (easycrypt "EasyCrypt" "ec" "\\.eca?\\'") (phox "PhoX" "phx" nil 
(".phi" ".pho")) (pgshell "PG-Shell" "pgsh") (pgocaml "PG-OCaml" "pgml") 
(pghaskell "PG-Haskell" "pghci"))}.
-@end defopt
+@end defvar
 
 
 The final step of the description above is where the work lies.  There
@@ -2914,7 +2912,7 @@ assistant is already busy with the next item from
 @code{proof-action-list}. 
 
 @c TEXI DOCSTRING MAGIC: proof-tree-handle-delayed-output
-@defun proof-tree-handle-delayed-output old-proof-marker cmd flags span
+@defun proof-tree-handle-delayed-output old-proof-marker cmd flags _span
 Process delayed output for prooftree.@*
 This function is the main entry point of the Proof General
 prooftree support.  It examines the delayed output in order to
@@ -3307,9 +3305,9 @@ extension.  The proof assistants enabled are the ones 
listed
 in the @code{proof-assistants} setting.
 
 @c TEXI DOCSTRING MAGIC: proof-assistants
-@defopt proof-assistants 
+@defvar proof-assistants 
 Choice of proof assistants to use with Proof General.@*
-A list of symbols chosen from: @code{'isar} @code{'coq} @code{'easycrypt} 
@code{'phox} @code{'pgshell} @code{'pgocaml} @code{'pghaskell}.
+A list of symbols chosen from: @samp{isar} @samp{coq} @samp{easycrypt} 
@samp{phox} @samp{pgshell} @samp{pgocaml} @samp{pghaskell}.
 If nil, the default will be ALL available proof assistants.
 
 Each proof assistant defines its own instance of Proof General,
@@ -3325,9 +3323,7 @@ symbols you want, for example "lego isa".  Or you can
 edit the file @samp{proof-site.el} itself.
 
 Note: to change proof assistant, you must start a new Emacs session.
-
-The default value is @code{nil}.
-@end defopt
+@end defvar
 
 The file @file{proof-site.el} also defines a version variable.
 
diff --git a/lib/texi-docstring-magic.el b/lib/texi-docstring-magic.el
index a028f56..b6ef604 100644
--- a/lib/texi-docstring-magic.el
+++ b/lib/texi-docstring-magic.el
@@ -1,9 +1,9 @@
-;;; texi-docstring-magic.el --- munge internal docstrings into texi
+;;; texi-docstring-magic.el --- munge internal docstrings into texi  -*- 
lexical-binding: t; -*-
 
 ;; This file is part of Proof General.
 
 ;; Portions © Copyright 1994-2012  David Aspinall and University of Edinburgh
-;; Portions © Copyright 2003-2018  Free Software Foundation, Inc.
+;; Portions © Copyright 2003-2021  Free Software Foundation, Inc.
 ;; Portions © Copyright 2001-2017  Pierre Courtieu
 ;; Portions © Copyright 2010, 2016  Erik Martin-Dorel
 ;; Portions © Copyright 2011-2013, 2016-2017  Hendrik Tews
@@ -110,28 +110,32 @@ Compatibility between FSF Emacs and XEmacs."
   (setq strings (cdr strings)))
 str))
 
+(defvar texi-docstring--args)
+(defvar texi-docstring--in-quoted-region)
+
 (defconst texi-docstring-magic-munge-table
-  '(;; 0. Escape @, { and } characters
+  `(;; 0. Escape @, { and } characters
 ("\\(@\\)" t "@@")
 ("\\({\\)" t "@{")
 ("\\(}\\)" t "@}")
 ;; 1. Indented lines are gathered into @lisp environment.
 ("^\\(\n\\|.+\\)$"
  t
- (let
-((line (match-string 0 docstring)))
-   (if (save-match-data (string-match "^[ \t]" line))
-  ;; whitespace
-  (if in-quoted-region
-  line
-(setq in-quoted-region t)
-(concat "@lisp\n" line))
-;; non-white space/carriage return
-(if (and in-quoted-region (not (equal line "\n")))
-(progn
-  (setq in-quoted-region nil)
-   

[nongnu] elpa/proof-general e2ee96b: * Makefile (BYTECOMP): Add the root dir to match to ELPA setup

2021-08-13 Thread monnier--- via
branch: elpa/proof-general
commit e2ee96b209e740afd9349bfaab8410d98e1eaccd
Author: Stefan Monnier 
Commit: Stefan Monnier 

* Makefile (BYTECOMP): Add the root dir to match to ELPA setup

Also don't remove the `cl-functions` warning any more.
---
 Makefile | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/Makefile b/Makefile
index c022d9a..265aad6 100644
--- a/Makefile
+++ b/Makefile
@@ -74,7 +74,7 @@ BIN_SCRIPTS = lego/legotags coq/coqtags isar/isartags
 # to output the compile-time load path and ELISP_DIRS_COMP so these are set
 # just in that one place.
 ERROR_ON_WARN = nil
-BYTECOMP = $(BATCHEMACS) -eval '(setq load-path (append (mapcar (lambda (d) 
(expand-file-name (symbol-name d))) (quote (${ELISP_DIRS_COMP}))) load-path))' 
-eval '(progn (require (quote bytecomp)) (require (quote mouse)) (require 
(quote tool-bar)) (require (quote fontset)) (setq byte-compile-warnings (remove 
(quote cl-functions) (remove (quote noruntime) byte-compile-warning-types))) 
(setq byte-compile-error-on-warn $(ERROR_ON_WARN)))' -f batch-byte-compile
+BYTECOMP = $(BATCHEMACS) -eval '(setq load-path (append (mapcar (lambda (d) 
(expand-file-name (symbol-name d))) (quote (\. ${ELISP_DIRS_COMP}))) 
load-path))' -eval '(progn (require (quote bytecomp)) (require (quote mouse)) 
(require (quote tool-bar)) (require (quote fontset)) (setq 
byte-compile-warnings (remove (quote noruntime) byte-compile-warning-types)) 
(setq byte-compile-error-on-warn $(ERROR_ON_WARN)))' -f batch-byte-compile
 EL=$(shell for f in $(ELISP_DIRS_COMP); do ls $$f/*.el; done)
 ELC=$(EL:.el=.elc)
 



[elpa] externals/eev 504ba89: Added a section "0. How to use this" to `(find-lexical-intro)'.

2021-08-13 Thread ELPA Syncer
branch: externals/eev
commit 504ba89275a1e8f0a52d6fb667ab286ac7d59c89
Author: Eduardo Ochs 
Commit: Eduardo Ochs 

Added a section "0. How to use this" to `(find-lexical-intro)'.
---
 VERSION  |   4 +-
 eev-intro.el | 117 ++-
 eev.el   |   2 +-
 3 files changed, 119 insertions(+), 4 deletions(-)

diff --git a/VERSION b/VERSION
index c845d25..37b6ff7 100644
--- a/VERSION
+++ b/VERSION
@@ -1,2 +1,2 @@
-Fri Aug 13 05:54:51 GMT 2021
-Fri Aug 13 02:54:51 -03 2021
+Sat Aug 14 00:16:32 GMT 2021
+Fri Aug 13 21:16:32 -03 2021
diff --git a/eev-intro.el b/eev-intro.el
index a052010..74e2e54 100644
--- a/eev-intro.el
+++ b/eev-intro.el
@@ -19,7 +19,7 @@
 ;;
 ;; Author: Eduardo Ochs 
 ;; Maintainer: Eduardo Ochs 
-;; Version:20210529
+;; Version:20210813
 ;; Keywords:   e-scripts
 ;;
 ;; Latest version: <http://angg.twu.net/eev-current/eev-intro.el>
@@ -13500,8 +13500,123 @@ See:
 
 
 
+
+0. How to use this
+==
+Usually people select between lexical binding and dynamic binding
+by putting their functions that use lexical binding in files with
+a \"-*- lexical-binding:t -*-\" in their first line, like this:
+
+  (find-efile \"play/tetris.el\" \"lexical-binding:t\")
+
+See:
+
+  (find-elnode \"Using Lexical Binding\")
+  (find-elnode \"Using Lexical Binding\" \"first line\")
+
+Here we will do something much more low-level. `(eval CODE)'
+and `(eval CODE nil)' both eval CODE using dynamic binding,
+but `(eval CODE t)' and `(eval CODE 'lexical)' eval CODE using
+lexical binding. In dynamic binding all `defun's generate
+lambdas, but in lexical binding some `defun's generate closures.
+You can test this by running the four sexps below with `M-e' -
+the `(eval ... 'lexical)' stores a closure in the function cell
+of `foo':
+
+  (eval '(let ((x 42)) (defun foo () (* x x))) nil)
+  (symbol-function 'foo)
+
+  (eval '(let ((x 42)) (defun foo () (* x x))) 'lexical)
+  (symbol-function 'foo)
+
+We will also use another technique, based on `M-e', for making
+code eval-able in both dynamic binding mode and lexical binding
+mode.
+
+Let me list some facts...
+
+  1) dynamic binding is still the current default, but it is
+ being phased out and may be declared obsolete in a few years
+ - AND EVEN KILLED COMPLETELY, despite the complaints of the
+ many people who love it, like me;
+
+  2) `M-e' goes to the end of the line, reads the sexp before
+ point, and `eval's it;
+
+  3) `M-e' _sort of_ emulates `C-e C-x C-e', but `C-x C-e'
+ doesn't run a plain `eval' - it runs a function based on
+ `eval' that has lots of bells and whistles, and that is too
+ complex for my tiny brain. Take a look at its code:
+
+(eek \"M-h M-k  C-x C-e  ;; eval-last-sexp\")
+(find-efunctiondescr 'eval-last-sexp)
+(find-efunction  'eval-last-sexp)
+
+  4) `C-x C-e' uses the buffer-local variable `lexical-binding'
+ to decide whether it should use dynamic or lexical binding,
+ while `M-e' does not. Try to eval the sexps below with a
+ series or `C-e C-x C-e's:
+
+   (setq-local lexical-binding t)
+   (let ((x 42)) (defun foo () (* x x)))
+   (symbol-function 'foo)
+
+   (setq-local lexical-binding nil)
+   (let ((x 42)) (defun foo () (* x x)))
+   (symbol-function 'foo)
+
+ You will see that the first block generates a closure and
+ the second does not. If you try to execute those six sexps
+ with `M-e's you'll get lambdas in both blocks.
+
+  5) I chose to use a simple `eval' without the second argument
+ in the plain `M-e' because: a) it is simpler to understand,
+ b) it is simpler to explain to beginners, and b) people can
+ change it by redefining this function:
+
+   (find-eev \"eev-eval.el\" \"arg-variants\" 
\"ee-eval-last-sexp-default\")
+
+  6) `M-e' supports numeric prefixes that select alternate
+ actions - for example, `M-0 M-e' highlights the sexp instead
+ of executing it - and it's easy to add new alternate
+ actions. See:
+
+   (find-eev \"eev-eval.el\" \"ee-eval-last-sexp\")
+   (find-eev \"eev-eval.el\" \"arg-variants\")
+
+  7) `M-1 M-1 M-e' (or: `M-11e') uses `(eval ... 'lexical)'
+ instead of the plain `eval'. See:
+
+   (find-efunction 'ee-eval-last-sexp-default)
+   (find-efunction 'ee-eval-last-sexp-11)
+   (find-efunction 'ee-eval-lexical)
+
+ Try to execute the 4-line sexp below with both `M-e' and
+ `M-11e':
+
+(let ((x 42))
+  (defun foo () (* x x))
+

[elpa] externals/eev 6664769: Added the sections 1, 2, and 3 to `(find-lexical-intro)'.

2021-08-13 Thread ELPA Syncer
branch: externals/eev
commit 666476975ed6db1a7341995f1f57087af3c9f634
Author: Eduardo Ochs 
Commit: Eduardo Ochs 

Added the sections 1, 2, and 3 to `(find-lexical-intro)'.
---
 VERSION   |   4 +-
 eev-intro.el  | 129 +++---
 eev-tlinks.el |   8 ++--
 3 files changed, 93 insertions(+), 48 deletions(-)

diff --git a/VERSION b/VERSION
index 37b6ff7..ef91aca 100644
--- a/VERSION
+++ b/VERSION
@@ -1,2 +1,2 @@
-Sat Aug 14 00:16:32 GMT 2021
-Fri Aug 13 21:16:32 -03 2021
+Sat Aug 14 02:49:07 GMT 2021
+Fri Aug 13 23:49:07 -03 2021
diff --git a/eev-intro.el b/eev-intro.el
index 74e2e54..43a2c5b 100644
--- a/eev-intro.el
+++ b/eev-intro.el
@@ -13607,67 +13607,114 @@ modes to compare the results.
 
 
 
+(The rest of this tutorial is just a first draft)
 
-(The rest of this tutorial will be rewritten)
 
 
 
-
-0. `ee-eval-lexical'
-
-
-
-See: (find-eev \"eev-eval.el\" \"ee-eval-last-sexp\")
- (find-eev \"eev-eval.el\" \"ee-eval-last-sexp\" \"11:\")
- (find-eev \"eev-eval.el\" \"tools\")
- (find-eev \"eev-eval.el\" \"tools\" \"ee-eval-lexical\")
- (find-efunctiondescr 'eval)
-
-Try to evaluate this sexp with `M-e' and with `M-1 M-1 M-e':
+1. `lambda' and `function'
+==
+See: (find-elnode \"Anonymous Functions\" \"Macro: lambda\")
+ (find-elnode \"Anonymous Functions\" \"Special Form: function\")
+ (find-elnode \"Anonymous Functions\" \"Special Form: function\" 
\"converted\")
 
   (let ((x 42))
-(defun foo () (* x x))
-(symbol-function 'foo))
+(lambda () x)
+)
 
+  (let ((x 42))
+(function 
+  (lambda () x)
+  )
+)
 
 
 
-1. Creating closures
+2. How closures work
 
-Long form:
-
-  (eval '(let ((x 42)) (defun foo () (* x x))) 'lexical)
-  (eval '(let ((x 42)) (defun foo () (* x x))) nil)
-  (symbol-function 'foo)
+See: (find-elnode \"Dynamic Binding\" \"defun getx\")
+ (find-elnode \"Lexical Binding\" \"defun getx\")
+ (find-elnode \"Void Variables\")
 
-Short form:
+  (let ((x 20))
+(defun getx () x)
+)
 
-  (let ((x 42))
-(defun foo () (* x x))
-(symbol-function 'foo))
+  (makunbound 'x)
+  (setq x 99)
+  (getx)
+  (let ((x 42)) (getx))
+ 
 
-Even shorter:
 
-  (let ((x 42))
-(function (lambda foo () (* x x
 
+3. `get/set'
+
+;; These fsets work as defuns.
+;; See: (find-elnode \"Function Cells\")
 
+(fset 'foo (lambda () 20))
+(fset 'foo (lambda () 42))
+(foo)
 
+;; This is the only sexp in this block that needs
+;; to be run in lexical binding mode.
+;;
+(defun get/set0 ()
+  \"Return a list with a `getter' closure and a `setter' closure.
+The getter and the setter share the same lexical environment -
+which means that they operate on the same `x'.
+Different calls to this function generate getters and setters
+with independent lexical environments - which means that they
+operate on independent `x's.
+This defun need to be executed in lexical binding mode.\"
+  (let* ((x nil))
+(list (lambda () x)
+  (lambda (newvalue) (setq x newvalue)
+
+(defun get/set (getter setter)
+  \"Define a SETTER and a GETTER that operate on the same variable.
+SETTER and GETTER are symbols: names of functions. The variable
+lives in a lexical environment that is shared by both the GETTER
+and the SETTER. Each call to this function generates a different
+lexical environment.\"
+  (let ((gs (get/set0)))
+(fset getter (nth 0 gs))
+(fset setter (nth 1 gs
+
+;; Check that geta/seta and getb/setb operate on different
+;; variables:
+;;
+(get/set 'geta 'seta)
+(get/set 'getb 'setb)
+(symbol-function 'geta)
+(symbol-function 'getb)
+(symbol-function 'seta)
+(symbol-function 'setb)
+(seta 20)
+(setb 42)
+(geta)
+(getb)
+
+
+;; Check that geta/seta use the same lexical environment
+;; and that getb/setb use a second lexical environment.
+;; See: (find-elnode \"Closures\")
+
+  (symbol-function 'seta)
+ (cdr (symbol-function 'seta))
+(car (cdr (symbol-function 'seta)))
+
+(eq
+  (cadr (symbol-function 'geta))
+  (cadr (symbol-function 'seta))
+  )
 
-2. `letxgetx'
-=
-See: (find-elnode \"Dynamic Binding\" \"defun getx\")
- (find-elnode \"Lexical Binding\" \"defun getx\")
- (find-elnode \"Void Variables\")
+(eq
+  (cadr (symbol-function 'getb))
+  (cadr (symbol-function 'setb))
+  )
 
-  (makunbound   'x)
-  (defun getx () x)
-

[nongnu] elpa/markdown-mode ab0b5e9 2/2: Merge pull request #642 from jrblevin/issue-641

2021-08-13 Thread ELPA Syncer
branch: elpa/markdown-mode
commit ab0b5e92a264cfc1fbbb69cd94ef9da83db31d0a
Merge: 536061e 12e67d3
Author: Shohei YOSHIDA 
Commit: GitHub 

Merge pull request #642 from jrblevin/issue-641

Fix executing markdown-table-sort-lines via menu bar issue
---
 CHANGES.md   | 2 ++
 markdown-mode.el | 8 ++--
 2 files changed, 8 insertions(+), 2 deletions(-)

diff --git a/CHANGES.md b/CHANGES.md
index 135777f..7b9a1a0 100644
--- a/CHANGES.md
+++ b/CHANGES.md
@@ -70,6 +70,7 @@
 -   Fix list highlighting issue in code block [GH-631][]
 -   Fix exception when inserting code block at end of buffer [GH-634][]
 -   Fix table operations when table column contains escaped vertical bars 
[GH-635][]
+-   Fix issue that executing `markdown-table-sort-lines` via menu-bar with 
older Emacs(< 28) [GH-641][]
 
   [gh-290]: https://github.com/jrblevin/markdown-mode/issues/290
   [gh-311]: https://github.com/jrblevin/markdown-mode/issues/311
@@ -101,6 +102,7 @@
   [gh-631]: https://github.com/jrblevin/markdown-mode/issues/631
   [gh-634]: https://github.com/jrblevin/markdown-mode/issues/634
   [gh-635]: https://github.com/jrblevin/markdown-mode/issues/635
+  [gh-641]: https://github.com/jrblevin/markdown-mode/issues/641
 
 # Markdown Mode 2.4
 
diff --git a/markdown-mode.el b/markdown-mode.el
index b42760e..801f35a 100644
--- a/markdown-mode.el
+++ b/markdown-mode.el
@@ -9446,8 +9446,12 @@ indicate that sorting should be done in reverse order."
 (t 1
 (sorting-type
  (or sorting-type
- (read-char-exclusive
-  "Sort type: [a]lpha [n]umeric (A/N means reversed): "
+ (progn
+   ;; workaround #641
+   ;; Emacs < 28 hides prompt message by another message. This 
erases it.
+   (message "")
+   (read-char-exclusive
+"Sort type: [a]lpha [n]umeric (A/N means reversed): ")
 (save-restriction
   ;; Narrow buffer to appropriate sorting area
   (if (region-active-p)



[nongnu] elpa/markdown-mode 12e67d3 1/2: Fix executing markdown-table-sort-lines via menu bar issue

2021-08-13 Thread ELPA Syncer
branch: elpa/markdown-mode
commit 12e67d3d8a8e9eaa73bd5edf38496b5db4fd35bb
Author: Shohei YOSHIDA 
Commit: Shohei YOSHIDA 

Fix executing markdown-table-sort-lines via menu bar issue

This issue is fixed in latest emacs.
---
 CHANGES.md   | 2 ++
 markdown-mode.el | 8 ++--
 2 files changed, 8 insertions(+), 2 deletions(-)

diff --git a/CHANGES.md b/CHANGES.md
index 135777f..7b9a1a0 100644
--- a/CHANGES.md
+++ b/CHANGES.md
@@ -70,6 +70,7 @@
 -   Fix list highlighting issue in code block [GH-631][]
 -   Fix exception when inserting code block at end of buffer [GH-634][]
 -   Fix table operations when table column contains escaped vertical bars 
[GH-635][]
+-   Fix issue that executing `markdown-table-sort-lines` via menu-bar with 
older Emacs(< 28) [GH-641][]
 
   [gh-290]: https://github.com/jrblevin/markdown-mode/issues/290
   [gh-311]: https://github.com/jrblevin/markdown-mode/issues/311
@@ -101,6 +102,7 @@
   [gh-631]: https://github.com/jrblevin/markdown-mode/issues/631
   [gh-634]: https://github.com/jrblevin/markdown-mode/issues/634
   [gh-635]: https://github.com/jrblevin/markdown-mode/issues/635
+  [gh-641]: https://github.com/jrblevin/markdown-mode/issues/641
 
 # Markdown Mode 2.4
 
diff --git a/markdown-mode.el b/markdown-mode.el
index b42760e..801f35a 100644
--- a/markdown-mode.el
+++ b/markdown-mode.el
@@ -9446,8 +9446,12 @@ indicate that sorting should be done in reverse order."
 (t 1
 (sorting-type
  (or sorting-type
- (read-char-exclusive
-  "Sort type: [a]lpha [n]umeric (A/N means reversed): "
+ (progn
+   ;; workaround #641
+   ;; Emacs < 28 hides prompt message by another message. This 
erases it.
+   (message "")
+   (read-char-exclusive
+"Sort type: [a]lpha [n]umeric (A/N means reversed): ")
 (save-restriction
   ;; Narrow buffer to appropriate sorting area
   (if (region-active-p)



[nongnu] elpa/markdown-mode f8c14af 2/2: Merge pull request #643 from jrblevin/issue-639

2021-08-13 Thread ELPA Syncer
branch: elpa/markdown-mode
commit f8c14afe85a4cb958cb84b7598a814ece96656f1
Merge: ab0b5e9 9170b37
Author: Shohei YOSHIDA 
Commit: GitHub 

Merge pull request #643 from jrblevin/issue-639

Fix wrong menu command setting issue
---
 CHANGES.md   | 2 ++
 markdown-mode.el | 4 ++--
 2 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/CHANGES.md b/CHANGES.md
index 7b9a1a0..73de87b 100644
--- a/CHANGES.md
+++ b/CHANGES.md
@@ -71,6 +71,7 @@
 -   Fix exception when inserting code block at end of buffer [GH-634][]
 -   Fix table operations when table column contains escaped vertical bars 
[GH-635][]
 -   Fix issue that executing `markdown-table-sort-lines` via menu-bar with 
older Emacs(< 28) [GH-641][]
+-   Fix wrong markdown table command issue in menu [GH-639][]
 
   [gh-290]: https://github.com/jrblevin/markdown-mode/issues/290
   [gh-311]: https://github.com/jrblevin/markdown-mode/issues/311
@@ -102,6 +103,7 @@
   [gh-631]: https://github.com/jrblevin/markdown-mode/issues/631
   [gh-634]: https://github.com/jrblevin/markdown-mode/issues/634
   [gh-635]: https://github.com/jrblevin/markdown-mode/issues/635
+  [gh-639]: https://github.com/jrblevin/markdown-mode/issues/639
   [gh-641]: https://github.com/jrblevin/markdown-mode/issues/641
 
 # Markdown Mode 2.4
diff --git a/markdown-mode.el b/markdown-mode.el
index 801f35a..4e73fb2 100644
--- a/markdown-mode.el
+++ b/markdown-mode.el
@@ -5542,10 +5542,10 @@ See also `markdown-mode-map'.")
  ["Move Row Down" markdown-move-down
   :enable (markdown-table-at-point-p)
   :keys "C-c "]
- ["Move Column Left" markdown-demote
+ ["Move Column Left" markdown-promote
   :enable (markdown-table-at-point-p)
   :keys "C-c "]
- ["Move Column Right" markdown-promote
+ ["Move Column Right" markdown-demote
   :enable (markdown-table-at-point-p)
   :keys "C-c "]
  ["Delete Row" markdown-table-delete-row



[nongnu] elpa/markdown-mode 9170b37 1/2: Fix wrong menu command setting issue

2021-08-13 Thread ELPA Syncer
branch: elpa/markdown-mode
commit 9170b37536d1e84e427a818329da7ec5d7d554c3
Author: Shohei YOSHIDA 
Commit: Shohei YOSHIDA 

Fix wrong menu command setting issue
---
 CHANGES.md   | 2 ++
 markdown-mode.el | 4 ++--
 2 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/CHANGES.md b/CHANGES.md
index 7b9a1a0..73de87b 100644
--- a/CHANGES.md
+++ b/CHANGES.md
@@ -71,6 +71,7 @@
 -   Fix exception when inserting code block at end of buffer [GH-634][]
 -   Fix table operations when table column contains escaped vertical bars 
[GH-635][]
 -   Fix issue that executing `markdown-table-sort-lines` via menu-bar with 
older Emacs(< 28) [GH-641][]
+-   Fix wrong markdown table command issue in menu [GH-639][]
 
   [gh-290]: https://github.com/jrblevin/markdown-mode/issues/290
   [gh-311]: https://github.com/jrblevin/markdown-mode/issues/311
@@ -102,6 +103,7 @@
   [gh-631]: https://github.com/jrblevin/markdown-mode/issues/631
   [gh-634]: https://github.com/jrblevin/markdown-mode/issues/634
   [gh-635]: https://github.com/jrblevin/markdown-mode/issues/635
+  [gh-639]: https://github.com/jrblevin/markdown-mode/issues/639
   [gh-641]: https://github.com/jrblevin/markdown-mode/issues/641
 
 # Markdown Mode 2.4
diff --git a/markdown-mode.el b/markdown-mode.el
index 801f35a..4e73fb2 100644
--- a/markdown-mode.el
+++ b/markdown-mode.el
@@ -5542,10 +5542,10 @@ See also `markdown-mode-map'.")
  ["Move Row Down" markdown-move-down
   :enable (markdown-table-at-point-p)
   :keys "C-c "]
- ["Move Column Left" markdown-demote
+ ["Move Column Left" markdown-promote
   :enable (markdown-table-at-point-p)
   :keys "C-c "]
- ["Move Column Right" markdown-promote
+ ["Move Column Right" markdown-demote
   :enable (markdown-table-at-point-p)
   :keys "C-c "]
  ["Delete Row" markdown-table-delete-row



[nongnu] elpa/markdown-mode c1e9822 1/2: Fix table conversion issue

2021-08-13 Thread ELPA Syncer
branch: elpa/markdown-mode
commit c1e98229989426ef4248bb0aaf69122ce02bb67b
Author: Shohei YOSHIDA 
Commit: Shohei YOSHIDA 

Fix table conversion issue
---
 CHANGES.md |  2 ++
 markdown-mode.el   | 12 ++--
 tests/markdown-test.el | 15 +++
 3 files changed, 27 insertions(+), 2 deletions(-)

diff --git a/CHANGES.md b/CHANGES.md
index 73de87b..e2aacf1 100644
--- a/CHANGES.md
+++ b/CHANGES.md
@@ -72,6 +72,7 @@
 -   Fix table operations when table column contains escaped vertical bars 
[GH-635][]
 -   Fix issue that executing `markdown-table-sort-lines` via menu-bar with 
older Emacs(< 28) [GH-641][]
 -   Fix wrong markdown table command issue in menu [GH-639][]
+-   Fix table conversion issue [GH-639][]
 
   [gh-290]: https://github.com/jrblevin/markdown-mode/issues/290
   [gh-311]: https://github.com/jrblevin/markdown-mode/issues/311
@@ -104,6 +105,7 @@
   [gh-634]: https://github.com/jrblevin/markdown-mode/issues/634
   [gh-635]: https://github.com/jrblevin/markdown-mode/issues/635
   [gh-639]: https://github.com/jrblevin/markdown-mode/issues/639
+  [gh-640]: https://github.com/jrblevin/markdown-mode/issues/640
   [gh-641]: https://github.com/jrblevin/markdown-mode/issues/641
 
 # Markdown Mode 2.4
diff --git a/markdown-mode.el b/markdown-mode.el
index 4e73fb2..2efbfd1 100644
--- a/markdown-mode.el
+++ b/markdown-mode.el
@@ -9552,10 +9552,18 @@ spaces, or alternatively a TAB should be used as the 
separator."
  ((integerp separator)
   (if (< separator 1)
   (user-error "Cell separator must contain one or more spaces")
-(format "^ *\\| *\t *\\| \\{%d,\\}" separator)))
+(format "^ *\\| *\t *\\| \\{%d,\\}\\|$" separator)))
  ((stringp separator) (format "^ *\\|%s" separator))
  (t (error "Invalid cell separator"
-  (while (re-search-forward re end t) (replace-match "| " t t)))
+  (let (finish)
+(while (and (not finish) (re-search-forward re end t))
+  (if (eolp)
+  (progn
+(replace-match "|" t t)
+(forward-line 1)
+(when (eobp)
+  (setq finish t)))
+(replace-match "| " t t)
 (goto-char begin)
 (when markdown-table-align-p
   (markdown-table-align
diff --git a/tests/markdown-test.el b/tests/markdown-test.el
index c066b14..ff1ed54 100644
--- a/tests/markdown-test.el
+++ b/tests/markdown-test.el
@@ -7028,6 +7028,21 @@ title: asdasdasd
 (markdown-table-forward-cell)
 (should (string= (buffer-string) expected))
 
+(ert-deftest test-markdown-table/convert-table-region ()
+  "Test markdown-table-convert-region.
+https://github.com/jrblevin/markdown-mode/issues/640";
+  (let ((markdown-table-align-p t))
+(markdown-test-string "1 2 3
+4 5 6"
+  (markdown-table-convert-region (point-min) (point-max))
+  (should (string= (buffer-substring-no-properties (point-min) (point-max))
+   "| 1 | 2 | 3 |
+| 4 | 5 | 6 |\n")))
+(markdown-test-string "1 2 3 \n4 5 6 "
+  (markdown-table-convert-region (point-min) (point-max))
+  (should (string= (buffer-substring-no-properties (point-min) (point-max))
+   "| 1 | 2 | 3 |\n| 4 | 5 | 6 |\n")
+
 (provide 'markdown-test)
 
 ;;; markdown-test.el ends here



[nongnu] elpa/markdown-mode 562cd35 2/2: Merge pull request #644 from jrblevin/issue-640

2021-08-13 Thread ELPA Syncer
branch: elpa/markdown-mode
commit 562cd35a2eb7b638272940bd8b8fac754a32a34c
Merge: f8c14af c1e9822
Author: Shohei YOSHIDA 
Commit: GitHub 

Merge pull request #644 from jrblevin/issue-640

Fix table conversion issue
---
 CHANGES.md |  2 ++
 markdown-mode.el   | 12 ++--
 tests/markdown-test.el | 15 +++
 3 files changed, 27 insertions(+), 2 deletions(-)

diff --git a/CHANGES.md b/CHANGES.md
index 73de87b..e2aacf1 100644
--- a/CHANGES.md
+++ b/CHANGES.md
@@ -72,6 +72,7 @@
 -   Fix table operations when table column contains escaped vertical bars 
[GH-635][]
 -   Fix issue that executing `markdown-table-sort-lines` via menu-bar with 
older Emacs(< 28) [GH-641][]
 -   Fix wrong markdown table command issue in menu [GH-639][]
+-   Fix table conversion issue [GH-639][]
 
   [gh-290]: https://github.com/jrblevin/markdown-mode/issues/290
   [gh-311]: https://github.com/jrblevin/markdown-mode/issues/311
@@ -104,6 +105,7 @@
   [gh-634]: https://github.com/jrblevin/markdown-mode/issues/634
   [gh-635]: https://github.com/jrblevin/markdown-mode/issues/635
   [gh-639]: https://github.com/jrblevin/markdown-mode/issues/639
+  [gh-640]: https://github.com/jrblevin/markdown-mode/issues/640
   [gh-641]: https://github.com/jrblevin/markdown-mode/issues/641
 
 # Markdown Mode 2.4
diff --git a/markdown-mode.el b/markdown-mode.el
index 4e73fb2..2efbfd1 100644
--- a/markdown-mode.el
+++ b/markdown-mode.el
@@ -9552,10 +9552,18 @@ spaces, or alternatively a TAB should be used as the 
separator."
  ((integerp separator)
   (if (< separator 1)
   (user-error "Cell separator must contain one or more spaces")
-(format "^ *\\| *\t *\\| \\{%d,\\}" separator)))
+(format "^ *\\| *\t *\\| \\{%d,\\}\\|$" separator)))
  ((stringp separator) (format "^ *\\|%s" separator))
  (t (error "Invalid cell separator"
-  (while (re-search-forward re end t) (replace-match "| " t t)))
+  (let (finish)
+(while (and (not finish) (re-search-forward re end t))
+  (if (eolp)
+  (progn
+(replace-match "|" t t)
+(forward-line 1)
+(when (eobp)
+  (setq finish t)))
+(replace-match "| " t t)
 (goto-char begin)
 (when markdown-table-align-p
   (markdown-table-align
diff --git a/tests/markdown-test.el b/tests/markdown-test.el
index c066b14..ff1ed54 100644
--- a/tests/markdown-test.el
+++ b/tests/markdown-test.el
@@ -7028,6 +7028,21 @@ title: asdasdasd
 (markdown-table-forward-cell)
 (should (string= (buffer-string) expected))
 
+(ert-deftest test-markdown-table/convert-table-region ()
+  "Test markdown-table-convert-region.
+https://github.com/jrblevin/markdown-mode/issues/640";
+  (let ((markdown-table-align-p t))
+(markdown-test-string "1 2 3
+4 5 6"
+  (markdown-table-convert-region (point-min) (point-max))
+  (should (string= (buffer-substring-no-properties (point-min) (point-max))
+   "| 1 | 2 | 3 |
+| 4 | 5 | 6 |\n")))
+(markdown-test-string "1 2 3 \n4 5 6 "
+  (markdown-table-convert-region (point-min) (point-max))
+  (should (string= (buffer-substring-no-properties (point-min) (point-max))
+   "| 1 | 2 | 3 |\n| 4 | 5 | 6 |\n")
+
 (provide 'markdown-test)
 
 ;;; markdown-test.el ends here