[nongnu] elpa/popup 5420f7fbdc: docs(README): use formal codeblock to hl code

2022-09-28 Thread ELPA Syncer
branch: elpa/popup
commit 5420f7fbdc1df31d3158bcb57d1ed9cf15a4c8ef
Author: Jen-Chieh 
Commit: Jen-Chieh 

docs(README): use formal codeblock to hl code
---
 README.md | 138 +++---
 1 file changed, 87 insertions(+), 51 deletions(-)

diff --git a/README.md b/README.md
index 2422fff6f3..6d6c1522ba 100644
--- a/README.md
+++ b/README.md
@@ -1,3 +1,4 @@
+[![License: GPL 
v3](https://img.shields.io/badge/License-GPL%20v3-blue.svg)](https://www.gnu.org/licenses/gpl-3.0)
 [![melpa badge][melpa-badge]][melpa-link] 
 [![melpa stable badge][melpa-stable-badge]][melpa-stable-link]
 
@@ -13,17 +14,9 @@ popup menus.
 
 ## Screenshots
 
-**Tooltip**
-
-![](https://raw.githubusercontent.com/auto-complete/popup-el/master/etc/images/popup1.png)
-
-**Popup Menu**
-
-![](https://raw.githubusercontent.com/auto-complete/popup-el/master/etc/images/popup2.png)
-
-**Popup Cascade Menu**
-
-![](https://raw.githubusercontent.com/auto-complete/popup-el/master/etc/images/popup3.png)
+| Tooltip  
  | Popup Menu  
   | Popup Cascade Menu 
|
+|:---|:---|:---|
+| 
![](https://raw.githubusercontent.com/auto-complete/popup-el/master/etc/images/popup1.png)
 | 
![](https://raw.githubusercontent.com/auto-complete/popup-el/master/etc/images/popup2.png)
 | 
![](https://raw.githubusercontent.com/auto-complete/popup-el/master/etc/images/popup3.png)
 |
 
 ## Installation
 
@@ -60,15 +53,19 @@ All of properties can be accessed by 
`popup-item-` utility function.
 
 ### Function: `popup-item-propertize`
 
-popup-item-propertize item &rest properties => item
+```
+popup-item-propertize item &rest properties => item
+```
 
 Same as `propertize` except that this avoids overriding existed value
 with `nil` property.
 
 ### Function: `popup-make-item`
 
-popup-make-item name &key value popup-face selection-face sublist
-document symbol summary => item
+```
+popup-make-item name &key value popup-face selection-face sublist
+document symbol summary => item
+```
 
 The utility function of `popup-item-propertize`.
 
@@ -106,9 +103,11 @@ All of these fields can be accessed by `popup-` 
function.
 
 ### Function: `popup-create`
 
-popup-create point width height &key min-height max-width around face
-selection-face scroll-bar margin-left margin-right symbol parent
-parent-offset => popup
+```
+popup-create point width height &key min-height max-width around face
+selection-face scroll-bar margin-left margin-right symbol parent
+parent-offset => popup
+```
 
 Create a popup instance at `POINT` with `WIDTH` and `HEIGHT`.
 
@@ -144,55 +143,73 @@ will be a root instance.
 
 Here is an example:
 
-(setq popup (popup-create (point) 10 10))
-(popup-set-list popup '("Foo" "Bar" "Baz"))
-(popup-draw popup)
-;; do something here
-(popup-delete popup)
+```elisp
+(setq popup (popup-create (point) 10 10))
+(popup-set-list popup '("Foo" "Bar" "Baz"))
+(popup-draw popup)
+;; do something here
+(popup-delete popup)
+```
 
 ### Function: `popup-delete`
 
-popup-delete popup
+```
+popup-delete popup
+```
 
 Delete the `POPUP`.
 
 ### Function: `popup-live-p`
 
-popup-live-p popup => boolean
+```
+popup-live-p popup => boolean
+```
 
 ### Function: `popup-set-list`
 
-popup-set-list popup list
+```
+popup-set-list popup list
+```
 
 Set the contents of the `POPUP`. `LIST` has to be popup items.
 
 ### Function: `popup-draw`
 
-popup-draw popup
+```
+popup-draw popup
+```
 
 Draw the contents of the `POPUP`.
 
 ### Function: `popup-hide`
 
-popup-hide popup
+```
+popup-hide popup
+```
 
 Hide the `POPUP`. To show again, call `popup-draw`.
 
 ### Function: `popup-hidden-p`
 
-popup-hidden-p popup
+```
+popup-hidden-p popup
+```
 
 Return non-nil if the `POPUP` is hidden.
 
 ### Function: `popup-select`
 
+```
 popup-select popup index
+```
 
 Select the item of `INDEX` of the `POPUP`.
 
 ### Function: `popup-selected-item`
 
-popup-selected-item popup => item
+```
+popup-selected-item popup => item
+```
 
 Return the selected item of the `POPUP`.
 
@@ -200,32 +217,42 @@ Return non-nil if the `POPUP` is still alive.
 
 ### Function: `popup-next`
 
-popup-next popup
+```
+popup-next popup
+```
 
 Select the next item of the `POPUP`.
 
 ### Function: `popup-previous`
 
-popup-previous popup
+```
+popup-previous popup
+```
 
 Select the next item of the `POPUP`.
 
 ### Function: `popup-scroll-down`
 
-popup-scroll-down popup n
+```
+popup-scroll-down popup n

[nongnu] elpa/caml a970f30306: Bump version to 4.10-snapshot

2022-09-28 Thread ELPA Syncer
branch: elpa/caml
commit a970f303065fe176a920db0466dacf3e2a20b56b
Author: Christophe Troestler 
Commit: Christophe Troestler 

Bump version to 4.10-snapshot
---
 caml.el | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/caml.el b/caml.el
index 0f5999fd30..62718e8873 100644
--- a/caml.el
+++ b/caml.el
@@ -8,7 +8,7 @@
 ;; Maintainer: Christophe Troestler 
 ;; Created: July 1993
 ;; Package-Requires: ((emacs "24.3"))
-;; Version: 4.9
+;; Version: 4.10-snapshot
 ;; Keywords: OCaml
 ;; Homepage: https://github.com/ocaml/caml-mode
 



[elpa] externals/detached updated (4d63d7d6aa -> 772ac746a9)

2022-09-28 Thread ELPA Syncer
elpasync pushed a change to branch externals/detached.

  from  4d63d7d6aa Make detached list refresh on database updates
   new  2afde4869d Improve display-buffer implementation
   new  772ac746a9 Update keybindings in detached-list


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



[elpa] externals/detached 772ac746a9 2/2: Update keybindings in detached-list

2022-09-28 Thread ELPA Syncer
branch: externals/detached
commit 772ac746a9e8350f24ff548301ef13986e5b21d9
Author: Niklas Eklund 
Commit: Niklas Eklund 

Update keybindings in detached-list
---
 detached-list.el | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/detached-list.el b/detached-list.el
index a0019b0b0a..050b75e161 100644
--- a/detached-list.el
+++ b/detached-list.el
@@ -616,7 +616,7 @@ If prefix-argument is provided unmark instead of mark."
 (define-key map (kbd "d") #'detached-list-delete-session)
 (define-key map (kbd "f") #'detached-list-select-filter)
 (define-key map (kbd "g") #'detached-list-revert)
-(define-key map (kbd "j") #'detached-list-jump-to-directory)
+(define-key map (kbd "j") #'imenu)
 (define-key map (kbd "k") #'detached-list-kill-session)
 (define-key map (kbd "m") #'detached-list-mark-session)
 (define-key map (kbd "n a") #'detached-list-narrow-active)
@@ -631,7 +631,6 @@ If prefix-argument is provided unmark instead of mark."
 (define-key map (kbd "n %") #'detached-list-narrow-regexp)
 (define-key map (kbd "q") #'detached-list-quit)
 (define-key map (kbd "r") #'detached-list-rerun-session)
-(define-key map (kbd "s") #'imenu)
 (define-key map (kbd "t") #'detached-list-toggle-mark-session)
 (define-key map (kbd "T") #'detached-list-toggle-sessions)
 (define-key map (kbd "u") #'detached-list-unmark-session)



[nongnu] elpa/tuareg 9447a6a5b2: Update version to 3.0.1-snapshot

2022-09-28 Thread ELPA Syncer
branch: elpa/tuareg
commit 9447a6a5b24445601f6c6d734410f02f9e408c8e
Author: Christophe Troestler 
Commit: Christophe Troestler 

Update version to 3.0.1-snapshot
---
 tuareg.el | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/tuareg.el b/tuareg.el
index ad65fb3b1e..55b2a1ab76 100644
--- a/tuareg.el
+++ b/tuareg.el
@@ -13,7 +13,7 @@
 ;; Maintainer: Christophe Troestler 
 ;;  Stefan Monnier 
 ;; Created: 8 Jan 1997
-;; Version: 3.0.0
+;; Version: 3.0.1-snapshot
 ;; Package-Requires: ((emacs "26.3") (caml "4.8"))
 ;; Keywords: ocaml languages
 ;; Homepage: https://github.com/ocaml/tuareg



[elpa] main 5efde79389: * elpa-packages (corfu-doc): Remove

2022-09-28 Thread Stefan Monnier via
branch: main
commit 5efde793892a3b2512c68a157526ed58a90d17fb
Author: Stefan Monnier 
Commit: Stefan Monnier 

* elpa-packages (corfu-doc): Remove
---
 elpa-packages | 15 ---
 1 file changed, 12 insertions(+), 3 deletions(-)

diff --git a/elpa-packages b/elpa-packages
index 146d85fa4b..12f6abf95d 100644
--- a/elpa-packages
+++ b/elpa-packages
@@ -80,6 +80,9 @@
   :auto-sync nil)
  ("beacon" :url "https://github.com/Malabarba/beacon";
   :auto-sync t)
+ ;;("bind-key" :url "https://github.com/jwiegley/use-package";
+ ;; :ignored-files ("LICENSE" "doc" "Makefile*" "bind-chords.el" 
"use-package*")
+ ;; :auto-sync t)
  ("blist"  :url "https://gitlab.com/mmemmew/blist";
   :doc "blist.texinfo"
   :readme "README.org"
@@ -167,9 +170,10 @@
   :doc "README.org"
   :renames (("extensions/" ""))
   :auto-sync t)
- ("corfu-doc"  :url "https://github.com/galeo/corfu-doc";
-  :ignored-files ("LICENSE")
-  :auto-sync t)
+ ;; Merged into `corfu' (issue #178) instead of added as a separate package.
+ ;;("corfu-doc":url "https://github.com/galeo/corfu-doc";
+ ;; :ignored-files ("LICENSE")
+ ;; :auto-sync t)
  ("coterm" :url "https://repo.or.cz/emacs-coterm.git";
   :auto-sync t)
  ("counsel":url "https://github.com/abo-abo/swiper";)
@@ -783,6 +787,11 @@
   :readme "README.md")
  ("uniquify-files" :url nil)
  ("url-http-ntlm"  :url nil)
+ ;;("use-package"  :url "https://github.com/jwiegley/use-package";
+ ;; :ignored-files ("LICENSE" "bind-*" "use-package-chords.el")
+ ;; :doc "use-package.texi"
+ ;; :news "NEWS.md"
+ ;; :auto-sync t)
  ("validate"   :url "https://github.com/Malabarba/validate.el";)
  ("valign" :url "https://github.com/casouri/valign";)
  ("vc-backup"  :url "https://git.sr.ht/~pkal/vc-backup";



[elpa] externals/detached 2afde4869d 1/2: Improve display-buffer implementation

2022-09-28 Thread ELPA Syncer
branch: externals/detached
commit 2afde4869d631a1d4d18b92eb0ec5e70ce9b5348
Author: Niklas Eklund 
Commit: Niklas Eklund 

Improve display-buffer implementation

If the user changes the display action to e.g. a popup buffer, that
window wasn't selected with the current implementation. Here we change
to select the window that is returned by display-buffer to make sure
it works in those situations as well.
---
 detached-list.el | 15 ---
 1 file changed, 8 insertions(+), 7 deletions(-)

diff --git a/detached-list.el b/detached-list.el
index 435b9cc696..a0019b0b0a 100644
--- a/detached-list.el
+++ b/detached-list.el
@@ -445,16 +445,17 @@ If prefix-argument is provided unmark instead of mark."
   (interactive)
   (if-let* ((existing-buffer (detached-list--get-list-mode-buffer))
 (window (display-buffer existing-buffer 
detached-list-display-buffer-action)))
-  (with-selected-window window
+  (progn
+(select-window window)
 (detached-list--revert-sessions))
 (let* ((buffer (detached-list--get-buffer))
(window (display-buffer buffer 
detached-list-display-buffer-action)))
-  (with-selected-window window
-(detached-list-mode)
-(setq tabulated-list-entries
-  (seq-map #'detached-list--get-entry
-   (detached-list--get-filtered-sessions)))
-(tabulated-list-print t)
+  (select-window window)
+  (detached-list-mode)
+  (setq tabulated-list-entries
+(seq-map #'detached-list--get-entry
+ (detached-list--get-filtered-sessions)))
+  (tabulated-list-print t
 
 (defun detached-list-narrow-sessions (filters)
   "Narrow session(s) based on FILTERS."



[elpa] externals/denote 468a4840e4: Fix regression in denote-ol-store-link

2022-09-28 Thread ELPA Syncer
branch: externals/denote
commit 468a4840e41804066da206cc350027a543009db3
Author: Marc Fargas 
Commit: Protesilaos Stavrou 

Fix regression in denote-ol-store-link

Introduced by 3f47374.

`org-link-store` functions should return `nil` when not
handling the current buffer but the current code always
returns `org-store-link-plist`.

We simply move a parenthesis so that when the `when-let*` aborts
we return `nil`, which was the previous behaviour.
---
 denote.el | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/denote.el b/denote.el
index 59485c5d52..f96cd770bb 100644
--- a/denote.el
+++ b/denote.el
@@ -2595,8 +2595,8 @@ interface by first selecting the `denote:' hyperlink 
type."
 (org-link-store-props
  :type "denote"
  :description file-title
- :link (concat "denote:" file-id)))
-  org-store-link-plist)
+ :link (concat "denote:" file-id))
+  org-store-link-plist))
 
 (defun denote-link-ol-export (link description format)
   "Export a `denote:' link from Org files.



[elpa] externals/hcel a58ea9ffa8 2/3: initial version of integration with help mode.

2022-09-28 Thread ELPA Syncer
branch: externals/hcel
commit a58ea9ffa8cf563bfd7b30db5f3c6b55cf89f632
Author: Yuchen Pei 
Commit: Yuchen Pei 

initial version of integration with help mode.
---
 hcel-results.el | 118 +++-
 1 file changed, 74 insertions(+), 44 deletions(-)

diff --git a/hcel-results.el b/hcel-results.el
index be8e6cb9cd..d3e2325f1c 100644
--- a/hcel-results.el
+++ b/hcel-results.el
@@ -268,28 +268,40 @@ Start by choosing a package."
 hcel-results-max-page-number))
 (mapc
  (lambda (result)
-   (let* ((location-info (alist-get 'locationInfo result))
-  (doc (hcel-render-html
-(or (alist-get 'doc result)
-(alist-get 'documentation
-   (ignore-errors
- (hcel-definition-site-location-info
-  location-info)))
- (insert "--\n")
- (insert (propertize
-  (format "%s :: %s\n"
-  (alist-get 'demangledOccName result)
-  (hcel-render-id-type (alist-get 'idType result)))
-  'location-info location-info
-  'match-line t))
- (insert (format "Defined in %s %s\n"
- (hcel-format-package-id
-  (alist-get 'packageId location-info) "-")
- (alist-get 'modulePath location-info)))
- (when doc (insert doc
+   (insert "--\n")
+   (insert (hcel-ids-render-result result)))
  (alist-get 'json results))
 (goto-char (point-min
 
+(defun hcel-ids-render-result (result)
+  (let* ((location-info (alist-get 'locationInfo result))
+ (doc (hcel-render-html
+   (or (alist-get 'doc result)
+   (alist-get 'documentation
+  (ignore-errors
+(hcel-definition-site-location-info
+ location-info)))
+;; TODO: remove
+;; (print (with-temp-buffer
+;;  (insert (alist-get 'doc result))
+;;  (libxml-parse-html-region (point-min) (point-max
+(concat
+ (propertize
+  (format "%s :: %s\n"
+  (alist-get 'demangledOccName result)
+  (hcel-render-id-type (alist-get 'idType result)))
+  'location-info location-info
+  'match-line t)
+ (concat "Defined in "
+ (button-buttonize
+  (format "%s %s"
+  (hcel-format-package-id
+   (alist-get 'packageId location-info) "-")
+  (alist-get 'modulePath location-info))
+  (lambda (&rest _) (hcel-load-module-location-info 
location-info)))
+ "\n")
+ (when doc (concat "\n" doc)
+
 (defun hcel-ids-reload ()
   (interactive)
   (hcel-ids-update))
@@ -319,29 +331,35 @@ Start by choosing a package."
 ;; Caching results to prevent to many hits
 (defvar hcel-ids--minibuffer-saved-query nil)
 (defvar hcel-ids--minibuffer-saved-results nil)
+(defvar hcel-ids--minibuffer-selected nil)
 
 (defun hcel-ids--affixation-internal (scope items)
-  (mapcar
-   (lambda (item)
- (let* ((location-info (get-text-property 0 'location-info item))
-   (suffix
-(propertize 
- (format
-  " :: %s"
-  (hcel-render-components (get-text-property 0 'components item)))
- 'face 'completions-annotations))
-   (prefix
-(propertize
- (if (eq scope 'global)
- (format "(%s %s) "
- (alist-get 'moduleName location-info)
- (hcel-format-package-id
-  (alist-get 'packageId location-info) "-"))
- (format "(%s) "
- (alist-get 'moduleName location-info)))
- 'face 'completions-annotations)))
-   (list (car (split-string item " ")) prefix suffix)))
-   items))
+  (let ((results
+ (mapcar
+  (lambda (item)
+(let* ((info (get-text-property 0 'info item))
+   (location-info (alist-get 'locationInfo info))
+   (suffix
+(propertize 
+ (format
+  " :: %s"
+  (hcel-render-components
+   (alist-get 'components (alist-get 'idType info
+ 'face 'completions-annotations))
+   (prefix
+(propertize
+ (if (eq scope 'global)
+ (format "(%s %s) "
+ (alist-get 'moduleName location-info)
+ (hcel-format-package-id
+  (alist-get 'packageId location-info) "-"))
+   (format "(%s) "
+ 

[elpa] externals/hcel e261d10e52 3/3: minor

2022-09-28 Thread ELPA Syncer
branch: externals/hcel
commit e261d10e522ed573bc1210519640de5e7618724c
Author: Yuchen Pei 
Commit: Yuchen Pei 

minor
---
 hcel-outline.el | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/hcel-outline.el b/hcel-outline.el
index ea8f9199cc..aebca59a43 100644
--- a/hcel-outline.el
+++ b/hcel-outline.el
@@ -180,7 +180,7 @@ update in the outline mode too."
'module-path module-path
'position (cdr pair)
'invisible (unless
-  (get-text-property 1 'exported (car pair))
+  (get-text-property 0 'exported (car pair))
 'hcel-unexported
imenu-index))
 



[elpa] externals/hcel aafe7ffcaf 1/3: improving completion in hcel-ids

2022-09-28 Thread ELPA Syncer
branch: externals/hcel
commit aafe7ffcaf1fa391f4f5573ece563d337c7fbb2a
Author: Yuchen Pei 
Commit: Yuchen Pei 

improving completion in hcel-ids
---
 hcel-client.el  |  10 ++
 hcel-results.el | 100 ++--
 2 files changed, 78 insertions(+), 32 deletions(-)

diff --git a/hcel-client.el b/hcel-client.el
index 532fc8878c..1e30167e4f 100644
--- a/hcel-client.el
+++ b/hcel-client.el
@@ -68,6 +68,16 @@
   (name (alist-get 'name approx-location-info)))
 (hcel-api-definition-site package-id component-id module-name entity 
name)))
 
+(defun hcel-definition-site-external-id (external-id)
+  "Call definitionSite using external id."
+  (let* ((splitted (split-string external-id "|"))
+ (package-id (hcel-parse-package-id (car splitted) "-"))
+ (module-name (cadr splitted))
+ (entity (caddr splitted))
+ (name (cadddr splitted)))
+(hcel-api-definition-site
+ package-id "lib" module-name entity name)))
+
 (defun hcel-approx-to-exact-location (approx-location-info)
   "Fetch exact location given approximate location.
 
diff --git a/hcel-results.el b/hcel-results.el
index 3ebee43ad5..be8e6cb9cd 100644
--- a/hcel-results.el
+++ b/hcel-results.el
@@ -320,44 +320,80 @@ Start by choosing a package."
 (defvar hcel-ids--minibuffer-saved-query nil)
 (defvar hcel-ids--minibuffer-saved-results nil)
 
-(defun hcel-ids-minibuffer-collection (scope query &optional package-id)
+(defun hcel-ids--affixation-internal (scope items)
+  (mapcar
+   (lambda (item)
+ (let* ((location-info (get-text-property 0 'location-info item))
+   (suffix
+(propertize 
+ (format
+  " :: %s"
+  (hcel-render-components (get-text-property 0 'components item)))
+ 'face 'completions-annotations))
+   (prefix
+(propertize
+ (if (eq scope 'global)
+ (format "(%s %s) "
+ (alist-get 'moduleName location-info)
+ (hcel-format-package-id
+  (alist-get 'packageId location-info) "-"))
+ (format "(%s) "
+ (alist-get 'moduleName location-info)))
+ 'face 'completions-annotations)))
+   (list (car (split-string item " ")) prefix suffix)))
+   items))
+
+(defun hcel-ids--affixation-function (scope)
+  (lambda (items)
+(hcel-ids--affixation-internal scope items)))
+
+(defun hcel-ids-minibuffer-collection (scope query action &optional package-id)
   (when (and (eq scope 'package) (not package-id))
 (error "No package-id supplied for identifiers call!"))
-  (unless (length= query 0)
-(if (string= hcel-ids--minibuffer-saved-query query)
-hcel-ids--minibuffer-saved-results
-  (setq hcel-ids--minibuffer-saved-query query
-hcel-ids--minibuffer-saved-results
-(mapcar
- (lambda (result)
-   (propertize
-(alist-get 'demangledOccName result)
-'location-info (alist-get 'locationInfo result)))
- (hcel-api-identifiers
-  scope query package-id nil
-  (number-to-string hcel-ids-live-per-page
-  hcel-ids--minibuffer-saved-results)))
-
-(defun hcel-global-ids-minibuffer-collection (query &rest _)
-  (hcel-ids-minibuffer-collection 'global query))
+  (if (eq action 'metadata)
+  (list 'metadata (cons 'affixation-function
+(hcel-ids--affixation-function scope)))
+(unless (length= query 0)
+  (if (string= hcel-ids--minibuffer-saved-query query)
+  hcel-ids--minibuffer-saved-results
+(setq hcel-ids--minibuffer-saved-query query
+  hcel-ids--minibuffer-saved-results
+  (mapcar
+   (lambda (result)
+ (propertize
+  (format "%s %s"
+  (alist-get 'demangledOccName result)
+  (alist-get 'externalId result))
+  'location-info (alist-get 'locationInfo result)
+  'components (alist-get 'components
+ (alist-get 'idType result
+   (hcel-api-identifiers
+scope query package-id nil
+(number-to-string hcel-ids-live-per-page
+hcel-ids--minibuffer-saved-results
+
+(defvar hcel-ids-selected-ids-location-info nil)
+
+(defun hcel-global-ids-minibuffer-collection (query pred action)
+  (hcel-ids-minibuffer-collection 'global query action))
 
 (defun hcel-package-ids-minibuffer-collection (package-id)
-  (lambda (query &rest _)
-(hcel-ids-minibuffer-collection 'package query package-id)))
+  (lambda (query pred action)
+(hcel-ids-minibuffer-collection 'package query action package-id)))
 
 (defun hcel-ids (scope query &optional package-id)
-  (if (length= hcel-ids--minibuffer-saved-results 1)
-  (hcel

[elpa] externals/hcel updated (3cd88744e0 -> e261d10e52)

2022-09-28 Thread ELPA Syncer
elpasync pushed a change to branch externals/hcel.

  from  3cd88744e0 allow toggle display of exported ids in hcel-outline mode
   new  aafe7ffcaf improving completion in hcel-ids
   new  a58ea9ffa8 initial version of integration with help mode.
   new  e261d10e52 minor


Summary of changes:
 hcel-client.el  |  10 
 hcel-outline.el |   2 +-
 hcel-results.el | 170 +++-
 3 files changed, 129 insertions(+), 53 deletions(-)



[elpa] externals/ef-themes 6f807d9daf: ef-dark-theme: increase brightness of bg-region

2022-09-28 Thread ELPA Syncer
branch: externals/ef-themes
commit 6f807d9daff945a4c25b9919759d90fefba34c25
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

ef-dark-theme: increase brightness of bg-region

This brings it closer to how other themes in the collection are.
---
 ef-dark-theme.el | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/ef-dark-theme.el b/ef-dark-theme.el
index 15c85a8a6c..a1b5f93066 100644
--- a/ef-dark-theme.el
+++ b/ef-dark-theme.el
@@ -126,7 +126,7 @@
   (bg-hover  "#004a5f")
   (bg-hover-alt  "#551f5a")
   (bg-hl-line"#002435")
-  (bg-region "#25164a")
+  (bg-region "#2a234a")
   (bg-paren  "#20577a")
   (bg-err"#330d09") ; check with err
   (bg-warning"#332600") ; check with warning



[nongnu] elpa/evil 18908f4ec0: Bring evil-digraphs up to date with vim

2022-09-28 Thread ELPA Syncer
branch: elpa/evil
commit 18908f4ec0e270bb39299eed7bd75cd00eede44c
Author: Tom Dalziel 
Commit: Tom Dalziel <33435574+tomd...@users.noreply.github.com>

Bring evil-digraphs up to date with vim
---
 evil-digraphs.el | 8 
 1 file changed, 8 insertions(+)

diff --git a/evil-digraphs.el b/evil-digraphs.el
index 9baef3d600..7344bd9d00 100644
--- a/evil-digraphs.el
+++ b/evil-digraphs.el
@@ -718,7 +718,9 @@ See also `evil-digraphs-table'."
 ((?V ??) . ?\x1e7c)
 ((?v ??) . ?\x1e7d)
 ((?W ?!) . ?\x1e80)
+((?W ?`) . ?\x1e80)
 ((?w ?!) . ?\x1e81)
+((?w ?`) . ?\x1e81)
 ((?W ?') . ?\x1e82)
 ((?w ?') . ?\x1e83)
 ((?W ?:) . ?\x1e84)
@@ -752,7 +754,9 @@ See also `evil-digraphs-table'."
 ((?U ?2) . ?\x1ee6)
 ((?u ?2) . ?\x1ee7)
 ((?Y ?!) . ?\x1ef2)
+((?Y ?`) . ?\x1ef2)
 ((?y ?!) . ?\x1ef3)
+((?y ?`) . ?\x1ef3)
 ((?Y ?2) . ?\x1ef6)
 ((?y ?2) . ?\x1ef7)
 ((?Y ??) . ?\x1ef8)
@@ -788,7 +792,9 @@ See also `evil-digraphs-table'."
 ((?9 ?\") . ?\x201f)
 ((?/ ?-) . ?\x2020)
 ((?/ ?=) . ?\x2021)
+((?o ?o) . ?\x2022)
 ((?. ?.) . ?\x2025)
+((?, ?.) . ?\x2026)
 ((?% ?0) . ?\x2030)
 ((?1 ?') . ?\x2032)
 ((?2 ?') . ?\x2033)
@@ -835,6 +841,8 @@ See also `evil-digraphs-table'."
 ((?W ?=) . ?\x20a9)
 ((?= ?e) . ?\x20ac)
 ((?E ?u) . ?\x20ac)
+((?= ?R) . ?\x20bd)
+((?= ?P) . ?\x20bd)
 ((?o ?C) . ?\x2103)
 ((?c ?o) . ?\x2105)
 ((?o ?F) . ?\x2109)



[elpa] externals/notmuch-indicator updated (f2e153a22c -> ce2529ec22)

2022-09-28 Thread ELPA Syncer
elpasync pushed a change to branch externals/notmuch-indicator.

  from  f2e153a22c Bump version to rebuild package for commit c25a06f
   new  f5c9b2ee4f Add action to search for the terms with mouse-1
   new  f563869b6a Tweak how the keymap is implemented
   new  16dfbce1fb Add Acknowledgements to the README
   new  ce2529ec22 Document clickable indicator (per f5c9b2e, f563869)


Summary of changes:
 README.md| 12 
 notmuch-indicator.el | 23 +--
 2 files changed, 29 insertions(+), 6 deletions(-)



[elpa] externals/notmuch-indicator f563869b6a 2/4: Tweak how the keymap is implemented

2022-09-28 Thread ELPA Syncer
branch: externals/notmuch-indicator
commit f563869b6a5e5e12fd791bc109232ed45064f7a7
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

Tweak how the keymap is implemented

This continues the work done by Henrik Kjerringvåg in commit f5c9b2e.
Henrik does not require to assign copyright to the Free Software
Foundation for that commit, as it is within the ~15 line threshold.
---
 notmuch-indicator.el | 22 +-
 1 file changed, 13 insertions(+), 9 deletions(-)

diff --git a/notmuch-indicator.el b/notmuch-indicator.el
index 89e93054ee..9b598910e2 100644
--- a/notmuch-indicator.el
+++ b/notmuch-indicator.el
@@ -166,17 +166,21 @@ option `notmuch-indicator-refresh-count'."
(shell-command-to-string
 (format "notmuch count %s" terms
 
+(defvar notmuch-indicator-mode-map
+  (let ((map (make-sparse-keymap)))
+map)
+  "Keymap for the Notmuch indicator.")
+
 (defun notmuch-indicator--format-label (label count face terms)
   "Format LABEL, COUNT, FACE and TERMS of `notmuch-indicator-args'."
-  (let ((map (make-sparse-keymap)))
-(define-key map [mode-line mouse-1]
-(lambda () (interactive) (notmuch-search terms)))
-(propertize
- (if (and face label)
- (format "%s%s " (propertize label 'face face) count)
-   (format "%s%s " (or label "") count))
- 'help-echo "mouse-1: Open notmuch search"
- 'local-map map)))
+  (define-key notmuch-indicator-mode-map [mode-line mouse-1]
+  (lambda () (interactive) (notmuch-search terms)))
+  (propertize
+   (if (and face label)
+   (format "%s%s " (propertize label 'face face) count)
+ (format "%s%s " (or label "") count))
+   'help-echo (format "mouse-1: Open notmuch search for `%s'" terms)
+   'local-map notmuch-indicator-mode-map))
 
 (defun notmuch-indicator--format-output (properties)
   "Format PROPERTIES of `notmuch-indicator-args'."



[elpa] externals/sokoban 3043723a7c: Convert XEmacs style "glyph" to Emacs image-spec.

2022-09-28 Thread Dieter Deyke
branch: externals/sokoban
commit 3043723a7c2557443aa28d871137c8d9c3b46edc
Author: Dieter Deyke 
Commit: Dieter Deyke 

Convert XEmacs style "glyph" to Emacs image-spec.

Patch by Mattias Engdegård 
---
 sokoban.el | 18 +-
 1 file changed, 9 insertions(+), 9 deletions(-)

diff --git a/sokoban.el b/sokoban.el
index 128d59ad98..a2d901fcac 100644
--- a/sokoban.el
+++ b/sokoban.el
@@ -1,10 +1,10 @@
 ;;; sokoban.el --- Implementation of Sokoban for Emacs. -*- lexical-binding: t 
-*-
 
-;; Copyright (C) 1998, 2013, 2017, 2019 Free Software Foundation, Inc.
+;; Copyright (C) 1998, 2013, 2017, 2019, 2022 Free Software Foundation, Inc.
 
 ;; Author: Glynn Clements 
 ;; Maintainer: Dieter Deyke 
-;; Version: 1.4.8
+;; Version: 1.4.9
 ;; Comment: While we set lexical-binding, it currently doesn't make use
 ;;  of closures, which is why it can still work in Emacs-23.1.
 ;; Package-Requires: ((emacs "23.1") (cl-lib "0.5"))
@@ -403,7 +403,7 @@ static char * player_on_target_xpm[] = {
 
 (defvar sokoban-floor-options
   `(((glyph
-  [xpm :data ,sokoban-floor-xpm])
+  ((:type xpm :data ,sokoban-floor-xpm :ascent center)))
  (t ?\040))
 ((color-x color-x)
  (mono-x grid-x)
@@ -413,7 +413,7 @@ static char * player_on_target_xpm[] = {
 
 (defvar sokoban-target-options
   `(((glyph
-  [xpm :data ,sokoban-target-xpm])
+  ((:type xpm :data ,sokoban-target-xpm :ascent center)))
  ((mono-x mono-tty emacs-tty) ?\.)
  (t ?\040))
 ((color-x color-x)
@@ -424,7 +424,7 @@ static char * player_on_target_xpm[] = {
 
 (defvar sokoban-wall-options
   `(((glyph
-  [xpm :data ,sokoban-wall-xpm])
+  ((:type xpm :data ,sokoban-wall-xpm :ascent center)))
  (emacs-tty ?\X)
  (t ?\040))
 ((color-x color-x)
@@ -436,7 +436,7 @@ static char * player_on_target_xpm[] = {
 
 (defvar sokoban-block-options
   `(((glyph
-  [xpm :data ,sokoban-block-xpm])
+  ((:type xpm :data ,sokoban-block-xpm :ascent center)))
  ((mono-x mono-tty emacs-tty) ?\O)
  (t ?\040))
 ((color-x color-x)
@@ -447,7 +447,7 @@ static char * player_on_target_xpm[] = {
 
 (defvar sokoban-block-on-target-options
   `(((glyph
-  [xpm :data ,sokoban-block-on-target-xpm])
+  ((:type xpm :data ,sokoban-block-on-target-xpm :ascent center)))
  ((mono-x mono-tty emacs-tty) ?\O)
  (t ?\040))
 ((color-x color-x)
@@ -458,7 +458,7 @@ static char * player_on_target_xpm[] = {
 
 (defvar sokoban-player-options
   `(((glyph
-  [xpm :data ,sokoban-player-xpm])
+  ((:type xpm :data ,sokoban-player-xpm :ascent center)))
  (t ?\*))
 ((color-x color-x)
  (mono-x grid-x)
@@ -468,7 +468,7 @@ static char * player_on_target_xpm[] = {
 
 (defvar sokoban-player-on-target-options
   `(((glyph
-  [xpm :data ,sokoban-player-on-target-xpm])
+  ((:type xpm :data ,sokoban-player-on-target-xpm :ascent center)))
  (t ?\*))
 ((color-x color-x)
  (mono-x grid-x)



[elpa] externals/notmuch-indicator f5c9b2ee4f 1/4: Add action to search for the terms with mouse-1

2022-09-28 Thread ELPA Syncer
branch: externals/notmuch-indicator
commit f5c9b2ee4f6dab35186f5fb67b58d1c48f32634f
Author: Henrik Kjerringvåg 
Commit: Protesilaos Stavrou 

Add action to search for the terms with mouse-1
---
 notmuch-indicator.el | 19 +--
 1 file changed, 13 insertions(+), 6 deletions(-)

diff --git a/notmuch-indicator.el b/notmuch-indicator.el
index 57a9d8fd6b..89e93054ee 100644
--- a/notmuch-indicator.el
+++ b/notmuch-indicator.el
@@ -166,11 +166,17 @@ option `notmuch-indicator-refresh-count'."
(shell-command-to-string
 (format "notmuch count %s" terms
 
-(defun notmuch-indicator--format-label (label count face)
-  "Format LABEL, COUNT, FACE of `notmuch-indicator-args'."
-  (if (and face label)
-  (format "%s%s " (propertize label 'face face) count)
-(format "%s%s " (or label "") count)))
+(defun notmuch-indicator--format-label (label count face terms)
+  "Format LABEL, COUNT, FACE and TERMS of `notmuch-indicator-args'."
+  (let ((map (make-sparse-keymap)))
+(define-key map [mode-line mouse-1]
+(lambda () (interactive) (notmuch-search terms)))
+(propertize
+ (if (and face label)
+ (format "%s%s " (propertize label 'face face) count)
+   (format "%s%s " (or label "") count))
+ 'help-echo "mouse-1: Open notmuch search"
+ 'local-map map)))
 
 (defun notmuch-indicator--format-output (properties)
   "Format PROPERTIES of `notmuch-indicator-args'."
@@ -181,7 +187,8 @@ option `notmuch-indicator-refresh-count'."
   (notmuch-indicator--format-label
(plist-get properties :label)
count
-   (plist-get properties :face)
+   (plist-get properties :face)
+   (plist-get properties :terms)
 
 (defun notmuch-indicator--return-count ()
   "Parse `notmuch-indicator-args' and format them as single string."



[elpa] externals/notmuch-indicator ce2529ec22 4/4: Document clickable indicator (per f5c9b2e, f563869)

2022-09-28 Thread ELPA Syncer
branch: externals/notmuch-indicator
commit ce2529ec22493fe56a4a5e109158f49895b960f8
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

Document clickable indicator (per f5c9b2e, f563869)
---
 README.md | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/README.md b/README.md
index eca311384f..03b998e3de 100644
--- a/README.md
+++ b/README.md
@@ -54,6 +54,8 @@ For instance, a value like the following defines three 
searches:
 ```
 
 These form a string which realistically is like: `@50 😱1000 💕0`.
+Each component is clickable: it runs `notmuch-search` on the
+applicable `:terms`.
 
 The user option `notmuch-indicator-refresh-count` determines how often
 the indicator will be refreshed.  It accepts a numeric argument which



[elpa] externals/notmuch-indicator 16dfbce1fb 3/4: Add Acknowledgements to the README

2022-09-28 Thread ELPA Syncer
branch: externals/notmuch-indicator
commit 16dfbce1fbc148ae59c3f0d1c39341702e15180f
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

Add Acknowledgements to the README
---
 README.md | 10 ++
 1 file changed, 10 insertions(+)

diff --git a/README.md b/README.md
index 9105159a70..eca311384f 100644
--- a/README.md
+++ b/README.md
@@ -65,3 +65,13 @@ update the indicator after they are invoked.
 
 The user option `notmuch-indicator-hide-empty-counters` hides zero
 counters from the indicator, when it is set to a non-nil value.
+
+## Acknowledgements
+
+The `notmuch-indicator` is meant to be a collective effort.  Every bit
+of help matters.
+
++ Author/maintainer :: Protesilaos Stavrou.
+
++ Contributions to code or user feedback :: Henrik Kjerringvåg, Yusef
+  Aslam.



[elpa] externals/notmuch-indicator 441db301e5 3/4: Refine conditional format of labels

2022-09-28 Thread ELPA Syncer
branch: externals/notmuch-indicator
commit 441db301e5ec1807ba12f7fc48b8a1cee2e6a56d
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

Refine conditional format of labels

Thanks to Stefan Monnier for suggesting this on the emacs-devel
mailing list:
.
---
 notmuch-indicator.el | 8 +---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/notmuch-indicator.el b/notmuch-indicator.el
index ef2ea4e413..d236b743e8 100644
--- a/notmuch-indicator.el
+++ b/notmuch-indicator.el
@@ -172,9 +172,11 @@ option `notmuch-indicator-refresh-count'."
 (define-key map [mode-line mouse-1]
 (lambda () (interactive) (notmuch-search terms)))
 (propertize
- (if (and face label)
- (format "%s%s " (propertize label 'face face) count)
-   (format "%s%s " (or label "") count))
+ (format "%s%s "
+ (if (and face label)
+ (propertize label 'face face)
+   (or label ""))
+ count)
  'help-echo (format "mouse-1: Open notmuch search for `%s'" terms)
  'local-map map)))
 



[elpa] externals/notmuch-indicator updated (ce2529ec22 -> d1129e7c6b)

2022-09-28 Thread ELPA Syncer
elpasync pushed a change to branch externals/notmuch-indicator.

  from  ce2529ec22 Document clickable indicator (per f5c9b2e, f563869)
   new  78d4b24917 Revert commit f563869b6a; use local map as f5c9b2e
   new  a449076378 Call mapconcat with 3 arguments
   new  441db301e5 Refine conditional format of labels
   new  d1129e7c6b Placate the compiler about 'notmuch-search'


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



[elpa] externals/notmuch-indicator d1129e7c6b 4/4: Placate the compiler about 'notmuch-search'

2022-09-28 Thread ELPA Syncer
branch: externals/notmuch-indicator
commit d1129e7c6b205186dd29b94f8dd4a0fb50104901
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

Placate the compiler about 'notmuch-search'
---
 notmuch-indicator.el | 4 
 1 file changed, 4 insertions(+)

diff --git a/notmuch-indicator.el b/notmuch-indicator.el
index d236b743e8..07ada7aec8 100644
--- a/notmuch-indicator.el
+++ b/notmuch-indicator.el
@@ -166,6 +166,10 @@ option `notmuch-indicator-refresh-count'."
(shell-command-to-string
 (format "notmuch count %s" terms
 
+(declare-function
+ notmuch-search "notmuch"
+ (&optional query oldest-first target-thread target-line no-display))
+
 (defun notmuch-indicator--format-label (label count face terms)
   "Format LABEL, COUNT, FACE and TERMS of `notmuch-indicator-args'."
   (let ((map (make-sparse-keymap)))



[elpa] externals/notmuch-indicator 78d4b24917 1/4: Revert commit f563869b6a; use local map as f5c9b2e

2022-09-28 Thread ELPA Syncer
branch: externals/notmuch-indicator
commit 78d4b24917b5b4b1e13d8442b8afa13f30fa
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

Revert commit f563869b6a; use local map as f5c9b2e

I made a mistake.  The original implementation by Henrik was correct.
As Stefan Monnier pointed out on the emacs-devel mailing list, my
design would have the last key override the previous ones:
.
---
 notmuch-indicator.el | 22 +-
 1 file changed, 9 insertions(+), 13 deletions(-)

diff --git a/notmuch-indicator.el b/notmuch-indicator.el
index 9b598910e2..2df590cbcd 100644
--- a/notmuch-indicator.el
+++ b/notmuch-indicator.el
@@ -166,21 +166,17 @@ option `notmuch-indicator-refresh-count'."
(shell-command-to-string
 (format "notmuch count %s" terms
 
-(defvar notmuch-indicator-mode-map
-  (let ((map (make-sparse-keymap)))
-map)
-  "Keymap for the Notmuch indicator.")
-
 (defun notmuch-indicator--format-label (label count face terms)
   "Format LABEL, COUNT, FACE and TERMS of `notmuch-indicator-args'."
-  (define-key notmuch-indicator-mode-map [mode-line mouse-1]
-  (lambda () (interactive) (notmuch-search terms)))
-  (propertize
-   (if (and face label)
-   (format "%s%s " (propertize label 'face face) count)
- (format "%s%s " (or label "") count))
-   'help-echo (format "mouse-1: Open notmuch search for `%s'" terms)
-   'local-map notmuch-indicator-mode-map))
+  (let ((map (make-sparse-keymap)))
+(define-key map [mode-line mouse-1]
+(lambda () (interactive) (notmuch-search terms)))
+(propertize
+ (if (and face label)
+ (format "%s%s " (propertize label 'face face) count)
+   (format "%s%s " (or label "") count))
+ 'help-echo (format "mouse-1: Open notmuch search for `%s'" terms)
+ 'local-map map)))
 
 (defun notmuch-indicator--format-output (properties)
   "Format PROPERTIES of `notmuch-indicator-args'."



[elpa] externals/notmuch-indicator a449076378 2/4: Call mapconcat with 3 arguments

2022-09-28 Thread ELPA Syncer
branch: externals/notmuch-indicator
commit a44907637802e9ee235b54fd58302506708e7a9f
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

Call mapconcat with 3 arguments

Thanks to Stefan Monnier for pointing out that Emacs 27 requires all
three arguments.  What I had before requires Emacs 29.  This
information was provided on the emacs-devel mailing list:
.

The case of mapconcat is the sort of inconsistency that is hard to
detect.  The docstring of the function does not explain as much and
the compiler does not warn about it either.
---
 notmuch-indicator.el | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/notmuch-indicator.el b/notmuch-indicator.el
index 2df590cbcd..ef2ea4e413 100644
--- a/notmuch-indicator.el
+++ b/notmuch-indicator.el
@@ -195,7 +195,7 @@ option `notmuch-indicator-refresh-count'."
   (mapconcat
(lambda (props)
  (notmuch-indicator--format-output props))
-   notmuch-indicator-args))
+   notmuch-indicator-args ""))
 
 (defvar notmuch-indicator-string ""
   "String showing the `notmuch-indicator' state.



[nongnu] elpa/evil a8adc879ad: Fix Ex completion of empty string

2022-09-28 Thread ELPA Syncer
branch: elpa/evil
commit a8adc879addb71ef25741c70d4e6e1273b9f7620
Author: Axel Forsman 
Commit: Tom Dalziel <33435574+tomd...@users.noreply.github.com>

Fix Ex completion of empty string

An empty string will not parse as an Ex command, meaning evil-ex-cmd
would be nil even after evil-ex-update returns. This commit makes sure
evil-ex-command-completion-at-point handles this.

Also remove the unnecessary nil-check in evil-ex-binding.
---
 evil-ex.el | 48 +++-
 1 file changed, 23 insertions(+), 25 deletions(-)

diff --git a/evil-ex.el b/evil-ex.el
index a445e710c9..89b4aa63d9 100644
--- a/evil-ex.el
+++ b/evil-ex.el
@@ -284,13 +284,12 @@ in case of incomplete or unknown commands."
   (let* ((prompt (minibuffer-prompt-end))
  (string (or string (buffer-substring prompt (point-max
  arg bang cmd count expr func handler range tree type)
-(cond
- ((and (eq this-command #'self-insert-command)
-   (commandp (setq cmd (lookup-key evil-ex-map string
-  (setq evil-ex-expression `(call-interactively #',cmd))
-  (when (minibufferp)
-(exit-minibuffer)))
- (t
+(if (and (eq this-command #'self-insert-command)
+ (commandp (setq cmd (lookup-key evil-ex-map string
+(progn
+  (setq evil-ex-expression `(call-interactively #',cmd))
+  (when (minibufferp)
+(exit-minibuffer)))
   (setq cmd nil)
   ;; store the buffer position of each character
   ;; as the `ex-index' text property
@@ -346,7 +345,7 @@ in case of incomplete or unknown commands."
   (let ((n (length (all-completions cmd (evil-ex-completion-table)
 (cond
  ((> n 1) (evil-ex-echo "Incomplete command"))
- ((= n 0) (evil-ex-echo "Unknown command")))
+ ((= n 0) (evil-ex-echo "Unknown command"))
 (put 'evil-ex-update 'permanent-local-hook t)
 
 (defun evil-ex-echo (string &rest args)
@@ -384,8 +383,9 @@ in case of incomplete or unknown commands."
 (remove-text-properties (minibuffer-prompt-end) (point-max) '(face nil 
evil
 
 (defun evil-ex-command-completion-at-point ()
-  (let ((beg (or (get-text-property 0 'ex-index evil-ex-cmd)
- (point)))
+  (let ((beg (if evil-ex-cmd
+ (get-text-property 0 'ex-index evil-ex-cmd)
+   (point)))
 (end (point)))
 (list beg end (evil-ex-completion-table) :exclusive 'no)))
 
@@ -618,21 +618,19 @@ works accordingly."
 
 (defun evil-ex-binding (command &optional noerror)
   "Returns the final binding of COMMAND."
-  (save-match-data
-(let ((binding command))
-  (when binding
-(string-match "^\\(.+?\\)\\!?$" binding)
-(setq binding (match-string 1 binding))
-(while (progn
- (setq binding (cdr (assoc binding evil-ex-commands)))
- (stringp binding)))
-(unless binding
-  (setq binding (intern command)))
-(if (commandp binding)
-;; check for remaps
-(or (command-remapping binding) binding)
-  (unless noerror
-(user-error "Unknown command: `%s'" command)))
+  (let ((binding (save-match-data
+   (string-match "^\\(.+?\\)\\!?$" command)
+   (match-string 1 command
+(while (progn
+ (setq binding (cdr (assoc binding evil-ex-commands)))
+ (stringp binding)))
+(unless binding
+  (setq binding (intern command)))
+(if (commandp binding)
+;; check for remaps
+(or (command-remapping binding) binding)
+  (unless noerror
+(user-error "Unknown command: `%s'" command)
 
 (defun evil-ex-completed-binding (command &optional noerror)
   "Returns the final binding of the completion of COMMAND."



[elpa] externals/async 53addd02fb: Bump to version 1.9.7

2022-09-28 Thread ELPA Syncer
branch: externals/async
commit 53addd02fbad33765f508f8e6254ebd44e1f81e5
Author: Thierry Volpiatto 
Commit: Thierry Volpiatto 

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

diff --git a/async.el b/async.el
index 314c8451df..6f1bb1c32d 100644
--- a/async.el
+++ b/async.el
@@ -6,7 +6,7 @@
 ;; Maintainer: Thierry Volpiatto 
 
 ;; Created: 18 Jun 2012
-;; Version: 1.9.6
+;; Version: 1.9.7
 ;; Package-Requires: ((emacs "24.4"))
 
 ;; Keywords: async



[nongnu] elpa/helm 0a9a1e32cf: Bump to version 3.8.8

2022-09-28 Thread ELPA Syncer
branch: elpa/helm
commit 0a9a1e32cf130d181b26e23919402c8c25f41996
Author: Thierry Volpiatto 
Commit: Thierry Volpiatto 

Bump to version 3.8.8
---
 helm-core.el | 4 ++--
 helm.el  | 4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/helm-core.el b/helm-core.el
index 753c4c6dd1..b230fcf8fe 100644
--- a/helm-core.el
+++ b/helm-core.el
@@ -4,8 +4,8 @@
 
 ;; Author: Thierry Volpiatto 
 ;; URL: https://emacs-helm.github.io/helm/
-;; Version: 3.8.7
-;; Package-Requires: ((emacs "25.1") (async "1.9.4"))
+;; Version: 3.8.8
+;; Package-Requires: ((emacs "25.1") (async "1.9.7"))
 
 ;; 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
diff --git a/helm.el b/helm.el
index 52265608db..29e422fb03 100644
--- a/helm.el
+++ b/helm.el
@@ -11,9 +11,9 @@
 ;; Thierry Volpiatto
 
 ;; Author: Thierry Volpiatto 
-;; Version: 3.8.7
+;; Version: 3.8.8
 ;; URL: https://emacs-helm.github.io/helm/
-;; Package-Requires: ((helm-core "3.8.7") (popup "0.5.3"))
+;; Package-Requires: ((helm-core "3.8.8") (popup "0.5.3"))
 
 ;; 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



[elpa] externals/notmuch-indicator a0286e33d7: Acknowledge Stefan Monnier for contributions

2022-09-28 Thread ELPA Syncer
branch: externals/notmuch-indicator
commit a0286e33d71a59de3d74046cc24082ea622e8a4f
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

Acknowledge Stefan Monnier for contributions

These were done in commits 441db30, a449076, 78d4b24.
---
 README.md | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/README.md b/README.md
index 03b998e3de..6562c9f18a 100644
--- a/README.md
+++ b/README.md
@@ -75,5 +75,5 @@ of help matters.
 
 + Author/maintainer :: Protesilaos Stavrou.
 
-+ Contributions to code or user feedback :: Henrik Kjerringvåg, Yusef
-  Aslam.
++ Contributions to code or user feedback :: Henrik Kjerringvåg, Stefan
+  Monnier, Yusef Aslam.



[nongnu] elpa/helm-core updated (4b318710b4 -> 0a9a1e32cf)

2022-09-28 Thread ELPA Syncer
elpasync pushed a change to branch elpa/helm-core.

  from  4b318710b4 Remove unneeded local buffer keymap binding
  adds  0a9a1e32cf Bump to version 3.8.8

No new revisions were added by this update.

Summary of changes:
 helm-core.el | 4 ++--
 helm.el  | 4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)



[elpa] externals/agitate 93b2674f70 07/67: Add agitate-diff-refine-cycle command

2022-09-28 Thread ELPA Syncer
branch: externals/agitate
commit 93b2674f70820dc0b8d099cc06511bb9347b4bc5
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

Add agitate-diff-refine-cycle command
---
 agitate.el | 34 ++
 1 file changed, 34 insertions(+)

diff --git a/agitate.el b/agitate.el
index 7f36ab93c8..10c5f9148b 100644
--- a/agitate.el
+++ b/agitate.el
@@ -31,6 +31,7 @@
 
 ;;; Code:
 
+(require 'diff)
 (require 'log-edit)
 (require 'log-view)
 (require 'vc-git)
@@ -39,6 +40,39 @@
   "Work-in-progress."
   :group 'vc)
 
+ Commands for diffs
+
+(defvar-local agitate--refine-diff-state nil
+  "Current state of `agitate-diff-refine-cycle'.")
+
+;;;###autoload
+(defun agitate-diff-refine-cycle ()
+  "Cycle current, all, or no refined (word-wise) diff highlighting.
+
+Upon first invocation, refine the diff hunk at point or, when
+none exists, the one closest to it.  On second call, operate on
+the entire buffer.  And on the third time, remove all word-wise
+fontification."
+  (interactive nil diff-mode)
+  (let ((point (point)))
+(pcase agitate--refine-diff-state
+  ('current
+   (setq-local diff-refine 'font-lock)
+   (font-lock-flush)
+   (goto-char point)
+   (setq agitate--refine-diff-state 'all)
+   (message "Diff refine %s" (propertize "all" 'face 'success)))
+  ('all
+   (revert-buffer)
+   (goto-char point)
+   (recenter)
+   (setq agitate--refine-diff-state nil)
+   (message "Diff refine %s" (propertize "none" 'face 'success)))
+  (_
+   (diff-refine-hunk)
+   (setq agitate--refine-diff-state 'current)
+   (message "Diff refine %s" (propertize "current" 'face 'success))
+
  Commands for log-view (listings of commits)
 
 ;;;###autoload



[elpa] externals/agitate d1de59188d 08/67: Set minimum Emacs to 28.1

2022-09-28 Thread ELPA Syncer
branch: externals/agitate
commit d1de59188d36586cf3591a9009ee18fb40b7e119
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

Set minimum Emacs to 28.1

I might even push it down to Emacs 27.1.  We will see.
---
 agitate.el | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/agitate.el b/agitate.el
index 10c5f9148b..76addb24fa 100644
--- a/agitate.el
+++ b/agitate.el
@@ -7,7 +7,7 @@
 ;; URL: https://git.sr.ht/~protesilaos/NOT-YET-AVAILABLE
 ;; Mailing-List: https://lists.sr.ht/~protesilaos/NOT-YET-AVAILABLE
 ;; Version: 0.0.0
-;; Package-Requires: ((emacs "29.1"))
+;; Package-Requires: ((emacs "28.1"))
 ;; Keywords: convenience, version control, git
 
 ;; This file is NOT part of GNU Emacs.



[elpa] externals/agitate 95e6f9186e 09/67: Update one-line description

2022-09-28 Thread ELPA Syncer
branch: externals/agitate
commit 95e6f9186e7cf6ec56ff557c5ebc810e022b6afd
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

Update one-line description
---
 agitate.el | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/agitate.el b/agitate.el
index 76addb24fa..c69f057679 100644
--- a/agitate.el
+++ b/agitate.el
@@ -1,4 +1,4 @@
-;;; agitate.el --- WORK-IN-PROGRESS -*- lexical-binding: t -*-
+;;; agitate.el --- Extras for diff-mode, vc-git, log-edit, log-view -*- 
lexical-binding: t -*-
 
 ;; Copyright (C) 2022  Free Software Foundation, Inc.
 
@@ -37,7 +37,8 @@
 (require 'vc-git)
 
 (defgroup agitate ()
-  "Work-in-progress."
+  "Extras for `diff-mode', vc-git, `log-edit-mode', `log-view-mode'."
+  :group 'diff
   :group 'vc)
 
  Commands for diffs



[elpa] externals/agitate 764644c218 15/67: Use 'length>' again since b6e5cdb requires Emacs 28.1

2022-09-28 Thread ELPA Syncer
branch: externals/agitate
commit 764644c218382e028e6ea7889b323b726f4ac71f
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

Use 'length>' again since b6e5cdb requires Emacs 28.1
---
 agitate.el | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/agitate.el b/agitate.el
index 2b28c8d377..c6e3e0bfc0 100644
--- a/agitate.el
+++ b/agitate.el
@@ -130,7 +130,7 @@ to the text at point."
 (defun agitate--log-edit-extract-file (with-file-extension)
   "Return file from `log-edit-files' without or WITH-FILE-EXTENSION."
   (when-let* ((files (log-edit-files))
-  (file (if (> (length files) 1)
+  (file (if (length> files 1)
 (completing-read "Derive shortname from: " files nil t)
 (car files)))
   (name (file-name-nondirectory file)))
@@ -155,7 +155,7 @@ file extension.  Else omit it."
 (defun agitate--vc-git-prompt-remote ()
   "Helper prompt for `agitate-git-push'."
   (when-let ((remotes (process-lines vc-git-program "remote")))
-(if (> (length remotes) 1)
+(if (length> remotes 1)
 (completing-read "Select Git remote: " remotes nil t)
   (car remotes
 



[elpa] externals/agitate 60dea993b9 25/67: Add COPYING GNU General Public License

2022-09-28 Thread ELPA Syncer
branch: externals/agitate
commit 60dea993b9dbb01aa381355a56e9d90fc6032dea
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

Add COPYING GNU General Public License
---
 COPYING | 674 
 1 file changed, 674 insertions(+)

diff --git a/COPYING b/COPYING
new file mode 100644
index 00..89d9142746
--- /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
+

[elpa] externals/agitate 2b8a593a5d 38/67: Add missing backronym from README.md

2022-09-28 Thread ELPA Syncer
branch: externals/agitate
commit 2b8a593a5dcbef5d210825da9affd4db64b76b15
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

Add missing backronym from README.md
---
 README.md | 1 +
 1 file changed, 1 insertion(+)

diff --git a/README.md b/README.md
index 4e2ac7c336..f1dc456c12 100644
--- a/README.md
+++ b/README.md
@@ -14,3 +14,4 @@ Control framework and its accoutrements (`diff-mode.el`,
 + GitHub: 
 + GitLab: 
 + Mailing list: 
++ Backronym: Another Git Interface Trying to Agitate Tranquil Emacsers



[elpa] externals/agitate 1df9714eb6 49/67: Accept optional long agitate--vc-git-commit-prompt

2022-09-28 Thread ELPA Syncer
branch: externals/agitate
commit 1df9714eb6bf23c04e4ced1ac547c349c7d64694
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

Accept optional long agitate--vc-git-commit-prompt
---
 agitate.el | 9 +
 1 file changed, 5 insertions(+), 4 deletions(-)

diff --git a/agitate.el b/agitate.el
index d0cd4edc15..0a6d48e0be 100644
--- a/agitate.el
+++ b/agitate.el
@@ -236,18 +236,19 @@ to the text at point."
   (when (string-match "\\b\\([0-9a-z]+\\) " string)
 (match-string 1 string)))
 
-(defun agitate--vc-git-commit-prompt (&optional file)
+(defun agitate--vc-git-commit-prompt (&optional file long)
   "Prompt for Git commit and return it as a string.
 With optional FILE, limit the commits to those pertinent to it."
-  (let ((default-directory (vc-root-dir)))
+  (let ((default-directory (vc-root-dir))
+(format (if long "--pretty=oneline" "--oneline")))
 (if file
 (completing-read
  (format "Select revision of `%s': " file)
- (process-lines vc-git-program "log" "--oneline" file)
+ (process-lines vc-git-program "log" format file)
  nil t)
   (completing-read
"Select revision: "
-   (process-lines vc-git-program "log" "--oneline" "--")
+   (process-lines vc-git-program "log" format "--")
nil t
 
 (defvar agitate-vc-git-show-buffer "*agitate-vc-git-show*"



[elpa] externals/agitate de2094a2f5 53/67: Placate the compiler

2022-09-28 Thread ELPA Syncer
branch: externals/agitate
commit de2094a2f563c9fe80ff625018576fedbda2a3d5
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

Placate the compiler
---
 agitate.el | 6 --
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/agitate.el b/agitate.el
index cdc903371e..12c48c3cb5 100644
--- a/agitate.el
+++ b/agitate.el
@@ -38,6 +38,7 @@
 (require 'diff)
 (require 'log-edit)
 (require 'log-view)
+(require 'vc)
 (require 'vc-git)
 
 (defgroup agitate ()
@@ -232,13 +233,14 @@ to the text at point."
  Commands for vc-git (Git backend for the Version Control framework)
 
 (defun agitate--vc-git-get-hash-from-string (string)
-  "Return commit hash from beginning of STRING"
+  "Return commit hash from beginning of STRING."
   (when (string-match "\\b\\([0-9a-z]+\\) " string)
 (match-string 1 string)))
 
 (defun agitate--vc-git-commit-prompt (&optional file long)
   "Prompt for Git commit and return it as a string.
-With optional FILE, limit the commits to those pertinent to it."
+With optional FILE, limit the commits to those pertinent to it.
+With optional LONG do not abbreviate commit hashes."
   (let ((default-directory (vc-root-dir))
 (format (if long "--pretty=oneline" "--oneline")))
 (if file



[elpa] externals/agitate f9dd3b3f91 41/67: Add agitate-vc-git-kill-commit-message command

2022-09-28 Thread ELPA Syncer
branch: externals/agitate
commit f9dd3b3f91ccd22754a6bdabcbe6f48195dfa007
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

Add agitate-vc-git-kill-commit-message command
---
 README.org |  7 +++
 agitate.el | 23 +++
 2 files changed, 30 insertions(+)

diff --git a/README.org b/README.org
index e50ee05df1..10fea286d5 100644
--- a/README.org
+++ b/README.org
@@ -165,6 +165,13 @@ think most of those are superfluous.  Less is more.
   Git repository.  Use the original ~vc-git-grep~ for its other
   features.
 
+#+findex: agitate-vc-git-kill-commit-message
++ ~agitate-vc-git-kill-commit-message~ :: Append to ~kill-ring~
+  message of commit with =HASH= identifier.  Prompt for =HASH= as a
+  string.  When point is in a log-view buffer, make the revision at
+  point the default value of the prompt.  This is useful to quote a
+  past commit message.
+
 #+findex: agitate-vc-git-push-prompt-for-remote
 + ~agitate-vc-git-push-prompt-for-remote~ :: Behave like ~vc-git-push~
   but prompt for a remote, if needed.  The meaning of =PROMPT= is the
diff --git a/agitate.el b/agitate.el
index 6d3e112aea..ac15422f9d 100644
--- a/agitate.el
+++ b/agitate.el
@@ -277,6 +277,29 @@ features."
 (completing-read "Select Git remote: " remotes nil t)
   (car remotes
 
+(defvar agitate--vc-git-kill-commit-message-history nil
+  "Minibuffer history of `agitate-vc-git-kill-commit-message'.")
+
+(defun agitate--vc-git-kill-commit-message-prompt ()
+  "Helper prompt for `agitate-vc-git-kill-commit-message'."
+  (if-let ((default-value (cadr (log-view-current-entry (point) t
+  (read-string (format "Commit HASH [%s]: " default-value)
+   nil 'agitate--vc-git-kill-commit-message-history 
default-value)
+(read-string "Commit HASH: " nil 
'agitate--vc-git-kill-commit-message-history)))
+
+;;;###autoload
+(defun agitate-vc-git-kill-commit-message (hash)
+  "Append to `kill-ring' message of commit with HASH identifier.
+Prompt for HASH as a string.  When point is in a log-view buffer,
+make the revision at point the default value of the prompt.
+
+This is useful to quote a past commit message."
+  (interactive (list (agitate--vc-git-kill-commit-message-prompt)))
+  (kill-new
+   (with-temp-buffer
+ (apply 'vc-git-command t nil nil (list "log" hash "-1" "--stat" 
"--no-color" "--"))
+ (buffer-substring-no-properties (point-min) (point-max)
+
 ;; TODO 2022-09-27: We can have something similar which prompts for a
 ;; branch to push to.  There are lots of possibilities.  The idea is
 ;; that the user can pick the function they are most likely to use as



[elpa] externals/agitate a2173cf82c 39/67: Implement conventional commits; refine emoji commits

2022-09-28 Thread ELPA Syncer
branch: externals/agitate
commit a2173cf82c90a6d0c2307dfb7396efd4374a4253
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

Implement conventional commits; refine emoji commits

Those commands should be interactive-only.  It makes no sense to use
the function if all you need to add something like "feat".
---
 README.org | 16 +---
 agitate.el | 45 -
 2 files changed, 41 insertions(+), 20 deletions(-)

diff --git a/README.org b/README.org
index af8bd78d8e..95bc993a2f 100644
--- a/README.org
+++ b/README.org
@@ -124,13 +124,15 @@ The following sections document the extras per their 
scope.
   Unicode.  Relevant applications will render those as their
   corresponding graphical emoji.
 
-Relevant quote about the emoji commits from the source code:
-
-#+begin_src emacs-lisp
-;; TODO 2022-09-27: Learn about "conventional commits" and implement
-;; them like with `agitate-log-edit-emoji-commit':
-;; .
-#+end_src
+#+findex: agitate-log-edit-conventional-commit
++ ~agitate-log-edit-conventional-commit~ :: Insert conventional commit
+  message at point.  Prompt for entry among those declared in
+  ~agitate-log-edit-conventional-commits-collection~.
+
+#+vindex: agitate-log-edit-conventional-commits-collection
++ ~agitate-log-edit-conventional-commits-collection~ :: User options
+  whose value is a list of strings that represent completion
+  candidates for ~agitate-log-edit-conventional-commit~.
 
 The emoji commits are inspired by , though I
 think most of those are superfluous.  Less is more.
diff --git a/agitate.el b/agitate.el
index 6ba875c97a..6d3e112aea 100644
--- a/agitate.el
+++ b/agitate.el
@@ -62,9 +62,12 @@ will render those as their corresponding graphical emoji."
   :type '(repeat string)
   :group 'agitate)
 
-;; TODO 2022-09-27: Learn about "conventional commits" and implement
-;; them like with `agitate-log-edit-emoji-commit':
-;; .
+(defcustom agitate-log-edit-conventional-commits-collection
+  '("build" "chore" "ci" "docs" "feat" "fix" "perf" "polish"
+"refactor" "revert" "style" "test" "types" "workflow")
+  "Completion candidates for `agitate-log-edit-conventional-commit'."
+  :type '(repeat string)
+  :group 'agitate)
 
  Commands for diff-mode
 
@@ -207,17 +210,33 @@ file extension.  Else omit it."
   "Minibuffer history of `agitate-log-edit-emoji-commit'.")
 
 ;;;###autoload
-(defun agitate-log-edit-emoji-commit (emoji-commit)
-  "Insert EMOJI-COMMIT message at point.
-When called interactively, prompt for EMOJI-COMMIT among the
-`agitate-log-edit-emoji-collection'."
-  (interactive
-   (list
+(defun agitate-log-edit-emoji-commit ()
+  "Insert emoji commit message at point.
+Prompt for entry among `agitate-log-edit-emoji-collection'."
+  (declare (interactive-only t))
+  (interactive)
+  (insert
+   (completing-read
+"Select type of commit+emoji: "
+agitate-log-edit-emoji-collection nil t nil
+'agitate--log-edit-emoji-commit-history)))
+
+(defvar agitate--log-edit-conventional-commits-history nil
+  "Minibuffer history of `agitate-log-edit-conventional-commit'.")
+
+(defun agitate-log-edit-conventional-commit ()
+  "Insert conventional commit message at point.
+Prompt for entry among those declared in
+`agitate-log-edit-conventional-commits-collection'."
+  (declare (interactive-only t))
+  (interactive)
+  (insert
+   (concat
 (completing-read
- "Select type of commit+emoji: "
- agitate-log-edit-emoji-collection nil t nil
- 'agitate--log-edit-emoji-commit-history)))
-  (insert emoji-commit))
+ "Select type of conventional commit: "
+ agitate-log-edit-conventional-commits-collection nil t nil
+ 'agitate--log-edit-conventional-commits-history)
+": ")))
 
  Commands for log-view (listings of commits)
 



[elpa] externals/agitate da4a2bb77a 34/67: Update agitate.el headers and Commentary

2022-09-28 Thread ELPA Syncer
branch: externals/agitate
commit da4a2bb77a52b10f5424e844f18532c50965f38b
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

Update agitate.el headers and Commentary
---
 agitate.el | 10 +++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/agitate.el b/agitate.el
index 4905f34155..6ba875c97a 100644
--- a/agitate.el
+++ b/agitate.el
@@ -3,9 +3,9 @@
 ;; Copyright (C) 2022  Free Software Foundation, Inc.
 
 ;; Author: Protesilaos Stavrou 
-;; Maintainer: NOT-YET-AVAILABLE Development 
<~protesilaos/not-yet-availa...@lists.sr.ht>
-;; URL: https://git.sr.ht/~protesilaos/NOT-YET-AVAILABLE
-;; Mailing-List: https://lists.sr.ht/~protesilaos/NOT-YET-AVAILABLE
+;; Maintainer: Agitate Development <~protesilaos/agit...@lists.sr.ht>
+;; URL: https://git.sr.ht/~protesilaos/agitate
+;; Mailing-List: https://lists.sr.ht/~protesilaos/agitate
 ;; Version: 0.0.0
 ;; Package-Requires: ((emacs "28.1"))
 ;; Keywords: convenience, version control, git
@@ -28,6 +28,10 @@
 ;;; Commentary:
 ;;
 ;; Another Git Interface Trying to Agitate Tranquil Emacsers.
+;;
+;; THIS IS A WORK-IN-PROGRESS.  Consult the README.org of this
+;; repository for further documentation.  Or visit its web page:
+;; .
 
 ;;; Code:
 



[elpa] externals/agitate 45eb3b6c5d 54/67: Declare agitate-vc-git-show as interactive-only

2022-09-28 Thread ELPA Syncer
branch: externals/agitate
commit 45eb3b6c5dda8a1f037d9a0d554f0b81702c4d5a
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

Declare agitate-vc-git-show as interactive-only
---
 agitate.el | 1 +
 1 file changed, 1 insertion(+)

diff --git a/agitate.el b/agitate.el
index 12c48c3cb5..d73dda4cfb 100644
--- a/agitate.el
+++ b/agitate.el
@@ -263,6 +263,7 @@ With optional LONG do not abbreviate commit hashes."
 Prompt for commit and run `git-show(1)' on it.
 With optional CURRENT-FILE as prefix argument, limit the commits
 to those pertaining to the current file."
+  (declare (interactive-only t))
   (interactive "P")
   (when-let* ((file (caadr (vc-deduce-fileset))) ; FIXME 2022-09-27: Better 
way to get current file?
   (revision (agitate--vc-git-get-hash-from-string



[elpa] main 15be327b7a: * elpa-packages (agitate): New package

2022-09-28 Thread Stefan Monnier via
branch: main
commit 15be327b7a9befe315903bb2ea19d0282ad678ba
Author: Stefan Monnier 
Commit: Stefan Monnier 

* elpa-packages (agitate): New package
---
 elpa-packages | 75 +++
 1 file changed, 29 insertions(+), 46 deletions(-)

diff --git a/elpa-packages b/elpa-packages
index 12f6abf95d..f69600b256 100644
--- a/elpa-packages
+++ b/elpa-packages
@@ -49,6 +49,10 @@
   :auto-sync t)
  ("aggressive-indent"  :url 
"https://github.com/Malabarba/aggressive-indent-mode";
   :auto-sync t)
+ ("agitate":url "https://git.sr.ht/~protesilaos/agitate";
+  :auto-sync t
+  :doc "README.org"
+  :ignored-files ("COPYING" "doclicense.texi"))
  ("ahungry-theme"  :url "https://github.com/ahungry/color-theme-ahungry";)
  ("aircon-theme":url "https://git.sr.ht/~chambln/aircon-theme.el";
   :ignored-files ("README" "COPYING")
@@ -142,8 +146,7 @@
  ;; ("coffee-mode" :url "https://github.com/defunkt/coffee-mode";)
  ("compact-docstrings"  :url 
"https://github.com/cpitclaudel/compact-docstrings";
   :auto-sync t)
- ("company"
-  :url "https://github.com/company-mode/company-mode.git";
+ ("company":url "https://github.com/company-mode/company-mode.git";
   :shell-command "cp -R doc/images ."
   :doc "doc/company.texi"
   :ignored-files ("doc")
@@ -188,16 +191,14 @@
   :readme "README.org"
   :auto-sync t)
  ("csv-mode"   :url nil)
- ("cursory"
-  :url "https://git.sr.ht/~protesilaos/cursory";
+ ("cursory":url "https://git.sr.ht/~protesilaos/cursory";
   :auto-sync t
   :doc "README.org"
   :news "CHANGELOG.org"
   :ignored-files ("COPYING" "doclicense.texi"))
  ("cycle-quotes"   :url nil)
  ("darkroom":url "https://github.com/capitaomorte/darkroom.git";)
- ("dash"
-  :url "https://github.com/magnars/dash.el.git";
+ ("dash"   :url "https://github.com/magnars/dash.el.git";
   :doc "dash.texi"
   :auto-sync t)
  ("dbus-codegen"   :url "https://github.com/ueno/dbus-codegen-el.git";
@@ -206,8 +207,7 @@
  ("debbugs":url nil :doc ("debbugs.texi" "debbugs-ug.texi"))
  ("delight":url "https://git.savannah.gnu.org/r/delight.git";
   :auto-sync t)
- ("denote"
-  :url "https://git.sr.ht/~protesilaos/denote";
+ ("denote" :url "https://git.sr.ht/~protesilaos/denote";
   :auto-sync t
   :doc "README.org"
   :news "CHANGELOG.org"
@@ -219,8 +219,7 @@
  ("devdocs":url "https://github.com/astoff/devdocs.el";
   :auto-sync t)
  ("dict-tree"  :url "http://www.dr-qubit.org/git/predictive.git";)
- ("diff-hl"
-  :url "https://github.com/dgutov/diff-hl.git";
+ ("diff-hl":url "https://github.com/dgutov/diff-hl.git";
   :auto-sync t)
  ("diffview":url "https://github.com/mgalgs/diffview-mode.git";)
  ("diminish":url "https://github.com/myrjola/diminish.el.git";
@@ -232,6 +231,9 @@
   :auto-sync t)
  ("dismal" :url nil)
  ("djvu"   :url nil)
+ ("doc-toc":url "https://github.com/dalanicolai/doc-tools-toc";
+  :ignore-files ("LICENSE")
+  :auto-sync t)
  ("docbook":url nil)
  ;; `dtache' was renamed to `detached' in May 2022.
  ;;("dtache"   :url "https://git.sr.ht/~niklaseklund/dtache";
@@ -250,8 +252,7 @@
  ("ediprolog"  :url nil)
  ("eev":url "https://github.com/edrx/eev.git";
   :branch "UTF-8" :auto-sync t)
- ("ef-themes"
-  :url "https://git.sr.ht/~protesilaos/ef-themes";
+ ("ef-themes"  :url "https://git.sr.ht/~protesilaos/ef-themes";
   :auto-sync t
   :doc "README.org"
   :readme "README.md"
@@ -273,16 +274,14 @@
  ;; :doc "info/emacspeak.texi"
  ;; :lisp-dir "lisp"
  ;; :auto-sync t)
- ("embark"
-  :url "https://github.com/oantolin/embark";
+ ("embark" :url "https://github.com/oantolin/embark";
   :doc "embark.texi"
   :ignored-files ("embark-consult.el" "avy-embark-collect.el")
   :auto-sync t)
- ("embark-consult"
-  :url "https://github.com/oantolin/embark";
+ ("embark-consult" :url "https://github.com/oantolin/embark";
   :ignored-files ("embark.el" "embark.texi" "avy-embark-collect.el")
   :auto-sync t)
- ("ement":url "https://github.com/alphapapa/ement.el.git";
+ ("ement"  :url "https://github.com/alphapapa/ement.el.git";
   :doc "README.org"
   :auto-sync t)
  ("emms"   :url "https://git.savannah.gnu.org/git/emms.git";
@@ -353,8 +352,7 @@
  ("flymake":core "lisp/progmodes/flymake.el")
  ("flymake-proselint"  :url 
"https://git.sr.ht/~manuel-uberti/flymake-proselint";
   :auto-sync t)
- ("fontaine"
-  :url "https://git.sr.ht/~protesilaos/fontaine";
+ ("fontaine"   :url "https://git.sr.ht/~protesilaos/fontaine";
   :auto-sync t
   :doc "README.org"
   :news "CHANGELOG.org"
@@ -419,20 +417,17 @@
  ("isearch-mb" :url "https://github.com/astoff/isearch-mb";
   :auto-sync t)
  ("iterators"  :url nil)
- ("ivy"
-  :url "ht

[elpa] externals/agitate 417539dc73 03/67: Add agitate-log-edit-insert-file-name command

2022-09-28 Thread ELPA Syncer
branch: externals/agitate
commit 417539dc73ad7b0aa848826ce276dd21692858df
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

Add agitate-log-edit-insert-file-name command
---
 agitate.el | 27 +++
 1 file changed, 27 insertions(+)

diff --git a/agitate.el b/agitate.el
index 35877a9102..bb68c6cbf9 100644
--- a/agitate.el
+++ b/agitate.el
@@ -31,9 +31,36 @@
 
 ;;; Code:
 
+(require 'log-edit)
+
 (defgroup agitate ()
   "Work-in-progress."
   :group 'vc)
 
+ Commands for log-edit (commit messages)
+
+(defun agitate--log-edit-extract-file (with-file-extension)
+  "Return file from `log-edit-files' without or WITH-FILE-EXTENSION."
+  (when-let* ((files (log-edit-files))
+  (file (if (length> files 1)
+(completing-read "Derive shortname from: " files nil t)
+(car files)))
+  (name (file-name-nondirectory file)))
+(if with-file-extension
+file
+  (file-name-sans-extension file
+
+;;;###autoload
+(defun agitate-log-edit-insert-file-name (&optional with-file-extension)
+  "Insert at point file name sans directory from `log-edit-files'.
+
+If multiple files are involved, prompt with completion for one
+among them.
+
+With optional prefix argument WITH-FILE-EXTENSION, include the
+file extension.  Else omit it."
+  (interactive "P" log-edit-mode)
+  (insert (format "%s: " (agitate--log-edit-extract-file 
with-file-extension
+
 (provide 'agitate)
 ;;; agitate.el ends here



[elpa] externals/agitate 0ee85a971b 11/67: Add agitate-diff-buffer-or-file command

2022-09-28 Thread ELPA Syncer
branch: externals/agitate
commit 0ee85a971bf358d1fa0bf66864a04a037022f078
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

Add agitate-diff-buffer-or-file command
---
 agitate.el | 15 +++
 1 file changed, 15 insertions(+)

diff --git a/agitate.el b/agitate.el
index 808a96ff55..8f83c663e9 100644
--- a/agitate.el
+++ b/agitate.el
@@ -74,6 +74,21 @@ fontification."
(setq agitate--refine-diff-state 'current)
(message "Diff refine %s" (propertize "current" 'face 'success))
 
+;;;###autoload
+(defun agitate-diff-buffer-or-file ()
+  "Produce a diff against the file or latest revision.
+
+If the buffer is modified, produce a diff that compares its state
+to that of the corresponding file.  In simple terms, show the
+latest unsaved changes.
+
+If the buffer is not modified, produce a diff of the file
+relative to its latest revision."
+  (interactive)
+(if (buffer-modified-p)
+  (diff-buffer-with-file (current-buffer))
+  (vc-diff)))
+
  Commands for log-view (listings of commits)
 
 ;;;###autoload



[elpa] externals/agitate d6aaced969 10/67: Actually depend on Emacs 27.1

2022-09-28 Thread ELPA Syncer
branch: externals/agitate
commit d6aaced96910141687e34ce590655d9d33c68f7a
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

Actually depend on Emacs 27.1
---
 agitate.el | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/agitate.el b/agitate.el
index c69f057679..808a96ff55 100644
--- a/agitate.el
+++ b/agitate.el
@@ -7,7 +7,7 @@
 ;; URL: https://git.sr.ht/~protesilaos/NOT-YET-AVAILABLE
 ;; Mailing-List: https://lists.sr.ht/~protesilaos/NOT-YET-AVAILABLE
 ;; Version: 0.0.0
-;; Package-Requires: ((emacs "28.1"))
+;; Package-Requires: ((emacs "27.1"))
 ;; Keywords: convenience, version control, git
 
 ;; This file is NOT part of GNU Emacs.
@@ -99,7 +99,7 @@ to the text at point."
 (defun agitate--log-edit-extract-file (with-file-extension)
   "Return file from `log-edit-files' without or WITH-FILE-EXTENSION."
   (when-let* ((files (log-edit-files))
-  (file (if (length> files 1)
+  (file (if (> (length files) 1)
 (completing-read "Derive shortname from: " files nil t)
 (car files)))
   (name (file-name-nondirectory file)))
@@ -124,7 +124,7 @@ file extension.  Else omit it."
 (defun agitate--vc-git-prompt-remote ()
   "Helper prompt for `agitate-git-push'."
   (when-let ((remotes (process-lines vc-git-program "remote")))
-(if (length> remotes 1)
+(if (> (length remotes) 1)
 (completing-read "Select Git remote: " remotes nil t)
   (car remotes
 



[elpa] externals/agitate 43027aefb9 16/67: Add agitate-diff-narrow-dwim command

2022-09-28 Thread ELPA Syncer
branch: externals/agitate
commit 43027aefb986626ffc4f8aa090c1e05233bbfd38
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

Add agitate-diff-narrow-dwim command
---
 agitate.el | 19 +++
 1 file changed, 19 insertions(+)

diff --git a/agitate.el b/agitate.el
index c6e3e0bfc0..e1707bf40c 100644
--- a/agitate.el
+++ b/agitate.el
@@ -90,6 +90,25 @@ relative to its latest revision."
   (diff-buffer-with-file (current-buffer))
   (vc-diff)))
 
+;;;###autoload
+(defun agitate-diff-narrow-dwim (&optional narrow-file)
+  "Narrow to diff hunk or file and widen when already narrowed.
+By default narrow to the focused diff hunk.  With optional
+NARROW-FILE as a prefix argument, operate on the current file
+instead."
+  (interactive "P")
+  (when (derived-mode-p 'diff-mode)
+(cond
+ ((buffer-narrowed-p)
+  (widen)
+  (message "WIDENED the view"))
+ (narrow-file
+  (diff-restrict-view narrow-file)
+  (message "Narrowed to FILE"))
+ (t
+  (diff-restrict-view)
+  (message "Narrowed to diff HUNK")
+
 (defvar outline-minor-mode-highlight)
 
 ;;;###autoload



[elpa] externals/agitate 4baa368ffd 02/67: Depend on Emacs 29

2022-09-28 Thread ELPA Syncer
branch: externals/agitate
commit 4baa368ffdad59b244e96d2997aef54a0e006acf
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

Depend on Emacs 29

It is the version with all the VC and Diff features that I am using
and will be building on.
---
 agitate.el | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/agitate.el b/agitate.el
index 4373fbb497..35877a9102 100644
--- a/agitate.el
+++ b/agitate.el
@@ -7,7 +7,7 @@
 ;; URL: https://git.sr.ht/~protesilaos/NOT-YET-AVAILABLE
 ;; Mailing-List: https://lists.sr.ht/~protesilaos/NOT-YET-AVAILABLE
 ;; Version: 0.0.0
-;; Package-Requires: ((emacs "27.1"))
+;; Package-Requires: ((emacs "29.1"))
 ;; Keywords: convenience, version control, git
 
 ;; This file is NOT part of GNU Emacs.



[elpa] externals/agitate 1f35cecc20 17/67: Add agitate-diff-kill-dwim prototype

2022-09-28 Thread ELPA Syncer
branch: externals/agitate
commit 1f35cecc201868fa06e32eb52631a3e3940cef8d
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

Add agitate-diff-kill-dwim prototype
---
 agitate.el | 29 +
 1 file changed, 29 insertions(+)

diff --git a/agitate.el b/agitate.el
index e1707bf40c..a946c5ae70 100644
--- a/agitate.el
+++ b/agitate.el
@@ -109,6 +109,35 @@ instead."
   (diff-restrict-view)
   (message "Narrowed to diff HUNK")
 
+;;;###autoload
+(defun agitate-diff-kill-dwim ()
+  "PROTOTYPE.
+
+Kill hunk or remove the plus/minus signs in current line/region.
+
+When the region is active, remove the plus or minus sign at the
+start of each line.
+
+When the region is not active but point is on a line that starts
+with a plus or minus sign, remove that sign.
+
+Removing the plus or minus sign means any subsequent commit will
+not account for them.
+
+If no region is active and the point is not on a line that starts
+with the plus or minus sign, call `diff-hunk-kill' interactively."
+  (interactive nil diff-mode)
+  (unless mark-ring  ; needed when entering a new buffer
+(push-mark (point) t nil))
+  (when-let (((derived-mode-p 'diff-mode))
+ (inhibit-read-only t))
+(cond
+ ((region-active-p)
+  (replace-regexp-in-region "^[+-]" " " (region-beginning) (region-end)))
+ ((progn (goto-char (line-beginning-position)) (looking-at "^[+-]"))
+  (replace-match " "))
+ (t (call-interactively #'diff-hunk-kill)
+
 (defvar outline-minor-mode-highlight)
 
 ;;;###autoload



[elpa] externals/agitate 912161bfc1 27/67: Add doclicense.texi which is used in the manual

2022-09-28 Thread ELPA Syncer
branch: externals/agitate
commit 912161bfc10fd49944f69821f321f348ab77202f
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

Add doclicense.texi which is used in the manual
---
 doclicense.texi | 505 
 1 file changed, 505 insertions(+)

diff --git a/doclicense.texi b/doclicense.texi
new file mode 100644
index 00..eaf3da0e92
--- /dev/null
+++ b/doclicense.texi
@@ -0,0 +1,505 @@
+@c The GNU Free Documentation License.
+@center Version 1.3, 3 November 2008
+
+@c This file is intended to be included within another document,
+@c hence no sectioning command or @node.
+
+@display
+Copyright @copyright{} 2000, 2001, 2002, 2007, 2008 Free Software Foundation, 
Inc.
+@uref{https://fsf.org/}
+
+Everyone is permitted to copy and distribute verbatim copies
+of this license document, but changing it is not allowed.
+@end display
+
+@enumerate 0
+@item
+PREAMBLE
+
+The purpose of this License is to make a manual, textbook, or other
+functional and useful document @dfn{free} in the sense of freedom: to
+assure everyone the effective freedom to copy and redistribute it,
+with or without modifying it, either commercially or noncommercially.
+Secondarily, this License preserves for the author and publisher a way
+to get credit for their work, while not being considered responsible
+for modifications made by others.
+
+This License is a kind of ``copyleft'', which means that derivative
+works of the document must themselves be free in the same sense.  It
+complements the GNU General Public License, which is a copyleft
+license designed for free software.
+
+We have designed this License in order to use it for manuals for free
+software, because free software needs free documentation: a free
+program should come with manuals providing the same freedoms that the
+software does.  But this License is not limited to software manuals;
+it can be used for any textual work, regardless of subject matter or
+whether it is published as a printed book.  We recommend this License
+principally for works whose purpose is instruction or reference.
+
+@item
+APPLICABILITY AND DEFINITIONS
+
+This License applies to any manual or other work, in any medium, that
+contains a notice placed by the copyright holder saying it can be
+distributed under the terms of this License.  Such a notice grants a
+world-wide, royalty-free license, unlimited in duration, to use that
+work under the conditions stated herein.  The ``Document'', below,
+refers to any such manual or work.  Any member of the public is a
+licensee, and is addressed as ``you''.  You accept the license if you
+copy, modify or distribute the work in a way requiring permission
+under copyright law.
+
+A ``Modified Version'' of the Document means any work containing the
+Document or a portion of it, either copied verbatim, or with
+modifications and/or translated into another language.
+
+A ``Secondary Section'' is a named appendix or a front-matter section
+of the Document that deals exclusively with the relationship of the
+publishers or authors of the Document to the Document's overall
+subject (or to related matters) and contains nothing that could fall
+directly within that overall subject.  (Thus, if the Document is in
+part a textbook of mathematics, a Secondary Section may not explain
+any mathematics.)  The relationship could be a matter of historical
+connection with the subject or with related matters, or of legal,
+commercial, philosophical, ethical or political position regarding
+them.
+
+The ``Invariant Sections'' are certain Secondary Sections whose titles
+are designated, as being those of Invariant Sections, in the notice
+that says that the Document is released under this License.  If a
+section does not fit the above definition of Secondary then it is not
+allowed to be designated as Invariant.  The Document may contain zero
+Invariant Sections.  If the Document does not identify any Invariant
+Sections then there are none.
+
+The ``Cover Texts'' are certain short passages of text that are listed,
+as Front-Cover Texts or Back-Cover Texts, in the notice that says that
+the Document is released under this License.  A Front-Cover Text may
+be at most 5 words, and a Back-Cover Text may be at most 25 words.
+
+A ``Transparent'' copy of the Document means a machine-readable copy,
+represented in a format whose specification is available to the
+general public, that is suitable for revising the document
+straightforwardly with generic text editors or (for images composed of
+pixels) generic paint programs or (for drawings) some widely available
+drawing editor, and that is suitable for input to text formatters or
+for automatic translation to a variety of formats suitable for input
+to text formatters.  A copy made in an otherwise Transparent file
+format whose markup, or absence of markup, has been arranged to thwart
+or discourage subsequent modification by readers is not Transparent.
+An image forma

[elpa] externals/agitate b7a51e04d2 18/67: Adjust indentation

2022-09-28 Thread ELPA Syncer
branch: externals/agitate
commit b7a51e04d23b67ab7f1255a221972f47f8d5d5bd
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

Adjust indentation
---
 agitate.el | 8 
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/agitate.el b/agitate.el
index a946c5ae70..50cb062b90 100644
--- a/agitate.el
+++ b/agitate.el
@@ -86,9 +86,9 @@ latest unsaved changes.
 If the buffer is not modified, produce a diff of the file
 relative to its latest revision."
   (interactive)
-(if (buffer-modified-p)
-  (diff-buffer-with-file (current-buffer))
-  (vc-diff)))
+  (if (buffer-modified-p)
+  (diff-buffer-with-file (current-buffer))
+(vc-diff)))
 
 ;;;###autoload
 (defun agitate-diff-narrow-dwim (&optional narrow-file)
@@ -180,7 +180,7 @@ to the text at point."
   (when-let* ((files (log-edit-files))
   (file (if (length> files 1)
 (completing-read "Derive shortname from: " files nil t)
-(car files)))
+  (car files)))
   (name (file-name-nondirectory file)))
 (if with-file-extension
 file



[elpa] externals/agitate 418d24bd13 60/67: Tweak comments about gitmoji, conventional commits

2022-09-28 Thread ELPA Syncer
branch: externals/agitate
commit 418d24bd131c37a1bee9b9d5b99dbfe6c66d1e68
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

Tweak comments about gitmoji, conventional commits
---
 README.org | 3 ++-
 agitate.el | 4 ++--
 2 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/README.org b/README.org
index 379f5005f9..a2149f0584 100644
--- a/README.org
+++ b/README.org
@@ -125,7 +125,8 @@ The following sections document the extras per their scope.
   candidates for ~agitate-log-edit-conventional-commit~.
 
 The emoji commits are inspired by , though I
-think most of those are superfluous.  Less is more.
+think most of those are superfluous.  Less is more.  The "conventional
+commits" are documented here: .
 
 ** Extras for log-view
 :PROPERTIES:
diff --git a/agitate.el b/agitate.el
index 72a1df4d0f..e5c3ba3d23 100644
--- a/agitate.el
+++ b/agitate.el
@@ -47,8 +47,7 @@
   :group 'vc)
 
 ;; Inspired by , though I think most of those
-;; are superfluous.  Less is more.  THIS IS NOT an implementation of
-;; gitmoji.
+;; are superfluous.  Less is more.
 (defcustom agitate-log-edit-emoji-collection
   '(":art: Refine"
 ":bug: Fix"
@@ -63,6 +62,7 @@ will render those as their corresponding graphical emoji."
   :type '(repeat string)
   :group 'agitate)
 
+;; Check .
 (defcustom agitate-log-edit-conventional-commits-collection
   '("build" "chore" "ci" "docs" "feat" "fix" "perf" "polish"
 "refactor" "revert" "style" "test" "types" "workflow")



[elpa] externals/agitate bb94713469 40/67: Fix formatting of inline code in the manual

2022-09-28 Thread ELPA Syncer
branch: externals/agitate
commit bb9471346917ec112c4e0fae3cd13ee4e9a28822
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

Fix formatting of inline code in the manual
---
 README.org | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/README.org b/README.org
index 95bc993a2f..e50ee05df1 100644
--- a/README.org
+++ b/README.org
@@ -91,7 +91,7 @@ The following sections document the extras per their scope.
   or minus sign, remove that sign.  Removing the plus or minus sign
   means any subsequent commit will not account for them.  If no region
   is active and the point is not on a line that starts with the plus
-  or minus sign, call `diff-hunk-kill' interactively.
+  or minus sign, call ~diff-hunk-kill~ interactively.
 
 #+findex: agitate-diff-enable-outline-minor-mode
 + ~agitate-diff-enable-outline-minor-mode~ :: Enable



[elpa] externals/agitate b6e5cdbdda 14/67: Add agitate-enable-outline-minor-mode function

2022-09-28 Thread ELPA Syncer
branch: externals/agitate
commit b6e5cdbdda3df4bb452f47e2a3c7e68a45456bf6
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

Add agitate-enable-outline-minor-mode function
---
 agitate.el | 17 -
 1 file changed, 16 insertions(+), 1 deletion(-)

diff --git a/agitate.el b/agitate.el
index 61350f03ab..2b28c8d377 100644
--- a/agitate.el
+++ b/agitate.el
@@ -7,7 +7,7 @@
 ;; URL: https://git.sr.ht/~protesilaos/NOT-YET-AVAILABLE
 ;; Mailing-List: https://lists.sr.ht/~protesilaos/NOT-YET-AVAILABLE
 ;; Version: 0.0.0
-;; Package-Requires: ((emacs "27.1"))
+;; Package-Requires: ((emacs "28.1"))
 ;; Keywords: convenience, version control, git
 
 ;; This file is NOT part of GNU Emacs.
@@ -90,6 +90,21 @@ relative to its latest revision."
   (diff-buffer-with-file (current-buffer))
   (vc-diff)))
 
+(defvar outline-minor-mode-highlight)
+
+;;;###autoload
+(defun agitate-enable-outline-minor-mode ()
+  "Enable `outline-minor-mode' with appropriate tweaks for diffs.
+
+This basically gives you folding of diff hunks by means of the
+`outline-cycle' command.
+
+Add this function to the `diff-mode-hook'."
+  (require 'outline)
+  (let ((outline-minor-mode-highlight nil))
+(when (derived-mode-p 'diff-mode)
+  (outline-minor-mode 1
+
  Commands for log-view (listings of commits)
 
 ;;;###autoload



[elpa] externals/agitate 16a2ea1cfe 13/67: Simplify agitate-diff-refine-cycle messages

2022-09-28 Thread ELPA Syncer
branch: externals/agitate
commit 16a2ea1cfe0df5600205b8a48e98da339ecf8ed9
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

Simplify agitate-diff-refine-cycle messages
---
 agitate.el | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/agitate.el b/agitate.el
index bc92483cb3..61350f03ab 100644
--- a/agitate.el
+++ b/agitate.el
@@ -63,17 +63,17 @@ fontification."
(font-lock-flush)
(goto-char point)
(setq agitate--refine-diff-state 'all)
-   (message "Diff refine %s" (propertize "all" 'face 'success)))
+   (message "Diff refine ALL"))
   ('all
(revert-buffer)
(goto-char point)
(recenter)
(setq agitate--refine-diff-state nil)
-   (message "Diff refine %s" (propertize "none" 'face 'success)))
+   (message "Diff refine NONE"))
   (_
(diff-refine-hunk)
(setq agitate--refine-diff-state 'current)
-   (message "Diff refine %s" (propertize "current" 'face 'success))
+   (message "Diff refine CURRENT")
 
 ;;;###autoload
 (defun agitate-diff-buffer-or-file ()



[elpa] externals/agitate aa04a25eb1 58/67: Rename to agitate-vc-git-format-patch-single

2022-09-28 Thread ELPA Syncer
branch: externals/agitate
commit aa04a25eb1ec6966e093f4c6f24e240967ecdca5
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

Rename to agitate-vc-git-format-patch-single
---
 README.org | 4 ++--
 agitate.el | 4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/README.org b/README.org
index 2daa6ebf16..379f5005f9 100644
--- a/README.org
+++ b/README.org
@@ -153,8 +153,8 @@ think most of those are superfluous.  Less is more.
   =git-show(1)= on it. With optional =CURRENT-FILE= as prefix
   argument, limit the commits to those pertaining to the current file.
 
-#+findex: agitate-vc-git-prompt-format-patch-single
-+ ~agitate-vc-git-prompt-format-patch-single~ :: Format patch for a
+#+findex: agitate-vc-git-format-patch-single
++ ~agitate-vc-git-format-patch-single~ :: Format patch for a
   single =COMMIT=.  If in a log-view buffer, the =COMMIT= is the one
   at point.  For the details of how that is determined, read the doc
   string of ~agitate-log-view-kill-revision~.  If there is no such
diff --git a/agitate.el b/agitate.el
index cddd7eb662..157261dbd5 100644
--- a/agitate.el
+++ b/agitate.el
@@ -278,13 +278,13 @@ to those pertaining to the current file."
   (diff-mode
 
 (defun agitate--vc-git-format-patch-single-behaviour ()
-  "Help `agitate-vc-git-prompt-format-patch-single' with its COMMIT."
+  "Help `agitate-vc-git-format-patch-single' with its COMMIT."
   (if-let ((default-value (cadr (log-view-current-entry (point) t
   default-value
 (agitate--vc-git-get-hash-from-string (agitate--vc-git-commit-prompt
 
 ;;;###autoload
-(defun agitate-vc-git-prompt-format-patch-single (commit)
+(defun agitate-vc-git-format-patch-single (commit)
   "Format patch for a single COMMIT.
 
 If in a log-view buffer, the COMMIT is the one at point.  For the



[elpa] externals/agitate 475b75a91a 26/67: Add skeleton of README.org

2022-09-28 Thread ELPA Syncer
branch: externals/agitate
commit 475b75a91ae777858b567edd2a914cd0dc523dde
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

Add skeleton of README.org

It will eventually become the Info manual
---
 README.org | 553 +
 1 file changed, 553 insertions(+)

diff --git a/README.org b/README.org
new file mode 100644
index 00..c6d8f1251b
--- /dev/null
+++ b/README.org
@@ -0,0 +1,553 @@
+#+title: agitate: Extras for diff-mode, vc-git, log-edit, 
log-view
+#+author:Protesilaos Stavrou
+#+email: i...@protesilaos.com
+#+language:  en
+#+options:   ':t toc:nil author:t email:t num:t
+#+startup:   content
+#+macro: stable-version 0.0.0
+#+macro: release-date N/A
+#+macro: development-version 0.1.0-dev
+#+export_file_name:  agitate.texi
+#+texinfo_filename:  agitate.info
+#+texinfo_dir_category:  Emacs misc features
+#+texinfo_dir_title: Agitate: (agitate)
+#+texinfo_dir_desc:  Extras for diff-mode, vc-git, log-edit, log-view
+#+texinfo_header:@set MAINTAINERSITE 
@uref{https://protesilaos.com,maintainer webpage}
+#+texinfo_header:@set MAINTAINER Protesilaos Stavrou
+#+texinfo_header:@set MAINTAINEREMAIL @email{i...@protesilaos.com}
+#+texinfo_header:@set MAINTAINERCONTACT 
@uref{mailto:i...@protesilaos.com,contact the maintainer}
+
+#+texinfo: @insertcopying
+
+This manual, written by Protesilaos Stavrou, describes the customization
+options for the Emacs package called =agitate= (or =agitate.el=), and
+provides every other piece of information pertinent to it.
+
+The documentation furnished herein corresponds to stable version
+{{{stable-version}}}, released on {{{release-date}}}.  Any reference to
+a newer feature which does not yet form part of the latest tagged
+commit, is explicitly marked as such.
+
+Current development target is {{{development-version}}}.
+
++ Package name (GNU ELPA): =agitate=
++ Official manual: 
++ Git repo on SourceHut: 
+  - Mirrors:
++ GitHub: 
++ GitLab: 
++ Mailing list: 
+
+If you are viewing the README.org version of this file, please note that
+the GNU ELPA machinery automatically generates an Info manual out of it.
+
+#+toc: headlines 8 insert TOC here, with eight headline levels
+
+* COPYING
+:PROPERTIES:
+:CUSTOM_ID: h:22035775-da3a-4f11-b078-bbe76ef8a93b
+:END:
+
+Copyright (C) 2022  Free Software Foundation, Inc.
+
+#+begin_quote
+Permission is granted to copy, distribute and/or modify this document
+under the terms of the GNU Free Documentation License, Version 1.3 or
+any later version published by the Free Software Foundation; with no
+Invariant Sections, with the Front-Cover Texts being “A GNU Manual,” and
+with the Back-Cover Texts as in (a) below.  A copy of the license is
+included in the section entitled “GNU Free Documentation License.”
+
+(a) The FSF’s Back-Cover Text is: “You have the freedom to copy and
+modify this GNU manual.”
+#+end_quote
+
+* GNU Free Documentation License
+:PROPERTIES:
+:CUSTOM_ID: h:0f9a759f-89f7-4242-b484-e0d4bf8aef09
+:END:
+
+#+texinfo: @include doclicense.texi
+
+#+begin_export html
+
+
+GNU Free Documentation License
+ Version 1.3, 3 November 2008
+
+
+ Copyright (C) 2000, 2001, 2002, 2007, 2008 Free Software Foundation, Inc.
+ 
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+0. PREAMBLE
+
+The purpose of this License is to make a manual, textbook, or other
+functional and useful document "free" in the sense of freedom: to
+assure everyone the effective freedom to copy and redistribute it,
+with or without modifying it, either commercially or noncommercially.
+Secondarily, this License preserves for the author and publisher a way
+to get credit for their work, while not being considered responsible
+for modifications made by others.
+
+This License is a kind of "copyleft", which means that derivative
+works of the document must themselves be free in the same sense.  It
+complements the GNU General Public License, which is a copyleft
+license designed for free software.
+
+We have designed this License in order to use it for manuals for free
+software, because free software needs free documentation: a free
+program should come with manuals providing the same freedoms that the
+software does.  But this License is not limited to software manuals;
+it can be used for any textual work, regardless of subject matter or
+whether it is published as a printed book.  We recommend this License
+principally for works whose purpose is instruction or refere

[elpa] branch externals/agitate created (now f736eb51a7)

2022-09-28 Thread ELPA Syncer
elpasync pushed a change to branch externals/agitate.

at  f736eb51a7 Tweak markup of "git-grep(1)"

This branch includes the following new commits:

   new  a3ee8251d4 Start recording file history
   new  4baa368ffd Depend on Emacs 29
   new  417539dc73 Add agitate-log-edit-insert-file-name command
   new  69e8f87214 Add agitate-vc-git-push
   new  6604612c32 Add agitate-git-grep command
   new  5a1b31fe09 Add agitate-log-view-kill-revision command
   new  93b2674f70 Add agitate-diff-refine-cycle command
   new  d1de59188d Set minimum Emacs to 28.1
   new  95e6f9186e Update one-line description
   new  d6aaced969 Actually depend on Emacs 27.1
   new  0ee85a971b Add agitate-diff-buffer-or-file command
   new  e7b6acb8f7 Limit agitate-diff-refine-cycle to diff-mode
   new  16a2ea1cfe Simplify agitate-diff-refine-cycle messages
   new  b6e5cdbdda Add agitate-enable-outline-minor-mode function
   new  764644c218 Use 'length>' again since b6e5cdb requires Emacs 28.1
   new  43027aefb9 Add agitate-diff-narrow-dwim command
   new  1f35cecc20 Add agitate-diff-kill-dwim prototype
   new  b7a51e04d2 Adjust indentation
   new  52c9968e5f Refine agitate-vc-git-push doc string
   new  2c9f6bb3be Rename to agitate-vc-git-push-prompt-for-remote
   new  f29bc8e32a Reorder some functions
   new  4ed8d553ba Record TODO for vc-git-push replacements
   new  cbe4eed8b2 Add agitate-log-edit-emoji-commit command+option
   new  a32ed823b6 Add TODO about conventional commits
   new  60dea993b9 Add COPYING GNU General Public License
   new  475b75a91a Add skeleton of README.org
   new  912161bfc1 Add doclicense.texi which is used in the manual
   new  839892328b Add missing backronym
   new  7564713208 Rewrite outline heading for diffs
   new  acaa1868d0 Move log-view section further down
   new  9146d7cd54 Rename to agitate-diff-enable-outline-minor-mode
   new  ed6c5cfb71 Capitalise Unicode in doc string
   new  2250f3d039 Expand the README.org
   new  da4a2bb77a Update agitate.el headers and Commentary
   new  063d94c983 Add generic README in markdown
   new  ca4b65bf85 Add gitignore
   new  91e685d0fb Add dir-locals.el
   new  2b8a593a5d Add missing backronym from README.md
   new  a2173cf82c Implement conventional commits; refine emoji commits
   new  bb94713469 Fix formatting of inline code in the manual
   new  f9dd3b3f91 Add agitate-vc-git-kill-commit-message command
   new  fa0a9e5260 Add echo to agitate-vc-git-kill-commit-message
   new  8bb7652cac Rename to agitate-vc-git-grep
   new  6eb66ed1cc Add helper to extract commit hash
   new  8459e26050 Add helper prompt for commit log completion
   new  a9a8339126 Add PROOF OF CONCEPT vc-git-find-revision
   new  6c89d23954 Remove agitate-diff-kill-dwim (doesn't work)
   new  d808406253 Edit vc-git-show (PROOF OF CONCEPT)
   new  1df9714eb6 Accept optional long agitate--vc-git-commit-prompt
   new  3185f2becd Clarify word in agitate-vc-git-grep doc string
   new  4192d8d892 Clarify doc of helper function
   new  496eba8497 Add agitate-vc-git-show prototype
   new  de2094a2f5 Placate the compiler
   new  45eb3b6c5d Declare agitate-vc-git-show as interactive-only
   new  c54fe94ac1 Add agitate-vc-git-prompt-format-patch-single cmd
   new  51fd96aba6 Tweak format of quote in the README.org
   new  27cdb6fd95 Improve agitate-vc-git-prompt-format-patch-single
   new  aa04a25eb1 Rename to agitate-vc-git-format-patch-single
   new  1e998e1466 Rename helper for single commit command
   new  418d24bd13 Tweak comments about gitmoji, conventional commits
   new  052d3e3570 Simplify agitate--vc-git-commit-prompt
   new  0b80819820 Refine regexp for git hash extraction
   new  dce39b452c Make agitate-vc-git-kill-commit-message use completion
   new  50251c7eff Add agitate-log-view-kill-revision-expanded cmd
   new  a5ee057fd5 Add sample configuration to the manual
   new  412834ce07 Fix file no dir in agitate--log-edit-extract-file
   new  f736eb51a7 Tweak markup of "git-grep(1)"




[elpa] externals/agitate c54fe94ac1 55/67: Add agitate-vc-git-prompt-format-patch-single cmd

2022-09-28 Thread ELPA Syncer
branch: externals/agitate
commit c54fe94ac19262c58fae1260c07b8f880785c03f
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

Add agitate-vc-git-prompt-format-patch-single cmd
---
 README.org | 13 +
 agitate.el | 18 ++
 2 files changed, 31 insertions(+)

diff --git a/README.org b/README.org
index 17d9b61f30..26cf0e3eef 100644
--- a/README.org
+++ b/README.org
@@ -153,6 +153,19 @@ think most of those are superfluous.  Less is more.
   =git-show(1)= on it. With optional =CURRENT-FILE= as prefix
   argument, limit the commits to those pertaining to the current file.
 
+#+findex: agitate-vc-git-prompt-format-patch-single
++ ~agitate-vc-git-prompt-format-patch-single~ :: Format patch for a
+  single =COMMIT=.  Prompt for =COMMIT= using minibuffer completion.
+  Output the patch file to the return value of the function
+  ~vc-root-dir~.  Relevant except from the source code:
+
+  #+begin_src emacs-lisp
+  ;; TODO 2022-09-27: Handle the output directory better.  Though I am
+  ;; not sure how people work with those.  I normally use the root of
+  ;; the current repo (and then clean it) or put everything in the
+  ;; ~/Desktop or some dedicated "patches" directory.
+  #+end_src
+
 #+findex: agitate-vc-git-grep
 + ~agitate-vc-git-grep~ :: Run ~git-grep(1)~ for =REGEXP= in
   ~vc-root-dir~.  This is a simple wrapper around ~vc-git-grep~ to
diff --git a/agitate.el b/agitate.el
index d73dda4cfb..ca34d3170c 100644
--- a/agitate.el
+++ b/agitate.el
@@ -277,6 +277,24 @@ to those pertaining to the current file."
 (with-current-buffer (pop-to-buffer buf)
   (diff-mode
 
+;;;###autoload
+(defun agitate-vc-git-prompt-format-patch-single (commit)
+  "Format patch for a single COMMIT.
+Prompt for COMMIT using minibuffer completion.
+
+Output the patch file to the return value of the function
+`vc-root-dir'."
+  (interactive
+   (list (agitate--vc-git-get-hash-from-string 
(agitate--vc-git-commit-prompt
+  ;; TODO 2022-09-27: Handle the output directory better.  Though I am
+  ;; not sure how people work with those.  I normally use the root of
+  ;; the current repo (and then clean it) or put everything in the
+  ;; ~/Desktop or some dedicated "patches" directory.
+  (when-let* ((root (vc-root-dir))
+  (default-directory root))
+(apply 'vc-git-command nil nil nil
+   (list "format-patch" "-1" commit "--"
+
 ;;;###autoload
 (defun agitate-vc-git-grep (regexp)
   "Run `git-grep(1)' for REGEXP in `vc-root-dir'.



[elpa] externals/agitate 5a1b31fe09 06/67: Add agitate-log-view-kill-revision command

2022-09-28 Thread ELPA Syncer
branch: externals/agitate
commit 5a1b31fe09ceb3900eab05c585aac2dd2504bc2f
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

Add agitate-log-view-kill-revision command
---
 agitate.el | 21 +
 1 file changed, 21 insertions(+)

diff --git a/agitate.el b/agitate.el
index c4c83cc432..7f36ab93c8 100644
--- a/agitate.el
+++ b/agitate.el
@@ -32,12 +32,33 @@
 ;;; Code:
 
 (require 'log-edit)
+(require 'log-view)
 (require 'vc-git)
 
 (defgroup agitate ()
   "Work-in-progress."
   :group 'vc)
 
+ Commands for log-view (listings of commits)
+
+;;;###autoload
+(defun agitate-log-view-kill-revision ()
+  "Append to `kill-ring' log-view revision at or around point.
+
+When the log-view is in the short format (one compact line per
+revision), the revision is the one on the current line.  If the
+revision is expanded with `log-view-expanded-log-entry-function'
+and point is somewhere inside the expanded text, the revision is
+still the same.
+
+When the log-view is in the long format (detailed view where each
+revision spans several lines), the revision is the one pertinent
+to the text at point."
+  (interactive)
+  (when-let ((revision (cadr (log-view-current-entry (point) t
+(kill-new (format "%s" revision))
+(message "Copied: %s" revision)))
+
  Commands for log-edit (commit messages)
 
 (defun agitate--log-edit-extract-file (with-file-extension)



[elpa] externals/agitate a5ee057fd5 65/67: Add sample configuration to the manual

2022-09-28 Thread ELPA Syncer
branch: externals/agitate
commit a5ee057fd563632679580318c6a1689bcb7bd9d8
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

Add sample configuration to the manual
---
 README.org | 35 ++-
 1 file changed, 34 insertions(+), 1 deletion(-)

diff --git a/README.org b/README.org
index 9f8655ac48..db7ab5e17e 100644
--- a/README.org
+++ b/README.org
@@ -256,11 +256,44 @@ Finally, in your =init.el= (or equivalent) evaluate this:
 
 Everything is in place to set up the package.
 
-* TODO Sample configuration
+* Sample configuration
 :PROPERTIES:
 :CUSTOM_ID: h:9ea57def-7883-44bd-b27e-54127457b808
 :END:
 
+#+begin_src emacs-lisp
+;; These are all OPTIONAL.  You should just use whatever key bindings
+;; or setup you prefer.
+
+;; Agitate is still a WORK-IN-PROGRESS.
+
+(require 'agitate "/home/prot/Git/Projects/agitate/agitate.el")
+
+(add-hook 'diff-mode-hook #'agitate-diff-enable-outline-minor-mode)
+
+(advice-add #'vc-git-push :override #'agitate-vc-git-push-prompt-for-remote)
+
+(let ((map global-map))
+  (define-key map (kbd "C-x v =") #'agitate-diff-buffer-or-file) ; replace 
`vc-diff'
+  (define-key map (kbd "C-x v g") #'agitate-vc-git-grep) ; replace 
`vc-annotate'
+  (define-key map (kbd "C-x v s") #'agitate-vc-git-show)
+  (define-key map (kbd "C-x v c") #'agitate-vc-git-format-patch-single))
+(let ((map diff-mode-map))
+  (define-key map (kbd "C-c C-b") #'agitate-diff-refine-cycle) ; replace 
`diff-refine-hunk'
+  (define-key map (kbd "C-c C-n") #'agitate-diff-narrow-dwim))
+(let ((map log-view-mode-map))
+  (define-key map (kbd "w") #'agitate-log-view-kill-revision)
+  (define-key map (kbd "W") #'agitate-log-view-kill-revision-expanded))
+(let ((map vc-git-log-view-mode-map))
+  (define-key map (kbd "c") #'agitate-vc-git-format-patch-single))
+(let ((map log-edit-mode-map))
+  (define-key map (kbd "C-c C-i C-n") #'agitate-log-edit-insert-file-name)
+  ;; See user options `agitate-log-edit-emoji-collection' and
+  ;; `agitate-log-edit-conventional-commits-collection'.
+  (define-key map (kbd "C-c C-i C-e") #'agitate-log-edit-emoji-commit)
+  (define-key map (kbd "C-c C-i C-c") #'agitate-log-edit-conventional-commit))
+#+end_src
+
 * COPYING
 :PROPERTIES:
 :CUSTOM_ID: h:22035775-da3a-4f11-b078-bbe76ef8a93b



[elpa] externals/agitate 91e685d0fb 37/67: Add dir-locals.el

2022-09-28 Thread ELPA Syncer
branch: externals/agitate
commit 91e685d0fb711716ff386ec43e4fa06cc4ea977d
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

Add dir-locals.el
---
 .dir-locals.el | 6 ++
 1 file changed, 6 insertions(+)

diff --git a/.dir-locals.el b/.dir-locals.el
new file mode 100644
index 00..6d22de33f5
--- /dev/null
+++ b/.dir-locals.el
@@ -0,0 +1,6 @@
+;;; Directory Local Variables
+;;; For more information see (info "(emacs) Directory Variables")
+
+((emacs-lisp-mode
+  (show-trailing-whitespace . t)
+  (indent-tabs-mode . nil)))



[elpa] externals/agitate 52c9968e5f 19/67: Refine agitate-vc-git-push doc string

2022-09-28 Thread ELPA Syncer
branch: externals/agitate
commit 52c9968e5fbf00f8a2edf7b05f1d243c796682d4
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

Refine agitate-vc-git-push doc string
---
 agitate.el | 7 ++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/agitate.el b/agitate.el
index 50cb062b90..9116b7bc2c 100644
--- a/agitate.el
+++ b/agitate.el
@@ -209,7 +209,12 @@ file extension.  Else omit it."
 
 ;;;###autoload
 (defun agitate-vc-git-push (prompt)
-  "Substitute for `vc-git-push' with the same meaning for PROMPT."
+  "Behave like `vc-git-push' but prompt for a remote, if needed.
+The meaning of PROMPT is the same as that of `vc-git-push'.  In
+such a case, do not prompt for a remote.
+
+To use this function add it as an override advice to
+`vc-git-push'."
   (vc-git--pushpull "push" prompt (unless prompt 
`(,(agitate--vc-git-prompt-remote)
 
 ;;;###autoload



[elpa] externals/agitate 51fd96aba6 56/67: Tweak format of quote in the README.org

2022-09-28 Thread ELPA Syncer
branch: externals/agitate
commit 51fd96aba684cb68d27af7d14f7b26963a46547e
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

Tweak format of quote in the README.org
---
 README.org | 19 ---
 1 file changed, 8 insertions(+), 11 deletions(-)

diff --git a/README.org b/README.org
index 26cf0e3eef..16d3aa2e91 100644
--- a/README.org
+++ b/README.org
@@ -185,18 +185,15 @@ think most of those are superfluous.  Less is more.
   but prompt for a remote, if needed.  The meaning of =PROMPT= is the
   same as that of ~vc-git-push~.  In such a case, do not prompt for a
   remote. To use this function add it as an override advice to
-  ~vc-git-push~.
+  ~vc-git-push~.  Relevant quote from the source code:
 
-Relevant quote for ~agitate-vc-git-push-prompt-for-remote~ from the
-source code:
-
-#+begin_src emacs-lisp
-;; TODO 2022-09-27: We can have something similar which prompts for a
-;; branch to push to.  There are lots of possibilities.  The idea is
-;; that the user can pick the function they are most likely to use as
-;; their default.  Then they can rely on PROMPT to modify its
-;; behaviour.
-#+end_src
+  #+begin_src emacs-lisp
+  ;; TODO 2022-09-27: We can have something similar which prompts for a
+  ;; branch to push to.  There are lots of possibilities.  The idea is
+  ;; that the user can pick the function they are most likely to use as
+  ;; their default.  Then they can rely on PROMPT to modify its
+  ;; behaviour.
+  #+end_src
 
 * Installation
 :PROPERTIES:



[elpa] externals/agitate acaa1868d0 30/67: Move log-view section further down

2022-09-28 Thread ELPA Syncer
branch: externals/agitate
commit acaa1868d04d9cbc04e34cf52b03247aa4e877d5
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

Move log-view section further down
---
 agitate.el | 40 
 1 file changed, 20 insertions(+), 20 deletions(-)

diff --git a/agitate.el b/agitate.el
index 352b7ec592..cc4d1ed9ab 100644
--- a/agitate.el
+++ b/agitate.el
@@ -174,26 +174,6 @@ Add this function to the `diff-mode-hook'."
 (when (derived-mode-p 'diff-mode)
   (outline-minor-mode 1
 
- Commands for log-view (listings of commits)
-
-;;;###autoload
-(defun agitate-log-view-kill-revision ()
-  "Append to `kill-ring' log-view revision at or around point.
-
-When the log-view is in the short format (one compact line per
-revision), the revision is the one on the current line.  If the
-revision is expanded with `log-view-expanded-log-entry-function'
-and point is somewhere inside the expanded text, the revision is
-still the same.
-
-When the log-view is in the long format (detailed view where each
-revision spans several lines), the revision is the one pertinent
-to the text at point."
-  (interactive)
-  (when-let ((revision (cadr (log-view-current-entry (point) t
-(kill-new (format "%s" revision))
-(message "Copied: %s" revision)))
-
  Commands for log-edit (commit messages)
 
 (defun agitate--log-edit-extract-file (with-file-extension)
@@ -235,6 +215,26 @@ When called interactively, prompt for EMOJI-COMMIT among 
the
  'agitate--log-edit-emoji-commit-history)))
   (insert emoji-commit))
 
+ Commands for log-view (listings of commits)
+
+;;;###autoload
+(defun agitate-log-view-kill-revision ()
+  "Append to `kill-ring' log-view revision at or around point.
+
+When the log-view is in the short format (one compact line per
+revision), the revision is the one on the current line.  If the
+revision is expanded with `log-view-expanded-log-entry-function'
+and point is somewhere inside the expanded text, the revision is
+still the same.
+
+When the log-view is in the long format (detailed view where each
+revision spans several lines), the revision is the one pertinent
+to the text at point."
+  (interactive)
+  (when-let ((revision (cadr (log-view-current-entry (point) t
+(kill-new (format "%s" revision))
+(message "Copied: %s" revision)))
+
  Commands for vc-git (Git backend for the Version Control framework)
 
 ;;;###autoload



[elpa] externals/agitate 2c9f6bb3be 20/67: Rename to agitate-vc-git-push-prompt-for-remote

2022-09-28 Thread ELPA Syncer
branch: externals/agitate
commit 2c9f6bb3be9bcc82f8d8498fe1ae76ff83d4057f
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

Rename to agitate-vc-git-push-prompt-for-remote

This better describes its scope.  It is now possible to add more
commands like it.
---
 agitate.el | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/agitate.el b/agitate.el
index 9116b7bc2c..84cce76e13 100644
--- a/agitate.el
+++ b/agitate.el
@@ -208,7 +208,7 @@ file extension.  Else omit it."
   (car remotes
 
 ;;;###autoload
-(defun agitate-vc-git-push (prompt)
+(defun agitate-vc-git-push-prompt-for-remote (prompt)
   "Behave like `vc-git-push' but prompt for a remote, if needed.
 The meaning of PROMPT is the same as that of `vc-git-push'.  In
 such a case, do not prompt for a remote.



[elpa] externals/agitate 0b80819820 62/67: Refine regexp for git hash extraction

2022-09-28 Thread ELPA Syncer
branch: externals/agitate
commit 0b808198202f6bd09d64ec08dc83d3d0f0897dbe
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

Refine regexp for git hash extraction
---
 agitate.el | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/agitate.el b/agitate.el
index 88a22fe814..164d0fae73 100644
--- a/agitate.el
+++ b/agitate.el
@@ -234,7 +234,7 @@ to the text at point."
 
 (defun agitate--vc-git-get-hash-from-string (string)
   "Return commit hash from beginning of STRING."
-  (when (string-match "\\b\\([0-9a-z]+\\) " string)
+  (when (string-match "\\b\\([0-9a-z]+\\)\\(\s+\\)?" string)
 (match-string 1 string)))
 
 (defun agitate--vc-git-commit-prompt (&optional file long)



[elpa] externals/agitate 4ed8d553ba 22/67: Record TODO for vc-git-push replacements

2022-09-28 Thread ELPA Syncer
branch: externals/agitate
commit 4ed8d553ba90fa775141a6e7fe5dccdd53b97e61
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

Record TODO for vc-git-push replacements
---
 agitate.el | 6 ++
 1 file changed, 6 insertions(+)

diff --git a/agitate.el b/agitate.el
index 8e99de5ba2..30b5064e11 100644
--- a/agitate.el
+++ b/agitate.el
@@ -217,6 +217,12 @@ features."
 (completing-read "Select Git remote: " remotes nil t)
   (car remotes
 
+;; TODO 2022-09-27: We can have something similar which prompts for a
+;; branch to push to.  There are lots of possibilities.  The idea is
+;; that the user can pick the function they are most likely to use as
+;; their default.  Then they can rely on PROMPT to modify its
+;; behaviour.
+
 ;;;###autoload
 (defun agitate-vc-git-push-prompt-for-remote (prompt)
   "Behave like `vc-git-push' but prompt for a remote, if needed.



[elpa] externals/agitate d808406253 48/67: Edit vc-git-show (PROOF OF CONCEPT)

2022-09-28 Thread ELPA Syncer
branch: externals/agitate
commit d808406253356d48471ac1a0045f38097a9fabf1
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

Edit vc-git-show (PROOF OF CONCEPT)
---
 agitate.el | 6 ++
 1 file changed, 2 insertions(+), 4 deletions(-)

diff --git a/agitate.el b/agitate.el
index 951e5b7976..d0cd4edc15 100644
--- a/agitate.el
+++ b/agitate.el
@@ -254,10 +254,8 @@ With optional FILE, limit the commits to those pertinent 
to it."
   "Buffer for showing a git commit.")
 
 ;;;###autoload
-(defun vc-git-find-revision ()
-  "PROOF OF CONCEPT.
-
-Prompt for commit and visit it as a file."
+(defun vc-git-show ()
+  "PROOF OF CONCEPT."
   (interactive)
   (when-let* ((file (caadr (vc-deduce-fileset))) ; FIXME 2022-09-27: Better 
way to get current file?
   (revision (agitate--vc-git-get-hash-from-string



[elpa] externals/agitate 9146d7cd54 31/67: Rename to agitate-diff-enable-outline-minor-mode

2022-09-28 Thread ELPA Syncer
branch: externals/agitate
commit 9146d7cd54bd9921560bc5299f5e7405d30d96eb
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

Rename to agitate-diff-enable-outline-minor-mode
---
 agitate.el | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/agitate.el b/agitate.el
index cc4d1ed9ab..400cfb8945 100644
--- a/agitate.el
+++ b/agitate.el
@@ -162,7 +162,7 @@ with the plus or minus sign, call `diff-hunk-kill' 
interactively."
 (defvar outline-minor-mode-highlight)
 
 ;;;###autoload
-(defun agitate-enable-outline-minor-mode ()
+(defun agitate-diff-enable-outline-minor-mode ()
   "Enable `outline-minor-mode' with appropriate tweaks for diffs.
 
 This basically gives you folding of diff hunks by means of the



[elpa] externals/agitate 27cdb6fd95 57/67: Improve agitate-vc-git-prompt-format-patch-single

2022-09-28 Thread ELPA Syncer
branch: externals/agitate
commit 27cdb6fd95ad88a10308214148dd805de6a64a76
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

Improve agitate-vc-git-prompt-format-patch-single
---
 README.org |  5 -
 agitate.el | 16 ++--
 2 files changed, 18 insertions(+), 3 deletions(-)

diff --git a/README.org b/README.org
index 16d3aa2e91..2daa6ebf16 100644
--- a/README.org
+++ b/README.org
@@ -155,7 +155,10 @@ think most of those are superfluous.  Less is more.
 
 #+findex: agitate-vc-git-prompt-format-patch-single
 + ~agitate-vc-git-prompt-format-patch-single~ :: Format patch for a
-  single =COMMIT=.  Prompt for =COMMIT= using minibuffer completion.
+  single =COMMIT=.  If in a log-view buffer, the =COMMIT= is the one
+  at point.  For the details of how that is determined, read the doc
+  string of ~agitate-log-view-kill-revision~.  If there is no such
+  commit at point, prompt for =COMMIT= using minibuffer completion.
   Output the patch file to the return value of the function
   ~vc-root-dir~.  Relevant except from the source code:
 
diff --git a/agitate.el b/agitate.el
index ca34d3170c..cddd7eb662 100644
--- a/agitate.el
+++ b/agitate.el
@@ -277,15 +277,27 @@ to those pertaining to the current file."
 (with-current-buffer (pop-to-buffer buf)
   (diff-mode
 
+(defun agitate--vc-git-format-patch-single-behaviour ()
+  "Help `agitate-vc-git-prompt-format-patch-single' with its COMMIT."
+  (if-let ((default-value (cadr (log-view-current-entry (point) t
+  default-value
+(agitate--vc-git-get-hash-from-string (agitate--vc-git-commit-prompt
+
 ;;;###autoload
 (defun agitate-vc-git-prompt-format-patch-single (commit)
   "Format patch for a single COMMIT.
-Prompt for COMMIT using minibuffer completion.
+
+If in a log-view buffer, the COMMIT is the one at point.  For the
+details of how that is determined, read the doc string of
+`agitate-log-view-kill-revision'.
+
+If there is no such commit at point, prompt for COMMIT using
+minibuffer completion.
 
 Output the patch file to the return value of the function
 `vc-root-dir'."
   (interactive
-   (list (agitate--vc-git-get-hash-from-string 
(agitate--vc-git-commit-prompt
+   (list (agitate--vc-git-format-patch-single-behaviour)))
   ;; TODO 2022-09-27: Handle the output directory better.  Though I am
   ;; not sure how people work with those.  I normally use the root of
   ;; the current repo (and then clean it) or put everything in the



[elpa] externals/agitate ed6c5cfb71 32/67: Capitalise Unicode in doc string

2022-09-28 Thread ELPA Syncer
branch: externals/agitate
commit ed6c5cfb71ccfa16376a33d205f8b5163819a1d5
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

Capitalise Unicode in doc string
---
 agitate.el | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/agitate.el b/agitate.el
index 400cfb8945..4905f34155 100644
--- a/agitate.el
+++ b/agitate.el
@@ -53,7 +53,7 @@
 ":sparkles: Add")
   "Completion candidates for `agitate-log-edit-emoji-commit'.
 It is recommended to use the :EMOJI: notation, as it works even
-in terminals that cannot output unicode.  Relevant applications
+in terminals that cannot output Unicode.  Relevant applications
 will render those as their corresponding graphical emoji."
   :type '(repeat string)
   :group 'agitate)



[elpa] externals/agitate 1e998e1466 59/67: Rename helper for single commit command

2022-09-28 Thread ELPA Syncer
branch: externals/agitate
commit 1e998e1466dd549739f66ff9dd3b10731510eb6d
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

Rename helper for single commit command
---
 agitate.el | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/agitate.el b/agitate.el
index 157261dbd5..72a1df4d0f 100644
--- a/agitate.el
+++ b/agitate.el
@@ -277,7 +277,7 @@ to those pertaining to the current file."
 (with-current-buffer (pop-to-buffer buf)
   (diff-mode
 
-(defun agitate--vc-git-format-patch-single-behaviour ()
+(defun agitate--vc-git-format-patch-single-commit ()
   "Help `agitate-vc-git-format-patch-single' with its COMMIT."
   (if-let ((default-value (cadr (log-view-current-entry (point) t
   default-value
@@ -296,8 +296,7 @@ minibuffer completion.
 
 Output the patch file to the return value of the function
 `vc-root-dir'."
-  (interactive
-   (list (agitate--vc-git-format-patch-single-behaviour)))
+  (interactive (list (agitate--vc-git-format-patch-single-commit)))
   ;; TODO 2022-09-27: Handle the output directory better.  Though I am
   ;; not sure how people work with those.  I normally use the root of
   ;; the current repo (and then clean it) or put everything in the



[elpa] externals/agitate f29bc8e32a 21/67: Reorder some functions

2022-09-28 Thread ELPA Syncer
branch: externals/agitate
commit f29bc8e32a54836ba1e5d3f3665c7ee0309971d6
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

Reorder some functions
---
 agitate.el | 20 ++--
 1 file changed, 10 insertions(+), 10 deletions(-)

diff --git a/agitate.el b/agitate.el
index 84cce76e13..8e99de5ba2 100644
--- a/agitate.el
+++ b/agitate.el
@@ -200,6 +200,16 @@ file extension.  Else omit it."
 
  Commands for vc-git (Git backend for the Version Control framework)
 
+;;;###autoload
+(defun agitate-git-grep (regexp)
+  "Run `git-grep(1)' for REGEXP in `vc-root-dir'.
+This is a simple wrapper around `vc-git-grep' to streamline the
+basic task of searching for a regexp in the current Git
+repository.  Use the original `vc-git-grep' for its other
+features."
+  (interactive (list (read-regexp "git-grep: " nil 'vc-git-history)))
+  (vc-git-grep regexp "*" (vc-root-dir)))
+
 (defun agitate--vc-git-prompt-remote ()
   "Helper prompt for `agitate-git-push'."
   (when-let ((remotes (process-lines vc-git-program "remote")))
@@ -217,15 +227,5 @@ To use this function add it as an override advice to
 `vc-git-push'."
   (vc-git--pushpull "push" prompt (unless prompt 
`(,(agitate--vc-git-prompt-remote)
 
-;;;###autoload
-(defun agitate-git-grep (regexp)
-  "Run `git-grep(1)' for REGEXP in `vc-root-dir'.
-This is a simple wrapper around `vc-git-grep' to streamline the
-basic task of searching for a regexp in the current Git
-repository.  Use the original `vc-git-grep' for its other
-features."
-  (interactive (list (read-regexp "git-grep: " nil 'vc-git-history)))
-  (vc-git-grep regexp "*" (vc-root-dir)))
-
 (provide 'agitate)
 ;;; agitate.el ends here



[elpa] externals/agitate 063d94c983 35/67: Add generic README in markdown

2022-09-28 Thread ELPA Syncer
branch: externals/agitate
commit 063d94c9836275de0a03b7cd1ea36de4700af45b
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

Add generic README in markdown

This is because the README.org is not rendered properly by the various
Git forges.  It is okay, because its real purpose is to generate the
Info manual (no, I will not bother with texi---thanks!).
---
 README.md | 16 
 1 file changed, 16 insertions(+)

diff --git a/README.md b/README.md
new file mode 100644
index 00..4e2ac7c336
--- /dev/null
+++ b/README.md
@@ -0,0 +1,16 @@
+# agitate: Extras for diff-mode, vc-git, log-edit, log-view
+
+Agitate is a collection of commands or potentially useful functions
+that expand on the available version control features of Emacs.  Those
+are meant to complement a workflow that relies on the built-in Version
+Control framework and its accoutrements (`diff-mode.el`,
+`log-view.el`, `log-edit.el`, `vc-git.el`, and potentially others).
+
++ Package name (GNU ELPA): `agitate`
++ Official manual:  (the manual is
+  installed with the package---evaluate `(info "(agitate) Top")`)
++ Git repo on SourceHut: 
+  - Mirrors:
++ GitHub: 
++ GitLab: 
++ Mailing list: 



[elpa] externals/agitate 6c89d23954 47/67: Remove agitate-diff-kill-dwim (doesn't work)

2022-09-28 Thread ELPA Syncer
branch: externals/agitate
commit 6c89d239549e06b5e3753975e54d1a5a27464c2d
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

Remove agitate-diff-kill-dwim (doesn't work)

The idea is neat and we could also leverage the built-in method to
split a diff hunk, but it ultimately fails to apply the patch...
---
 README.org | 10 --
 agitate.el | 29 -
 2 files changed, 39 deletions(-)

diff --git a/README.org b/README.org
index 6cebf5132f..97bbc9b5ec 100644
--- a/README.org
+++ b/README.org
@@ -83,16 +83,6 @@ The following sections document the extras per their scope.
   With optional =NARROW-FILE= as a prefix argument, operate on the
   current file instead.
 
-#+findex: agitate-diff-kill-dwim
-+ ~agitate-diff-kill-dwim~ :: PROTOTYPE!!!  Kill hunk or remove the
-  plus/minus signs in current line/region.  When the region is active,
-  remove the plus or minus sign at the start of each line. When the
-  region is not active but point is on a line that starts with a plus
-  or minus sign, remove that sign.  Removing the plus or minus sign
-  means any subsequent commit will not account for them.  If no region
-  is active and the point is not on a line that starts with the plus
-  or minus sign, call ~diff-hunk-kill~ interactively.
-
 #+findex: agitate-diff-enable-outline-minor-mode
 + ~agitate-diff-enable-outline-minor-mode~ :: Enable
   ~outline-minor-mode~ with appropriate tweaks for diffs.  This
diff --git a/agitate.el b/agitate.el
index 249efae604..951e5b7976 100644
--- a/agitate.el
+++ b/agitate.el
@@ -137,35 +137,6 @@ instead."
   (diff-restrict-view)
   (message "Narrowed to diff HUNK")
 
-;;;###autoload
-(defun agitate-diff-kill-dwim ()
-  "PROTOTYPE.
-
-Kill hunk or remove the plus/minus signs in current line/region.
-
-When the region is active, remove the plus or minus sign at the
-start of each line.
-
-When the region is not active but point is on a line that starts
-with a plus or minus sign, remove that sign.
-
-Removing the plus or minus sign means any subsequent commit will
-not account for them.
-
-If no region is active and the point is not on a line that starts
-with the plus or minus sign, call `diff-hunk-kill' interactively."
-  (interactive nil diff-mode)
-  (unless mark-ring  ; needed when entering a new buffer
-(push-mark (point) t nil))
-  (when-let (((derived-mode-p 'diff-mode))
- (inhibit-read-only t))
-(cond
- ((region-active-p)
-  (replace-regexp-in-region "^[+-]" " " (region-beginning) (region-end)))
- ((progn (goto-char (line-beginning-position)) (looking-at "^[+-]"))
-  (replace-match " "))
- (t (call-interactively #'diff-hunk-kill)
-
 (defvar outline-minor-mode-highlight)
 
 ;;;###autoload



[elpa] externals/agitate 50251c7eff 64/67: Add agitate-log-view-kill-revision-expanded cmd

2022-09-28 Thread ELPA Syncer
branch: externals/agitate
commit 50251c7eff001212ebf57a11ee73ff0fb80166c6
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

Add agitate-log-view-kill-revision-expanded cmd
---
 README.org |  4 
 agitate.el | 31 +++
 2 files changed, 35 insertions(+)

diff --git a/README.org b/README.org
index 74d4b68371..9f8655ac48 100644
--- a/README.org
+++ b/README.org
@@ -144,6 +144,10 @@ commits" are documented here: 
.
   several lines), the revision is the one pertinent to the text at
   point.
 
+#+findex: agitate-log-view-kill-revision-expanded
++ ~agitate-log-view-kill-revision-expanded~ :: PROTOTYPE.  Append to
+  ~kill-ring~ expanded message of log-view revision at point.
+
 ** Extras for vc-git
 :PROPERTIES:
 :CUSTOM_ID: h:f1a1f462-b6db-415a-b8e6-ba23788cb6e3
diff --git a/agitate.el b/agitate.el
index 51f2f3df8c..730e0efa7e 100644
--- a/agitate.el
+++ b/agitate.el
@@ -230,6 +230,37 @@ to the text at point."
 (kill-new (format "%s" revision))
 (message "Copied: %s" revision)))
 
+(defun agitate--log-view-revision-expanded-bounds (&optional back)
+  "Return position of expanded log-view message.
+With optional BACK, find the beginning, else the end."
+  (let ((motion (if back
+(list 're-search-backward 'log-view-msg-prev 1)
+  (list 're-search-forward 'log-view-msg-next -1
+(save-excursion
+  (funcall (nth 0 motion) log-view-message-re nil t)
+  (forward-line (nth 2 motion))
+  (point
+
+  ;; TODO 2022-09-28: Maybe have a do-what-I-mean behaviour to expand
+  ;; the entry if necessary?  Or maybe expand it to get the message
+  ;; and then contract it again?  Keeping it simple seems appropriate,
+  ;; but we will see how this evolves.
+
+;;;###autoload
+(defun agitate-log-view-kill-revision-expanded ()
+  "PROTOTYPE Append to `kill-ring' expanded message of log-view revision at 
point."
+  (interactive nil log-view-mode)
+  (let ((pos (point)))
+;; TODO 2022-09-28: Also test when we are on the line of the
+;; revision, with the expanded entry right below.
+(when (log-view-inside-comment-p pos)
+  (kill-new
+   (buffer-substring-no-properties
+(agitate--log-view-revision-expanded-bounds :back)
+(agitate--log-view-revision-expanded-bounds)))
+  (message "Copied message of `%s' revision"
+   (cadr (log-view-current-entry pos t))
+
  Commands for vc-git (Git backend for the Version Control framework)
 
 (defun agitate--vc-git-get-hash-from-string (string)



[elpa] externals/agitate 8459e26050 45/67: Add helper prompt for commit log completion

2022-09-28 Thread ELPA Syncer
branch: externals/agitate
commit 8459e26050046ca7dd48528db1c1e0511c1661a7
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

Add helper prompt for commit log completion
---
 agitate.el | 14 ++
 1 file changed, 14 insertions(+)

diff --git a/agitate.el b/agitate.el
index 9ca24f4b5d..f4bdd0f4db 100644
--- a/agitate.el
+++ b/agitate.el
@@ -265,6 +265,20 @@ to the text at point."
   (when (string-match "\\b\\([0-9a-z]+\\) " string)
 (match-string 1 string)))
 
+(defun agitate--vc-git-commit-prompt (&optional file)
+  "Prompt for Git commit and return it as a string.
+With optional FILE, limit the commits to those pertinent to it."
+  (let ((default-directory (vc-root-dir)))
+(if file
+(completing-read
+ (format "Select revision of `%s': " file)
+ (process-lines vc-git-program "log" "--oneline" file)
+ nil t)
+  (completing-read
+   "Select revision: "
+   (process-lines vc-git-program "log" "--oneline" "--")
+   nil t
+
 ;;;###autoload
 (defun agitate-vc-git-grep (regexp)
   "Run `git-grep(1)' for REGEXP in `vc-root-dir'.



[elpa] externals/agitate ca4b65bf85 36/67: Add gitignore

2022-09-28 Thread ELPA Syncer
branch: externals/agitate
commit ca4b65bf857ed980549ea488e806abbe004325bd
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

Add gitignore
---
 .gitignore | 5 +
 1 file changed, 5 insertions(+)

diff --git a/.gitignore b/.gitignore
new file mode 100644
index 00..d6e91a56c7
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,5 @@
+*.elc
+*-autoloads.el
+*-pkg.el
+agitate.info
+agitate.texi



[elpa] externals/agitate dce39b452c 63/67: Make agitate-vc-git-kill-commit-message use completion

2022-09-28 Thread ELPA Syncer
branch: externals/agitate
commit dce39b452cefbe6bb719a9ae4a89f2657026070a
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

Make agitate-vc-git-kill-commit-message use completion
---
 README.org |  8 
 agitate.el | 28 
 2 files changed, 24 insertions(+), 12 deletions(-)

diff --git a/README.org b/README.org
index a2149f0584..74d4b68371 100644
--- a/README.org
+++ b/README.org
@@ -179,10 +179,10 @@ commits" are documented here: 
.
 
 #+findex: agitate-vc-git-kill-commit-message
 + ~agitate-vc-git-kill-commit-message~ :: Append to ~kill-ring~
-  message of commit with =HASH= identifier.  Prompt for =HASH= as a
-  string.  When point is in a log-view buffer, make the revision at
-  point the default value of the prompt.  This is useful to quote a
-  past commit message.
+  message of commit with HASH identifier. q When called interactively,
+  prompt for =HASH= using minibuffer completion.  When point is in a
+  log-view buffer, make the revision at point the default value of the
+  prompt.  This is useful to quote a past commit message.
 
 #+findex: agitate-vc-git-push-prompt-for-remote
 + ~agitate-vc-git-push-prompt-for-remote~ :: Behave like ~vc-git-push~
diff --git a/agitate.el b/agitate.el
index 164d0fae73..51f2f3df8c 100644
--- a/agitate.el
+++ b/agitate.el
@@ -326,22 +326,34 @@ arguments."
 
 (defun agitate--vc-git-kill-commit-message-prompt ()
   "Helper prompt for `agitate-vc-git-kill-commit-message'."
-  (if-let ((default-value (cadr (log-view-current-entry (point) t
-  (read-string (format "Commit HASH [%s]: " default-value)
-   nil 'agitate--vc-git-kill-commit-message-history 
default-value)
-(read-string "Commit HASH: " nil 
'agitate--vc-git-kill-commit-message-history)))
+  (let* ((default-value (cadr (log-view-current-entry (point) t)))
+ (prompt (if default-value
+ (format "Commit HASH [%s]: " default-value)
+   "Commit HASH: "))
+ (default-directory (vc-root-dir)))
+(completing-read
+ prompt
+ (process-lines vc-git-program "log" "--oneline" "--")
+ nil t nil
+ 'agitate--vc-git-kill-commit-message-history default-value)))
 
 ;;;###autoload
 (defun agitate-vc-git-kill-commit-message (hash)
   "Append to `kill-ring' message of commit with HASH identifier.
-Prompt for HASH as a string.  When point is in a log-view buffer,
-make the revision at point the default value of the prompt.
+When called interactively, prompt for HASH using minibuffer
+completion.
+
+When point is in a log-view buffer, make the revision at point
+the default value of the prompt.
 
 This is useful to quote a past commit message."
-  (interactive (list (agitate--vc-git-kill-commit-message-prompt)))
+  (interactive
+   (list
+(agitate--vc-git-get-hash-from-string
+ (agitate--vc-git-kill-commit-message-prompt
   (kill-new
(with-temp-buffer
- (apply 'vc-git-command t nil nil (list "log" hash "-1" "--stat" 
"--no-color" "--"))
+ (apply 'vc-git-command t nil nil (list "show" hash "--stat" "--no-color" 
"--"))
  (buffer-substring-no-properties (point-min) (point-max
   (message "Added %s commit message to `kill-ring'" hash))
 



[elpa] externals/agitate 3185f2becd 50/67: Clarify word in agitate-vc-git-grep doc string

2022-09-28 Thread ELPA Syncer
branch: externals/agitate
commit 3185f2becd019d7dddfb389343d32ce22dd64f17
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

Clarify word in agitate-vc-git-grep doc string
---
 README.org | 2 +-
 agitate.el | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/README.org b/README.org
index 97bbc9b5ec..e3fc949a8c 100644
--- a/README.org
+++ b/README.org
@@ -153,7 +153,7 @@ think most of those are superfluous.  Less is more.
   ~vc-root-dir~.  This is a simple wrapper around ~vc-git-grep~ to
   streamline the basic task of searching for a regexp in the current
   Git repository.  Use the original ~vc-git-grep~ for its other
-  features.
+  arguments.
 
 #+findex: agitate-vc-git-kill-commit-message
 + ~agitate-vc-git-kill-commit-message~ :: Append to ~kill-ring~
diff --git a/agitate.el b/agitate.el
index 0a6d48e0be..dbdac702aa 100644
--- a/agitate.el
+++ b/agitate.el
@@ -272,7 +272,7 @@ With optional FILE, limit the commits to those pertinent to 
it."
 This is a simple wrapper around `vc-git-grep' to streamline the
 basic task of searching for a regexp in the current Git
 repository.  Use the original `vc-git-grep' for its other
-features."
+arguments."
   (interactive (list (read-regexp "git-grep: " nil 'vc-git-history)))
   (vc-git-grep regexp "*" (vc-root-dir)))
 



[elpa] externals/agitate a3ee8251d4 01/67: Start recording file history

2022-09-28 Thread ELPA Syncer
branch: externals/agitate
commit a3ee8251d41c5e917e828ee3c5a736393350a7e8
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

Start recording file history
---
 agitate.el | 39 +++
 1 file changed, 39 insertions(+)

diff --git a/agitate.el b/agitate.el
new file mode 100644
index 00..4373fbb497
--- /dev/null
+++ b/agitate.el
@@ -0,0 +1,39 @@
+;;; agitate.el --- WORK-IN-PROGRESS -*- lexical-binding: t -*-
+
+;; Copyright (C) 2022  Free Software Foundation, Inc.
+
+;; Author: Protesilaos Stavrou 
+;; Maintainer: NOT-YET-AVAILABLE Development 
<~protesilaos/not-yet-availa...@lists.sr.ht>
+;; URL: https://git.sr.ht/~protesilaos/NOT-YET-AVAILABLE
+;; Mailing-List: https://lists.sr.ht/~protesilaos/NOT-YET-AVAILABLE
+;; Version: 0.0.0
+;; Package-Requires: ((emacs "27.1"))
+;; Keywords: convenience, version control, git
+
+;; 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:
+;;
+;; Another Git Interface Trying to Agitate Tranquil Emacsers.
+
+;;; Code:
+
+(defgroup agitate ()
+  "Work-in-progress."
+  :group 'vc)
+
+(provide 'agitate)
+;;; agitate.el ends here



[elpa] externals/agitate 69e8f87214 04/67: Add agitate-vc-git-push

2022-09-28 Thread ELPA Syncer
branch: externals/agitate
commit 69e8f87214bdc907bcdf28b2afa01d3792050156
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

Add agitate-vc-git-push
---
 agitate.el | 15 +++
 1 file changed, 15 insertions(+)

diff --git a/agitate.el b/agitate.el
index bb68c6cbf9..59c79d29cf 100644
--- a/agitate.el
+++ b/agitate.el
@@ -32,6 +32,7 @@
 ;;; Code:
 
 (require 'log-edit)
+(require 'vc-git)
 
 (defgroup agitate ()
   "Work-in-progress."
@@ -62,5 +63,19 @@ file extension.  Else omit it."
   (interactive "P" log-edit-mode)
   (insert (format "%s: " (agitate--log-edit-extract-file 
with-file-extension
 
+ Commands for vc-git (Git backend for the Version Control framework)
+
+(defun agitate--vc-git-prompt-remote ()
+  "Helper prompt for `agitate-git-push'."
+  (when-let ((remotes (process-lines vc-git-program "remote")))
+(if (length> remotes 1)
+(completing-read "Select Git remote: " remotes nil t)
+  (car remotes
+
+;;;###autoload
+(defun agitate-vc-git-push (prompt)
+  "Substitute for `vc-git-push' with the same meaning for PROMPT."
+  (vc-git--pushpull "push" prompt (unless prompt 
`(,(agitate--vc-git-prompt-remote)
+
 (provide 'agitate)
 ;;; agitate.el ends here



[elpa] externals/agitate 6604612c32 05/67: Add agitate-git-grep command

2022-09-28 Thread ELPA Syncer
branch: externals/agitate
commit 6604612c32af5d686515c6a4f6d0771cbfa17839
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

Add agitate-git-grep command
---
 agitate.el | 10 ++
 1 file changed, 10 insertions(+)

diff --git a/agitate.el b/agitate.el
index 59c79d29cf..c4c83cc432 100644
--- a/agitate.el
+++ b/agitate.el
@@ -77,5 +77,15 @@ file extension.  Else omit it."
   "Substitute for `vc-git-push' with the same meaning for PROMPT."
   (vc-git--pushpull "push" prompt (unless prompt 
`(,(agitate--vc-git-prompt-remote)
 
+;;;###autoload
+(defun agitate-git-grep (regexp)
+  "Run `git-grep(1)' for REGEXP in `vc-root-dir'.
+This is a simple wrapper around `vc-git-grep' to streamline the
+basic task of searching for a regexp in the current Git
+repository.  Use the original `vc-git-grep' for its other
+features."
+  (interactive (list (read-regexp "git-grep: " nil 'vc-git-history)))
+  (vc-git-grep regexp "*" (vc-root-dir)))
+
 (provide 'agitate)
 ;;; agitate.el ends here



[elpa] externals/agitate e7b6acb8f7 12/67: Limit agitate-diff-refine-cycle to diff-mode

2022-09-28 Thread ELPA Syncer
branch: externals/agitate
commit e7b6acb8f7ef19ab3fb64b93014290f7806285f6
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

Limit agitate-diff-refine-cycle to diff-mode
---
 agitate.el | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/agitate.el b/agitate.el
index 8f83c663e9..bc92483cb3 100644
--- a/agitate.el
+++ b/agitate.el
@@ -55,7 +55,8 @@ none exists, the one closest to it.  On second call, operate 
on
 the entire buffer.  And on the third time, remove all word-wise
 fontification."
   (interactive nil diff-mode)
-  (let ((point (point)))
+  (when-let (((derived-mode-p 'diff-mode))
+ (point (point)))
 (pcase agitate--refine-diff-state
   ('current
(setq-local diff-refine 'font-lock)



[elpa] externals/agitate 839892328b 28/67: Add missing backronym

2022-09-28 Thread ELPA Syncer
branch: externals/agitate
commit 839892328b73d2ba406976c1498faeaf29501ac8
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

Add missing backronym
---
 README.org | 1 +
 1 file changed, 1 insertion(+)

diff --git a/README.org b/README.org
index c6d8f1251b..b3e4d54782 100644
--- a/README.org
+++ b/README.org
@@ -37,6 +37,7 @@ Current development target is {{{development-version}}}.
 + GitHub: 
 + GitLab: 
 + Mailing list: 
++ Backronym: Another Git Interface Trying to Agitate Tranquil Emacsers
 
 If you are viewing the README.org version of this file, please note that
 the GNU ELPA machinery automatically generates an Info manual out of it.



[elpa] externals/agitate 2250f3d039 33/67: Expand the README.org

2022-09-28 Thread ELPA Syncer
branch: externals/agitate
commit 2250f3d039ed6b6f1585e8fe5e2065399337ba85
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

Expand the README.org
---
 README.org | 195 +
 1 file changed, 195 insertions(+)

diff --git a/README.org b/README.org
index b3e4d54782..af8bd78d8e 100644
--- a/README.org
+++ b/README.org
@@ -44,6 +44,201 @@ the GNU ELPA machinery automatically generates an Info 
manual out of it.
 
 #+toc: headlines 8 insert TOC here, with eight headline levels
 
+* Overview
+:PROPERTIES:
+:CUSTOM_ID: h:0a38126c-ebd0-4157-8af1-4b5bf259d685
+:END:
+
+Agitate is a collection of commands or potentially useful functions
+that expand on the available version control features of Emacs.  Those
+are meant to complement a workflow that relies on the built-in Version
+Control framework and its accoutrements (=diff-mode.el=,
+=log-view.el=, =log-edit.el=, =vc-git.el=, and potentially others).
+
+The following sections document the extras per their scope.
+
+** Extras for diff-mode
+:PROPERTIES:
+:CUSTOM_ID: h:ef659174-f1fe-46c9-ab2a-9089529ba0ac
+:END:
+
+#+findex: agitate-diff-refine-cycle
++ ~agitate-diff-refine-cycle~ :: Cycle current, all, or no refined
+  (word-wise) diff highlighting.  Upon first invocation, refine the
+  diff hunk at point or, when none exists, the one closest to it.  On
+  second call, operate on the entire buffer.  And on the third time,
+  remove all word-wise fontification.
+
+#+findex: agitate-diff-buffer-or-file
++ ~agitate-diff-buffer-or-file~ :: Produce a diff against the file or
+  latest revision.  If the buffer is modified, produce a diff that
+  compares its state to that of the corresponding file.  In simple
+  terms, show the latest unsaved changes. If the buffer is not
+  modified, produce a diff of the file relative to its latest
+  revision.
+
+#+findex: agitate-diff-narrow-dwim
++ ~agitate-diff-narrow-dwim~ :: Narrow to diff hunk or file and widen
+  when already narrowed.  By default narrow to the focused diff hunk.
+  With optional =NARROW-FILE= as a prefix argument, operate on the
+  current file instead.
+
+#+findex: agitate-diff-kill-dwim
++ ~agitate-diff-kill-dwim~ :: PROTOTYPE!!!  Kill hunk or remove the
+  plus/minus signs in current line/region.  When the region is active,
+  remove the plus or minus sign at the start of each line. When the
+  region is not active but point is on a line that starts with a plus
+  or minus sign, remove that sign.  Removing the plus or minus sign
+  means any subsequent commit will not account for them.  If no region
+  is active and the point is not on a line that starts with the plus
+  or minus sign, call `diff-hunk-kill' interactively.
+
+#+findex: agitate-diff-enable-outline-minor-mode
++ ~agitate-diff-enable-outline-minor-mode~ :: Enable
+  ~outline-minor-mode~ with appropriate tweaks for diffs.  This
+  basically gives you folding of diff hunks by means of the
+  ~outline-cycle~ command. Add this function to the ~diff-mode-hook~.
+
+** Extras for log-edit
+:PROPERTIES:
+:CUSTOM_ID: h:7b9679c7-1313-4f40-bfbf-2cabca2d3549
+:END:
+
+#+findex: agitate-log-edit-insert-file-name
++ ~agitate-log-edit-insert-file-name~ :: Insert at point file name
+  sans directory from ~log-edit-files~.  If multiple files are
+  involved, prompt with completion for one among them. With optional
+  prefix argument =WITH-FILE-EXTENSION=, include the file extension.
+  Else omit it.
+
+#+findex: agitate-log-edit-emoji-commit
++ ~agitate-log-edit-emoji-commit~ :: Insert =EMOJI-COMMIT= message at
+  point.  When called interactively, prompt for =EMOJI-COMMIT= among
+  the ~agitate-log-edit-emoji-collection~.
+
+#+vindex: agitate-log-edit-emoji-collection
++ ~agitate-log-edit-emoji-collection~ :: User option whose value is a
+  list of strings that represent completion candidates for
+  ~agitate-log-edit-emoji-commit~.  It is recommended to use the
+  =:EMOJI:= notation, as it works even in terminals that cannot output
+  Unicode.  Relevant applications will render those as their
+  corresponding graphical emoji.
+
+Relevant quote about the emoji commits from the source code:
+
+#+begin_src emacs-lisp
+;; TODO 2022-09-27: Learn about "conventional commits" and implement
+;; them like with `agitate-log-edit-emoji-commit':
+;; .
+#+end_src
+
+The emoji commits are inspired by , though I
+think most of those are superfluous.  Less is more.
+
+** Extras for log-view
+:PROPERTIES:
+:CUSTOM_ID: h:2a48ff74-6a8f-4fc6-9e14-c9e412857b2d
+:END:
+
+#+findex: agitate-log-view-kill-revision
++ ~agitate-log-view-kill-revision~ :: Append to ~kill-ring~ log-view
+  revision at or around point.  When the log-view is in the short
+  format (one compact line per revision), the revision is the one on
+  the current line.  If the revision is expanded with
+  ~log-view-expanded-log-entry-function~ and point is so

[elpa] externals/agitate 6eb66ed1cc 44/67: Add helper to extract commit hash

2022-09-28 Thread ELPA Syncer
branch: externals/agitate
commit 6eb66ed1cc287d4da23ef6a1166f2b49569dc0e5
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

Add helper to extract commit hash
---
 agitate.el | 5 +
 1 file changed, 5 insertions(+)

diff --git a/agitate.el b/agitate.el
index 34d036c6a5..9ca24f4b5d 100644
--- a/agitate.el
+++ b/agitate.el
@@ -260,6 +260,11 @@ to the text at point."
 
  Commands for vc-git (Git backend for the Version Control framework)
 
+(defun agitate--vc-git-get-hash-from-string (string)
+  "Return commit hash from STRING"
+  (when (string-match "\\b\\([0-9a-z]+\\) " string)
+(match-string 1 string)))
+
 ;;;###autoload
 (defun agitate-vc-git-grep (regexp)
   "Run `git-grep(1)' for REGEXP in `vc-root-dir'.



[elpa] externals/agitate 4192d8d892 51/67: Clarify doc of helper function

2022-09-28 Thread ELPA Syncer
branch: externals/agitate
commit 4192d8d892f98f33d037f6f5deba2de1c0f83fe5
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

Clarify doc of helper function
---
 agitate.el | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/agitate.el b/agitate.el
index dbdac702aa..c37ea99cba 100644
--- a/agitate.el
+++ b/agitate.el
@@ -232,7 +232,7 @@ to the text at point."
  Commands for vc-git (Git backend for the Version Control framework)
 
 (defun agitate--vc-git-get-hash-from-string (string)
-  "Return commit hash from STRING"
+  "Return commit hash from beginning of STRING"
   (when (string-match "\\b\\([0-9a-z]+\\) " string)
 (match-string 1 string)))
 



[elpa] externals/agitate 8bb7652cac 43/67: Rename to agitate-vc-git-grep

2022-09-28 Thread ELPA Syncer
branch: externals/agitate
commit 8bb7652cacd78fb05a6c33232aec1949a319ec42
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

Rename to agitate-vc-git-grep
---
 README.org | 4 ++--
 agitate.el | 2 +-
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/README.org b/README.org
index 10fea286d5..6cebf5132f 100644
--- a/README.org
+++ b/README.org
@@ -158,8 +158,8 @@ think most of those are superfluous.  Less is more.
 :CUSTOM_ID: h:f1a1f462-b6db-415a-b8e6-ba23788cb6e3
 :END:
 
-#+findex: agitate-git-grep
-+ ~agitate-git-grep~ :: Run ~git-grep(1)~ for =REGEXP= in
+#+findex: agitate-vc-git-grep
++ ~agitate-vc-git-grep~ :: Run ~git-grep(1)~ for =REGEXP= in
   ~vc-root-dir~.  This is a simple wrapper around ~vc-git-grep~ to
   streamline the basic task of searching for a regexp in the current
   Git repository.  Use the original ~vc-git-grep~ for its other
diff --git a/agitate.el b/agitate.el
index 5116cec958..34d036c6a5 100644
--- a/agitate.el
+++ b/agitate.el
@@ -261,7 +261,7 @@ to the text at point."
  Commands for vc-git (Git backend for the Version Control framework)
 
 ;;;###autoload
-(defun agitate-git-grep (regexp)
+(defun agitate-vc-git-grep (regexp)
   "Run `git-grep(1)' for REGEXP in `vc-root-dir'.
 This is a simple wrapper around `vc-git-grep' to streamline the
 basic task of searching for a regexp in the current Git



[elpa] externals/agitate 496eba8497 52/67: Add agitate-vc-git-show prototype

2022-09-28 Thread ELPA Syncer
branch: externals/agitate
commit 496eba849761c567a22d26e1b987319b99b9535a
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

Add agitate-vc-git-show prototype
---
 README.org |  5 +
 agitate.el | 18 +-
 2 files changed, 18 insertions(+), 5 deletions(-)

diff --git a/README.org b/README.org
index e3fc949a8c..17d9b61f30 100644
--- a/README.org
+++ b/README.org
@@ -148,6 +148,11 @@ think most of those are superfluous.  Less is more.
 :CUSTOM_ID: h:f1a1f462-b6db-415a-b8e6-ba23788cb6e3
 :END:
 
+#+findex: agitate-vc-git-show
++ ~agitate-vc-git-show~ :: PROTOTYPE.  Prompt for commit and run
+  =git-show(1)= on it. With optional =CURRENT-FILE= as prefix
+  argument, limit the commits to those pertaining to the current file.
+
 #+findex: agitate-vc-git-grep
 + ~agitate-vc-git-grep~ :: Run ~git-grep(1)~ for =REGEXP= in
   ~vc-root-dir~.  This is a simple wrapper around ~vc-git-grep~ to
diff --git a/agitate.el b/agitate.el
index c37ea99cba..cdc903371e 100644
--- a/agitate.el
+++ b/agitate.el
@@ -255,14 +255,22 @@ With optional FILE, limit the commits to those pertinent 
to it."
   "Buffer for showing a git commit.")
 
 ;;;###autoload
-(defun vc-git-show ()
-  "PROOF OF CONCEPT."
-  (interactive)
+(defun agitate-vc-git-show (&optional current-file)
+  "PROTOTYPE.
+
+Prompt for commit and run `git-show(1)' on it.
+With optional CURRENT-FILE as prefix argument, limit the commits
+to those pertaining to the current file."
+  (interactive "P")
   (when-let* ((file (caadr (vc-deduce-fileset))) ; FIXME 2022-09-27: Better 
way to get current file?
   (revision (agitate--vc-git-get-hash-from-string
- (agitate--vc-git-commit-prompt file)))
+ (agitate--vc-git-commit-prompt
+  (when current-file file
   (buf "*agitate-vc-git-show*"))
-(apply 'vc-git-command (get-buffer-create buf) nil file (list "show" 
revision))
+(apply 'vc-git-command (get-buffer-create buf) nil (when current-file file)
+   (list "show" "--patch-with-stat" revision))
+;; TODO 2022-09-27: What else do we need to set up in such a
+;; buffer?
 (with-current-buffer (pop-to-buffer buf)
   (diff-mode
 



[elpa] externals/agitate cbe4eed8b2 23/67: Add agitate-log-edit-emoji-commit command+option

2022-09-28 Thread ELPA Syncer
branch: externals/agitate
commit cbe4eed8b2fecd895ff2dc931563c352d44f2116
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

Add agitate-log-edit-emoji-commit command+option
---
 agitate.el | 33 +
 1 file changed, 33 insertions(+)

diff --git a/agitate.el b/agitate.el
index 30b5064e11..6a41f3e0eb 100644
--- a/agitate.el
+++ b/agitate.el
@@ -41,6 +41,23 @@
   :group 'diff
   :group 'vc)
 
+;; Inspired by , though I think most of those
+;; are superfluous.  Less is more.  THIS IS NOT an implementation of
+;; gitmoji.
+(defcustom agitate-log-edit-emoji-collection
+  '(":art: Refine"
+":bug: Fix"
+":memo: Document"
+":rocket: Update"
+":skull: Delete"
+":sparkles: Add")
+  "Completion candidates for `agitate-log-edit-emoji-commit'.
+It is recommended to use the :EMOJI: notation, as it works even
+in terminals that cannot output unicode.  Relevant applications
+will render those as their corresponding graphical emoji."
+  :type '(repeat string)
+  :group 'agitate)
+
  Commands for diffs
 
 (defvar-local agitate--refine-diff-state nil
@@ -198,6 +215,22 @@ file extension.  Else omit it."
   (interactive "P" log-edit-mode)
   (insert (format "%s: " (agitate--log-edit-extract-file 
with-file-extension
 
+(defvar agitate--log-edit-emoji-commit-history nil
+  "Minibuffer history of `agitate-log-edit-emoji-commit'.")
+
+;;;###autoload
+(defun agitate-log-edit-emoji-commit (emoji-commit)
+  "Insert EMOJI-COMMIT message at point.
+When called interactively, prompt for EMOJI-COMMIT among the
+`agitate-log-edit-emoji-collection'."
+  (interactive
+   (list
+(completing-read
+ "Select type of commit+emoji: "
+ agitate-log-edit-emoji-collection nil t nil
+ 'agitate--log-edit-emoji-commit-history)))
+  (insert emoji-commit))
+
  Commands for vc-git (Git backend for the Version Control framework)
 
 ;;;###autoload



[elpa] externals/agitate a9a8339126 46/67: Add PROOF OF CONCEPT vc-git-find-revision

2022-09-28 Thread ELPA Syncer
branch: externals/agitate
commit a9a833912613ff69c3440bf8569b36ee754eda13
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

Add PROOF OF CONCEPT vc-git-find-revision
---
 agitate.el | 17 +
 1 file changed, 17 insertions(+)

diff --git a/agitate.el b/agitate.el
index f4bdd0f4db..249efae604 100644
--- a/agitate.el
+++ b/agitate.el
@@ -279,6 +279,23 @@ With optional FILE, limit the commits to those pertinent 
to it."
(process-lines vc-git-program "log" "--oneline" "--")
nil t
 
+(defvar agitate-vc-git-show-buffer "*agitate-vc-git-show*"
+  "Buffer for showing a git commit.")
+
+;;;###autoload
+(defun vc-git-find-revision ()
+  "PROOF OF CONCEPT.
+
+Prompt for commit and visit it as a file."
+  (interactive)
+  (when-let* ((file (caadr (vc-deduce-fileset))) ; FIXME 2022-09-27: Better 
way to get current file?
+  (revision (agitate--vc-git-get-hash-from-string
+ (agitate--vc-git-commit-prompt file)))
+  (buf "*agitate-vc-git-show*"))
+(apply 'vc-git-command (get-buffer-create buf) nil file (list "show" 
revision))
+(with-current-buffer (pop-to-buffer buf)
+  (diff-mode
+
 ;;;###autoload
 (defun agitate-vc-git-grep (regexp)
   "Run `git-grep(1)' for REGEXP in `vc-root-dir'.



[elpa] externals/agitate 412834ce07 66/67: Fix file no dir in agitate--log-edit-extract-file

2022-09-28 Thread ELPA Syncer
branch: externals/agitate
commit 412834ce07c66be32ab231670b360d3a379ac63e
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

Fix file no dir in agitate--log-edit-extract-file
---
 agitate.el | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/agitate.el b/agitate.el
index 730e0efa7e..b8d7477e09 100644
--- a/agitate.el
+++ b/agitate.el
@@ -163,8 +163,8 @@ Add this function to the `diff-mode-hook'."
   (car files)))
   (name (file-name-nondirectory file)))
 (if with-file-extension
-file
-  (file-name-sans-extension file
+name
+  (file-name-sans-extension name
 
 ;;;###autoload
 (defun agitate-log-edit-insert-file-name (&optional with-file-extension)



[elpa] externals/agitate a32ed823b6 24/67: Add TODO about conventional commits

2022-09-28 Thread ELPA Syncer
branch: externals/agitate
commit a32ed823b674cc0d20e680592bfa58102dbd4176
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

Add TODO about conventional commits
---
 agitate.el | 4 
 1 file changed, 4 insertions(+)

diff --git a/agitate.el b/agitate.el
index 6a41f3e0eb..7c9d0d340e 100644
--- a/agitate.el
+++ b/agitate.el
@@ -58,6 +58,10 @@ will render those as their corresponding graphical emoji."
   :type '(repeat string)
   :group 'agitate)
 
+;; TODO 2022-09-27: Learn about "conventional commits" and implement
+;; them like with `agitate-log-edit-emoji-commit':
+;; .
+
  Commands for diffs
 
 (defvar-local agitate--refine-diff-state nil



[elpa] externals/agitate fa0a9e5260 42/67: Add echo to agitate-vc-git-kill-commit-message

2022-09-28 Thread ELPA Syncer
branch: externals/agitate
commit fa0a9e526098f496cbf3924b619ac5b16c2f2187
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

Add echo to agitate-vc-git-kill-commit-message
---
 agitate.el | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/agitate.el b/agitate.el
index ac15422f9d..5116cec958 100644
--- a/agitate.el
+++ b/agitate.el
@@ -298,7 +298,8 @@ This is useful to quote a past commit message."
   (kill-new
(with-temp-buffer
  (apply 'vc-git-command t nil nil (list "log" hash "-1" "--stat" 
"--no-color" "--"))
- (buffer-substring-no-properties (point-min) (point-max)
+ (buffer-substring-no-properties (point-min) (point-max
+  (message "Added %s commit message to `kill-ring'" hash))
 
 ;; TODO 2022-09-27: We can have something similar which prompts for a
 ;; branch to push to.  There are lots of possibilities.  The idea is



[elpa] externals/agitate 052d3e3570 61/67: Simplify agitate--vc-git-commit-prompt

2022-09-28 Thread ELPA Syncer
branch: externals/agitate
commit 052d3e357019be2f67e83291d73ab9bcc67f92ad
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

Simplify agitate--vc-git-commit-prompt
---
 agitate.el | 20 +---
 1 file changed, 9 insertions(+), 11 deletions(-)

diff --git a/agitate.el b/agitate.el
index e5c3ba3d23..88a22fe814 100644
--- a/agitate.el
+++ b/agitate.el
@@ -241,17 +241,15 @@ to the text at point."
   "Prompt for Git commit and return it as a string.
 With optional FILE, limit the commits to those pertinent to it.
 With optional LONG do not abbreviate commit hashes."
-  (let ((default-directory (vc-root-dir))
-(format (if long "--pretty=oneline" "--oneline")))
-(if file
-(completing-read
- (format "Select revision of `%s': " file)
- (process-lines vc-git-program "log" format file)
- nil t)
-  (completing-read
-   "Select revision: "
-   (process-lines vc-git-program "log" format "--")
-   nil t
+  (let* ((prompt (if file
+ (format "Select revision of `%s': " file)
+   "Select revision: "))
+ (commit-format (if long "--pretty=oneline" "--oneline"))
+ (default-directory (vc-root-dir)))
+(completing-read
+ prompt
+ (process-lines vc-git-program "log" commit-format (or file "--"))
+ nil t)))
 
 (defvar agitate-vc-git-show-buffer "*agitate-vc-git-show*"
   "Buffer for showing a git commit.")



[elpa] externals/agitate f736eb51a7 67/67: Tweak markup of "git-grep(1)"

2022-09-28 Thread ELPA Syncer
branch: externals/agitate
commit f736eb51a7e8c27758ee015c2506313c945464ab
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

Tweak markup of "git-grep(1)"
---
 README.org | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/README.org b/README.org
index db7ab5e17e..ed5207ac47 100644
--- a/README.org
+++ b/README.org
@@ -175,7 +175,7 @@ commits" are documented here: 
.
   #+end_src
 
 #+findex: agitate-vc-git-grep
-+ ~agitate-vc-git-grep~ :: Run ~git-grep(1)~ for =REGEXP= in
++ ~agitate-vc-git-grep~ :: Run =git-grep(1)= for =REGEXP= in
   ~vc-root-dir~.  This is a simple wrapper around ~vc-git-grep~ to
   streamline the basic task of searching for a regexp in the current
   Git repository.  Use the original ~vc-git-grep~ for its other



[elpa] externals/agitate 7564713208 29/67: Rewrite outline heading for diffs

2022-09-28 Thread ELPA Syncer
branch: externals/agitate
commit 75647132084b78381c1349ee162e69298c2e6981
Author: Protesilaos Stavrou 
Commit: Protesilaos Stavrou 

Rewrite outline heading for diffs
---
 agitate.el | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/agitate.el b/agitate.el
index 7c9d0d340e..352b7ec592 100644
--- a/agitate.el
+++ b/agitate.el
@@ -62,7 +62,7 @@ will render those as their corresponding graphical emoji."
 ;; them like with `agitate-log-edit-emoji-commit':
 ;; .
 
- Commands for diffs
+ Commands for diff-mode
 
 (defvar-local agitate--refine-diff-state nil
   "Current state of `agitate-diff-refine-cycle'.")



[elpa] externals/consult 1343e39fef: Preview full matches

2022-09-28 Thread ELPA Syncer
branch: externals/consult
commit 1343e39fefcf8a28a7a415aa4b0a8ff7094370bf
Author: Daniel Mendler 
Commit: Daniel Mendler 

Preview full matches

- Highlight full matches in consult-line, consult-outline, consult-*grep and
  consult-flymake.
- Introduce face consult-highlight-match to highlight grep matches in the
  completion buffer.
- Remove face consult-preview-error.

See discussion in https://github.com/minad/consult/pull/653

cc @jyp, @oantolin
---
 CHANGELOG.org  |   5 ++
 consult-compile.el |   2 +-
 consult-flymake.el |   7 +-
 consult.el | 189 +++--
 4 files changed, 105 insertions(+), 98 deletions(-)

diff --git a/CHANGELOG.org b/CHANGELOG.org
index 11bde87fd4..d203566b0b 100644
--- a/CHANGELOG.org
+++ b/CHANGELOG.org
@@ -6,6 +6,11 @@
 
 - Bugfixes
 - Allow =consult-*-args= to be a string, or a list of strings or expressions.
+- Introduce face =consult-highlight-match= to highlight grep matches in the
+  completion buffer.
+- Highlight full matches in =consult-line=, =consult-outline=, =consult-*grep= 
and
+  =consult-flymake=.
+- Remove face =consult-preview-error=.
 
 * Version 0.19 (2022-09-09)
 
diff --git a/consult-compile.el b/consult-compile.el
index 9f8b00b5a0..c03df216b6 100644
--- a/consult-compile.el
+++ b/consult-compile.el
@@ -87,7 +87,7 @@
 
 (defun consult-compile--state ()
   "Like `consult--jump-state', also setting the current compilation error."
-  (let ((state (consult--jump-state 'consult-preview-error)))
+  (let ((state (consult--jump-state)))
 (lambda (action marker)
   (let ((pos (consult-compile--lookup marker)))
 (when-let (buffer (and (eq action 'return)
diff --git a/consult-flymake.el b/consult-flymake.el
index 3eebf58790..2d9644fa58 100644
--- a/consult-flymake.el
+++ b/consult-flymake.el
@@ -51,6 +51,7 @@ DIAGS should be a list of diagnostics as returned from 
`flymake-diagnostics'."
type
(flymake-diagnostic-text diag)
(point-marker)
+   (flymake-diagnostic-end diag)
(pcase (flymake--lookup-type-property type 
'flymake-category)
   ('flymake-error ?e)
   ('flymake-warning ?w)
@@ -60,14 +61,14 @@ DIAGS should be a list of diagnostics as returned from 
`flymake-diagnostics'."
  (line-width (apply #'max (mapcar (lambda (x) (length 
(number-to-string (nth 1 x diags)))
  (fmt (format "%%-%ds %%-%dd %%-7s %%s" buffer-width line-width)))
 (mapcar
- (pcase-lambda (`(,buffer ,line ,type ,text ,marker ,narrow))
+ (pcase-lambda (`(,buffer ,line ,type ,text ,beg ,end ,narrow))
(propertize (format fmt buffer line
(propertize (format "%s" 
(flymake--lookup-type-property
  type 'flymake-type-name 
type))
'face (flymake--lookup-type-property
   type 'mode-line-face 
'flymake-error))
text)
-   'consult--candidate marker
+   'consult--candidate (list beg (cons 0 (- end beg)))
'consult--type narrow))
  ;; Sort by buffer, severity and position.
  (sort diags
@@ -108,7 +109,7 @@ buffers in the current project instead of just the current 
buffer."
:group (consult--type-group consult-flymake--narrow)
:narrow (consult--type-narrow consult-flymake--narrow)
:lookup #'consult--lookup-candidate
-   :state (consult--jump-state 'consult-preview-error)))
+   :state (consult--jump-state)))
 
 (provide 'consult-flymake)
 ;;; consult-flymake.el ends here
diff --git a/consult.el b/consult.el
index 1cc1a15e84..3a51926b80 100644
--- a/consult.el
+++ b/consult.el
@@ -348,17 +348,17 @@ Each element of the list must have the form \\='(char 
name handler)."
   '((t :inherit consult-preview-insertion :extend t))
   "Face used for line previews.")
 
-(defface consult-preview-match
+(defface consult-highlight-match
   '((t :inherit match))
-  "Face used for match previews in `consult-grep'.")
+  "Face used to highlight matches in the completion candidates, e.g., in 
`consult-grep'.")
 
-(defface consult-preview-cursor
-  '((t :inherit consult-preview-match))
-  "Face used for cursor previews and marks in `consult-mark'.")
+(defface consult-preview-match
+  '((t :inherit isearch))
+  "Face used for match previews, e.g., in `consult-line'.")
 
-(defface consult-preview-error
-  '((t :inherit isearch-fail))
-  "Face used for cursor previews and marks in `consult-compile-error'.")
+(defface consult-preview-cursor
+  '((t :inherit cursor))
+  "Face used for cursor previews and marks, e.g., in `consult-mark'.")
 
 (defface consult-preview-insertion
   '((t :inherit region))
@@ -584,7 +584,7 @@ if IGNORE-CASE is 

  1   2   >