我在命令行中传递了一个包含下划线的文件名,并希望在生成的 PDF 中打印该文件的名称。因此,需要一些扩展魔法,以便输出为:
MWE 生产:
如果重要的话,实际用例是使用提取页面将原始文件名合并到提取的 PDF 中。
代码:MWE
\providecommand\FileName{A_B}
\documentclass{article}
\usepackage{verbdef}
\verbdef\MyVerb|\FileName|
\begin{document}
\MyVerb\ (This should be ``\verb|A_B|", not ``\verb|\FileName|".)
\end{document}
代码:实际用例
\providecommand*{\FileName}{A_B}%
\providecommand*{\PageRange}{2}% "3,67-70,80" for example (without the quotes)
\documentclass{article}
\usepackage{pdfpages}
\begin{document}
\includepdf[pages={\PageRange},picturecommand={\FileName}]{"\FileName"}
\end{document}
答案1
\verb
对 token 没有影响(即使你扩展了\FileName
),所以你想要更多像这样的东西
\def\FileName{A_B}
\documentclass{article}
\usepackage[T1]{fontenc}
\begin{document}
\texttt{\detokenize\expandafter{\FileName}}
\end{document}