
私は 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}
。