π input all'interno dei comandi siunitx
Quello che sto cercando di fare è scrivere il valore μ₀ (4π × 10⁻⁷ SI) con siunitx usando l'input Unicode.
Senza Unicode sarebbe simile a questo:
\documentclass{standalone}
\usepackage{siunitx}
\begin{document}
\SI{4 \pi e-7}{SI}
\end{document}
E questo funziona. Sulla base dei simboli matematici e dell'input unicode-math all'interno dei comandi siunitx e della documentazione di siunitx che definisce il valore predefinito di input-symbolsto {\pi \dots}, ho provato quanto segue:
\documentclass{standalone}
\usepackage[input-symbols = {π}]{siunitx}
\usepackage{unicode-math}
\begin{document}
\SI{4πe-7}{SI}
\end{document}
Ma questo si traduce in: ! Package siunitx Error: Invalid token 'π' in numerical input.
Cosa mi sto perdendo?
Risposte
Il problema perché non si può mettere \sisetupin \AtBeginDocumentnel vostro preambolo è, che il catcode sbagliata viene utilizzato. In LuaTeX πè di categoria 11 nel preambolo, ma con unicode-mathesso sarà di categoria 12 nel documento. Quindi devi cambiare il catcode prima di usarlo \AtBeginDocument(con mathrm=symgrazie a Ulrike):
\documentclass{standalone}
\usepackage{siunitx}
\usepackage[mathrm=sym]{unicode-math}
\begingroup
\catcode`\π=12
\AtBeginDocument{\sisetup{input-symbols=π}}
\endgroup
\begin{document}
\SI{4πe-7}{SI}
\end{document}