
我正在 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 使用\spaceskip
if 非零,而不是\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}
。