什麼?
我想「儲存」\includegraphics
into的定義\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