防止 LaTeX 认为我正在写一个方程式

防止 LaTeX 认为我正在写一个方程式

我的问题是,我试图用斜体写变量名,但由于其中一些变量名带有下划线,LaTeX 会认为我正在写一个方程式,然后它就会弄乱文档的其余部分。以下是我的代码示例:

As variable \textit{sensor.linear_acceleration} is a matrix

下划线linear_acceleration使我的整个文档经过数学修改,并is a matrix呈现为一个等式。

我怎样才能以斜体显示该下划线,而无需 LaTeX 使所有内容变成等式?

答案1

\documentclass{article}
\begin{document}

As variable \textit{sensor.linear_acceleration} is a matrix,

\end{document}

在尝试编译时将导致多个错误消息,例如:

! Missing $ insertedExtra }, or forgotten $.

.log 文件中的相应条目也明确警告:

我插入了开始/结束符号,因为我认为你漏掉了一个。继续吧,祝你好运。

一旦收到任何错误消息,请不要查看 pdf,而是先尝试修复错误。即使乍一看像 pdf 文件,也可能存在问题。出现错误后,TeX 只会尝试恢复足够的内容以检查文件的更多语法,而不会尝试在出现错误后生成合理的输出。一旦您的文档成功编译(不生成任何错误消息),您就可以查看 pdf 并查看输出是否符合您的需求。


如何更正上述代码完全取决于预期的输出。如果您希望_按原样打印,请改用\_。如果您希望 _ 后面的文本作为下标出现,请改用\textsubscript

\documentclass{article}
\begin{document}

As variable \textit{sensor.linear\_acceleration} is a matrix,


As variable \textit{sensor.linear\textsubscript{acceleration}} is a matrix,

\end{document}

在此处输入图片描述

答案2

是的,下划线字符在语法上对 (La)TeX 来说是“下标”的意思。如果您在数学模式之外使用它,(La)TeX 会发出抱怨,当您在常规文本中使用它时,它会切换到数学模式(并给出错误消息)。您可能想改用\_(@leandris 已经回答了)。但我必须提到“下划线”包,它允许您_在文本模式下打印下划线,但在数学模式下表示下标。该下划线还允许 LaTeX 用连字符连接它连接的单词。

相关内容