.sty 文件的基本语法

.sty 文件的基本语法

我正在尝试创建一个包含所有我经常使用的软件包和东西的 .sty 文件,但我遇到了大量错误。其中大多数与我使用的特定软件包有关

(例如:Package geometry Error:\paperwidth (0.0pt) too short.)尽管这些包在我的其他文档中没有造成任何问题,

但我认为至关重要的是“紧急停止。<*> main.sty ***(作业中止,未找到合法的 \end)”

以下是代码:

\RequirePackage[utf8]{inputenc}
\RequirePackage{ upgreek }
.... %a whole bunch of packages
\newcommand{\R}{\mathbb{R}}
.... %a whole bunch of commands
\endinput

我尝试了各种随机的方法,例如删除 \endinput 并在末尾放置 \begin{document} \end{document},并在顶部添加 \documentclass{article},但我真的不知道自己在做什么,而且这些方法都不起作用。

我正在使用 overleaf,如果这有区别的话。

答案1

该错误(很可能)意味着您正在运行 latex,main.sty而不是在包含以下包的文档上运行它:

\documentclass{article}
\usepackage{main}
\begin{document}
...
\end{document}

这个错误基本上是说它已经到达输入的末尾而没有看到\end{document}

答案2

你必须从你的猪圈里移除...,然后它才能起作用:

\documentclass{article}

\begin{filecontents*}[overwrite]{mypackages.sty}
\RequirePackage[utf8]{inputenc}
\RequirePackage{ upgreek }
%.... %a whole bunch of packages
\newcommand{\R}{\mathbb{R}}
%.... %a whole bunch of commands
\endinput
\end{filecontents*}

\usepackage{mypackages}

\begin{document}

test

\end{document}

相关内容