ragged2e で単語スペースを設定する

ragged2e で単語スペースを設定する

私は Preamble を使って Lyx に取り組んでいます。以前は以下のように単語スペースを設定していました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 は単語間のスペースで\spaceskipはなく、ゼロ以外の値を使用するためです。\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}

関連情報