![我如何将我使用的软件包制作成一个文件?](https://linux22.com/image/413864/%E6%88%91%E5%A6%82%E4%BD%95%E5%B0%86%E6%88%91%E4%BD%BF%E7%94%A8%E7%9A%84%E8%BD%AF%E4%BB%B6%E5%8C%85%E5%88%B6%E4%BD%9C%E6%88%90%E4%B8%80%E4%B8%AA%E6%96%87%E4%BB%B6%EF%BC%9F.png)
早上好,我想知道是否有人可以帮助我:我需要学习如何制作样式文件 archive.sty,因为在我的源文件的序言中我必须写出所有的包和选项,这似乎很糟糕。我相信可以有一个.sty
文件并让 latex 自动编译它,但我不知道如何制作它。
答案1
如果我正确理解了这个问题,我想您担心的是,加载大量包的序言会 (a) 混乱且 (b) 容易出错。
我有三点评论:
这绝对是个好主意可选择的关于你加载的包。特别是当你得到别人的序言时,它们通常包含很多你不需要的东西。在这个网站上,我们看到的序言就像是垃圾店,由研究生们传来传去。它们通常包含一些奇怪的古董包,有时甚至不兼容。总是只加载你想要的知道你需要。这是良好的包装卫生。
这是可能的编写一个您自己的样式文件,其中包含许多包加载命令。您可以将其命名为
mystyle.sty
。此文件的规范来源可在文档中找到适用于课程和软件包编写者的 LaTeX 2etexdoc clsguide
你可以在终端中输入以下内容来找到它,或者在 CTAN。您可以使用\RequirePackage
代替\usepackage
,但操作起来并不复杂。还有一篇关于在 Overleaf 上了解。您需要将新
.sty
文件放在TeX
可以找到它的地方,这并不简单。如果它位于文件目录中,则始终可以找到它.tex
。否则,请咨询这个答案以便更好地解释将其放在哪里。这是一个馊主意不过,通常是因为这会使没有你的样式文件的人无法使用你的源代码。痛苦的经验表明,“没有你的样式文件的人”很容易意味着你几年后。我不会为了加载其他软件包而这样做。只有在您定义经常使用的关键个人命令时我才会这样做,并且我只会在该文件中加载那些特定命令真正依赖的软件包。如果您确实使用个人样式文件只是为了方便加载其他软件包,那么我实际上认为将文件保存
.sty
在同一目录中(或在那里进行符号链接)是一种好的计划:它丢失的可能性很小,而且如果您通过电子邮件发送它,那么与关键源文件一起发送要比仅在 tex 源树中的某个远程目录中找到它容易得多。如果你只是想保留一些东西整洁,将项目拆分成多个文件,放在同一个目录中,并使用
\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}
完毕!