On Sun, Mar 29 2020, Berry, Charles via General discussions about
Org-mode. wrote:
On Mar 28, 2020, at 3:00 PM, Joost Kremers
<joostkrem...@fastmail.fm> wrote:
Is this expected behaviour? Am I doing something wrong?
IIUC what you did, then yes and yes.
This is the accepted idiom:
#+PROPERTY: header-args :tangle yes
I have tried:
#+begin_example
#+PROPERTY: header-args:python :tangle yes :dir
/home/joost/tmp/dlpy
#+end_example
which AFAICT is the syntax shown in the info node you mentioned. I
have also tried a file name instead of =yes=, both with and
without quotes, but it doesn't work.
What I really want is to have a property block with the =:tangle=
arg under each top-level header, like so:
#+begin_example
:PROPERTIES:
:header-args:python: :tangle out1.py
:END:
#+begin_example
because I want the code below each top-level header to be tangled
to a separate file. Again, AFAICT this is the syntax described in
the info manual.
Hmm, experimenting a bit more I find that if I leave out the
=python= part, it works:
#+begin_example
:PROPERTIES:
:header-args: :tangle out1.py
:END:
#+begin_example
But the info manual gives this example:
#+begin_example
:PROPERTIES:
:header-args:clojure: :session *clojure-1*
:END:
#+begin_example
The same is true for the #+PROPERTY block at the top of the file:
leave out the =python=, it works. Isn't it possible to restrict
tangling to source blocks of a particular language? (Or, more
specifically what I want: to specify different tangling targets
for different language? I wanted to have both python and bash code
blocks under one header and have them tangled to different
files...)
Joost
--
Joost Kremers
Life has its moments