自动从现有命令中提取值

自动从现有命令中提取值

(第1部分)

我正在尝试从预定义命令中提取值或参数以在另一个命令中使用。这可能吗?

我将添加一个例子来澄清:

\fancypagestyle{c.appendix.sep}{
                \rfoot{\pbox{5cm}{\hyperlink{document.toc}{$\leftarrow$ Naar inhoudsopgave} \\ \hyperlink{appendix.a}{$\leftarrow$ Naar \textbf{\textcolor{blue}{R}} commando's} \\ \hyperlink{appendix.b}{$\leftarrow$ Naar begrippenlijst }}}%
                \lfoot{\currentsection}
                \lhead{}
                \fancyhead[C]{}
}

想象一下,我可以提取 rfoot 值以便在另一个命令中重复使用?


(第2部分)

有没有办法通过一系列命令自动执行此操作,以便仅选择最后声明的对象?(当选择从哪里提取值时)

答案1

对于问题的第一部分,我查了一下,哪些宏用于将值存储在 中fancyhdr.sty。结果显示, 的内容\rfoot存储在\f@ncyerf和 中\f@ncyorf

\documentclass{article}
\usepackage{fancyhdr}
\rfoot{Hello footer}
\pagestyle{fancy}
\begin{document}
\makeatletter
The \texttt{\string\rfoot} contains: \f@ncyorf
\makeatother
\end{document}

在此处输入图片描述

答案2

将所需的值保存在自己的宏中:

\documentclass{article}
\usepackage[a6paper]{geometry}
\usepackage{fancyhdr}
\pagestyle{fancy}
\let\Rfoot\rfoot
\renewcommand\rfoot[1]{\def\LastRfoot{#1}\Rfoot{#1}}
\rfoot{Hello footer}

\begin{document}
The \texttt{\textbackslash rfoot} contains: \LastRfoot
\newpage
\rfoot{My new footer}
The \texttt{\textbackslash rfoot} contains: \LastRfoot
\end{document}

相关内容