From a2ba24cc1172258abd98eee6350cdb672e50e4de Mon Sep 17 00:00:00 2001 From: Hendrik Tews Date: Fri, 14 Jan 2011 09:12:20 +0000 Subject: - simple backward compatible change to invoke a function to compute the command line arguments for a proof assistant --- generic/proof-shell.el | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) (limited to 'generic') diff --git a/generic/proof-shell.el b/generic/proof-shell.el index a09ddd78..9b0c876a 100644 --- a/generic/proof-shell.el +++ b/generic/proof-shell.el @@ -234,11 +234,16 @@ process command." ;; Starting the inferior process (asynchronous) (let* ((prog-name-list1 - (if (proof-ass prog-args) - ;; If argument list supplied in -prog-args, use that. - (cons proof-prog-name (proof-ass prog-args)) - ;; Otherwise, cut prog name on spaces - (split-string proof-prog-name))) + (if (functionp (proof-ass-sym prog-args)) + ;; complex assistants define -prog-args as function + ;; that computes the argument list. + (cons proof-prog-name (funcall (proof-ass-sym prog-args))) + (if (proof-ass prog-args) + ;; Intermediate complex assistants set the value + ;; of -prog-args to the argument list. + (cons proof-prog-name (proof-ass prog-args)) + ;; Trivial assistants simply set proof-prog-name + (split-string proof-prog-name)))) (prog-name-list ;; Splice in proof-rsh-command if it's non-nil (if (and proof-rsh-command -- cgit v1.2.3