From 9320d274483582143054c232873dbe4784fe98d7 Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Sat, 15 Jan 2022 21:42:57 +0000 Subject: fontspec (15jan22) git-svn-id: svn://tug.org/texlive/trunk@61617 c570f23f-e606-0410-a88d-b1316a301751 --- .../source/latex/fontspec/fontspec-code-api.dtx | 2 +- .../latex/fontspec/fontspec-code-closing.dtx | 2 +- .../source/latex/fontspec/fontspec-code-enc.dtx | 2 +- .../latex/fontspec/fontspec-code-feat-aat.dtx | 2 +- .../latex/fontspec/fontspec-code-feat-opentype.dtx | 2 +- .../latex/fontspec/fontspec-code-fontload.dtx | 2 +- .../latex/fontspec/fontspec-code-graphite.dtx | 2 +- .../latex/fontspec/fontspec-code-interfaces.dtx | 2 +- .../latex/fontspec/fontspec-code-internal.dtx | 23 +-- .../source/latex/fontspec/fontspec-code-keyval.dtx | 25 +++- .../source/latex/fontspec/fontspec-code-lang.dtx | 2 +- .../source/latex/fontspec/fontspec-code-load.dtx | 4 +- .../source/latex/fontspec/fontspec-code-math.dtx | 2 +- .../source/latex/fontspec/fontspec-code-msg.dtx | 82 +++++------ .../latex/fontspec/fontspec-code-opening.dtx | 2 +- .../latex/fontspec/fontspec-code-opentype.dtx | 2 +- .../latex/fontspec/fontspec-code-scripts.dtx | 15 +- .../source/latex/fontspec/fontspec-code-user.dtx | 2 +- .../source/latex/fontspec/fontspec-code-vars.dtx | 6 +- .../source/latex/fontspec/fontspec-code-xfss.dtx | 159 +-------------------- .../source/latex/fontspec/fontspec-code.ltx | 2 +- .../source/latex/fontspec/fontspec-doc-api.tex | 2 +- .../source/latex/fontspec/fontspec-doc-enc.tex | 2 +- .../source/latex/fontspec/fontspec-doc-featset.tex | 35 +++-- .../source/latex/fontspec/fontspec-doc-fontsel.tex | 52 +++++-- .../source/latex/fontspec/fontspec-doc-intro.tex | 2 +- .../source/latex/fontspec/fontspec-doc-luatex.tex | 4 +- .../latex/fontspec/fontspec-doc-opentype.tex | 9 +- .../source/latex/fontspec/fontspec-doc-xetex.tex | 2 +- .../source/latex/fontspec/fontspec-lua.dtx | 2 +- .../texmf-dist/source/latex/fontspec/fontspec.dtx | 8 +- .../texmf-dist/source/latex/fontspec/fontspec.ins | 2 +- .../texmf-dist/source/latex/fontspec/fontspec.ltx | 2 +- 33 files changed, 191 insertions(+), 273 deletions(-) (limited to 'Master/texmf-dist/source/latex') diff --git a/Master/texmf-dist/source/latex/fontspec/fontspec-code-api.dtx b/Master/texmf-dist/source/latex/fontspec/fontspec-code-api.dtx index b0b6b0a87de..17f22a23e76 100644 --- a/Master/texmf-dist/source/latex/fontspec/fontspec-code-api.dtx +++ b/Master/texmf-dist/source/latex/fontspec/fontspec-code-api.dtx @@ -378,7 +378,7 @@ % ------------------------------------------------ % The FONTSPEC package % ------------------------------------------------ -% Copyright 2004-2020 Will Robertson, LPPL "maintainer" +% Copyright 2004-2022 Will Robertson, LPPL "maintainer" % Copyright 2009-2015 Khaled Hosny % Copyright 2013 Philipp Gesang % Copyright 2013-2016 Joseph Wright diff --git a/Master/texmf-dist/source/latex/fontspec/fontspec-code-closing.dtx b/Master/texmf-dist/source/latex/fontspec/fontspec-code-closing.dtx index 4dca137a7dc..5adc879707c 100644 --- a/Master/texmf-dist/source/latex/fontspec/fontspec-code-closing.dtx +++ b/Master/texmf-dist/source/latex/fontspec/fontspec-code-closing.dtx @@ -32,7 +32,7 @@ % ------------------------------------------------ % The FONTSPEC package % ------------------------------------------------ -% Copyright 2004-2020 Will Robertson, LPPL "maintainer" +% Copyright 2004-2022 Will Robertson, LPPL "maintainer" % Copyright 2009-2015 Khaled Hosny % Copyright 2013 Philipp Gesang % Copyright 2013-2016 Joseph Wright diff --git a/Master/texmf-dist/source/latex/fontspec/fontspec-code-enc.dtx b/Master/texmf-dist/source/latex/fontspec/fontspec-code-enc.dtx index 7d304480029..f4779981308 100644 --- a/Master/texmf-dist/source/latex/fontspec/fontspec-code-enc.dtx +++ b/Master/texmf-dist/source/latex/fontspec/fontspec-code-enc.dtx @@ -146,7 +146,7 @@ % ------------------------------------------------ % The FONTSPEC package % ------------------------------------------------ -% Copyright 2004-2020 Will Robertson, LPPL "maintainer" +% Copyright 2004-2022 Will Robertson, LPPL "maintainer" % Copyright 2009-2015 Khaled Hosny % Copyright 2013 Philipp Gesang % Copyright 2013-2016 Joseph Wright diff --git a/Master/texmf-dist/source/latex/fontspec/fontspec-code-feat-aat.dtx b/Master/texmf-dist/source/latex/fontspec/fontspec-code-feat-aat.dtx index cf9736c0356..994fae553c4 100644 --- a/Master/texmf-dist/source/latex/fontspec/fontspec-code-feat-aat.dtx +++ b/Master/texmf-dist/source/latex/fontspec/fontspec-code-feat-aat.dtx @@ -231,7 +231,7 @@ % ------------------------------------------------ % The FONTSPEC package % ------------------------------------------------ -% Copyright 2004-2020 Will Robertson, LPPL "maintainer" +% Copyright 2004-2022 Will Robertson, LPPL "maintainer" % Copyright 2009-2015 Khaled Hosny % Copyright 2013 Philipp Gesang % Copyright 2013-2016 Joseph Wright diff --git a/Master/texmf-dist/source/latex/fontspec/fontspec-code-feat-opentype.dtx b/Master/texmf-dist/source/latex/fontspec/fontspec-code-feat-opentype.dtx index 77d431ccf84..a2780574423 100644 --- a/Master/texmf-dist/source/latex/fontspec/fontspec-code-feat-opentype.dtx +++ b/Master/texmf-dist/source/latex/fontspec/fontspec-code-feat-opentype.dtx @@ -571,7 +571,7 @@ % ------------------------------------------------ % The FONTSPEC package % ------------------------------------------------ -% Copyright 2004-2020 Will Robertson, LPPL "maintainer" +% Copyright 2004-2022 Will Robertson, LPPL "maintainer" % Copyright 2009-2015 Khaled Hosny % Copyright 2013 Philipp Gesang % Copyright 2013-2016 Joseph Wright diff --git a/Master/texmf-dist/source/latex/fontspec/fontspec-code-fontload.dtx b/Master/texmf-dist/source/latex/fontspec/fontspec-code-fontload.dtx index ac403028e18..4f3dcea6903 100644 --- a/Master/texmf-dist/source/latex/fontspec/fontspec-code-fontload.dtx +++ b/Master/texmf-dist/source/latex/fontspec/fontspec-code-fontload.dtx @@ -124,7 +124,7 @@ % ------------------------------------------------ % The FONTSPEC package % ------------------------------------------------ -% Copyright 2004-2020 Will Robertson, LPPL "maintainer" +% Copyright 2004-2022 Will Robertson, LPPL "maintainer" % Copyright 2009-2015 Khaled Hosny % Copyright 2013 Philipp Gesang % Copyright 2013-2016 Joseph Wright diff --git a/Master/texmf-dist/source/latex/fontspec/fontspec-code-graphite.dtx b/Master/texmf-dist/source/latex/fontspec/fontspec-code-graphite.dtx index c840d2af604..2a26211c2a6 100644 --- a/Master/texmf-dist/source/latex/fontspec/fontspec-code-graphite.dtx +++ b/Master/texmf-dist/source/latex/fontspec/fontspec-code-graphite.dtx @@ -116,7 +116,7 @@ % ------------------------------------------------ % The FONTSPEC package % ------------------------------------------------ -% Copyright 2004-2020 Will Robertson, LPPL "maintainer" +% Copyright 2004-2022 Will Robertson, LPPL "maintainer" % Copyright 2009-2015 Khaled Hosny % Copyright 2013 Philipp Gesang % Copyright 2013-2016 Joseph Wright diff --git a/Master/texmf-dist/source/latex/fontspec/fontspec-code-interfaces.dtx b/Master/texmf-dist/source/latex/fontspec/fontspec-code-interfaces.dtx index b5c909fcfcc..d76dd61d601 100644 --- a/Master/texmf-dist/source/latex/fontspec/fontspec-code-interfaces.dtx +++ b/Master/texmf-dist/source/latex/fontspec/fontspec-code-interfaces.dtx @@ -284,7 +284,7 @@ % ------------------------------------------------ % The FONTSPEC package % ------------------------------------------------ -% Copyright 2004-2020 Will Robertson, LPPL "maintainer" +% Copyright 2004-2022 Will Robertson, LPPL "maintainer" % Copyright 2009-2015 Khaled Hosny % Copyright 2013 Philipp Gesang % Copyright 2013-2016 Joseph Wright diff --git a/Master/texmf-dist/source/latex/fontspec/fontspec-code-internal.dtx b/Master/texmf-dist/source/latex/fontspec/fontspec-code-internal.dtx index 375fc7be2e9..ee7e36cc887 100644 --- a/Master/texmf-dist/source/latex/fontspec/fontspec-code-internal.dtx +++ b/Master/texmf-dist/source/latex/fontspec/fontspec-code-internal.dtx @@ -47,7 +47,7 @@ \keys_set_known:nn {fontspec-preparse-cfg} {#1} \@@_init_ttc:n {#2} - \@@_load_external_fontoptions:Nn \l_fontspec_fontname_tl {#2} + \@@_load_external_fontoptions:N \l_fontspec_fontname_tl \@@_extract_all_features:n {#1} \tl_set:Nx \l_@@_fontid_tl { \tl_to_str:N \l_fontspec_fontname_tl-:-\tl_to_str:N \l_@@_all_features_clist } @@ -138,16 +138,16 @@ % \end{macrocode} % \end{macro} % -% \begin{macro}{\@@_load_external_fontoptions:Nn} +% \begin{macro}{\@@_load_external_fontoptions:N} % Load a possible \texttt{.fontspec} font configuration file. % This file could set font-specific options for the font about to be loaded. +% The parameter should be a tokenlist containing a sanitised fontname. % \begin{macrocode} -\cs_new:Nn \@@_load_external_fontoptions:Nn +\cs_new:Nn \@@_load_external_fontoptions:N { \bool_if:NT \l_@@_fontcfg_bool { -% \typeout{:: @@_load_external_fontoptions:Nn \exp_not:N #1 {#2} } - \@@_sanitise_fontname:Nn #1 {#2} +% \typeout{:: @@_load_external_fontoptions:N \exp_not:N #1 } \tl_set:Nx \l_@@_ext_filename_tl {#1.fontspec} \tl_remove_all:Nn \l_@@_ext_filename_tl {~} \prop_if_in:NVF \g_@@_fontopts_prop #1 @@ -500,8 +500,10 @@ \@@_add_nfssfont:nnnn \bfdefault \shapedefault \l_@@_fontname_bf_tl \l_@@_fontfeat_bf_clist \@@_add_nfssfont:nnnn \mddefault \itdefault \l_@@_fontname_it_tl \l_@@_fontfeat_it_clist \@@_add_nfssfont:nnnn \mddefault \sldefault \l_@@_fontname_sl_tl \l_@@_fontfeat_sl_clist + \@@_add_nfssfont:nnnn \mddefault \swdefault \l_@@_fontname_sw_tl \l_@@_fontfeat_sw_clist \@@_add_nfssfont:nnnn \bfdefault \itdefault \l_@@_fontname_bfit_tl \l_@@_fontfeat_bfit_clist \@@_add_nfssfont:nnnn \bfdefault \sldefault \l_@@_fontname_bfsl_tl \l_@@_fontfeat_bfsl_clist + \@@_add_nfssfont:nnnn \bfdefault \swdefault \l_@@_fontname_bfsw_tl \l_@@_fontfeat_bfsw_clist \prop_map_inline:Nn \l_@@_nfssfont_prop { \@@_set_faces_aux:nnnnn ##2 } } % \end{macrocode} @@ -677,7 +679,8 @@ \cs_new:Nn \@@_load_fontname:Nn { % \typeout{:: @@_load_fontname:Nn \exp_not:N #1 (#1) {#2} } - \@@_load_external_fontoptions:Nn #1 {#2} + \@@_sanitise_fontname:Nn #1 {#2} + \@@_load_external_fontoptions:N #1 \prop_get:NVNF \g_@@_fontopts_prop #1 \l_@@_fontopts_clist { \clist_clear:N \l_@@_fontopts_clist } \keys_set_groups:nnV {fontspec/fontname} {getfontname} \l_@@_fontopts_clist @@ -724,7 +727,7 @@ \@@_declare_shapes_normal:nn {#1} {#2} \@@_declare_shapes_smcaps:nn {#1} {#2} \@@_declare_shape_slanted:nn {#1} {#2} - \@@_declare_shapes_bx:nn {#1} {#2} + \@@_declare_shapes_bx:nn {#1} {#2} \@@_declare_shape_loginfo:nn {#1} {#2} } % \end{macrocode} @@ -831,7 +834,7 @@ { \tl_if_exist:cTF { \@@_shape_merge:nn {#1} {\scdefault} } { \tl_use:c { \@@_shape_merge:nn {#1} {\scdefault} } } - { \scdefault } + { \scdefault#1 } } % \end{macrocode} % \end{macro} @@ -930,8 +933,10 @@ {\bfdefault/\shapedefault} {'bold'~} {\mddefault/\itdefault} {'italic'~} {\mddefault/\sldefault} {'slanted'~} + {\mddefault/\swdefault} {'swash'~} {\bfdefault/\itdefault} {'bold~ italic'~} {\bfdefault/\sldefault} {'bold~ slanted'~} + {\bfdefault/\swdefault} {'bold~ swash'~} } (#1/#2)~ with~ NFSS~ spec.:~ \l_@@_nfss_tl @@ -1205,7 +1210,7 @@ % ------------------------------------------------ % The FONTSPEC package % ------------------------------------------------ -% Copyright 2004-2020 Will Robertson, LPPL "maintainer" +% Copyright 2004-2022 Will Robertson, LPPL "maintainer" % Copyright 2009-2015 Khaled Hosny % Copyright 2013 Philipp Gesang % Copyright 2013-2016 Joseph Wright diff --git a/Master/texmf-dist/source/latex/fontspec/fontspec-code-keyval.dtx b/Master/texmf-dist/source/latex/fontspec/fontspec-code-keyval.dtx index 87a93c176bd..bb18912f8a6 100644 --- a/Master/texmf-dist/source/latex/fontspec/fontspec-code-keyval.dtx +++ b/Master/texmf-dist/source/latex/fontspec/fontspec-code-keyval.dtx @@ -223,6 +223,13 @@ } % \end{macrocode} % +% \begin{macrocode} +\@@_keys_define_code:nnn {fontspec-preparse-external} {SwashFont} + { + \fontspec_complete_fontname:Nn \l_@@_fontname_sw_tl {#1} + } +% \end{macrocode} +% % % \paragraph{Bold (NFSS) Series} % By default, \pkg{fontspec} uses the default bold series, \cs{bfdefault}. @@ -282,6 +289,13 @@ } % \end{macrocode} % +% \begin{macrocode} +\@@_keys_define_code:nnn {fontspec-preparse-external} {BoldSwashFont} + { + \fontspec_complete_fontname:Nn \l_@@_fontname_bfsw_tl {#1} + } +% \end{macrocode} +% % \paragraph{Small caps} % Small caps isn't pre-parsed because it can vary with others above: % \begin{macrocode} @@ -309,7 +323,6 @@ \@@_keys_define_code:nnn {fontspec-preparse} {BoldFeatures} { \clist_put_right:Nn \l_@@_fontfeat_bf_clist {#1} - % \prop_put:NxV \l_@@_nfss_prop % {BoldFont-\g_@@_curr_series_tl} \l_@@_curr_bfname_tl } @@ -329,6 +342,14 @@ { \clist_put_right:Nn \l_@@_fontfeat_bfsl_clist {#1} } +\@@_keys_define_code:nnn {fontspec-preparse} {SwashFeatures} + { + \clist_put_right:Nn \l_@@_fontfeat_sw_clist {#1} + } +\@@_keys_define_code:nnn {fontspec-preparse} {BoldSwashFeatures} + { + \clist_put_right:Nn \l_@@_fontfeat_bfsw_clist {#1} + } % \end{macrocode} % Note that small caps features can vary by shape, so these in fact \emph{aren't} pre-parsed. % \begin{macrocode} @@ -893,7 +914,7 @@ % ------------------------------------------------ % The FONTSPEC package % ------------------------------------------------ -% Copyright 2004-2020 Will Robertson, LPPL "maintainer" +% Copyright 2004-2022 Will Robertson, LPPL "maintainer" % Copyright 2009-2015 Khaled Hosny % Copyright 2013 Philipp Gesang % Copyright 2013-2016 Joseph Wright diff --git a/Master/texmf-dist/source/latex/fontspec/fontspec-code-lang.dtx b/Master/texmf-dist/source/latex/fontspec/fontspec-code-lang.dtx index f9ea7f6cd70..22bde488348 100644 --- a/Master/texmf-dist/source/latex/fontspec/fontspec-code-lang.dtx +++ b/Master/texmf-dist/source/latex/fontspec/fontspec-code-lang.dtx @@ -407,7 +407,7 @@ % ------------------------------------------------ % The FONTSPEC package % ------------------------------------------------ -% Copyright 2004-2020 Will Robertson, LPPL "maintainer" +% Copyright 2004-2022 Will Robertson, LPPL "maintainer" % Copyright 2009-2015 Khaled Hosny % Copyright 2013 Philipp Gesang % Copyright 2013-2016 Joseph Wright diff --git a/Master/texmf-dist/source/latex/fontspec/fontspec-code-load.dtx b/Master/texmf-dist/source/latex/fontspec/fontspec-code-load.dtx index 7d0501b89e1..4f7ec3bd830 100644 --- a/Master/texmf-dist/source/latex/fontspec/fontspec-code-load.dtx +++ b/Master/texmf-dist/source/latex/fontspec/fontspec-code-load.dtx @@ -42,7 +42,7 @@ { The~ fontspec~ package~ requires~ either~ XeTeX~ or~ LuaTeX.\\\\ You~ must~ change~ your~ typesetting~ engine~ to,~ e.g.,~ - "xelatex"~ or~ "lualatex" instead~ of~ "latex"~ or~ "pdflatex". + "xelatex"~ or~ "lualatex"~ instead~ of~ "latex"~ or~ "pdflatex". } \msg_fatal:nn {fontspec} {cannot-use-pdftex} % \end{macrocode} @@ -60,7 +60,7 @@ % ------------------------------------------------ % The FONTSPEC package % ------------------------------------------------ -% Copyright 2004-2020 Will Robertson, LPPL "maintainer" +% Copyright 2004-2022 Will Robertson, LPPL "maintainer" % Copyright 2009-2015 Khaled Hosny % Copyright 2013 Philipp Gesang % Copyright 2013-2016 Joseph Wright diff --git a/Master/texmf-dist/source/latex/fontspec/fontspec-code-math.dtx b/Master/texmf-dist/source/latex/fontspec/fontspec-code-math.dtx index bbe70ef437c..73f29782af9 100644 --- a/Master/texmf-dist/source/latex/fontspec/fontspec-code-math.dtx +++ b/Master/texmf-dist/source/latex/fontspec/fontspec-code-math.dtx @@ -248,7 +248,7 @@ % ------------------------------------------------ % The FONTSPEC package % ------------------------------------------------ -% Copyright 2004-2020 Will Robertson, LPPL "maintainer" +% Copyright 2004-2022 Will Robertson, LPPL "maintainer" % Copyright 2009-2015 Khaled Hosny % Copyright 2013 Philipp Gesang % Copyright 2013-2016 Joseph Wright diff --git a/Master/texmf-dist/source/latex/fontspec/fontspec-code-msg.dtx b/Master/texmf-dist/source/latex/fontspec/fontspec-code-msg.dtx index f23ec2d85f7..1eafe2333d2 100644 --- a/Master/texmf-dist/source/latex/fontspec/fontspec-code-msg.dtx +++ b/Master/texmf-dist/source/latex/fontspec/fontspec-code-msg.dtx @@ -26,27 +26,27 @@ % \begin{macrocode} \cs_generate_variant:Nn \msg_new:nnn {nnx} \cs_generate_variant:Nn \msg_new:nnnn {nnxx} +\cs_new:Nn \@@_msg_new:nn + { \msg_new:nnx {fontspec} {#1} { \tl_trim_spaces:n {#2} } } \cs_new:Nn \@@_msg_new:nnn - { \msg_new:nnx {#1} {#2} { \tl_trim_spaces:n {#3} } } -\cs_new:Nn \@@_msg_new:nnnn - { \msg_new:nnxx {#1} {#2} { \tl_trim_spaces:n {#3} } { \tl_trim_spaces:n {#4} } } + { \msg_new:nnxx {fontspec} {#1} { \tl_trim_spaces:n {#2} } { \tl_trim_spaces:n {#3} } } \char_set_catcode_space:n {32} % \end{macrocode} % % \subsection{Errors} % % \begin{macrocode} -\@@_msg_new:nnn {fontspec} {only-inside-encdef} +\@@_msg_new:nn {only-inside-encdef} { - \exp_not:N#1can only be used in the second argument + \exp_not:N #1 can only be used in the second argument to \string\DeclareUnicodeEncoding. } -\@@_msg_new:nnn {fontspec} {no-size-info} +\@@_msg_new:nn {no-size-info} { Size information must be supplied.\\ For example, SizeFeatures={Size={8-12},...}. } -\@@_msg_new:nnnn {fontspec} {font-not-found} +\@@_msg_new:nnn {font-not-found} { The font "#1" cannot be found. } @@ -55,18 +55,18 @@ Check the spelling, where the font is installed etc. etc.\\\\ When in doubt, ask someone for help! } -\@@_msg_new:nnnn {fontspec} {rename-feature-not-exist} +\@@_msg_new:nnn {rename-feature-not-exist} { The feature #1 doesn't appear to be defined. } { It looks like you're trying to rename a feature that doesn't exist. } -\@@_msg_new:nnn {fontspec} {no-glyph} +\@@_msg_new:nn {no-glyph} { '#1' does not contain glyph #2. } -\@@_msg_new:nnnn {fontspec} {euler-too-late} +\@@_msg_new:nnn {euler-too-late} { The euler package must be loaded BEFORE fontspec. } @@ -76,7 +76,7 @@ loaded after euler. Type to proceed with incorrect \string\mathit, \string\mathbf, etc. } -\@@_msg_new:nnnn {fontspec} {no-xcolor} +\@@_msg_new:nnn {no-xcolor} { Cannot load named colours without the xcolor package. } @@ -84,7 +84,7 @@ Sorry, I can't do anything to help. Instead of loading the color package, use xcolor instead. } -\@@_msg_new:nnnn {fontspec} {unknown-color-model} +\@@_msg_new:nnn {unknown-color-model} { Error loading colour `#1'; unknown colour model. } @@ -92,7 +92,7 @@ Sorry, I can't do anything to help. Please report this error to my developer with a minimal example that causes the problem. } -\@@_msg_new:nnnn {fontspec} {not-in-addfontfeatures} +\@@_msg_new:nnn {not-in-addfontfeatures} { The "#1" font feature cannot be used in \string\addfontfeatures. } @@ -107,17 +107,17 @@ % \subsection{Warnings} % % \begin{macrocode} -\@@_msg_new:nnn {fontspec} {tu-clash} +\@@_msg_new:nn {tu-clash} { I have found the tuenc.def encoding definition file but the TU encoding is not defined by the LaTeX2e kernel; attempting to correct but you really should update to the latest version of LaTeX2e. } -\@@_msg_new:nnn {fontspec} {tu-missing} +\@@_msg_new:nn {tu-missing} { The TU encoding seems to be missing; please update to the latest version of LaTeX2e. } -\@@_msg_new:nnn {fontspec} {addfontfeatures-ignored} +\@@_msg_new:nn {addfontfeatures-ignored} { \string\addfontfeature (s) ignored \msg_line_context:; it cannot be used with a font that wasn't selected by a fontspec command.\\ @@ -127,77 +127,77 @@ { The requested feature is "#1". } { The requested features are "#1". } } -\@@_msg_new:nnn {fontspec} {feature-option-overwrite} +\@@_msg_new:nn {feature-option-overwrite} { Option '#2' of font feature '#1' overwritten. } -\@@_msg_new:nnn {fontspec} {ot-tag-too-long} +\@@_msg_new:nn {ot-tag-too-long} { OpenType tag '#1' is too long; script, language, and feature tags must be four characters or fewer. } -\@@_msg_new:nnn {fontspec} {aat-feature-not-exist} +\@@_msg_new:nn {aat-feature-not-exist} { '\l_keys_key_tl=\l_keys_value_tl' feature not supported for AAT font '\l_fontspec_fontname_tl'. } -\@@_msg_new:nnn {fontspec} {aat-feature-not-exist-in-font} +\@@_msg_new:nn {aat-feature-not-exist-in-font} { AAT feature '\l_keys_key_tl=\l_keys_value_tl' (#1) not available in font '\l_fontspec_fontname_tl'. } -\@@_msg_new:nnn {fontspec} {icu-feature-not-exist} +\@@_msg_new:nn {icu-feature-not-exist} { '\l_keys_key_tl=\l_keys_value_tl' feature not supported for OpenType font '\l_fontspec_fontname_tl' } -\@@_msg_new:nnn {fontspec} {icu-feature-not-exist-in-font} +\@@_msg_new:nn {icu-feature-not-exist-in-font} { OpenType feature '\l_keys_key_tl=\l_keys_value_tl' (#1) not available for font '\l_fontspec_fontname_tl' with script '\l_@@_script_name_tl' and language '\l_@@_lang_name_tl'. } -\@@_msg_new:nnn {fontspec} {no-opticals} +\@@_msg_new:nn {no-opticals} { '#1' doesn't appear to have an Optical Size axis. } -\@@_msg_new:nnn {fontspec} {language-not-exist} +\@@_msg_new:nn {language-not-exist} { Language '#1' not available for font '\l_fontspec_fontname_tl' with script '\l_@@_script_name_tl'. } -\@@_msg_new:nnn {fontspec} {only-xetex-feature} +\@@_msg_new:nn {only-xetex-feature} { Ignored XeTeX-only feature: '#1'. } -\@@_msg_new:nnn {fontspec} {only-luatex-feature} +\@@_msg_new:nn {only-luatex-feature} { Ignored LuaTeX-only feature: '#1'. } -\@@_msg_new:nnn {fontspec} {unknown-renderer} +\@@_msg_new:nn {unknown-renderer} { Renderer '#1' unknown. Assuming Harfbuzz with 'shaper=#1'. Please raise a fontspec issue to add this shaper to the interface. } -\@@_msg_new:nnn {fontspec} {no-mapping} +\@@_msg_new:nn {no-mapping} { Input mapping not supported in LuaTeX. } -\@@_msg_new:nnn {fontspec} {no-mapping-ligtex} +\@@_msg_new:nn {no-mapping-ligtex} { Input mapping not supported in LuaTeX.\\ Use "Ligatures=TeX" instead of "Mapping=tex-text". } -\@@_msg_new:nnn {fontspec} {cm-default-obsolete} +\@@_msg_new:nn {cm-default-obsolete} { The "cm-default" package option is obsolete. } -\@@_msg_new:nnn {fontspec} {font-index-needs-ttc} +\@@_msg_new:nn {font-index-needs-ttc} { The "FontIndex" feature is only supported by TTC (TrueType Collection) fonts.\\ Feature ignored. } -\@@_msg_new:nnn {fontspec} {feat-cannot-remove} +\@@_msg_new:nn {feat-cannot-remove} { The "#1" feature cannot be deactivated. Request ignored. } @@ -206,7 +206,7 @@ % \subsection{Info messages} % % \begin{macrocode} -\@@_msg_new:nnn {fontspec} {defining-font} +\@@_msg_new:nn {defining-font} { Font family '\g_@@_nfss_family_tl' created for font '#2' with options [\l_@@_all_features_clist].\\ @@ -214,33 +214,33 @@ This font family consists of the following NFSS series/shapes:\\ \g_@@_defined_shapes_tl } -\@@_msg_new:nnn {fontspec} {no-font-shape} +\@@_msg_new:nn {no-font-shape} { Could not resolve font "#1" (it probably doesn't exist). } -\@@_msg_new:nnn {fontspec} {set-scale} +\@@_msg_new:nn {set-scale} { \l_fontspec_fontname_tl\space scale = \l_@@_scale_tl. } -\@@_msg_new:nnn {fontspec} {setup-math} +\@@_msg_new:nn {setup-math} { Adjusting the maths setup (use [no-math] to avoid this). } -\@@_msg_new:nnn {fontspec} {no-script} +\@@_msg_new:nn {no-script} { Font "#1" does not contain requested Script "#2". } -\@@_msg_new:nnn {fontspec} {opa-twice} +\@@_msg_new:nn {opa-twice} { Opacity set twice, in both Colour and Opacity.\\ Using specification "Opacity=#1". } -\@@_msg_new:nnn {fontspec} {opa-twice-col} +\@@_msg_new:nn {opa-twice-col} { Opacity set twice, in both Opacity and Colour.\\ Using an opacity specification in hex of "#1/FF". } -\@@_msg_new:nnn {fontspec} {bad-colour} +\@@_msg_new:nn {bad-colour} { Bad colour declaration "#1". Colour must be one of:\\ @@ -268,7 +268,7 @@ % ------------------------------------------------ % The FONTSPEC package % ------------------------------------------------ -% Copyright 2004-2020 Will Robertson, LPPL "maintainer" +% Copyright 2004-2022 Will Robertson, LPPL "maintainer" % Copyright 2009-2015 Khaled Hosny % Copyright 2013 Philipp Gesang % Copyright 2013-2016 Joseph Wright diff --git a/Master/texmf-dist/source/latex/fontspec/fontspec-code-opening.dtx b/Master/texmf-dist/source/latex/fontspec/fontspec-code-opening.dtx index b8fb02e9e8e..60253a1ea89 100644 --- a/Master/texmf-dist/source/latex/fontspec/fontspec-code-opening.dtx +++ b/Master/texmf-dist/source/latex/fontspec/fontspec-code-opening.dtx @@ -201,7 +201,7 @@ % ------------------------------------------------ % The FONTSPEC package % ------------------------------------------------ -% Copyright 2004-2020 Will Robertson, LPPL "maintainer" +% Copyright 2004-2022 Will Robertson, LPPL "maintainer" % Copyright 2009-2015 Khaled Hosny % Copyright 2013 Philipp Gesang % Copyright 2013-2016 Joseph Wright diff --git a/Master/texmf-dist/source/latex/fontspec/fontspec-code-opentype.dtx b/Master/texmf-dist/source/latex/fontspec/fontspec-code-opentype.dtx index be0b8be7686..94be4acfcac 100644 --- a/Master/texmf-dist/source/latex/fontspec/fontspec-code-opentype.dtx +++ b/Master/texmf-dist/source/latex/fontspec/fontspec-code-opentype.dtx @@ -466,7 +466,7 @@ % ------------------------------------------------ % The FONTSPEC package % ------------------------------------------------ -% Copyright 2004-2020 Will Robertson, LPPL "maintainer" +% Copyright 2004-2022 Will Robertson, LPPL "maintainer" % Copyright 2009-2015 Khaled Hosny % Copyright 2013 Philipp Gesang % Copyright 2013-2016 Joseph Wright diff --git a/Master/texmf-dist/source/latex/fontspec/fontspec-code-scripts.dtx b/Master/texmf-dist/source/latex/fontspec/fontspec-code-scripts.dtx index 32e861f5660..7c2f79117cb 100644 --- a/Master/texmf-dist/source/latex/fontspec/fontspec-code-scripts.dtx +++ b/Master/texmf-dist/source/latex/fontspec/fontspec-code-scripts.dtx @@ -33,18 +33,22 @@ \newfontscript{Chakma}{cakm} \newfontscript{Cham}{cham} \newfontscript{Cherokee}{cher} +\newfontscript{Chorasmian}{chrs} \newfontscript{CJK~Ideographic}{hani} \newfontscript{Coptic}{copt} \newfontscript{Cypriot~Syllabary}{cprt} +\newfontscript{Cypro~Minoan}{cpmn} \newfontscript{Cyrillic}{cyrl} \newfontscript{Default}{DFLT} \newfontscript{CustomDefault}{latn,DFLT} \newfontscript{Deseret}{dsrt} \newfontscript{Devanagari}{dev2,deva} +\newfontscript{Dives~Akuru}{diak} \newfontscript{Dogra}{dogr} \newfontscript{Duployan}{dupl} \newfontscript{Egyptian~Hieroglyphs}{egyp} \newfontscript{Elbasan}{elba} +\newfontscript{Elymaic}{elym} \newfontscript{Ethiopic}{ethi} \newfontscript{Georgian}{geor} \newfontscript{Glagolitic}{glag} @@ -69,6 +73,7 @@ \newfontscript{Kannada}{knd2,knda} \newfontscript{Kayah~Li}{kali} \newfontscript{Kharosthi}{khar} +\newfontscript{Khitan~Small~Script}{kits} \newfontscript{Khmer}{khmr} \newfontscript{Khojki}{khoj} \newfontscript{Khudawadi}{sind} @@ -103,8 +108,10 @@ \newfontscript{Myanmar}{mym2,mymr} \newfontscript{N'Ko}{nko~} \newfontscript{Nabataean}{nbat} +\newfontscript{Nandinagari}{nand} \newfontscript{Newa}{newa} \newfontscript{Nushu}{nshu} +\newfontscript{Nyiakeng~Puachue~Hmong}{hmnp} \newfontscript{Odia}{ory2,orya} \newfontscript{Ogham}{ogam} \newfontscript{Ol~Chiki}{olck} @@ -116,6 +123,7 @@ \newfontscript{Old~Sogdian}{sogo} \newfontscript{Old~South~Arabian}{sarb} \newfontscript{Old~Turkic}{orkh} +\newfontscript{Old~Uyghur}{ougr} \newfontscript{Osage}{osge} \newfontscript{Osmanya}{osma} \newfontscript{Pahawh~Hmong}{hmng} @@ -147,6 +155,7 @@ \newfontscript{Tai~Viet}{tavt} \newfontscript{Takri}{takr} \newfontscript{Tamil}{tml2,taml} +\newfontscript{Tangsa}{tnsa} \newfontscript{Tangut}{tang} \newfontscript{Telugu}{tel2,telu} \newfontscript{Thaana}{thaa} @@ -154,9 +163,13 @@ \newfontscript{Tibetan}{tibt} \newfontscript{Tifinagh}{tfng} \newfontscript{Tirhuta}{tirh} +\newfontscript{Toto}{toto} \newfontscript{Ugaritic~Cuneiform}{ugar} \newfontscript{Vai}{vai~} +\newfontscript{Vithkuqi}{vith} +\newfontscript{Wancho}{wcho} \newfontscript{Warang~Citi}{wara} +\newfontscript{Yezidi}{yezi} \newfontscript{Yi}{yi~~} \newfontscript{Zanabazar~Square}{zanb} % \end{macrocode} @@ -182,7 +195,7 @@ % ------------------------------------------------ % The FONTSPEC package % ------------------------------------------------ -% Copyright 2004-2020 Will Robertson, LPPL "maintainer" +% Copyright 2004-2022 Will Robertson, LPPL "maintainer" % Copyright 2009-2015 Khaled Hosny % Copyright 2013 Philipp Gesang % Copyright 2013-2016 Joseph Wright diff --git a/Master/texmf-dist/source/latex/fontspec/fontspec-code-user.dtx b/Master/texmf-dist/source/latex/fontspec/fontspec-code-user.dtx index a4a754d598c..eeb704df580 100644 --- a/Master/texmf-dist/source/latex/fontspec/fontspec-code-user.dtx +++ b/Master/texmf-dist/source/latex/fontspec/fontspec-code-user.dtx @@ -540,7 +540,7 @@ % ------------------------------------------------ % The FONTSPEC package % ------------------------------------------------ -% Copyright 2004-2020 Will Robertson, LPPL "maintainer" +% Copyright 2004-2022 Will Robertson, LPPL "maintainer" % Copyright 2009-2015 Khaled Hosny % Copyright 2013 Philipp Gesang % Copyright 2013-2016 Joseph Wright diff --git a/Master/texmf-dist/source/latex/fontspec/fontspec-code-vars.dtx b/Master/texmf-dist/source/latex/fontspec/fontspec-code-vars.dtx index 6350d24cc51..d24776218fd 100644 --- a/Master/texmf-dist/source/latex/fontspec/fontspec-code-vars.dtx +++ b/Master/texmf-dist/source/latex/fontspec/fontspec-code-vars.dtx @@ -135,6 +135,8 @@ \clist_new:N \l_@@_fontfeat_bfit_clist \clist_new:N \l_@@_fontfeat_sl_clist \clist_new:N \l_@@_fontfeat_bfsl_clist +\clist_new:N \l_@@_fontfeat_sw_clist +\clist_new:N \l_@@_fontfeat_bfsw_clist \clist_new:N \l_@@_fontfeat_sc_clist % \end{macrocode} % @@ -255,6 +257,8 @@ \tl_new:N \l_@@_fontname_bfit_tl \tl_new:N \l_@@_fontname_sl_tl \tl_new:N \l_@@_fontname_bfsl_tl +\tl_new:N \l_@@_fontname_sw_tl +\tl_new:N \l_@@_fontname_bfsw_tl \tl_new:N \l_@@_fontname_sc_tl % \end{macrocode} % @@ -324,7 +328,7 @@ % ------------------------------------------------ % The FONTSPEC package % ------------------------------------------------ -% Copyright 2004-2020 Will Robertson, LPPL "maintainer" +% Copyright 2004-2022 Will Robertson, LPPL "maintainer" % Copyright 2009-2015 Khaled Hosny % Copyright 2013 Philipp Gesang % Copyright 2013-2016 Joseph Wright diff --git a/Master/texmf-dist/source/latex/fontspec/fontspec-code-xfss.dtx b/Master/texmf-dist/source/latex/fontspec/fontspec-code-xfss.dtx index fef300a078b..ecbad84167d 100644 --- a/Master/texmf-dist/source/latex/fontspec/fontspec-code-xfss.dtx +++ b/Master/texmf-dist/source/latex/fontspec/fontspec-code-xfss.dtx @@ -12,6 +12,7 @@ % \begin{macrocode} \providecommand*\scitdefault{\scdefault\itdefault} \providecommand*\scsldefault{\scdefault\sldefault} +\providecommand*\scswdefault{\scdefault\swdefault} % \end{macrocode} % \LaTeX's `shape' font axis needs to be overloaded to support italic small caps and slanted small caps. % These are the combinations to support: @@ -19,10 +20,13 @@ \cs_new:Nn \@@_shape_merge:nn { c_@@_shape_#1_#2_tl } \cs_new:Nn \@@_merge_default_shapes: { + \tl_const:cn { \@@_shape_merge:nn \shapedefault\scdefault } {\scdefault} \tl_const:cn { \@@_shape_merge:nn \itdefault \scdefault } {\scitdefault} \tl_const:cn { \@@_shape_merge:nn \sldefault \scdefault } {\scsldefault} + \tl_const:cn { \@@_shape_merge:nn \swdefault \scdefault } {\scswdefault} \tl_const:cn { \@@_shape_merge:nn \scdefault \itdefault } {\scitdefault} \tl_const:cn { \@@_shape_merge:nn \scdefault \sldefault } {\scsldefault} + \tl_const:cn { \@@_shape_merge:nn \scdefault \swdefault } {\scswdefault} \tl_const:cn { \@@_shape_merge:nn \scsldefault \itdefault } {\scitdefault} \tl_const:cn { \@@_shape_merge:nn \scitdefault \sldefault } {\scsldefault} \tl_const:cn { \@@_shape_merge:nn \scitdefault \shapedefault } {\scdefault} @@ -51,159 +55,9 @@ % % % \begin{macrocode} -\cs_if_exist:NTF \DeclareFontSeriesChangeRule -{ - \cs_set_eq:NN \emfontdeclare \DeclareEmphSequence -} -{ +\cs_set_eq:NN \emfontdeclare \DeclareEmphSequence % \end{macrocode} % -% \begin{macro}{\sishape} -% \begin{macro}{\textsi} -% These commands for actually selecting italic small caps have been defined for many years; I'm inclined to drop them. -% They're probably used very infrequently; I personally prefer just writing -% |\textit{\textsc{...}}| instead. -% -% \begin{macrocode} -\DeclareRobustCommand{\sishape} - { - \not@math@alphabet\sishape\relax - \fontshape{\scitdefault}\selectfont - } -\DeclareTextFontCommand{\textsi}{\sishape} -% \end{macrocode} -% \end{macro} \end{macro} -% -% -% \begin{macro}{\@@_merge_shape:n} -% These macros enable the overload on the |\..shape| commands. -% First, a shape `new+current' (prefix) or `current+new' (suffix) is tried. -% If not found, fall back on the `new' shape. -% \begin{macrocode} -\cs_new:Nn \@@_merge_shape:n - { - \@@_if_merge_shape:nTF {#1} - { \fontshape { \tl_use:c { \@@_shape_merge:nn {\f@shape} {#1} } } \selectfont } - { \fontshape {#1} \selectfont } - } -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\itshape} \begin{macro}{\scshape} \begin{macro}{\upshape} \begin{macro}{\slshape} -% The original |\..shape| commands are redefined to use the merge shape macro. -% \begin{macrocode} -\DeclareRobustCommand \itshape - { - \not@math@alphabet\itshape\mathit - \@@_merge_shape:n\itdefault - } -\DeclareRobustCommand \slshape - { - \not@math@alphabet\slshape\relax - \@@_merge_shape:n\sldefault - } -\DeclareRobustCommand \scshape - { - \not@math@alphabet\scshape\relax - \@@_merge_shape:n\scdefault - } -\DeclareRobustCommand \upshape - { - \not@math@alphabet\upshape\relax - \@@_merge_shape:n\updefault - } -% \end{macrocode} -% \end{macro} \end{macro} \end{macro} \end{macro} -% -% -% -% \subsection{Emphasis} -% -% \begin{macro}{\emfontdeclare} -% \begin{macrocode} -\cs_set_protected:Npn \emfontdeclare #1 - { - \prop_gclear:N \g_@@_em_prop - \int_zero:N \l_@@_emdef_int - \bool_gset_true:N \g_@@_em_normalise_slant_bool - - \tl_if_in:nnT {#1} {\slshape} - { - \tl_if_in:nnT {#1} {\itshape} - { - \bool_gset_false:N \g_@@_em_normalise_slant_bool - } - } - - \group_begin: - \normalfont - \clist_map_inline:nn {\emreset,#1} - { - ##1 - \prop_gput_if_new:NxV \g_@@_em_prop { \f@shape } { \l_@@_emdef_int } - \prop_gput:Nxn \g_@@_em_prop { switch-\int_use:N \l_@@_emdef_int } { ##1 } - \int_incr:N \l_@@_emdef_int - } - \group_end: - } -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\em} -% \begin{macrocode} -\DeclareRobustCommand \em - { - \@nomath\em - \tl_set:Nx \l_@@_emshape_query_tl { \f@shape } - - \bool_if:NT \g_@@_em_normalise_slant_bool - { - \tl_replace_all:Nnn \l_@@_emshape_query_tl {/sl} {/it} - } - -% \typeout{Emph~ level:~\int_use:N \l_@@_em_int} - \prop_get:NxNT \g_@@_em_prop { \l_@@_emshape_query_tl } \l_@@_em_tmp_tl - { - \int_set:Nn \l_@@_em_int { \l_@@_em_tmp_tl } -% \typeout{Shape~ (\l_@@_emshape_query_tl)~ detected;~ new~ level:~\int_use:N \l_@@_em_int} - } - - \int_incr:N \l_@@_em_int - - \prop_get:NxNTF \g_@@_em_prop { switch-\int_use:N \l_@@_em_int } \l_@@_em_switch_tl - { \l_@@_em_switch_tl } - { - \int_zero:N \l_@@_em_int - \emreset - } - - } -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\emph} -% \begin{macro}{\emshape} -% \begin{macro}{\eminnershape} -% \begin{macro}{\emreset} -% \begin{macrocode} -\DeclareTextFontCommand{\emph}{\em} -\cs_set:Npn \emreset { \upshape } -\cs_set:Npn \emshape { \itshape } -\cs_set:Npn \eminnershape { \upshape } -% \end{macrocode} -% \end{macro} -% \end{macro} -% \end{macro} -% \end{macro} -% -% \begin{macrocode} -\emfontdeclare{ \emshape, \eminnershape } -\cs_new:Nn \fontspec_set_em_level:n { \int_set:Nn \l_@@_em_int {#1} } -% \end{macrocode} -% -% \begin{macrocode} -} -% \end{macrocode} % % % @@ -271,7 +125,6 @@ \cs_set:Npn \reset@font { \normalfont - \int_zero:N \l_@@_em_int \int_zero:N \l_@@_strong_int } % \end{macrocode} @@ -298,7 +151,7 @@ % ------------------------------------------------ % The FONTSPEC package % ------------------------------------------------ -% Copyright 2004-2020 Will Robertson, LPPL "maintainer" +% Copyright 2004-2022 Will Robertson, LPPL "maintainer" % Copyright 2009-2015 Khaled Hosny % Copyright 2013 Philipp Gesang % Copyright 2013-2016 Joseph Wright diff --git a/Master/texmf-dist/source/latex/fontspec/fontspec-code.ltx b/Master/texmf-dist/source/latex/fontspec/fontspec-code.ltx index 1dcdea07cbb..5ee01ccc80c 100644 --- a/Master/texmf-dist/source/latex/fontspec/fontspec-code.ltx +++ b/Master/texmf-dist/source/latex/fontspec/fontspec-code.ltx @@ -30,7 +30,7 @@ % ------------------------------------------------ % The FONTSPEC package % ------------------------------------------------ -% Copyright 2004-2020 Will Robertson, LPPL "maintainer" +% Copyright 2004-2022 Will Robertson, LPPL "maintainer" % Copyright 2009-2015 Khaled Hosny % Copyright 2013 Philipp Gesang % Copyright 2013-2016 Joseph Wright diff --git a/Master/texmf-dist/source/latex/fontspec/fontspec-doc-api.tex b/Master/texmf-dist/source/latex/fontspec/fontspec-doc-api.tex index 3ef857e9143..42970e3f37b 100644 --- a/Master/texmf-dist/source/latex/fontspec/fontspec-doc-api.tex +++ b/Master/texmf-dist/source/latex/fontspec/fontspec-doc-api.tex @@ -339,7 +339,7 @@ OpenType language tag |#1|. % ------------------------------------------------ % The FONTSPEC package % ------------------------------------------------ -% Copyright 2004-2020 Will Robertson, LPPL "maintainer" +% Copyright 2004-2022 Will Robertson, LPPL "maintainer" % Copyright 2009-2015 Khaled Hosny % Copyright 2013 Philipp Gesang % Copyright 2013-2016 Joseph Wright diff --git a/Master/texmf-dist/source/latex/fontspec/fontspec-doc-enc.tex b/Master/texmf-dist/source/latex/fontspec/fontspec-doc-enc.tex index 2a706a6252c..8ab667b288c 100644 --- a/Master/texmf-dist/source/latex/fontspec/fontspec-doc-enc.tex +++ b/Master/texmf-dist/source/latex/fontspec/fontspec-doc-enc.tex @@ -204,7 +204,7 @@ the process of defining Unicode font range encodings: % ------------------------------------------------ % The FONTSPEC package % ------------------------------------------------ -% Copyright 2004-2020 Will Robertson, LPPL "maintainer" +% Copyright 2004-2022 Will Robertson, LPPL "maintainer" % Copyright 2009-2015 Khaled Hosny % Copyright 2013 Philipp Gesang % Copyright 2013-2016 Joseph Wright diff --git a/Master/texmf-dist/source/latex/fontspec/fontspec-doc-featset.tex b/Master/texmf-dist/source/latex/fontspec/fontspec-doc-featset.tex index 90b1019561e..4bb75d14b5e 100644 --- a/Master/texmf-dist/source/latex/fontspec/fontspec-doc-featset.tex +++ b/Master/texmf-dist/source/latex/fontspec/fontspec-doc-featset.tex @@ -150,6 +150,8 @@ features requested. \feat{BoldItalicFeatures}\texttt=\marg{features} \\ \feat{SlantedFeatures}\texttt=\marg{features} \\ \feat{BoldSlantedFeatures}\texttt=\marg{features} \\ + \feat{SwashFeatures}\texttt=\marg{features} \\ + \feat{BoldSwashFeatures}\texttt=\marg{features} \\ \feat{SmallCapsFeatures}\texttt=\marg{features} \\ \feat{UprightFeatures}\texttt=\marg{features} } @@ -160,8 +162,7 @@ feature options that are completely unavailable in the upright shapes. The font features defined at the top level of the optional \cmd\fontspec\ argument are applied to \emph{all} shapes of the family. -Using \feat{Upright-}, \feat{SmallCaps-}, \feat{Bold-}, -\feat{Italic-}, and \feat{BoldItalicFeatures}, +Using the \feat{xxFeatures} options shown above, separate font features may be defined to their respective shapes \emph{in addition} to, and with precedence over, the `global' font features. See \exref{itfeat}. @@ -178,7 +179,7 @@ Note that because most fonts include their small caps glyphs within the main font, features specified with \feat{SmallCapsFeatures} are applied \emph{in addition} to any other shape-specific features as defined above, and hence \feat{SmallCapsFeatures} can be nested within \feat{ItalicFeatures} and friends. Every combination -of upright, italic, bold and small caps can thus be assigned individual +of upright, italic, bold, (etc.), and small caps can thus be assigned individual features, as shown in the somewhat ludicrous \exref{scfeat}. \begin{Xexample}{scfeat}{An example of setting the \feat{SmallCapsFeatures} @@ -326,7 +327,7 @@ Features introduced in this section may be used with any font. the text. You should think of this as the literal glyphs of the font being coloured in a certain way. Notably, this mechanism is different to that of the \pkg{color}/\pkg{xcolor}/\pkg{hyperref}/etc.\ packages, and in fact using \pkg{fontspec} commands to set colour will prevent your text from changing colour using those packages at all! -For example, if you set the colour in a \verb|\setmainfont| command, \verb|\color{...}| and related commands, including hyperlink colouring, will no longer have any effect on text in this font.) +(For example, if you set the colour in a \verb|\setmainfont| command, \verb|\color{...}| and related commands, including hyperlink colouring, will no longer have any effect on text in this font.) Therefore, \pkg{fontspec}'s colour commands are best used to set explicit colours in specific situations, and the \pkg{xcolor} package is recommended for more general colour functionality. The colour is defined as a triplet of two-digit Hex RGB @@ -417,10 +418,9 @@ automatically. \subsection{Interword space} -While the space between words can be varied on an individual -basis with the \TeX\ primitive \cmd\spaceskip\ command, it is -more convenient to specify this information when the font is -first defined. +While the space between words can be varied with the \TeX\ primitive +\cmd\spaceskip\ command, \pkg{fontspec} also supports changing the +interword spacing when a given font is loaded. The space in between words in a paragraph will be chosen automatically, and generally will not need to be adjusted. For those @@ -454,10 +454,7 @@ use this feature in \cs{addfontfeatures}. \subsection{Post-punctuation space} -If \cmd\frenchspacing\ is \emph{not} in effect, \TeX\ will allow extra -space after some punctuation in its goal of justifying the lines of text. -Generally, this is considered old-fashioned, but occasionally in small amounts the -effect can be justified, pardon the pun. +If \cmd\frenchspacing\ is \emph{not} in effect (which is the default), \TeX\ will allow extra space after some punctuation in its goal of justifying the lines of text. The \feat{PunctuationSpace} feature takes a scaling factor by which to adjust the nominal value chosen for the font; this is demonstrated in @@ -569,14 +566,14 @@ of font size. For example, something like: In rare situations users may want to mechanically distort the shapes of the glyphs in the current font such as shown in \exref{fake}. Please don't overuse these features; they are \emph{not} a good alternative to having the real shapes. \begin{Xexample}{fake}{Articifial font transformations.} - \fontspec{Quattrocento.otf} \emph{ABCxyz} \quad - \fontspec{Quattrocento.otf}[FakeSlant=0.2] ABCxyz + \fontspec{Quattrocento-Regular.otf} \emph{ABCxyz} \quad + \fontspec{Quattrocento-Regular.otf}[FakeSlant=0.2] ABCxyz - \fontspec{Quattrocento.otf} ABCxyz \quad - \fontspec{Quattrocento.otf}[FakeStretch=1.2] ABCxyz + \fontspec{Quattrocento-Regular.otf} ABCxyz \quad + \fontspec{Quattrocento-Regular.otf}[FakeStretch=1.2] ABCxyz - \fontspec{Quattrocento.otf} \textbf{ABCxyz} \quad - \fontspec{Quattrocento.otf}[FakeBold=1.5] ABCxyz + \fontspec{Quattrocento-Regular.otf} \textbf{ABCxyz} \quad + \fontspec{Quattrocento-Regular.otf}[FakeBold=1.5] ABCxyz \end{Xexample} If values are omitted, their defaults are as shown above. @@ -617,7 +614,7 @@ Also see the OpenType \opt{Uppercase} option of the \feat{Letters} feature (\vre % ------------------------------------------------ % The FONTSPEC package % ------------------------------------------------ -% Copyright 2004-2020 Will Robertson, LPPL "maintainer" +% Copyright 2004-2022 Will Robertson, LPPL "maintainer" % Copyright 2009-2015 Khaled Hosny % Copyright 2013 Philipp Gesang % Copyright 2013-2016 Joseph Wright diff --git a/Master/texmf-dist/source/latex/fontspec/fontspec-doc-fontsel.tex b/Master/texmf-dist/source/latex/fontspec/fontspec-doc-fontsel.tex index 85ad1ea75d0..d6ac139ef61 100644 --- a/Master/texmf-dist/source/latex/fontspec/fontspec-doc-fontsel.tex +++ b/Master/texmf-dist/source/latex/fontspec/fontspec-doc-fontsel.tex @@ -356,6 +356,8 @@ in \exref{nfface}, which is repeated in \vref{sec:contextuals}. \feat{~BoldItalicFont} = \meta{font name} \\ \feat{SlantedFont} = \meta{font name} \\ \feat{BoldSlantedFont} = \meta{font name} \\ + \feat{SwashFont} = \meta{font name} \\ + \feat{BoldSwashFont} = \meta{font name} \\ \feat{SmallCapsFont} = \meta{font name} \\ \feat{UprightFont} = \meta{font name} } @@ -385,23 +387,12 @@ feature is provided. -\subsubsection{Small caps and slanted font shapes} - -When a font family has both slanted \emph{and} italic shapes, these may be specified separately using the analogous features \feat{SlantedFont} and \feat{BoldSlantedFont}. -Without these, however, the \LaTeX\ font switches for slanted (\cs{textsl}, \cs{slshape}) will default to the italic shape. +\subsubsection{Small caps shapes} For modern OpenType fonts, small caps glyphs are included within a fontface and \pkg{fontspec} will automatically detect them for use with the \cs{textsc} and \cs{scshape} commands. Pre-OpenType, it was common for font families to be distributed with small caps glyphs in separate fonts, due to the limitations on the number of glyphs allowed in the PostScript Type~1 format. -Such fonts may be used by declaring the \feat{SmallCapsFont} of the family you are specifying: -\begin{Verbatim} - \setmainfont{Minion MM Roman}[ - SmallCapsFont={Minion MM Small Caps & Oldstyle Figures} - ] - Roman 123 \\ \textsc{Small caps 456} -\end{Verbatim} -In fact, this example is overly simplistic since it does not cover the other shapes in a font family. -You should specify the small caps font for each individual bold and italic shape as in +Such fonts may be used by declaring the \feat{SmallCapsFont} for each font of the family you are specifying: \begin{Verbatim} \setmainfont{ }[ UprightFeatures = { SmallCapsFont={ } } , @@ -426,6 +417,39 @@ should write instead, if necessary, ] \end{Verbatim} + +\subsubsection{Slanted font shapes} + +When a font family has both slanted \emph{and} italic shapes, these may be specified separately using the analogous features \feat{SlantedFont} and \feat{BoldSlantedFont}. +Without these, however, the \LaTeX\ font switches for slanted (\cs{textsl}, \cs{slshape}) will default to the italic shape. + + +\subsubsection{Swash font shapes} + +Swash font shapes in a family is supported by \LaTeX's commands \cs{textsw} and \cs{swshape}. These commands assume that swash shapes are in a sense `parallel' to italic shapes --- for instance, writing both \cs{swshape} and \cs{itshape} would not result in an italic swash shape (you would get whichever was declared last). +The \pkg{fontspec} package adopts this approach, while recognising that OpenType fonts in theory could have any crazy combination of shapes such as `italic swash small caps'. +Attempting to support arbitrarily complex situations makes setup (and the code) more difficult with let's say infrequent benefit --- \pkg{fontspec}'s alternate feature selection mechanisms (such as verb|\addfontfeature{Style=Swash}|) can be used in such situations. + +Therefore, setup is quite simple: +\begin{Verbatim} + \setmainfont{...}[ + SwashFont = {...} , + BoldSwashFont = {...} , + ] +\end{Verbatim} +No assumptions are made about the |+swsh| OpenType feature availability, and if desired the `Swash' feature needs to be explicitly requested as in: +\begin{Verbatim} + \setmainfont{...}[ + SwashFont = {...} , + SwashFeatures = {Style=Swash} , + ... + ] +\end{Verbatim} +This may become more automatic in the future. + + + + \subsection{Specifically choosing the \NFSS\ family} In \LaTeX's \NFSS, font families are defined with names such as `\texttt{ppl}' (Palatino), `\texttt{lmr}' (Latin Modern Roman), and so on, which are selected with the \cs{fontfamily} command: @@ -617,7 +641,7 @@ if it were a `naked' control sequence; \eg, `|M. \fontspec{...} N|' and % ------------------------------------------------ % The FONTSPEC package % ------------------------------------------------ -% Copyright 2004-2020 Will Robertson, LPPL "maintainer" +% Copyright 2004-2022 Will Robertson, LPPL "maintainer" % Copyright 2009-2015 Khaled Hosny % Copyright 2013 Philipp Gesang % Copyright 2013-2016 Joseph Wright diff --git a/Master/texmf-dist/source/latex/fontspec/fontspec-doc-intro.tex b/Master/texmf-dist/source/latex/fontspec/fontspec-doc-intro.tex index 7f32adb0099..4e913b61073 100644 --- a/Master/texmf-dist/source/latex/fontspec/fontspec-doc-intro.tex +++ b/Master/texmf-dist/source/latex/fontspec/fontspec-doc-intro.tex @@ -184,7 +184,7 @@ An example for setting up a font family for use with \cs{strong} is discussed in % ------------------------------------------------ % The FONTSPEC package % ------------------------------------------------ -% Copyright 2004-2020 Will Robertson, LPPL "maintainer" +% Copyright 2004-2022 Will Robertson, LPPL "maintainer" % Copyright 2009-2015 Khaled Hosny % Copyright 2013 Philipp Gesang % Copyright 2013-2016 Joseph Wright diff --git a/Master/texmf-dist/source/latex/fontspec/fontspec-doc-luatex.tex b/Master/texmf-dist/source/latex/fontspec/fontspec-doc-luatex.tex index 7365160b498..e0ed5881d69 100644 --- a/Master/texmf-dist/source/latex/fontspec/fontspec-doc-luatex.tex +++ b/Master/texmf-dist/source/latex/fontspec/fontspec-doc-luatex.tex @@ -26,7 +26,7 @@ From 2019 the possibility of using the Harfbuzz text shaping engine within \LuaT been developed by Khaled Hosny. When running a suitable \LuaTeX\ engine with Harfbuzz support, \pkg{fontspec} provides the following options: \begin{itemize} -\item \feat{Renderer} = \opt{Harfbuzz} : use the Harfbuzz engine without an explicit `shaper'. +\item \feat{Renderer} = \opt{HarfBuzz} : use the Harfbuzz engine without an explicit `shaper' (the old \opt{Harfbuzz} name is kept for compatibility). \item \feat{Renderer} = \opt{OpenType} : use the Harfbuzz engine with the OpenType shaper. \item \feat{Renderer} = \opt{AAT} : use the Harfbuzz engine with the AAT shaper. \item \feat{Renderer} = \opt{Graphite} : use the Harfbuzz engine with the Graphite shaper. @@ -81,7 +81,7 @@ Please refer to the \LuaTeX/\pkg{luaotfload} documentation for more details. % ------------------------------------------------ % The FONTSPEC package % ------------------------------------------------ -% Copyright 2004-2020 Will Robertson, LPPL "maintainer" +% Copyright 2004-2022 Will Robertson, LPPL "maintainer" % Copyright 2009-2015 Khaled Hosny % Copyright 2013 Philipp Gesang % Copyright 2013-2016 Joseph Wright diff --git a/Master/texmf-dist/source/latex/fontspec/fontspec-doc-opentype.tex b/Master/texmf-dist/source/latex/fontspec/fontspec-doc-opentype.tex index fb08645abb5..3d6aa4601bd 100644 --- a/Master/texmf-dist/source/latex/fontspec/fontspec-doc-opentype.tex +++ b/Master/texmf-dist/source/latex/fontspec/fontspec-doc-opentype.tex @@ -1171,12 +1171,13 @@ selected numerically such as for the \feat{Annotation} feature. \begin{features}{Style} \otf*{Alternate}{salt} +\otf*{Cursive}{curs} +\otf*{Historic}{hist} \otf*{Italic}{ital} \otf*{Ruby}{ruby} \otf*{Swash}{swsh} -\otf*{Cursive}{curs} -\otf*{Historic}{hist} \otf*{Titling}{titl} +\otf*{Uppercase}{case} \otf*{HorizontalKana}{hkna} \otf*{VerticalKana}{vkna} \cmidrule{2-4} @@ -1195,7 +1196,7 @@ particular substitutions are organised with which feature largely up to the font \begin{Xexample}[firstline=2]{style-alt}{Example of the \opt{Alternate} option of the \feat{Style} feature.} \Large - \fontspec{Quattrocento.otf} + \fontspec{Quattrocento-Regular.otf} M Q W \\ \addfontfeature{Style=Alternate} M Q W @@ -1466,7 +1467,7 @@ however; please get in touch if there are improvements that could be made. % ------------------------------------------------ % The FONTSPEC package % ------------------------------------------------ -% Copyright 2004-2020 Will Robertson, LPPL "maintainer" +% Copyright 2004-2022 Will Robertson, LPPL "maintainer" % Copyright 2009-2015 Khaled Hosny % Copyright 2013 Philipp Gesang % Copyright 2013-2016 Joseph Wright diff --git a/Master/texmf-dist/source/latex/fontspec/fontspec-doc-xetex.tex b/Master/texmf-dist/source/latex/fontspec/fontspec-doc-xetex.tex index 5c1e3e3e7d4..4f1369ddd6d 100644 --- a/Master/texmf-dist/source/latex/fontspec/fontspec-doc-xetex.tex +++ b/Master/texmf-dist/source/latex/fontspec/fontspec-doc-xetex.tex @@ -282,7 +282,7 @@ options: \opt{Off}, % ------------------------------------------------ % The FONTSPEC package % ------------------------------------------------ -% Copyright 2004-2020 Will Robertson, LPPL "maintainer" +% Copyright 2004-2022 Will Robertson, LPPL "maintainer" % Copyright 2009-2015 Khaled Hosny % Copyright 2013 Philipp Gesang % Copyright 2013-2016 Joseph Wright diff --git a/Master/texmf-dist/source/latex/fontspec/fontspec-lua.dtx b/Master/texmf-dist/source/latex/fontspec/fontspec-lua.dtx index fdbe11e9d18..0ec31271885 100644 --- a/Master/texmf-dist/source/latex/fontspec/fontspec-lua.dtx +++ b/Master/texmf-dist/source/latex/fontspec/fontspec-lua.dtx @@ -89,7 +89,7 @@ end % ------------------------------------------------ % The FONTSPEC package % ------------------------------------------------ -% Copyright 2004-2020 Will Robertson, LPPL "maintainer" +% Copyright 2004-2022 Will Robertson, LPPL "maintainer" % Copyright 2009-2015 Khaled Hosny % Copyright 2013 Philipp Gesang % Copyright 2013-2016 Joseph Wright diff --git a/Master/texmf-dist/source/latex/fontspec/fontspec.dtx b/Master/texmf-dist/source/latex/fontspec/fontspec.dtx index 5d07989465f..e6d8105a7af 100644 --- a/Master/texmf-dist/source/latex/fontspec/fontspec.dtx +++ b/Master/texmf-dist/source/latex/fontspec/fontspec.dtx @@ -70,7 +70,7 @@ \ProvidesExplFile{fontspec.dtx} % %<*fontspec> - {2020/02/21}{2.7i}{Font selection for XeLaTeX and LuaLaTeX} + {2022/01/15}{2.8a}{Font selection for XeLaTeX and LuaLaTeX} % % \end{macrocode} % @@ -89,8 +89,8 @@ %local fontspec = fontspec %fontspec.module = { % name = "fontspec", -% version = "2.7i", -% date = "2020/02/21", +% version = "2.8a", +% date = "2022/01/15", % description = "Font selection for XeLaTeX and LuaLaTeX", % author = "Khaled Hosny, Philipp Gesang, Will Robertson", % copyright = "Khaled Hosny, Philipp Gesang, Will Robertson", @@ -104,7 +104,7 @@ % ------------------------------------------------ % The FONTSPEC package % ------------------------------------------------ -% Copyright 2004-2020 Will Robertson, LPPL "maintainer" +% Copyright 2004-2022 Will Robertson, LPPL "maintainer" % Copyright 2009-2015 Khaled Hosny % Copyright 2013 Philipp Gesang % Copyright 2013-2016 Joseph Wright diff --git a/Master/texmf-dist/source/latex/fontspec/fontspec.ins b/Master/texmf-dist/source/latex/fontspec/fontspec.ins index adace502d2f..be45e40b826 100644 --- a/Master/texmf-dist/source/latex/fontspec/fontspec.ins +++ b/Master/texmf-dist/source/latex/fontspec/fontspec.ins @@ -48,7 +48,7 @@ the conditions of the LaTeX Project Public License, version 1.3c or higher % ------------------------------------------------ % The FONTSPEC package % ------------------------------------------------ -% Copyright 2004-2020 Will Robertson, LPPL "maintainer" +% Copyright 2004-2022 Will Robertson, LPPL "maintainer" % Copyright 2009-2015 Khaled Hosny % Copyright 2013 Philipp Gesang % Copyright 2013-2016 Joseph Wright diff --git a/Master/texmf-dist/source/latex/fontspec/fontspec.ltx b/Master/texmf-dist/source/latex/fontspec/fontspec.ltx index b4979486961..239069ff7ea 100644 --- a/Master/texmf-dist/source/latex/fontspec/fontspec.ltx +++ b/Master/texmf-dist/source/latex/fontspec/fontspec.ltx @@ -28,7 +28,7 @@ % ------------------------------------------------ % The FONTSPEC package % ------------------------------------------------ -% Copyright 2004-2020 Will Robertson, LPPL "maintainer" +% Copyright 2004-2022 Will Robertson, LPPL "maintainer" % Copyright 2009-2015 Khaled Hosny % Copyright 2013 Philipp Gesang % Copyright 2013-2016 Joseph Wright -- cgit v1.2.3