From 96f1bd89e0c587f57342b42f450f32ce1e03d9c0 Mon Sep 17 00:00:00 2001 From: Michael Brand Date: Sun, 7 Feb 2016 12:36:03 +0100 Subject: [PATCH] `org-file-apps' add migration hint for function signature * lisp/org.el (org-open-file): Add a user error for when the function signature does not match. --- lisp/org.el | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/lisp/org.el b/lisp/org.el index cce4f3a43..e77fd4af8 100644 --- a/lisp/org.el +++ b/lisp/org.el @@ -11325,15 +11325,22 @@ If the file does not exist, an error is thrown." ((functionp cmd) (save-match-data (set-match-data link-match-data) - (funcall cmd file link))) + (condition-case nil + (funcall cmd file link) + ;; FIXME: Remove this check when most default installations + ;; of Emacs have at least Org 9.0. + ((debug wrong-number-of-arguments wrong-type-argument + invalid-function) + (user-error "Please see Org News for version 9.0 about \ +`org-file-apps'--Lisp error: %S" cmd))))) ((consp cmd) ;; FIXME: Remove this check when most default installations of ;; Emacs have at least Org 9.0. ;; Heads-up instead of silently fall back to ;; `org-link-frame-setup' for an old usage of `org-file-apps' ;; with sexp instead of a function for `cmd'. - (user-error - "Please see Org News for version 9.0 about `org-file-apps'")) + (user-error "Please see Org News for version 9.0 about \ +`org-file-apps'--Error: Deprecated usage of %S" cmd)) (t (funcall (cdr (assq 'file org-link-frame-setup)) file))) (and (derived-mode-p 'org-mode) (eq old-mode 'org-mode)