我正在使用 chemmacros 包在我的论文中写化学符号。(我正在使用带有书籍类的 Easy Thesis 模板)。
我在 thesis.cls 文件的顶部添加了这些包(如下所示)
\RequirePackage{textcomp}
\RequirePackage{etoolbox}
\RequirePackage{paralist}
\RequirePackage[bahasam,english]{babel}
\def\theauthor{\textbf{!INSERT AUTHOR!}}
\def\thetitle{\textbf{!TITLE!}}
\def\@mtsubmissionyear{\textbf{!YEAR!}}
\def\@mtsijil{\textbf{!DEGREE!}}
\newcommand{\submissionyear}[1]{\def\@mtsubmissionyear{#1}}
\newcommand{\sijil}[1]{\def\@mtsijil{#1}}
\RequirePackage[T1]{fontenc}
\RequirePackage[scaled]{helvet}
\RequirePackage{mathptmx}
\RequirePackage{courier}
\renewcommand\ttdefault{lmvtt}
我定义了 newcommand\makecoverandtitlepage
在 thesis.cls 文件底部定义了如下 newcommand。(我从 UMthesis.cls 中获取了此命令(https://www.sharelatex.com/templates/thesis/universiti-malaya-thesis))
\newcommand{\makecoverandtitlepage}{%
\ignorespaces
\changepage{-40mm}{-15mm}{15mm}{0em}{0em}{20mm}{0em}{0em}{0em}
\begin{titlingpage}
\SingleSpacing%
\centering%
\renewcommand\ttdefault{lmtt}%
\fontfamily{phv}\fontseries{mc}\fontsize{15pt}{17pt}\selectfont%
\MakeUppercase{\thetitle}\par%
\vfill%
\MakeUppercase{\theauthor}\par%
\vfill%
INSTITUTE OF POSTGRADUATE STUDIES\\%
UNIVERSITY OF MALAYA\\%
KUALA LUMPUR\par%
\bigskip%
\@mtsubmissionyear\par%
\end{titlingpage}%
{\SingleSpacing\centering\thispagestyle{empty}\setcounter{page}{1}%
\fontsize{15pt}{17pt}\selectfont%
\renewcommand\ttdefault{lmtt}%
\MakeUppercase{\thetitle}\par%
\vfill%
{\MakeUppercase{\theauthor}\par}%
\vfill%
{THESIS SUBMITTED IN FULFILMENT\\%
OF THE REQUIREMENTS\\%
FOR THE DEGREE OF \MakeUppercase{\@mtsijil}\par}%
\vfill%
{INSTITUTE OF POSTGRADUATE STUDIES\\%
UNIVERSITY OF MALAYA\\%
KUALA LUMPUR}\\[1em]%
\@mtsubmissionyear%\\[3em]%
\par\clearpage}%
\changepage{40mm}{15mm}{-15mm}{0em}{0em}{-20mm}{0em}{0em}{0em}%
\renewcommand\ttdefault{lmvtt}%
}
当我执行时出现错误,如下图所示
我需要一些帮助来修复这个错误。
答案1
你不得不说
\makeatletter
\newcommand{\submissionyear}[1]{\def\@mtsubmissionyear{#1}}
\newcommand{\sijil}[1]{\def\@mtsijil{#1}}
\makeatother
因为您想使用内部命令(带有@
)。