定义新的命令
\newcommand{\<name>}[<num>]{<defination>}
其中<name>
为要定义的命令名称,第二个参数<defination>
是命令的具体定义,方括号里的参数<num>
是可选的。
例1:
例2:
例2演示了如何定义一个带参数的命令。在命令的定义中,标记#1代表指定的参数,如果想使用多个参数,可以依次使用#2、…、#9等标记。
由于latex不允许\newcommand
定义一个与现有命令重名的命令,如需修改命令,使用\renewcommand
命令。
在某些情况下,使用\providecommand
命令是一种比较理想的方案。在命令未定义时,它相当于\newcommand
;在命令已定义时,沿用已有的定义。
下面来解释自定义命令的具体用法:
- 参考文献引用上标
\newcommand{\ucite}[1]{\textsuperscript{\cite{#1}}}
这个代码的意思是构造命令\ucite
使得每次引用参考文献的序号采用上标,其中\textsupercript
是上标,\textsubscript
是下标。
- 重命名字体命令
\renewcommand{\heiti}{\CJKfamily{heiti}}
对于黑体命令赋予新的CJK字体族heiti
- 重定义标题名称
\renewcommand{\contentsname}{\heiti 目\quad 录}
\renewcommand{\listfigurename}{图目录}
\renewcommand{\listtablename}{表目录}
\renewcommand{\partname}{第\thepart 部}
\renewcommand{\chaptername}{第\thechapter章}
\renewcommand{\abstractname}{摘要}
\renewcommand{\refname}{参考文献}
\renewcommand{\indexname}{索引}
\renewcommand{\figurename}{图}
\renewcommand{\tablename}{表}
\renewcommand{\appendixname}{附录}
\renewcommand{\proofname}{证明}
通过这些命令,我们可以将所对应环境(例如摘要环境、目录环境等)中的英文转换为我们想要的中文。
注:LaTeX可定制的标题名称/前后缀
命令 | 含义 |
---|---|
\partname |
\part 命令生成的标题前缀 |
\chaptername |
\chapter 命令生成的标题前缀 |
\appendixname |
使用\appendix 命令生成的附录部分的章标题前缀 |
\abstractname |
摘要环境abstract 的标题名称 |
\contentsname |
\tableofcontents 命令生成的目录标题 |
\listfigurename |
\listoffigures 命令生产的插图目录标题 |
\listtablename |
\listoftables 命令生成的表格目录标题 |
\tablename |
table 浮动体中\caption 命令生成的标题前缀 |
\figurename |
figure 浮动体中\caption 命令生成的标题前缀 |
\refname |
thebibliography 环境或\bibliography 命令生成的参考文献标题(article文档类) |
\bibname |
thebibliography 环境或\bibliography 命令生成的参考文献标题(book/report文档类) |
\indexname |
\printindex 命令生成的索引标题 |
而我们引用这些时,采用\ref
命令,\ref
命令显示的是数字。hyperref
宏包提供一个\autoref
命令,它可以自动判断标签所属结构对象的类型,为引用加上合适的名字,输出时显示结构名加上结构编号。该宏包也为此定义啦一些结构变量名。我们也可以用同样的方法重定义它们。
\renewcommand{\equationautorefname}{公式}
\renewcommand{\footnoteautorefname}{脚注}
\renewcommand{\itemautorefname}{项}
\renewcommand{\figureautorefname}{图}
\renewcommand{\tableautorefname}{表}
\renewcommand{\appendixautorefname}{附录}
\renewcommand{\theoremautorefname}{定理}