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

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

[elpa] externals/org-real d557262 011/160: Switched to before and after


From: ELPA Syncer
Subject: [elpa] externals/org-real d557262 011/160: Switched to before and after advice for advising `org-insert-link'
Date: Wed, 6 Oct 2021 16:58:05 -0400 (EDT)

branch: externals/org-real
commit d557262556a34947c09bc860d1cac5f5165b73cc
Author: Tyler Grinn <tylergrinn@gmail.com>
Commit: Tyler Grinn <tylergrinn@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 e6ca418..ce63639 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]