siunitx コマンド内の数学記号と Unicode 数学入力

siunitx コマンド内の数学記号と Unicode 数学入力

私がやろうとしているのは、 のように、 siunitx コマンド内で Unicode 文字を直接入力することです\SIrange{≳9}{≈40}{\kilogram}。 しかし、それは機能せず、 のようなエラーが発生します! Package siunitx Error: Invalid token '≳' in numerical input.

さらに調べてみると、これらの記号の標準コマンドを入力しても、すべてに機能するわけではありません。\SIrange{\gtrsim9}{\approx40}{\kilogram};\gtrsimは中断されますが、\approx受け入れられます。

いくつかのMNWE:

\documentclass{standalone}

\usepackage{siunitx}
\usepackage{unicode-math}

\begin{document}
    \SIrange{≳9}{≈40}{\kilogram}\\
    \SIrange{\gtrsim9}{\approx40}{\kilogram}
\end{document}

私がやろうとしていることは意味があるでしょうか? それを実行する方法はあるでしょうか?

答え1

デフォルトのリストに他の比較演算子を追加できます。

\documentclass{article}

\usepackage{siunitx}
\usepackage{unicode-math}

\sisetup{
  input-comparators = {
    < = > \approx \ge \geq \gg \le \leq \ll \sim % default
    \gtrsim ≳ ≈
  },
}

\begin{document}

\SIrange{≳9}{≈40}{\kilogram}

\SIrange{\gtrsim9}{\approx40}{\kilogram}

\end{document}

ここに画像の説明を入力してください

答え2

数値フィールドで任意のコードを許可するには、次の parse-numbersように設定します。false

\documentclass{standalone}

\usepackage{siunitx}
\usepackage{unicode-math}

\begin{document}
  \SIrange[parse-numbers = false]{≳9}{≈40}{\kilogram}\\
  \SIrange[parse-numbers = false]{\gtrsim9}{\approx40}{\kilogram}
\end{document}

または、次のようにシンボルを明示的に宣言することもできます\sisetup

\documentclass{standalone}

\usepackage{siunitx}
\sisetup{
  input-symbols=≈≳\gtrsim\approx
}
\usepackage{unicode-math}

\begin{document}
  \SIrange{≳9}{≈40}{\kilogram}\\
  \SIrange{\gtrsim9}{\approx40}{\kilogram}
\end{document}

関連情報