我想说,一致性模一个相当大的表达式成立,THING
用括号括起来。
\left( \mod{THING}\right)
似乎会导致左括号和“mod”之间出现很大的空格,并且
\pmod{THING}
产生的括号对我来说太小了。有没有比使用 更不黑客的选项\mbox
?
答案1
使用amsmath
定义似乎更好;我还将使用mathtools
增长括号。
\documentclass{article}
\usepackage{mathtools}
% Here's how amsmath defines \pmod
% \newcommand{\pod}[1]{\allowbreak
% \if@display\mkern18mu\else\mkern8mu\fi(#1)}
% \renewcommand{\pmod}[1]{\pod{{\operator@font mod}\mkern6mu#1}}
\makeatletter
\DeclarePairedDelimiterX{\pmodx}[1]{(}{)}{{\operator@font mod}\mkern6mu#1}
\renewcommand{\pmod}{%
\allowbreak
\if@display\mkern18mu\else\mkern8mu\fi
\pmodx
}
\makeatother
\begin{document}
\begin{align*}
a &\equiv b \pmod{n}\\
a &\equiv b \pmod[\big]{n}\\
a &\equiv b \pmod[\Big]{\frac{n}{2}}\\
a &\equiv b \pmod[\bigg]{\sum_{k=1}^n k^2}\\
a &\equiv b \pmod*{\sqrt{\sum_{k=1}^n k^3}\,}
\end{align*}
\end{document}
\pod
用同样的想法来定义也很容易。
使用 并不是一个好主意\mod
,它被定义为类似\pmod
但没有括号。
答案2
这些命令\mod
和pmod
用途如下
x\equiv y\pmod b \qquad x\equiv y\mod c
而不是您使用它们的方式。
你可能想要一个像这样的新操作符:
\DeclareMathOperator{\mymod}{mod\,}
然后使用Bigl
andBigr
或类似方法来获得更大的括号:
\documentclass{article}
\usepackage{amsmath}
\DeclareMathOperator{\mymod}{mod\,}
\begin{document}
\[
\Bigl(\mymod\text{THING}\Bigr)
\]
\end{document}
输出:
答案3
该命令\mod
引入了一些您在此处看到的硬编码字距调整。您可以直接定义一个新命令,使用您喜欢的字距调整。但是,\pmod
请将此字距调整保留在括号前面。如果您想坚持这一点,您应该采用第二种方法。
就我个人而言,我不喜欢使用它,\left(\right)
因为它弊大于利。因此,我会\mod
为我的用途定义一些更简单的命令,并手动使用最佳匹配的括号。
% arara: lualatex
\documentclass{article}
\usepackage{mathtools}
\usepackage{lua-visual-debug}
\makeatletter
\newcommand{\myMod}[1]{\allowbreak \if@display \mkern 18mu \else \mkern 0mu\fi {\operator@font mod}\,\,#1} % 0mu was 12mu for the math mode in the orignial defintion
\newcommand{\myPMod}[1]{\allowbreak \if@display \mkern 18mu\else \mkern 8mu\fi \left({{\operator@font mod}\mkern 6mu #1}\right)} % replaced () by \left(\right) in respect to the original definiont
\makeatother
\begin{document}
% The original \mod
$\mod{Thing}$
% \mod redefined in order to kick out the math style kerning
$\left(\myMod{Thing}\right)$
% The original \pmod
$\pmod{Thing}$
% \pmod redefined with \left(\right) instead of normal parantheses
$\myPMod{Thing_{g_{g_g}}}$
\end{document}