// サブドキュメント化のマクロ ifndef::IncDocDir[] :IncDocDirTmp: {IncDocName} endif::[] ifdef::IncDocDir[] :IncDocDirTmp: {IncDocDir} endif::[] :imagesdir_back: {imagesdir} :imagesdir: {IncDocDirTmp}/Images ifndef::IncDocLvl[] :IncDocLvl: +2 endif::[] // タグが定義されていたらその範囲を取り込む ifdef::IncDocTag[] include::./{IncDocDirTmp}/{IncDocName}.adoc[tag={IncDocTag},leveloffset={IncDocLvl}] endif::[] // タグが無い場合は、サブドキュメント全体を取り込む ifndef::IncDocTag[] include::./{IncDocDirTmp}/{IncDocName}.adoc[leveloffset={IncDocLvl}] endif::[] // restore :imagesdir: {imagesdir_back} //// // tag::HelpSeparationDoc[] .##分離ドキュメントのヘルプです (行削除)## [%collapsible] ============================================= ======================== .◆分離ドキュメント構成の雛形です 画像ディレクトリは各ドキュメントの"Images"ディレクトリに固定。 ---- TemplateSeparateDocRoot.adoc ├─ Sub_First │ │ config.adoc │ │ Sub_First.adoc │ └─Images │ └─ Sub_Second │ config.adoc │ Sub_Second.adoc └─Images ---- .◆ルートドキュメント側の記述方法 サブドキュメントには不要。サブドキュメントのインクルード毎に記述する ``:IncDocName: <サブドキュメント名>``: :: [必須] インクルードする<サブドキュメント名>を指定。 実際のファイルは<サブドキュメント名>.adoc と拡張子をつけること。 ``include::IncDoc.adoc[]``: :: [必須] サブドキュメントをインクルードする場所。固定記述。 ``:IncDocDir: <ディレクトリ名>``: :: [省略可] インクルードする<ディレクトリ名>を指定。 省略した場合は<サブドキュメント名>が<ディレクトリ名> になる。 ``:IncDocLvl: <レベル>``: :: [省略可] サブドキュメントレベルを+Nで指定する。 タイトル行の"="のレベルを下げることができる +2を指定すると、"="が"==="としてIncludeされる。省略値は +2。 ``:IncDocTag: sub``: :: [省略可] サブドキュメントの取り出し範囲を指定します。サブドキュメント側タグ属性``sub[]``の領域を取り込む。 省略した場合、サブドキュメント全体を取り込みます。 .◆サブドキュメント側の記述 サブドキュメントは通常のAsciiDocの記述。 取り込み範囲を指定したい場合はルートドキュメント側``:IncDocTag: sub``指定に合わせて、以下のタグを指定する。 記述が無い場合、全体を取り組む。タグ名(sub)を変更すれば、別の範囲も取り込み可能。 ---- // サブドキュメントの取り込み範囲 // tag::sub[] ... 取り込みたい部分 // end::sub[] ---- .◆例 ルートドキュメント側 例.最小限: フォルダ名とサブドキュメント名が同一:: + ---- --- root.adoc -------- = Root title ... == First SubDocument :IncDocName: Sub_First include::IncDoc.adoc[] == Second SubDocument :IncDocName: Sub_Second include::IncDoc.adoc[] ---------------------- root.adoc +-- Sub_First\ + Sub_First.adoc + confing.adoc +-- Sub_Second\ + Sub_Second.adoc + confing.adoc ---- 例.カスタム: ディレクトリ名変更:: + ---- --- root.adoc -------- = Root title ... :IncDocDir: 01_Func :IncDocLvl: +2 == First SubDocument :IncDocName: Sub_First include::IncDoc.adoc[] == Second SubDocument :IncDocName: Sub_Second include::IncDoc.adoc[] ---------------------- サブドキュメントを01_FuncフォルダにSub_First.adocとSub_Second.adocを配置 root.adoc +-- 01_Func\ + Sub_First.adoc + Sub_Second.adoc ---- ======================== ============================================= // end::HelpSeparationDoc[] ////