In the new version, the code for the option is (from fontspec-keyval.dtx
)
% \paragraph{Inter-word space}
% These options set the relevant \cmd\fontdimen s for the
% font being loaded.
% \begin{macrocode}
\@@_keys_define_code:nnn {fontspec} {WordSpace}
{
\bool_if:NF \l_@@_firsttime_bool
{ \_fontspec_parse_wordspace:w #1,,,\q_stop }
}
\@@_aff_error:n {WordSpace}
% \end{macrocode}
and it is similar to the code for HyphenChar
and PunctuationSpace
. The problem is that these options act globally on a font and cannot be undone by simply closing a group. See WordSpace factor does not increase again for an example.
For completeness, here's the code for aff_error
:
% For catching features that cannot be used in |\addfontfeatures|:
% \begin{macrocode}
\cs_new:Nn \@@_aff_error:n
{
\@@_keys_define_code:nnn {fontspec-addfeatures} {#1}
{ \@@_error:nx {not-in-addfontfeatures} {#1} }
}
% \end{macrocode}
If you want different interword space in some part of your document, you are better to define a specific font family:
\documentclass{article}
\usepackage{fontspec}
\setmainfont{Linux Libertine O}
\newfontfamily{\morespace}{Linux Libertine O}[
WordSpace={2, 2, 2}
]
\begin{document}
Some text. Some text.
{\morespace Some text. Some text.}
Some text. Some text.
\end{document}
Of course, the change should be mentioned in the documentation.