¿Cómo permitir saltos de línea en listas y rangos de siunitx en modo matemático?

¿Cómo permitir saltos de línea en listas y rangos de siunitx en modo matemático?

He escrito mi tesis usando \numlisty \numrange(y \SIsus variantes) de lasiunitxpaquete. En algunos casos, he usado estas macros en modo matemático, por ejemplo, $\phi = \numlist{0.5;0.6;0.7}$en contraste con los consejos muy explícitos del siunitxmanual que recién ahora veo. Con la configuración predeterminada, esto hace que el separador final de la lista se imprima en texto matemático (es decir, cursiva). Entonces pensé, no hay problema, simplemente ajustaré los separadores en la \text{}macro desdemathtools, problema resuelto. Desafortunadamente, esto evita que se produzcan saltos de línea dentro de la lista o rango, ya sea que la lista o el rango ocurran en modo matemático o no.

Entonces mi pregunta es, ¿puedo permitir saltos de línea donde los necesito cambiando siunitxla configuración, o tengo que revisar mi tesis y eliminar todos los comandos \...rangey \...listdel modo matemático, de modo que pueda eliminar \text{}alrededor de la list-separators?

Manifestación:

\documentclass[draft]{article}
\usepackage{siunitx}

\usepackage[showframe]{geometry}
\geometry{width=0.5in}

\setlength{\parindent}{0pt}

\begin{document}
\SIrange{750}{1000}{\kelvin} % Breaks

\SIlist{0.5;0.6;0.7}{\percent} % Breaks

$\phi = \numlist{0.5;0.6;0.7}$ % Doesn't break and italics

\sisetup{%
    range-phrase = {\text{ to }},
    list-separator = {\text{, }},
    list-final-separator = {\text{, and }},
    list-pair-separator = {\text{ and }},
}%


\SIrange{750}{1000}{\kelvin} % Doesn't break

\SIlist{0.5;0.6;0.7}{\percent} % Doesn't break

$\phi = \numlist{0.5;0.6;0.7}$ % Doesn't break
\end{document}

Respuesta1

El mensaje que vincula es realmente relevante.

\documentclass[draft]{article}
\usepackage{siunitx}

\setlength{\parindent}{0pt}

\begin{document}

\sisetup{%
  range-phrase = {\ \linebreak[0]\text{to}\ \nolinebreak},
  list-separator = {\text{, }},
  list-final-separator = {,\ \linebreak[0]\text{and }},
  list-pair-separator = {\ \text{and}\ },
  list-separator = {,\ \linebreak[0]}
}%

\parbox{0pt}{

\SIrange{750}{1000}{\kelvin} % Doesn't break

\SIlist{0.5;0.6;0.7}{\percent} % Doesn't break

$\phi = \numlist{0.5;0.6;0.7}$ % Doesn't break

}
\end{document}

Los espacios así introducidos participarán en el estiramiento o encogimiento de la línea.

ingrese la descripción de la imagen aquí

información relacionada