Si vous avez besoin de tout pour vous emmêler dans un seul fichier, vous pouvez utiliser cette solution de contournement incroyablement hacky qui utilise orgmode pour transformer une table en code généré dans une deuxième (ou troisième!) Langue.
Votre table (1):
#+tblname: personae-table
| Set | Description | variable | Value |
|-----+--------------------+----------+-------|
| DEP | Fam Med Department | famDep | 23 |
Votre générateur de code (2):
#+name: python-generate-new-and-set-vars-blocks
#+BEGIN_SRC python :var records=personae-table :exports results :results output verbatim drawer
print("#+name: variables")
print("#+BEGIN_SRC mumps")
print("n " + ",".join(line[3] for line in records))
print("s " +
",".join(
"{}={}".format([line[2], str(line[3])]) for line in records))
print()
print("#+END_SRC")
#+END_SRC
Les résultats de votre générateur (3):
#+results: python-generate-new-and-set-vars-blocks
:RESULTS:
#+name: variables
#+BEGIN_SRC mumps
n famDep
s famDep=23
#+END_SRC
:END:
Votre bloc factice qui précompile les blocs à emmêler (4):
#+BEGIN_SRC emacs-lisp :tangle yes :var DUMMY=(progn (org-babel-goto-named-src-block "python-generate-new-and-set-vars-blocks") (org-ctrl-c-ctrl-c))
; run pre-tangle hooks by putting them in the var.
#+END_SRC
Votre bloc de sortie qui emmêle le code généré (5):
#+BEGIN_SRC mumps :tangle fixed.m :noweb tangle :padline no
run()
<<variables>>
#+END_SRC
L'exécution va 4, 1, 2, 3, 5. Je ne sais pas si je devrais être fier ou avoir honte. Orgmode est incroyable.