From mboxrd@z Thu Jan 1 00:00:00 1970 From: Lawrence Bottorff Subject: Re: Running in-line babel code at auto-insert template file open Date: Wed, 26 Feb 2020 21:21:27 -0600 Message-ID: References: Mime-Version: 1.0 Content-Type: multipart/alternative; boundary="0000000000000a7a5f059f863806" Return-path: Received: from eggs.gnu.org ([2001:470:142:3::10]:54395) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1j79k5-0002YZ-N9 for emacs-orgmode@gnu.org; Wed, 26 Feb 2020 22:21:42 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1j79k4-0002E3-7a for emacs-orgmode@gnu.org; Wed, 26 Feb 2020 22:21:41 -0500 Received: from mail-lj1-x22f.google.com ([2a00:1450:4864:20::22f]:44657) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1j79k3-0002Bt-Vr for emacs-orgmode@gnu.org; Wed, 26 Feb 2020 22:21:40 -0500 Received: by mail-lj1-x22f.google.com with SMTP id q8so1569287ljj.11 for ; Wed, 26 Feb 2020 19:21:39 -0800 (PST) In-Reply-To: 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-mx.org@gnu.org Sender: "Emacs-orgmode" To: emacs-orgmode Mailinglist --0000000000000a7a5f059f863806 Content-Type: text/plain; charset="UTF-8" Got a good answer over at emacs.stackexchange that uses Emacs text-buffer lore. Still, it seems like org-mode should be able to auto-run in-line code just like the solution does. Alas, someday I hope to be able to just tackle a problem like this and submit the solution. Hope springs eternal (which Google-Gmail just auto-completed!)... On Mon, Feb 24, 2020 at 9:51 PM Lawrence Bottorff wrote: > Let's say I have a standard org file I want to have created multiple > times. I've created a template file and told Emacs autoinsert where it is. > Here's the relevant in my init > > (use-package autoinsert > :ensure t > ... > :config > (define-auto-insert "poolchem.org?$" "poolchem.org")) > > So in this template file poolchem.org I have six table skeletons, but I > also want various customized additions. For example, I would like the table > names to reflect the current week starting with the coming Sunday's date > > #+tblname: pc1-*src_emacs-lisp[:results raw]{(org-read-date nil nil > "++sun" nil (org-time-string-to-time "2020-02-24"))}* > > which would hopefully show up in the newly created buffer as > > #+tblname: pc1-2020-03-01 > > But then nothing of the sort happens, i.e., the in-line code just comes > back verbatim when I create a new file, unevaluated. I guess I'm totally > missing what is going on with in-line code. It seems other methods of > template creation allow code to be embedded, then to be evaluated. (The > variable auto-insert-alist has entire templates.) I've experimented with > eval of org-sbe in # local variables: ... but that was for running code > blocks upon file open, not individual embedded functions that would > customize my newly created org file. Any ideas? > > LB > > --0000000000000a7a5f059f863806 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Got a good answer over at
Let's say I have a standard org file I want to have created multiple t= imes. I've created a template file and told Emacs autoinsert where it i= s. Here's the relevant in my init

(use-package autoi= nsert
=C2=A0 :ensure t
=C2=A0 ...
=C2=A0 :config
=C2=A0 (define= -auto-insert "pool= chem.org?$" "poolchem.org"))

So in this template file = poolchem.org I have s= ix table skeletons, but I also want various customized additions. For examp= le, I would like the table names to reflect the current week starting with = the coming Sunday's date

#+tblname: pc1-src= _emacs-lisp[:results raw]{(org-read-date nil nil "++sun" nil (org= -time-string-to-time "2020-02-24"))}

=
which would hopefully show up in the newly created buffer as

#+tblname: pc1-2020-03-01

But = then nothing of the sort happens, i.e., the in-line code just comes back ve= rbatim when I create a new file, unevaluated. I guess I'm totally missi= ng what is going on with in-line code. It seems other methods of template c= reation allow code to be embedded, then to be evaluated. (The variable auto= -insert-alist has entire templates.) I've experimented with eval of org= -sbe in # local variables: ... but that was for running code blocks upon fi= le open, not individual embedded functions that would customize my newly cr= eated org file. Any ideas?

LB

=
--0000000000000a7a5f059f863806--