在用户定义包中使用 `\input{}` 将其划分为较小的包是否正确?

在用户定义包中使用 `\input{}` 将其划分为较小的包是否正确?

我正在编写自己的包,用于mylisting.sty格式化以下语言的代码包含:LaTeX、PSTricks、C# 和 XML。

为了保持mylisting.sty清洁,我为每种语言创建一个单独的文件:

  • LaTeXSettings.tex对于 LaTeX,
  • PSTricksSettings.tex对于 PSTricks,
  • CSharpSettings.tex对于 CSharp,以及
  • XMLSettings.tex用于 XML。

使用\input{}withinmylisting.sty导入LaTeXSettings.texPSTricksSettings.tex和是否正确CSharpSettings.texXMLSettings.tex

或者您有更好的方法来实现这个目标?

答案1

没关系。您可以使用任何您喜欢的文件名(或扩展名)。一种可扩展的方法是像许多包一样,使用一组配置/定义文件。例如,graphics包宏\Gin@driver是驱动程序文件。代码用作

\DeclareOption{dvips}{\def\Gin@driver{dvips.def}}
\DeclareOption{pdftex}{\def\Gin@driver{pdftex.def}}
% ...
\input{\Gin@driver}

相关内容