source2e.tex 的单独 .dtx 文件在哪里

source2e.tex 的单独 .dtx 文件在哪里

为了更好地理解 (La)TeX,我正在分析 source2e.tex 文件,并且看到大量单独的.dtx文件:

\DocInclude{ltdirchk} % System dependent initialisation
\DocInclude{ltplain}  % LaTeX version of Knuth's plain.tex
\DocInclude{ltvers}   % Current version date
\DocInclude{ltdefns}  % Initial definitions.
\DocInclude{ltalloc}  % Allocation of counters and others.
\DocInclude{ltcntrl}  % Program control macros.
\DocInclude{lterror}  % Error handling.
\DocInclude{ltpar}    % Paragraphs.
\DocInclude{ltspace}  % Spacing, line and page breaking.
\DocInclude{ltlogos}  % Logos.
\DocInclude{ltfiles}  % \input files and related commands
\DocInclude{ltoutenc} % Output encoding interface
\DocInclude{ltcounts} % Counters
\DocInclude{ltlength} % Lengths
\DocInclude{ltfssbas} % NFSS Base macros
\DocInclude{ltfsstrc} % NFSS Tracing (and tracefnt.sty)
\DocInclude{ltfsscmp} % NFSS1 Compatibility
\DocInclude{ltfssdcl} % NFSS Declarative interface
\DocInclude{ltfssini} % NFSS Initialisation
\DocInclude{fontdef}  % fonttext.ltx/fontmath.ltx
\DocInclude{preload}  % preload.ltx
\DocInclude{ltfntcmd} % \textrm etc
\DocInclude{ltpageno} % Page numbering
\DocInclude{ltxref}   % Cross referencing
\DocInclude{ltmiscen} % Miscellaneous environment definitions.
\DocInclude{ltmath}   % Mathematics set up.
\DocInclude{ltlists}  % List and related environments
\DocInclude{ltboxes}  % Parbox and friends
\DocInclude{lttab}    % Tabbing tabular and array
\DocInclude{ltpictur} % Picture mode
\DocInclude{ltthm}    % Theorem environments
\DocInclude{ltsect}   % Sectioning
\DocInclude{ltfloat}  % Floats
\DocInclude{ltidxglo} % Index and Glossary
\DocInclude{ltbibl}   % Bibliography
\DocInclude{ltpage}   % \pagestyle \raggedbottom \sloppy
\DocInclude{ltoutput} % Output routine
\DocInclude{ltclass}  % Package & Class interface
\DocInclude{lthyphen} % Hyphenation (hyphen.ltx).
\DocInclude{ltluatex} % Luatex support
\DocInclude{ltfinal}  % Last minute initialisations and dump

我在系统中哪里可以找到它们?我已经检查了 MiKTeX 2.9 文件夹,其中找到了目前我想要的大多数文件(例如 article.cls、geometry.sty)。

答案1

LaTeX2e 内核源代码位于其中sources/latex/base:你应该能够通过以下方式找到它们

kpsewhich ltvers.dtx

在命令行(对我来说它给出c:/texlive/2018/texmf-dist/source/latex/base/ltvers.dtx)。

由于 LaTeX 内核是大的(当前版本为 8820 行)。源代码需要具有某种逻辑结构,因此它们被分成不同的区域。例如,在 TikZ 中可以看到相同的情况,出于类似的原因,expl3我也在进行类似的拆分。siunitx

相关内容