以下给出了alltt
环境中奇怪的凸起点而不是下划线:
\documentclass{article}
\usepackage{alltt}
\usepackage{underscore}
\begin{document}
\textsf{This_is_fine}
\begin{alltt}
\textsf{This_is_not}
\end{alltt}
\end{document}
有什么办法可以解决这个问题吗?如果我使用\textrm
而不是 ,\textsf
问题是一样的。但是,\texttt
有效。
答案1
该包underscore
通过创建一个活动字符来工作_
,但是此设置在包中被覆盖alltt
,而是设置_
为可打印字符。
解决方案 1
_
恢复活跃alltt
\documentclass{article}
\usepackage{alltt}
\usepackage{underscore}
\usepackage{etoolbox}
\appto\alltt{\catcode`\_=\active}
\begin{document}
\textsf{This_is_fine}
\begin{alltt}
\textsf{This_is_not}
\end{alltt}
\end{document}
解决方案 2
加载fontenc
包,以便可打印下划线可以打印出一些好的东西。
\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage{alltt}
\usepackage{underscore}
\begin{document}
\textsf{This_is_fine}
\begin{alltt}
\textsf{This_is_not}
\end{alltt}
\end{document}