LaTeX: evite el salto de línea en un lapso de texto


148

¿Cómo puedo prevenir el látex de la inserción de saltos de línea en mis \texttt{...}o \url{...}texto regiones? No hay espacios dentro con los que pueda reemplazar ~, solo se rompe en símbolos.

Actualización : no quiero causar desbordamientos de línea, prefiero insertar saltos de línea LaTeX antes de estas regiones en lugar de dentro de ellas.

Respuestas:


157

\mboxEs la respuesta más simple. En cuanto a la actualización:

TeX prefiere líneas demasiado largas para agregar demasiado espacio entre palabras en una línea; Creo que la idea es que notará las líneas que se extienden hacia el margen (y los cuadros negros que inserta después de tales líneas), y tendrá la oportunidad de revisar el contenido, mientras que si hubiera demasiado espacio, es posible que no note eso.

Use \sloppyo \begin{sloppypar}...\end{sloppypar}para ajustar este comportamiento, al menos un poco. Otra posibilidad es \raggedright(o \begin{raggedright}...\end{raggedright}).


64

Rodéalo con un \mbox{}


44
¿Esto animará a LaTeX a insertar un salto de línea antes de la región si desbordaría la línea?
rampion

1
No. El \nohyphens{}comando, que se encuentra en el hypenatpaquete, podría.
Michiel Buddingh

1
Gracias por la sugerencia. Acabo de probar \ nohyphens {\ url {...}}, y todavía permite saltos de línea.
rampion

31

Además, si tiene dos palabras subsiguientes en el texto normal y desea evitar un salto de línea entre ellas, puede usar el carácter ~.

Por ejemplo:

As we can see in Fig.~\ref{BlaBla}, there is nothing interesting to see. A~better place..

Esto puede garantizar que no tenga una línea que comience con un número de figura (sin la parte de la Fig.) O con una A mayúscula.


12
Solo para tener en cuenta que ~es un carácter de espacio que no se rompe , es decir, también inserta un espacio (a veces uno puede querer evitar la ruptura sin insertar un espacio).
sdaau

24

Use \ nolinebreak

\ nolinebreak [número]

El comando \ nolinebreak evita que LaTeX rompa la línea actual en el punto del comando. Con el argumento opcional, número, puede convertir el comando \ nolinebreak de una demanda a una solicitud. El número debe ser un número del 0 al 4. Cuanto mayor sea el número, más insistente será la solicitud.

Fuente: http://www.personal.ceu.hu/tex/breaking.htm#nolinebreak


14

Defina el comando myurl:


\def\myurl{\hfil\penalty 100 \hfilneg \hbox}

I don't want to cause line overflows, 
I'd just rather LaTeX insert linebreaks before 
\myurl{\tt http://stackoverflow.com/questions/1012799/} 
regions rather than inside them.
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.