emacs - 使用 org-babel 进行文学编程

标签 emacs org-mode literate-programming org-babel

我正在使用 org-babel 进行识字程序。我的来源的结构是这样的,

-imports
-utility fns
-game structure
 - detailed explanations

这是代码的正常结构,我想做的是把实用程序 fns 的解释移到最后,这样它就不会首先出现在生成的 pdf 文件中。现在这可以用 noweb 扩展来完成,但问题是当你有很多小功能时,我必须添加一个具有唯一名称的 src_block 向下滚动文件并在文件中添加对它的引用,这真的很烦人.有没有办法命名一个部分中的所有 src_blocks?假设本节中的所有代码都进入 block A。

最佳答案

您可以为多个 block 赋予相同的名称。例如,我使用 org-tangle 生成我的 .emacs 文件,在 org 文件的顶部,我有一个看起来像这样的主模板:

#+begin_src emacs-lisp :tangle "/path/to/.emacs" :comments both :noweb tangle
<<generated-file-warning>
<<includes>>
<<definitions>>
<<settings>>
<<generated-file-warning>
#+end_src

在此之下,我的大纲带有如下源 block :
* extensions
** yasnippet

#+name: early-includes
#+begin_src emacs-lisp
(require 'yasnippet)
(yas/initialize)
#+end_src

#+name: settings
#+begin_src emacs-lisp
(yas/load/directory "/path/to/my/snippets")
#+end_src

注:对于旧版本的 org-mode,您可能需要使用 #+srcname:而不是 #+name:
您也可以create a property called noweb-ref ,它将相同的名称应用于子树中的所有源 block 。

关于emacs - 使用 org-babel 进行文学编程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6694678/

相关文章:

emacs,如何多次调用 kill-region?

vim - 在 Vim 与 Emacs 中编辑非 ASCII 文本

emacs - 在 org 模式下重新归档列表项

html - 从组织模式 : custom date format 导出 html

emacs - 如何在 org-babel 的评估(导出)源 block 中导入/扩展 noweb refs?

scons - 使用 scons 进行文学编程

linux - 如何在 Linux 终端中显示 GUI 应用程序的窗口标题

emacs - 如何修复 aHg 输出编码?

org-mode - 枚举 org-mode 下的所有标签

documentation - Clojure文档工具的最新技术