因此,我正在尝试创建一些包(写LaTeX,因为我的 Surface 无法运行 TeX 1),并且遇到了一个相当有趣的问题。我的包无法加载;它们\ifnum
反而会抱怨。这是一个最小的测试用例:
测试.sty
\NeedsTeXFormat{LaTeX2e}[1994-06-01]
\ProvidesPackage{test}[2014-08-04 Hello, World!]
\endinput
主文本
\documentclass{article}
\title{LaTeX Testing}
\usepackage{test}
\begin{document}
Hello, World!
\end{document}
编译错误
Missing = inserted for \ifnum.
<to be read again>
-
l.4
我在想,什么时候 \ifnum
加入这个?!(错误发生在 之后的“token”上\usepackage
,无论是换行符还是\show
或其他任何东西。)互联网上有很多关于\ifnum
错误的信息,但没有关于 之后的信息\usepackage
。我甚至不知道在哪里开始调试这个,由于被困在在线服务中,我的选择相当有限......有什么帮助吗?
1 Surface RT 有时很麻烦。我确实有一台合适的机器,上面有 LaTeX;但是,它不太便携,因此目前手头没有。
答案1
日期规范必须采用 格式YYYY/MM/DD
,而不是YYYY-MM-DD
。以下最小示例按预期工作:
\documentclass{article}
\usepackage{filecontents}
\begin{filecontents*}{test.sty}
\NeedsTeXFormat{LaTeX2e}[1994/06/01]
\ProvidesPackage{test}[2014/08/04 Hello, World!]
\endinput
\end{filecontents*}
\title{LaTeX Testing}
\usepackage{test}
\begin{document}
Hello, World!
\end{document}