[Tex/LaTex] Trying to use symbols withing the number in the siunitx package


I'm trying to use the following with siunitx:

\omega_x = \SI{100\pi}{rad.s^{-1}}

But it comes out wrong. There is a space placed between 10 and 0π, as if π
was actually a digit rather than a symbol. How do I get siunitx to treat it as a symbol?

I'd prefer an option to be used with the \usepackage declaration, to make the behaviour system-wide. An alternative package would also be helpful.

Image for clarification:

siunitx output, with superfluous space between the zeros

Also, I'd prefer a way that supported multiple symbols. I'm using the TeX Live 2012 distribution, last updated on September 25, if that helps.

Best Answer

Some things I'd suggest:


\newcommand*{\customSI}[4][]{\num[#1]{#2}#3\,\si[#1]{#4}} % \, should be substituted for siunitx' inter-unit-product

\(\omega_x = \SI[parse-numbers=false]{\num[parse-numbers=true]{10000}\pi}{rad.s^{-1}}\)\\
\(\omega_x = \customSIcustom{10000}{\pi}{rad.s^{-1}}\)\\
\(\omega_x = \customSI{10000}{\pi}{rad.s^{-1}}\)\\
\(\omega_x = \SI{10000}{\pii.rad.s^{-1}}\)\\
\(\omega_x = \SI[number-unit-product={}]{10000}{\pii.rad.s^{-1}}\)



Related Question