问题
I want to set PROGRAM-ARGS of start-process from a list.
Like,
(start-process process-name "*foobar*" process-path (append some-args (list (concat "the" "other" "arg"))))
But this makes error that "... is not string", because start-process accepts only string arguments.
How can I solve this?
回答1:
You want either apply or sometimes funcall. In this particular case I would go with apply but you need to be familiar with them both.
(apply #'start-process process-name "*foobar*" process-path
some-args other-args-as-a-list)
来源:https://stackoverflow.com/questions/7411152/how-to-set-a-part-of-arguments-from-a-list-in-emacs-lisp