在 TexWorks 中,为什么使用真正的撇号 (') 会破坏括号匹配?

在 TexWorks 中,为什么使用真正的撇号 (') 会破坏括号匹配?

要在 LaTeX 中获得撇号,可以输入'(直引号)或(撇号)。

虽然两者都被编译成撇号,但使用会破坏 TexWorks 中花括号的语法突出显示。

\documentclass{article}
\begin{document}
Apostrophe {’} and straight quote {'}
\end{document}

为什么会发生这种情况?我该如何预防?

答案1

此信息是回复我的错误报告,由 TexWorks 开发人员提供斯蒂芬·勒夫勒在 GitHub 上:

这是(某种程度上)设计使然。例如,括号 {(} 行会出现同样的情况,但括号 {()} 不会出现这种情况

原因是任何不匹配的分隔符都会破坏突出显示。其背后的原因是,这应该只由不完整的代码引起,在这种情况下,程序无法知道缺少的代码是什么 - 因为它所知道的可能包含更多分隔符。可以通过编辑文件 ~/.TeXworks/configuration/delimiter-pairs.txt(默认情况下可能是只读的)来自定义 TeXworks 所认为的分隔符。您的撇号被列为结束分隔符,这导致了您的问题。只需删除或注释相应的行,括号匹配应该会再次按预期工作。

因此,撇号 ' 算作起始单引号 ' 的结束元素,如果两者都在花括号内,则不会破坏突出显示。正如 Stefan 指出的那样,这些分隔符可以自定义。

相关内容