Quiero producir una tabla con dos precios seguidos, usando siunitx para lograr una visualización agradable y consistente de los números. Intentando no repetir el símbolo de moneda en las filas de datos, lo inserto como sufijo en las columnas relevantes. Esto funciona bien con una etiqueta de precio por fila; con un segundo, sin embargo, siunitx parece aumentar el espacio reservado para el sufijo con cada aparición por fila. Aquí hay un ejemplo bastante mínimo:
\documentclass{scrartcl}
\usepackage{polyglossia}
\usepackage{siunitx}
\sisetup{table-number-alignment=right}
\newcolumntype{E}[0]{S[
table-figures-decimal=0,
table-align-text-post=true,
table-space-text-post={€}]<{€}}
\begin{document}
\begin{tabular}{EE}
63 & 126 \\
49 & 49 \\
\end{tabular}
\end{document}
Si entiendo correctamente el formato de la primera columna, hay demasiados espacios en blanco en la segunda. Si acierta el segundo, el símbolo de la moneda se mueve a las cifras de la primera columna.
(En caso de que sea importante: estoy usando lualatex de los paquetes texlive de Debian, versión 2015.20160117-1.)
¿Alguna sugerencia sobre cómo puedo hacer que esto funcione?
Respuesta1
% arara: lualatex
\documentclass{scrartcl}
\usepackage{polyglossia}
\usepackage{siunitx}
\newcolumntype{E}[1]{S[%
,table-format=#1
,table-space-text-post={\,€}]<{\,€}
}
\begin{document}
% Quote taken from the manual page 71
When processing tables, \verb|siunitx| will expand anything stored
inside a macro, unless it is long or protected. \LaTeXe{} robust
commands are also detected and are not expanded.
Values which would otherwise be expanded
can be protected by wrapping them in a set of braces. As \TeX{} itself
will expand the first token in a table cell before \verb|siunitx|
can act on it, using the $\varepsilon$-\TeX{} protected mechanism is the
recommended course of action to prevent expansion of macros in
table cells. (As is shown in the table, \TeX's expansion of
\LaTeXe{} robust commands can lead to unexpected results.)
\bigskip
\begin{tabular}{E{2.0}E{3.0}}
63 & 126 \cr
49 & 49 \cr
\end{tabular}
\end{document}