StopEventually 在 LtxDoc 和 L3Doc 中的行为不同

StopEventually 在 LtxDoc 和 L3Doc 中的行为不同

我检查了我自己的两个文件,发现和*.dtx之间的内容会根据文档类别而不是的设置进行隐藏或显示。也就是说,使用 的文档显示文档的后半部分,而使用 的文档则不显示。我在两个文件的类别之间切换,行为似乎一致。\StopEventually\Finale\OnlyDescriptionl3docltxdoc

不打印出和ltxdoc之间的内容是标准吗?\StopEventually\Finale

答案1

首先,它只是对包和类ltxdoc的一个薄包装,而现在它是一个docarticlel3doc很多更大的类文件。最终l3doc将拆分为一个类和一个包来记录 LaTeX3 代码,就像LaTeX2ε 的和一样ltxdocdoc

doc并不\StopEventually直接定义,而是通过宏\AlsoImplementation\OnlyDescription来打开和关闭文档的实现部分。
当您使用\AlsoImplementation(默认)时,\StopEventually{<code>}会使\Finale执行<code>(并检查文档的校验和),而不执行其他任何操作。
当您使用时\OnlyDescription\StopEventually{<code>}会立即执行<code>\endinput,本质上忽略当前文件中的所有其他内容,这就是您所看到的。

这个想法是,你把它放在\StopEventually{<code>}用户文档和实现部分之间,这样用一个简单的开关就可以打开和关闭实现部分。

l3doc行为类似,只是文档应位于documentation环境中,而实现应位于implementation部分中。然后,常用doc开关\AlsoImplementation\OnlyDocumentation照常工作。将内容放在环境中l3doc可让您更好地控制文档,因此您有四个开关:\EnableDocumentation\EnableImplementation用于启用每个环境,和\DisableDocumentation用于\DisableImplementation禁用它们。l3doc还有full和选项,它们分别是和开关onlydoc的同义词。\AlsoImplementation\OnlyDescription

相关内容