[elpa] branch externals/sxhkdrc-mode created (now e4880eb1bd)

2022-12-14 Thread ELPA Syncer
elpasync pushed a change to branch externals/sxhkdrc-mode.

at  e4880eb1bd Fix typos

This branch includes the following new commits:

   new  32770897ce Add first version of sxhkdrc-mode
   new  6c691563e7 Add GNU GPL
   new  e4880eb1bd Fix typos




[elpa] externals/sxhkdrc-mode 32770897ce 1/3: Add first version of sxhkdrc-mode

2022-12-14 Thread ELPA Syncer
branch: externals/sxhkdrc-mode
commit 32770897ce59406e3c694916651962a757ec273e
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

Add first version of sxhkdrc-mode
---
 .gitignore  |   3 ++
 README.md   |  15 +++
 sxhkdrc-mode.el | 125 
 3 files changed, 143 insertions(+)

diff --git a/.gitignore b/.gitignore
new file mode 100644
index 00..cb62d01d0e
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,3 @@
+*.elc
+*-autoloads.el
+*-pkg.el
diff --git a/README.md b/README.md
new file mode 100644
index 00..dfc1e361e0
--- /dev/null
+++ b/README.md
@@ -0,0 +1,15 @@
+# sxhkdrc-mode for GNU Emacs
+
+This is a major mode for editing `sxhkdrc` files.  SXHKD is the Simple
+X Hotkey Daemon which is commonly used in minimalist desktop sessions
+on Xorg, such as with the Binary Space Partitioning Window Manager
+(BSPWM).  The `sxhkdrc` file configures key chords, binding them to
+commands.  For the technicalities, read the man page `sxhkd(1)`.
+
++ Package name (GNU ELPA): `sxhkdrc-mode`
++ Git repo on SourceHut: 
+  - Mirrors:
++ GitHub: 
++ GitLab: 
++ Mailing list: 
++ Backronym: Such Xenotropic Hot Keys Demonstrate Robustness and 
Configurability.
diff --git a/sxhkdrc-mode.el b/sxhkdrc-mode.el
new file mode 100644
index 00..767afd7abf
--- /dev/null
+++ b/sxhkdrc-mode.el
@@ -0,0 +1,125 @@
+;;; sxhkdrc-mode.el --- Major mode for sxhkdrc files (Simple X Hot Key Daemon) 
-*- lexical-binding: t -*-
+
+;; Copyright (C) 2022  Free Software Foundation, Inc.
+
+;; Author: Protesilaos Stavrou 
+;; Maintainer: Protesilaos Stavrou General Issues 
<~protesilaos/general-iss...@lists.sr.ht>
+;; URL: https://git.sr.ht/~protesilaos/sxhkdrc-mode
+;; Mailing-List: https://lists.sr.ht/~protesilaos/general-issues
+;; Version: 0.1.0
+;; Package-Requires: ((emacs "27.1"))
+
+;; This file is NOT part of GNU Emacs.
+
+;; This program is free software; you can redistribute it and/or modify
+;; it under the terms of the GNU General Public License as published by
+;; the Free Software Foundation, either version 3 of the License, or
+;; (at your option) any later version.
+;;
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+;; GNU General Public License for more details.
+;;
+;; You should have received a copy of the GNU General Public License
+;; along with this program.  If not, see .
+
+;;; Commentary:
+;;
+;; Major mode for editing sxhkdrc files (Simple X Hot Key Daemon).  It
+;; defines basic fontification rules and supports indentation.
+;;
+;; SXHKD is the Simple X Hotkey Daemon which is commonly used in
+;; minimalist desktop sessions on Xorg, such as with the Binary Space
+;; Partitioning Window Manager (BSPWM).
+;;
+;; Why call the package SXHKDRC-something?  One school of thought is
+;; that it is named after the files it applies to.  The heterodox
+;; view, however, is that SXHKDRC is a backronym: Such Xenotropic Hot
+;; Keys Demonstrate Robustness and Configurability.
+
+;;; Code:
+
+(defgroup sxhkdrc nil
+  "Major mode for editing sxhkdrc files.
+SXHKD is the Simple X Hotkey Daemon which is commonly used in
+minimalist desktop sessions on Xorg, such as with the Binary
+Space Partitioning Window Manager (BSPWM)."
+  :group 'programming)
+
+(defvar sxhkdrc-mode-syntax
+  '((key-modifier . ( "control" "ctrl" "shift" "alt" "meta" "super" "hyper"
+  "mod1" "mod2" "mod3" "mod4" "mod5"))
+(key-generic . "^\\<.*?\\>")
+(comment . "^\\([\s\t]+\\)?#.*$")
+(command . "^[\s\t]+\\([;]\\)?\\(\\_<.*?\\_>\\)")
+(indent-other . 0)
+(indent-command . 4))
+  "List of associations for sxhkdrc syntax.")
+
+(defun sxhkdrc-mode--modifiers-regexp (placement)
+  "Return `sxhkdrc-mode--modifiers' as a single string regexp.
+PLACEMENT controls how to format the regexp: `start' is for the
+beginning of the line, `chord' is when the modifier is part of a
+key chord chain (demarcated by a colon or semicolon)."
+  (let ((mods (alist-get 'key-modifier sxhkdrc-mode-syntax)))
+(pcase placement
+  ('start (format "^\\(%s\\)" (mapconcat #'identity mods "\\|")))
+  ('chord (format "[;:]\\([\s\t]\\)?\\(%s\\)" (mapconcat #'identity mods 
"\\|"))
+
+(defface sxhkdrc-mode-primary-modifier
+  '((t :inherit font-lock-keyword-face))
+  "Face for sxhkd modifiers at the start of a key sequence or chord.")
+
+(defface sxhkdrc-mode-generic-key
+  '((t :inherit font-lock-builtin-face))
+  "Face for sxhkd generic keys at the start of a sequence.")
+
+(defface sxhkdrc-mode-command
+  '((t :inherit font-lock-function-name-face))
+  "Face for the first part of an sx

[elpa] externals/sxhkdrc-mode 6c691563e7 2/3: Add GNU GPL

2022-12-14 Thread ELPA Syncer
branch: externals/sxhkdrc-mode
commit 6c691563e72f65c9809f536c947bd39a62dc149c
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

Add GNU GPL
---
 COPYING | 674 
 1 file changed, 674 insertions(+)

diff --git a/COPYING b/COPYING
new file mode 100644
index 00..59f0371b58
--- /dev/null
+++ b/COPYING
@@ -0,0 +1,674 @@
+GNU GENERAL PUBLIC LICENSE
+   Version 3, 29 June 2007
+
+ Copyright (C) 2007 Free Software Foundation, Inc. 
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+Preamble
+
+  The GNU General Public License is a free, copyleft license for
+software and other kinds of works.
+
+  The licenses for most software and other practical works are designed
+to take away your freedom to share and change the works.  By contrast,
+the GNU General Public License is intended to guarantee your freedom to
+share and change all versions of a program--to make sure it remains free
+software for all its users.  We, the Free Software Foundation, use the
+GNU General Public License for most of our software; it applies also to
+any other work released this way by its authors.  You can apply it to
+your programs, too.
+
+  When we speak of free software, we are referring to freedom, not
+price.  Our General Public Licenses are designed to make sure that you
+have the freedom to distribute copies of free software (and charge for
+them if you wish), that you receive source code or can get it if you
+want it, that you can change the software or use pieces of it in new
+free programs, and that you know you can do these things.
+
+  To protect your rights, we need to prevent others from denying you
+these rights or asking you to surrender the rights.  Therefore, you have
+certain responsibilities if you distribute copies of the software, or if
+you modify it: responsibilities to respect the freedom of others.
+
+  For example, if you distribute copies of such a program, whether
+gratis or for a fee, you must pass on to the recipients the same
+freedoms that you received.  You must make sure that they, too, receive
+or can get the source code.  And you must show them these terms so they
+know their rights.
+
+  Developers that use the GNU GPL protect your rights with two steps:
+(1) assert copyright on the software, and (2) offer you this License
+giving you legal permission to copy, distribute and/or modify it.
+
+  For the developers' and authors' protection, the GPL clearly explains
+that there is no warranty for this free software.  For both users' and
+authors' sake, the GPL requires that modified versions be marked as
+changed, so that their problems will not be attributed erroneously to
+authors of previous versions.
+
+  Some devices are designed to deny users access to install or run
+modified versions of the software inside them, although the manufacturer
+can do so.  This is fundamentally incompatible with the aim of
+protecting users' freedom to change the software.  The systematic
+pattern of such abuse occurs in the area of products for individuals to
+use, which is precisely where it is most unacceptable.  Therefore, we
+have designed this version of the GPL to prohibit the practice for those
+products.  If such problems arise substantially in other domains, we
+stand ready to extend this provision to those domains in future versions
+of the GPL, as needed to protect the freedom of users.
+
+  Finally, every program is threatened constantly by software patents.
+States should not allow patents to restrict development and use of
+software on general-purpose computers, but in those that do, we wish to
+avoid the special danger that patents applied to a free program could
+make it effectively proprietary.  To prevent this, the GPL assures that
+patents cannot be used to render the program non-free.
+
+  The precise terms and conditions for copying, distribution and
+modification follow.
+
+   TERMS AND CONDITIONS
+
+  0. Definitions.
+
+  "This License" refers to version 3 of the GNU General Public License.
+
+  "Copyright" also means copyright-like laws that apply to other kinds of
+works, such as semiconductor masks.
+
+  "The Program" refers to any copyrightable work licensed under this
+License.  Each licensee is addressed as "you".  "Licensees" and
+"recipients" may be individuals or organizations.
+
+  To "modify" a work means to copy from or adapt all or part of the work
+in a fashion requiring copyright permission, other than the making of an
+exact copy.  The resulting work is called a "modified version" of the
+earlier work or a work "based on" the earlier work.
+
+  A "covered work" means either the unmodified Program or a work based
+on the Program.
+
+  To "propagate" a work means to do anything with it that, without
+permission, would make

[elpa] externals/sxhkdrc-mode e4880eb1bd 3/3: Fix typos

2022-12-14 Thread ELPA Syncer
branch: externals/sxhkdrc-mode
commit e4880eb1bd9da0026878b099e3d07162632700c7
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

Fix typos
---
 README.md   | 2 +-
 sxhkdrc-mode.el | 4 ++--
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/README.md b/README.md
index dfc1e361e0..ddf6d2c7e6 100644
--- a/README.md
+++ b/README.md
@@ -1,7 +1,7 @@
 # sxhkdrc-mode for GNU Emacs
 
 This is a major mode for editing `sxhkdrc` files.  SXHKD is the Simple
-X Hotkey Daemon which is commonly used in minimalist desktop sessions
+X Hot Key Daemon which is commonly used in minimalist desktop sessions
 on Xorg, such as with the Binary Space Partitioning Window Manager
 (BSPWM).  The `sxhkdrc` file configures key chords, binding them to
 commands.  For the technicalities, read the man page `sxhkd(1)`.
diff --git a/sxhkdrc-mode.el b/sxhkdrc-mode.el
index 767afd7abf..17d46b8b86 100644
--- a/sxhkdrc-mode.el
+++ b/sxhkdrc-mode.el
@@ -6,7 +6,7 @@
 ;; Maintainer: Protesilaos Stavrou General Issues 
<~protesilaos/general-iss...@lists.sr.ht>
 ;; URL: https://git.sr.ht/~protesilaos/sxhkdrc-mode
 ;; Mailing-List: https://lists.sr.ht/~protesilaos/general-issues
-;; Version: 0.1.0
+;; Version: 0.1.1
 ;; Package-Requires: ((emacs "27.1"))
 
 ;; This file is NOT part of GNU Emacs.
@@ -29,7 +29,7 @@
 ;; Major mode for editing sxhkdrc files (Simple X Hot Key Daemon).  It
 ;; defines basic fontification rules and supports indentation.
 ;;
-;; SXHKD is the Simple X Hotkey Daemon which is commonly used in
+;; SXHKD is the Simple X Hot Key Daemon which is commonly used in
 ;; minimalist desktop sessions on Xorg, such as with the Binary Space
 ;; Partitioning Window Manager (BSPWM).
 ;;



[elpa] externals/org-remark 618d603939: fix: move org-remark-source-find-file-name to tracking

2022-12-14 Thread ELPA Syncer
branch: externals/org-remark
commit 618d60393961f83f0e18881d970f070063064f13
Author: Noboru Ota 
Commit: Noboru Ota 

fix: move org-remark-source-find-file-name to tracking

With the eww support, function 'org-remark-source-find-file-name' is
required by 'org-remark-global-tracking'.  This is because
org-remark-global-tracking-mode is designed to be turned on without
requiring org-remark so that loading the entire org library can be
differed until the first org file is opened.
---
 org-remark-global-tracking.el | 15 ---
 org-remark.el | 14 ++
 2 files changed, 14 insertions(+), 15 deletions(-)

diff --git a/org-remark-global-tracking.el b/org-remark-global-tracking.el
index d333c7c2ea..445db3d183 100644
--- a/org-remark-global-tracking.el
+++ b/org-remark-global-tracking.el
@@ -5,9 +5,9 @@
 ;; Author: Noboru Ota 
 ;; URL: https://github.com/nobiot/org-remark
 ;; Created: 15 August 2021
-;; Last modified: 13 February 2022
+;; Last modified: 14 December 2022
 ;; Package-Requires: ((emacs "27.1") (org "9.4"))
-;; Keywords: org-mode, annotation, writing, note-taking, marginal notes
+;; Keywords: org-mode, annotation, note-taking, marginal-notes, wp
 
 ;; This file is not part of GNU Emacs.
 
@@ -30,7 +30,6 @@
 ;;; Code:
 
 (declare-function org-remark-mode "org-remark")
-(declare-function org-remark-source-find-file-name "org-remark")
 
 (defvaralias 'org-remark-notes-file-path 'org-remark-notes-file-name)
 
@@ -113,6 +112,16 @@ This function is meant to be added to `find-file-hook' by
 ;; If not function, assume string and return it as the file path.
 org-remark-notes-file-name))
 
+(defun org-remark-source-find-file-name ()
+  "Assumes that we are currently in the source buffer.
+Returns the filename for the soure buffer.  We use this filename
+to identify the source buffer in all operations related to
+marginalia."
+  (if (eq major-mode 'eww-mode)
+  (let ((url-parsed (url-generic-parse-url (eww-current-url
+(concat (url-host url-parsed) (url-filename url-parsed)))
+(buffer-file-name)))
+
 (provide 'org-remark-global-tracking)
 
 ;;; org-remark-global-tracking.el ends here
diff --git a/org-remark.el b/org-remark.el
index 8737d83d69..d16d6f2395 100644
--- a/org-remark.el
+++ b/org-remark.el
@@ -6,9 +6,9 @@
 ;; URL: https://github.com/nobiot/org-remark
 ;; Version: 1.0.5
 ;; Created: 22 December 2020
-;; Last modified: 23 August 2022
+;; Last modified: 14 December 2022
 ;; Package-Requires: ((emacs "27.1") (org "9.4"))
-;; Keywords: org-mode, annotation, writing, note-taking, marginal-notes
+;; Keywords: org-mode, annotation, note-taking, marginal-notes, wp,
 
 ;; This file is not part of GNU Emacs.
 
@@ -377,16 +377,6 @@ marginal notes file.  The expected values are nil, :load 
and
  '(:underline "gold" :background "lemon chiffon")
  '(CATEGORY "important")))
 
-(defun org-remark-source-find-file-name ()
-  "Assumes that we are currently in the source buffer.
-Returns the filename for the soure buffer. We use this filename
-to identify the source buffer in all operations related to
-marginalia."
-  (if (eq major-mode 'eww-mode)
-  (let ((url-parsed (url-generic-parse-url (eww-current-url
-  (concat (url-host url-parsed) (url-filename url-parsed)))
-(buffer-file-name)))
-
 (defun org-remark-save ()
   "Save all the highlights tracked in current buffer to notes file.
 



[elpa] externals/org 794d502da0 2/2: org-time-stamp-custom-formats: Document that variable affects export

2022-12-14 Thread ELPA Syncer
branch: externals/org
commit 794d502da02daf83330b84e0c95e0afbec07db46
Author: Ihor Radchenko 
Commit: Ihor Radchenko 

org-time-stamp-custom-formats: Document that variable affects export

* lisp/org.el (org-time-stamp-custom-formats): Mention that the value
affect export; not only the display.
---
 lisp/org.el | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/lisp/org.el b/lisp/org.el
index 0e105eaccf..8dad3fafe5 100644
--- a/lisp/org.el
+++ b/lisp/org.el
@@ -2443,6 +2443,8 @@ These are overlaid over the default ISO format if the 
variable
 end of the second format.  The custom formats are also honored by export
 commands, if custom time display is turned on at the time of export.
 
+This variable also affects how timestamps are exported.
+
 Leading \"<\" and trailing \">\" pair will be stripped from the format
 strings."
   :group 'org-time



[elpa] externals/posframe 0567d06aae 2/2: Add posframe--calculate-new-position

2022-12-14 Thread ELPA Syncer
branch: externals/posframe
commit 0567d06aae1d8d324a679455edbe06afcc7e1088
Author: Feng Shu 
Commit: Feng Shu 

Add posframe--calculate-new-position
---
 posframe.el | 35 ---
 1 file changed, 20 insertions(+), 15 deletions(-)

diff --git a/posframe.el b/posframe.el
index fd81d92814..da06ae0861 100644
--- a/posframe.el
+++ b/posframe.el
@@ -830,23 +830,11 @@ of `posframe-show'."
 (setq posframe--last-poshandler-info info)
 (let* ((ref-position (plist-get info :ref-position))
(poshandler (posframe--get-valid-poshandler info))
-   (position (funcall poshandler info))
-   (x (car position))
-   (y (cdr position)))
+   (position (funcall poshandler info)))
   (if (not ref-position)
   position
-(let* ((parent-frame-width (plist-get info :parent-frame-width))
-   (parent-frame-height (plist-get info :parent-frame-height))
-   (posframe-width (plist-get info :posframe-width))
-   (posframe-height (plist-get info :posframe-height))
-   (ref-x (or (car ref-position) 0))
-   (ref-y (or (cdr ref-position) 0)))
-  (when (< x 0)
-(setq x (- (+ x parent-frame-width) posframe-width)))
-  (when (< y 0)
-(setq y (- (+ y parent-frame-height) posframe-height)))
-  (cons (+ ref-x x)
-(+ ref-y y)))
+(posframe--calculate-new-position
+ info position ref-position)
 
 (defun posframe--get-valid-poshandler (info)
   "Get valid poshandler function with the help of INFO."
@@ -860,6 +848,23 @@ of `posframe-show'."
#'posframe-poshandler-absolute-x-y)
   (t (error "Posframe: have no valid poshandler"))
 
+(defun posframe--calculate-new-position (info position ref-position)
+  "Calcuate new position according to INFO, POSITION and REF-POSITION."
+  (let* ((parent-frame-width (plist-get info :parent-frame-width))
+ (parent-frame-height (plist-get info :parent-frame-height))
+ (posframe-width (plist-get info :posframe-width))
+ (posframe-height (plist-get info :posframe-height))
+ (ref-x (or (car ref-position) 0))
+ (ref-y (or (cdr ref-position) 0))
+ (x (car position))
+ (y (cdr position)))
+(when (< x 0)
+  (setq x (- (+ x parent-frame-width) posframe-width)))
+(when (< y 0)
+  (setq y (- (+ y parent-frame-height) posframe-height)))
+(cons (+ ref-x x)
+  (+ ref-y y
+
 (defun posframe--set-frame-position (posframe position
   parent-frame-width
   parent-frame-height)



[elpa] externals/posframe updated (c9d9fce3f5 -> 0567d06aae)

2022-12-14 Thread ELPA Syncer
elpasync pushed a change to branch externals/posframe.

  from  c9d9fce3f5 v1.3.0
   new  e15b39ccf3 Add posframe--get-valid-poshandler
   new  0567d06aae Add posframe--calculate-new-position


Summary of changes:
 posframe.el | 59 +--
 1 file changed, 33 insertions(+), 26 deletions(-)



[elpa] externals/posframe e15b39ccf3 1/2: Add posframe--get-valid-poshandler

2022-12-14 Thread ELPA Syncer
branch: externals/posframe
commit e15b39ccf3dc4d6efa41951f28663a4d8736f00c
Author: Feng Shu 
Commit: Feng Shu 

Add posframe--get-valid-poshandler
---
 posframe.el | 26 ++
 1 file changed, 14 insertions(+), 12 deletions(-)

diff --git a/posframe.el b/posframe.el
index fe33656fd3..fd81d92814 100644
--- a/posframe.el
+++ b/posframe.el
@@ -829,18 +829,8 @@ of `posframe-show'."
   posframe--last-posframe-pixel-position
 (setq posframe--last-poshandler-info info)
 (let* ((ref-position (plist-get info :ref-position))
-   (position
-(funcall
- (or (plist-get info :poshandler)
- (let ((position (plist-get info :position)))
-   (cond ((integerp position)
-  #'posframe-poshandler-point-bottom-left-corner)
- ((and (consp position)
-   (integerp (car position))
-   (integerp (cdr position)))
-  #'posframe-poshandler-absolute-x-y)
- (t (error "Posframe: have no valid poshandler")
- info))
+   (poshandler (posframe--get-valid-poshandler info))
+   (position (funcall poshandler info))
(x (car position))
(y (cdr position)))
   (if (not ref-position)
@@ -858,6 +848,18 @@ of `posframe-show'."
   (cons (+ ref-x x)
 (+ ref-y y)))
 
+(defun posframe--get-valid-poshandler (info)
+  "Get valid poshandler function with the help of INFO."
+  (or (plist-get info :poshandler)
+  (let ((position (plist-get info :position)))
+(cond ((integerp position)
+   #'posframe-poshandler-point-bottom-left-corner)
+  ((and (consp position)
+(integerp (car position))
+(integerp (cdr position)))
+   #'posframe-poshandler-absolute-x-y)
+  (t (error "Posframe: have no valid poshandler"))
+
 (defun posframe--set-frame-position (posframe position
   parent-frame-width
   parent-frame-height)



[elpa] externals/org edd000f3b6 1/2: org-open-at-point: Link to `org-file-apps' in the docstring

2022-12-14 Thread ELPA Syncer
branch: externals/org
commit edd000f3b67fe818e129da3b9b1cb4219b919a8a
Author: Ihor Radchenko 
Commit: Ihor Radchenko 

org-open-at-point: Link to `org-file-apps' in the docstring

* lisp/org.el: Mention how file links are opened.

Reported-by: David Masterson 
Link: 
https://orgmode.org/list/sj0pr03mb54555477e276e6a3cadba4b8a2...@sj0pr03mb5455.namprd03.prod.outlook.com
---
 lisp/org.el | 10 +-
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/lisp/org.el b/lisp/org.el
index 4531032f73..0e105eaccf 100644
--- a/lisp/org.el
+++ b/lisp/org.el
@@ -8354,11 +8354,11 @@ they must return nil.")
 The thing can be a link, citation, timestamp, footnote, src-block or
 tags.
 
-When point is on a link, follow it.  Normally, files will be
-opened by an appropriate application.  If the optional prefix
-argument ARG is non-nil, Emacs will visit the file.  With
-a double prefix argument, try to open outside of Emacs, in the
-application the system uses for this file type.
+When point is on a link, follow it.  Normally, files will be opened by
+an appropriate application (see `org-file-apps').  If the optional prefix
+argument ARG is non-nil, Emacs will visit the file.  With a double
+prefix argument, try to open outside of Emacs, in the application the
+system uses for this file type.
 
 When point is on a timestamp, open the agenda at the day
 specified.



[elpa] externals/org updated (f49ee9200c -> 794d502da0)

2022-12-14 Thread ELPA Syncer
elpasync pushed a change to branch externals/org.

  from  f49ee9200c Merge branch 'bugfix'
   new  edd000f3b6 org-open-at-point: Link to `org-file-apps' in the 
docstring
   new  794d502da0 org-time-stamp-custom-formats: Document that variable 
affects export


Summary of changes:
 lisp/org.el | 12 +++-
 1 file changed, 7 insertions(+), 5 deletions(-)



[elpa] externals-release/org 88329143c8 2/6: org: Use buffer-base-buffer in safe resource fns

2022-12-14 Thread ELPA Syncer
branch: externals-release/org
commit 88329143c86b34195af68a8e5d5fd3d00a5dcae6
Author: TEC 
Commit: Ihor Radchenko 

org: Use buffer-base-buffer in safe resource fns

* lisp/org.el (org--confirm-resource-safe, org--safe-remote-resource-p):
Replace instances of buffer-file-name
with (buffer-file-name (buffer-base-buffer)) so these functions work in
indirect buffers.
---
 lisp/org.el | 7 ---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/lisp/org.el b/lisp/org.el
index 641720001e..6aa2a16219 100644
--- a/lisp/org.el
+++ b/lisp/org.el
@@ -4597,8 +4597,8 @@ is available.  This option applies only if FILE is a URL."
 This checks every pattern in `org-safe-remote-resources', and
 returns non-nil if any of them match."
   (let ((uri-patterns org-safe-remote-resources)
-(file-uri (and buffer-file-name
-   (concat "file://" (file-truename buffer-file-name
+(file-uri (and (buffer-file-name (buffer-base-buffer))
+   (concat "file://" (file-truename (buffer-file-name 
(buffer-base-buffer))
 match-p)
 (while (and (not match-p) uri-patterns)
   (setq match-p (or (string-match-p (car uri-patterns) uri)
@@ -4609,7 +4609,8 @@ returns non-nil if any of them match."
 (defun org--confirm-resource-safe (uri)
   "Ask the user if URI should be considered safe, returning non-nil if so."
   (unless noninteractive
-(let ((current-file (and buffer-file-name (file-truename 
buffer-file-name)))
+(let ((current-file (and (buffer-file-name (buffer-base-buffer))
+ (file-truename (buffer-file-name 
(buffer-base-buffer)
   (domain (and (string-match
 (rx (seq "http" (? "s") "://")
 (optional (+ (not (any "@/\n"))) "@")



[elpa] externals-release/org fec15dedb9 5/6: test-ob-R.el: New function to test for :result output

2022-12-14 Thread ELPA Syncer
branch: externals-release/org
commit fec15dedb942eacd0a7684de71d319f751fd74c5
Author: Jeremie Juste 
Commit: Ihor Radchenko 

test-ob-R.el: New function to test for :result output

* test-ob-R.el (ob-session-R-result-output): This test will check if
output is printed to buffer in a session with :results output. This
test is to prevent the bug mentioned in 
https://list.orgmode.org/877czca7oj@u-bordeaux.fr/
does not happen again.
---
 testing/lisp/test-ob-R.el | 16 ++--
 1 file changed, 14 insertions(+), 2 deletions(-)

diff --git a/testing/lisp/test-ob-R.el b/testing/lisp/test-ob-R.el
index f6143b994b..da142fb3cf 100644
--- a/testing/lisp/test-ob-R.el
+++ b/testing/lisp/test-ob-R.el
@@ -246,8 +246,20 @@ log10(10)
 (string= (concat src-block result)
  (buffer-string)))
 
-
-
+; add test for :result output
+(ert-deftest ob-session-R-result-output ()
+  (let (ess-ask-for-ess-directory
+ess-history-file
+org-confirm-babel-evaluate
+(org-babel-temporary-directory "/tmp")
+(src-block "#+begin_src R :session R :results output \n  
1:3\n#+end_src")
+(result "\n\n#+RESULTS:\n: [1] 1 2 3\n" ))
+(org-test-with-temp-text
+ src-block
+ (should (progn (org-babel-execute-src-block)
+(sleep-for 0 200)
+(string= (concat src-block result)
+ (buffer-string)))
 
 (provide 'test-ob-R)
 



[elpa] externals-release/org 662e814bc0 6/6: ob-R.el: Restore the handling of org-list in as var

2022-12-14 Thread ELPA Syncer
branch: externals-release/org
commit 662e814bc067153c74aeba5f882d547e327db8b4
Author: Jeremie Juste 
Commit: Ihor Radchenko 

ob-R.el: Restore the handling of org-list in as var

* ob-R.el (org-babel-R-assign-elisp): Use the patch from
ccbe...@health.ucsd.edu, to print org-list as a one column table as it
was the case in release_9.5. The break in R is due commit b4e437f96 *
ob-core: Resolve named list references to simple lists.

* test-ob-R.el (ob-R-nested-list): New function to test that org list
with multiple level are handled as expected in R.

see https://list.orgmode.org/87bkofh0ir.fsf@localhost/ for context.
---
 lisp/ob-R.el  |  4 ++--
 testing/lisp/test-ob-R.el | 35 +++
 2 files changed, 37 insertions(+), 2 deletions(-)

diff --git a/lisp/ob-R.el b/lisp/ob-R.el
index f68b5b44e4..b7f96a179a 100644
--- a/lisp/ob-R.el
+++ b/lisp/ob-R.el
@@ -241,11 +241,11 @@ This function is called by `org-babel-execute-src-block'."
 (defun org-babel-R-assign-elisp (name value colnames-p rownames-p)
   "Construct R code assigning the elisp VALUE to a variable named NAME."
   (if (listp value)
-  (let* ((lengths (mapcar 'length (cl-remove-if-not 'sequencep value)))
+  (let* ((lengths (mapcar 'length (cl-remove-if-not 'listp value)))
 (max (if lengths (apply 'max lengths) 0))
 (min (if lengths (apply 'min lengths) 0)))
 ;; Ensure VALUE has an orgtbl structure (depth of at least 2).
-(unless (listp (car value)) (setq value (list value)))
+(unless (listp (car value)) (setq value (mapcar 'list value)))
(let ((file (orgtbl-to-tsv value '(:fmt org-babel-R-quote-tsv-field)))
  (header (if (or (eq (nth 1 value) 'hline) colnames-p)
  "TRUE" "FALSE"))
diff --git a/testing/lisp/test-ob-R.el b/testing/lisp/test-ob-R.el
index da142fb3cf..cbd5a36a2d 100644
--- a/testing/lisp/test-ob-R.el
+++ b/testing/lisp/test-ob-R.el
@@ -261,6 +261,41 @@ log10(10)
 (string= (concat src-block result)
  (buffer-string)))
 
+
+;; test for printing of (nested) list
+(ert-deftest ob-R-nested-list ()
+  "List are printed as the first column of a table and nested lists are 
ignored"
+  (let (ess-ask-for-ess-directory
+ess-history-file
+org-confirm-babel-evaluate
+(org-babel-temporary-directory "/tmp")
+(text "
+#+NAME: example-list
+- simple
+  - not
+  - nested
+- list
+
+#+BEGIN_SRC R :var x=example-list
+x
+#+END_SRC
+")
+(result "
+#+RESULTS:
+| simple |
+| list   |
+"))
+(org-test-with-temp-text-in-file
+text
+  (goto-char (point-min))
+  (org-babel-next-src-block)
+  (should (progn  
+(org-babel-execute-src-block)
+(sleep-for 0 200)
+(string= (concat text result)
+ (buffer-string)))
+
+
 (provide 'test-ob-R)
 
 ;;; test-ob-R.el ends here



[nongnu] elpa/clojure-mode fe29a03604 1/3: Fix imenu with Clojure code in string or comment

2022-12-14 Thread ELPA Syncer
branch: elpa/clojure-mode
commit fe29a0360468f40a2ca3de36490f1b0237012697
Author: Daniel Kraus 
Commit: Bozhidar Batsov 

Fix imenu with Clojure code in string or comment

Ignore error that's thrown from `down-list` when called
with point inside a string or comment.

E.g. with code like:

```
(defn foo []
  (let [a "
(defn b [_]
  (bar {:bla \"bla\"}))"]))
```

`clojure-match-next-def` calls `down-list` with point inside
the string and `down-list` will throw an user-error with
"This command doesn't work in strings or comments".

This user-error in `down-list` got introduced 2022-05-06
with 
https://git.savannah.gnu.org/cgit/emacs.git/commit/?id=0b3b295776ce723885c9997ab26d57314db2a5df

The `when ignore-errors` could be replaced with
`unless (ppss-comment-or-string-start (syntax-ppss))`
once the minimum requirement for clojure-mode is Emacs 27.
---
 CHANGELOG.md| 1 +
 clojure-mode.el | 4 +++-
 2 files changed, 4 insertions(+), 1 deletion(-)

diff --git a/CHANGELOG.md b/CHANGELOG.md
index 34ce38bf6a..f4e032f1d9 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -11,6 +11,7 @@
 
 * [#581](https://github.com/clojure-emacs/clojure-mode/issues/581): Fix font 
locking not working for keywords starting with a number.
 * [#377](https://github.com/clojure-emacs/clojure-mode/issues/377): Fix 
everything starting with the prefix 'def' being highlighted as a definition 
form. Now definition forms are enumerated explicitly in the font-locking code, 
like all other forms.
+* [#638](https://github.com/clojure-emacs/clojure-mode/pull/638): Fix imenu 
with Clojure code in string or comment.
 
 ## 5.15.1 (2022-07-30)
 
diff --git a/clojure-mode.el b/clojure-mode.el
index 27a02f8068..fc3813e554 100644
--- a/clojure-mode.el
+++ b/clojure-mode.el
@@ -777,7 +777,9 @@ Called by `imenu--generic-function'."
   (let (found?
 (deftype (match-string 2))
 (start (point)))
-(down-list)
+;; ignore user-error from down-list when called from inside a string 
or comment
+(ignore-errors
+  (down-list))
 (forward-sexp)
 (while (not found?)
   (ignore-errors



[nongnu] elpa/clojure-mode 3453cd229b 3/3: Release 5.16

2022-12-14 Thread ELPA Syncer
branch: elpa/clojure-mode
commit 3453cd229b412227aaffd1dc2870fa8fa213c5b1
Author: Bozhidar Batsov 
Commit: Bozhidar Batsov 

Release 5.16
---
 CHANGELOG.md| 6 --
 clojure-mode.el | 2 +-
 2 files changed, 5 insertions(+), 3 deletions(-)

diff --git a/CHANGELOG.md b/CHANGELOG.md
index f4e032f1d9..5c6df28b17 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -2,15 +2,17 @@
 
 ## master (unreleased)
 
+## 5.16.0 (2022-12-14)
+
 ### Changes
 
-* [#641](https://github.com/clojure-emacs/clojure-mode/issues/641) Recognize 
nbb projects (identified by the presence of `nbb.edn`).
+* [#641](https://github.com/clojure-emacs/clojure-mode/issues/641): Recognize 
nbb projects (identified by the presence of `nbb.edn`).
 * [#629](https://github.com/clojure-emacs/clojure-mode/pull/629): Set 
`add-log-current-defun-function` to new function `clojure-current-defun-name` 
(this is used by `which-function-mode` and `easy-kill`).
 
 ### Bugs fixed
 
 * [#581](https://github.com/clojure-emacs/clojure-mode/issues/581): Fix font 
locking not working for keywords starting with a number.
-* [#377](https://github.com/clojure-emacs/clojure-mode/issues/377): Fix 
everything starting with the prefix 'def' being highlighted as a definition 
form. Now definition forms are enumerated explicitly in the font-locking code, 
like all other forms.
+* [#377](https://github.com/clojure-emacs/clojure-mode/issues/377): Fix 
everything starting with the prefix `def` being highlighted as a definition 
form. Now definition forms are enumerated explicitly in the font-locking code, 
like all other forms.
 * [#638](https://github.com/clojure-emacs/clojure-mode/pull/638): Fix imenu 
with Clojure code in string or comment.
 
 ## 5.15.1 (2022-07-30)
diff --git a/clojure-mode.el b/clojure-mode.el
index d940bf9bee..86ff81c524 100644
--- a/clojure-mode.el
+++ b/clojure-mode.el
@@ -12,7 +12,7 @@
 ;; Maintainer: Bozhidar Batsov 
 ;; URL: http://github.com/clojure-emacs/clojure-mode
 ;; Keywords: languages clojure clojurescript lisp
-;; Version: 5.15.1
+;; Version: 5.16.0
 ;; Package-Requires: ((emacs "25.1"))
 
 ;; This file is not part of GNU Emacs.



[elpa] externals/org cea5af5cce: Merge branch 'bugfix'

2022-12-14 Thread ELPA Syncer
branch: externals/org
commit cea5af5ccec137318d8b98f8cc41cdd518383c95
Merge: 794d502da0 662e814bc0
Author: Ihor Radchenko 
Commit: Ihor Radchenko 

Merge branch 'bugfix'

Merge back cherry-picked important bugfix commits from main.



[elpa] externals-release/org 0db972ad63 1/6: ox: Handle failure to localize link

2022-12-14 Thread ELPA Syncer
branch: externals-release/org
commit 0db972ad63859c3220ecc9d236003071bc474d6f
Author: TEC 
Commit: Ihor Radchenko 

ox: Handle failure to localize link

* lisp/ox.el (org-export-link-localise): When no local copy of the link
resource could be fetched, produce a warning message and do nothing
instead of setting the link :path to nil.
---
 lisp/ox.el | 17 +++--
 1 file changed, 11 insertions(+), 6 deletions(-)

diff --git a/lisp/ox.el b/lisp/ox.el
index c14eafe44d..737703f11d 100644
--- a/lisp/ox.el
+++ b/lisp/ox.el
@@ -4612,12 +4612,17 @@ If LINK refers to a remote resource, modify it to point 
to a local
 downloaded copy.  Otherwise, return unchanged LINK."
   (when (org-export-link-remote-p link)
 (let* ((local-path (org-export-link--remote-local-copy link)))
-  (setcdr link
-  (thread-first (cadr link)
-(plist-put :type "file")
-(plist-put :path local-path)
-(plist-put :raw-link (concat "file:" local-path))
-list
+  (if local-path
+  (setcdr link
+  (thread-first (cadr link)
+(plist-put :type "file")
+(plist-put :path local-path)
+(plist-put :raw-link (concat "file:" 
local-path))
+list))
+(display-warning
+ '(org export)
+ (format "unable to obtain local copy of %s"
+ (org-element-property :raw-link link))
   link)
 
  For References



[nongnu] elpa/clojure-mode e94165d3b8 2/3: Add a note

2022-12-14 Thread ELPA Syncer
branch: elpa/clojure-mode
commit e94165d3b8743bf530a8f389aba3459cfa7a352b
Author: Bozhidar Batsov 
Commit: Bozhidar Batsov 

Add a note
---
 clojure-mode.el | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/clojure-mode.el b/clojure-mode.el
index fc3813e554..d940bf9bee 100644
--- a/clojure-mode.el
+++ b/clojure-mode.el
@@ -778,6 +778,9 @@ Called by `imenu--generic-function'."
 (deftype (match-string 2))
 (start (point)))
 ;; ignore user-error from down-list when called from inside a string 
or comment
+;; TODO: a better workaround would be to wrap it in
+;; unless (ppss-comment-or-string-start (syntax-ppss)) instead of 
ignore-errors,
+;; but ppss-comment-or-string-start is only available since Emacs 27
 (ignore-errors
   (down-list))
 (forward-sexp)



[nongnu] elpa/clojure-mode updated (3717e449dd -> 3453cd229b)

2022-12-14 Thread ELPA Syncer
elpasync pushed a change to branch elpa/clojure-mode.

  from  3717e449dd Fix interpreter-mode-alist for nbb
   new  fe29a03604 Fix imenu with Clojure code in string or comment
   new  e94165d3b8 Add a note
   new  3453cd229b Release 5.16


Summary of changes:
 CHANGELOG.md| 7 +--
 clojure-mode.el | 9 +++--
 2 files changed, 12 insertions(+), 4 deletions(-)



[elpa] externals/org updated (794d502da0 -> cea5af5cce)

2022-12-14 Thread ELPA Syncer
elpasync pushed a change to branch externals/org.

  from  794d502da0 org-time-stamp-custom-formats: Document that variable 
affects export
   new  0db972ad63 ox: Handle failure to localize link
   new  88329143c8 org: Use buffer-base-buffer in safe resource fns
   new  6a126e40a7 org-persist: Ensure index instantiated before read
   new  402d2421d9 org-persist: Do not re-download url files on write
   new  fec15dedb9 test-ob-R.el: New function to test for :result output
   new  662e814bc0 ob-R.el: Restore the handling of org-list in as var
   new  cea5af5cce Merge branch 'bugfix'


Summary of changes:



[elpa] externals-release/org updated (47bcdce19b -> 662e814bc0)

2022-12-14 Thread ELPA Syncer
elpasync pushed a change to branch externals-release/org.

  from  47bcdce19b doc/org-manual.org: Document `org-hide-drawer-startup'
   new  0db972ad63 ox: Handle failure to localize link
   new  88329143c8 org: Use buffer-base-buffer in safe resource fns
   new  6a126e40a7 org-persist: Ensure index instantiated before read
   new  402d2421d9 org-persist: Do not re-download url files on write
   new  fec15dedb9 test-ob-R.el: New function to test for :result output
   new  662e814bc0 ob-R.el: Restore the handling of org-list in as var


Summary of changes:
 lisp/ob-R.el  |  4 ++--
 lisp/org-persist.el   | 14 --
 lisp/org.el   |  7 ---
 lisp/ox.el| 17 +++--
 testing/lisp/test-ob-R.el | 47 +++
 5 files changed, 72 insertions(+), 17 deletions(-)



[elpa] externals-release/org 402d2421d9 4/6: org-persist: Do not re-download url files on write

2022-12-14 Thread ELPA Syncer
branch: externals-release/org
commit 402d2421d92be0a3c6b6960f1eb7c605e384ff53
Author: TEC 
Commit: Ihor Radchenko 

org-persist: Do not re-download url files on write

* lisp/org-persist.el (org-persist-write:url): Since the url write
function is called as part of `org-persist-write-all', it is worth
adding a check to avoid re-downloading the file if a file already exists
in the expected location.
---
 lisp/org-persist.el | 13 +++--
 1 file changed, 7 insertions(+), 6 deletions(-)

diff --git a/lisp/org-persist.el b/lisp/org-persist.el
index fe339505c5..30c5e17d48 100644
--- a/lisp/org-persist.el
+++ b/lisp/org-persist.el
@@ -662,12 +662,13 @@ COLLECTION is the plist holding data collection."
  (file-copy (org-file-name-concat
  org-persist-directory
  (format "%s-%s.%s" persist-file (md5 path) ext
-(unless (file-exists-p (file-name-directory file-copy))
-  (make-directory (file-name-directory file-copy) t))
-(if (org--should-fetch-remote-resource-p path)
-(url-copy-file path file-copy 'overwrite)
-  (error "The remote resource %S is considered unsafe, and will not be 
downloaded."
- path))
+(unless (file-exists-p file-copy)
+  (unless (file-exists-p (file-name-directory file-copy))
+(make-directory (file-name-directory file-copy) t))
+  (if (org--should-fetch-remote-resource-p path)
+  (url-copy-file path file-copy 'overwrite)
+(error "The remote resource %S is considered unsafe, and will not 
be downloaded."
+   path)))
 (format "%s-%s.%s" persist-file (md5 path) ext)
 
 (defun org-persist-write:index (container _)



[elpa] externals-release/org 6a126e40a7 3/6: org-persist: Ensure index instantiated before read

2022-12-14 Thread ELPA Syncer
branch: externals-release/org
commit 6a126e40a7c65d6a7644939029a140d47ecb8f79
Author: TEC 
Commit: Ihor Radchenko 

org-persist: Ensure index instantiated before read

* lisp/org-persist.el (org-persist-read): If the index is empty at the
start of `org-persist-read', load it before continuing.
---
 lisp/org-persist.el | 1 +
 1 file changed, 1 insertion(+)

diff --git a/lisp/org-persist.el b/lisp/org-persist.el
index 1a32ed0102..fe339505c5 100644
--- a/lisp/org-persist.el
+++ b/lisp/org-persist.el
@@ -771,6 +771,7 @@ ASSOCIATED can be a plist, a buffer, or a string.
 A buffer is treated as (:buffer ASSOCIATED).
 A string is treated as (:file ASSOCIATED).
 When LOAD? is non-nil, load the data instead of reading."
+  (unless org-persist--index (org-persist--load-index))
   (setq associated (org-persist--normalize-associated associated))
   (setq container (org-persist--normalize-container container))
   (unless (and org-persist-disable-when-emacs-Q



[elpa] externals/sxhkdrc-mode 19004b174a 3/4: Make generic keys capture brace expressions

2022-12-14 Thread ELPA Syncer
branch: externals/sxhkdrc-mode
commit 19004b174aed88996ffadc47dce45f6dcd6cbbdb
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

Make generic keys capture brace expressions
---
 sxhkdrc-mode.el | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/sxhkdrc-mode.el b/sxhkdrc-mode.el
index 5df61a7884..2e2a3fe658 100644
--- a/sxhkdrc-mode.el
+++ b/sxhkdrc-mode.el
@@ -50,7 +50,7 @@ Space Partitioning Window Manager (BSPWM)."
 (defvar sxhkdrc-mode-syntax
   '((key-modifier . ( "control" "ctrl" "shift" "alt" "meta" "super" "hyper"
   "mod1" "mod2" "mod3" "mod4" "mod5"))
-(key-generic . "^\\<.*?\\>")
+(key-generic . "^\\({.*?}\\|\\<.*?\\>\\)")
 (comment . "^\\([\s\t]+\\)?#.*$")
 (command . "^[\s\t]+\\([;]\\)?\\(\\_<.*?\\_>\\)")
 (indent-other . 0)



[elpa] externals/sxhkdrc-mode 8ab934d170 1/4: Fix fontification of comments

2022-12-14 Thread ELPA Syncer
branch: externals/sxhkdrc-mode
commit 8ab934d17091a81575e81e1568664661e777c2c1
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

Fix fontification of comments
---
 sxhkdrc-mode.el | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/sxhkdrc-mode.el b/sxhkdrc-mode.el
index 17d46b8b86..c29bd88f0f 100644
--- a/sxhkdrc-mode.el
+++ b/sxhkdrc-mode.el
@@ -6,7 +6,7 @@
 ;; Maintainer: Protesilaos Stavrou General Issues 
<~protesilaos/general-iss...@lists.sr.ht>
 ;; URL: https://git.sr.ht/~protesilaos/sxhkdrc-mode
 ;; Mailing-List: https://lists.sr.ht/~protesilaos/general-issues
-;; Version: 0.1.1
+;; Version: 0.1.2
 ;; Package-Requires: ((emacs "27.1"))
 
 ;; This file is NOT part of GNU Emacs.
@@ -92,6 +92,8 @@ key chord chain (demarcated by a colon or semicolon)."
   (,(alist-get 'command syntax)
(1 'sxhkdrc-mode-command-async t t)
(2 'sxhkdrc-mode-command t t))
+  (,(alist-get 'comment syntax)
+   (0 'font-lock-comment-face))
   (,(alist-get 'key-generic syntax)
(0 'sxhkdrc-mode-generic-key
   "Fontification of sxhkdrc files.")



[elpa] externals/sxhkdrc-mode 95b2c324f8 4/4: Refine sxhkdrc-mode-indent-line

2022-12-14 Thread ELPA Syncer
branch: externals/sxhkdrc-mode
commit 95b2c324f8ab66f1ca9eaee89fda54a535e06d6a
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

Refine sxhkdrc-mode-indent-line
---
 sxhkdrc-mode.el | 19 +++
 1 file changed, 11 insertions(+), 8 deletions(-)

diff --git a/sxhkdrc-mode.el b/sxhkdrc-mode.el
index 2e2a3fe658..eca1c84cc2 100644
--- a/sxhkdrc-mode.el
+++ b/sxhkdrc-mode.el
@@ -6,7 +6,7 @@
 ;; Maintainer: Protesilaos Stavrou General Issues 
<~protesilaos/general-iss...@lists.sr.ht>
 ;; URL: https://git.sr.ht/~protesilaos/sxhkdrc-mode
 ;; Mailing-List: https://lists.sr.ht/~protesilaos/general-issues
-;; Version: 0.1.3
+;; Version: 0.1.4
 ;; Package-Requires: ((emacs "27.1"))
 
 ;; This file is NOT part of GNU Emacs.
@@ -104,13 +104,16 @@ key chord chain (demarcated by a colon or semicolon)."
   (let ((syntax sxhkdrc-mode-syntax))
 (save-excursion
   (beginning-of-line)
-  (when (or (not (looking-at (alist-get 'key-generic syntax)))
-(save-excursion
-  (forward-line -1)
-  (beginning-of-line)
-  (looking-at (alist-get 'key-generic syntax
-(delete-horizontal-space)
-(indent-to (alist-get 'indent-command syntax))
+  (delete-horizontal-space)
+  (cond
+   ((looking-at (alist-get 'comment syntax))
+(indent-to (alist-get 'indent-other syntax)))
+   ((or (not (looking-at (alist-get 'key-generic syntax)))
+(save-excursion
+  (forward-line -1)
+  (beginning-of-line)
+  (looking-at (alist-get 'key-generic syntax
+(indent-to (alist-get 'indent-command syntax)))
 
 ;;;###autoload
 (define-derived-mode sxhkdrc-mode prog-mode "SXHKDRC"



[elpa] externals/sxhkdrc-mode f8b67a519d 2/4: Overwrite other fontification on comment lines

2022-12-14 Thread ELPA Syncer
branch: externals/sxhkdrc-mode
commit f8b67a519dc417acd2847cdbc04c65d7aef67b2d
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

Overwrite other fontification on comment lines
---
 sxhkdrc-mode.el | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/sxhkdrc-mode.el b/sxhkdrc-mode.el
index c29bd88f0f..5df61a7884 100644
--- a/sxhkdrc-mode.el
+++ b/sxhkdrc-mode.el
@@ -6,7 +6,7 @@
 ;; Maintainer: Protesilaos Stavrou General Issues 
<~protesilaos/general-iss...@lists.sr.ht>
 ;; URL: https://git.sr.ht/~protesilaos/sxhkdrc-mode
 ;; Mailing-List: https://lists.sr.ht/~protesilaos/general-issues
-;; Version: 0.1.2
+;; Version: 0.1.3
 ;; Package-Requires: ((emacs "27.1"))
 
 ;; This file is NOT part of GNU Emacs.
@@ -93,7 +93,7 @@ key chord chain (demarcated by a colon or semicolon)."
(1 'sxhkdrc-mode-command-async t t)
(2 'sxhkdrc-mode-command t t))
   (,(alist-get 'comment syntax)
-   (0 'font-lock-comment-face))
+   (0 'font-lock-comment-face t t))
   (,(alist-get 'key-generic syntax)
(0 'sxhkdrc-mode-generic-key
   "Fontification of sxhkdrc files.")



[elpa] externals/sxhkdrc-mode updated (e4880eb1bd -> 95b2c324f8)

2022-12-14 Thread ELPA Syncer
elpasync pushed a change to branch externals/sxhkdrc-mode.

  from  e4880eb1bd Fix typos
   new  8ab934d170 Fix fontification of comments
   new  f8b67a519d Overwrite other fontification on comment lines
   new  19004b174a Make generic keys capture brace expressions
   new  95b2c324f8 Refine sxhkdrc-mode-indent-line


Summary of changes:
 sxhkdrc-mode.el | 23 ++-
 1 file changed, 14 insertions(+), 9 deletions(-)



[nongnu] elpa/editorconfig b758e70fc7: Enable indentation for tree-sitter based typescript mode (#282)

2022-12-14 Thread ELPA Syncer
branch: elpa/editorconfig
commit b758e70fc73b6f8af4089417c19ef14b57b7be68
Author: Rodion Goritskov 
Commit: GitHub 

Enable indentation for tree-sitter based typescript mode (#282)
---
 editorconfig.el | 1 +
 1 file changed, 1 insertion(+)

diff --git a/editorconfig.el b/editorconfig.el
index 8438be611d..636684f49b 100644
--- a/editorconfig.el
+++ b/editorconfig.el
@@ -261,6 +261,7 @@ This hook will be run even when there are no matching 
sections in
   tcl-continued-indent-level)
 (terra-mode terra-indent-level)
 (typescript-mode typescript-indent-level)
+(typescript-ts-base-mode typescript-ts-mode-indent-offset)
 (verilog-mode verilog-indent-level
   verilog-indent-level-behavioral
   verilog-indent-level-declaration



[nongnu] elpa/geiser-chez 246ec4c8bc: readme typo: fixes #10

2022-12-14 Thread ELPA Syncer
branch: elpa/geiser-chez
commit 246ec4c8bc4e7f64414e5cbe0fa66f0e5ef7d527
Author: jao 
Commit: jao 

readme typo: fixes #10
---
 readme.org | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/readme.org b/readme.org
index 5811a3c991..636f945dd2 100644
--- a/readme.org
+++ b/readme.org
@@ -21,7 +21,7 @@ This package provides support for using 
[[https://cisco.github.io/ChezScheme/][C
   is the familiar
 
   #+begin_src elisp
-M-x install-package RET geiser-chez RET
+M-x package-install RET geiser-chez RET
   #+end_src
 
   That will also install the ~geiser~ package, and its fine info manual.  
Please



[elpa] externals/eev b8e8c7824c: Fixed a bug find in `ee-efunctiondescr-re'.

2022-12-14 Thread ELPA Syncer
branch: externals/eev
commit b8e8c7824c3120cea31d06be47b84ad9c99d30e5
Author: Eduardo Ochs 
Commit: Eduardo Ochs 

Fixed a bug find in `ee-efunctiondescr-re'.
---
 ChangeLog |  5 +
 VERSION   |  4 ++--
 eev-hlinks.el | 17 +++--
 eev-intro.el  |  1 +
 4 files changed, 23 insertions(+), 4 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index 3f8ed510b0..f050ccbe38 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2022-12-14  Eduardo Ochs  
+
+   * eev-hlinks.el (ee-underlinewsp-re): new function.
+   (ee-efunctiondescr-re): use `ee-underlinewsp-re'.
+
 2022-12-04  Eduardo Ochs  
 
* eev-videolinks.el (find-eev2022pyvideo): new function.
diff --git a/VERSION b/VERSION
index 1bbf8dbe34..dddc014036 100644
--- a/VERSION
+++ b/VERSION
@@ -1,2 +1,2 @@
-Sun Dec  4 19:23:45 GMT 2022
-Sun Dec  4 16:23:45 -03 2022
+Wed Dec 14 13:22:55 GMT 2022
+Wed Dec 14 10:22:55 -03 2022
diff --git a/eev-hlinks.el b/eev-hlinks.el
index f1f30df4fd..58aed83280 100644
--- a/eev-hlinks.el
+++ b/eev-hlinks.el
@@ -19,7 +19,7 @@
 ;;
 ;; Author: Eduardo Ochs 
 ;; Maintainer: Eduardo Ochs 
-;; Version:20221023
+;; Version:    20221214
 ;; Keywords:   e-scripts
 ;;
 ;; Latest version: <http://angg.twu.net/eev-current/eev-hlinks.el>
@@ -435,6 +435,13 @@ This is the standard high-level way to call `ee-fhl-run'."
   "Do the inverse of `custom-unlispify-tag-name'."
   (intern (downcase (replace-regexp-in-string " " "-" str
 
+(defun ee-underlinewsp-re (&rest components)
+  "Convert each \"_\" in COMPONENTS into a \"[ \\t\\n]\".
+This is a quick hack that builds a regexp from COMPONENTS.
+Each underline in COMPONENTS is replaced by a regexp that matches
+a single whitespace character, and the results are `concat'-ed."
+  (replace-regexp-in-string "_" "[ \t\n]" (apply 'concat components)))
+
 
 
 ;;;  _ _ _   _ _   _
@@ -479,8 +486,14 @@ This is the standard high-level way to call `ee-fhl-run'."
 (defun ee-custom-v-bufferp () (ee-buffer-re ee-custom-v-re))
 
 ;; By buffer name (when it is "*Help*")
+;;
+;; (defvar ee-efunctiondescr-re
+;;   "^\\([^ \t\n]+\\) is a[^\t\n]*\\(function\\|Lisp macro\\|special form\\)")
 (defvar ee-efunctiondescr-re
-  "^\\([^ \t\n]+\\) is a[^\t\n]*\\(function\\|Lisp macro\\|special form\\)")
+  (ee-underlinewsp-re
+   "^\\([^ \t\n]+\\)_is_an?"
+   "\\(_autoloaded\\|_interactive\\|_compiled\\|_byte-compiled\\)*"
+   "\\(_Lisp_function\\|_macro\\|_special_form\\)"))
 (defun  ee-efunctiondescr-bufferp () (ee-buffer-help ee-efunctiondescr-re 1))
 (defun  ee-find-efunctiondescr-links ()
   (let ((f (ee-efunctiondescr-bufferp)))
diff --git a/eev-intro.el b/eev-intro.el
index fb68364b93..2e0f377dd8 100644
--- a/eev-intro.el
+++ b/eev-intro.el
@@ -861,6 +861,7 @@ For more details see:
 [Video links:]
   (find-eevnavvideo \"10:36\" \"if I type  six times here\")
   (find-eevnavvideo \"10:50\" \"a shell running inside Emacs\")
+  (find-eev2021video \"0:14\" \"and if we type f8 several times here\")
   (find-eev2019video \"15:11\" \"Demo: the eepitch block (in red star lines)\")
   (find-eev2019video \"15:48\" \"Demo: eepitch on non-red star lines\")
   (find-eev2019video \"15:56\" \"Demo: eepitch in action\")



[elpa] externals/org 555dacfa8b: org-persist: Merge index with index file content

2022-12-14 Thread ELPA Syncer
branch: externals/org
commit 555dacfa8bec7b326a728abc2a9905501e05195a
Author: TEC 
Commit: TEC 

org-persist: Merge index with index file content

* lisp/org-persist.el (org-persist-write, org-persist-load,
org-persist-write:index, org-persist-load:index): Check if the index
file has been externally updated since loading, and if so try to perform
basic merging of the current index file contents and the loaded index
before performing GC or overwriting the index file.
(org-persist--index-age, org-persist--merge-index-with-disk,
org-persist--merge-index): New variable and functions to keep track of
index age and perform merging.
---
 lisp/org-persist.el | 56 ++---
 1 file changed, 49 insertions(+), 7 deletions(-)

diff --git a/lisp/org-persist.el b/lisp/org-persist.el
index aff99f8136..dfc62d0e37 100644
--- a/lisp/org-persist.el
+++ b/lisp/org-persist.el
@@ -259,6 +259,9 @@ properties:
   "Hash table storing `org-persist--index'.  Used for quick access.
 They keys are conses of (container . associated).")
 
+(defvar org-persist--index-age nil
+  "The modification time of the index file, when it was loaded.")
+
 (defvar org-persist--report-time 0.5
   "Whether to report read/write time.
 
@@ -589,8 +592,10 @@ COLLECTION is the plist holding data collection."
 (defun org-persist-load:index (container index-file _)
   "Load `org-persist--index' from INDEX-FILE according to CONTAINER."
   (unless org-persist--index
-(setq org-persist--index (org-persist-read:index container index-file nil))
-(setq org-persist--index-hash nil)
+(setq org-persist--index (org-persist-read:index container index-file nil)
+  org-persist--index-hash nil
+  org-persist--index-age (file-attribute-modification-time
+  (file-attributes index-file)))
 (if org-persist--index
 (mapc (lambda (collection) (org-persist--add-to-index collection 
'hash)) org-persist--index)
   (setq org-persist--index nil)
@@ -690,17 +695,51 @@ COLLECTION is the plist holding data collection."
 (message "Missing write access rights to org-persist-directory: %S"
  org-persist-directory
   (when (file-exists-p org-persist-directory)
-(org-persist--write-elisp-file
- (org-file-name-concat org-persist-directory org-persist-index-file)
- org-persist--index
- t t)
-(org-file-name-concat org-persist-directory org-persist-index-file)))
+(let ((index-file
+   (org-file-name-concat org-persist-directory 
org-persist-index-file)))
+  (org-persist--merge-index-with-disk)
+  (org-persist--write-elisp-file index-file org-persist--index t t)
+  (setq org-persist--index-age
+(file-attribute-modification-time (file-attributes index-file)))
+  index-file)))
 
 (defun org-persist--save-index ()
   "Save `org-persist--index'."
   (org-persist-write:index
`(index ,org-persist--storage-version) nil))
 
+(defun org-persist--merge-index-with-disk ()
+  "Merge `org-persist--index' with the current index file on disk."
+  (let* ((index-file
+  (org-file-name-concat org-persist-directory org-persist-index-file))
+ (disk-index
+  (and (file-exists-p index-file)
+   (org-file-newer-than-p index-file org-persist--index-age)
+   (org-persist-read:index `(index ,org-persist--storage-version) 
index-file nil)))
+ (combined-index
+  (org-persist--merge-index org-persist--index disk-index)))
+(when disk-index
+  (setq org-persist--index combined-index
+org-persist--index-age
+(file-attribute-modification-time (file-attributes index-file))
+
+(defun org-persist--merge-index (base other)
+  "Attempt to merge new index items in OTHER into BASE.
+Items with different details are considered too difficult, and skipped."
+  (if other
+  (let ((new (cl-set-difference other base :test #'equal))
+(base-files (mapcar (lambda (s) (plist-get s :persist-file)) base))
+(combined (reverse base)))
+(dolist (item (nreverse new))
+  (unless (or (memq 'index (mapcar #'car (plist-get item :container)))
+  (not (file-exists-p
+(org-file-name-concat org-persist-directory
+  (plist-get item 
:persist-file
+  (member (plist-get item :persist-file) base-files))
+(push item combined)))
+(nreverse combined))
+base))
+
  Public API
 
 (cl-defun org-persist-register (container &optional associated &rest misc
@@ -951,6 +990,9 @@ Do nothing in an indirect buffer."
 (defun org-persist-gc ()
   "Remove expired or unregistered containers and orphaned files.
 Also, remove containers associated with non-existing files."
+  (if org-persist--index
+  (org-persist--merge-index-with-disk)
+(or

[elpa] externals/org-modern 010eade723: org-modern-block-fringe: Customizable offset from the window edge (Fix #107)

2022-12-14 Thread ELPA Syncer
branch: externals/org-modern
commit 010eade723881ca234a12bd94b791e2000cd2a15
Author: Daniel Mendler 
Commit: Daniel Mendler 

org-modern-block-fringe: Customizable offset from the window edge (Fix #107)
---
 org-modern.el | 20 +---
 1 file changed, 13 insertions(+), 7 deletions(-)

diff --git a/org-modern.el b/org-modern.el
index 6038f736f4..692e81e336 100644
--- a/org-modern.el
+++ b/org-modern.el
@@ -157,9 +157,12 @@ all other blocks."
 (string :tag "#+end_NAME replacement"))
   (const :tag "Hide #+begin_ and #+end_ prefixes" t)
 
-(defcustom org-modern-block-fringe t
-  "Add a bitmap fringe to blocks."
-  :type 'boolean)
+(defcustom org-modern-block-fringe 0
+  "Add a border to the blocks in the fringe.
+This variable can also be set to an integer between 0 and 16,
+which specifies the offset of the block border from the edge of
+the window."
+  :type '(choice boolean integer))
 
 (defcustom org-modern-keyword t
   "Prettify keywords like #+title.
@@ -564,13 +567,16 @@ the font.")
  (fboundp 'fringe-bitmap-p)
  (not (fringe-bitmap-p 'org-modern--block-inner)))
 (let* ((g (ceiling (frame-char-height) 1.8))
-   (h (- (default-line-height) g)))
+   (h (- (default-line-height) g))
+   (v (expt 2 (- 15 (if (booleanp org-modern-block-fringe) 0
+  org-modern-block-fringe
+   (w (+ v v -1)))
   (define-fringe-bitmap 'org-modern--block-inner
-[128] nil nil '(top t))
+(vector v) nil 16 '(top t))
   (define-fringe-bitmap 'org-modern--block-begin
-(vconcat (make-vector g 0) [#xFF] (make-vector (- 127 g) #x80)) nil 
nil 'top)
+(vconcat (make-vector g 0) (vector w) (make-vector (- 127 g) v)) nil 
16 'top)
   (define-fringe-bitmap 'org-modern--block-end
-(vconcat (make-vector (- 127 h) #x80) [#xFF] (make-vector h 0)) nil 
nil 'bottom
+(vconcat (make-vector (- 127 h) v) (vector w) (make-vector h 0)) nil 
16 'bottom
 
 (defun org-modern--symbol (str)
   "Add `org-modern-symbol' face to STR."



[nongnu] elpa/lorem-ipsum 4e87a89986 3/3: Bump version to 0.4

2022-12-14 Thread ELPA Syncer
branch: elpa/lorem-ipsum
commit 4e87a899868e908a7a9e1812831d76c8d072f885
Author: Stefan Kangas 
Commit: Joe Schafer 

Bump version to 0.4
---
 lorem-ipsum.el | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/lorem-ipsum.el b/lorem-ipsum.el
index e4b8b38261..07e3117106 100644
--- a/lorem-ipsum.el
+++ b/lorem-ipsum.el
@@ -4,7 +4,7 @@
 
 ;; Author: Jean-Philippe Theberge (jphi...@sourceforge.net)
 ;; Maintainer: Joe Schafer (j...@jschaf.com)
-;; Version: 0.3
+;; Version: 0.4
 ;; Keywords: tools, language, convenience
 ;; URL: https://github.com/jschaf/emacs-lorem-ipsum
 



[nongnu] elpa/lorem-ipsum 77e15d3635 2/3: Make lorem-ipsum-use-default-bindings non-interactive

2022-12-14 Thread ELPA Syncer
branch: elpa/lorem-ipsum
commit 77e15d3635e55e72c2fd219e1062a669c5a9de3f
Author: Stefan Kangas 
Commit: Joe Schafer 

Make lorem-ipsum-use-default-bindings non-interactive
---
 lorem-ipsum.el | 1 -
 1 file changed, 1 deletion(-)

diff --git a/lorem-ipsum.el b/lorem-ipsum.el
index cebcc396c0..e4b8b38261 100644
--- a/lorem-ipsum.el
+++ b/lorem-ipsum.el
@@ -70,7 +70,6 @@
 ;;;###autoload
 (defun lorem-ipsum-use-default-bindings ()
   "Use the default keybindings of `C-c l [spl]'."
-  (interactive)
   (global-set-key (kbd "C-c l s") 'lorem-ipsum-insert-sentences)
   (global-set-key (kbd "C-c l p") 'lorem-ipsum-insert-paragraphs)
   (global-set-key (kbd "C-c l l") 'lorem-ipsum-insert-list))



[nongnu] elpa/lorem-ipsum 8f40a81180 1/3: Make capitalized Lorem-* commands obsolete

2022-12-14 Thread ELPA Syncer
branch: elpa/lorem-ipsum
commit 8f40a81180a80a306f749d0a5c4f420b55fd99bd
Author: Stefan Kangas 
Commit: Joe Schafer 

Make capitalized Lorem-* commands obsolete
---
 lorem-ipsum.el | 15 ---
 1 file changed, 8 insertions(+), 7 deletions(-)

diff --git a/lorem-ipsum.el b/lorem-ipsum.el
index 1ec7acf3b4..cebcc396c0 100644
--- a/lorem-ipsum.el
+++ b/lorem-ipsum.el
@@ -176,9 +176,6 @@ If NUM is non-nil, insert NUM paragraphs."
  lorem-ipsum-paragraph-separator))
 (lorem-ipsum-insert-paragraphs (- num 1
 
-;;;###autoload
-(defalias 'Lorem-ipsum-insert-paragraphs 'lorem-ipsum-insert-paragraphs)
-
 ;;;###autoload
 (defun lorem-ipsum-insert-sentences (&optional num)
   "Insert lorem ipsum sentences into buffer.
@@ -191,9 +188,6 @@ If NUM is non-nil, insert NUM sentences."
(insert (concat (nth (random (length para)) para) 
lorem-ipsum-sentence-separator)))
   (lorem-ipsum-insert-sentences (- num 1
 
-;;;###autoload
-(defalias 'Lorem-ipsum-insert-sentences 'lorem-ipsum-insert-sentences)
-
 ;;;###autoload
 (defun lorem-ipsum-insert-list (&optional num)
   "Insert lorem ipsum list items into buffer.
@@ -210,7 +204,14 @@ If NUM is non-nil, insert NUM list items."
 (insert lorem-ipsum-list-end)))
 
 ;;;###autoload
-(defalias 'Lorem-ipsum-insert-list 'lorem-ipsum-insert-list)
+(define-obsolete-function-alias 'Lorem-ipsum-insert-paragraphs
+  'lorem-ipsum-insert-paragraphs "29.1")
+;;;###autoload
+(define-obsolete-function-alias 'Lorem-ipsum-insert-sentences
+  'lorem-ipsum-insert-sentences "29.1")
+;;;###autoload
+(define-obsolete-function-alias 'Lorem-ipsum-insert-list
+  'lorem-ipsum-insert-list "29.1")
 
 (provide 'lorem-ipsum)
 



[nongnu] elpa/lorem-ipsum updated (d600122949 -> 4e87a89986)

2022-12-14 Thread ELPA Syncer
elpasync pushed a change to branch elpa/lorem-ipsum.

  from  d600122949 Add NonGNU ELPA badge and installation instructions
   new  8f40a81180 Make capitalized Lorem-* commands obsolete
   new  77e15d3635 Make lorem-ipsum-use-default-bindings non-interactive
   new  4e87a89986 Bump version to 0.4


Summary of changes:
 lorem-ipsum.el | 18 +-
 1 file changed, 9 insertions(+), 9 deletions(-)



[elpa] externals/ampc 9fffb61cf0: * ampc.el: Fix compilation warnings

2022-12-14 Thread Stefan Monnier via
branch: externals/ampc
commit 9fffb61cf060433fce9960d766eb3e641b6046ca
Author: Stefan Monnier 
Commit: Stefan Monnier 

* ampc.el: Fix compilation warnings

Also prefer #' to quote function names and prefer actual closures
to `(lambda ...).  Switch to `pcase` while at it.
---
 ampc.el | 310 
 1 file changed, 155 insertions(+), 155 deletions(-)

diff --git a/ampc.el b/ampc.el
index c1cfdfa281..47e96f189b 100644
--- a/ampc.el
+++ b/ampc.el
@@ -1,6 +1,6 @@
 ;;; ampc.el --- Asynchronous Music Player Controller -*- lexical-binding: t -*-
 
-;; Copyright (C) 2011-2012, 2016 Free Software Foundation, Inc.
+;; Copyright (C) 2011-2022 Free Software Foundation, Inc.
 
 ;; Author: Christopher Schmidt 
 ;; Comment: On Jan 2016, I couldn't get hold of Christopher Schmidt
@@ -625,139 +625,139 @@ modified."
 (defvar ampc-mode-map
   (let ((map (make-sparse-keymap)))
 (suppress-keymap map)
-(define-key map (kbd "k") 'ampc-toggle-play)
-(define-key map (kbd "l") 'ampc-next)
-(define-key map (kbd "j") 'ampc-previous)
-(define-key map (kbd "c") 'ampc-clear)
-(define-key map (kbd "s") 'ampc-shuffle)
-(define-key map (kbd "S") 'ampc-store)
-(define-key map (kbd "O") 'ampc-load)
-(define-key map (kbd "R") 'ampc-rename-playlist)
-(define-key map (kbd "D") 'ampc-delete-playlist)
-(define-key map (kbd "y") 'ampc-increase-volume)
-(define-key map (kbd "M-y") 'ampc-decrease-volume)
-(define-key map (kbd "C-M-y") 'ampc-set-volume)
-(define-key map (kbd "h") 'ampc-increase-crossfade)
-(define-key map (kbd "M-h") 'ampc-decrease-crossfade)
-(define-key map (kbd "C-M-h") 'ampc-set-crossfade)
-(define-key map (kbd "e") 'ampc-toggle-repeat)
-(define-key map (kbd "r") 'ampc-toggle-random)
-(define-key map (kbd "f") 'ampc-toggle-consume)
-(define-key map (kbd "P") 'ampc-goto-current-song)
-(define-key map (kbd "G") 'ampc-mini)
-(define-key map (kbd "q") 'ampc-quit)
-(define-key map (kbd "z") 'ampc-suspend)
-(define-key map (kbd "T") 'ampc-trigger-update)
-(define-key map (kbd "I") 'ampc-tagger)
-(cl-loop for view in ampc-views
- do (when (stringp (car view))
-  (define-key map (cadr view)
-`(lambda ()
-   (interactive)
-   (ampc-change-view ',view)
+(define-key map (kbd "k") #'ampc-toggle-play)
+(define-key map (kbd "l") #'ampc-next)
+(define-key map (kbd "j") #'ampc-previous)
+(define-key map (kbd "c") #'ampc-clear)
+(define-key map (kbd "s") #'ampc-shuffle)
+(define-key map (kbd "S") #'ampc-store)
+(define-key map (kbd "O") #'ampc-load)
+(define-key map (kbd "R") #'ampc-rename-playlist)
+(define-key map (kbd "D") #'ampc-delete-playlist)
+(define-key map (kbd "y") #'ampc-increase-volume)
+(define-key map (kbd "M-y") #'ampc-decrease-volume)
+(define-key map (kbd "C-M-y") #'ampc-set-volume)
+(define-key map (kbd "h") #'ampc-increase-crossfade)
+(define-key map (kbd "M-h") #'ampc-decrease-crossfade)
+(define-key map (kbd "C-M-h") #'ampc-set-crossfade)
+(define-key map (kbd "e") #'ampc-toggle-repeat)
+(define-key map (kbd "r") #'ampc-toggle-random)
+(define-key map (kbd "f") #'ampc-toggle-consume)
+(define-key map (kbd "P") #'ampc-goto-current-song)
+(define-key map (kbd "G") #'ampc-mini)
+(define-key map (kbd "q") #'ampc-quit)
+(define-key map (kbd "z") #'ampc-suspend)
+(define-key map (kbd "T") #'ampc-trigger-update)
+(define-key map (kbd "I") #'ampc-tagger)
+(dolist (view ampc-views)
+  (when (stringp (car view))
+(define-key map (cadr view)
+(lambda ()
+  (interactive)
+  (ampc-change-view view)
 map))
 
 (defvar ampc-item-mode-map
   (let ((map (make-sparse-keymap)))
 (suppress-keymap map)
-(define-key map (kbd "m") 'ampc-mark)
-(define-key map (kbd "u") 'ampc-unmark)
-(define-key map (kbd "U") 'ampc-unmark-all)
-(define-key map (kbd "n") 'ampc-next-line)
-(define-key map (kbd "p") 'ampc-previous-line)
-(define-key map (kbd "") 'ampc-mouse-toggle-mark)
-(define-key map (kbd "") 'ampc-mouse-align-point)
-(define-key map [remap next-line] 'ampc-next-line)
-(define-key map [remap previous-line] 'ampc-previous-line)
-(define-key map [remap tab-to-tab-stop] 'ampc-move-to-tab)
+(define-key map (kbd "m") #'ampc-mark)
+(define-key map (kbd "u") #'ampc-unmark)
+(define-key map (kbd "U") #'ampc-unmark-all)
+(define-key map (kbd "n") #'ampc-next-line)
+(define-key map (kbd "p") #'ampc-previous-line)
+(define-key map (kbd "") #'ampc-mouse-toggle-mark)
+(define-key map (kbd "") #'ampc-mouse-align-point)
+(define-key map [remap next-line] #'ampc-next-line)
+(define-key map [remap previous-line] #'ampc-previous-line)
+(defin

[nongnu] elpa/cider 88ec63efa7 2/4: Replicate commentary from bb to all other cases

2022-12-14 Thread ELPA Syncer
branch: elpa/cider
commit 88ec63efa73b36df7db2b5feba56407ad6ec3286
Author: ikappaki 
Commit: Bozhidar Batsov 

Replicate commentary from bb to all other cases

It also removes the printout of the nrepl err buffer (and
corresponding `unwind-protect` block) from each test
case since this is covered by the sandbox with macro
---
 test/integration/integration-tests.el | 386 +++---
 1 file changed, 222 insertions(+), 164 deletions(-)

diff --git a/test/integration/integration-tests.el 
b/test/integration/integration-tests.el
index 70037cefa1..b4f76022a7 100644
--- a/test/integration/integration-tests.el
+++ b/test/integration/integration-tests.el
@@ -32,17 +32,14 @@
 (require 'integration-test-utils)
 
 (describe "jack in"
-  ;; See "babashka" case for commentary on the base template used by all other
-  ;; tests.
-  ;;
-  ;; It has been observed that some REPLs (Clojure cli, shadow) might take a
-  ;; very long time to bring up/respond/shutdown, and thus sleep duration 
values
-  ;; are set rather high.
+  ;; For each project tool, create a project in a temp directory,
+  ;; jack-in to it, send an eval command to the REPL server specific to the
+  ;; project to ensure it works, and finally exit the REPL.
 
   (it "to babashka"
 (with-cider-test-sandbox
   (with-temp-dir temp-dir
-;; set up a project directory in temp
+;; Create a project in temp dir
 (let* ((project-dir temp-dir)
(bb-edn (expand-file-name "bb.edn" project-dir)))
   (write-region "{}" nil bb-edn)
@@ -51,185 +48,246 @@
 ;; set default directory to temp project
 (setq-local default-directory project-dir)
 
-(unwind-protect
-(let* (;; Get a gv reference so as to poll if the client has
-   ;; connected to the nREPL server.
-   (client-is-connected* 
(cider-itu-nrepl-client-connected-ref-make!))
-
-   ;; jack in and get repl buffer
-   (nrepl-proc (cider-jack-in-clj '()))
-   (nrepl-buf (process-buffer nrepl-proc)))
-
-  ;; wait until the client has successfully connected to the
-  ;; nREPL server.
-  (cider-itu-poll-until (eq (gv-deref client-is-connected*) 
'connected) 5)
-
-  ;; give it some time to setup the clj REPL
-  (cider-itu-poll-until (cider-repls 'clj nil) 5)
-
-  ;; send command to the REPL, and stdout/stderr to
-  ;; corresponding eval- variables.
-  (let ((repl-buffer (cider-current-repl))
-(eval-err '())
-(eval-out '()))
-(expect repl-buffer :not :to-be nil)
-
-;; send command to the REPL
-(cider-interactive-eval
- ;; ask REPL to return a string that uniquely identifies 
it.
- "(print :bb? (some? (System/getProperty 
\"babashka.version\")))"
- (lambda (return)
-   (nrepl-dbind-response
-   return
-   (out err)
- (when err (push err eval-err))
- (when out (push out eval-out )
-
-;; wait for a response to come back.
-(cider-itu-poll-until (or eval-err eval-out) 5)
-
-;; ensure there are no errors and response is as expected.
-(expect eval-err :to-equal '())
-(expect eval-out :to-equal '(":bb? true"))
-
-;; exit the REPL.
-(cider-quit repl-buffer)
-
-;; wait for the REPL to exit
-(cider-itu-poll-until (not (eq (process-status nrepl-proc) 
'run)) 5)
-(expect (member (process-status nrepl-proc) '(exit 
signal)
-
-  ;; useful for debugging on errors
-  (when-let ((nrepl-error-buffer (get-buffer "*nrepl-error*")))
-(with-current-buffer nrepl-error-buffer
-  (message ":*nrepl-error* %S" (substring-no-properties 
(buffer-string)))
+(let* (;; Get a gv reference so as to poll if the client has
+   ;; connected to the nREPL server.
+   (client-is-connected* 
(cider-itu-nrepl-client-connected-ref-make!))
+
+   ;; jack in and get repl buffer
+   (nrepl-proc (cider-jack-in-clj '()))
+   (nrepl-buf (process-buffer nrepl-proc)))
+
+  ;; wait until the client has successfully connected to the
+  ;; nREPL server.
+  (cider-itu-poll-until (eq (gv-deref client-is-connected*) 
'connected) 5)
+
+  ;; give it some time to setup the clj REPL
+  (cider-itu-poll-until (cider-repls 'clj nil

[nongnu] elpa/cider 9acd4d04c5 4/4: [Docs] Touch up the previous commit

2022-12-14 Thread ELPA Syncer
branch: elpa/cider
commit 9acd4d04c5451781a51a7343f90df78ae1ccbd1e
Author: Bozhidar Batsov 
Commit: Bozhidar Batsov 

[Docs] Touch up the previous commit
---
 doc/modules/ROOT/pages/additional_packages.adoc | 10 --
 doc/modules/ROOT/pages/troubleshooting.adoc |  8 +---
 2 files changed, 9 insertions(+), 9 deletions(-)

diff --git a/doc/modules/ROOT/pages/additional_packages.adoc 
b/doc/modules/ROOT/pages/additional_packages.adoc
index c460793f6a..36e9b5e378 100644
--- a/doc/modules/ROOT/pages/additional_packages.adoc
+++ b/doc/modules/ROOT/pages/additional_packages.adoc
@@ -124,13 +124,11 @@ enable `paredit` in the REPL buffer as well:
 
  Unsetting Paredit binding of RET key
 
-In more recent versions of paredit, `RET` is bound to `paredit-RET`. This
-can cause unexpected behaviour in the repl when `paredit-mode` is enabled,
-e.g. it appears to hang after hitting `RET` instead of evaluating the last
-form.
+In recent versions of Paredit (25+), `RET` is bound to `paredit-RET`. This can 
cause unexpected
+behaviour in the repl when `paredit-mode` is enabled, e.g. it appears to hang 
after hitting
+`RET` instead of evaluating the last form.
 
-You can disable the paredit behaviour by adding the following to your
-`init.el`:
+You can disable this Paredit behaviour by adding the following to your 
`init.el`:
 
 [source,lisp]
 
diff --git a/doc/modules/ROOT/pages/troubleshooting.adoc 
b/doc/modules/ROOT/pages/troubleshooting.adoc
index 0f3b812a0d..7c647dc67a 100644
--- a/doc/modules/ROOT/pages/troubleshooting.adoc
+++ b/doc/modules/ROOT/pages/troubleshooting.adoc
@@ -338,13 +338,15 @@ $ guix package -i openjdk:jdk
 
 NOTE: On Windows and macOS the JDK source code is bundled with the JDK.
 
-=== Hitting RET in the repl does not evaluate forms
+=== Pressing `RET` in the REPL does not evaluate forms
 
-In more recent versions of paredit, `RET` is bound to `paredit-RET`. This can 
cause unexpected
+Are you a Paredit user? Have you enabled for the REPL buffers?
+
+In recent versions of Paredit (25+), `RET` is bound to `paredit-RET`. This can 
cause unexpected
 behaviour in the repl when `paredit-mode` is enabled, e.g. it appears to hang 
after hitting
 `RET` instead of evaluating the last form.
 
-You can disable the paredit behaviour by adding the following to your 
`init.el`:
+You can disable this Paredit behaviour by adding the following to your 
`init.el`:
 
 [source,lisp]
 



[nongnu] elpa/cider updated (228d2fe62e -> 9acd4d04c5)

2022-12-14 Thread ELPA Syncer
elpasync pushed a change to branch elpa/cider.

  from  228d2fe62e [GHA] Harden test.yml permissions (#3284)
   new  483f7c7800 Improve integration tests diagnostics on error
   new  88ec63efa7 Replicate commentary from bb to all other cases
   new  0100adccf5 Document updated paredit ret behaviour (#3292)
   new  9acd4d04c5 [Docs] Touch up the previous commit


Summary of changes:
 doc/modules/ROOT/pages/additional_packages.adoc |  13 +
 doc/modules/ROOT/pages/troubleshooting.adoc |  15 +
 test/integration/integration-test-utils.el  |  26 +-
 test/integration/integration-tests.el   | 386 ++--
 4 files changed, 273 insertions(+), 167 deletions(-)



[nongnu] elpa/cider 0100adccf5 3/4: Document updated paredit ret behaviour (#3292)

2022-12-14 Thread ELPA Syncer
branch: elpa/cider
commit 0100adccf5ca2c1f30eef5ce808e498cc50732c1
Author: Ron Toland 
Commit: GitHub 

Document updated paredit ret behaviour (#3292)
---
 doc/modules/ROOT/pages/additional_packages.adoc | 15 +++
 doc/modules/ROOT/pages/troubleshooting.adoc | 13 +
 2 files changed, 28 insertions(+)

diff --git a/doc/modules/ROOT/pages/additional_packages.adoc 
b/doc/modules/ROOT/pages/additional_packages.adoc
index 2fd182cfc3..c460793f6a 100644
--- a/doc/modules/ROOT/pages/additional_packages.adoc
+++ b/doc/modules/ROOT/pages/additional_packages.adoc
@@ -122,6 +122,21 @@ enable `paredit` in the REPL buffer as well:
 (add-hook 'cider-repl-mode-hook #'paredit-mode)
 
 
+ Unsetting Paredit binding of RET key
+
+In more recent versions of paredit, `RET` is bound to `paredit-RET`. This
+can cause unexpected behaviour in the repl when `paredit-mode` is enabled,
+e.g. it appears to hang after hitting `RET` instead of evaluating the last
+form.
+
+You can disable the paredit behaviour by adding the following to your
+`init.el`:
+
+[source,lisp]
+
+(define-key paredit-mode-map (kbd "RET") nil)
+
+
 === Smartparens
 
 https://github.com/Fuco1/smartparens[smartparens] is an excellent alternative
diff --git a/doc/modules/ROOT/pages/troubleshooting.adoc 
b/doc/modules/ROOT/pages/troubleshooting.adoc
index 34419edf24..0f3b812a0d 100644
--- a/doc/modules/ROOT/pages/troubleshooting.adoc
+++ b/doc/modules/ROOT/pages/troubleshooting.adoc
@@ -337,3 +337,16 @@ $ guix package -i openjdk:jdk
 
 
 NOTE: On Windows and macOS the JDK source code is bundled with the JDK.
+
+=== Hitting RET in the repl does not evaluate forms
+
+In more recent versions of paredit, `RET` is bound to `paredit-RET`. This can 
cause unexpected
+behaviour in the repl when `paredit-mode` is enabled, e.g. it appears to hang 
after hitting
+`RET` instead of evaluating the last form.
+
+You can disable the paredit behaviour by adding the following to your 
`init.el`:
+
+[source,lisp]
+
+(define-key paredit-mode-map (kbd "RET") nil)
+



[nongnu] elpa/cider 483f7c7800 1/4: Improve integration tests diagnostics on error

2022-12-14 Thread ELPA Syncer
branch: elpa/cider
commit 483f7c78000b0a25d3a17cc2782ea989f46f7753
Author: ikappaki 
Commit: Bozhidar Batsov 

Improve integration tests diagnostics on error

1. Also poll `eval-err` when expecting a response from the server.
2. Enable nREPL messages logging and dump all buffers contents on error.
---
 test/integration/integration-test-utils.el | 26 +++---
 test/integration/integration-tests.el  | 10 +-
 2 files changed, 28 insertions(+), 8 deletions(-)

diff --git a/test/integration/integration-test-utils.el 
b/test/integration/integration-test-utils.el
index a8cc7b081b..ff61e3656a 100644
--- a/test/integration/integration-test-utils.el
+++ b/test/integration/integration-test-utils.el
@@ -31,17 +31,37 @@
 (require 'cider)
 (require 'cl-lib)
 
+(defun cider-itu-dump-all-buffers-contents ()
+  "Print out the contents of all buffers."
+  (dolist (buff (buffer-list))
+(message "\n:BUFFER %S" (buffer-name  buff))
+(with-current-buffer buff
+  (message "%s\n" (buffer-substring-no-properties (point-min) 
(point-max))
+
 (defmacro with-cider-test-sandbox (&rest body)
   "Run BODY inside sandbox, with key cider global vars restored on exit.
+On error, it prints out all buffer contents including the nREPL messages
+buffer.
 
 Only the following variables are currently restored, please add more as the
 test coverage increases:
 
 `cider-connected-hook`."
   (declare (indent 0))
-  ;; for dynamic vars, just use a binding under the same name.
-  `(let ((cider-connected-hook cider-connected-hook))
- ,@body))
+  `(let (;; for dynamic vars, just use a binding under the same name, so that
+ ;; the global value is not modified.
+ (cider-connected-hook cider-connected-hook)
+
+ ;; Helpful for post morterm investigations.
+ (nrepl-log-messages t))
+ (condition-case err
+ (progn
+   ,@body)
+   (error
+(message ":DUMPING-BUFFERS-CONTENTS-ON-ERROR---")
+(cider-itu-dump-all-buffers-contents)
+;; rethrow error
+(signal (car err) (cdr err))
 
 ;; https://emacs.stackexchange.com/a/55031
 (defmacro with-temp-dir (temp-dir &rest body)
diff --git a/test/integration/integration-tests.el 
b/test/integration/integration-tests.el
index 2baa6e77fb..70037cefa1 100644
--- a/test/integration/integration-tests.el
+++ b/test/integration/integration-tests.el
@@ -85,8 +85,8 @@
  (when err (push err eval-err))
  (when out (push out eval-out )
 
-;; wait for the response to come back.
-(cider-itu-poll-until eval-out 5)
+;; wait for a response to come back.
+(cider-itu-poll-until (or eval-err eval-out) 5)
 
 ;; ensure there are no errors and response is as expected.
 (expect eval-err :to-equal '())
@@ -131,7 +131,7 @@
(out err)
  (when err (push err eval-err))
  (when out (push out eval-out )
-(cider-itu-poll-until eval-out 10)
+(cider-itu-poll-until (or eval-err eval-out) 10)
 (expect eval-err :to-equal '())
 (expect eval-out :to-equal '(":clojure? true"))
 (cider-quit repl-buffer)
@@ -169,7 +169,7 @@
(out err)
  (when err (push err eval-err))
  (when out (push out eval-out )
-(cider-itu-poll-until eval-out 10)
+(cider-itu-poll-until (or eval-err eval-out) 10)
 (expect eval-err :to-equal '())
 (expect eval-out :to-equal '(":clojure? true"))
 (cider-quit repl-buffer)
@@ -220,7 +220,7 @@
  (out err)
(when err (push err eval-err))
(when out (push out eval-out )
-  (cider-itu-poll-until eval-out 10)
+  (cider-itu-poll-until (or eval-err eval-out) 10)
   (expect eval-err :to-equal '())
   (expect eval-out :to-equal '(":cljs? true\n"))
   (cider-quit repl-buffer)



[nongnu] elpa/org-contrib d0cebebb30: * lisp/org-contrib.el: Bump version to 0.4.1

2022-12-14 Thread ELPA Syncer
branch: elpa/org-contrib
commit d0cebebb301b5de93e9c5228a91e3e4f5d41902b
Author: Ihor Radchenko 
Commit: Ihor Radchenko 

* lisp/org-contrib.el: Bump version to 0.4.1

This release is a bugfix release aiming to propagate the important
bugfixes to ELPA.

Link: https://orgmode.org/list/m28rjerx1t@purvis.id.au
---
 lisp/org-contrib.el | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/lisp/org-contrib.el b/lisp/org-contrib.el
index fd1398cdee..5eb6bfad15 100644
--- a/lisp/org-contrib.el
+++ b/lisp/org-contrib.el
@@ -5,7 +5,7 @@
 ;; Author: Bastien Guerry 
 ;; Homepage: https://git.sr.ht/~bzg/org-contrib
 ;; Package-Requires: ((emacs "25.1") (org "9.4.6"))
-;; Version: 0.4
+;; Version: 0.4.1
 ;; Keywords: org
 ;; SPDX-License-Identifier: GPL-3.0-or-later