Warning: this is an htmlized version!
The original is here, and the conversion rules are here. |
;; This file: ;; http://anggtwu.net/elisp/2025-modern-advice.el.html ;; http://anggtwu.net/elisp/2025-modern-advice.el ;; (find-angg "elisp/2025-modern-advice.el") ;; Author: Eduardo Ochs <eduardoochs@gmail.com> ;; ;; This is part of "Some problems of modernizing Emacs". ;; See: (find-angg "ORG/2025-modern.org") ;; (find-angg "elisp/2025-modern-prints.el") ;; (find-angg "elisp/2025-modern-reset.el") ;; ;; The prefix "adt" means "advice-test". ;; ;; «.advice-test-1» (to "advice-test-1") ;; «.advice-test-2» (to "advice-test-2") ;; «.advice-test-3» (to "advice-test-3") ;; «advice-test-1» (to ".advice-test-1") (defun adt-insert (o) (insert (format "\n;; --> %S" o))) (defun adt-1 () (adt-insert 1)) (defun adt-2 () (adt-insert 2)) (defun adt-3 () (adt-insert 3)) ;; (adt-2) (advice-add 'adt-2 :before 'adt-1) (advice-add 'adt-2 :after 'adt-3) ;; (adt-2) (advice-remove 'adt-2 'adt-1) (advice-remove 'adt-2 'adt-3) ;; (adt-2) ;; «advice-test-2» (to ".advice-test-2") (defun adt-insert (o) (insert (format "\n;; --> %S" o))) (defun adt-1 () (adt-insert 1)) (defun adt-2 () (adt-insert 2)) (defun adt-3 () (adt-insert 3)) ;; (advice-add 'adt-2 :before 'adt-1) (advice-add 'adt-2 :after 'adt-3) ;; (find-2a nil '(find-efunctiondescr 'adt-2)) (advice-remove 'adt-2 'adt-1) (advice-remove 'adt-2 'adt-3) ;; (find-2a nil '(find-efunctiondescr 'adt-2)) ;; «advice-test-3» (to ".advice-test-3") (defun adt-insert (o) (insert (format "\n;; --> %S" o))) (defun adt-1 () (adt-insert 1)) (defun adt-2 () (adt-insert 2)) (defun adt-3 () (adt-insert 3)) ;; (advice-add 'adt-2 :before 'adt-1) (advice-add 'adt-2 :after 'adt-3) ;; (find-2a nil '(find-efunctiondescr 'adt-2)) ;; (find-2a nil '(find-epp (symbol-function 'adt-2))) ;; (load "2025-modern-prints.el") ;; (find-2a nil '(find-clprin1ind (symbol-function 'adt-2))) ;; (load "2025-modern-reset.el") ;; (find-2a nil '(find-clprin1ind (symbol-function 'adt-2))) ;; (load "2025-modern-prints.el") ;; (find-2a nil '(find-clprin1ind (symbol-function 'adt-2))) (fmakunbound 'adt-2) (symbol-function 'adt-2) ;; Invalid read syntax: #f(advice :car adt-3 :how :after :cdr #f(advice :car adt-1 :how :before :cdr (lambda nil (adt-insert 2)) :props nil) :props nil) ;; (advice-remove 'adt-2 'adt-1) ;; (find-2a nil '(find-clprin1ind (symbol-function 'adt-2))) #f(advice :car adt-3 :how :after :cdr (lambda nil (adt-insert 2)) :props nil) ;; (advice-remove 'adt-2 'adt-3) ;; (find-2a nil '(find-clprin1ind (symbol-function 'adt-2))) (lambda nil (adt-insert 2)) ;; Local Variables: ;; coding: utf-8-unix ;; End: