我可以在纯 TeX 中使用 CTAN 的(LaTeX?)包吗?

我可以在纯 TeX 中使用 CTAN 的(LaTeX?)包吗?

我有以下假设:

  • TeX 是一种语言
  • Plain TeX 是该语言的原始环境
  • LaTeX(和其他环境)是一组使用 TeX 原语编写的编译宏。
  • 假设 MikTeX 可以在本地存储库中组织这些宏,这样我就可以在我的 LaTeX 文档中重复使用它们。

但我仍然不确定 CTAN 是否包含用于 LaTeX 或 TeX 的软件包。它们是使用内置 LaTeX 宏编写的还是用纯 TeX 编写的。如果第二个是真的,我可以在纯 TeX 中使用这些包吗\input?我应该如何组织从 CTAN 下载的宏并将其放入与我的文档相同的文件夹中?有没有纯 TeX 的包管理器?

答案1

简而言之:Plain TeX 和 LaTeX 是不同的宏包,它们定义了不同的格式。因此,一般来说,不是可以在 Plain TeX 上使用 LaTeX 包。有关所有这些相当专业的术语的简短介绍,您可以查看这篇博文

可以通过伪造 LaTeX 的一些功能在 Plain TeX 上使用一些 LaTeX 包(例如图形、颜色和 hyperref);只需加载并使包运行即可。另一个在 plain 之上构建的宏包 eplain 具有内置功能,可以加载一些基本的 LaTeX 宏包。

\beginpackages
  \usepackage{graphicx,color}
  \usepackage{url}
\endpackages

还可以使用提供的plain软件包和plain环境在 LaTeX 文档中使用一些 Plain TeX 功能。尽管如此,它并不是全部,但可以用于很多事情。

\usepackage{plain}
\begin{plain}
[plain stuff]
\end{plain}

您可以在 CTAN 中找到所有这些内容,其中包含大量与 TeX 相关的内容。但请注意,您需要学习如何在 tex-archive 树中导航。

MikTeX 包管理器主要处理 LaTeX 包,因此您可能需要学习如何手动安装普通宏文件。

答案2

这只是部分答案,因为它没有提供所要求的全部信息。

CTAN 上有专为 PlainTeX 设计的宏包(“包”),列在下方CTAN 档案并明确说明,例如

ETC。

目录CTAN 普通/贡献档案包含大量用户贡献的 TeX 包。

在 PlainTeX 中直接使用LaTeX宏很困难,这取决于它们的复杂性,以绕过 LaTeX 样式并将它们归结为 TeX。要么需要将宏从 LaTeX 包中复制出来,要么使用一些\let\RequirePackage……等东西来让 TeX 平静下来。

\input我怀疑对LaTeX 包/源文件/序言所做的全部努力是否会获得任何成果。

屏幕截图仅显示相关类别中的一些宏目录。概述并不完整。

在此处输入图片描述

在此处输入图片描述

在此处输入图片描述

答案3

CTAN 是一个 TeX 及其相关代码库,而不是 LaTeX 爱好者 :P。内容是分开的,以方便维护,并包含一些深奥的细节(据我所知)。例如,如果您查看 MikTeX 目录,您可以清楚地看到这种分离。因为软件包也是基于此结构安装的。

但是,在纯 TeX 中使用 LaTeX 包的可能性取决于包的作者。如果您在包中使用 LaTeX 构造,而一些纯 TeX 用户想要使用它,那么它将失败,因为 LaTeX 宏将不可用。如果您使用\newcommand代替\def或其他 LaTeX 构造,例如\newcounter等等,那么纯 TeX 用户需要导入带有输入的乳胶样式文件,这或多或少会使用 LaTeX,因此徒劳无功,或者从头开始重写宏。

一些作者实际上会在包导入期间检查编译引擎、分支并做出相应的决定。

相关内容