emacs-elpa-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[elpa] externals/org-real 60b0eb8822 011/188: Switched to before and aft


From: ELPA Syncer
Subject: [elpa] externals/org-real 60b0eb8822 011/188: Switched to before and after advice for advising `org-insert-link'
Date: Sun, 5 May 2024 22:55:48 -0400 (EDT)

branch: externals/org-real
commit 60b0eb88228f8c961bb7bdb90cc0681ac529ef06
Author: Amy Grinn <grinn.amy@gmail.com>
Commit: Amy Grinn <grinn.amy@gmail.com>

    Switched to before and after advice for advising `org-insert-link'
---
 org-real.el | 22 ++++++++++++----------
 1 file changed, 12 insertions(+), 10 deletions(-)

diff --git a/org-real.el b/org-real.el
index e6ca418f31..ce63639cc5 100644
--- a/org-real.el
+++ b/org-real.el
@@ -421,27 +421,29 @@ matching the one returned from `completing-read'."
         existing-containers
       `((:name ,result)))))
 
-(defun org-real--read-string-advice (orig prompt link)
+(defun org-real--read-string-advice (orig prompt link &rest args)
   "Advise `read-string' during `org-insert-link' to use custom completion.
 
 ORIG is `read-string', PROMPT and LINK are the arguments passed
 to it."
   (if (string= "real" (ignore-errors (url-type (url-generic-parse-url link))))
       (org-real-complete link)
-    (funcall orig prompt link)))
+    (apply orig prompt link args)))
 
-(defun org-real--insert-link-advice (orig &rest args)
+(defun org-real--insert-link-before (&rest args)
   "Advise `org-insert-link' to advise `read-string' during editing of a link.
 
-ORIG is `org-insert-link' and ARGS are the arguments passed to
-it."
-  (advice-add 'read-string :around #'org-real--read-string-advice)
-  (if (called-interactively-p 'any)
-      (call-interactively orig)
-    (apply orig args))
+ARGS are the arguments passed to `org-insert-link'."
+  (advice-add 'read-string :around #'org-real--read-string-advice))
+
+(defun org-real--insert-link-after (&rest args)
+  "Advise `org-insert-link' to advise `read-string' during editing of a link.
+
+ARGS are the arguments passed to `org-insert-link'."
   (advice-remove 'read-string #'org-real--read-string-advice))
 
-(advice-add 'org-insert-link :around #'org-real--insert-link-advice)
+(advice-add 'org-insert-link :before #'org-real--insert-link-before)
+(advice-add 'org-insert-link :after #'org-real--insert-link-after)
 
 ;;;; Pretty printing
 



reply via email to

[Prev in Thread] Current Thread [Next in Thread]