を使って、自動番号付けや正しく機能する目次エントリなどを含む新しい環境を作成しました\newtcolorbox
。個々の項目は、章内の適切な場所に正確に表示されます。私が望むのは、これらの項目すべてを、章の最後やパートの最後、または付録などに再度表示することです。別の目次は必要なく、実際の環境項目を、テキストの本文に表示されるのと同じように、1 つの大きなコレクションに再度表示したいのです。この答えを探しても見つからなかったので、アドバイスをいただければ幸いです。
答え1
recording
の機能により、コンテンツtcolorbox
の再表示が簡素化されます。 を使用するにはいくつかの方法がありますがrecording
、ここでは 1 つだけ紹介します。
tcolorbox
コンテンツの最初の表示を目的とした環境を定義しdisplaythis
、そのコンテンツを という名前のファイルに保存します。\jobname.display\thetcbcounter
このファイルはなど に展開されます\jobname.display1
。\jobname.display2
言う
record={\string\redisplaythis[#1]{\jobname.display\thetcbcounter}}
環境のオプション リストで
displaythis
、レコード ファイルにtcolorbox
書き込むように指示します。\redisplaythis{#1}{\jobname.display\thetcbcounter}
tcolorbox
reddisplaythis
すでに保存されているコンテンツをロードするために必須引数を使用する合計を定義します。(\NewTotalTColorBox
には、 とは対照的に、ボックスのコンテンツも指定できるという利点がありますtcolorbox
)\tcbstartrecording[myenvironments.env]
保存する最初の環境の前、および\tcbstoprecording
最後の環境の後に使用します。\tcbinputrecords[myenvironments.env]
ついに再展示を申請します。
\documentclass{book}
\usepackage[most]{tcolorbox}
\usepackage{blindtext}
\makeatletter
\NewTColorBox[auto counter,list type=section,list inside=red]{displaythis}{O{}}{%
enhanced,
sharp corners,
title={My nice Environment \thetcbcounter},
saveto={\jobname.display\thetcbcounter},
record={\string\redisplaythis[#1]{\jobname.display\thetcbcounter}},
#1,
}
\NewTotalTColorBox[auto counter]{\redisplaythis}{O{}m}{
enhanced,
sharp corners,
title={My nice Environment (again) \thetcbcounter},
#1
}{\input{#2}}
\makeatother
\begin{document}
\tcbstartrecording[myenvironments.env]
\tcblistof{red}{List of environments}
\begin{displaythis}
\blindtext
\end{displaythis}
\begin{displaythis}[colback=white!60!yellow]
\blindtext[2]
\end{displaythis}
\tcbstoprecording
\tcbinputrecords[myenvironments.env]
\end{document}