From mboxrd@z Thu Jan 1 00:00:00 1970 From: tsd@tsdye.com (Thomas S. Dye) Subject: Re: [babel] eval code only once :eval once Date: Tue, 17 Apr 2012 06:15:16 -1000 Message-ID: References: <803984ympe.fsf@somewhere.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Return-path: Received: from eggs.gnu.org ([208.118.235.92]:52979) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SKB4J-0002d1-Tb for emacs-orgmode@gnu.org; Tue, 17 Apr 2012 12:15:57 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1SKB4F-0000eT-7U for emacs-orgmode@gnu.org; Tue, 17 Apr 2012 12:15:51 -0400 Received: from plane.gmane.org ([80.91.229.3]:59925) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SKB4E-0000eH-W2 for emacs-orgmode@gnu.org; Tue, 17 Apr 2012 12:15:47 -0400 Received: from public by plane.gmane.org with local (Exim 4.69) (envelope-from ) id 1SKB47-0006f4-PW for emacs-orgmode@gnu.org; Tue, 17 Apr 2012 18:15:39 +0200 In-Reply-To: <803984ympe.fsf@somewhere.org> (Sebastien Vauban's message of "Mon, 16 Apr 2012 12:50:53 +0200") List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org Sender: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org To: Sebastien Vauban Cc: public-emacs-orgmode-mXXj517/zsQ@plane.gmane.org "Sebastien Vauban" writes: > Hi Thomas, > > Thomas S. Dye wrote: >> Torsten Wagner writes: >>> I started to use lisp (as well as other) code blocks more and more to >>> modify my work environment (emacs) for a particular (buffer-based) >>> task. >>> That is I change some variables, add some stuff etc. >>> A real world example is for example the section below >>> >>> * Set-up :nonexport: >>> #+source: setup-minted >>> #+begin_src emacs-lisp :exports none :results silent >>> (setq org-export-latex-listings 'minted) >>> (setq org-export-latex-custom-lang-environments >>> '( >>> (emacs-lisp "common-lispcode") >>> )) >>> (setq org-export-latex-minted-options >>> '(("frame" "lines") >>> ("fontsize" "\\scriptsize") >>> ("linenos" ""))) >>> (setq org-latex-to-pdf-process >>> '("pdflatex -shell-escape -interaction nonstopmode >>> -output-directory %o %f" >>> "pdflatex -shell-escape -interaction nonstopmode >>> -output-directory %o %f" >>> "pdflatex -shell-escape -interaction nonstopmode >>> -output-directory %o %f")) >>> #+end_src >>> >>> This are settings from worg, which I use only during my work on that >>> particular file/buffer e.g. to modify the export of the following >>> beamer presentation. >>> Whenever I load the buffer I jump to set-up and hit C-c C-C to execute >>> it once. After that exports will do what I want. >>> If I would change the above to :exports results and :results silent I >>> would be asked to execute the code block on every export. >>> Thanks to the new auto completion feature, I came across :eval and >>> wonder if it makes sense to add >>> :eval once >>> and >>> :eval once-query >>> >>> Which would allow to execute it only once (with query) if not called >>> before and otherwise keeps quite. >>> That would make *Set-up blocks much more efficient. >>> Was thinking why there is no 'no-query' resp. 'always' flag which >>> would execute code blocks without query even if asked for it in >>> general but that would be somehow against safety measures ;) >> >> Aloha Totti, >> >> Will :cache yes do what you want? > > I'd answer no, as this wouldn't be re-eval'ed the next time he opens that > buffer. > > But...? > > Best regards, > Seb Aloha Seb, Yes, you're right. Perhaps #+BIND: then, instead of a babel code block? Tom -- Thomas S. Dye http://www.tsdye.com