16

私はorg-babelを使った文芸的プログラムに参加しています。私のソースはそのように構成されています、

-imports
-utility fns
-game structure
 - detailed explanations

これはコードの通常の構造です。私がやりたいのは、ユーティリティfnsの説明を最後に移動して、生成されたpdfファイルに最初に表示されないようにすることです。これはnoweb拡張子で実行できますが、問題は、それぞれに小さな関数がたくさんある場合、一意の名前のsrc_blockを追加してファイルを下にスクロールし、ファイルにその参照を追加する必要があることです。これは本当に面倒です。 。セクション内のすべてのsrc_blockに名前を付ける方法はありますか?このセクションのすべてのコードがブロックAに入ると言います。

4

1 に答える 1

11

複数のチャンクに同じ名前を付けることができます。たとえば、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

その下に、次のようなソースブロックを含むアウトラインがあります。

* 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:

サブツリー内のすべてのソースブロックに同じ名前を適用する、というプロパティを作成するnoweb-refこともできます。

于 2011-12-15T08:31:43.830 に答える