更改类文件中的定义

更改类文件中的定义

我对 Latex 还比较陌生,还不了解更深层次的命令。对于我的硕士论文,我下载了学院发布的模板,但他们更改了一些规定,尚未更新他们的 latex 模板。

基本上,新规定要求 1.5/双倍空间。很容易做到

\usepackage{setspace}
\doublespacing

但是我收到一些错误,提示“\spacing已定义”。因此,我查看了模板的类文件,发现:

\newcommand{\spacing}[1]{\renewcommand{\baselinestretch}{#1}%
  \large\normalsize}

此命令在以下地方使用:

\renewcommand\appendix{\par
  \setcounter{chapter}{0}%
  \setcounter{section}{0}%
  \gdef\@chapapp{\appendixname}%
  \gdef\thechapter{\@Alph\c@chapter}
  \ifthenelse{\boolean{saving}}{\spacing{1}}{\spacing{2}}}

\ifthenelse{\boolean{saving}} {%
  \setlength {\topmargin}{0.0in}
  \setlength {\textheight}{\paperheight-2.5in}
  \setlength {\oddsidemargin}{0.0in}
  \setlength {\evensidemargin}{0.0in}
  \setlength {\textwidth}{\paperwidth-2in}
  \spacing{1}
  } {%
  \setlength {\topmargin}{0.65in}
  \setlength {\textheight}{\paperheight-3.05in}
  \setlength {\oddsidemargin}{0.6in}
  \setlength {\evensidemargin}{0.1in}
  \setlength {\textwidth}{\paperwidth-2.65in}
  \setlength {\footskip}{0.3in}
  \spacing{2}
  \renewenvironment{quote}{\oldquote\spacing{1}}%
       {\oldendquote\spacing{2}}
  \renewenvironment{quotation}{\oldquotation\spacing{1}}%
       {\oldendquotation\spacing{2}}
  \renewenvironment{verse}{\oldverse\spacing{1}}%
       {\oldendverse\spacing{2}}}

还有一些其他(可能不相关的)部分。

我的问题是我可以将此命令重命名为其他名称吗并在类文件中出现的所有地方替换它?这样它就不会与setspace包冲突。此外,我是否必须以某种方式重新编译类文件或使用 latex 注册它?

答案1

是的,如果你在类中到处替换名称,则可以重命名该命令在与你的论文相关的每个其他文件中。

对于你的第二个问题,我假设你在本地引用了该类,并且你有一个私有副本。不,你不必重新编译该类或在任何地方注册它,只需保存它即可。

相关内容