From ee6d6cebcf0c8b850920001a6420f42c156050b0 Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Fri, 21 Feb 2020 22:54:05 +0000 Subject: fontspec (21feb20) git-svn-id: svn://tug.org/texlive/trunk@53860 c570f23f-e606-0410-a88d-b1316a301751 --- Master/texmf-dist/doc/latex/fontspec/CHANGES.md | 6 +++ .../doc/latex/fontspec/fontspec-code.pdf | Bin 626791 -> 629912 bytes Master/texmf-dist/doc/latex/fontspec/fontspec.pdf | Bin 610880 -> 600048 bytes .../latex/fontspec/fontspec-code-internal.dtx | 45 +++++++++++++++++++ .../source/latex/fontspec/fontspec-code-user.dtx | 9 ++++ .../texmf-dist/source/latex/fontspec/fontspec.dtx | 6 +-- .../tex/latex/fontspec/fontspec-luatex.sty | 50 ++++++++++++++++++++- .../tex/latex/fontspec/fontspec-xetex.sty | 50 ++++++++++++++++++++- Master/texmf-dist/tex/latex/fontspec/fontspec.lua | 4 +- Master/texmf-dist/tex/latex/fontspec/fontspec.sty | 2 +- 10 files changed, 164 insertions(+), 8 deletions(-) (limited to 'Master/texmf-dist') diff --git a/Master/texmf-dist/doc/latex/fontspec/CHANGES.md b/Master/texmf-dist/doc/latex/fontspec/CHANGES.md index 176a83b6c89..63ae8620b4b 100644 --- a/Master/texmf-dist/doc/latex/fontspec/CHANGES.md +++ b/Master/texmf-dist/doc/latex/fontspec/CHANGES.md @@ -1,6 +1,12 @@ Change history ============== +## v2.7i (2020/02/21) + + * Define both `b` and `bx` font series by default to avoid spurious warnings in some + cases, and broken behaviour in pathological cases. + + ## v2.7h (2020/02/03) * Eroneous uses of `language=DFLT` changed to `language=dflt`. diff --git a/Master/texmf-dist/doc/latex/fontspec/fontspec-code.pdf b/Master/texmf-dist/doc/latex/fontspec/fontspec-code.pdf index 9ca1bd34304..52d9e28cded 100644 Binary files a/Master/texmf-dist/doc/latex/fontspec/fontspec-code.pdf and b/Master/texmf-dist/doc/latex/fontspec/fontspec-code.pdf differ diff --git a/Master/texmf-dist/doc/latex/fontspec/fontspec.pdf b/Master/texmf-dist/doc/latex/fontspec/fontspec.pdf index 2003bddf9ce..97e8a293a0c 100644 Binary files a/Master/texmf-dist/doc/latex/fontspec/fontspec.pdf and b/Master/texmf-dist/doc/latex/fontspec/fontspec.pdf differ 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 6282569a6f0..375fc7be2e9 100644 --- a/Master/texmf-dist/source/latex/fontspec/fontspec-code-internal.dtx +++ b/Master/texmf-dist/source/latex/fontspec/fontspec-code-internal.dtx @@ -724,6 +724,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_shape_loginfo:nn {#1} {#2} } % \end{macrocode} @@ -871,6 +872,50 @@ % \end{macrocode} % \end{macro} % +% \begin{macro}{\@@_declare_shapes_bx:nn} +% Similar processing for setting up b/bx substitutions. +% \begin{macrocode} +\cs_new:Nn \@@_declare_shapes_bx:nn + { + \bool_if:nT + { + \str_if_eq_p:ee {#1} {\bfdefault} && + !(\str_if_eq_p:ee {\bfdefault} {bx}) + } + { + % bx/? + \@@_DeclareFontShape:xxxxxx {\g_@@_nfss_enc_tl} {\g_@@_nfss_family_tl} + {bx} {#2} + { <->ssub*\g_@@_nfss_family_tl/\bfdefault/#2 } + { \l_@@_postadjust_tl } + + % bx/sc -> b/sc + \tl_if_empty:NF \l_@@_nfss_sc_tl + { + \@@_DeclareFontShape:xxxxxx {\g_@@_nfss_enc_tl} {\g_@@_nfss_family_tl} + {bx} { \@@_combo_sc_shape:n {#2} } + { <->ssub*\g_@@_nfss_family_tl/\bfdefault/#2 } + { \l_@@_postadjust_tl } + } + + % bx/sl -> bx/it + \bool_if:nT + { + \str_if_eq_p:ee {#2} {\itdefault} && + !(\str_if_eq_p:ee {\itdefault} {\sldefault}) + } + { + \@@_DeclareFontShape:xxxxxx {\g_@@_nfss_enc_tl} {\g_@@_nfss_family_tl} + {bx} {\sldefault} + { <->ssub*\g_@@_nfss_family_tl/bx/\itdefault } + { \l_@@_postadjust_tl } + } + + } + } +% \end{macrocode} +% \end{macro} +% % \begin{macro}{\@@_declare_shape_loginfo:nn} % Lastly some informative messaging. % \begin{macrocode} 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 d235d0dbe91..a4a754d598c 100644 --- a/Master/texmf-dist/source/latex/fontspec/fontspec-code-user.dtx +++ b/Master/texmf-dist/source/latex/fontspec/fontspec-code-user.dtx @@ -64,6 +64,9 @@ % \begin{macrocode} \cs_new:Nn \@@_main_setmainfont:nn { + \ifdefined\DeclareFontSeriesDefault + \DeclareFontSeriesDefault[rm]{bf}{\bfdefault} + \fi \fontspec_set_family:Nnn \l_@@_rmfamily_family_tl {#1} {#2} \tl_set_eq:NN \rmdefault \l_@@_rmfamily_family_tl \tl_set_eq:NN \l_@@_rmfamily_encoding_tl \g_@@_nfss_enc_tl @@ -80,6 +83,9 @@ % \begin{macrocode} \cs_new:Nn \@@_main_setsansfont:nn { + \ifdefined\DeclareFontSeriesDefault + \DeclareFontSeriesDefault[sf]{bf}{\bfdefault} + \fi \fontspec_set_family:Nnn \l_@@_sffamily_family_tl {#1} {#2} \tl_set_eq:NN \sfdefault \l_@@_sffamily_family_tl \tl_set_eq:NN \l_@@_sffamily_encoding_tl \g_@@_nfss_enc_tl @@ -96,6 +102,9 @@ % \begin{macrocode} \cs_new:Nn \@@_main_setmonofont:nn { + \ifdefined\DeclareFontSeriesDefault + \DeclareFontSeriesDefault[tt]{bf}{\bfdefault} + \fi \fontspec_set_family:Nnn \l_@@_ttfamily_family_tl {#1} {#2} \tl_set_eq:NN \ttdefault \l_@@_ttfamily_family_tl \tl_set_eq:NN \l_@@_ttfamily_encoding_tl \g_@@_nfss_enc_tl diff --git a/Master/texmf-dist/source/latex/fontspec/fontspec.dtx b/Master/texmf-dist/source/latex/fontspec/fontspec.dtx index e5a6f2f111b..5d07989465f 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/03}{2.7h}{Font selection for XeLaTeX and LuaLaTeX} + {2020/02/21}{2.7i}{Font selection for XeLaTeX and LuaLaTeX} % % \end{macrocode} % @@ -89,8 +89,8 @@ %local fontspec = fontspec %fontspec.module = { % name = "fontspec", -% version = "2.7h", -% date = "2020/02/03", +% version = "2.7i", +% date = "2020/02/21", % description = "Font selection for XeLaTeX and LuaLaTeX", % author = "Khaled Hosny, Philipp Gesang, Will Robertson", % copyright = "Khaled Hosny, Philipp Gesang, Will Robertson", diff --git a/Master/texmf-dist/tex/latex/fontspec/fontspec-luatex.sty b/Master/texmf-dist/tex/latex/fontspec/fontspec-luatex.sty index 2b3abb32f9b..a934edb4a61 100644 --- a/Master/texmf-dist/tex/latex/fontspec/fontspec-luatex.sty +++ b/Master/texmf-dist/tex/latex/fontspec/fontspec-luatex.sty @@ -40,7 +40,7 @@ \RequirePackage{xparse} \ProvidesExplPackage{fontspec-luatex}% - {2020/02/03}{2.7h}{Font selection for XeLaTeX and LuaLaTeX} + {2020/02/21}{2.7i}{Font selection for XeLaTeX and LuaLaTeX} %%^^A%% fontspec-code-load.dtx -- part of FONTSPEC %%^^A%% fontspec-code-vars.dtx -- part of FONTSPEC @@ -754,6 +754,9 @@ \tl_set:Nn \l__fontspec_ttfamily_encoding_tl { \encodingdefault } \cs_new:Nn \__fontspec_main_setmainfont:nn { + \ifdefined\DeclareFontSeriesDefault + \DeclareFontSeriesDefault[rm]{bf}{\bfdefault} + \fi \fontspec_set_family:Nnn \l__fontspec_rmfamily_family_tl {#1} {#2} \tl_set_eq:NN \rmdefault \l__fontspec_rmfamily_family_tl \tl_set_eq:NN \l__fontspec_rmfamily_encoding_tl \g__fontspec_nfss_enc_tl @@ -764,6 +767,9 @@ } \cs_new:Nn \__fontspec_main_setsansfont:nn { + \ifdefined\DeclareFontSeriesDefault + \DeclareFontSeriesDefault[sf]{bf}{\bfdefault} + \fi \fontspec_set_family:Nnn \l__fontspec_sffamily_family_tl {#1} {#2} \tl_set_eq:NN \sfdefault \l__fontspec_sffamily_family_tl \tl_set_eq:NN \l__fontspec_sffamily_encoding_tl \g__fontspec_nfss_enc_tl @@ -774,6 +780,9 @@ } \cs_new:Nn \__fontspec_main_setmonofont:nn { + \ifdefined\DeclareFontSeriesDefault + \DeclareFontSeriesDefault[tt]{bf}{\bfdefault} + \fi \fontspec_set_family:Nnn \l__fontspec_ttfamily_family_tl {#1} {#2} \tl_set_eq:NN \ttdefault \l__fontspec_ttfamily_family_tl \tl_set_eq:NN \l__fontspec_ttfamily_encoding_tl \g__fontspec_nfss_enc_tl @@ -1587,6 +1596,7 @@ \__fontspec_declare_shapes_normal:nn {#1} {#2} \__fontspec_declare_shapes_smcaps:nn {#1} {#2} \__fontspec_declare_shape_slanted:nn {#1} {#2} + \__fontspec_declare_shapes_bx:nn {#1} {#2} \__fontspec_declare_shape_loginfo:nn {#1} {#2} } \cs_generate_variant:Nn \__fontspec_declare_shape:nnnn {nnxx} @@ -1684,6 +1694,44 @@ {<->ssub*\g__fontspec_nfss_family_tl/#1/\itdefault}{\l__fontspec_postadjust_tl} } } +\cs_new:Nn \__fontspec_declare_shapes_bx:nn + { + \bool_if:nT + { + \str_if_eq_p:ee {#1} {\bfdefault} && + !(\str_if_eq_p:ee {\bfdefault} {bx}) + } + { + % bx/? + \__fontspec_DeclareFontShape:xxxxxx {\g__fontspec_nfss_enc_tl} {\g__fontspec_nfss_family_tl} + {bx} {#2} + { <->ssub*\g__fontspec_nfss_family_tl/\bfdefault/#2 } + { \l__fontspec_postadjust_tl } + + % bx/sc -> b/sc + \tl_if_empty:NF \l__fontspec_nfss_sc_tl + { + \__fontspec_DeclareFontShape:xxxxxx {\g__fontspec_nfss_enc_tl} {\g__fontspec_nfss_family_tl} + {bx} { \__fontspec_combo_sc_shape:n {#2} } + { <->ssub*\g__fontspec_nfss_family_tl/\bfdefault/#2 } + { \l__fontspec_postadjust_tl } + } + + % bx/sl -> bx/it + \bool_if:nT + { + \str_if_eq_p:ee {#2} {\itdefault} && + !(\str_if_eq_p:ee {\itdefault} {\sldefault}) + } + { + \__fontspec_DeclareFontShape:xxxxxx {\g__fontspec_nfss_enc_tl} {\g__fontspec_nfss_family_tl} + {bx} {\sldefault} + { <->ssub*\g__fontspec_nfss_family_tl/bx/\itdefault } + { \l__fontspec_postadjust_tl } + } + + } + } \cs_new:Nn \__fontspec_declare_shape_loginfo:nn { \tl_gput_right:Nx \g__fontspec_defined_shapes_tl diff --git a/Master/texmf-dist/tex/latex/fontspec/fontspec-xetex.sty b/Master/texmf-dist/tex/latex/fontspec/fontspec-xetex.sty index 808b8ebbd15..7f435267612 100644 --- a/Master/texmf-dist/tex/latex/fontspec/fontspec-xetex.sty +++ b/Master/texmf-dist/tex/latex/fontspec/fontspec-xetex.sty @@ -40,7 +40,7 @@ \RequirePackage{xparse} \ProvidesExplPackage{fontspec-xetex}% - {2020/02/03}{2.7h}{Font selection for XeLaTeX and LuaLaTeX} + {2020/02/21}{2.7i}{Font selection for XeLaTeX and LuaLaTeX} %%^^A%% fontspec-code-load.dtx -- part of FONTSPEC %%^^A%% fontspec-code-vars.dtx -- part of FONTSPEC @@ -747,6 +747,9 @@ \tl_set:Nn \l__fontspec_ttfamily_encoding_tl { \encodingdefault } \cs_new:Nn \__fontspec_main_setmainfont:nn { + \ifdefined\DeclareFontSeriesDefault + \DeclareFontSeriesDefault[rm]{bf}{\bfdefault} + \fi \fontspec_set_family:Nnn \l__fontspec_rmfamily_family_tl {#1} {#2} \tl_set_eq:NN \rmdefault \l__fontspec_rmfamily_family_tl \tl_set_eq:NN \l__fontspec_rmfamily_encoding_tl \g__fontspec_nfss_enc_tl @@ -757,6 +760,9 @@ } \cs_new:Nn \__fontspec_main_setsansfont:nn { + \ifdefined\DeclareFontSeriesDefault + \DeclareFontSeriesDefault[sf]{bf}{\bfdefault} + \fi \fontspec_set_family:Nnn \l__fontspec_sffamily_family_tl {#1} {#2} \tl_set_eq:NN \sfdefault \l__fontspec_sffamily_family_tl \tl_set_eq:NN \l__fontspec_sffamily_encoding_tl \g__fontspec_nfss_enc_tl @@ -767,6 +773,9 @@ } \cs_new:Nn \__fontspec_main_setmonofont:nn { + \ifdefined\DeclareFontSeriesDefault + \DeclareFontSeriesDefault[tt]{bf}{\bfdefault} + \fi \fontspec_set_family:Nnn \l__fontspec_ttfamily_family_tl {#1} {#2} \tl_set_eq:NN \ttdefault \l__fontspec_ttfamily_family_tl \tl_set_eq:NN \l__fontspec_ttfamily_encoding_tl \g__fontspec_nfss_enc_tl @@ -1604,6 +1613,7 @@ \__fontspec_declare_shapes_normal:nn {#1} {#2} \__fontspec_declare_shapes_smcaps:nn {#1} {#2} \__fontspec_declare_shape_slanted:nn {#1} {#2} + \__fontspec_declare_shapes_bx:nn {#1} {#2} \__fontspec_declare_shape_loginfo:nn {#1} {#2} } \cs_generate_variant:Nn \__fontspec_declare_shape:nnnn {nnxx} @@ -1701,6 +1711,44 @@ {<->ssub*\g__fontspec_nfss_family_tl/#1/\itdefault}{\l__fontspec_postadjust_tl} } } +\cs_new:Nn \__fontspec_declare_shapes_bx:nn + { + \bool_if:nT + { + \str_if_eq_p:ee {#1} {\bfdefault} && + !(\str_if_eq_p:ee {\bfdefault} {bx}) + } + { + % bx/? + \__fontspec_DeclareFontShape:xxxxxx {\g__fontspec_nfss_enc_tl} {\g__fontspec_nfss_family_tl} + {bx} {#2} + { <->ssub*\g__fontspec_nfss_family_tl/\bfdefault/#2 } + { \l__fontspec_postadjust_tl } + + % bx/sc -> b/sc + \tl_if_empty:NF \l__fontspec_nfss_sc_tl + { + \__fontspec_DeclareFontShape:xxxxxx {\g__fontspec_nfss_enc_tl} {\g__fontspec_nfss_family_tl} + {bx} { \__fontspec_combo_sc_shape:n {#2} } + { <->ssub*\g__fontspec_nfss_family_tl/\bfdefault/#2 } + { \l__fontspec_postadjust_tl } + } + + % bx/sl -> bx/it + \bool_if:nT + { + \str_if_eq_p:ee {#2} {\itdefault} && + !(\str_if_eq_p:ee {\itdefault} {\sldefault}) + } + { + \__fontspec_DeclareFontShape:xxxxxx {\g__fontspec_nfss_enc_tl} {\g__fontspec_nfss_family_tl} + {bx} {\sldefault} + { <->ssub*\g__fontspec_nfss_family_tl/bx/\itdefault } + { \l__fontspec_postadjust_tl } + } + + } + } \cs_new:Nn \__fontspec_declare_shape_loginfo:nn { \tl_gput_right:Nx \g__fontspec_defined_shapes_tl diff --git a/Master/texmf-dist/tex/latex/fontspec/fontspec.lua b/Master/texmf-dist/tex/latex/fontspec/fontspec.lua index 4a9592992bd..e881468de80 100644 --- a/Master/texmf-dist/tex/latex/fontspec/fontspec.lua +++ b/Master/texmf-dist/tex/latex/fontspec/fontspec.lua @@ -23,8 +23,8 @@ fontspec = fontspec or {} local fontspec = fontspec fontspec.module = { name = "fontspec", - version = "2.7h", - date = "2020/02/03", + version = "2.7i", + date = "2020/02/21", description = "Font selection for XeLaTeX and LuaLaTeX", author = "Khaled Hosny, Philipp Gesang, Will Robertson", copyright = "Khaled Hosny, Philipp Gesang, Will Robertson", diff --git a/Master/texmf-dist/tex/latex/fontspec/fontspec.sty b/Master/texmf-dist/tex/latex/fontspec/fontspec.sty index 0ff5a4e850f..e9ec081bba1 100644 --- a/Master/texmf-dist/tex/latex/fontspec/fontspec.sty +++ b/Master/texmf-dist/tex/latex/fontspec/fontspec.sty @@ -21,7 +21,7 @@ \RequirePackage{xparse} \ProvidesExplPackage{fontspec}% - {2020/02/03}{2.7h}{Font selection for XeLaTeX and LuaLaTeX} + {2020/02/21}{2.7i}{Font selection for XeLaTeX and LuaLaTeX} %%^^A%% fontspec-code-load.dtx -- part of FONTSPEC \sys_if_engine_luatex:T -- cgit v1.2.3