web-dev-qa-db-fra.com

LaTeX: éviter les sauts de ligne dans une partie du texte

Comment puis-je empêcher LaTeX d'insérer des sauts de ligne dans mes régions de texte \texttt{...} ou \url{...}? Il n'y a pas d'espaces à l'intérieur que je puisse remplacer par ~, c'est juste une rupture de symboles.

Mise à jour: Je ne veux pas causer de débordements de lignes, je préférerais que LaTeX insère des sauts de ligne avant ces régions plutôt que dans celles-ci.

131
rampion

_\mbox_ est la réponse la plus simple. En ce qui concerne la mise à jour:

TeX préfère les lignes trop longues pour ajouter trop d’espace entre les mots d’une ligne; Je pense que l’idée est que vous remarquerez les lignes qui se prolongent dans la marge (et les cases noires qu’elle insère après ces lignes) et que vous aurez une chance de réviser le contenu, alors que s’il y avait trop d’espace, vous ne remarqueriez peut-être pas il.

Utilisez \sloppy ou _\begin{sloppypar}...\end{sloppypar}_ pour ajuster ce comportement, au moins un peu. Une autre possibilité est \raggedright (ou _\begin{raggedright}...\end{raggedright}_).

135
Jouni K. Seppänen

Entourez-le d'un \mbox{}

57
Michiel Buddingh

De même, si vous avez deux mots suivants dans le texte normal et que vous souhaitez éviter un saut de ligne entre eux, vous pouvez utiliser le caractère ~.

Par exemple:

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

Cela peut vous assurer que vous n'avez pas de ligne commençant par un numéro de figure (sans la partie Fig.) Ou par un a majuscule.

25
Uri

Utiliser\nolinebreak

\ nolinebreak [nombre]

La commande\nolinebreak empêche LaTeX de couper la ligne en cours au point de la commande. Avec l’argument facultatif, nombre, vous pouvez convertir la commande\nolinebreak d’une demande en une demande. Le nombre doit être un nombre compris entre 0 et 4. Plus le nombre est élevé, plus la demande est insistante.

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

18
Tomasz

Définir la commande 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.

14
Alexey Malistov