Símbolos matemáticos e entrada matemática unicode dentro dos comandos siunitx

Símbolos matemáticos e entrada matemática unicode dentro dos comandos siunitx

O que estou tentando fazer é inserir caracteres Unicode diretamente nos comandos siunitx, como \SIrange{≳9}{≈40}{\kilogram}. Mas não funciona e recebo erros como ! Package siunitx Error: Invalid token '≳' in numerical input..

Olhando mais adiante, inserir o comando padrão para esses símbolos também não funciona para todos eles: \SIrange{\gtrsim9}{\approx40}{\kilogram}; \gtrsimquebra, mas \approxé aceito.

Alguns MNWE:

\documentclass{standalone}

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

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

O que estou tentando fazer faz algum sentido? Existe uma maneira de fazer isso?

Responder1

Você pode adicionar outros comparadores à lista padrão:

\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}

insira a descrição da imagem aqui

Responder2

Você pode definir parse-numberspara falsepermitir código arbitrário nos campos numéricos:

\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}

Ou você pode declarar os símbolos explicitamente em \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}

informação relacionada