【发布时间】:2021-03-22 06:45:50
【问题描述】:
我可以使用 org-babel-tangle 来缠结当前文件。我想知道你是否可以让 org export 缠结 org 文件中的所有代码块。
谢谢 EA
【问题讨论】:
我可以使用 org-babel-tangle 来缠结当前文件。我想知道你是否可以让 org export 缠结 org 文件中的所有代码块。
谢谢 EA
【问题讨论】:
我这样做是为了将我的 elisp 源代码块导出到特定文件
#+BEGIN_SRC emacs-lisp :tangle lisp-file.el
(message "Hello lisp-file")
#+END_SRC
我认为您也可以将其设置为属性,因此您可以在节点/树级别设置属性。
【讨论】:
我会这样做:
* build :noexport:
#+BEGIN_SRC emacs-lisp
(org-babel-tangle)
(org-latex-export-as-latex)
#+END_SRC
然后只需在代码块中键入 C-c C-c 进行缠结,然后导出。您可以将导出命令更改为您想要的其他导出类型。
【讨论】:
导出时运行org-babel-tangle:
#+NAME: tangle-it
#+BEGIN_SRC emacs-lisp :exports none
(org-babel-tangle)
#+END_SRC
#+BEGIN_SRC text :results silent :noweb yes :exports results
<<tangle-it()>>
#+END_SRC
#+BEGIN_SRC css :tangle test.css
body {
font-size: 12px;
}
#+END_SRC
与#+CALL: tangle-it()一起使用时不起作用。
也可以用宏来做到这一点:
#+MACRO: tangle-it (eval (progn (org-babel-tangle) ""))
{{{tangle-it()}}}
#+BEGIN_SRC css :tangle test.css
body {
font-size: 12px;
}
#+END_SRC
【讨论】: