不使用 _ 怎么能逃脱\_
?
这是问题的示例
word_a_a_a_a_a_b_c_dd
您可以为此使用一个功能。但是,我不记得它的名字了。
您是否正在考虑underscore
重新定义下划线符号以便您不必在文本模式下对其进行转义的包?见这里。
除了逐字我不知道。
逐字环境:
\begin{verbatim}
word_a_a_a_a_a_b_c_dd
\end{verbatim}
排队:
\verb|word_a_a_a_a_a_b_c_dd|
我无法让这个underscore
包工作,所以我使用了这个url
包:
\usepackage{url}
\urlstyle{sf} % or rm, depending on your font
...
Foo \url{word_a_a_a_a_a_b_c_dd} bar.
通常在这种情况下你需要一个等宽字体,所以你可以使用这个:
\verb|word_a_a_a_a_a_b_c_dd|
有趣的是,这是一个编程问题的问答网站,但还没有人建议编程。
您可以定义自己的命令来替换下划线标记:
\documentclass{article}
\newcommand{\filename}[1]{\emph{\replunderscores{#1}}}
\makeatletter
% \expandafter for the case that the filename is given in a command
\newcommand{\replunderscores}[1]{\expandafter\@repl@underscores#1_\relax}
\def\@repl@underscores#1_#2\relax{%
\ifx \relax #2\relax
% #2 is empty => finish
#1%
\else
% #2 is not empty => underscore was contained, needs to be replaced
#1%
\textunderscore
% continue replacing
% #2 ends with an extra underscore so I don't need to add another one
\@repl@underscores#2\relax
\fi
}
\makeatother
\begin{document}
\filename{__init__.py}
\end{document}
您可能还会想到通常用于显示代码的lstlisting
or环境 - 可以包含下划线。verbatim
然而,这些环境不仅仅是“转义”下划线。