无法让电传打字机 \texttt 移动到下一行

无法让电传打字机 \texttt 移动到下一行

我遇到一个问题,每当我\texttt{}在一行的末尾有一个很长的区域时,它就会继续拖尾而不是换到下一行。

以下是 MWE:

\documentclass{article}

\begin{document}

Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean
\texttt{commodo.ligula.eget} dolor. Aenean massa. Cum sociis natoque 
penatibus et magnis dis parturient montes, nascetur ridiculus mus. 
Donec quam felis, ultricies nec, pellentesque eu, pretium quis, sem. 
Nulla consequat massa quis enim. Donec pede justo, fringilla vel, 
aliquet nec, vulputate eget, arcu. 

\end{document}

渲染示例

其他用户询问如何在 内换行文本texttt,但是,我感兴趣的是将整个文本移到texttt下一行(因为我的区域都不够长,不需要拆分)。要清楚:我希望每行都texttt位于一行上。

这不是重复的这个问题,其中 OP 想通过打破电传打字区域内的文本来解决这个问题。

答案1

如果您想要在现场断开不能包含打字机字体文本的行,这里是\filbreakTeXbook 中的宏的变体(第 111 页):

\documentclass{article}

\newcommand\wtt[1]{%
  \hfil\penalty0\hfilneg\texttt{#1}%
}

\begin{document}

Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean
\wtt{commodo.ligula.eget} dolor. Aenean massa. Cum sociis natoque
penatibus et magnis \wtt{dis.parturient.montes}, nascetur ridiculus mus.
Donec quam felis, ultricies nec, pellentesque eu, pretium quis, sem.
Nulla consequat massa quis enim. Donec pede justo, fringilla vel,
aliquet nec, vulputate eget, arcu.

\end{document}

在此处输入图片描述

如果在罚球处休息, 将\hfilneg在换行处消失;否则将取消\hfil

然而,如果您有许多不可分割的长段文本,则\raggedright应该考虑排版。

答案2

这里的建议是让你的段落稍微有点\sloppy

在此处输入图片描述

\documentclass{article}

\begin{document}

Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean
\texttt{commodo.ligula.eget} dolor. Aenean massa. Cum sociis natoque 
penatibus et magnis dis parturient montes, nascetur ridiculus mus. 
Donec quam felis, ultricies nec, pellentesque eu, pretium quis, sem. 
Nulla consequat massa quis enim. Donec pede justo, fringilla vel, 
aliquet nec, vulputate eget, arcu. 

\sloppy
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean
\texttt{commodo.ligula.eget} dolor. Aenean massa. Cum sociis natoque 
penatibus et magnis dis parturient montes, nascetur ridiculus mus. 
Donec quam felis, ultricies nec, pellentesque eu, pretium quis, sem. 
Nulla consequat massa quis enim. Donec pede justo, fringilla vel, 
aliquet nec, vulputate eget, arcu. 

\end{document}

source2e(部分63 页面样式和相关命令):

\sloppy永远不会(好吧,几乎永远不会)生产满满的箱子,但可能会生产未满那些。

如果您希望\sloppy将其隔离或本地化,请将其作为sloppypar环境的一部分发布:

\begin{sloppypar}
<sloppy paragraph(s)>
\end{sloppypar}

相关内容