Установка межсловного интервала с помощью ragged2e

Установка межсловного интервала с помощью ragged2e

Я работаю на Lyx с Preamble, я использовал для установки пробела между словами everyselследующее:

\usepackage{everysel}
\EverySelectfont{%
\fontdimen2\font=0.3em% interword space
}

Однако дизайн, над которым я работаю, должен хорошо работать в очень маленьком формате, поэтому я предпочитаю использовать ragged2eдля исправления размытости переносы:

\usepackage{ragged2e}
\RaggedRight

С чувством уныния, это, кажется, отключает everysel,руководствосказал ragged2e, что при вызове он everyselавтоматически загружается, однако мне, похоже, не удаётся заставить его работать.

Итак, подводя итог, мой вопрос заключается в следующем: как правильно разбить текст на части, расставив переносы и сохранив контроль над межсловным интервалом?

решение1

Насколько я могу судить, \RaggedRightвыполняет\@raggedtwoe@everyselectfont довы \EverySelectfontможете действовать; этот макрос устанавливает пропуск пробела на \fontdimen2\font, поэтому ваша настройка игнорируется, поскольку TeX использует \spaceskipif не ноль, а не \fontdimen2\fontдля интервала между словами.

\documentclass{article}
\usepackage{everysel,ragged2e,etoolbox}

% Let's add something before \spaceskip is set
\makeatletter
\preto{\@raggedtwoe@everyselectfont}{\fontdimen2\font=.3em }
\makeatother

\begin{document}
\RaggedRight abc def

\Large abc def 

\end{document}

Другой способ — установить\EverySelectfont дозагрузка ragged2e:

\documentclass{article}

\usepackage{everysel}
\EverySelectfont{\fontdimen2\font=.3em }

\usepackage{ragged2e}

\begin{document}
\selectfont

\RaggedRight abc def

\Large abc def

\end{document}

Не забудьте \selectfontпосле \begin{document}.

Связанный контент