答案1
一个新软件包cprotect
(发布时间不超过两周)完美地解决了这个问题。而且使用起来更加方便。
\usepackage{cprotect}
\cprotect\caption{blah \verb|#$%^&| blah...}
http://www.ctan.org/tex-archive/help/Catalogue/entries/cprotect.html
还有其他几种解决方案。如所提到的,\SaveVerb
和\UseVerb
来自的fancyvrb
也很有用。你甚至可以自己手动完成:
% in preamble
\newsavebox\verbbox
% in document env.
\begin{lrbox}{\verbbox}
\verb|@#$%#%|
\end{lrbox}
\caption{\usebox{\verbbox}}
答案2
一切操作都可以用 来完成\texttt
,虽然不如用动词那么短,但也是可行的。反斜杠是\textbackslash
。
答案3
好的,简单的解决方案是使用\protect
之前\UseVerb
:
\SaveVerb{term}|test|
\begin{figure}
\caption{This is a \protect\UseVerb{term}.}
\end{figure}