什么?
我想将的定义“存储”\includegraphics
到其中\something
,以便以下逻辑能够起作用:
% the following line is what I am looking for
store(\includegraphics, \something)
% and then I want to achieve what follows
\renewcommand\includegraphics}[2][]
{}
\doalotofstuff
\renewcommand\includegraphics}[2][]
{%
get_the_definition_from(\something)
}
% now I can again use \includegraphics with its usual definition
这是可能的并且容易实现吗?
但为什么?!
我想禁用\includegraphics
文档中某些部分的命令,然后能够再次获得正常的功能\includegraphics
。这个问题与这个帖子(如果命令处于活动状态,则解决方案不起作用\includegraphics
。
答案1
你想要类似的东西
\usepackage{letltxmacro}
和
\LetLtxMacro\colassavedincludegraphics\includegraphics
\renewcommand\includegraphics[2][]{}
禁用该命令;重新启用它
\LetLtxMacro\includegraphics\colassavedincludegraphics
对于特定命令来说\let
可能就足够了,但\LetLtxMacro
对于接受可选参数的命令来说更安全。
看何时使用 \LetLtxMacro?欲了解有关 的更多信息\LetLtxMacro
。
对于环境,这取决于它们如何定义,但comment
包可能会显示有用的。
答案2
您似乎正在寻找\let
:
\let\something=\includegraphics