¿Cómo debo poner el comando para que mi entorno matemático en línea pueda estar unido? Por ejemplo 0<x<1
, se divide en dos partes 0<
y x<1
en la siguiente línea.
Respuesta1
Hay algunas estrategias que podría utilizar: encerrar la expresión entre llaves o encuadrarla, pero en algunos casos esto puede producir cuadros demasiado llenos. La mayoría de las veces la mejor solución es reformular el texto donde aparece la fórmula para que no se produzca un salto de línea.
Un ejemplo donde las cosas van bien:
\documentclass[draft]{article}
\begin{document}
Text text text text text text text text text text text text text text te $0<x<1$
Text text text text text text text text text text text text text text te ${0<x<1}$
Text text text text text text text text text text text text text text te \mbox{$0<x<1$}
\end{document}
Y otro, donde las cosas van mal (fíjese en los cuadros demasiado llenos):
\documentclass[draft]{article}
\begin{document}
Text text text text text text text text text text text text texttexttex $0<x<1$ text text text text text text text text text text text text text text text text text text
Text text text text text text text text text text text text texttexttex ${0<x<1}$ text text text text text text text text text text text text text text text text text text
Text text text text text text text text text text text text texttexttex \mbox{$0<x<1$} text text text text text text text text text text text text text text text text text text
\end{document}
En la situación ilustrada en el último ejemplo, se podría usar \sloppy para evitar cuadros defectuosos, pero ahora algunas líneas de texto se alargarán y el espacio entre palabras se verá feo:
\documentclass[draft]{article}
\begin{document}
Text text text text text text text text text text text text texttexttex $0<x<1$ text text text text text text text text text text text text text text text text text text
{\sloppy Text text text text text text text text text text text text texttexttex ${0<x<1}$ text text text text text text text text text text text text text text text text text text\par}
{\sloppy Text text text text text text text text text text text text texttexttex \mbox{$0<x<1$} text text text text text text text text text text text text text text text text text text\par}
\end{document}
Comoegregmenciona ambos en un comentario \mbox{$0<x<1$}
y ${0<x<1}$
hará que los espacios alrededor de <
no compartan su estiramiento y contracción con la línea en la que terminan; $0<\nobreak x<1$
es mejor para evitar un salto de línea; posiblemente agregar \nobreak
también después del segundo <
.
La mejor solución, la mayoría de las veces, es (como ya dije) intentar reformular el texto donde aparece la fórmula para que no se produzca un salto de línea.
Respuesta2
Podrías establecer el \relpenalty
valor más alto (ya es bastante alto; 500 en términos simples). Por ejemplo,
\relpenalty=10000
Intentaría nunca romper la línea con el carácter matemático de clase relacional. De hecho, me estaba costando mucho lograr que TeX rompiera una línea con el ejemplo $0<x<1$
con la configuración predeterminada, así que para probarlo establecí la penalización en cero.
Otra penalización matemática en línea es \binoppenalty
para los caracteres matemáticos de clase binaria, por lo que para sugerirle a TeX que intente y nunca rompa las matemáticas en línea, se podrían configurar ambos en 10000
. Por supuesto, TeX tendrá grandes problemas para encontrar puntos de salto de línea si tiene muchas matemáticas en línea largas con esa configuración.