如何维护宏文件?

如何维护宏文件?

我维护一个宏文件,它是我所有文档的静态文件。每当我需要创建新文档时,我都会将宏文件复制到文件夹中并开始处理它。现在的问题是,我的电脑里有多个宏文件副本。如果稍后我更改命令或向宏文件添加新命令,我将不得不替换所有宏文件以保持一致性。现在我已经完全忘记了宏文件的版本。

  1. 维护宏文件的标准方法是什么?
  2. 是否最好将其保存在云端并每次都使用 GIT 来拉取?
  3. 实验室通常也有一个通用的宏文件。应该如何维护它?

问候。

答案1

创建一个sauravmacros.sty包含此内容的文件并将您的宏和其他定义放在那里。

\NeedsTeXFormat{LaTeX2e}     % Not really necessary
\ProvidesPackage{sauravmacros}

%\RequirePackage{...} %which ever package(s) you need

\newcommand{\foo}{foo}
\newcommand{\bar}{bar}

\newenvironment{mytheory}[1]{%
}{}

\endinput

随着宏等越来越多,您可能只会改变这一点并提供选项。

将其放在本地目录或本地 texmf 路径中,具体取决于操作系统。例如,请参阅 Linux 上的环境变量 $TEXINPUTS。

至于云存储:这是个人观点和品味问题,我考虑将来也这样做,但不是在公共存储库中。

实验室等的通用宏文件不应区别对待。如果所有内容都在一个所有用户都可以访问的服务器上,那么通用实验室宏文件基本上与本地个人文件一样对待——问题是谁有管理权限来更改它。我真的建议使用版本控制系统!

答案2

创建您自己的包,并将它们放入您的 texmf 树中。包只是一个具有以下特征的宏文件:

  • .sty 扩展名
  • 不需要\makeatletter……\makeatother
  • 一个\ProvidesPackages命令。
  • 使用\RequirePackage而不是\usepackage

您确实应该对其进行版本控制,例如使用 git。

参见我自己的宏文件https://git.framasoft.org/maieul/philologue/blob/master/philologue.sty

答案3

对于我的设置,将宏放在 TeX 树中不是一个好选择,因为我在不同的机器之间同步我的用户目录。

我对宏和参考书目所做的就是将它们放在我的工作树的顶部。然后在新文档中使用类似 的内容\input ../../macros.tex

相关内容