見出し画像

【Asciidoc】ファイル組込み ー分割単位は?ー

ファイルの分割単位はどのくらいが適当?
考えすぎると沼に嵌るような気がするが。。。
「AsciiDoc Language Documentation」では「チャプター(章単位)で考えているのかな」と思われます。
例題では、

= My book

include::chapter01.adoc[]

include::chapter02.adoc[]

include::chapter03.adoc[]

を置いて

= My book

include::chapter01.adoc[+1]

include::chapter02.adoc[+1]

include::chapter03.adoc[+1]

「レベルオフセット」を使って「章から編へ」昇格できますよ的な解説をしています。(無論、マイナス記号を利用して降格も出来ます。)
また、複数回同じファイルを組み込む事を考えてセクションに付く「ID」や「クロスリファレンス」を変数処理する方法を定義している。

これらを考えると「考えながら書いていて大きくなったら分割する」や「再利用する部分を分割する」と言う「セクション」単位の分割を主とする執筆に対応したものになっていると思う。

自分も最初これに従って書いていたのだが、どうも性に合わない。ファイル名の積み重ねだと、書き直したい文節がどのファイルに属していたか直ぐに判断できない時がある。(単純に、歳だというのもあるが・・・)
 「ID」の変数化処理とかも考えたくない。気軽に書きたい。
* ブロックタイトルレベルで留めセクションは分割ファイルに含まない。
アイデアメモや文献メモ等、項や目といったブロック単位のファイルにする方が自分にはあっていました。
共同体で文章を作成する場合、この辺の兼ね合いを考慮する必要がありますが、かなり難題です。

さて、「上手く利用しているな」という例は「農林水産研究情報総合センター」様のサイトに在る「7.1. 議事録」です。(リンク ⬇)

これを「会議名+日付」若しくは「年度+分書番号」の様なファイル名で保存しておけば。。。

= プロジェクト会議議事録

== XX年度

include::XX_00000.adoc[]

又は

= プロジェクト会議議事録(XX年度)

include::XX_00000.adoc[leveloffset=+1]

とすると、その年度の議事録が纏められます。
PDF結合マージよりずっと楽に纏めることが出来ます。
この纏めを想定した段組みの深さを「農林水産研究情報総合センター」様は設定しているのだと思います。
これは、「セクション付きのファイルを纏めたら上手く行くよ」という好例なのでしょう。

「note」記事を纏めて一冊にということであれば、ブロック単位にしておいて、セクション見出しでアウトラインを設計して間に組み込むのが良いように思います。
やはり設計次第ということでしょう。

実は・・・
「AsciidocFX」や「VScode」のアウトライン表示が組み込みインクルード処理すると抜けや入繰りが発生する場合が稀にあり、この問題を考え始めました。
当初は「日本語のせい?」「組み込みのせい?」とか・・・
今は「いつもの、よくあるOSSの仕様バグだよね。」と・・・「プログラム・エディターと同一構造なので文頭以外でインクルード文は認められていないんだ。きっと。。。」と、アウトライン表示機能は殆ど使ってません。

まあ、アウトライン構造を把握しやすくするために、「アウトライン構造」である「セクション」は一つのファイルに纏め、内容をファイルに分割すると言う、自分なりの「ファイル分割スタイル」に至ったと言う訳です。
ファイル数が増えるのが欠点です。
(利用しないファイルもいつの間にか増えてます。)
該当ファイルを探す時、「grep」は友達・・・。ディレクトリ構造を見直したほうがいいかな・・・。

さて、今回はこのあたりまで・・・・・・
次回は、書誌情報について書いてみようと思います。
…ではまた。

当Noteは下記の「AsciiDoc Language Documentation」の文法に従っています。


いいなと思ったら応援しよう!