如何在某个部分(或小节、章节等)之后或结束时执行代码?我正在寻找比这更优雅的解决方案:
\definehead[mysectionImpl][section]
\let\startmysection\startmysectionImpl
\def\stopmysection{\stopmysectionImpl\DOWHATEVER}
答案1
当您使用部分命令的开始/停止形式时,您可以使用键aftersection
将\setuphead
某些内容放置在部分末尾。
虽然您可以将命令作为参数传递,但aftersection
将命令放在setups
环境中并加载环境通常更简洁。
\startsetups[section:after]
\blank[samepage,line]
\midaligned{\symbol[diamond]}
\stopsetups
\setuphead
[section]
[aftersection=\directsetup{section:after}]
\starttext
\startsection[title=Knuth]
\samplefile{knuth}
\stopsection
\stoptext