我经常使用绝对值符号并写出\lvert x \rvert
。
但是,我可以以某种方式定义一些更短的东西吗\abs{x}
?
我想使用amsmath
-package。
答案1
您拒绝加载其他包裹,这很奇怪:尤达说,包裹很好。
但是,如果您不想使用抽象方法而更喜欢手动完成所有工作,那么您甚至不需要加载amsmath
。
\documentclass{article}
\makeatletter
\DeclareRobustCommand{\abs}{\@ifstar\star@abs\normal@abs}
\newcommand{\star@abs}[1]{\left|#1\right|}
\newcommand{\normal@abs}[2][]{\mathopen{#1|}#2\mathclose{#1|}}
\makeatother
\begin{document}
$|\sin x|$ (wrong)
$\abs{\sin x}$ (right)
$\abs[\big]{\sin x}$
$\abs[\Big]{\sin x}$
$\abs[\bigg]{\sin x}$
$\abs[\Bigg]{\sin x}$
$\displaystyle\abs*{\frac{\sin x}{x}}$
\bigskip
$\abs[\big]{\sin x}_1^2$
$\abs[\Big]{\sin x}_1^2$
$\displaystyle\abs*{\frac{\sin x}{x}}_1^2$
\end{document}