diff options
author | Karl Berry <karl@freefriends.org> | 2019-06-08 21:43:09 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2019-06-08 21:43:09 +0000 |
commit | 7a10f8644fac291290ed3faddd3bbc9d1b206bd6 (patch) | |
tree | f9dbe2799c3c1ddef3846322b2dfc74db307602c /Master/texmf-dist/tex | |
parent | 0d8e0664ea5e52344dd599037c18c11c9a9adc6d (diff) |
combofont (8jun19)
git-svn-id: svn://tug.org/texlive/trunk@51348 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex')
-rw-r--r-- | Master/texmf-dist/tex/lualatex/combofont/combofont.sty | 76 |
1 files changed, 42 insertions, 34 deletions
diff --git a/Master/texmf-dist/tex/lualatex/combofont/combofont.sty b/Master/texmf-dist/tex/lualatex/combofont/combofont.sty index abeb91097f4..24572b1f779 100644 --- a/Master/texmf-dist/tex/lualatex/combofont/combofont.sty +++ b/Master/texmf-dist/tex/lualatex/combofont/combofont.sty @@ -1,21 +1,29 @@ +% !Mode:: "TeX:DE:UTF-8:Main" +%28.05.2018 +\def\UlrikeFischer@package@ufcombofont@date{2019/06/08}\def\UlrikeFischer@package@ufcombofont@version{0.3} + \RequirePackage{xparse} -\ProvidesExplPackage {combofont} {2017/07/03} {0.2} +\ProvidesExplPackage {combofont} {\UlrikeFischer@package@ufcombofont@date}{\UlrikeFischer@package@ufcombofont@version} {An EXPERIMENTAL package to add nfss-declaration of combo fonts to a luaLaTeX document} % highly experimental! Comments to Ulrike Fischer. fischer@troubleshooting-tex.de +\prop_if_exist:NT \g_msg_module_name_prop + { + \prop_gput:Nnn \g_msg_module_name_prop { ufcombo }{ combofont } + } -\msg_new:nnn {combo} {need-luatex} +\msg_new:nnn {ufcombo} {need-luatex} { The~ combofont~package~requires~LuaLaTeX.~Quitting. } -\msg_new:nnn {combo} {combofont-already-exists} +\msg_new:nnn {ufcombo} {combofont-already-exists} { The~combofont~#1~has~already~been~set~up.~I~won't~overwrite~it } \sys_if_engine_luatex:F { - \msg_fatal:nn {combo} {need-luatex} + \msg_fatal:nn {ufcombo} {need-luatex} \endinput } @@ -28,29 +36,29 @@ \tl_set:Nn\l_tmpa_tl { #2 } \regex_replace_all:nnN {\#1} {\c{f@size}} \l_tmpa_tl % \tl_show:N\l_tmpa_tl - \seq_if_exist:cTF { l__combo_#1_basefonts_seq } + \seq_if_exist:cTF { l__ufcombo_#1_basefonts_seq } { - \msg_warning:nnn { combo} {combofont-already-exists} { #1 } + \msg_warning:nnn { ufcombo} {combofont-already-exists} { #1 } } { - \seq_new:c { l__combo_#1_basefonts_seq } - \seq_set_split:cnV { l__combo_#1_basefonts_seq } { , }\l_tmpa_tl - %%\seq_show:c {l__combo_#1_basefonts_seq } - \seq_new:c { l__combo_#1_combodesc_seq } - \seq_set_from_clist:cn { l__combo_#1_combodesc_seq } { #3 } - %%\seq_show:c { l__combo_#1_combodesc_seq } - \__combo_build_combodesc:n { #1 } + \seq_new:c { l__ufcombo_#1_basefonts_seq } + \seq_set_split:cnV { l__ufcombo_#1_basefonts_seq } { , }\l_tmpa_tl + %%\seq_show:c {l__ufcombo_#1_basefonts_seq } + \seq_new:c { l__ufcombo_#1_combodesc_seq } + \seq_set_from_clist:cn { l__ufcombo_#1_combodesc_seq } { #3 } + %%\seq_show:c { l__ufcombo_#1_combodesc_seq } + \__ufcombo_build_combodesc:n { #1 } } } -\cs_new:Nn \__combo_call_basefonts:n +\cs_new:Nn \__ufcombo_call_basefonts:n { \int_zero:N \l_tmpa_int - \seq_map_inline:cn {l__combo_#1_basefonts_seq} + \seq_map_inline:cn {l__ufcombo_#1_basefonts_seq} { \int_incr:N \l_tmpa_int - \exp_args:Nc \font { l_combo_tmpfont_\int_to_roman:n{\l_tmpa_int}_tl } = ##1 + \exp_args:Nc \font { l__ufcombo_tmpfont_\int_to_roman:n{\l_tmpa_int}_tl } = ##1 } } @@ -59,38 +67,38 @@ -\cs_new:Nn \__combo_build_combodesc:n +\cs_new:Nn \__ufcombo_build_combodesc:n { - \tl_new:c { l__combo_#1_combodesc_tl } - \tl_set:cx { l__combo_#1_combodesc_tl } { \tl_to_str:n { " } combo \tl_to_str:n { : }~ } - \int_step_inline:nnnn { 1 } { 1 } { \seq_count:c { l__combo_#1_basefonts_seq } } + \tl_new:c { l__ufcombo_#1_combodesc_tl } + \tl_set:cx { l__ufcombo_#1_combodesc_tl } { \tl_to_str:n { " } combo \tl_to_str:n { : }~ } + \int_step_inline:nnnn { 1 } { 1 } { \seq_count:c { l__ufcombo_#1_basefonts_seq } } { - \tl_put_right:cn { l__combo_#1_combodesc_tl } { ##1~->~\fontid } - \exp_args:Nnc \tl_put_right:cn { l__combo_#1_combodesc_tl } + \tl_put_right:cn { l__ufcombo_#1_combodesc_tl } { ##1~->~\fontid } + \exp_args:Nnc \tl_put_right:cn { l__ufcombo_#1_combodesc_tl } { - l_combo_tmpfont_\int_to_roman:n{##1}_tl + l__ufcombo_tmpfont_\int_to_roman:n{##1}_tl } - \tl_set:Nx\l_tmpa_tl { \seq_item:cn {l__combo_#1_combodesc_seq } {##1} } + \tl_set:Nx\l_tmpa_tl { \seq_item:cn {l__ufcombo_#1_combodesc_seq } {##1} } \tl_if_empty:NF \l_tmpa_tl { - \tl_put_right:cx { l__combo_#1_combodesc_tl} + \tl_put_right:cx { l__ufcombo_#1_combodesc_tl} { - ,~ \seq_item:cn {l__combo_#1_combodesc_seq } {##1} + ,~ \seq_item:cn {l__ufcombo_#1_combodesc_seq } {##1} } } - \tl_put_right:cx { l__combo_#1_combodesc_tl} {\tl_to_str:n{;}} + \tl_put_right:cx { l__ufcombo_#1_combodesc_tl} {\tl_to_str:n{;}} } - \tl_put_right:cx { l__combo_#1_combodesc_tl } { \tl_to_str:n { " } } - %% \tl_show:c { l__combo_#1_combodesc_tl } + \tl_put_right:cx { l__ufcombo_#1_combodesc_tl } { \tl_to_str:n { " } } + %% \tl_show:c { l__ufcombo_#1_combodesc_tl } } -\DeclareSizeFunction{combo}{\__combo_sfcnt:} +\DeclareSizeFunction{combo}{\__ufcombo_sfcnt:} -\cs_new:Nn\__combo_sfcnt: +\cs_new:Nn\__ufcombo_sfcnt: { - % \tl_show:c {l__combo_\use:c{mandatory@arg}_combodesc_tl} - \__combo_call_basefonts:n { \mandatory@arg } - \tl_set_eq:Nc \external@font { l__combo_\use:c{mandatory@arg}_combodesc_tl} + % \tl_show:c {l__ufcombo_\use:c{mandatory@arg}_combodesc_tl} + \__ufcombo_call_basefonts:n { \mandatory@arg } + \tl_set_eq:Nc \external@font { l__ufcombo_\use:c{mandatory@arg}_combodesc_tl} }% \tl_new:N\combodefaultfeat |