私は絶対値記号をよく使って と書きます\lvert x \rvert
。
しかし、 のようにもっと短いものを定義できるでしょうか\abs{x}
?
-package を使いたいですamsmath
。
答え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}