\myphone
我在一个文件中定义了诸如 等项目preamble.sty
,并希望使用此名称在我的文档中引用这些项目(类似于 CSS 类)。此机制如何工作?
在序言中:
\def\myphone{555-5555}
在文档中:
\lhead{myphone}
答案1
此处的确切术语不是“项目”。在 LaTeX 中,通常会说“宏”。
您正在寻找的是 KOMA 类内部所做的事情:
\documentclass{article}
\makeatletter
\newcommand*\SetChrisVar[2]{%
\@namedef{chrisvar@#1}{#2}%
}
\newcommand*\UseChrisVar[2]{%
\@nameuse{chrisvar@#1}%
}
\makeatother
\SetChrisVar{myphone}{555-5555}
\usepackage{fancyhdr}
\lhead{\UseChrisVar{myphone}}
\pagestyle{fancy}
\begin{document}
\null
\end{document}
\SetChrisVar
将值 ( #2
) 分配给内部宏\chrisvar@<#1>
并\UseChrisVar
获取其值。简单又好用 ;)
(另外,请注意,这\lhead
是一个设置左标题的宏fancyhdr
,并不适用于文档。)