我的问题是,我试图用斜体写变量名,但由于其中一些变量名带有下划线,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 $ inserted
和Extra }, 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 用连字符连接它连接的单词。