序言中有没有办法修改/减少字母与后跟闭括号(和)之间的空白?

序言中有没有办法修改/减少字母与后跟闭括号(和)之间的空白?

对我来说,我认为使用and 时,与仅使用 and\left(相比\right),Latex 在函数名称和其参数之间留了太多空格。我希望获得与第二种情况相同的空间。()

问题是我使用的 Latex 是由 CAS 软件生成的,它总是自动生成\left(\right)有时这是真正需要的,有时则不需要。

因此,在不更改代码本身的情况下,有没有办法使空间与仅使用(和时相同)?或者以某种方式减少它?可能是使用一些智能宏或一些包?我只能更改序言,但不想在之后编辑任何内容,\begin{document}因为生成的乳胶在白天或我重新运行 CAS 程序时会多次更改。

以下是比较

\documentclass[12pt]{article} 
\begin{document}
\[
Y \left(X \right) 
\]

\[
y \left(x \right) 
\]
\end{document}

对阵

\documentclass[12pt]{article} 
\begin{document}
\[
Y (X) 
\]

\[
y (x) 
\]
\end{document}

在此处输入图片描述

全部使用 进行编译lualatex foo.tex

Y我们看到本例中的函数名称和其参数之间的水平间距()在使用时较小()这是我更喜欢的。

但每次都无法修改生成的代码。\left( and \right)即使括号内是单个字母,而不是需要调整括号高度以使其内容合适的复杂表达式,\left(Maple和 Mathematica 也总是会生成\right)代码。我使用的 Scientific Word 也是这样,它的所有 Latex 都使用\left( and \right)

TL 2021

答案1

您可以设置

\Umathordinnerspacing\textstyle=0mu
\Umathordinnerspacing\displaystyle=0mu

在 luaTeX 中。但是使用 Unicode Math 时会出现新问题:Ord 原子和下一个 Inner 原子后的斜体校正未包含在内。设置\mathitalicsmode=1没有帮助。

顺便说一句:这是你的 CAS 软件的错误,你可以尝试报告它。

相关内容