[elpa] externals/company 0a0cdad605 2/3: Fix byte-compilation warning

2025-02-22 Thread ELPA Syncer
branch: externals/company
commit 0a0cdad605fcd0f985cc7818734a174fb8d07d2c
Author: Dmitry Gutov 
Commit: Dmitry Gutov 

Fix byte-compilation warning
---
 company.el | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/company.el b/company.el
index f471fcc6e0..56dd0a9129 100644
--- a/company.el
+++ b/company.el
@@ -3647,7 +3647,8 @@ If SHOW-VERSION is non-nil, show the version in the echo 
area."
   (mapcar
(lambda (c) (cons c (company-call-backend 'annotation c)))
cc)
-  current-capf (car company-capf--current-completion-data))
+  current-capf (car (bound-and-true-p
+ company-capf--current-completion-data)))
   (error (setq annotations 'error)
 (pop-to-buffer (get-buffer-create "*company-diag*"))
 (setq buffer-read-only nil)



[nongnu] elpa/gptel 3fdcb2256a 1/2: README: Restructure FAQ

2025-02-22 Thread ELPA Syncer
branch: elpa/gptel
commit 3fdcb2256a0365f4608be0c1bf8406619c53938e
Author: Karthik Chikmagalur 
Commit: Karthik Chikmagalur 

README: Restructure FAQ

* README.org (FAQ): Restructure and add headers.  Add FAQ item on
transient menu spawning extra windows (#583, #656).
---
 README.org | 65 +++---
 1 file changed, 41 insertions(+), 24 deletions(-)

diff --git a/README.org b/README.org
index b5f8bb7f79..e156647a42 100644
--- a/README.org
+++ b/README.org
@@ -121,14 +121,18 @@ gptel uses Curl if available, but falls back to the 
built-in url-retrieve to wor
 - [[#rewrite-refactor-or-fill-in-a-region][Rewrite, refactor or fill in a 
region]]
 - [[#extra-org-mode-conveniences][Extra Org mode conveniences]]
   - [[#faq][FAQ]]
-  - 
[[#i-want-to-use-gptel-in-a-way-thats-not-supported-by-gptel-send-or-the-options-menu][I
 want to use gptel in a way that's not supported by =gptel-send= or the options 
menu]]
+- [[#chat-buffer-ui][Chat buffer UI]]
   - 
[[#i-want-the-window-to-scroll-automatically-as-the-response-is-inserted][I 
want the window to scroll automatically as the response is inserted]]
   - 
[[#i-want-the-cursor-to-move-to-the-next-prompt-after-the-response-is-inserted][I
 want the cursor to move to the next prompt after the response is inserted]]
   - [[#i-want-to-change-the-formatting-of-the-prompt-and-llm-response][I 
want to change the formatting of the prompt and LLM response]]
+  - 
[[#how-does-gptel-distinguish-between-user-prompts-and-llm-responses][How does 
gptel distinguish between user prompts and LLM responses?]]
+- [[#transient-menu-behavior][Transient menu behavior]]
   - 
[[#i-want-the-transient-menu-options-to-be-saved-so-i-only-need-to-set-them-once][I
 want the transient menu options to be saved so I only need to set them once]]
+  - [[#using-the-transient-menu-leaves-behind-extra-windows][Using the 
transient menu leaves behind extra windows]]
   - [[#can-i-change-the-transient-menu-key-bindings][Can I change the 
transient menu key bindings?]]
-  - 
[[#how-does-gptel-distinguish-between-user-prompts-and-llm-responses][How does 
gptel distinguish between user prompts and LLM responses?]]
   - 
[[#doom-emacs-sending-a-query-from-the-gptel-menu-fails-because-of-a-key-conflict-with-org-mode][(Doom
 Emacs) Sending a query from the gptel menu fails because of a key conflict 
with Org mode]]
+- [[#miscellaneous][Miscellaneous]]
+  - 
[[#i-want-to-use-gptel-in-a-way-thats-not-supported-by-gptel-send-or-the-options-menu][I
 want to use gptel in a way that's not supported by =gptel-send= or the options 
menu]]
   - 
[[#chatgpt-i-get-the-error-http2-429-you-exceeded-your-current-quota][(ChatGPT) 
I get the error "(HTTP/2 429) You exceeded your current quota"]]
   - [[#why-another-llm-client][Why another LLM client?]]
   - [[#additional-configuration][Additional Configuration]]
@@ -1124,15 +1128,7 @@ You can declare the gptel model, backend, temperature, 
system message and other
 
 ** FAQ
 #+html: 
- I want to use gptel in a way that's not supported by =gptel-send= or the 
options menu
-#+html: 
-
-gptel's default usage pattern is simple, and will stay this way: Read input in 
any buffer and insert the response below it.  Some custom behavior is possible 
with the transient menu (=C-u M-x gptel-send=).
-
-For more programmable usage, gptel provides a general =gptel-request= function 
that accepts a custom prompt and a callback to act on the response. You can use 
this to build custom workflows not supported by =gptel-send=.  See the 
documentation of =gptel-request=, and the 
[[https://github.com/karthink/gptel/wiki/Defining-custom-gptel-commands][wiki]] 
for examples.
-
-#+html: 
-#+html: 
+*** Chat buffer UI
  I want the window to scroll automatically as the response is inserted
 #+html: 
 
@@ -1155,7 +1151,6 @@ To be minimally annoying, gptel does not move the cursor 
by default.  Add the fo
 
 You can also call =gptel-end-of-response= as a command at any time.
 
-
 #+html: 
 #+html: 
  I want to change the formatting of the prompt and LLM response
@@ -1167,6 +1162,18 @@ Anywhere in Emacs: Use =gptel-pre-response-hook= and 
=gptel-post-response-functi
 
 #+html: 
 #+html: 
+ How does gptel distinguish between user prompts and LLM responses?
+#+html: 
+
+gptel uses 
[[https://www.gnu.org/software/emacs/manual/html_node/elisp/Text-Properties.html][text-properties]]
 to watermark LLM responses.  Thus this text is interpreted as a response even 
if you copy it into another buffer.  In regular buffers (buffers without 
=gptel-mode= enabled), you can turn off this tracking by unsetting 
=gptel-track-response=.
+
+When restoring a chat state from a file on disk, gptel will apply these 
properties from saved metadata in the file when you turn on =gptel-mode=.
+
+gptel does /not/ use any prefix or semantic/syntax element in the buffer (such 
as

[nongnu] elpa/gptel updated (5d5610dfb6 -> aa62573ee7)

2025-02-22 Thread ELPA Syncer
elpasync pushed a change to branch elpa/gptel.

  from  5d5610dfb6 gptel-rewrite: Appease byte-compiler
   new  3fdcb2256a README: Restructure FAQ
   new  aa62573ee7 README: Restructure FAQ (fix typo)


Summary of changes:
 README.org | 65 +++---
 1 file changed, 41 insertions(+), 24 deletions(-)



[nongnu] elpa/gptel aa62573ee7 2/2: README: Restructure FAQ (fix typo)

2025-02-22 Thread ELPA Syncer
branch: elpa/gptel
commit aa62573ee7b14830ffa1cdb3709e588b8fa64f2e
Author: Karthik Chikmagalur 
Commit: Karthik Chikmagalur 

README: Restructure FAQ (fix typo)

* README.org (FAQ): Fix typo in previous commit.
---
 README.org | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/README.org b/README.org
index e156647a42..b4f50d26b0 100644
--- a/README.org
+++ b/README.org
@@ -1127,8 +1127,8 @@ Note: using this option requires Org 9.7 or higher to be 
available.  The [[https
 You can declare the gptel model, backend, temperature, system message and 
other parameters as Org properties with the command =gptel-org-set-properties=. 
 gptel queries under the corresponding heading will always use these settings, 
allowing you to create mostly reproducible LLM chat notebooks, and to have 
simultaneous chats with different models, model settings and directives under 
different Org headings.
 
 ** FAQ
-#+html: 
 *** Chat buffer UI
+#+html: 
  I want the window to scroll automatically as the response is inserted
 #+html: 
 



[nongnu] elpa/helm updated (969f80fa66 -> 4ccdefb7d0)

2025-02-22 Thread ELPA Syncer
elpasync pushed a change to branch elpa/helm.

  from  969f80fa66 Remove helm-locate-override-inheritor (#2710)
   new  b425d885ef Remove helm-browse-project-override-inheritor no more 
needed
   new  4ccdefb7d0 Remove helm-bookmark-override-inheritor no more needed


Summary of changes:
 helm-bookmark.el | 10 ++
 helm-files.el|  7 ++-
 2 files changed, 4 insertions(+), 13 deletions(-)



[elpa] externals/company 5bb6f6d3d4 3/3: Fix one more warning

2025-02-22 Thread ELPA Syncer
branch: externals/company
commit 5bb6f6d3d44ed919378e6968a06feed442165545
Author: Dmitry Gutov 
Commit: Dmitry Gutov 

Fix one more warning
---
 company.el | 1 +
 1 file changed, 1 insertion(+)

diff --git a/company.el b/company.el
index 56dd0a9129..1646e1fcd2 100644
--- a/company.el
+++ b/company.el
@@ -3607,6 +3607,7 @@ Example: \(company-begin-with \\='\(\"foo\" \"foobar\" 
\"foobarbaz\"\)\)"
 
 (declare-function find-library-name "find-func")
 (declare-function lm-version "lisp-mnt")
+(declare-function lm-header "lisp-mnt")
 
 (defun company-version (&optional show-version)
   "Get the Company version as string.



[elpa] externals/company 64e86efc38 1/3: Adapt company-version to the MELPA change

2025-02-22 Thread ELPA Syncer
branch: externals/company
commit 64e86efc386317bbc2974c15830a164f26284990
Author: Dmitry Gutov 
Commit: Dmitry Gutov 

Adapt company-version to the MELPA change

Fixes #1508
---
 company.el | 9 ++---
 1 file changed, 6 insertions(+), 3 deletions(-)

diff --git a/company.el b/company.el
index 2f99d30593..f471fcc6e0 100644
--- a/company.el
+++ b/company.el
@@ -3617,9 +3617,12 @@ If SHOW-VERSION is non-nil, show the version in the echo 
area."
 (require 'find-func)
 (insert-file-contents (find-library-name "company"))
 (require 'lisp-mnt)
-(if show-version
-(message "Company version: %s" (lm-version))
-  (lm-version
+;; `lm-package-version' was added in 2025.
+(let ((version (or (or (lm-header "package-version")
+   (lm-version)
+  (if show-version
+  (message "Company version: %s" version)
+version
 
 (defun company-diag ()
   "Pop a buffer with information about completions at point."



[nongnu] elpa/helm b425d885ef 1/2: Remove helm-browse-project-override-inheritor no more needed

2025-02-22 Thread ELPA Syncer
branch: elpa/helm
commit b425d885ef3a28c4d0c4803c57c4e01236b7a0d8
Author: Thierry Volpiatto 
Commit: Thierry Volpiatto 

Remove helm-browse-project-override-inheritor no more needed
---
 helm-files.el | 7 ++-
 1 file changed, 2 insertions(+), 5 deletions(-)

diff --git a/helm-files.el b/helm-files.el
index 39c135bc33..8a0be0790e 100644
--- a/helm-files.el
+++ b/helm-files.el
@@ -6864,10 +6864,7 @@ Use FD as backend."
   "Run `helm-grep' AG from `helm-browse-project'."
   'helm-browse-project-ag)
 
-(defclass helm-browse-project-override-inheritor (helm-type-file) ())
-
-(defclass helm-browse-project-source (helm-source-in-buffer
-  helm-browse-project-override-inheritor)
+(defclass helm-browse-project-source (helm-source-in-buffer helm-type-file)
   ((root-dir :initarg :root-dir
  :initform nil
  :custom 'file)
@@ -6887,7 +6884,7 @@ Use FD as backend."
   "Class to define a source in `helm-browse-project' handling non
 VC handled directories.")
 
-(cl-defmethod helm--setup-source :after ((source 
helm-browse-project-override-inheritor))
+(cl-defmethod helm--setup-source :after ((source helm-browse-project-source))
   (let ((actions (slot-value source 'action)))
 (setf (slot-value source 'action)
   (helm-append-at-nth



[elpa] externals/popper 91b71955db: popper: Bump version to 0.4.8

2025-02-22 Thread ELPA Syncer
branch: externals/popper
commit 91b71955db19014d7139191660272c736458d87d
Author: Karthik Chikmagalur 
Commit: Karthik Chikmagalur 

popper: Bump version to 0.4.8

* popper.el: Tag version 0.4.8
* popper-echo.el: Tag version 0.4.8
---
 popper-echo.el | 2 +-
 popper.el  | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/popper-echo.el b/popper-echo.el
index cbb82d8c71..6fbbc41b65 100644
--- a/popper-echo.el
+++ b/popper-echo.el
@@ -3,7 +3,7 @@
 ;; Copyright (C) 2023 Free Software Foundation, Inc.
 
 ;; Author: Karthik Chikmagalur 
-;; Version: 0.45
+;; Version: 0.4.8
 ;; Package-Requires: ((emacs "26.1"))
 ;; Keywords: convenience
 ;; URL: https://github.com/karthink/popper
diff --git a/popper.el b/popper.el
index 2b16e269b9..42a6fdf3ec 100644
--- a/popper.el
+++ b/popper.el
@@ -3,7 +3,7 @@
 ;; Copyright (C) 2023 Free Software Foundation, Inc.
 
 ;; Author: Karthik Chikmagalur 
-;; Version: 0.4.6
+;; Version: 0.4.8
 ;; Package-Requires: ((emacs "26.1"))
 ;; Keywords: convenience
 ;; URL: https://github.com/karthink/popper



[elpa] externals/bicep-ts-mode 5ca1392096 2/2: Replace recursionc with named-let.

2025-02-22 Thread ELPA Syncer
branch: externals/bicep-ts-mode
commit 5ca1392096a827d5faebc17330c4a43cbeb35e08
Author: Jostein Kjønigsen 
Commit: Jostein Kjønigsen 

Replace recursionc with named-let.

Does TCO and is better for performance.
---
 bicep-ts-mode.el | 26 --
 1 file changed, 12 insertions(+), 14 deletions(-)

diff --git a/bicep-ts-mode.el b/bicep-ts-mode.el
index d19aee6255..06017e5ad4 100644
--- a/bicep-ts-mode.el
+++ b/bicep-ts-mode.el
@@ -160,23 +160,21 @@ Return nil if there is no name or if NODE is not a defun 
node."
(treesit-node-child defun-node 1)
t
 
+;; required due to named-let.
+(eval-when-compile (require 'subr-x))
 (defun bicep-ts-mode--find-declaration-node (node)
   "Search up the tree from NODE for a node whose type contains `declaration'.
 Return the first matching node, or nil if none is found."
-  (when node
-(if (string-match-p "declaration" (treesit-node-type node))
-node
-  ;; FIXME: Recursion is elegant, but ELisp's implementation handles
-  ;; it rather poorly, so it's best avoided when not too hard.
-  ;; Maybe use `named-let', which does TCO?
-  ;;
-  ;;(named-let loop ((node node))
-  ;;  (if (string-match-p "declaration" (treesit-node-type node))
-  ;;  node
-  ;;(loop (treesit-node-parent node
-  ;;
-  ;; [ Needs (eval-when-compile (require 'subr-x)) ]
-  (bicep-ts-mode--find-declaration-node (treesit-node-parent node)
+
+  ;; Recursion is elegant, but ELisp's implementation handles
+  ;; it rather poorly, so it's best avoided when not too hard.
+  ;; Instead use  `named-let', which does TCO?
+  ;; NOTE: requires subr-x.
+  (named-let loop ((node node))
+(when node
+  (if (string-match-p "declaration" (treesit-node-type node))
+  node
+(loop (treesit-node-parent node))
 
 ;;;###autoload
 (define-derived-mode bicep-ts-mode prog-mode "Bicep"



[elpa] externals/bicep-ts-mode updated (34939118c3 -> 5ca1392096)

2025-02-22 Thread ELPA Syncer
elpasync pushed a change to branch externals/bicep-ts-mode.

  from  34939118c3 Provide more detailed installation instructions.
   new  654a00647b Apply fixes suggested by Stefan Monnier.
   new  5ca1392096 Replace recursionc with named-let.


Summary of changes:
 bicep-ts-mode.el | 44 ++--
 1 file changed, 26 insertions(+), 18 deletions(-)



[elpa] externals/dape c41ee1c259 09/11: Fixing build warnings from usage of when-let and if-let

2025-02-22 Thread ELPA Syncer
branch: externals/dape
commit c41ee1c2596a520262ef82b9ee3e12a348e20df1
Author: Daniel Pettersson 
Commit: Daniel Pettersson 

Fixing build warnings from usage of when-let and if-let
---
 dape.el | 250 
 1 file changed, 125 insertions(+), 125 deletions(-)

diff --git a/dape.el b/dape.el
index 8eeffe6a29..97100dbd8f 100644
--- a/dape.el
+++ b/dape.el
@@ -242,8 +242,8 @@
 ,@(let ((js-debug
  `( ensure ,(lambda (config)
   (dape-ensure-command config)
-  (when-let ((runtime-executable
-  (dape-config-get config 
:runtimeExecutable)))
+  (when-let* ((runtime-executable
+   (dape-config-get config 
:runtimeExecutable)))
 (dape--ensure-executable runtime-executable))
   (let ((dap-debug-server-path
  (car (plist-get config 'command-args
@@ -307,9 +307,9 @@
  command-args ["--interpreter=vscode"]
  :request "launch"
  :cwd dape-cwd
- :program (if-let ((dlls
-(file-expand-wildcards
- (file-name-concat "bin" "Debug" "*" "*.dll"
+ :program (if-let* ((dlls
+ (file-expand-wildcards
+  (file-name-concat "bin" "Debug" "*" "*.dll"
   (file-relative-name (file-relative-name (car dlls)))
 ".dll")
  :stopAtEntry nil)
@@ -357,7 +357,7 @@
  fn (lambda (config)
   (with-current-buffer
   (find-file-noselect (dape-config-get config :filePath))
-(if-let ((server (eglot-current-server)))
+(if-let* ((server (eglot-current-server)))
(pcase-let ((`[,module-paths ,class-paths]
 (eglot-execute-command server
 
"vscode.java.resolveClasspath"
@@ -961,7 +961,7 @@ by `dape--threads-make-update-handle'."
 
 (defun dape--thread-id-object (conn)
   "Construct a thread id object for CONN."
-  (when-let ((thread-id (dape--thread-id conn)))
+  (when-let* ((thread-id (dape--thread-id conn)))
 (list :threadId thread-id)))
 
 (defun dape--stopped-threads (conn)
@@ -1034,28 +1034,28 @@ See `dape--path-1'."
   "Return marker created from PLIST and CONN config.
 Marker is created from PLIST keys :source and :line.
 Note requires `dape--source-ensure' if source is by reference."
-  (when-let ((source (plist-get plist :source))
- (line (or (plist-get plist :line) 1))
- (buffer (or
-  ;; Take buffer by source reference
-  (when-let* ((reference (plist-get source 
:sourceReference))
-  (buffer (plist-get dape--source-buffers 
reference))
-  ((buffer-live-p buffer)))
-buffer)
-  ;; Take buffer by path
-  (when-let* ((remote-path (plist-get source :path))
-  (path (dape--path-local conn remote-path))
-  ((file-exists-p path)))
-(find-file-noselect path t)
+  (when-let* ((source (plist-get plist :source))
+  (line (or (plist-get plist :line) 1))
+  (buffer (or
+   ;; Take buffer by source reference
+   (when-let* ((reference (plist-get source 
:sourceReference))
+   (buffer (plist-get dape--source-buffers 
reference))
+   ((buffer-live-p buffer)))
+ buffer)
+   ;; Take buffer by path
+   (when-let* ((remote-path (plist-get source :path))
+   (path (dape--path-local conn remote-path))
+   ((file-exists-p path)))
+ (find-file-noselect path t)
 (dape--with-line buffer line
-  (when-let ((column (plist-get plist :column)))
+  (when-let* ((column (plist-get plist :column)))
 (when (> column 0)
   (forward-char (1- column
   (point-marker
 
 (defun dape--default-cwd ()
   "Try to guess current project absolute file path with `project'."
-  (or (when-let ((project (project-current)))
+  (or (when-let* ((project (project-current)))
 (expand-file-name (project-root project)))
   default-directory))
 
@@ -1104,9 +1104,9 @@ the value of config key `port'."
  ((eq arg :autoport) port-string)
  ((stringp arg) (string-replace ":autoport" 
port-string arg))
  (t arg)
-(when-let ((command-args (plist-get config 'command-args)))
+(when-let* ((command-args (plis

[elpa] externals/dape f89b1610ed 10/11: Small disassembly fixups

2025-02-22 Thread ELPA Syncer
branch: externals/dape
commit f89b1610edbec2598d568a7a1ae73b12b0006063
Author: Daniel Pettersson 
Commit: Daniel Pettersson 

Small disassembly fixups
---
 dape.el | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/dape.el b/dape.el
index 97100dbd8f..d3fbe90b99 100644
--- a/dape.el
+++ b/dape.el
@@ -2897,8 +2897,7 @@ of memory read."
  :instructionCount ,count
  :offset 0
  :instructionOffset ,(- (/ count 2) count)
- :resolveSymbols t
- ))
+ :resolveSymbols t))
   (with-current-buffer (get-buffer-create "*dape-disassemble*")
 (dape-disassemble-mode)
 (erase-buffer)
@@ -2931,7 +2930,7 @@ of memory read."
(plist-get instruction :address)
(plist-get instruction :instruction))
'line-prefix
-   (when (and current-line-p (not current-instruction-p))
+   (when current-line-p
  (dape--indicator "|" 'vertical-bar nil))
'dape--disassemble-instruction instruction)))
 (setq-local revert-buffer-function



[elpa] externals/dape 626ed5b3fc 06/11: Small fixups

2025-02-22 Thread ELPA Syncer
branch: externals/dape
commit 626ed5b3fc7b1027111b298455dabf5080d13c4f
Author: Daniel Pettersson 
Commit: Daniel Pettersson 

Small fixups
---
 dape.el | 9 -
 1 file changed, 4 insertions(+), 5 deletions(-)

diff --git a/dape.el b/dape.el
index cc75de7e25..eecff1f746 100644
--- a/dape.el
+++ b/dape.el
@@ -2827,7 +2827,7 @@ When BACKWARD is non nil move backward instead."
   "Revert all `dape-memory-mode' buffers."
   (dape--with-debounce dape--memory-debounce-timer dape-ui-debounce-time
 (cl-loop for buffer in (buffer-list)
- when (eq (with-current-buffer buffer major-mode) 
'dape-memory-mode)
+ when (eq (buffer-local-value 'major-mode buffer) 
'dape-memory-mode)
  do (with-current-buffer buffer (revert-buffer)
 
 (defun dape-read-memory (address &optional reuse-buffer)
@@ -2962,7 +2962,7 @@ of memory read."
#'dape--breakpoint-find-file-hook)))
 
 (defun dape--breakpoint-find-file-hook ()
-  "Convert cons breakpoints into overlay breakpoints.
+  "Convert PATH-LINE breakpoints into overlay breakpoints.
 Used as an hook on `find-file-hook'."
   (when (buffer-file-name (current-buffer))
 (cl-loop with breakpoints-in-buffer =
@@ -3057,8 +3057,7 @@ If there are breakpoints at current line remove those 
breakpoints from
 Handling restoring margin if necessary."
   (let ((buffer (dape--breakpoint-buffer breakpoint)))
 (with-slots (overlay) breakpoint
-  (when overlay
-(delete-overlay overlay))
+  (when overlay (delete-overlay overlay))
   (setf overlay nil))
 (when (and
;; Buffer margin has been touched
@@ -3268,7 +3267,7 @@ Helper for `dape--stack-frame-display'."
 dape-display-source-buffer-action)))
   ;; Change selected window if not `dape-repl' buffer is selected
   (unless (with-current-buffer (window-buffer)
-(memq major-mode '(dape-repl-mode)))
+(memq major-mode '(dape-repl-mode dape-disassemble-mode)))
 (select-window window))
   (with-selected-window window
 ;; XXX We are running within timer context, which does not



[elpa] externals/dape updated (00761f5614 -> 8670837cbb)

2025-02-22 Thread ELPA Syncer
elpasync pushed a change to branch externals/dape.

  from  00761f5614 Apply comint filter before echoing shell to repl
   new  05adad637c Clarify repl no input message
   new  e80e4c8b12 Improce custom docs
   new  f79ef67201 Use inlay hints by default
   new  106d9d22d1 Add disabling/enabling of source breakpoints
   new  2edca597d2 Clarify memory address in dape-memory-mode
   new  626ed5b3fc Small fixups
   new  353e9e1055 Add missing docstring
   new  878f78e1cb Add disassemble viewer
   new  c41ee1c259 Fixing build warnings from usage of when-let and if-let
   new  f89b1610ed Small disassembly fixups
   new  8670837cbb Clarify REPL using last input


Summary of changes:
 dape.el | 584 +---
 1 file changed, 335 insertions(+), 249 deletions(-)



[elpa] externals/dape f79ef67201 03/11: Use inlay hints by default

2025-02-22 Thread ELPA Syncer
branch: externals/dape
commit f79ef67201cb3c427b5f4c50ad1d90f0c49d17d3
Author: Daniel Pettersson 
Commit: Daniel Pettersson 

Use inlay hints by default
---
 dape.el | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/dape.el b/dape.el
index 63669c8296..d412dfdd3a 100644
--- a/dape.el
+++ b/dape.el
@@ -648,7 +648,7 @@ left-to-right display order of the properties."
   "Max length of file name in dape info buffers."
   :type 'integer)
 
-(defcustom dape-inlay-hints nil
+(defcustom dape-inlay-hints t
   "Inlay variable hints."
   :type '(choice (const :tag "No inlay hints." nil)
  (const :tag "Inlay current line and previous line (same as 
2)." t)



[elpa] externals/dape 05adad637c 01/11: Clarify repl no input message

2025-02-22 Thread ELPA Syncer
branch: externals/dape
commit 05adad637c0b3a9e70a35bba13625ca5208cf6c7
Author: Daniel Pettersson 
Commit: Daniel Pettersson 

Clarify repl no input message
---
 dape.el | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/dape.el b/dape.el
index 531f1257fb..e15d1448f8 100644
--- a/dape.el
+++ b/dape.el
@@ -4484,7 +4484,7 @@ Called by `comint-input-sender' in `dape-repl-mode'."
((and (string-empty-p input)
  (not (string-empty-p (car (ring-elements comint-input-ring)
 (when-let ((last (car (ring-elements comint-input-ring
-  (message "Using last command %s" last)
+  (message "Repeating last input `%s'" last)
   (dape--repl-input-sender dummy-process last)))
;; Run command from `dape-named-commands'
((pcase-let* ((`(,cmd . ,args)



[elpa] externals/dape e80e4c8b12 02/11: Improce custom docs

2025-02-22 Thread ELPA Syncer
branch: externals/dape
commit e80e4c8b124ef03f74ad66d44c20adfc191a4b25
Author: Daniel Pettersson 
Commit: Daniel Pettersson 

Improce custom docs
---
 dape.el | 39 ---
 1 file changed, 20 insertions(+), 19 deletions(-)

diff --git a/dape.el b/dape.el
index e15d1448f8..63669c8296 100644
--- a/dape.el
+++ b/dape.el
@@ -648,6 +648,16 @@ left-to-right display order of the properties."
   "Max length of file name in dape info buffers."
   :type 'integer)
 
+(defcustom dape-inlay-hints nil
+  "Inlay variable hints."
+  :type '(choice (const :tag "No inlay hints." nil)
+ (const :tag "Inlay current line and previous line (same as 
2)." t)
+ (natnum :tag "Number of lines with hints.")))
+
+(defcustom dape-inlay-hints-variable-name-max 25
+  "Max length of variable name in inlay hints."
+  :type 'integer)
+
 (defcustom dape-repl-echo-shell-output nil
   "Echo dape shell output in repl."
   :type 'boolean)
@@ -710,26 +720,27 @@ The hook is run with one argument, the compilation buffer 
when
 compilation is successful."
   :type 'hook)
 
+(defcustom dape-minibuffer-hint t
+  "Show `dape-configs' hints in minibuffer."
+  :type 'boolean)
+
 (defcustom dape-minibuffer-hint-ignore-properties
   '( ensure fn modes command command-args command-env command-insert-stderr
  defer-launch-attach :type :request)
-  "Properties to be hidden in `dape--minibuffer-hint'."
+  "Properties to be ignored in minibuffer \"Run adapter\" hints.
+See `dape-minibuffer-hint'."
   :type '(repeat symbol))
 
-(defcustom dape-minibuffer-hint t
-  "Show `dape-configs' hints in minibuffer."
-  :type 'boolean)
-
 (defcustom dape-history-add 'input
   "How to push configuration options onto `dape-history'.
 
 - input: Store input as is read from minibuffer.
 - evaled: Input is evaluated then checked against base configuration
   in `dape-configs'.  Each options that differ from base are stored.
-- dash-form: Like evaled but stores options in dash form if possible.
-  With dash form characters after - are interpret in sh like format
-  with ENV PROGRAM ARGS.  This is useful for adapters which accepts
-  :env, :program and :args as launch options.
+- evaled-dash-form: Like evaled but stores options in dash form if
+  possible.  With dash form characters after - are interpret in sh
+  like format with ENV PROGRAM ARGS.  This is useful for adapters
+  which accepts :env, :program and :args as launch options.
   Example: \"launch - ENV=value program arg1 arg2\""
   :type '(choice (const :tag "Input" input)
 (const :tag "Evaluated input" evaled)
@@ -4695,16 +4706,6 @@ Empty input will rerun last command.\n\n"
 
 ;;; Inlay hints
 
-(defcustom dape-inlay-hints nil
-  "Inlay variable hints."
-  :type '(choice (const :tag "No inlay hints." nil)
- (const :tag "Inlay current line and previous line (same as 
2)." t)
- (natnum :tag "Number of lines with hints.")))
-
-(defcustom dape-inlay-hints-variable-name-max 25
-  "Max length of variable name in inlay hints."
-  :type 'integer)
-
 (defface dape-inlay-hint-face '((t (:height 0.8 :inherit shadow)))
   "Face used for inlay-hint overlays.")
 



[elpa] externals/dape 8670837cbb 11/11: Clarify REPL using last input

2025-02-22 Thread ELPA Syncer
branch: externals/dape
commit 8670837cbbb96384577b38470efa13118994f6b1
Author: Daniel Pettersson 
Commit: Daniel Pettersson 

Clarify REPL using last input
---
 dape.el | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/dape.el b/dape.el
index d3fbe90b99..7784d29bb9 100644
--- a/dape.el
+++ b/dape.el
@@ -4579,7 +4579,7 @@ Called by `comint-input-sender' in `dape-repl-mode'."
((and (string-empty-p input)
  (not (string-empty-p (car (ring-elements comint-input-ring)
 (when-let* ((last (car (ring-elements comint-input-ring
-  (message "Repeating last input `%s'" last)
+  (message "Using last input `%s'" last)
   (dape--repl-input-sender dummy-process last)))
;; Run command from `dape-named-commands'
((pcase-let* ((`(,cmd . ,args)



[elpa] externals/dape 878f78e1cb 08/11: Add disassemble viewer

2025-02-22 Thread ELPA Syncer
branch: externals/dape
commit 878f78e1cbb5f92d87cf8492668658073a71ce8b
Author: Daniel Pettersson 
Commit: Daniel Pettersson 

Add disassemble viewer
---
 dape.el | 93 -
 1 file changed, 92 insertions(+), 1 deletion(-)

diff --git a/dape.el b/dape.el
index 34e5b0e68e..8eeffe6a29 100644
--- a/dape.el
+++ b/dape.el
@@ -562,7 +562,8 @@ variable should be expanded by default."
   :type 'hook)
 
 (define-obsolete-variable-alias 'dape-on-stopped-hooks 'dape-stopped-hook 
"0.13.0")
-(defcustom dape-stopped-hook '(dape-memory-revert dape--emacs-grab-focus)
+(defcustom dape-stopped-hook '( dape-memory-revert dape-disassemble-revert
+dape--emacs-grab-focus)
   "Called when session stopped."
   :type 'hook)
 
@@ -2853,6 +2854,95 @@ of memory read."
 (setq dape--memory-address address)
 (revert-buffer))
   (select-window (display-buffer buffer)
+
+
+;;; Disassemble viewer
+
+(defvar-local dape--disassemble-overlay-arrow nil)
+
+(add-to-list 'overlay-arrow-variable-list 'dape--disassemble-overlay-arrow)
+
+(define-derived-mode dape-disassemble-mode asm-mode "Disassemble"
+  :interactive nil
+  (setq-local dape--disassemble-overlay-arrow (make-marker)
+  dape-stepping-granularity 'instruction))
+
+(defvar dape--disassemble-debounce-timer (timer-create)
+  "Debounce context for `dape-disassemble-revert'.")
+
+(defun dape-disassemble-revert ()
+  "Revert all `dape-disassemble-mode' buffers."
+  (dape--with-debounce dape--disassemble-debounce-timer dape-ui-debounce-time
+(cl-loop for buffer in (buffer-list)
+ when (eq (buffer-local-value 'major-mode buffer)
+  'dape-disassemble-mode)
+ do (with-current-buffer buffer (revert-buffer)
+
+(defun dape-disassemble (memory-reference count)
+  "Disassemble COUNT instructions around MEMORY-REFERENCE."
+  (interactive
+   (list
+(string-trim
+ (read-string "Address: " nil nil
+  (when-let ((number (thing-at-point 'number)))
+(format "0x%08x" number
+100))
+  (if-let* ((conn (dape--live-connection 'stopped))
+((not (dape--capable-p conn :supportsDisassembleRequest
+  (user-error "Adapter does not support disassemble")
+(dape--with-request-bind
+((&key ((:instructions instructions)) &allow-other-keys) _)
+(dape-request conn 'disassemble
+  `( :memoryReference ,memory-reference
+ :instructionCount ,count
+ :offset 0
+ :instructionOffset ,(- (/ count 2) count)
+ :resolveSymbols t
+ ))
+  (with-current-buffer (get-buffer-create "*dape-disassemble*")
+(dape-disassemble-mode)
+(erase-buffer)
+(cl-loop
+ with last-symbol
+ with ps = (plist-get (dape--current-stack-frame conn)
+  :instructionPointerReference)
+ with source = (plist-get (dape--current-stack-frame conn) :source)
+ with line = (plist-get (dape--current-stack-frame conn) :line)
+ for instruction across instructions
+ for adress = (plist-get instruction :address)
+ for current-instruction-p = (equal adress ps)
+ for current-line-p =
+ (and (equal (plist-get instruction :location) source)
+  (equal (plist-get instruction :line) line))
+ do
+ (when-let* ((symbol (plist-get instruction :symbol))
+ ((not (equal last-symbol symbol
+   (insert
+(concat "; " (setq last-symbol symbol) " of "
+(thread-first instruction
+  (plist-get :location)
+  (plist-get :name)))
+":\n"))
+ (when current-instruction-p
+   (move-marker dape--disassemble-overlay-arrow (point)))
+ (insert
+  (propertize
+   (format "%s:\t%s\n"
+   (plist-get instruction :address)
+   (plist-get instruction :instruction))
+   'line-prefix
+   (when (and current-line-p (not current-instruction-p))
+ (dape--indicator "|" 'vertical-bar nil))
+   'dape--disassemble-instruction instruction)))
+(setq-local revert-buffer-function
+(lambda (&rest _)
+  (dape-disassemble memory-reference count)))
+(with-selected-window (display-buffer (current-buffer))
+  (goto-char
+   (or (marker-position dape--disassemble-overlay-arrow)
+   (point-min)))
+  (run-hooks 'dape-display-source-hook))
+
 
 ;;; Breakpoints
 
@@ -5401,6 +5491,7 @@ mouse-1: Display minor mode menu"
 (define-key map "i" #'dape-info)
 (define-key map "R" #'dape-repl)
 (define-key map "m" #'dape-read-memory)

[elpa] externals/dape 106d9d22d1 04/11: Add disabling/enabling of source breakpoints

2025-02-22 Thread ELPA Syncer
branch: externals/dape
commit 106d9d22d19dd183df74ca79a60c0aba0a919c00
Author: Daniel Pettersson 
Commit: Daniel Pettersson 

Add disabling/enabling of source breakpoints

By with additional breakpoint struct field source breakpoints possible
to be disabled/enabled.
---
 dape.el | 192 +++-
 1 file changed, 93 insertions(+), 99 deletions(-)

diff --git a/dape.el b/dape.el
index d412dfdd3a..61c0115b1a 100644
--- a/dape.el
+++ b/dape.el
@@ -1401,7 +1401,7 @@ See `dape--connection-selected'."
 
 (cl-defstruct (dape--breakpoint (:constructor dape--breakpoint-make))
   "Breakpoint object storing location and state."
-  overlay path-line type value hits verified id)
+  overlay path-line type value disabled hits verified id)
 
 (cl-defmethod jsonrpc-convert-to-endpoint ((conn dape-connection)
message subtype)
@@ -1568,34 +1568,34 @@ timeout period is configurable with 
`dape-request-timeout'"
   "Set breakpoints in SOURCE for adapter CONN.
 SOURCE is expected to be buffer or name of file.
 See `dape-request' for expected CB signature."
-  (cl-loop with breakpoints = (thread-last dape--breakpoints
-   (seq-group-by 
#'dape--breakpoint-source)
-   (assoc source)
-   (cdr))
+  (cl-loop with breakpoints =
+   (alist-get source (seq-group-by #'dape--breakpoint-source
+   dape--breakpoints))
for breakpoint in breakpoints
for line = (dape--breakpoint-line breakpoint)
-   collect breakpoint into response-breakpoints
-   collect (dape--breakpoint-line breakpoint) into lines
-   collect (let ((source-breakpoint `(:line ,line)))
- (pcase (dape--breakpoint-type breakpoint)
-   ('log
-(if (dape--capable-p conn :supportsLogPoints)
-(plist-put source-breakpoint
-   :logMessage (dape--breakpoint-value 
breakpoint))
-  (dape--warn "Adapter does not support 
`dape-breakpoint-log'")))
-   ('expression
-(if (dape--capable-p conn 
:supportsConditionalBreakpoints)
-(plist-put source-breakpoint
-   :condition (dape--breakpoint-value 
breakpoint))
-  (dape--warn "Adapter does not support 
`dape-breakpoint-expression'")))
-   ('hits
-(if (dape--capable-p conn 
:supportsHitConditionalBreakpoints)
-(plist-put source-breakpoint
-   :hitCondition (dape--breakpoint-value 
breakpoint))
-  (dape--warn "Adapter does not support 
`dape-breakpoint-hits'"
- source-breakpoint)
-   into source-breakpoints
-   finally do
+   unless (dape--breakpoint-disabled breakpoint)
+   collect breakpoint into request-breakpoints and
+   collect line into lines and
+   collect
+   (let ((source-breakpoint `(:line ,line)))
+ (pcase (dape--breakpoint-type breakpoint)
+   ('log
+(if (dape--capable-p conn :supportsLogPoints)
+(plist-put source-breakpoint
+   :logMessage (dape--breakpoint-value breakpoint))
+  (dape--warn "Adapter does not support 
`dape-breakpoint-log'")))
+   ('expression
+(if (dape--capable-p conn :supportsConditionalBreakpoints)
+(plist-put source-breakpoint
+   :condition (dape--breakpoint-value breakpoint))
+  (dape--warn "Adapter does not support 
`dape-breakpoint-expression'")))
+   ('hits
+(if (dape--capable-p conn :supportsHitConditionalBreakpoints)
+(plist-put source-breakpoint
+   :hitCondition (dape--breakpoint-value 
breakpoint))
+  (dape--warn "Adapter does not support 
`dape-breakpoint-hits'"
+ source-breakpoint)
+   into source-breakpoints finally do
(dape--with-request-bind
((&key ((:breakpoints updates)) &allow-other-keys) error)
(dape-request
@@ -1616,7 +1616,7 @@ See `dape-request' for expected CB signature."
  (if error
  (dape--warn "Failed to set breakpoints in %s; %s" source 
error)
(cl-loop for update across updates
-for breakpoint in response-breakpoints do
+for breakpoint in request-breakpoints do
 (dape--breakpoint-update conn breakpoint update))

[elpa] externals/hiddenquote 8e22eaea70: New command: hiddenquote-delete-char

2025-02-22 Thread ELPA Syncer
branch: externals/hiddenquote
commit 8e22eaea70bae693c3e86fb9d16769534b549a61
Author: Mauro Aranda 
Commit: Mauro Aranda 

New command: hiddenquote-delete-char

This change improves the management of characters in the
hiddenquote-character widget, so its size stays consistently at 1
space.

* lisp/hiddenquote.el (hiddenquote-delete-char): New command.
(hiddenquote-character-map): Bind it to C-d.
---
 hiddenquote.el | 9 +
 1 file changed, 9 insertions(+)

diff --git a/hiddenquote.el b/hiddenquote.el
index 534d12e85a..49b16a920b 100644
--- a/hiddenquote.el
+++ b/hiddenquote.el
@@ -315,6 +315,7 @@ allow running the command after exiting Isearch."
 (define-key map [end] #'hiddenquote-move-end-of-word)
 (define-key map "\C-j" #'hiddenquote-next)
 ;; Editing.
+(define-key map "\C-d" #'hiddenquote-delete-char)
 (define-key map "\C-k" #'hiddenquote-kill-word)
 (define-key map [(control shift backspace)] #'hiddenquote-kill-whole-word)
 (define-key map [backspace] #'hiddenquote-delete-backward-char)
@@ -1422,6 +1423,14 @@ Character cell bindings:
 (setq-local tool-bar-map hiddenquote-tool-bar-map)))
 
 ;; Commands.
+(defun hiddenquote-delete-char ()
+  "Replacement for `delete-char' inside `hiddenquote-character' widgets.
+
+Doesn't really delete the character, rather it changes it for an empty space."
+  (interactive)
+  (let ((w (widget-at)))
+(widget-value-set w " ")))
+
 (defun hiddenquote-kill-word ()
   "Starting at point, delete the rest of the characters of the current word."
   (interactive)



[elpa] externals/dape 353e9e1055 07/11: Add missing docstring

2025-02-22 Thread ELPA Syncer
branch: externals/dape
commit 353e9e105580635b73ff8bf48d2d38d043ba160f
Author: Daniel Pettersson 
Commit: Daniel Pettersson 

Add missing docstring
---
 dape.el | 8 +---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/dape.el b/dape.el
index eecff1f746..34e5b0e68e 100644
--- a/dape.el
+++ b/dape.el
@@ -2916,8 +2916,8 @@ of memory read."
  "edit break hit condition" 
#'dape-mouse-breakpoint-hits))
   (_
(overlay-put ov 'before-string
-(dape--icon dape-breakpoint-margin-string 'breakpoint
-(or disabled-face 
'dape-breakpoint-face)
+(dape--indicator dape-breakpoint-margin-string 
'breakpoint
+ (or disabled-face 
'dape-breakpoint-face)
 (setf overlay ov)
 
 (dape--mouse-command dape-mouse-breakpoint-toggle
@@ -2980,7 +2980,9 @@ Used as an hook on `find-file-hook'."
 (defvar dape--original-margin nil
   "Bookkeeping for buffer margin width.")
 
-(defun dape--icon (string bitmap face)
+(defun dape--indicator (string bitmap face)
+  "Return indicator string in margin (STRING) or fringe (BITMAP).
+The indicator is `propertize'd with with FACE."
   (if (and (window-system)
(not (eql (frame-parameter (selected-frame) 'left-fringe) 0)))
   (propertize " " 'display `(left-fringe ,bitmap ,face))



[elpa] externals/bicep-ts-mode 654a00647b 1/2: Apply fixes suggested by Stefan Monnier.

2025-02-22 Thread ELPA Syncer
branch: externals/bicep-ts-mode
commit 654a00647bb51c7b96b6491d09aa7456ed9a7da5
Author: Jostein Kjønigsen 
Commit: Jostein Kjønigsen 

Apply fixes suggested by Stefan Monnier.

Fix paren-balance issue while at it :)
---
 bicep-ts-mode.el | 38 --
 1 file changed, 24 insertions(+), 14 deletions(-)

diff --git a/bicep-ts-mode.el b/bicep-ts-mode.el
index 2aa8f535c0..d19aee6255 100644
--- a/bicep-ts-mode.el
+++ b/bicep-ts-mode.el
@@ -1,6 +1,6 @@
 ;;; bicep-ts-mode.el --- tree-sitter support for Bicep  -*- lexical-binding: 
t; -*-
 
-;; Copyright (C) 2023-2024 Free Software Foundation, Inc.
+;; Copyright (C) 2023-2025 Free Software Foundation, Inc.
 
 ;; Author : Jostein Kjønigsen 
 ;; Maintainer : Jostein Kjønigsen 
@@ -45,13 +45,13 @@
 (defcustom bicep-ts-mode-indent-offset 2
   "Number of spaces for each indentation step in `bicep-ts-mode'."
   :type 'natnum
-  :safe 'natnump
-  :group 'bicep)
+  :safe #'natnump)
 
 (defcustom bicep-ts-mode-default-langserver-path 
"$HOME/.vscode/extensions/ms-azuretools.vscode-bicep-*/bicepLanguageServer/Bicep.LangServer.dll"
-  "Default expression used to locate Bicep Languageserver.  If found, added to 
eglot."
-  :type 'string
-  :group 'bicep)
+  ;; FIXME: Document the ability to use $ENV vars and glob patterns?
+  "Default expression used to locate Bicep Languageserver.
+If found, added to eglot."
+  :type 'string)
 
 (defvar bicep-ts-mode-syntax-table
   (let ((table (make-syntax-table)))
@@ -147,6 +147,7 @@
   "Font-lock settings for BICEP.")
 
 (defun bicep-langserver-path ()
+  ;; Note: In GNU land, we call this a file name, not a path.
   (car (file-expand-wildcards
 (substitute-in-file-name bicep-ts-mode-default-langserver-path
 
@@ -157,20 +158,29 @@ Return nil if there is no name or if NODE is not a defun 
node."
 (when defun-node
   (treesit-node-text
(treesit-node-child defun-node 1)
-   t)
+   t
 
 (defun bicep-ts-mode--find-declaration-node (node)
-  "Recursively search up the tree from NODE for a node whose type contains 
'declaration'.
+  "Search up the tree from NODE for a node whose type contains `declaration'.
 Return the first matching node, or nil if none is found."
   (when node
 (if (string-match-p "declaration" (treesit-node-type node))
 node
+  ;; FIXME: Recursion is elegant, but ELisp's implementation handles
+  ;; it rather poorly, so it's best avoided when not too hard.
+  ;; Maybe use `named-let', which does TCO?
+  ;;
+  ;;(named-let loop ((node node))
+  ;;  (if (string-match-p "declaration" (treesit-node-type node))
+  ;;  node
+  ;;(loop (treesit-node-parent node
+  ;;
+  ;; [ Needs (eval-when-compile (require 'subr-x)) ]
   (bicep-ts-mode--find-declaration-node (treesit-node-parent node)
 
 ;;;###autoload
 (define-derived-mode bicep-ts-mode prog-mode "Bicep"
   "Major mode for editing BICEP, powered by tree-sitter."
-  :group 'bicep-mode
 
   (if (not (treesit-ready-p 'bicep))
   (message "Please run `M-x treesit-install-language-grammar RET bicep'")
@@ -222,11 +232,11 @@ Return the first matching node, or nil if none is found."
. bicep-ts-mode
 
 ;;;###autoload
-(eval-after-load 'eglot
-  '(and (file-exists-p (bicep-langserver-path))
-(progn
-  (add-to-list 'eglot-server-programs
-   `(bicep-ts-mode . ("dotnet" 
,(bicep-langserver-path)))
+(with-eval-after-load 'eglot
+  (defvar eglot-server-programs)
+  (and (file-exists-p (bicep-langserver-path))
+   (add-to-list 'eglot-server-programs
+`(bicep-ts-mode . ("dotnet" ,(bicep-langserver-path))
 
 (provide 'bicep-ts-mode)
 



[elpa] externals/dape 2edca597d2 05/11: Clarify memory address in dape-memory-mode

2025-02-22 Thread ELPA Syncer
branch: externals/dape
commit 2edca597d2a14bc15b0973a049f7d135601164f2
Author: Daniel Pettersson 
Commit: Daniel Pettersson 

Clarify memory address in dape-memory-mode
---
 dape.el | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/dape.el b/dape.el
index 61c0115b1a..cc75de7e25 100644
--- a/dape.el
+++ b/dape.el
@@ -2803,7 +2803,7 @@ Using BUFFER and STR."
   :interactive nil
   (setq revert-buffer-function #'dape--memory-revert
 mode-line-buffer-identification
-(append mode-line-buffer-identification '(" " dape--memory-address))
+(append mode-line-buffer-identification '(" {" dape--memory-address 
"}"))
 eldoc-documentation-functions nil))
 
 (define-key dape-memory-mode-map "\C-x]" #'dape-memory-next-page)



[elpa] externals/dape 03f4fc2fd2 1/2: Disassemle change to int comparisons for addresses

2025-02-22 Thread ELPA Syncer
branch: externals/dape
commit 03f4fc2fd28e4028cb20e41120e9f35ed73e1e30
Author: Daniel Pettersson 
Commit: Daniel Pettersson 

Disassemle change to int comparisons for addresses
---
 dape.el | 91 +++--
 1 file changed, 49 insertions(+), 42 deletions(-)

diff --git a/dape.el b/dape.el
index 7784d29bb9..1ba7dc0072 100644
--- a/dape.el
+++ b/dape.el
@@ -2898,49 +2898,56 @@ of memory read."
  :offset 0
  :instructionOffset ,(- (/ count 2) count)
  :resolveSymbols t))
-  (with-current-buffer (get-buffer-create "*dape-disassemble*")
-(dape-disassemble-mode)
-(erase-buffer)
-(cl-loop
- with last-symbol
- with ps = (plist-get (dape--current-stack-frame conn)
-  :instructionPointerReference)
- with source = (plist-get (dape--current-stack-frame conn) :source)
- with line = (plist-get (dape--current-stack-frame conn) :line)
- for instruction across instructions
- for adress = (plist-get instruction :address)
- for current-instruction-p = (equal adress ps)
- for current-line-p =
- (and (equal (plist-get instruction :location) source)
-  (equal (plist-get instruction :line) line))
- do
- (when-let* ((symbol (plist-get instruction :symbol))
- ((not (equal last-symbol symbol
+  (cl-flet ((address-to-int (address)
+  (string-to-number (substring address 2) 16)))
+(with-current-buffer (get-buffer-create "*dape-disassemble*")
+  (dape-disassemble-mode)
+  (erase-buffer)
+  (cl-loop
+   with last-symbol with last-location
+   with ps =
+   (address-to-int (plist-get (dape--current-stack-frame conn)
+  :instructionPointerReference))
+   with source = (plist-get (dape--current-stack-frame conn) :source)
+   with line = (plist-get (dape--current-stack-frame conn) :line)
+   for instruction across instructions
+   for address = (address-to-int (plist-get instruction :address))
+   for current-instruction-p = (equal address ps)
+   for location =
+   (setq last-location
+ ;; Forward fill all location if missing as per spec
+ (or (plist-get instruction :location) last-location))
+   for current-line-p =
+   (and (equal location source)
+(equal (plist-get instruction :line) line))
+   do
+   (when-let* ((symbol (plist-get instruction :symbol))
+   ((not (equal last-symbol symbol
+ (insert
+  (concat "; " (setq last-symbol symbol) " of "
+  (thread-first instruction
+(plist-get :location)
+(plist-get :name)))
+  ":\n"))
+   (when current-instruction-p
+ (move-marker dape--disassemble-overlay-arrow (point)))
(insert
-(concat "; " (setq last-symbol symbol) " of "
-(thread-first instruction
-  (plist-get :location)
-  (plist-get :name)))
-":\n"))
- (when current-instruction-p
-   (move-marker dape--disassemble-overlay-arrow (point)))
- (insert
-  (propertize
-   (format "%s:\t%s\n"
-   (plist-get instruction :address)
-   (plist-get instruction :instruction))
-   'line-prefix
-   (when current-line-p
- (dape--indicator "|" 'vertical-bar nil))
-   'dape--disassemble-instruction instruction)))
-(setq-local revert-buffer-function
-(lambda (&rest _)
-  (dape-disassemble memory-reference count)))
-(with-selected-window (display-buffer (current-buffer))
-  (goto-char
-   (or (marker-position dape--disassemble-overlay-arrow)
-   (point-min)))
-  (run-hooks 'dape-display-source-hook))
+(propertize
+ (format "%s:\t%s\n"
+ (plist-get instruction :address)
+ (plist-get instruction :instruction))
+ 'line-prefix
+ (when current-line-p
+   (dape--indicator "|" 'vertical-bar nil))
+ 'dape--disassemble-instruction instruction)))
+  (setq-local revert-buffer-function
+  (lambda (&rest _)
+(dape-disassemble memory-reference count)))
+  (with-selected-window (display-buffer (current-buffer))
+(goto-char
+ (or (marker-position dape--disassemble-overlay-arrow)
+ (point-min)))
+(run-hooks 'dape-dis

[elpa] externals/dape updated (8670837cbb -> c0075ef06e)

2025-02-22 Thread ELPA Syncer
elpasync pushed a change to branch externals/dape.

  from  8670837cbb Clarify REPL using last input
   new  03f4fc2fd2 Disassemle change to int comparisons for addresses
   new  c0075ef06e Improve dape-disassemble and dape-read-memory prompts


Summary of changes:
 dape.el | 95 +++--
 1 file changed, 51 insertions(+), 44 deletions(-)



[elpa] externals/dape c0075ef06e 2/2: Improve dape-disassemble and dape-read-memory prompts

2025-02-22 Thread ELPA Syncer
branch: externals/dape
commit c0075ef06ec71a2f741dbece1939ec98a264df23
Author: Daniel Pettersson 
Commit: Daniel Pettersson 

Improve dape-disassemble and dape-read-memory prompts
---
 dape.el | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/dape.el b/dape.el
index 1ba7dc0072..1ba48c6972 100644
--- a/dape.el
+++ b/dape.el
@@ -2837,7 +2837,7 @@ If REUSE-BUFFER is non nil reuse the current buffer to 
display result
 of memory read."
   (interactive
(list (string-trim
-  (read-string "Address: " nil nil
+  (read-string "Read memory from address: " nil nil
(when-let* ((number (thing-at-point 'number)))
  (format "0x%08x" number))
   (let ((conn (dape--live-connection 'stopped)))
@@ -2883,7 +2883,7 @@ of memory read."
   (interactive
(list
 (string-trim
- (read-string "Address: " nil nil
+ (read-string "Disassemble around address: " nil nil
   (when-let* ((number (thing-at-point 'number)))
 (format "0x%08x" number
 100))



[nongnu] elpa/helm updated (9fa856925c -> 969f80fa66)

2025-02-22 Thread ELPA Syncer
elpasync pushed a change to branch elpa/helm.

  from  9fa856925c Add message about EMACS_COMMAND in Make file
   new  fba5f9654f Fix echo call in make file
   new  969f80fa66 Remove helm-locate-override-inheritor (#2710)


Summary of changes:
 Makefile   | 2 +-
 helm-locate.el | 6 ++
 2 files changed, 3 insertions(+), 5 deletions(-)



[nongnu] elpa/helm fba5f9654f 1/2: Fix echo call in make file

2025-02-22 Thread ELPA Syncer
branch: elpa/helm
commit fba5f9654f0dab97c3bc845bd7c6fe5bab0fc6cd
Author: Thierry Volpiatto 
Commit: Thierry Volpiatto 

Fix echo call in make file
---
 Makefile | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/Makefile b/Makefile
index b0b0a929ff..2429fef13b 100644
--- a/Makefile
+++ b/Makefile
@@ -79,7 +79,7 @@ compile: $(ELC)
 
 # Compile all files at once
 batch-compile:
-   echo Compiling helm with $(EMACS_COMMAND)
+   @echo Compiling helm with $(EMACS_COMMAND)
$(EMACS) $(LOADPATH) -f batch-byte-compile $(EL)
 
 # Remove all generated files



[nongnu] elpa/helm 969f80fa66 2/2: Remove helm-locate-override-inheritor (#2710)

2025-02-22 Thread ELPA Syncer
branch: elpa/helm
commit 969f80fa663e94273f780cdfc63df06eb3eb3e33
Author: Thierry Volpiatto 
Commit: Thierry Volpiatto 

Remove helm-locate-override-inheritor (#2710)

This was needed in all previous Emacs versions, seems it is no more
needed on emacs-29, thus it confuse eieio, OTOH emacs-31 is perfectly
understanding this.
---
 helm-locate.el | 6 ++
 1 file changed, 2 insertions(+), 4 deletions(-)

diff --git a/helm-locate.el b/helm-locate.el
index 20142758a3..970a7ded15 100644
--- a/helm-locate.el
+++ b/helm-locate.el
@@ -377,9 +377,7 @@ See also `helm-locate'."
 Sort is done on basename of CANDIDATES."
   (helm-fuzzy-matching-default-sort-fn-1 candidates nil t))
 
-(defclass helm-locate-override-inheritor (helm-type-file) ())
-
-(defclass helm-locate-source (helm-source-async helm-locate-override-inheritor)
+(defclass helm-locate-source (helm-source-async helm-type-file)
   ((init :initform 'helm-locate-initial-setup)
(candidates-process :initform 'helm-locate-init)
(requires-pattern :initform 3)
@@ -389,7 +387,7 @@ Sort is done on basename of CANDIDATES."
(redisplay :initform (progn helm-locate-fuzzy-sort-fn
 
 ;; Override helm-type-file class keymap.
-(cl-defmethod helm--setup-source :after ((source 
helm-locate-override-inheritor))
+(cl-defmethod helm--setup-source :after ((source helm-locate-source))
   (setf (slot-value source 'keymap) helm-locate-map)
   (setf (slot-value source 'group) 'helm-locate))
 



[elpa] externals/ellama ea63023cc4 04/14: Remove `ellama-long-lines-length` customization and related usage

2025-02-22 Thread ELPA Syncer
branch: externals/ellama
commit ea63023cc4f46522c3438ecf819d4ef4a50f7ed1
Author: Sergey Kostyaev 
Commit: Sergey Kostyaev 

Remove `ellama-long-lines-length` customization and related usage

Removed the custom variable ellama-long-lines-length and its references in 
the
code. This change simplifies the configuration and improves user experience 
by
avoiding potential issues with unexpected behavior.
---
 README.org |  3 ---
 ellama.el  | 13 ++---
 2 files changed, 2 insertions(+), 14 deletions(-)

diff --git a/README.org b/README.org
index 1ee2cf5792..456e09202b 100644
--- a/README.org
+++ b/README.org
@@ -404,9 +404,6 @@ argument generated text string.
 - ~ellama-sessions-directory~: Directory for saved ellama sessions.
 - ~ellama-major-mode~: Major mode for ellama commands. Org mode by
   default.
-- ~ellama-long-lines-length~: Long lines length for fill paragraph
-  call. Too low value can break generated code by splitting long
-  comment lines. Default value 100.
 - ~ellama-session-auto-save~: Automatically save ellama sessions if
   set. Enabled by default.
 - ~ellama-naming-scheme~: How to name new sessions.
diff --git a/ellama.el b/ellama.el
index 1413134270..4b5dedd5eb 100644
--- a/ellama.el
+++ b/ellama.el
@@ -456,12 +456,6 @@ It should be a function with single argument generated 
text string."
   :group 'ellama
   :type 'symbol)
 
-(defcustom ellama-long-lines-length 100
-  "Long lines length for fill paragraph call.
-Too low value can break generated code by splitting long comment lines."
-  :group 'ellama
-  :type 'integer)
-
 (defcustom ellama-translate-italic t
   "Translate italic during markdown to org transformations."
   :group 'ellama
@@ -530,8 +524,7 @@ Too low value can break generated code by splitting long 
comment lines."
   (if ellama-fill-paragraphs
   (with-temp-buffer
(insert (propertize text 'hard t))
-   (let ((fill-column ellama-long-lines-length)
- (use-hard-newlines t))
+   (let ((use-hard-newlines t))
  (fill-region (point-min) (point-max) nil t t))
(buffer-substring-no-properties (point-min) (point-max)))
 text))
@@ -595,8 +588,7 @@ Too low value can break generated code by splitting long 
comment lines."
   ;; filling long lines
   (goto-char beg)
   (when ellama-fill-paragraphs
-(let ((fill-column ellama-long-lines-length)
- (use-hard-newlines t))
+(let ((use-hard-newlines t))
   (fill-region beg end nil t t
 
 (defun ellama--replace-outside-of-code-blocks (text)
@@ -1505,7 +1497,6 @@ If EPHEMERAL non nil new session will not be associated 
with any file."
   (with-temp-buffer
 (insert (propertize content 'hard t))
 (let ((fill-prefix "> ")
- (fill-column ellama-long-lines-length)
  (use-hard-newlines t)
  (comment-start ">")
  (comment-empty-lines t))



[elpa] externals/ellama f74ed2c104 03/14: Add custom faces and properties to ellama context line

2025-02-22 Thread ELPA Syncer
branch: externals/ellama
commit f74ed2c10470633ff451b933c9e50cdb03d2a68f
Author: Sergey Kostyaev 
Commit: Sergey Kostyaev 

Add custom faces and properties to ellama context line

Added base face `ellama-face` for all ellama things. Defined new face
`ellama-context-line-face` for ellama context line. Updated
`ellama-context-line` function to return a propertized string with 
`help-echo`,
`mouse-face`, `face`, and custom keymap for managing ellama context.
---
 ellama.el | 19 ---
 1 file changed, 16 insertions(+), 3 deletions(-)

diff --git a/ellama.el b/ellama.el
index 55b8fccbc2..1413134270 100644
--- a/ellama.el
+++ b/ellama.el
@@ -1107,11 +1107,24 @@ If EPHEMERAL non nil new session will not be associated 
with any file."
   (posframe-hide ellama--context-buffer)))
   (ellama-context-update-header-line))
 
+(defface ellama-face '((t (:inherit shadow)))
+  "Base face for all ellama things.")
+
+(defface ellama-context-line-face '((t (:inherit (mode-line-buffer-id 
ellama-face
+  "Face for ellama context line.")
+
 (defun ellama-context-line ()
   "Return current global context line."
-  (with-current-buffer ellama--context-buffer
-(buffer-substring-no-properties
- (point-min) (point-max
+  (propertize (with-current-buffer ellama--context-buffer
+   (buffer-substring-no-properties
+(point-min) (point-max)))
+ 'help-echo "mouse-1: manage ellama context"
+ 'mouse-face 'header-line-format
+ 'face 'ellama-context-line-face
+ 'keymap (let ((m (make-sparse-keymap)))
+   (define-key m [header-line mouse-1] 
#'ellama-manage-context)
+   (define-key m [mode-line mouse-1] 
#'ellama-manage-context)
+   m)))
 
 ;;;###autoload
 (define-minor-mode ellama-context-header-line-mode



[nongnu] elpa/dirvish c867162cc9 2/3: feat(subtree): add `dirvish-subtree-icon-scale-factor` option (#185)

2025-02-22 Thread ELPA Syncer
branch: elpa/dirvish
commit c867162cc9c0764b183fcf16e2db467165942135
Author: Alex Lu 
Commit: Alex Lu 

feat(subtree): add `dirvish-subtree-icon-scale-factor` option (#185)

The dirvish-subtree-always-show-state now use t as default.

Closes #185
---
 docs/EXTENSIONS.org   | 18 --
 extensions/dirvish-subtree.el | 35 +--
 2 files changed, 37 insertions(+), 16 deletions(-)

diff --git a/docs/EXTENSIONS.org b/docs/EXTENSIONS.org
index 0440e1fcf5..7fa8825cf0 100644
--- a/docs/EXTENSIONS.org
+++ b/docs/EXTENSIONS.org
@@ -210,13 +210,19 @@ to any directory in the file system using results from 
=fd= command as completio
 
 * Turn Dirvish into a tree browser (dirvish-subtree.el)
 
-This extension gives Dirvish the ability to toggle a directory as subtree
-(~dirvish-subtree-toggle~), which can be seen as a stripped-down version of
-=dired-subtree=.
+This extension enhances Dirvish with the ~dirvish-subtree-toggle~ command, a
+streamlined alternative to =dired-subtree= for toggling a directory under the
+cursor as a subtree.
 
-You can use ~dirvish-subtree-toggle~ to toggle the directory under the cursor 
as a
-subtree.  Add ~subtree-state~ to ~dirvish-attributes~ gives you an indicator 
about
-whether the directory is expanded or not.
++ To visually indicate the expansion state of directories, add ~subtree-state~ 
to
+  ~dirvish-attributes~.
+
++ Customize the appearance of the expansion indicator using
+  ~dirvish-subtree-state-style~ and ~dirvish-subtree-icon-scale-factor~ to 
adjust
+  its displacement and size.
+
++ To hide the indicator when no directories are expanded, set
+  ~dirvish-subtree-always-show-state~ to nil.
 
 * History navigation (dirvish-history.el)
 
diff --git a/extensions/dirvish-subtree.el b/extensions/dirvish-subtree.el
index 116df758e8..81f7675c19 100644
--- a/extensions/dirvish-subtree.el
+++ b/extensions/dirvish-subtree.el
@@ -42,10 +42,17 @@ The prefix is repeated \"depth\" times."
  (if v (add-hook 'dirvish-after-revert-hook #'dirvish-subtree--revert)
(remove-hook 'dirvish-after-revert-hook 
#'dirvish-subtree--revert
 
-(defcustom dirvish-subtree-always-show-state nil
-  "Non-nil means always show the subtree state indicator."
+(defcustom dirvish-subtree-always-show-state t
+  "Non-nil means show subtree state indicator even there is no subtrees."
   :type 'boolean :group 'dirvish)
 
+(defcustom dirvish-subtree-icon-scale-factor '(0.8 . 0.1)
+  "Scale factor for subtree state indicator.
+The value is a cons of \\='(HEIGHT . V-ADJUST) that used as values of
+:height and :v-adjust keyword respectively in `all-the-icons' and
+`nerd-icons'."
+  :type '(cons float float) :group 'dirvish)
+
 (defvar dirvish-subtree--state-icons nil)
 (defcustom dirvish-subtree-state-style 'chevron
   "Icon/string used for directory expanded state.
@@ -66,22 +73,30 @@ The value can be one of: `plus', `arrow', `chevron', 
`nerd'."
  (cons
   (nerd-icons-octicon
"nf-oct-chevron_down"
-   :height (* (or (bound-and-true-p dirvish-nerd-icons-height) 1) 
0.8)
-   :v-adjust 0.1 :face 'dirvish-subtree-state)
+   :height (* (or (bound-and-true-p dirvish-nerd-icons-height) 1)
+  (car dirvish-subtree-icon-scale-factor))
+   :v-adjust (cdr dirvish-subtree-icon-scale-factor)
+   :face 'dirvish-subtree-state)
   (nerd-icons-octicon
"nf-oct-chevron_right"
-   :height (* (or (bound-and-true-p dirvish-nerd-icons-height) 1) 
0.8)
-   :v-adjust 0.1 :face 'dirvish-subtree-state)))
+   :height (* (or (bound-and-true-p dirvish-nerd-icons-height) 1)
+  (car dirvish-subtree-icon-scale-factor))
+   :v-adjust (cdr dirvish-subtree-icon-scale-factor)
+   :face 'dirvish-subtree-state)))
 ('chevron
  (cons
   (all-the-icons-octicon
"chevron-down"
-   :height (* (or (bound-and-true-p dirvish-all-the-icons-height) 
1) 0.8)
-   :v-adjust 0.1 :face 'dirvish-subtree-state)
+   :height (* (or (bound-and-true-p dirvish-all-the-icons-height) 
1)
+  (car dirvish-subtree-icon-scale-factor))
+   :v-adjust (cdr dirvish-subtree-icon-scale-factor)
+   :face 'dirvish-subtree-state)
   (all-the-icons-octicon
"chevron-right"
-   :height (* (or (bound-and-true-p dirvish-all-the-icons-height) 
1) 0.8)
-   :v-adjust 0.1 :face 'dirvish-subtree-state)))
+   :height (* (or (bound-and-true-p dirvish-all-the-icons-height) 
1)
+  (car dirvish-subtree-icon-scale-factor))
+   :v-adjust (cdr dirvish-subtree-icon-scale-factor)
+   :face 'dirvish-subtree-state)))
 
 (defcustom dirvish-su

[nongnu] elpa/dirvish 79d73c0777 1/3: feat: centralize extrnal deps | remove ffmpegthumbnailer hack

2025-02-22 Thread ELPA Syncer
branch: elpa/dirvish
commit 79d73c07772088e777f1d99deffee2992c3a261b
Author: Alex Lu 
Commit: Alex Lu 

feat: centralize extrnal deps | remove ffmpegthumbnailer hack

Closes #196
---
 dirvish-widgets.el | 104 ++---
 1 file changed, 75 insertions(+), 29 deletions(-)

diff --git a/dirvish-widgets.el b/dirvish-widgets.el
index b6cc564424..fc65f27819 100644
--- a/dirvish-widgets.el
+++ b/dirvish-widgets.el
@@ -20,8 +20,8 @@
 ;; `file-user', `file-group', `file-time', `file-size', `file-modes',
 ;; `file-inode-number', `file-device-number'
 ;;
-;; Preview dispatchers (all enabled by default):
-;; `image', `gif', `video', `epub', `archive', `pdf'
+;; Preview dispatchers:
+;; `audio' `image', `gif', `video', `video-mtn', `epub', `archive', `pdf', 
`pdf-preface'
 
 ;;; Code:
 
@@ -40,6 +40,56 @@ The value is a list with 3 elements:
 - icon for path separators [/]"
   :group 'dirvish :type '(repeat (string :tag "path separator")))
 
+(defcustom dirvish-magick-program "magick"
+  "Absolute or reletive name of the `magick' program.
+This is used to generate image thumbnails."
+  :group 'dirvish :type 'string)
+
+(defcustom dirvish-ffmpegthumbnailer-program "ffmpegthumbnailer"
+  "Absolute or reletive name of the `ffmpegthumbnailer' program.
+This is used to generate video thumbnails on macOS/Linux."
+  :group 'dirvish :type 'string)
+
+(defcustom dirvish-mtn-program "mtn"
+  "Absolute or reletive name of the `mtn' program.
+This is used to generate video thumbnails on Windows."
+  :group 'dirvish :type 'string)
+
+(defcustom dirvish-epub-thumbnailer-program "epub-thumbnailer"
+  "Absolute or reletive name of the `epub-thumbnailer' program.
+This is used to generate thumbnail for epub files."
+  :group 'dirvish :type 'string)
+
+(defcustom dirvish-mediainfo-program "mediainfo"
+  "Absolute or reletive name of the `mediainfo' program.
+This is used to retrieve metadata for multiple types of media files."
+  :group 'dirvish :type 'string)
+
+(defcustom dirvish-pdfinfo-program "pdfinfo"
+  "Absolute or reletive name of the `pdfinfo' program.
+This is used to retrieve pdf metadata."
+  :group 'dirvish :type 'string)
+
+(defcustom dirvish-pdftoppm-program "pdftoppm"
+  "Absolute or reletive name of the `pdftoppm' program.
+This is used to generate thumbnails for pdf files."
+  :group 'dirvish :type 'string)
+
+(defcustom dirvish-zipinfo-program "zipinfo"
+  "Absolute or reletive name of the `zipinfo' program.
+This is used to list files and their attributes for .zip archives."
+  :group 'dirvish :type 'string)
+
+(defcustom dirvish-tar-program "tar"
+  "Absolute or reletive name of the `tar' program.
+This is used to list files and their attributes for .tar, .gz etc. archives."
+  :group 'dirvish :type 'string)
+
+(defcustom dirvish-show-media-properties
+  (and (executable-find dirvish-mediainfo-program) t)
+  "Show media properties automatically in preview window."
+  :group 'dirvish :type 'boolean)
+
 (defvar dirvish-media--cache-pool '())
 (defvar dirvish-media--auto-cache-timer nil)
 (defcustom dirvish-media-auto-cache-threshold '(500 . 4)
@@ -60,13 +110,6 @@ variable is nil, the auto caching is disabled."
(setq dirvish-media--auto-cache-timer
  (run-with-timer 0 0.25 #'dirvish-media--autocache)
 
-(defcustom dirvish-show-media-properties
-  (and (executable-find "mediainfo") t)
-  "Show media properties automatically in preview window."
-  :group 'dirvish :type 'boolean)
-
-(defconst dirvish-media--embedded-video-thumb
-  (string-match "prefer embedded image" (shell-command-to-string 
"ffmpegthumbnailer -h")))
 (defconst dirvish-media--img-max-width 2400)
 (defconst dirvish-media--img-scale-h 0.75)
 (defconst dirvish-media--img-scale-w 0.92)
@@ -247,14 +290,15 @@ GROUP-TITLES is a list of group titles."
 (defun dirvish-media--metadata-from-mediainfo (file)
   "Return result string from command `mediainfo' for FILE."
   (read (format "(%s)" (shell-command-to-string
-(format "mediainfo --Output='%s' %s"
+(format "%s --Output='%s' %s"
+dirvish-mediainfo-program
 dirvish-media--info
 (shell-quote-argument file))
 
 (defun dirvish-media--metadata-from-pdfinfo (file)
   "Return result string from command `pdfinfo' for FILE."
   (cl-loop with out = (shell-command-to-string
-   (format "pdfinfo %s" (shell-quote-argument file)))
+   (format "%s %s" dirvish-pdfinfo-program 
(shell-quote-argument file)))
with lines = (remove "" (split-string out "\n"))
for line in lines
for (title content) = (split-string line ":\s+")
@@ -556,23 +600,26 @@ GROUP-TITLES is a list of group titles."
 (dirvish-define-preview audio (file ext)
   "Preview audio files by printing its metadata.
 Require: `mediainfo' (executable)"
-  :require 

[nongnu] elpa/dirvish 973190eb9f 3/3: chore: link #185 issue in docs

2025-02-22 Thread ELPA Syncer
branch: elpa/dirvish
commit 973190eb9fbc22b3acd7d142819b3426e28a5b07
Author: Alex Lu 
Commit: Alex Lu 

chore: link #185 issue in docs
---
 docs/EXTENSIONS.org | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/docs/EXTENSIONS.org b/docs/EXTENSIONS.org
index 7fa8825cf0..8d67d572b9 100644
--- a/docs/EXTENSIONS.org
+++ b/docs/EXTENSIONS.org
@@ -219,7 +219,7 @@ cursor as a subtree.
 
 + Customize the appearance of the expansion indicator using
   ~dirvish-subtree-state-style~ and ~dirvish-subtree-icon-scale-factor~ to 
adjust
-  its displacement and size.
+  its placement and size.  See this 
[[https://github.com/alexluigit/dirvish/issues/185][related issue]]
 
 + To hide the indicator when no directories are expanded, set
   ~dirvish-subtree-always-show-state~ to nil.



[nongnu] elpa/dirvish updated (b74f0d337d -> 973190eb9f)

2025-02-22 Thread ELPA Syncer
elpasync pushed a change to branch elpa/dirvish.

  from  b74f0d337d doc: keybinding issue for evil-mode users (closes #188)
   new  79d73c0777 feat: centralize extrnal deps | remove ffmpegthumbnailer 
hack
   new  c867162cc9 feat(subtree): add `dirvish-subtree-icon-scale-factor` 
option (#185)
   new  973190eb9f chore: link #185 issue in docs


Summary of changes:
 dirvish-widgets.el| 104 ++
 docs/EXTENSIONS.org   |  18 +---
 extensions/dirvish-subtree.el |  35 ++
 3 files changed, 112 insertions(+), 45 deletions(-)



[elpa] externals/hiddenquote 0ddc04e9b8: Don't set character widgets to the empty string

2025-02-22 Thread ELPA Syncer
branch: externals/hiddenquote
commit 0ddc04e9b8f578fcd3b30b62c3b98fa8ee13f62a
Author: Mauro Aranda 
Commit: Mauro Aranda 

Don't set character widgets to the empty string

* hiddenquote.el (hiddenquote-kill-word)
(hiddenquote-kill-whole-word, hiddenquote-transpose-chars): Set to " ".
---
 hiddenquote.el | 8 
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/hiddenquote.el b/hiddenquote.el
index 6f02b34cd6..534d12e85a 100644
--- a/hiddenquote.el
+++ b/hiddenquote.el
@@ -1429,7 +1429,7 @@ Character cell bindings:
  (parent (widget-get (widget-at) :parent)))
 (save-excursion
   (dolist (w (member child (widget-get parent :children)))
-(widget-value-set w "")
+(widget-value-set w " ")
 
 (defun hiddenquote-kill-whole-word ()
   "Delete each character in a word."
@@ -1437,7 +1437,7 @@ Character cell bindings:
   (let ((parent (widget-get (widget-at) :parent)))
 (save-excursion
   (dolist (child (widget-get parent :children))
-(widget-value-set child "")
+(widget-value-set child " ")
 
 (defun hiddenquote-delete-backward-char ()
   "Delete the previous character."
@@ -1465,8 +1465,8 @@ point to the next word."
  (oval (widget-value ch1))
  (nval (widget-value ch2)))
 ;; Spaces are problematic.
-(widget-value-set ch1 (if (char-equal nval ?\s) "" nval))
-(widget-value-set ch2 (if (char-equal oval ?\s) "" oval))
+(widget-value-set ch1 (if (char-equal nval ?\s) " " nval))
+(widget-value-set ch2 (if (char-equal oval ?\s) " " oval))
 (hiddenquote-forward)))
 
 (defun hiddenquote-forward ()



[nongnu] elpa/gptel 5d5610dfb6: gptel-rewrite: Appease byte-compiler

2025-02-22 Thread ELPA Syncer
branch: elpa/gptel
commit 5d5610dfb62d218447b210ec8c8f833c6aca262e
Author: Karthik Chikmagalur 
Commit: Karthik Chikmagalur 

gptel-rewrite: Appease byte-compiler

* gptel-rewrite.el (gptel--suffix-rewrite): Appease byte-compiler.
Allow `gptel--suffix-rewrite' to be called non-interactively,
which is required for dry runs.
---
 gptel-rewrite.el | 4 
 1 file changed, 4 insertions(+)

diff --git a/gptel-rewrite.el b/gptel-rewrite.el
index 5c8fe83e6d..ebc1c2a8dc 100644
--- a/gptel-rewrite.el
+++ b/gptel-rewrite.el
@@ -30,6 +30,7 @@
 (defvar diff-entire-buffers)
 
 (declare-function diff-no-select "diff")
+(declare-function rmc--add-key-description "rmc")
 
 ;; * User options
 
@@ -637,6 +638,9 @@ generated from functions."
 (when (= (point) (region-end)) (backward-char 1)))
   (deactivate-mark
 
+;; Allow this to be called non-interactively for dry runs
+(put 'gptel--suffix-rewrite 'interactive-only nil)
+
 (transient-define-suffix gptel--suffix-rewrite-diff (&optional switches)
   "Diff LLM output against buffer."
   :if (lambda () gptel--rewrite-overlays)



[nongnu] elpa/dirvish updated (973190eb9f -> df4fd5670d)

2025-02-22 Thread ELPA Syncer
elpasync pushed a change to branch elpa/dirvish.

  from  973190eb9f chore: link #185 issue in docs
   new  f6b19df639 fix: incorrect session reuse on `dirvish-side`
   new  df4fd5670d docs: drop `tramp-use-ssh-controlmaster-options`, which 
causes error


Summary of changes:
 dirvish.el   | 24 +++-
 docs/CUSTOMIZING.org | 25 ++---
 extensions/dirvish-fd.el |  3 ++-
 3 files changed, 23 insertions(+), 29 deletions(-)



[nongnu] elpa/solarized-theme 5d136736f7: Add option to highlight numbers (#451)

2025-02-22 Thread ELPA Syncer
branch: elpa/solarized-theme
commit 5d136736f76c85a83fef737d10ecd32af4d493fd
Author: Ilgiz Mustafin 
Commit: GitHub 

Add option to highlight numbers (#451)
---
 README.md  | 3 +++
 solarized-faces.el | 3 ++-
 solarized.el   | 7 +++
 3 files changed, 12 insertions(+), 1 deletion(-)

diff --git a/README.md b/README.md
index cf6e5ffdef..4636092574 100644
--- a/README.md
+++ b/README.md
@@ -106,6 +106,9 @@ elisp code:
 (setq solarized-height-plus-3 1.0)
 (setq solarized-height-plus-4 1.0)
 
+;; Highlight all numbers
+(setq solarized-highlight-numbers t)
+
 ```
 
 Note that these need to be set **before** `load-theme` is invoked for 
Solarized.
diff --git a/solarized-faces.el b/solarized-faces.el
index 667400231a..917fa08fbb 100644
--- a/solarized-faces.el
+++ b/solarized-faces.el
@@ -236,6 +236,7 @@
((,class (:foreground ,base01 :slant ,s-maybe-italic
  `(font-lock-comment-face ((,class (:foreground ,base01
  `(font-lock-constant-face ((,class (:foreground ,blue :weight bold
+ `(font-lock-number-face ((,class (:foreground ,(if 
solarized-highlight-numbers violet 'unspecified)
  `(font-lock-doc-face ((,class (:foreground ,(if 
solarized-distinct-doc-face violet cyan)
 :slant ,s-maybe-italic
  `(font-lock-function-name-face ((,class (:foreground ,blue
@@ -919,7 +920,7 @@
  `(highlight-indentation-face ((,class (:background ,base02
  `(highlight-indentation-current-column-face((,class (:background 
,base02
 ; highlight-numbers
- `(highlight-numbers-number ((,class (:foreground ,violet :bold nil
+ `(highlight-numbers-number ((,class (:inherit font-lock-number-face
 ; highlight-symbol
  `(highlight-symbol-face ((,class (:foreground ,magenta
 ; hl-line-mode
diff --git a/solarized.el b/solarized.el
index f0ed078f02..ddd796ac2f 100644
--- a/solarized.el
+++ b/solarized.el
@@ -52,6 +52,13 @@ Related discussion: 
https://github.com/bbatsov/solarized-emacs/issues/158";
   :type 'boolean
   :group 'solarized)
 
+(defcustom solarized-highlight-numbers nil
+  "Highlight all numbers.
+Applies color to `font-lock-number-face' and `highlight-numbers' mode.
+Many tree-sitter based modes use `font-lock-number-face'."
+  :type 'boolean
+  :group 'solarized)
+
 (defcustom solarized-use-variable-pitch t
   "Use variable pitch face for some headings and titles."
   :type 'boolean



[nongnu] elpa/dirvish f6b19df639 1/2: fix: incorrect session reuse on `dirvish-side`

2025-02-22 Thread ELPA Syncer
branch: elpa/dirvish
commit f6b19df63954b615ae4860bd43528cbad30526df
Author: Alex Lu 
Commit: Alex Lu 

fix: incorrect session reuse on `dirvish-side`
---
 dirvish.el   | 24 +++-
 extensions/dirvish-fd.el |  3 ++-
 2 files changed, 13 insertions(+), 14 deletions(-)

diff --git a/dirvish.el b/dirvish.el
index 5aefd70072..d08f0a0d5d 100644
--- a/dirvish.el
+++ b/dirvish.el
@@ -504,7 +504,7 @@ Set process's SENTINEL and PUTS accordingly."
 (cl-defstruct (dirvish (:conc-name dv-))
   "Define dirvish session (`DV' for short) struct."
   (id (format-time-string "%D|%T"):documentation "is the created time 
stamp of DV, used as its unique id.")
-  (type ():documentation "is the type of DV.")
+  (type 'default  :documentation "is the type of DV.")
   (root-window () :documentation "is the root/main window 
of DV.")
   (dedicated ()   :documentation "passes to 
`set-window-dedicated-p' for ROOT-WINDOW.")
   (size-fixed ()  :documentation "passes to 
`window-size-fixed' for ROOT-WINDOW.")
@@ -532,21 +532,19 @@ ARGS is a list of keyword arguments for `dirvish' struct."
 (dirvish--check-deps)
 (dirvish--create-root-window new) new))
 
-(defun dirvish--get-session (&optional key val)
+(defun dirvish--get-session (key val)
   "Return the first matched session has KEY of VAL."
   (cl-loop for dv being the hash-values of dirvish--session-hash
for b = (cdr (dv-index dv)) when (not (buffer-live-p b)) return dv
with (fr tab psp) = (cl-loop for (_ v) on dirvish-scopes by 'cddr
 collect (and (functionp v) (funcall 
v)))
-   when (and (eq (with-current-buffer b (dirvish-prop :tab)) tab)
- (eq (with-current-buffer b (dirvish-prop :frame)) fr)
- (eq (with-current-buffer b (dirvish-prop :persp)) psp)
- (let* ((fn (and key (intern (format "dv-%s" key
-(res (and fn (funcall fn dv
-   (cond ((not fn) t)
- ((eq key 'roots)
-  (memq val (mapcar #'cdr res)))
- (res (eq val res)
+   if (eq (with-current-buffer b (dirvish-prop :tab)) tab)
+   if (eq (with-current-buffer b (dirvish-prop :frame)) fr)
+   if (eq (with-current-buffer b (dirvish-prop :persp)) psp)
+   if (let* ((fn (intern (format "dv-%s" key)))
+ (res (and (functionp fn) (funcall fn dv
+(if (eq key 'roots) (memq val (mapcar #'cdr res))
+  (eq val res)))
return dv))
 
 (defun dirvish--clear-session (dv &optional from-quit)
@@ -690,7 +688,7 @@ buffer, it defaults to filename under the cursor when it is 
nil."
   "Return buffer for DIR-OR-LIST with FLAGS, FN is `dired-noselect'."
   (let* ((dir (if (consp dir-or-list) (car dir-or-list) dir-or-list))
  (key (file-name-as-directory (expand-file-name dir)))
- (reuse? (or (dirvish-curr) (dirvish--get-session)))
+ (reuse? (or (dirvish-curr) (dirvish--get-session 'type 'default)))
  (dv (or reuse? (dirvish--new)))
  (bname buffer-file-name)
  (remote (file-remote-p dir))
@@ -1349,7 +1347,7 @@ INHIBIT-SETUP is non-nil."
 (defun dirvish--reuse-or-create (path layout)
   "Find PATH in a dirvish session and set its layout with LAYOUT."
   (let ((dir (or path default-directory))
-(dv (or (dirvish-curr) (dirvish--get-session
+(dv (or (dirvish-curr) (dirvish--get-session 'type 'default
 (cond (dv (with-selected-window (dirvish--create-root-window dv)
 (setf (dv-curr-layout dv) (or (dv-curr-layout dv) layout))
 (dirvish-find-entry-a
diff --git a/extensions/dirvish-fd.el b/extensions/dirvish-fd.el
index 27894fab95..4afee2624e 100644
--- a/extensions/dirvish-fd.el
+++ b/extensions/dirvish-fd.el
@@ -420,7 +420,8 @@ The command run is essentially:
  (fd-program (dirvish-fd--ensure-fd remote))
  (ls-program (or (and remote (dirvish-fd--find-gnu-ls remote))
  dirvish-fd-ls-program))
- (dv (or (dirvish-curr) (progn (dirvish dir) (dirvish--get-session
+ (dv (or (dirvish-curr)
+ (progn (dirvish dir) (dirvish--get-session 'type 'default
  (fd-switches (or (dirvish-prop :fd-switches) dirvish-fd-switches ""))
  (ls-switches (or dired-actual-switches (dv-ls-switches dv)))
  (buffer (dirvish--util-buffer 'fd dv nil t)))



[nongnu] elpa/dirvish df4fd5670d 2/2: docs: drop `tramp-use-ssh-controlmaster-options`, which causes error

2025-02-22 Thread ELPA Syncer
branch: elpa/dirvish
commit df4fd5670d0e95036a63a390d956597adc9c1241
Author: Alex Lu 
Commit: Alex Lu 

docs: drop `tramp-use-ssh-controlmaster-options`, which causes error
---
 docs/CUSTOMIZING.org | 25 ++---
 1 file changed, 10 insertions(+), 15 deletions(-)

diff --git a/docs/CUSTOMIZING.org b/docs/CUSTOMIZING.org
index e954349558..378ea91dc4 100644
--- a/docs/CUSTOMIZING.org
+++ b/docs/CUSTOMIZING.org
@@ -357,17 +357,16 @@ your ssh authentication properly to avoid being stuck 
with a prompt you will not
 be able to answer to in the child emacs.
 
 #+begin_src emacs-lisp
-  (use-package tramp
-:config
-;; Enable full-featured Dirvish over TRAMP on certain connections
-;; 
https://www.gnu.org/software/tramp/#Improving-performance-of-asynchronous-remote-processes-1.
-(add-to-list 'tramp-connection-properties
- (list (regexp-quote "/ssh:YOUR_HOSTNAME:")
-   "direct-async-process" t))
-;; Tips to speed up connections
-(setq tramp-verbose 0)
-(setq tramp-chunksize 2000)
-(setq tramp-use-ssh-controlmaster-options nil))
+(use-package tramp
+  :config
+  ;; Enable full-featured Dirvish over TRAMP on certain connections
+  ;; 
https://www.gnu.org/software/tramp/#Improving-performance-of-asynchronous-remote-processes-1.
+  (add-to-list 'tramp-connection-properties
+   (list (regexp-quote "/ssh:YOUR_HOSTNAME:")
+ "direct-async-process" t))
+  ;; Tips to speed up connections
+  (setq tramp-verbose 0)
+  (setq tramp-chunksize 2000))
 #+end_src
 
 ** Complementary packages
@@ -398,7 +397,3 @@ These packages are only listed here for discoverability.
   ;;   :config
   ;;   (push '("jpg" . "image") vscode-icon-file-alist))
 #+end_src
-
-** Working with Doom Emacs (WIP)
-
-A [[https://github.com/doomemacs/doomemacs/pull/6760][PR]] to make dirvish as 
the default file manager in doom-emacs is under review.



[elpa] externals/ellama d21db99de4 09/14: Add ellama-context-mode-line-mode and its global version to readme

2025-02-22 Thread ELPA Syncer
branch: externals/ellama
commit d21db99de41da5046626185be215e1694b79b969
Author: Sergey Kostyaev 
Commit: Sergey Kostyaev 

Add ellama-context-mode-line-mode and its global version to readme
---
 README.org | 44 ++--
 1 file changed, 38 insertions(+), 6 deletions(-)

diff --git a/README.org b/README.org
index 456e09202b..48a1661708 100644
--- a/README.org
+++ b/README.org
@@ -455,9 +455,8 @@ context-specific information.
 
 *Usage:*
 To enable or disable ~ellama-context-header-line-mode~, use the command:
-#+BEGIN_SRC emacs-lisp
-M-x ellama-context-header-line-mode
-#+END_SRC
+
+M-x ellama-context-header-line-mode
 
 When enabled, this mode adds a hook to ~window-state-change-hook~ to update 
the header line whenever
 the window state changes. It also calls ~ellama-context-update-header-line~ to 
initialize the header
@@ -474,13 +473,46 @@ Globalized version of ~ellama-context-header-line-mode~. 
This mode ensures that
 
 *Usage:*
 To enable or disable ~ellama-context-header-line-global-mode~, use the command:
-#+BEGIN_SRC emacs-lisp
-M-x ellama-context-header-line-global-mode
-#+END_SRC
+
+M-x ellama-context-header-line-global-mode
 
 This globalized minor mode provides a convenient way to ensure that 
context-specific header line
 information is always available, regardless of the buffer being edited.
 
+*** ellama-context-mode-line-mode
+
+*Description:*
+Toggle the Ellama Context mode line mode. This minor mode updates the mode line
+to display context-specific information.
+
+*Usage:*
+To enable or disable ~ellama-context-mode-line-mode~, use the command:
+
+M-x ellama-context-mode-line-mode
+
+When enabled, this mode adds a hook to ~window-state-change-hook~ to update the
+mode line whenever the window state changes. It also calls
+~ellama-context-update-mode-line~ to initialize the mode line with
+context-specific information.
+
+When disabled, it removes the evaluation of ~(:eval (ellama-context-line))~ 
from
+~mode-line-format~.
+
+*** ellama-context-mode-line-global-mode
+
+*Description:*
+Globalized version of ~ellama-context-mode-line-mode~. This mode ensures that
+~ellama-context-mode-line-mode~ is enabled in all buffers.
+
+*Usage:*
+To enable or disable ~ellama-context-mode-line-global-mode~, use the command:
+
+M-x ellama-context-mode-line-global-mode
+
+This globalized minor mode provides a convenient way to ensure that
+context-specific mode line information is always available, regardless of the
+buffer being edited.
+
 ** Acknowledgments
 
 Thanks [[https://github.com/jmorganca][Jeffrey Morgan]] for excellent project 
[[https://github.com/jmorganca/ollama][ollama]]. This project



[elpa] externals/ellama updated (1b71217434 -> 1c52902d4d)

2025-02-22 Thread ELPA Syncer
elpasync pushed a change to branch externals/ellama.

  from  1b71217434 Merge pull request #232 from s-kostyaev/fix-scroll
   new  aad5adadc5 Add ellama context header line mode
   new  506cc6232b Improve session deletion
   new  f74ed2c104 Add custom faces and properties to ellama context line
   new  ea63023cc4 Remove `ellama-long-lines-length` customization and 
related usage
   new  556c015e1c Fix test cases
   new  88400ce336 Rename session functionality improvements
   new  bfbb0aab6e Adjust fill-column in test for code snippet translation
   new  fabafcccef Add Ellama Context Mode Line Feature
   new  d21db99de4 Add ellama-context-mode-line-mode and its global version 
to readme
   new  646513ae5b Update context management
   new  a29da0 Rename `ellama-session-remove` to `ellama-session-delete`
   new  a2d3bdfcf7 Bump version
   new  22dc59 Add changelog documentation
   new  1c52902d4d Merge pull request #235 from 
s-kostyaev/add-context-header-line


Summary of changes:
 NEWS.org |   8 ++
 README.org   | 215 
 docs/changelog.org   |   3 +
 ellama.el| 245 +--
 tests/test-ellama.el |  61 +
 5 files changed, 334 insertions(+), 198 deletions(-)
 create mode 100644 docs/changelog.org



[elpa] externals/ellama 506cc6232b 02/14: Improve session deletion

2025-02-22 Thread ELPA Syncer
branch: externals/ellama
commit 506cc6232bed471587ab057eee848af151bc1b53
Author: Sergey Kostyaev 
Commit: Sergey Kostyaev 

Improve session deletion

Enhanced the `ellama-delete-session` function to conditionally delete files 
only
if they exist, preventing errors when attempting to delete non-existent 
files.
Added checks for `session-file` and `translation-file` before deleting them.
This ensures that the function handles cases where the associated files 
might
have already been deleted or not created in the first place.
---
 ellama.el | 18 ++
 1 file changed, 10 insertions(+), 8 deletions(-)

diff --git a/ellama.el b/ellama.el
index 6ae9b28aab..55b8fccbc2 100644
--- a/ellama.el
+++ b/ellama.el
@@ -972,19 +972,21 @@ If EPHEMERAL non nil new session will not be associated 
with any file."
  (hash-table-keys ellama--active-sessions)))
 (buffer (ellama-get-session-buffer id))
 (file (buffer-file-name buffer))
-(session-file (ellama--get-session-file-name file))
-(translation-file (ellama--get-translation-file-name file)))
+(session-file (when file (ellama--get-session-file-name file)))
+(translation-file (when file (ellama--get-translation-file-name 
file
 (kill-buffer buffer)
-(delete-file file t)
-(delete-file session-file t)
+(when file (delete-file file t))
+(when session-file (delete-file session-file t))
 (mapc
  (lambda (buf)
-   (when (and (buffer-file-name buf)
- (file-equal-p (buffer-file-name buf)
-   translation-file))
+   (when (and
+ translation-file
+ (buffer-file-name buf)
+ (file-equal-p (buffer-file-name buf)
+   translation-file))
 (kill-buffer buf)))
  (buffer-list))
-(when (file-exists-p translation-file)
+(when (and translation-file (file-exists-p translation-file))
   (delete-file translation-file t
 
 (defun ellama-activate-session (id)



[elpa] externals/ellama bfbb0aab6e 07/14: Adjust fill-column in test for code snippet translation

2025-02-22 Thread ELPA Syncer
branch: externals/ellama
commit bfbb0aab6e076da17b60de5414a77b3b4b187f76
Author: Sergey Kostyaev 
Commit: Sergey Kostyaev 

Adjust fill-column in test for code snippet translation

Added fill-column variable set to 70 in the
test-ellama-md-to-org-code-snake-case test to ensure a fix for the flaky 
test.
---
 tests/test-ellama.el | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/tests/test-ellama.el b/tests/test-ellama.el
index b1fb087ded..6b47022191 100644
--- a/tests/test-ellama.el
+++ b/tests/test-ellama.el
@@ -380,7 +380,8 @@ $P_\\theta$
 (should (string-equal result "This"
 
 (ert-deftest test-ellama-md-to-org-code-snake-case ()
-  (let ((result (ellama--translate-markdown-to-org-filter "```python
+  (let* ((fill-column 70)
+(result (ellama--translate-markdown-to-org-filter "```python
 # Example of snake case variables and functions
 
 # Variable names using snake_case



[elpa] externals/ellama 1c52902d4d 14/14: Merge pull request #235 from s-kostyaev/add-context-header-line

2025-02-22 Thread ELPA Syncer
branch: externals/ellama
commit 1c52902d4de4933b61cd3a3bcdd3f74cadd31f9f
Merge: 1b71217434 22dc59
Author: Sergey Kostyaev 
Commit: GitHub 

Merge pull request #235 from s-kostyaev/add-context-header-line

Add ellama context header and mode line modes
---
 NEWS.org |   8 ++
 README.org   | 215 
 docs/changelog.org   |   3 +
 ellama.el| 245 +--
 tests/test-ellama.el |  61 +
 5 files changed, 334 insertions(+), 198 deletions(-)

diff --git a/NEWS.org b/NEWS.org
index e7b76e2678..9ec0c38ba8 100644
--- a/NEWS.org
+++ b/NEWS.org
@@ -1,3 +1,11 @@
+* Version 1.3.0
+- Implemented ellama context header line and mode line features.
+- Added ~ellama-context-header-line-mode~, ~ellama-context-mode-line-mode~ and
+  its global versions.
+- Session renaming functionality improvements.
+- Improved session deletion.
+- Renamed ~ellama-session-remove~ to ~ellama-session-delete~.
+- Removed ~ellama-long-lines-length~ customization and related usage
 * Version 1.2.5
 - Fix scroll function.
 * Version 1.2.4
diff --git a/README.org b/README.org
index aa2f5a1580..1bda4fb572 100644
--- a/README.org
+++ b/README.org
@@ -32,72 +32,74 @@ Without any configuration, the first available ollama model 
will be used.
 You can customize ellama configuration like this:
 
 #+BEGIN_SRC  emacs-lisp
-(use-package ellama
-  :ensure t
-  :bind ("C-c e" . ellama-transient-main-menu)
-  :init
-  ;; setup key bindings
-  ;; (setopt ellama-keymap-prefix "C-c e")
-  ;; language you want ellama to translate to
-  (setopt ellama-language "German")
-  ;; could be llm-openai for example
-  (require 'llm-ollama)
-  (setopt ellama-provider
- (make-llm-ollama
-  ;; this model should be pulled to use it
-  ;; value should be the same as you print in terminal during pull
-  :chat-model "llama3:8b-instruct-q8_0"
-  :embedding-model "nomic-embed-text"
-  :default-chat-non-standard-params '(("num_ctx" . 8192
-  (setopt ellama-summarization-provider
- (make-llm-ollama
-  :chat-model "qwen2.5:3b"
-  :embedding-model "nomic-embed-text"
-  :default-chat-non-standard-params '(("num_ctx" . 32768
-  (setopt ellama-coding-provider
- (make-llm-ollama
-  :chat-model "qwen2.5-coder:3b"
-  :embedding-model "nomic-embed-text"
-  :default-chat-non-standard-params '(("num_ctx" . 32768
-  ;; Predefined llm providers for interactive switching.
-  ;; You shouldn't add ollama providers here - it can be selected interactively
-  ;; without it. It is just example.
-  (setopt ellama-providers
- '(("zephyr" . (make-llm-ollama
-:chat-model "zephyr:7b-beta-q6_K"
-:embedding-model "zephyr:7b-beta-q6_K"))
-   ("mistral" . (make-llm-ollama
- :chat-model "mistral:7b-instruct-v0.2-q6_K"
- :embedding-model "mistral:7b-instruct-v0.2-q6_K"))
-   ("mixtral" . (make-llm-ollama
- :chat-model "mixtral:8x7b-instruct-v0.1-q3_K_M-4k"
- :embedding-model 
"mixtral:8x7b-instruct-v0.1-q3_K_M-4k"
-  ;; Naming new sessions with llm
-  (setopt ellama-naming-provider
- (make-llm-ollama
-  :chat-model "llama3:8b-instruct-q8_0"
-  :embedding-model "nomic-embed-text"
-  :default-chat-non-standard-params '(("stop" . ("\n")
-  (setopt ellama-naming-scheme 'ellama-generate-name-by-llm)
-  ;; Translation llm provider
-  (setopt ellama-translation-provider
- (make-llm-ollama
-  :chat-model "qwen2.5:3b"
-  :embedding-model "nomic-embed-text"
-  :default-chat-non-standard-params
-  '(("num_ctx" . 32768
-  (setopt ellama-extraction-provider (make-llm-ollama
- :chat-model 
"qwen2.5-coder:7b-instruct-q8_0"
- :embedding-model "nomic-embed-text"
- :default-chat-non-standard-params
- '(("num_ctx" . 32768
-  ;; customize display buffer behaviour
-  ;; see ~(info "(elisp) Buffer Display Action Functions")~
-  (setopt ellama-chat-display-action-function #'display-buffer-full-frame)
-  (setopt ellama-instant-display-action-function #'display-buffer-at-bottom)
-  :config
-  ;; send last message in chat buffer with C-c C-c
-  (add-hook 'org-ctrl-c-ctrl-c-hook #'ellama-chat-send-last-message))
+  (use-package ellama
+:ensure t
+:bind ("C-c e" . ellama-transient-main-menu)
+:init
+;; setup key bindings
+;; (setopt ellama-keymap-prefix "C-c e")
+;; language you want ellama to translate to
+(setopt ellama-language "German")
+;; could be llm-openai for example
+(require 'llm-ollama)
+(setopt ellama-provider
+ (make-llm-ollama

[elpa] externals/ellama 88400ce336 06/14: Rename session functionality improvements

2025-02-22 Thread ELPA Syncer
branch: externals/ellama
commit 88400ce33685971c00ef7d509b247d9a3a1ebefe
Author: Sergey Kostyaev 
Commit: Sergey Kostyaev 

Rename session functionality improvements

Refactored `ellama-session-rename` function to improve variable handling 
and add
auto-save feature. Ensured proper renaming of buffers, files, and session 
data,
with checks for existence before performing file operations. Added 
condition to
save buffer if `ellama-session-auto-save` is enabled.
---
 ellama.el | 53 +
 1 file changed, 29 insertions(+), 24 deletions(-)

diff --git a/ellama.el b/ellama.el
index 4b5dedd5eb..2250673ce8 100644
--- a/ellama.el
+++ b/ellama.el
@@ -1001,35 +1001,40 @@ If EPHEMERAL non nil new session will not be associated 
with any file."
 (defun ellama-session-rename ()
   "Rename current ellama session."
   (interactive)
-  (when-let* ((id (if ellama--current-session
- (ellama-session-id ellama--current-session)
-   ellama--current-session-id))
- (buffer (ellama-get-session-buffer id))
- (session (with-current-buffer buffer
-ellama--current-session))
- (file-name (buffer-file-name buffer))
- (file-ext (file-name-extension file-name))
- (dir (file-name-directory file-name))
- (session-file-name (ellama--get-session-file-name file-name))
- (new-id (read-string
-  "New session name: "
-  id))
- (new-file-name (file-name-concat
- dir
- (concat new-id "." file-ext)))
- (new-session-file-name
-  (ellama--get-session-file-name new-file-name)))
-(with-current-buffer buffer
-  (set-visited-file-name new-file-name))
-(when (file-exists-p file-name)
+  (let* ((id (if ellama--current-session
+(ellama-session-id ellama--current-session)
+  ellama--current-session-id))
+(buffer (when id (ellama-get-session-buffer id)))
+(session (when buffer (with-current-buffer buffer
+ellama--current-session)))
+(file-name (when buffer (buffer-file-name buffer)))
+(file-ext (when file-name (file-name-extension file-name)))
+(dir (when file-name (file-name-directory file-name)))
+(session-file-name (when file-name (ellama--get-session-file-name 
file-name)))
+(new-id (read-string
+ "New session name: "
+ id))
+(new-file-name (when dir (file-name-concat
+  dir
+  (concat new-id "." file-ext
+(new-session-file-name
+ (when new-file-name (ellama--get-session-file-name new-file-name
+(when new-file-name (with-current-buffer buffer
+ (set-visited-file-name new-file-name)))
+(when buffer (with-current-buffer buffer
+  (rename-buffer (or new-file-name new-id
+(when (and file-name (file-exists-p file-name))
   (rename-file file-name new-file-name))
-(when (file-exists-p session-file-name)
+(when (and session-file-name (file-exists-p session-file-name))
   (rename-file session-file-name new-session-file-name))
-(setf (ellama-session-id session) new-id)
+(when session (setf (ellama-session-id session) new-id))
 (when (equal ellama--current-session-id id)
   (setq ellama--current-session-id new-id))
 (remhash id ellama--active-sessions)
-(puthash new-id buffer ellama--active-sessions)))
+(puthash new-id buffer ellama--active-sessions)
+(when (and buffer ellama-session-auto-save)
+  (with-current-buffer buffer
+   (save-buffer)
 
 (defvar ellama--context-buffer " *ellama-context*")
 



[elpa] externals/ellama 646513ae5b 10/14: Update context management

2025-02-22 Thread ELPA Syncer
branch: externals/ellama
commit 646513ae5b0f244188be30e2fb4f0960a90101d2
Author: Sergey Kostyaev 
Commit: Sergey Kostyaev 

Update context management

Replaced `ellama-manage-context` with `ellama-transient-context-menu` for 
header
and mode line mouse clicks. This change updates the behavior to use a 
transient
menu for managing contexts.
---
 ellama.el | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/ellama.el b/ellama.el
index 88c15f6e93..1424c9da60 100644
--- a/ellama.el
+++ b/ellama.el
@@ -1119,8 +1119,8 @@ If EPHEMERAL non nil new session will not be associated 
with any file."
  'mouse-face 'header-line-format
  'face 'ellama-context-line-face
  'keymap (let ((m (make-sparse-keymap)))
-   (define-key m [header-line mouse-1] 
#'ellama-manage-context)
-   (define-key m [mode-line mouse-1] 
#'ellama-manage-context)
+   (define-key m [header-line mouse-1] 
#'ellama-transient-context-menu)
+   (define-key m [mode-line mouse-1] 
#'ellama-transient-context-menu)
m)))
 
 ;;;###autoload



[elpa] externals/ellama aad5adadc5 01/14: Add ellama context header line mode

2025-02-22 Thread ELPA Syncer
branch: externals/ellama
commit aad5adadc5b6937c520a8781af5986f5cf5630ea
Author: Sergey Kostyaev 
Commit: Sergey Kostyaev 

Add ellama context header line mode

Added `ellama-context-header-line-mode` and its globalized version
`ellama-context-header-line-global-mode` to display context-specific 
information
in the header line. Also, introduced a new configuration option
`ellama-spinner-enabled` to enable spinner during text generation. Updated 
the
`README.org` file with details on these changes.

Fix #233
---
 README.org | 174 +
 ellama.el  | 118 -
 2 files changed, 188 insertions(+), 104 deletions(-)

diff --git a/README.org b/README.org
index aa2f5a1580..1ee2cf5792 100644
--- a/README.org
+++ b/README.org
@@ -32,72 +32,74 @@ Without any configuration, the first available ollama model 
will be used.
 You can customize ellama configuration like this:
 
 #+BEGIN_SRC  emacs-lisp
-(use-package ellama
-  :ensure t
-  :bind ("C-c e" . ellama-transient-main-menu)
-  :init
-  ;; setup key bindings
-  ;; (setopt ellama-keymap-prefix "C-c e")
-  ;; language you want ellama to translate to
-  (setopt ellama-language "German")
-  ;; could be llm-openai for example
-  (require 'llm-ollama)
-  (setopt ellama-provider
- (make-llm-ollama
-  ;; this model should be pulled to use it
-  ;; value should be the same as you print in terminal during pull
-  :chat-model "llama3:8b-instruct-q8_0"
-  :embedding-model "nomic-embed-text"
-  :default-chat-non-standard-params '(("num_ctx" . 8192
-  (setopt ellama-summarization-provider
- (make-llm-ollama
-  :chat-model "qwen2.5:3b"
-  :embedding-model "nomic-embed-text"
-  :default-chat-non-standard-params '(("num_ctx" . 32768
-  (setopt ellama-coding-provider
- (make-llm-ollama
-  :chat-model "qwen2.5-coder:3b"
-  :embedding-model "nomic-embed-text"
-  :default-chat-non-standard-params '(("num_ctx" . 32768
-  ;; Predefined llm providers for interactive switching.
-  ;; You shouldn't add ollama providers here - it can be selected interactively
-  ;; without it. It is just example.
-  (setopt ellama-providers
- '(("zephyr" . (make-llm-ollama
-:chat-model "zephyr:7b-beta-q6_K"
-:embedding-model "zephyr:7b-beta-q6_K"))
-   ("mistral" . (make-llm-ollama
- :chat-model "mistral:7b-instruct-v0.2-q6_K"
- :embedding-model "mistral:7b-instruct-v0.2-q6_K"))
-   ("mixtral" . (make-llm-ollama
- :chat-model "mixtral:8x7b-instruct-v0.1-q3_K_M-4k"
- :embedding-model 
"mixtral:8x7b-instruct-v0.1-q3_K_M-4k"
-  ;; Naming new sessions with llm
-  (setopt ellama-naming-provider
- (make-llm-ollama
-  :chat-model "llama3:8b-instruct-q8_0"
-  :embedding-model "nomic-embed-text"
-  :default-chat-non-standard-params '(("stop" . ("\n")
-  (setopt ellama-naming-scheme 'ellama-generate-name-by-llm)
-  ;; Translation llm provider
-  (setopt ellama-translation-provider
- (make-llm-ollama
-  :chat-model "qwen2.5:3b"
-  :embedding-model "nomic-embed-text"
-  :default-chat-non-standard-params
-  '(("num_ctx" . 32768
-  (setopt ellama-extraction-provider (make-llm-ollama
- :chat-model 
"qwen2.5-coder:7b-instruct-q8_0"
- :embedding-model "nomic-embed-text"
- :default-chat-non-standard-params
- '(("num_ctx" . 32768
-  ;; customize display buffer behaviour
-  ;; see ~(info "(elisp) Buffer Display Action Functions")~
-  (setopt ellama-chat-display-action-function #'display-buffer-full-frame)
-  (setopt ellama-instant-display-action-function #'display-buffer-at-bottom)
-  :config
-  ;; send last message in chat buffer with C-c C-c
-  (add-hook 'org-ctrl-c-ctrl-c-hook #'ellama-chat-send-last-message))
+  (use-package ellama
+:ensure t
+:bind ("C-c e" . ellama-transient-main-menu)
+:init
+;; setup key bindings
+;; (setopt ellama-keymap-prefix "C-c e")
+;; language you want ellama to translate to
+(setopt ellama-language "German")
+;; could be llm-openai for example
+(require 'llm-ollama)
+(setopt ellama-provider
+ (make-llm-ollama
+  ;; this model should be pulled to use it
+  ;; value should be the same as you print in terminal during pull
+  :chat-model "llama3:8b-instruct-q8_0"
+  :embedding-model "nomic-embed-text"
+  :default-chat-non-standard-params '(("num_ctx" . 8192
+(setopt ellama-summarization-provider
+ (make-llm-ollama
+  :chat-model "qwen2.5:3b"
+  

[elpa] externals/ellama fabafcccef 08/14: Add Ellama Context Mode Line Feature

2025-02-22 Thread ELPA Syncer
branch: externals/ellama
commit fabafcccef0de031f4c6add2bf0d8365257f8c09
Author: Sergey Kostyaev 
Commit: Sergey Kostyaev 

Add Ellama Context Mode Line Feature

Added new minor mode `ellama-context-mode-line-mode` to display context
information in the mode line. Also added globalized version of this mode 
and a
helper function to turn it on for text modes. Added
`ellama-context-update-mode-line` to manage mode line updates based on the 
new
mode's state.
---
 ellama.el | 32 ++--
 1 file changed, 26 insertions(+), 6 deletions(-)

diff --git a/ellama.el b/ellama.el
index 2250673ce8..88c15f6e93 100644
--- a/ellama.el
+++ b/ellama.el
@@ -1137,18 +1137,38 @@ If EPHEMERAL non nil new session will not be associated 
with any file."
   ellama-context-header-line-mode
   ellama-context-header-line-mode)
 
-(defun ellama-context-turn-on-header-line-mode ()
-  "Turn on `ellama-context-header-line-mode' if appropriate."
-  (when (or (eq major-mode 'text-mode)
-(derived-mode-p 'text-mode))
-(ellama-context-header-line-mode 1)))
-
 (defun ellama-context-update-header-line ()
   "Update and display context information in the header line."
   (if (and ellama-context-header-line-mode ellama--global-context)
   (add-to-list 'header-line-format '(:eval (ellama-context-line)) t)
 (setq header-line-format (delete '(:eval (ellama-context-line)) 
header-line-format
 
+;;;###autoload
+(define-minor-mode ellama-context-mode-line-mode
+  "Toggle Ellama Context mode line mode."
+  :group 'ellama
+  (add-hook 'window-state-change-hook #'ellama-context-update-mode-line)
+  (if ellama-context-mode-line-mode
+  (ellama-context-update-mode-line)
+(setq mode-line-format (delete '(:eval (ellama-context-line)) 
mode-line-format
+
+;;;###autoload
+(define-globalized-minor-mode ellama-context-mode-line-global-mode
+  ellama-context-mode-line-mode
+  ellama-context-mode-line-mode)
+
+(defun ellama-context-turn-on-mode-line-mode ()
+  "Turn on `ellama-context-mode-line-mode' if appropriate."
+  (when (or (eq major-mode 'text-mode)
+(derived-mode-p 'text-mode))
+(ellama-context-mode-line-mode 1)))
+
+(defun ellama-context-update-mode-line ()
+  "Update and display context information in the mode line."
+  (if (and ellama-context-mode-line-mode ellama--global-context)
+  (add-to-list 'mode-line-format '(:eval (ellama-context-line)) t)
+(setq mode-line-format (delete '(:eval (ellama-context-line)) 
mode-line-format
+
 (cl-defmethod ellama-context-element-add ((element ellama-context-element))
   "Add the ELEMENT to the Ellama context."
   (setf ellama--global-context (nreverse ellama--global-context))



[elpa] externals/ellama a2d3bdfcf7 12/14: Bump version

2025-02-22 Thread ELPA Syncer
branch: externals/ellama
commit a2d3bdfcf7dd0d4ad487a52c4d74fc29e293d11e
Author: Sergey Kostyaev 
Commit: Sergey Kostyaev 

Bump version
---
 NEWS.org  | 8 
 ellama.el | 2 +-
 2 files changed, 9 insertions(+), 1 deletion(-)

diff --git a/NEWS.org b/NEWS.org
index e7b76e2678..9ec0c38ba8 100644
--- a/NEWS.org
+++ b/NEWS.org
@@ -1,3 +1,11 @@
+* Version 1.3.0
+- Implemented ellama context header line and mode line features.
+- Added ~ellama-context-header-line-mode~, ~ellama-context-mode-line-mode~ and
+  its global versions.
+- Session renaming functionality improvements.
+- Improved session deletion.
+- Renamed ~ellama-session-remove~ to ~ellama-session-delete~.
+- Removed ~ellama-long-lines-length~ customization and related usage
 * Version 1.2.5
 - Fix scroll function.
 * Version 1.2.4
diff --git a/ellama.el b/ellama.el
index be16ba306a..e6171a1922 100644
--- a/ellama.el
+++ b/ellama.el
@@ -6,7 +6,7 @@
 ;; URL: http://github.com/s-kostyaev/ellama
 ;; Keywords: help local tools
 ;; Package-Requires: ((emacs "28.1") (llm "0.22.0") (transient "0.7") (compat 
"29.1"))
-;; Version: 1.2.5
+;; Version: 1.3.0
 ;; SPDX-License-Identifier: GPL-3.0-or-later
 ;; Created: 8th Oct 2023
 



[elpa] externals-release/org ec72678881: Update version number for the 9.7.23 release

2025-02-22 Thread ELPA Syncer
branch: externals-release/org
commit ec72678881b73d04f8cf4e574cbb7a470e9155d3
Author: Ihor Radchenko 
Commit: Ihor Radchenko 

Update version number for the 9.7.23 release
---
 lisp/org.el | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/lisp/org.el b/lisp/org.el
index 61186f4611..f7dd46f3d9 100644
--- a/lisp/org.el
+++ b/lisp/org.el
@@ -9,7 +9,7 @@
 ;; URL: https://orgmode.org
 ;; Package-Requires: ((emacs "26.1"))
 
-;; Version: 9.7.22
+;; Version: 9.7.23
 
 ;; This file is part of GNU Emacs.
 ;;



[elpa] externals/org e6fae2e34d: org-store-link: Do not query about store function when INTERACTIVE? is nil

2025-02-22 Thread ELPA Syncer
branch: externals/org
commit e6fae2e34ddb95b7690313a52b759ee3c2de65b1
Author: Ihor Radchenko 
Commit: Ihor Radchenko 

org-store-link: Do not query about store function when INTERACTIVE? is nil

* lisp/ol.el (org-link--try-link-store-functions):
Do not use interactive query when INTERACTIVE? is nil.
* etc/ORG-NEWS (~org-store-link~ no longer asks to select store
function when called noninteractively): Announce the breaking change.

The original feature prompting the user was introduced in
https://list.orgmode.org/orgmode/87haqbbpsc@bernoul.li/
However, always prompting becomes problematic when link is stored for
internal purposes and the user does not expect prompts.

In the past, such situation was not frequent to cause the trouble, but
now, when we moved some internal link types (org-id) to define link
via the normal custom link system, clashes between internal and
contributed link types become more likely. In future, more internal
links will probably use `org-link-set-parameters', so this breaking
change is hopefully an overall improvement.

Reported-by: Hermann Graf von Westerholt 
Link: 
https://orgmode.org/list/27bfa4f7-22bb-42a8-97b4-f3590c015...@rwth-aachen.de
---
 etc/ORG-NEWS | 10 ++
 lisp/ol.el   | 10 ++
 2 files changed, 16 insertions(+), 4 deletions(-)

diff --git a/etc/ORG-NEWS b/etc/ORG-NEWS
index cb2c16da88..9eb4f711c1 100644
--- a/etc/ORG-NEWS
+++ b/etc/ORG-NEWS
@@ -18,6 +18,16 @@ Please send Org bug reports to mailto:emacs-orgm...@gnu.org.
 # require user action for most Org mode users.
 # Sorted from most important to least important.
 
+*** ~org-store-link~ no longer asks to select store function when called 
noninteractively
+
+Previously, when multiple store functions are available to store link
+at point, ~org-store-link~ would aslways ask user which store function
+to use.
+
+Now, when ~org-store-link~ is called noninteractively (~interactive?~
+argument is nil), the first matching store function is used.
+Interactively, the previous behaviour is retained.
+
 *** You may need to update =org-protocol= bookmarklets for browsers
 
 In Firefox-133, and Firefox-128.5 ESR the previously suggested
diff --git a/lisp/ol.el b/lisp/ol.el
index 43fac74331..b456f79e69 100644
--- a/lisp/ol.el
+++ b/lisp/ol.el
@@ -961,10 +961,12 @@ Return t when a link has been stored in 
`org-link-store-props'."
;; function.
(apply #'org-link-store-props
   (cdr (assoc-string
-(completing-read
- (format "Store link with (default %s): " name)
- (mapcar #'car results-alist)
- nil t nil nil (symbol-name name))
+(if (not interactive?)
+(car (nth 0 results-alist))
+  (completing-read
+   (format "Store link with (default %s): " name)
+   (mapcar #'car results-alist)
+   nil t nil nil (symbol-name name)))
 results-alist)))
t
 



[elpa] externals/ellama 2222a29da0 11/14: Rename `ellama-session-remove` to `ellama-session-delete`

2025-02-22 Thread ELPA Syncer
branch: externals/ellama
commit a29da0365e23cd40c7c083a973490b60d575
Author: Sergey Kostyaev 
Commit: Sergey Kostyaev 

Rename `ellama-session-remove` to `ellama-session-delete`

Updated function name and documentation for better clarity. Also updated
keybindings and menu entries accordingly.
---
 README.org | 6 +++---
 ellama.el  | 8 
 2 files changed, 7 insertions(+), 7 deletions(-)

diff --git a/README.org b/README.org
index 48a1661708..1bda4fb572 100644
--- a/README.org
+++ b/README.org
@@ -242,9 +242,9 @@ as a specified format using Ellama.
 
 Load ellama session from file.
 
-*** ellama-session-remove
+*** ellama-session-delete
 
-Remove ellama session.
+Delete ellama session.
 
 *** ellama-session-switch
 
@@ -342,7 +342,7 @@ Ellama, using the ~ellama-keymap-prefix~ prefix (not set by 
default):
 | "s c"  | ellama-summarize-killring   | Summarize killring   |
 | "s l"  | ellama-load-session | Session Load |
 | "s r"  | ellama-session-rename   | Session rename   |
-| "s d"  | ellama-session-remove   | Session delete   |
+| "s d"  | ellama-session-delete   | Delete delete|
 | "s a"  | ellama-session-switch   | Session activate |
 | "P"| ellama-proofread| Proofread|
 | "i w"  | ellama-improve-wording  | Improve wording  |
diff --git a/ellama.el b/ellama.el
index 1424c9da60..be16ba306a 100644
--- a/ellama.el
+++ b/ellama.el
@@ -147,7 +147,7 @@ Make reasoning models more useful for many cases."
 ;; session
 (define-key map (kbd "s l") 'ellama-load-session)
 (define-key map (kbd "s r") 'ellama-session-rename)
-(define-key map (kbd "s d") 'ellama-session-remove)
+(define-key map (kbd "s d") 'ellama-session-delete)
 (define-key map (kbd "s a") 'ellama-session-switch)
 ;; improve
 (define-key map (kbd "i w") 'ellama-improve-wording)
@@ -956,8 +956,8 @@ If EPHEMERAL non nil new session will not be associated 
with any file."
 `((ignore . 
(,ellama-chat-display-action-function)))
 
 ;;;###autoload
-(defun ellama-session-remove ()
-  "Remove ellama session."
+(defun ellama-session-delete ()
+  "Delete ellama session."
   (interactive)
   (let* ((id (completing-read
  "Select session to remove: "
@@ -3021,7 +3021,7 @@ Call CALLBACK on result list of strings.  ARGS contains 
keys for fine control.
   [["Session Commands"
 ("l" "Load Session" ellama-load-session)
 ("r" "Rename Session" ellama-session-rename)
-("d" "Remove Session" ellama-session-remove)
+("d" "Delete Session" ellama-session-delete)
 ("a" "Activate Session" ellama-session-switch)]
["Quit" ("q" "Quit" transient-quit-one)]])
 



[elpa] externals/ellama 22dcffff59 13/14: Add changelog documentation

2025-02-22 Thread ELPA Syncer
branch: externals/ellama
commit 22dc595f7bc8a358be3ebfb1ca95c17e4a37
Author: Sergey Kostyaev 
Commit: Sergey Kostyaev 

Add changelog documentation

Added a new changelog file to document changes based on git logs in markdown
list format.
---
 docs/changelog.org | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/docs/changelog.org b/docs/changelog.org
new file mode 100644
index 00..a713a2d381
--- /dev/null
+++ b/docs/changelog.org
@@ -0,0 +1,3 @@
+Based on this git log write short changelog in markdown list format. Do not add
+any headings or anknowledgements. Every changelog element should be ended with
+full stop.



[elpa] externals/ellama 556c015e1c 05/14: Fix test cases

2025-02-22 Thread ELPA Syncer
branch: externals/ellama
commit 556c015e1cf2afa48aa40900655455f30027cab8
Author: Sergey Kostyaev 
Commit: Sergey Kostyaev 

Fix test cases
---
 tests/test-ellama.el | 58 +---
 1 file changed, 19 insertions(+), 39 deletions(-)

diff --git a/tests/test-ellama.el b/tests/test-ellama.el
index b88e2226ce..b1fb087ded 100644
--- a/tests/test-ellama.el
+++ b/tests/test-ellama.el
@@ -251,70 +251,70 @@
 ```tex
 \\documentclass{article}
 \\usepackage{tikz} \\begin{document}
-\\begin{tikzpicture} \\node[rectangle, draw=blue, fill=blue!20] (mynode) 
{Text};
+\\begin{tikzpicture} \\node[rectangle, draw=blue] (mynode) {Text};
 \\end{tikzpicture}
 \\end{document}
 ```
 This code will create a rectangle with a blue border and light
-blue filling. You can replace \'Text\' with your desired text or other TikZ
-elements.")))
+blue filling. You can replace \'Text\' with your desired text
+or other TikZ elements.")))
 (should (string-equal result "Here is your TikZ code for a blue rectangle:
 #+BEGIN_SRC tex
 \\documentclass{article}
 \\usepackage{tikz} \\begin{document}
-\\begin{tikzpicture} \\node[rectangle, draw=blue, fill=blue!20] (mynode) 
{Text};
+\\begin{tikzpicture} \\node[rectangle, draw=blue] (mynode) {Text};
 \\end{tikzpicture}
 \\end{document}
 #+END_SRC
 This code will create a rectangle with a blue border and light
-blue filling. You can replace \'Text\' with your desired text or other TikZ
-elements."
+blue filling. You can replace \'Text\' with your desired text
+or other TikZ elements."
 
 (ert-deftest test-ellama-md-to-org-code-hard ()
   (let ((result (ellama--translate-markdown-to-org-filter "Here is your TikZ 
code for a blue rectangle:
 ```
 \\documentclass{article}
 \\usepackage{tikz} \\begin{document}
-\\begin{tikzpicture} \\node[rectangle, draw=blue, fill=blue!20] (mynode) 
{Text};
+\\begin{tikzpicture} \\node[rectangle, draw=blue] (mynode) {Text};
 \\end{tikzpicture}
 \\end{document}
 ```
 This code will create a rectangle with a blue border and light
-blue filling. You can replace \'Text\' with your desired text or other TikZ
-elements.")))
+blue filling. You can replace \'Text\' with your desired text or other
+TikZ elements.")))
 (should (string-equal result "Here is your TikZ code for a blue rectangle:
 #+BEGIN_SRC
 \\documentclass{article}
 \\usepackage{tikz} \\begin{document}
-\\begin{tikzpicture} \\node[rectangle, draw=blue, fill=blue!20] (mynode) 
{Text};
+\\begin{tikzpicture} \\node[rectangle, draw=blue] (mynode) {Text};
 \\end{tikzpicture}
 \\end{document}
 #+END_SRC
 This code will create a rectangle with a blue border and light
-blue filling. You can replace \'Text\' with your desired text or other TikZ
-elements."
+blue filling. You can replace \'Text\' with your desired text or other
+TikZ elements."
 
 (ert-deftest test-ellama-md-to-org-code-nightmare ()
   (let ((result (ellama--translate-markdown-to-org-filter "Here is your TikZ 
code for a blue rectangle:
 ```
 \\documentclass{article}
 \\usepackage{tikz} \\begin{document}
-\\begin{tikzpicture} \\node[rectangle, draw=blue, fill=blue!20] (mynode) 
{Text};
+\\begin{tikzpicture} \\node[rectangle, draw=blue] (mynode) {Text};
 \\end{tikzpicture}
 \\end{document}```This code will create a rectangle with a blue border and 
light
-blue filling. You can replace \'Text\' with your desired text or other TikZ
-elements.")))
+blue filling. You can replace \'Text\' with your desired text
+or other TikZ elements.")))
 (should (string-equal result "Here is your TikZ code for a blue rectangle:
 #+BEGIN_SRC
 \\documentclass{article}
 \\usepackage{tikz} \\begin{document}
-\\begin{tikzpicture} \\node[rectangle, draw=blue, fill=blue!20] (mynode) 
{Text};
+\\begin{tikzpicture} \\node[rectangle, draw=blue] (mynode) {Text};
 \\end{tikzpicture}
 \\end{document}
 #+END_SRC
 This code will create a rectangle with a blue border and light
-blue filling. You can replace \'Text\' with your desired text or other TikZ
-elements."
+blue filling. You can replace \'Text\' with your desired text
+or other TikZ elements."
 
 (ert-deftest test-ellama-md-to-org-code-multiple-bad-blocks ()
   (let ((result (ellama--translate-markdown-to-org-filter "Some text:
@@ -407,27 +407,7 @@ In this example:
 - The function name `calculate_average_score` also follows the snake_case 
convention.
 
 Snake case helps improve readability, especially in languages that are 
sensitive to capitalization like Python.")))
-(should (string-equal result "#+BEGIN_SRC python
-# Example of snake case variables and functions
-
-# Variable names using snake_case
-student_name = \"Alice Johnson\"
-class_name = \"Mathematics\"
-grade_level = 10
-
-# Function name using snake_case
-def calculate_average_score(math_score, science_score, english_score):
-average_score = (math_score + science_score + english_score) / 3
-return average_score
-
-# Using the function
-student_math_score = 85
-student_science_score

[elpa] externals/company updated (d43155c31f -> 5bb6f6d3d4)

2025-02-22 Thread ELPA Syncer
elpasync pushed a change to branch externals/company.

  from  d43155c31f Print the value of current capf in company-diag as well
   new  64e86efc38 Adapt company-version to the MELPA change
   new  0a0cdad605 Fix byte-compilation warning
   new  5bb6f6d3d4 Fix one more warning


Summary of changes:
 company.el | 13 +
 1 file changed, 9 insertions(+), 4 deletions(-)



[nongnu] elpa/helm 4ccdefb7d0 2/2: Remove helm-bookmark-override-inheritor no more needed

2025-02-22 Thread ELPA Syncer
branch: elpa/helm
commit 4ccdefb7d0f71da930ffdd39c6630c53d2e672e6
Author: Thierry Volpiatto 
Commit: Thierry Volpiatto 

Remove helm-bookmark-override-inheritor no more needed
---
 helm-bookmark.el | 10 ++
 1 file changed, 2 insertions(+), 8 deletions(-)

diff --git a/helm-bookmark.el b/helm-bookmark.el
index 5c9a93a97e..0243fda325 100644
--- a/helm-bookmark.el
+++ b/helm-bookmark.el
@@ -581,11 +581,9 @@ If `browse-url-browser-function' is set to something else 
than
 (define-key map (kbd "C-x C-d") #'helm-bookmark-run-browse-project)
 map))
 
-;; Same as `helm-source-filtered-bookmarks' but override actions and keymap
-;; specifically for helm-find-files bookmarks.
-(defclass helm-bookmark-override-inheritor (helm-source) ())
+(defclass helm-bookmark-find-files-class (helm-source-filtered-bookmarks) ())
 
-(cl-defmethod helm--setup-source ((source helm-bookmark-override-inheritor))
+(cl-defmethod helm--setup-source ((source helm-bookmark-find-files-class))
   ;; Ensure `helm-source-in-buffer' method is called.
   (cl-call-next-method)
   (setf (slot-value source 'action)
@@ -599,10 +597,6 @@ If `browse-url-browser-function' is set to something else 
than
  '(("Browse project" . helm-bookmark-browse-project)) 1))
   (setf (slot-value source 'keymap) helm-bookmark-find-files-map))
 
-(defclass helm-bookmark-find-files-class (helm-source-filtered-bookmarks
-  helm-bookmark-override-inheritor)
-  ())
-
 (defun helm-source-bookmark-helm-find-files-builder ()
   (helm-bookmark-build-source
"Bookmark helm-find-files sessions"