使用 org-babel 进行文学编程
我正在使用 org-babel 进行读写程序。我的源代码的结构如下,
-imports
-utility fns
-game structure
- detailed explanations
这是代码的正常结构,我想做的是将实用程序 fns 的解释移到最后,这样它就不会首先显示在生成的 pdf 文件中。现在这可以通过 noweb 扩展来完成,但问题是当你每个函数都有很多小函数时,我必须添加一个具有唯一名称的 src_block 向下滚动文件并在文件中添加对此文件的引用,这真的很烦人。有没有办法命名一个节中的所有 src_blocks?假设本节中的所有代码都进入块 A。
I am on a literate program using org-babel. My source is structured like so,
-imports
-utility fns
-game structure
- detailed explanations
This is the normal structure of the code, what I would like to do is move explanations of the utility fns to the end so it does not show up first in the generated pdf file. Now this can be done with noweb extension, but the problem is when you have lots of little functions for each one I have to add a src_block with a unique name scroll down the file and add a reference to that in the file which is really annoying. Is there a way to name all the src_blocks in a section? say all code in this section goes into block A.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您可以为多个块指定相同的名称。例如,我使用 org-tangle 生成 .emacs 文件,在 org 文件的顶部,我有一个看起来像这样的主模板:
在它下面,我的大纲包含源代码块,如下所示:
注意:对于旧版本的 org-mode,您可能需要使用
#+srcname:
而不是#+name:
您也可以 创建一个名为
noweb-ref
的属性,该属性将相同的名称应用于所有源子树中的块。You can give multiple chunks the same name. For example, I generate my .emacs file with org-tangle, and at the top of the org file, I have a master template that looks something like this:
Underneath that, I have my outline with source blocks like so:
Note: for older versions of org-mode, you may need to use
#+srcname:
instead of#+name:
You can also create a property called
noweb-ref
, which applies the same name to all source blocks in a sub-tree.