我如何将我使用的软件包制作成一个文件?

我如何将我使用的软件包制作成一个文件?

早上好,我想知道是否有人可以帮助我:我需要学习如何制作样式文件 archive.sty,因为在我的源文件的序言中我必须写出所有的包和选项,这似乎很糟糕。我相信可以有一个.sty文件并让 latex 自动编译它,但我不知道如何制作它。

答案1

如果我正确理解了这个问题,我想您担心的是,加载大量包的序言会 (a) 混乱且 (b) 容易出错。

我有三点评论:

  1. 这绝对是个好主意可选择的关于你加载的包。特别是当你得到别人的序言时,它们通常包含很多你不需要的东西。在这个网站上,我们看到的序言就像是垃圾店,由研究生们传来传去。它们通常包含一些奇怪的古董包,有时甚至不兼容。总是只加载你想要的知道你需要。这是良好的包装卫生。

  2. 这是可能的编写一个您自己的样式文件,其中包含许多包加载命令。您可以将其命名为mystyle.sty。此文件的规范来源可在文档中找到适用于课程和软件包编写者的 LaTeX 2etexdoc clsguide你可以在终端中输入以下内容来找到它,或者在 CTAN。您可以使用\RequirePackage代替\usepackage,但操作起来并不复杂。还有一篇关于在 Overleaf 上了解

    您需要将新.sty文件放在TeX可以找到它的地方,这并不简单。如果它位于文件目录中,则始终可以找到它.tex。否则,请咨询这个答案以便更好地解释将其放在哪里。

    这是一个馊主意不过,通常是因为这会使没有你的样式文件的人无法使用你的源代码。痛苦的经验表明,“没有你的样式文件的人”很容易意味着几年后。我不会为了加载其他软件包而这样做。只有在您定义经常使用的关键个人命令时我才会这样做,并且我只会在该文件中加载那些特定命令真正依赖的软件包。如果您确实使用个人样式文件只是为了方便加载其他软件包,那么我实际上认为将文件保存.sty在同一目录中(或在那里进行符号链接)是一种好的计划:它丢失的可能性很小,而且如果您通过电子邮件发送它,那么与关键源文件一起发送要比仅在 tex 源树中的某个远程目录中找到它容易得多。

  3. 如果你只是想保留一些东西整洁,将项目拆分成多个文件,放在同一个目录中,并使用\input\include作为主要源文件(想知道何时使用哪个:查看关于这个话题的这个答案。但是对于除了大项目之外的所有项目,我真的很怀疑这样做是否值得,因为大项目无论如何你肯定会这样做。如果你只是想保留一个模板文件来提醒你经常发现有用的包,那么就制作这样一个文件并简单地将其用作模板。非常简单,但有时简单就是最好的。

答案2

如果您是那种即使发生了错误的事情也不愿意阅读文档的人,请执行以下操作。

首先建立一个以 结尾的文件.sty,内容可能如下。

% =====================================================================*
% Copyright (c) 2020 Money Oriented Programmer. All rights reservered. | 
% LPPL LaTeX Public Project License                                    |
% =====================================================================* 
\NeedsTeXFormat{LaTeX2e}[1994/06/01] 
\ProvidesPackage{myarchive}[2020/05/14 v0.01 LaTeX package for my own purpose]  

\RequirePackage
[
    a4paper,
    vmargin=25mm,
    outermargin=10mm,
    outermargin=100mm,
    innermargin=10mm,
    marginparwidth=85mm,
    marginparsep=5mm,
]{geometry}

\RequirePackage{multicol}

\RequirePackage{graphicx}
\graphicspath{{Images/}}
\RequirePackage{adjustbox}
\RequirePackage{caption}
\RequirePackage{marginfix}

\RequirePackage{mathtools}
\RequirePackage{amssymb}
\RequirePackage{systeme}
\RequirePackage{esvect}
\RequirePackage{palatino}
%\RequirePackage{comicsans}

\RequirePackage{microtype}

\RequirePackage{empheq}
\RequirePackage{booktabs}
\RequirePackage{array}

\RequirePackage{enumitem}


\endinput 
% myarchive.sty

将其副本保存在 中C:\texlive\texmf-local\tex\latex\local。原始文件必须保存在不同的驱动器中,这样将来如果您重新格式化驱动c:\器,您仍然可以恢复它。

texhash然后在 shell(命令提示符,或任何你称呼它的名字)上 运行,这样安装的 TeX 就知道你的myarchive.sty.

现在您可以按照如下方式使用您的包了。

\documentclass{article}
\usepackage{myarchive}
\begin{document}
Money Oriented Programmer!
\end{document}

完毕!

相关内容