Eric S Fraga <e.fr...@ucl.ac.uk> writes: > <ken.willi...@thomsonreuters.com> writes: > >> Hi, >> >> I know from the manual that I can set 'org-confirm-babel-evaluate' to t, >> or nil, or a function, to control whether I'm asked permission to run a >> code block. >> >> However, that only gives me two choices - ask the user, or pretend the >> user said "yes". Sometimes I'd like to pretend the user said "no", >> without asking. >> >> Specifically, I'd like to always manually control when code blocks are >> executed. When exporting, I don't want them executed (and I don't want to >> be asked about my dozens of blocks each time). When hitting C-c C-c >> manually, I just want it to run (and I don't want to be asked whether I'm >> sure). >> >> Is there a similar variable, or perhaps an export option, that will give >> me this kind of workflow? >> >> Thanks. > > I can't help you directly although I also often want the behaviour you > are describing. One workaround that should give you what you want is to > enable evaluation without prompting (org-confirm-babel-evaluate: nil) > and to have the results from runs cached so that, when exporting, the > source code blocks shouldn't have to execute; see [[info:org#cache]].
There is no way to customize `org-confirm-evaluate' to achieve this behavior, however it can be accomplished through creative use of the :eval header argument, by using the `org-export-current-backend' variable to inhibit evaluation during export. #+begin_src emacs-lisp :eval (if org-export-current-backend "never" "yes") :exports results (message "launch missles") #+end_src Best -- Eric -- Eric Schulte http://cs.unm.edu/~eschulte/