l3doc

l3doc 中 @@ 替换的微妙之处
l3doc

l3doc 中 @@ 替换的微妙之处

我正在尝试了解类@@中替换的确切语义l3doc。到目前为止,我从文档中收集到的信息如下: %<@@=name>在文档中出现声明之前没有发生替换。 当发生替换时,将按照字符序列(从左到右)的顺序尝试并替换以下模式: "@@@@" -> "@@" "__@@" -> "__" + name "_@@" -> "__" + name "@@" -> "__" + name \cmd替换发生在和的参数中\cs,除非replace=false在这些命令的可选参数中定义了。 function替换发生在和环境的第一个参数中...

Admin

使用 l3doc 类时进行索引
l3doc

使用 l3doc 类时进行索引

我正在使用该类l3doc进行编写,文档需要索引宏和普通索引,即带有普通单词而非命令的情况。 \documentclass{l3doc} \usepackage{makeidx} \def\thepage{\Alph{part}-\arabic{page}} \usepackage{hyperref} \begin{document} \tableofcontents \part {First Part} \section{first section} \subsection{first subsection} Just a test \cmd{\chapt...

Admin

使用 l3doc.cls 进行记录
l3doc

使用 l3doc.cls 进行记录

我一直在尝试将我的包文档从 转换ltxdoc为l3doc,但遇到了一些障碍。 首先要开始\ProvidesExplFile工作。我尝试做这样的事情: % \iffalse meta-comment %<*driver|package> \GetIdInfo $Id: test.dtx 1.0 2024/02/04 I. M. A. Person <[email protected]> $ {description of package} %</driver|package> %<*driver&g...

Admin

一旦在“宏代码”环境中添加了颜色,为什么“宏代码”环境的颜色会发生变化?
l3doc

一旦在“宏代码”环境中添加了颜色,为什么“宏代码”环境的颜色会发生变化?

我正在翻译一些 LaTeX 文档,目的是通过颜色区分文档的各个部分,以便于阅读。例如,我想将需要解释的宏命令指定为蓝色,同时将包代码指定为棕色。但是,在下面的代码片段(作为 MWE 的 xparse.dtx 的一小部分)中,为什么一部分是蓝色,另一部分是棕色,即使这些代码都在一个“宏代码”环境中?查看代码,显然 <*2ekernel> 和 </2ekernel> 影响了颜色,但我不确定为什么。 % \iffalse meta-comment \RequirePackage{expl3}[2018-04-12] %<*driver...

Admin

`easytable` 包似乎与 `l3doc` 类冲突
l3doc

`easytable` 包似乎与 `l3doc` 类冲突

TAB我尝试在带有类的 .dtx 文件中使用该环境l3doc,但是它似乎导致 latex 编译失败。 梅威瑟: \documentclass{l3doc} \usepackage{xcolor} \usepackage{easytable} \begin{document} \begin{TAB}(e,1cm,1cm){|c|c:c:c|}{|c|c:c|} a & b & c & d \\ 1 & 2 & 3 & 4 \\ 5 & 6 &...

Admin

如何在 LaTeX 类中修补 `\LoadClass` 以更改父类而不修改 .cls 文件?
l3doc

如何在 LaTeX 类中修补 `\LoadClass` 以更改父类而不修改 .cls 文件?

我目前正在尝试使用 .dtx 文件为我的大学文档开发一些样式。这样做,我将l3doc类用作 dtx 文件的文档对应部分中的文档类。但是,我同时使用 KOMA-Script,使用我生成的 sty 文件中的命令并将其用作未来文档的类,并且我想使用为 dtx 文档本身生成的 sty 文件。 由于l3doc基于article类,默认情况下不提供 KOMA-Script 特定命令。我目前所做的是获取l3doc dtx 文件,并更改\LoadCLass要使用的参数scrartcl。 有没有办法在不改变 cls 文件本身的情况下修补该类? 我尝试使用etoolbox和\p...

Admin

l3doc:有条件地在宏代码之间包含调试代码
l3doc

l3doc:有条件地在宏代码之间包含调试代码

我的package.dtx导出package.sty和package-debug.sty包含更多未在中排版的材料package.pdf。为了实现这一点,我使用以下模式,其中package-debug当nodebug导出标志为 false 时,包名称是,当导出标志为 falsepackage时。环境会吞噬不应出现在中的行。debuggobblepackage.pdf % \iffalse meta-comment %<*driver> \documentclass{l3doc} \begin{document} \DocInput{\jobname...

Admin

\DoNotIndex 空间与 l3doc
l3doc

\DoNotIndex 空间与 l3doc

考虑以下尝试: % \iffalse %<*driver> \ProvidesFile{duck.tex} %</driver> % %<*driver> \documentclass{l3doc} \begin{document} \DocInput{duck.dtx} \PrintIndex \end{document} %</driver> % \fi % \DoNotIndex{^^A % \def,^^A Works. % \csname\space\endcsname,^^A Doesn'...

Admin

如何将 \MakeOuterQuote{"} 与 l3doc 包结合使用?
l3doc

如何将 \MakeOuterQuote{"} 与 l3doc 包结合使用?

考虑这个 TeX 文件 \documentclass{l3doc} \usepackage{csquotes} \MakeOuterQuote{"} \begin{document} \enquote{hello} "hello" \end{document} 我想用作"引号字符。csquotes文档指出\MakeOuterQuote可以使用它来执行此操作,但由于某种原因,它反而产生了逐字代码。 发生了什么事?我该如何解决? ...

Admin

l3doc 中的 \cs{} 命令不尊重 \DoNotIndex?
l3doc

l3doc 中的 \cs{} 命令不尊重 \DoNotIndex?

考虑这个 TeX 文件(是的,我知道不使用 dtx 是非常不寻常的。) %%! TEX program = lualatex \documentclass{l3doc} \EnableCrossrefs \CodelineIndex \RecordChanges \fvset{gobble=0,tabsize=4,frame=single,numbers=left,numbersep=3pt} \usepackage{hyperref} \usepackage{csquotes} %\MakeOuterQuote{"} \begin{document} \...

Admin

`l3doc` 函数的文档
l3doc

`l3doc` 函数的文档

通过查阅这里的一些问答,我偶然发现了 MWE这个问题。 那个部分 % \begin{function}{\mymacro} % \begin{syntax} % \cs{mymacro}\marg{Arg1} % \end{syntax} % Descriptive text ... % ... % \end{function} 对我来说是新的。我仔细搜索了网络,找到了一些关于这个很酷的新东西的文档。我阅读了expl3.pdf、source3.pdf以及l3styleguide.pdf和2021 TeXLive 系统docstrip.p...

Admin

为什么l3doc文档类的标题中不能使用\textffm{}?
l3doc

为什么l3doc文档类的标题中不能使用\textffm{}?

\textffm{}\title{}在ltxdoc文档类中可以使用,但是l3doc不可以。为什么? % \documentclass{ltxdoc} \documentclass{l3doc} \usepackage{fetamont} \begin{document} \title{\textffm{TEST}} \maketitle \textffm{TEST} \end{document} LaTeX Warning: No \author given. ! Argument of \@tforloop has an extra }. <in...

Admin

描述列表和宏代码缩进
l3doc

描述列表和宏代码缩进

使用 l3doc 时,在描述列表内使用宏代码时,会显示额外的缩进,如何删除它? 这是 MWE 的 dtx % \iffalse meta-comment %<*driver> \ExplSyntaxOff \documentclass{l3doc} \begin{document} \DocInput{\jobname.dtx} \end{document} %</driver> % \fi % \begin{macrocode} Aligned left % \end{macrocode} % \begin{desc...

Admin

l3doc 文件 / .dtx 文件的进程索引
l3doc

l3doc 文件 / .dtx 文件的进程索引

我理解.dtx文件是一种在一个文件中记录和实现包的方式。 此外,在较新的版本中,通常pdflatex package.dtx应该排版文档。 我想尝试一些示例来检查此类.dtx文件,但我无法对LaTeX3内核文件正确执行此操作。 尤其是l3prop.dtx从 https://github.com/latex3/latex3/blob/195f85d5c8df68ca32ac0c7d5559efa27f0fa63d/l3kernel/l3prop.dtx 并运行pdflatex它会产生缺少索引的文档。因此,在makeindex l3prop.idx照常运行生成的...

Admin

我可以暂时禁用 LaTeX3 中的 @@ 替换吗?
l3doc

我可以暂时禁用 LaTeX3 中的 @@ 替换吗?

我正在尝试使用良好的做法来编写我的 L3 包,我理解这涉及使用@@定义命令和变量名称,然后用模块名称替换这些名称(第 3.2.2 节texdoc l3doc)。 但是,我有时需要在 L3 和 L2e 之间进行交互,而 L2e 代码中只是充斥着@s 和有时@@s(需要明确的是,这些来自我正在交互的其他代码,所以我没有选择)。 因此,我的问题是:有没有办法暂时禁用替换@@? 如果没有,我目前的解决方法(比如,调用另一个包中定义的宏)是使用: \use:c {commandWith@ @sInIt} 请注意 s 之间的多余空格@,由于 L3 习惯于忽略空格,所以...

Admin