Многие хотят отключить переносы в небольшом блоке текста. У меня обратная проблема: я отключил переносы во всем документе и хочу включить их только для одного абзаца. Есть ли простой способ сделать это?
В частности, я использую
\hyphenpenalty=10000
\usepackage[none]{hyphenat}
отключить переносы во всем документе. Есть ли способ включить их для одного абзаца?
Из документации я вижу hyphenat
, что опция «none» выполняет следующий код:
\hyphenpenalty=0
\exhyphenpenalty=0
\relax
Поэтому я попытался использовать скобки, чтобы создать отдельный блок кода, в котором штрафы были бы смягчены, например так:
{
\hyphenpenalty=10000
\exhyphenpenalty=10000
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do....
}
Но это не сработало. Отрывок "Lorem ipsum" по-прежнему не был расставлен дефисами.
решение1
Я не совсем понимаю, зачем кому-то может понадобиться отключать переносы.
Однако настройки
\hyphenpenalty=10000
\exhyphenpenalty=10000
полностью подавить его, что и делает none
опция hyphenat
:
\DeclareOption{none}%
{\hyphenpenalty=10000\exhyphenpenalty=10000\relax}
Если вы хотите снова включить его для одного абзаца, самый простой способ — сказать:
Lorem ipsum ... amet
{\hyphenpenalty=50 \exhyphenpenalty 50\par}
The following paragraph will not be hyphenated
Или определите новую среду:
\newenvironment{hyphenatedparagraph}
{\par\hyphenpenalty=50 \exhyphenpenalty 50 }
{\par}
а потом
\begin{hyphenatedparagraph}
Lorem ipsum ... amet
\end{hyphenatedparagraph}
сделаю то же самое.