summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/unicode-math
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2018-07-29 21:16:19 +0000
committerKarl Berry <karl@freefriends.org>2018-07-29 21:16:19 +0000
commit22732cc95c18343889729d2b33cadcaa09561171 (patch)
tree99b00aab650239d33fe44c326cd0b855bc257984 /Master/texmf-dist/tex/latex/unicode-math
parentf1d5ff4d5041a7f804fb723d4634d41f410d7f60 (diff)
unicode-math (29jul18)
git-svn-id: svn://tug.org/texlive/trunk@48309 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/unicode-math')
-rw-r--r--Master/texmf-dist/tex/latex/unicode-math/unicode-math-luatex.sty384
-rw-r--r--Master/texmf-dist/tex/latex/unicode-math/unicode-math-xetex.sty280
-rw-r--r--Master/texmf-dist/tex/latex/unicode-math/unicode-math.sty2
3 files changed, 407 insertions, 259 deletions
diff --git a/Master/texmf-dist/tex/latex/unicode-math/unicode-math-luatex.sty b/Master/texmf-dist/tex/latex/unicode-math/unicode-math-luatex.sty
index 0fe53583f55..46768acc474 100644
--- a/Master/texmf-dist/tex/latex/unicode-math/unicode-math-luatex.sty
+++ b/Master/texmf-dist/tex/latex/unicode-math/unicode-math-luatex.sty
@@ -43,7 +43,7 @@
%%^^A%% Metadata for the package code, including files and versioning
\ProvidesExplPackage{unicode-math-luatex}
- {2018/02/02} {v0.8l} {Unicode maths in XeLaTeX and LuaLaTeX}
+ {2018/07/29} {v0.8m} {Unicode maths in XeLaTeX and LuaLaTeX}
%%^^A%% um-code-opening.dtx -- part of UNICODE-MATH <wspr.io/unicode-math>
%%^^A%% Assorted initialisation tasks, including some low-level function definitions.
@@ -179,7 +179,7 @@
%%^^A%% um-code-variables.dtx -- part of UNICODE-MATH <wspr.io/unicode-math>
%%^^A%% Declaration of all code-level variables used in the package.
-\bool_new:N \l__um_ot_math_bool
+\bool_new:N \g__um_ot_math_bool
\bool_new:N \g__um_main_font_defined_bool
\bool_new:N \l__um_init_bool
\bool_new:N \l__um_implicit_alph_bool
@@ -215,16 +215,28 @@
\tl_const:Nn \c__um_math_alphabet_name_Greek_tl {Greek,~uppercase}
\tl_const:Nn \c__um_math_alphabet_name_num_tl {Numerals}
\tl_const:Nn \c__um_math_alphabet_name_misc_tl {Misc.}
+\tl_new:N \l__um_style_tl
+\tl_new:N \l__um_family_tl
+\tl_new:N \l__um_alphabet_tl
+\tl_new:N \l__um_fontname_tl
+\tl_new:N \l__um_symfont_label_tl
+\tl_new:N \l__um_remap_style_tl
+\tl_new:N \l__um_fam_two_tl
+\tl_new:N \l__um_fam_three_tl
+\tl_new:N \l__um_curr_named_slot
+\tl_new:N \l__um_tmpa_tl
\tl_new:N \l__um_mathstyle_tl
\tl_new:N \l__um_radicals_tl
\tl_new:N \l__um_nolimits_tl
+\tl_new:N \l__um_trial_family_tl
\tl_new:N \g__um_operator_mathfont_tl
\tl_new:N \g__um_slash_delimiter_usv
+\tl_new:N \g__um_mathparam_settings_tl
\tl_new:N \g__um_mathtable_tl
\tl_new:N \g__um_fontname_tl
\tl_new:N \g__um_mversion_tl
\tl_new:N \g__um_symfont_tl
-\tl_new:N \g__um_font_keyval_tl
+\tl_new:N \l__um_font_keyval_tl
\tl_new:N \g__um_family_tl
\tl_new:N \g__um_style_tl
\tl_new:N \g__um_remap_style_tl
@@ -236,16 +248,20 @@
\clist_new:N \g__um_char_nrange_clist
\clist_new:N \g__um_unknown_keys_clist
\clist_new:N \g__um_alphabet_clist
+\clist_new:N \l__um_mathmap_charints_clist
+\clist_new:N \l__um_unknown_keys_clist
+\clist_new:N \l__um_font_keyval_clist
+\clist_new:N \l__um_alphabet_clist
\clist_new:N \g__um_bad_alpha_clist
-\clist_put_right:Nx \g__um_bad_alpha_clist { \tl_to_str:n {bf} }
-\clist_put_right:Nx \g__um_bad_alpha_clist { \tl_to_str:n {sf} }
-\clist_put_right:Nx \g__um_bad_alpha_clist { \tl_to_str:n {bfsf} }
+\clist_gput_right:Nx \g__um_bad_alpha_clist { \tl_to_str:n {bf} }
+\clist_gput_right:Nx \g__um_bad_alpha_clist { \tl_to_str:n {sf} }
+\clist_gput_right:Nx \g__um_bad_alpha_clist { \tl_to_str:n {bfsf} }
\seq_new:N \l__um_missing_alph_seq
\seq_new:N \g__um_mathalph_seq
\seq_new:N \g__um_char_range_seq
\seq_new:N \g__um_mclass_range_seq
\seq_new:N \g__um_mathclasses_seq
-\seq_set_from_clist:Nn \g__um_mathclasses_seq
+\seq_gset_from_clist:Nn \g__um_mathclasses_seq
{
\mathord,\mathalpha,\mathbin,\mathrel,\mathpunct,
\mathop,
@@ -286,7 +302,7 @@
\@onlypreamble \setmathfontface
\NewDocumentCommand \setoperatorfont {m}
{
- \tl_set:Nn \g__um_operator_mathfont_tl {#1}
+ \tl_gset:Nn \g__um_operator_mathfont_tl {#1}
}
\setoperatorfont{\mathrm}
\NewDocumentCommand \addnolimits {m}
@@ -327,66 +343,66 @@
}
\__um_keys_choices:nn {mathup}
{
- {sym} { \bool_set_false:N \g__um_mathrm_text_bool }
- {text} { \bool_set_true:N \g__um_mathrm_text_bool }
+ {sym} { \bool_gset_false:N \g__um_mathrm_text_bool }
+ {text} { \bool_gset_true:N \g__um_mathrm_text_bool }
}
\__um_keys_choices:nn {mathrm}
{
- {sym} { \bool_set_false:N \g__um_mathrm_text_bool }
- {text} { \bool_set_true:N \g__um_mathrm_text_bool }
+ {sym} { \bool_gset_false:N \g__um_mathrm_text_bool }
+ {text} { \bool_gset_true:N \g__um_mathrm_text_bool }
}
\__um_keys_choices:nn {mathit}
{
- {sym} { \bool_set_false:N \g__um_mathit_text_bool }
- {text} { \bool_set_true:N \g__um_mathit_text_bool }
+ {sym} { \bool_gset_false:N \g__um_mathit_text_bool }
+ {text} { \bool_gset_true:N \g__um_mathit_text_bool }
}
\__um_keys_choices:nn {mathbf}
{
- {sym} { \bool_set_false:N \g__um_mathbf_text_bool }
- {text} { \bool_set_true:N \g__um_mathbf_text_bool }
+ {sym} { \bool_gset_false:N \g__um_mathbf_text_bool }
+ {text} { \bool_gset_true:N \g__um_mathbf_text_bool }
}
\__um_keys_choices:nn {mathsf}
{
- {sym} { \bool_set_false:N \g__um_mathsf_text_bool }
- {text} { \bool_set_true:N \g__um_mathsf_text_bool }
+ {sym} { \bool_gset_false:N \g__um_mathsf_text_bool }
+ {text} { \bool_gset_true:N \g__um_mathsf_text_bool }
}
\__um_keys_choices:nn {mathtt}
{
- {sym} { \bool_set_false:N \g__um_mathtt_text_bool }
- {text} { \bool_set_true:N \g__um_mathtt_text_bool }
+ {sym} { \bool_gset_false:N \g__um_mathtt_text_bool }
+ {text} { \bool_gset_true:N \g__um_mathtt_text_bool }
}
\__um_keys_choices:nn {normal-style}
{
{ISO} {
- \bool_set_false:N \g__um_literal_bool
- \bool_set_false:N \g__um_upGreek_bool
- \bool_set_false:N \g__um_upgreek_bool
- \bool_set_false:N \g__um_upLatin_bool
- \bool_set_false:N \g__um_uplatin_bool
+ \bool_gset_false:N \g__um_literal_bool
+ \bool_gset_false:N \g__um_upGreek_bool
+ \bool_gset_false:N \g__um_upgreek_bool
+ \bool_gset_false:N \g__um_upLatin_bool
+ \bool_gset_false:N \g__um_uplatin_bool
}
{TeX} {
- \bool_set_false:N \g__um_literal_bool
- \bool_set_true:N \g__um_upGreek_bool
- \bool_set_false:N \g__um_upgreek_bool
- \bool_set_false:N \g__um_upLatin_bool
- \bool_set_false:N \g__um_uplatin_bool
+ \bool_gset_false:N \g__um_literal_bool
+ \bool_gset_true:N \g__um_upGreek_bool
+ \bool_gset_false:N \g__um_upgreek_bool
+ \bool_gset_false:N \g__um_upLatin_bool
+ \bool_gset_false:N \g__um_uplatin_bool
}
{french} {
- \bool_set_false:N \g__um_literal_bool
- \bool_set_true:N \g__um_upGreek_bool
- \bool_set_true:N \g__um_upgreek_bool
- \bool_set_true:N \g__um_upLatin_bool
- \bool_set_false:N \g__um_uplatin_bool
+ \bool_gset_false:N \g__um_literal_bool
+ \bool_gset_true:N \g__um_upGreek_bool
+ \bool_gset_true:N \g__um_upgreek_bool
+ \bool_gset_true:N \g__um_upLatin_bool
+ \bool_gset_false:N \g__um_uplatin_bool
}
{upright} {
- \bool_set_false:N \g__um_literal_bool
- \bool_set_true:N \g__um_upGreek_bool
- \bool_set_true:N \g__um_upgreek_bool
- \bool_set_true:N \g__um_upLatin_bool
- \bool_set_true:N \g__um_uplatin_bool
+ \bool_gset_false:N \g__um_literal_bool
+ \bool_gset_true:N \g__um_upGreek_bool
+ \bool_gset_true:N \g__um_upgreek_bool
+ \bool_gset_true:N \g__um_upLatin_bool
+ \bool_gset_true:N \g__um_uplatin_bool
}
{literal} {
- \bool_set_true:N \g__um_literal_bool
+ \bool_gset_true:N \g__um_literal_bool
}
}
\__um_keys_choices:nn {math-style}
@@ -415,74 +431,74 @@
\__um_keys_choices:nn {bold-style}
{
{ISO} {
- \bool_set_false:N \g__um_bfliteral_bool
- \bool_set_false:N \g__um_bfupGreek_bool
- \bool_set_false:N \g__um_bfupgreek_bool
- \bool_set_false:N \g__um_bfupLatin_bool
- \bool_set_false:N \g__um_bfuplatin_bool
+ \bool_gset_false:N \g__um_bfliteral_bool
+ \bool_gset_false:N \g__um_bfupGreek_bool
+ \bool_gset_false:N \g__um_bfupgreek_bool
+ \bool_gset_false:N \g__um_bfupLatin_bool
+ \bool_gset_false:N \g__um_bfuplatin_bool
}
{TeX} {
- \bool_set_false:N \g__um_bfliteral_bool
- \bool_set_true:N \g__um_bfupGreek_bool
- \bool_set_false:N \g__um_bfupgreek_bool
- \bool_set_true:N \g__um_bfupLatin_bool
- \bool_set_true:N \g__um_bfuplatin_bool
+ \bool_gset_false:N \g__um_bfliteral_bool
+ \bool_gset_true:N \g__um_bfupGreek_bool
+ \bool_gset_false:N \g__um_bfupgreek_bool
+ \bool_gset_true:N \g__um_bfupLatin_bool
+ \bool_gset_true:N \g__um_bfuplatin_bool
}
{upright} {
- \bool_set_false:N \g__um_bfliteral_bool
- \bool_set_true:N \g__um_bfupGreek_bool
- \bool_set_true:N \g__um_bfupgreek_bool
- \bool_set_true:N \g__um_bfupLatin_bool
- \bool_set_true:N \g__um_bfuplatin_bool
+ \bool_gset_false:N \g__um_bfliteral_bool
+ \bool_gset_true:N \g__um_bfupGreek_bool
+ \bool_gset_true:N \g__um_bfupgreek_bool
+ \bool_gset_true:N \g__um_bfupLatin_bool
+ \bool_gset_true:N \g__um_bfuplatin_bool
}
{literal} {
- \bool_set_true:N \g__um_bfliteral_bool
+ \bool_gset_true:N \g__um_bfliteral_bool
}
}
\__um_keys_choices:nn {sans-style}
{
- {italic} { \bool_set_false:N \g__um_upsans_bool }
- {upright} { \bool_set_true:N \g__um_upsans_bool }
- {literal} { \bool_set_true:N \g__um_sfliteral_bool }
+ {italic} { \bool_gset_false:N \g__um_upsans_bool }
+ {upright} { \bool_gset_true:N \g__um_upsans_bool }
+ {literal} { \bool_gset_true:N \g__um_sfliteral_bool }
}
\__um_keys_choices:nn {nabla}
{
{upright} {
- \bool_set_false:N \g__um_literal_Nabla_bool
- \bool_set_true:N \g__um_upNabla_bool
+ \bool_gset_false:N \g__um_literal_Nabla_bool
+ \bool_gset_true:N \g__um_upNabla_bool
}
{italic} {
- \bool_set_false:N \g__um_literal_Nabla_bool
- \bool_set_false:N \g__um_upNabla_bool
+ \bool_gset_false:N \g__um_literal_Nabla_bool
+ \bool_gset_false:N \g__um_upNabla_bool
}
{literal} {
- \bool_set_true:N \g__um_literal_Nabla_bool
+ \bool_gset_true:N \g__um_literal_Nabla_bool
}
}
\__um_keys_choices:nn {partial}
{
{upright} {
- \bool_set_false:N \g__um_literal_partial_bool
- \bool_set_true:N \g__um_uppartial_bool
+ \bool_gset_false:N \g__um_literal_partial_bool
+ \bool_gset_true:N \g__um_uppartial_bool
}
{italic} {
- \bool_set_false:N \g__um_literal_partial_bool
- \bool_set_false:N \g__um_uppartial_bool
+ \bool_gset_false:N \g__um_literal_partial_bool
+ \bool_gset_false:N \g__um_uppartial_bool
}
{literal} {
- \bool_set_true:N \g__um_literal_partial_bool
+ \bool_gset_true:N \g__um_literal_partial_bool
}
}
\__um_keys_choices:nn {colon}
{
- {literal} { \bool_set_true:N \g__um_literal_colon_bool }
- {TeX} { \bool_set_false:N \g__um_literal_colon_bool }
+ {literal} { \bool_gset_true:N \g__um_literal_colon_bool }
+ {TeX} { \bool_gset_false:N \g__um_literal_colon_bool }
}
\__um_keys_choices:nn {slash-delimiter}
{
- {ascii} { \tl_set:Nn \g__um_slash_delimiter_usv {"002F} }
- {frac} { \tl_set:Nn \g__um_slash_delimiter_usv {"2044} }
- {div} { \tl_set:Nn \g__um_slash_delimiter_usv {"2215} }
+ {ascii} { \tl_gset:Nn \g__um_slash_delimiter_usv {"002F} }
+ {frac} { \tl_gset:Nn \g__um_slash_delimiter_usv {"2044} }
+ {div} { \tl_gset:Nn \g__um_slash_delimiter_usv {"2215} }
}
\__um_keys_choices:nn {active-frac}
{
@@ -894,7 +910,7 @@
\exp_not:n { \__um_sym:nnn {##1} {##2} {##3} }
}
}
-\tl_set_from_file_x:Nnn \g__um_mathtable_tl {\__um_symbol_setup:} {unicode-math-table.tex}
+\tl_gset_from_file_x:Nnn \g__um_mathtable_tl {\__um_symbol_setup:} {unicode-math-table.tex}
\cs_new:Nn \__um_input_math_symbol_table: {\g__um_mathtable_tl}
\AtBeginDocument{\__um_define_math_chars:}
\cs_new:Nn \__um_define_math_chars:
@@ -975,9 +991,19 @@
{
\tl_if_in:NnTF \l__um_radicals_tl {#2}
{
- \cs_gset_protected_nopar:cpx {\cs_to_str:N #2 sign}
- { \__um_radical:nn {#1} {#3} }
- \tl_set:cn {l__um_radical_\cs_to_str:N #2_tl} {\use:c{sym #1}~ #3}
+ \cs_if_exist:NF #2
+ {
+ %% todo: check if the check is necessary
+ \cs_gset_protected_nopar:Npx #2 { \exp_not:c { \cs_to_str:N #2 sign } }
+ }
+ \cs_gset_protected_nopar:cpx { \cs_to_str:N #2 sign }
+ {
+ \__um_radical:nn {#1} {#3}
+ }
+ \tl_if_exist:cF {c__um_radical_\cs_to_str:N #2_tl}
+ {
+ \tl_const:cn {c__um_radical_\cs_to_str:N #2_tl} {\use:c{sym #1}~ #3}
+ }
}
{
\__um_set_delcode:nnn {#1} {#3} {#3}
@@ -1045,22 +1071,22 @@
% integrate with fontspec's \setmathrm etc:
\tl_case:Nn #1
{
- \mathrm { \cs_set_eq:NN \g__fontspec_mathrm_tl \l__um_tmpa_tl }
- \mathsf { \cs_set_eq:NN \g__fontspec_mathsf_tl \l__um_tmpa_tl }
- \mathtt { \cs_set_eq:NN \g__fontspec_mathtt_tl \l__um_tmpa_tl }
+ \mathrm { \cs_gset_eq:NN \g__fontspec_mathrm_tl \l__um_tmpa_tl }
+ \mathsf { \cs_gset_eq:NN \g__fontspec_mathsf_tl \l__um_tmpa_tl }
+ \mathtt { \cs_gset_eq:NN \g__fontspec_mathtt_tl \l__um_tmpa_tl }
}
}
\cs_set:Npn \use@mathgroup #1 #2
{
- \__um_group_begin:
+ \math@bgroup
\cs_if_eq:cNF {M@\f@encoding} #1 {#1}
- \__um_switchto_literal:
+ \__um_switch_to:n {literal}
\__um_mathgroup_set:n {#2}
- \__um_group_end:n
+ \math@egroup
}
\cs_set:Npn \operator@font
{
- \__um_switchto_literal:
+ \__um_switch_to:n {literal}
\__um_fontswitch:n { \g__um_operator_mathfont_tl }
}
\cs_set:Nn \__um_fontswitch:n
@@ -1192,7 +1218,7 @@
\cs_new:Nn \__um_init:n
{
\tl_set:Nn \l__um_fontname_tl {#1}
- \bool_set_true:N \l__um_ot_math_bool
+ \bool_gset_true:N \g__um_ot_math_bool
\tl_set:Nn \l__um_mversion_tl {normal}
\tl_set:Nn \l__um_symfont_label_tl {operators}
@@ -1241,8 +1267,8 @@
\exp_last_unbraced:NNo \__um_fontface_gset_eq:NN \g__um_trial_font \font@name
\fontspec_if_script:nF {math}
{
- \bool_gset_false:N \l__um_ot_math_bool
- \bool_gset_false:N \l__um_init_bool
+ \bool_gset_false:N \g__um_ot_math_bool
+ \bool_gset_false:N \g__um_init_bool
}
\group_end:
@@ -1290,14 +1316,14 @@
}
\fontspec_if_script:nF {math}
{
- \bool_gset_false:N \l__um_ot_math_bool
- \bool_gset_false:N \l__um_init_bool
+ \bool_gset_false:N \g__um_ot_math_bool
+ \bool_gset_false:N \g__um_init_bool
}
\group_end:
}
-\tl_set:Nn \g__um_main_font_cmd_tl { \l__um_font }
-\tl_set:Nn \g__um_sqrt_font_cmd_tl { \l__um_font }
-\tl_set:Nn \g__um_prime_font_cmd_tl { \l__um_font }
+\tl_gset:Nn \g__um_main_font_cmd_tl { \l__um_font }
+\tl_gset:Nn \g__um_sqrt_font_cmd_tl { \l__um_font }
+\tl_gset:Nn \g__um_prime_font_cmd_tl { \l__um_font }
\cs_new_protected:Nn \__um_luatex_copy_fontdimens:
{
\__um_fontdimen_from_param:nn {10} {ScriptPercentScaleDown}
@@ -1506,16 +1532,16 @@
\scpolint\npolint\pointint\sqint\intlarhk\intx
\intcap\intcup\upint\lowint
}
-\tl_set:Nn \l__um_radicals_tl {\sqrt \longdivision}
+\tl_set:Nn \l__um_radicals_tl {\sqrt \longdivision \cuberoot \fourthroot}
\cs_set:Nn \__um_mathparam_restore:
{
- \check@mathfonts
- \tl_use:N \g__um_mathparam_store_tl
+ \glb@settings
+ \tl_use:N \g__um_mathparam_settings_tl
}
\cs_set:Nn \__um_mathparam_store:
{
- \check@mathfonts
- \tl_gset:Nx \g__um_mathparam_store_tl
+ \glb@settings
+ \tl_gset:Nx \g__um_mathparam_settings_tl
{
\__um_mathparam_store_aux:N \displaystyle
\__um_mathparam_store_aux:N \textstyle
@@ -1525,51 +1551,51 @@
}
\cs_set:Nn \__um_mathparam_store_aux:N
{
- \Umathquad #1 = \the \Umathquad #1
- \Umathaxis #1 = \the \Umathaxis #1
- \Umathoperatorsize #1 = \the \Umathoperatorsize #1
- \Umathoverbarkern #1 = \the \Umathoverbarkern #1
- \Umathoverbarrule #1 = \the \Umathoverbarrule #1
- \Umathoverbarvgap #1 = \the \Umathoverbarvgap #1
- \Umathunderbarkern #1 = \the \Umathunderbarkern #1
- \Umathunderbarrule #1 = \the \Umathunderbarrule #1
- \Umathunderbarvgap #1 = \the \Umathunderbarvgap #1
- \Umathradicalkern #1 = \the \Umathradicalkern #1
- \Umathradicalrule #1 = \the \Umathradicalrule #1
- \Umathradicalvgap #1 = \the \Umathradicalvgap #1
- \Umathradicaldegreebefore #1 = \the \Umathradicaldegreebefore #1
- \Umathradicaldegreeafter #1 = \the \Umathradicaldegreeafter #1
- \Umathradicaldegreeraise #1 = \the \Umathradicaldegreeraise #1
- \Umathstackvgap #1 = \the \Umathstackvgap #1
- \Umathstacknumup #1 = \the \Umathstacknumup #1
- \Umathstackdenomdown #1 = \the \Umathstackdenomdown #1
- \Umathfractionrule #1 = \the \Umathfractionrule #1
- \Umathfractionnumvgap #1 = \the \Umathfractionnumvgap #1
- \Umathfractionnumup #1 = \the \Umathfractionnumup #1
- \Umathfractiondenomvgap #1 = \the \Umathfractiondenomvgap #1
- \Umathfractiondenomdown #1 = \the \Umathfractiondenomdown #1
- \Umathfractiondelsize #1 = \the \Umathfractiondelsize #1
- \Umathlimitabovevgap #1 = \the \Umathlimitabovevgap #1
- \Umathlimitabovebgap #1 = \the \Umathlimitabovebgap #1
- \Umathlimitabovekern #1 = \the \Umathlimitabovekern #1
- \Umathlimitbelowvgap #1 = \the \Umathlimitbelowvgap #1
- \Umathlimitbelowbgap #1 = \the \Umathlimitbelowbgap #1
- \Umathlimitbelowkern #1 = \the \Umathlimitbelowkern #1
- \Umathoverdelimitervgap #1 = \the \Umathoverdelimitervgap #1
- \Umathoverdelimiterbgap #1 = \the \Umathoverdelimiterbgap #1
- \Umathunderdelimitervgap #1 = \the \Umathunderdelimitervgap #1
- \Umathunderdelimiterbgap #1 = \the \Umathunderdelimiterbgap #1
- \Umathsubshiftdrop #1 = \the \Umathsubshiftdrop #1
- \Umathsubshiftdown #1 = \the \Umathsubshiftdown #1
- \Umathsupshiftdrop #1 = \the \Umathsupshiftdrop #1
- \Umathsupshiftup #1 = \the \Umathsupshiftup #1
- \Umathsubsupshiftdown #1 = \the \Umathsubsupshiftdown #1
- \Umathsubtopmax #1 = \the \Umathsubtopmax #1
- \Umathsupbottommin #1 = \the \Umathsupbottommin #1
- \Umathsupsubbottommax #1 = \the \Umathsupsubbottommax #1
- \Umathsubsupvgap #1 = \the \Umathsubsupvgap #1
- \Umathspaceafterscript #1 = \the \Umathspaceafterscript #1
- \Umathconnectoroverlapmin #1 = \the \Umathconnectoroverlapmin #1
+ \Umathquad #1 = \the \Umathquad #1 \scan_stop:
+ \Umathaxis #1 = \the \Umathaxis #1 \scan_stop:
+ \Umathoperatorsize #1 = \the \Umathoperatorsize #1 \scan_stop:
+ \Umathoverbarkern #1 = \the \Umathoverbarkern #1 \scan_stop:
+ \Umathoverbarrule #1 = \the \Umathoverbarrule #1 \scan_stop:
+ \Umathoverbarvgap #1 = \the \Umathoverbarvgap #1 \scan_stop:
+ \Umathunderbarkern #1 = \the \Umathunderbarkern #1 \scan_stop:
+ \Umathunderbarrule #1 = \the \Umathunderbarrule #1 \scan_stop:
+ \Umathunderbarvgap #1 = \the \Umathunderbarvgap #1 \scan_stop:
+ \Umathradicalkern #1 = \the \Umathradicalkern #1 \scan_stop:
+ \Umathradicalrule #1 = \the \Umathradicalrule #1 \scan_stop:
+ \Umathradicalvgap #1 = \the \Umathradicalvgap #1 \scan_stop:
+ \Umathradicaldegreebefore #1 = \the \Umathradicaldegreebefore #1 \scan_stop:
+ \Umathradicaldegreeafter #1 = \the \Umathradicaldegreeafter #1 \scan_stop:
+ \Umathradicaldegreeraise #1 = \the \Umathradicaldegreeraise #1 \scan_stop:
+ \Umathstackvgap #1 = \the \Umathstackvgap #1 \scan_stop:
+ \Umathstacknumup #1 = \the \Umathstacknumup #1 \scan_stop:
+ \Umathstackdenomdown #1 = \the \Umathstackdenomdown #1 \scan_stop:
+ \Umathfractionrule #1 = \the \Umathfractionrule #1 \scan_stop:
+ \Umathfractionnumvgap #1 = \the \Umathfractionnumvgap #1 \scan_stop:
+ \Umathfractionnumup #1 = \the \Umathfractionnumup #1 \scan_stop:
+ \Umathfractiondenomvgap #1 = \the \Umathfractiondenomvgap #1 \scan_stop:
+ \Umathfractiondenomdown #1 = \the \Umathfractiondenomdown #1 \scan_stop:
+ \Umathfractiondelsize #1 = \the \Umathfractiondelsize #1 \scan_stop:
+ \Umathlimitabovevgap #1 = \the \Umathlimitabovevgap #1 \scan_stop:
+ \Umathlimitabovebgap #1 = \the \Umathlimitabovebgap #1 \scan_stop:
+ \Umathlimitabovekern #1 = \the \Umathlimitabovekern #1 \scan_stop:
+ \Umathlimitbelowvgap #1 = \the \Umathlimitbelowvgap #1 \scan_stop:
+ \Umathlimitbelowbgap #1 = \the \Umathlimitbelowbgap #1 \scan_stop:
+ \Umathlimitbelowkern #1 = \the \Umathlimitbelowkern #1 \scan_stop:
+ \Umathoverdelimitervgap #1 = \the \Umathoverdelimitervgap #1 \scan_stop:
+ \Umathoverdelimiterbgap #1 = \the \Umathoverdelimiterbgap #1 \scan_stop:
+ \Umathunderdelimitervgap #1 = \the \Umathunderdelimitervgap #1 \scan_stop:
+ \Umathunderdelimiterbgap #1 = \the \Umathunderdelimiterbgap #1 \scan_stop:
+ \Umathsubshiftdrop #1 = \the \Umathsubshiftdrop #1 \scan_stop:
+ \Umathsubshiftdown #1 = \the \Umathsubshiftdown #1 \scan_stop:
+ \Umathsupshiftdrop #1 = \the \Umathsupshiftdrop #1 \scan_stop:
+ \Umathsupshiftup #1 = \the \Umathsupshiftup #1 \scan_stop:
+ \Umathsubsupshiftdown #1 = \the \Umathsubsupshiftdown #1 \scan_stop:
+ \Umathsubtopmax #1 = \the \Umathsubtopmax #1 \scan_stop:
+ \Umathsupbottommin #1 = \the \Umathsupbottommin #1 \scan_stop:
+ \Umathsupsubbottommax #1 = \the \Umathsupsubbottommax #1 \scan_stop:
+ \Umathsubsupvgap #1 = \the \Umathsubsupvgap #1 \scan_stop:
+ \Umathspaceafterscript #1 = \the \Umathspaceafterscript #1 \scan_stop:
+ \Umathconnectoroverlapmin #1 = \the \Umathconnectoroverlapmin #1 \scan_stop:
}
%%^^A%% um-code-fontopt.dtx -- part of UNICODE-MATH <wspr.io/unicode-math>
@@ -1613,7 +1639,7 @@
}
\cs_new:Nn \__um_range_init:
{
- \int_incr:N \g__um_fam_int
+ \int_gincr:N \g__um_fam_int
\tl_set:Nx \l__um_symfont_label_tl {__um_fam\int_use:N\g__um_fam_int}
\cs_set_eq:NN \__um_sym:nnn \__um_process_symbol_parse:nnn
\cs_set_eq:NN \__um_remap_symbol:nnn \__um_remap_symbol_parse:nnn
@@ -2128,7 +2154,7 @@
}
\cs_new:Nn \__um_mathmap_noparse:nnn
{
- \tl_put_right:cx { __um_switchto_#1: }
+ \tl_gput_right:cx { g__um_switchto_#1_tl }
{
\__um_set_mathcode:nnnn {#2} {\mathalpha} {\l__um_symfont_label_tl} {#3}
}
@@ -2224,7 +2250,7 @@
\mode_if_math:F { \exp_args:Nc \non@alpherr {sym#1} }
\tl_set:Nn \l__um_mathstyle_tl {#1}
}
- \exp_not:c {__um_switchto_#1:}
+ \__um_switch_to:n {#1}
\__um_mathgroup_set:n {-1}
\__um_group_end:n
}
@@ -2232,7 +2258,12 @@
\cs_set:Nn \__um_init_alphabet:n
{
\__um_log:nx {alph-initialise} {#1}
- \cs_set_eq:cN {__um_switchto_#1:} \prg_do_nothing:
+ \tl_gclear_new:c {g__um_switchto_#1_tl}
+ \cs_set_protected:cpn {__um_switchto_#1:} { \tl_use:c {g__um_switchto_#1_tl} }
+ }
+\cs_new_protected:Nn \__um_switch_to:n
+ {
+ \tl_use:c {g__um_switchto_#1_tl}
}
\cs_new:Nn \__um_default_mathalph:nnn
{
@@ -3481,13 +3512,56 @@
\__um_setup_active_superscript:nn {"207C} {=}
\__um_setup_active_superscript:nn {"207D} {(}
\__um_setup_active_superscript:nn {"207E} {)}
-\__um_setup_active_superscript:nn {"2071} {i}
-\__um_setup_active_superscript:nn {"207F} {n}
+\__um_setup_active_superscript:nn {"1D2C} {A}
+\__um_setup_active_superscript:nn {"1D2E} {B}
+\__um_setup_active_superscript:nn {"1D30} {D}
+\__um_setup_active_superscript:nn {"1D31} {E}
+\__um_setup_active_superscript:nn {"1D33} {G}
+\__um_setup_active_superscript:nn {"1D34} {H}
+\__um_setup_active_superscript:nn {"1D35} {I}
+\__um_setup_active_superscript:nn {"1D36} {J}
+\__um_setup_active_superscript:nn {"1D37} {K}
+\__um_setup_active_superscript:nn {"1D38} {L}
+\__um_setup_active_superscript:nn {"1D39} {M}
+\__um_setup_active_superscript:nn {"1D3A} {N}
+\__um_setup_active_superscript:nn {"1D3C} {O}
+\__um_setup_active_superscript:nn {"1D3E} {P}
+\__um_setup_active_superscript:nn {"1D3F} {R}
+\__um_setup_active_superscript:nn {"1D40} {T}
+\__um_setup_active_superscript:nn {"1D41} {U}
+\__um_setup_active_superscript:nn {"2C7D} {V}
+\__um_setup_active_superscript:nn {"1D42} {W}
+\__um_setup_active_superscript:nn {"1D43} {a}
+\__um_setup_active_superscript:nn {"1D47} {b}
+\__um_setup_active_superscript:nn {"1D9C} {c}
+\__um_setup_active_superscript:nn {"1D48} {d}
+\__um_setup_active_superscript:nn {"1D49} {e}
+\__um_setup_active_superscript:nn {"1DA0} {f}
+\__um_setup_active_superscript:nn {"1D4D} {g}
\__um_setup_active_superscript:nn {"02B0} {h}
+\__um_setup_active_superscript:nn {"2071} {i}
\__um_setup_active_superscript:nn {"02B2} {j}
+\__um_setup_active_superscript:nn {"1D4F} {k}
+\__um_setup_active_superscript:nn {"02E1} {l}
+\__um_setup_active_superscript:nn {"1D50} {m}
+\__um_setup_active_superscript:nn {"207F} {n}
+\__um_setup_active_superscript:nn {"1D52} {o}
+\__um_setup_active_superscript:nn {"1D56} {p}
\__um_setup_active_superscript:nn {"02B3} {r}
+\__um_setup_active_superscript:nn {"02E2} {s}
+\__um_setup_active_superscript:nn {"1D57} {t}
+\__um_setup_active_superscript:nn {"1D58} {u}
+\__um_setup_active_superscript:nn {"1D5B} {v}
\__um_setup_active_superscript:nn {"02B7} {w}
+\__um_setup_active_superscript:nn {"02E3} {x}
\__um_setup_active_superscript:nn {"02B8} {y}
+\__um_setup_active_superscript:nn {"1DBB} {z}
+\__um_setup_active_superscript:nn {"1D5D} {\beta}
+\__um_setup_active_superscript:nn {"1D5E} {\gamma}
+\__um_setup_active_superscript:nn {"1D5F} {\delta}
+\__um_setup_active_superscript:nn {"1D60} {\phi}
+\__um_setup_active_superscript:nn {"1D61} {\chi}
+\__um_setup_active_superscript:nn {"1DBF} {\theta}
\__um_setup_active_subscript:nn {"2080} {0}
\__um_setup_active_subscript:nn {"2081} {1}
\__um_setup_active_subscript:nn {"2082} {2}
@@ -3558,7 +3632,7 @@
}
\AtEndOfPackageFile * {url}
{
- \tl_put_left:Nn \Url@FormatString { \__um_switchto_up: }
+ \tl_put_left:Nn \Url@FormatString { \__um_switch_to:n {up} }
\tl_put_right:Nn \UrlSpecials
{
\do \` { \mathchar`\` }
@@ -3654,7 +3728,7 @@
&& \int_compare_p:nNn { \leftroot@ } = { \c_zero }
}
{
- \Uroot \l__um_radical_sqrt_tl { #1 } { #2 }
+ \Uroot \c__um_radical_sqrt_tl { #1 } { #2 }
}
{
\hbox_set:Nn \rootbox
@@ -3692,7 +3766,7 @@
#1 \mskip \uproot@ mu
\c_math_toggle_token
}
- \Uroot \l__um_radical_sqrt_tl
+ \Uroot \c__um_radical_sqrt_tl
{
\box_move_up:nn { \box_wd:N \l_tmpa_box }
{
@@ -3713,7 +3787,7 @@
%%^^A%% um-code-epilogue.dtx -- part of UNICODE-MATH <wspr.io/unicode-math>
%%^^A%% Assorted definitions to close up.
-\AtBeginDocument { \__um_resolve_greek: }
+\AtBeginDocument { \debug_suspend: \__um_resolve_greek: \debug_resume: }
\cs_new:Npn \__um_resolve_greek:
{
\clist_map_inline:nn
@@ -3735,7 +3809,7 @@
{
\cs_set:Npn \root ##1 \of ##2
{
- \Uroot \l__um_radical_sqrt_tl { ##1 } { ##2 }
+ \Uroot \c__um_radical_sqrt_tl { ##1 } { ##2 }
}
}
\cs_new:Nn \__um_which_frac:nn
diff --git a/Master/texmf-dist/tex/latex/unicode-math/unicode-math-xetex.sty b/Master/texmf-dist/tex/latex/unicode-math/unicode-math-xetex.sty
index 31c4df21812..d6abb5d6d70 100644
--- a/Master/texmf-dist/tex/latex/unicode-math/unicode-math-xetex.sty
+++ b/Master/texmf-dist/tex/latex/unicode-math/unicode-math-xetex.sty
@@ -43,7 +43,7 @@
%%^^A%% Metadata for the package code, including files and versioning
\ProvidesExplPackage{unicode-math-xetex}
- {2018/02/02} {v0.8l} {Unicode maths in XeLaTeX and LuaLaTeX}
+ {2018/07/29} {v0.8m} {Unicode maths in XeLaTeX and LuaLaTeX}
%%^^A%% um-code-opening.dtx -- part of UNICODE-MATH <wspr.io/unicode-math>
%%^^A%% Assorted initialisation tasks, including some low-level function definitions.
@@ -172,7 +172,7 @@
%%^^A%% um-code-variables.dtx -- part of UNICODE-MATH <wspr.io/unicode-math>
%%^^A%% Declaration of all code-level variables used in the package.
-\bool_new:N \l__um_ot_math_bool
+\bool_new:N \g__um_ot_math_bool
\bool_new:N \g__um_main_font_defined_bool
\bool_new:N \l__um_init_bool
\bool_new:N \l__um_implicit_alph_bool
@@ -208,16 +208,28 @@
\tl_const:Nn \c__um_math_alphabet_name_Greek_tl {Greek,~uppercase}
\tl_const:Nn \c__um_math_alphabet_name_num_tl {Numerals}
\tl_const:Nn \c__um_math_alphabet_name_misc_tl {Misc.}
+\tl_new:N \l__um_style_tl
+\tl_new:N \l__um_family_tl
+\tl_new:N \l__um_alphabet_tl
+\tl_new:N \l__um_fontname_tl
+\tl_new:N \l__um_symfont_label_tl
+\tl_new:N \l__um_remap_style_tl
+\tl_new:N \l__um_fam_two_tl
+\tl_new:N \l__um_fam_three_tl
+\tl_new:N \l__um_curr_named_slot
+\tl_new:N \l__um_tmpa_tl
\tl_new:N \l__um_mathstyle_tl
\tl_new:N \l__um_radicals_tl
\tl_new:N \l__um_nolimits_tl
+\tl_new:N \l__um_trial_family_tl
\tl_new:N \g__um_operator_mathfont_tl
\tl_new:N \g__um_slash_delimiter_usv
+\tl_new:N \g__um_mathparam_settings_tl
\tl_new:N \g__um_mathtable_tl
\tl_new:N \g__um_fontname_tl
\tl_new:N \g__um_mversion_tl
\tl_new:N \g__um_symfont_tl
-\tl_new:N \g__um_font_keyval_tl
+\tl_new:N \l__um_font_keyval_tl
\tl_new:N \g__um_family_tl
\tl_new:N \g__um_style_tl
\tl_new:N \g__um_remap_style_tl
@@ -228,16 +240,20 @@
\clist_new:N \g__um_char_nrange_clist
\clist_new:N \g__um_unknown_keys_clist
\clist_new:N \g__um_alphabet_clist
+\clist_new:N \l__um_mathmap_charints_clist
+\clist_new:N \l__um_unknown_keys_clist
+\clist_new:N \l__um_font_keyval_clist
+\clist_new:N \l__um_alphabet_clist
\clist_new:N \g__um_bad_alpha_clist
-\clist_put_right:Nx \g__um_bad_alpha_clist { \tl_to_str:n {bf} }
-\clist_put_right:Nx \g__um_bad_alpha_clist { \tl_to_str:n {sf} }
-\clist_put_right:Nx \g__um_bad_alpha_clist { \tl_to_str:n {bfsf} }
+\clist_gput_right:Nx \g__um_bad_alpha_clist { \tl_to_str:n {bf} }
+\clist_gput_right:Nx \g__um_bad_alpha_clist { \tl_to_str:n {sf} }
+\clist_gput_right:Nx \g__um_bad_alpha_clist { \tl_to_str:n {bfsf} }
\seq_new:N \l__um_missing_alph_seq
\seq_new:N \g__um_mathalph_seq
\seq_new:N \g__um_char_range_seq
\seq_new:N \g__um_mclass_range_seq
\seq_new:N \g__um_mathclasses_seq
-\seq_set_from_clist:Nn \g__um_mathclasses_seq
+\seq_gset_from_clist:Nn \g__um_mathclasses_seq
{
\mathord,\mathalpha,\mathbin,\mathrel,\mathpunct,
\mathop,
@@ -278,7 +294,7 @@
\@onlypreamble \setmathfontface
\NewDocumentCommand \setoperatorfont {m}
{
- \tl_set:Nn \g__um_operator_mathfont_tl {#1}
+ \tl_gset:Nn \g__um_operator_mathfont_tl {#1}
}
\setoperatorfont{\mathrm}
\NewDocumentCommand \addnolimits {m}
@@ -319,66 +335,66 @@
}
\__um_keys_choices:nn {mathup}
{
- {sym} { \bool_set_false:N \g__um_mathrm_text_bool }
- {text} { \bool_set_true:N \g__um_mathrm_text_bool }
+ {sym} { \bool_gset_false:N \g__um_mathrm_text_bool }
+ {text} { \bool_gset_true:N \g__um_mathrm_text_bool }
}
\__um_keys_choices:nn {mathrm}
{
- {sym} { \bool_set_false:N \g__um_mathrm_text_bool }
- {text} { \bool_set_true:N \g__um_mathrm_text_bool }
+ {sym} { \bool_gset_false:N \g__um_mathrm_text_bool }
+ {text} { \bool_gset_true:N \g__um_mathrm_text_bool }
}
\__um_keys_choices:nn {mathit}
{
- {sym} { \bool_set_false:N \g__um_mathit_text_bool }
- {text} { \bool_set_true:N \g__um_mathit_text_bool }
+ {sym} { \bool_gset_false:N \g__um_mathit_text_bool }
+ {text} { \bool_gset_true:N \g__um_mathit_text_bool }
}
\__um_keys_choices:nn {mathbf}
{
- {sym} { \bool_set_false:N \g__um_mathbf_text_bool }
- {text} { \bool_set_true:N \g__um_mathbf_text_bool }
+ {sym} { \bool_gset_false:N \g__um_mathbf_text_bool }
+ {text} { \bool_gset_true:N \g__um_mathbf_text_bool }
}
\__um_keys_choices:nn {mathsf}
{
- {sym} { \bool_set_false:N \g__um_mathsf_text_bool }
- {text} { \bool_set_true:N \g__um_mathsf_text_bool }
+ {sym} { \bool_gset_false:N \g__um_mathsf_text_bool }
+ {text} { \bool_gset_true:N \g__um_mathsf_text_bool }
}
\__um_keys_choices:nn {mathtt}
{
- {sym} { \bool_set_false:N \g__um_mathtt_text_bool }
- {text} { \bool_set_true:N \g__um_mathtt_text_bool }
+ {sym} { \bool_gset_false:N \g__um_mathtt_text_bool }
+ {text} { \bool_gset_true:N \g__um_mathtt_text_bool }
}
\__um_keys_choices:nn {normal-style}
{
{ISO} {
- \bool_set_false:N \g__um_literal_bool
- \bool_set_false:N \g__um_upGreek_bool
- \bool_set_false:N \g__um_upgreek_bool
- \bool_set_false:N \g__um_upLatin_bool
- \bool_set_false:N \g__um_uplatin_bool
+ \bool_gset_false:N \g__um_literal_bool
+ \bool_gset_false:N \g__um_upGreek_bool
+ \bool_gset_false:N \g__um_upgreek_bool
+ \bool_gset_false:N \g__um_upLatin_bool
+ \bool_gset_false:N \g__um_uplatin_bool
}
{TeX} {
- \bool_set_false:N \g__um_literal_bool
- \bool_set_true:N \g__um_upGreek_bool
- \bool_set_false:N \g__um_upgreek_bool
- \bool_set_false:N \g__um_upLatin_bool
- \bool_set_false:N \g__um_uplatin_bool
+ \bool_gset_false:N \g__um_literal_bool
+ \bool_gset_true:N \g__um_upGreek_bool
+ \bool_gset_false:N \g__um_upgreek_bool
+ \bool_gset_false:N \g__um_upLatin_bool
+ \bool_gset_false:N \g__um_uplatin_bool
}
{french} {
- \bool_set_false:N \g__um_literal_bool
- \bool_set_true:N \g__um_upGreek_bool
- \bool_set_true:N \g__um_upgreek_bool
- \bool_set_true:N \g__um_upLatin_bool
- \bool_set_false:N \g__um_uplatin_bool
+ \bool_gset_false:N \g__um_literal_bool
+ \bool_gset_true:N \g__um_upGreek_bool
+ \bool_gset_true:N \g__um_upgreek_bool
+ \bool_gset_true:N \g__um_upLatin_bool
+ \bool_gset_false:N \g__um_uplatin_bool
}
{upright} {
- \bool_set_false:N \g__um_literal_bool
- \bool_set_true:N \g__um_upGreek_bool
- \bool_set_true:N \g__um_upgreek_bool
- \bool_set_true:N \g__um_upLatin_bool
- \bool_set_true:N \g__um_uplatin_bool
+ \bool_gset_false:N \g__um_literal_bool
+ \bool_gset_true:N \g__um_upGreek_bool
+ \bool_gset_true:N \g__um_upgreek_bool
+ \bool_gset_true:N \g__um_upLatin_bool
+ \bool_gset_true:N \g__um_uplatin_bool
}
{literal} {
- \bool_set_true:N \g__um_literal_bool
+ \bool_gset_true:N \g__um_literal_bool
}
}
\__um_keys_choices:nn {math-style}
@@ -407,74 +423,74 @@
\__um_keys_choices:nn {bold-style}
{
{ISO} {
- \bool_set_false:N \g__um_bfliteral_bool
- \bool_set_false:N \g__um_bfupGreek_bool
- \bool_set_false:N \g__um_bfupgreek_bool
- \bool_set_false:N \g__um_bfupLatin_bool
- \bool_set_false:N \g__um_bfuplatin_bool
+ \bool_gset_false:N \g__um_bfliteral_bool
+ \bool_gset_false:N \g__um_bfupGreek_bool
+ \bool_gset_false:N \g__um_bfupgreek_bool
+ \bool_gset_false:N \g__um_bfupLatin_bool
+ \bool_gset_false:N \g__um_bfuplatin_bool
}
{TeX} {
- \bool_set_false:N \g__um_bfliteral_bool
- \bool_set_true:N \g__um_bfupGreek_bool
- \bool_set_false:N \g__um_bfupgreek_bool
- \bool_set_true:N \g__um_bfupLatin_bool
- \bool_set_true:N \g__um_bfuplatin_bool
+ \bool_gset_false:N \g__um_bfliteral_bool
+ \bool_gset_true:N \g__um_bfupGreek_bool
+ \bool_gset_false:N \g__um_bfupgreek_bool
+ \bool_gset_true:N \g__um_bfupLatin_bool
+ \bool_gset_true:N \g__um_bfuplatin_bool
}
{upright} {
- \bool_set_false:N \g__um_bfliteral_bool
- \bool_set_true:N \g__um_bfupGreek_bool
- \bool_set_true:N \g__um_bfupgreek_bool
- \bool_set_true:N \g__um_bfupLatin_bool
- \bool_set_true:N \g__um_bfuplatin_bool
+ \bool_gset_false:N \g__um_bfliteral_bool
+ \bool_gset_true:N \g__um_bfupGreek_bool
+ \bool_gset_true:N \g__um_bfupgreek_bool
+ \bool_gset_true:N \g__um_bfupLatin_bool
+ \bool_gset_true:N \g__um_bfuplatin_bool
}
{literal} {
- \bool_set_true:N \g__um_bfliteral_bool
+ \bool_gset_true:N \g__um_bfliteral_bool
}
}
\__um_keys_choices:nn {sans-style}
{
- {italic} { \bool_set_false:N \g__um_upsans_bool }
- {upright} { \bool_set_true:N \g__um_upsans_bool }
- {literal} { \bool_set_true:N \g__um_sfliteral_bool }
+ {italic} { \bool_gset_false:N \g__um_upsans_bool }
+ {upright} { \bool_gset_true:N \g__um_upsans_bool }
+ {literal} { \bool_gset_true:N \g__um_sfliteral_bool }
}
\__um_keys_choices:nn {nabla}
{
{upright} {
- \bool_set_false:N \g__um_literal_Nabla_bool
- \bool_set_true:N \g__um_upNabla_bool
+ \bool_gset_false:N \g__um_literal_Nabla_bool
+ \bool_gset_true:N \g__um_upNabla_bool
}
{italic} {
- \bool_set_false:N \g__um_literal_Nabla_bool
- \bool_set_false:N \g__um_upNabla_bool
+ \bool_gset_false:N \g__um_literal_Nabla_bool
+ \bool_gset_false:N \g__um_upNabla_bool
}
{literal} {
- \bool_set_true:N \g__um_literal_Nabla_bool
+ \bool_gset_true:N \g__um_literal_Nabla_bool
}
}
\__um_keys_choices:nn {partial}
{
{upright} {
- \bool_set_false:N \g__um_literal_partial_bool
- \bool_set_true:N \g__um_uppartial_bool
+ \bool_gset_false:N \g__um_literal_partial_bool
+ \bool_gset_true:N \g__um_uppartial_bool
}
{italic} {
- \bool_set_false:N \g__um_literal_partial_bool
- \bool_set_false:N \g__um_uppartial_bool
+ \bool_gset_false:N \g__um_literal_partial_bool
+ \bool_gset_false:N \g__um_uppartial_bool
}
{literal} {
- \bool_set_true:N \g__um_literal_partial_bool
+ \bool_gset_true:N \g__um_literal_partial_bool
}
}
\__um_keys_choices:nn {colon}
{
- {literal} { \bool_set_true:N \g__um_literal_colon_bool }
- {TeX} { \bool_set_false:N \g__um_literal_colon_bool }
+ {literal} { \bool_gset_true:N \g__um_literal_colon_bool }
+ {TeX} { \bool_gset_false:N \g__um_literal_colon_bool }
}
\__um_keys_choices:nn {slash-delimiter}
{
- {ascii} { \tl_set:Nn \g__um_slash_delimiter_usv {"002F} }
- {frac} { \tl_set:Nn \g__um_slash_delimiter_usv {"2044} }
- {div} { \tl_set:Nn \g__um_slash_delimiter_usv {"2215} }
+ {ascii} { \tl_gset:Nn \g__um_slash_delimiter_usv {"002F} }
+ {frac} { \tl_gset:Nn \g__um_slash_delimiter_usv {"2044} }
+ {div} { \tl_gset:Nn \g__um_slash_delimiter_usv {"2215} }
}
\__um_keys_choices:nn {active-frac}
{
@@ -886,7 +902,7 @@
\exp_not:n { \__um_sym:nnn {##1} {##2} {##3} }
}
}
-\tl_set_from_file_x:Nnn \g__um_mathtable_tl {\__um_symbol_setup:} {unicode-math-table.tex}
+\tl_gset_from_file_x:Nnn \g__um_mathtable_tl {\__um_symbol_setup:} {unicode-math-table.tex}
\cs_new:Nn \__um_input_math_symbol_table: {\g__um_mathtable_tl}
\AtBeginDocument{\__um_define_math_chars:}
\cs_new:Nn \__um_define_math_chars:
@@ -967,9 +983,19 @@
{
\tl_if_in:NnTF \l__um_radicals_tl {#2}
{
- \cs_gset_protected_nopar:cpx {\cs_to_str:N #2 sign}
- { \__um_radical:nn {#1} {#3} }
- \tl_set:cn {l__um_radical_\cs_to_str:N #2_tl} {\use:c{sym #1}~ #3}
+ \cs_if_exist:NF #2
+ {
+ %% todo: check if the check is necessary
+ \cs_gset_protected_nopar:Npx #2 { \exp_not:c { \cs_to_str:N #2 sign } }
+ }
+ \cs_gset_protected_nopar:cpx { \cs_to_str:N #2 sign }
+ {
+ \__um_radical:nn {#1} {#3}
+ }
+ \tl_if_exist:cF {c__um_radical_\cs_to_str:N #2_tl}
+ {
+ \tl_const:cn {c__um_radical_\cs_to_str:N #2_tl} {\use:c{sym #1}~ #3}
+ }
}
{
\__um_set_delcode:nnn {#1} {#3} {#3}
@@ -1037,22 +1063,22 @@
% integrate with fontspec's \setmathrm etc:
\tl_case:Nn #1
{
- \mathrm { \cs_set_eq:NN \g__fontspec_mathrm_tl \l__um_tmpa_tl }
- \mathsf { \cs_set_eq:NN \g__fontspec_mathsf_tl \l__um_tmpa_tl }
- \mathtt { \cs_set_eq:NN \g__fontspec_mathtt_tl \l__um_tmpa_tl }
+ \mathrm { \cs_gset_eq:NN \g__fontspec_mathrm_tl \l__um_tmpa_tl }
+ \mathsf { \cs_gset_eq:NN \g__fontspec_mathsf_tl \l__um_tmpa_tl }
+ \mathtt { \cs_gset_eq:NN \g__fontspec_mathtt_tl \l__um_tmpa_tl }
}
}
\cs_set:Npn \use@mathgroup #1 #2
{
- \__um_group_begin:
+ \math@bgroup
\cs_if_eq:cNF {M@\f@encoding} #1 {#1}
- \__um_switchto_literal:
+ \__um_switch_to:n {literal}
\__um_mathgroup_set:n {#2}
- \__um_group_end:n
+ \math@egroup
}
\cs_set:Npn \operator@font
{
- \__um_switchto_literal:
+ \__um_switch_to:n {literal}
\__um_fontswitch:n { \g__um_operator_mathfont_tl }
}
\cs_set:Nn \__um_fontswitch:n
@@ -1182,7 +1208,7 @@
\cs_new:Nn \__um_init:n
{
\tl_set:Nn \l__um_fontname_tl {#1}
- \bool_set_true:N \l__um_ot_math_bool
+ \bool_gset_true:N \g__um_ot_math_bool
\tl_set:Nn \l__um_mversion_tl {normal}
\tl_set:Nn \l__um_symfont_label_tl {operators}
@@ -1229,8 +1255,8 @@
\exp_last_unbraced:NNo \__um_fontface_gset_eq:NN \g__um_trial_font \font@name
\fontspec_if_script:nF {math}
{
- \bool_gset_false:N \l__um_ot_math_bool
- \bool_gset_false:N \l__um_init_bool
+ \bool_gset_false:N \g__um_ot_math_bool
+ \bool_gset_false:N \g__um_init_bool
}
\group_end:
@@ -1276,14 +1302,14 @@
}
\fontspec_if_script:nF {math}
{
- \bool_gset_false:N \l__um_ot_math_bool
- \bool_gset_false:N \l__um_init_bool
+ \bool_gset_false:N \g__um_ot_math_bool
+ \bool_gset_false:N \g__um_init_bool
}
\group_end:
}
-\tl_set:Nn \g__um_main_font_cmd_tl { \l__um_font }
-\tl_set:Nn \g__um_sqrt_font_cmd_tl { \l__um_font }
-\tl_set:Nn \g__um_prime_font_cmd_tl { \l__um_font }
+\tl_gset:Nn \g__um_main_font_cmd_tl { \l__um_font }
+\tl_gset:Nn \g__um_sqrt_font_cmd_tl { \l__um_font }
+\tl_gset:Nn \g__um_prime_font_cmd_tl { \l__um_font }
\cs_new:Nn \__um_setup_math_fam:
{
\cs_if_exist:cF { sym \l__um_symfont_label_tl }
@@ -1471,7 +1497,7 @@
\scpolint\npolint\pointint\sqint\intlarhk\intx
\intcap\intcup\upint\lowint
}
-\tl_set:Nn \l__um_radicals_tl {\sqrt \longdivision}
+\tl_set:Nn \l__um_radicals_tl {\sqrt \longdivision \cuberoot \fourthroot}
%%^^A%% um-code-fontopt.dtx -- part of UNICODE-MATH <wspr.io/unicode-math>
%%^^A%% Keyval for `\setmathfont`
@@ -1514,7 +1540,7 @@
}
\cs_new:Nn \__um_range_init:
{
- \int_incr:N \g__um_fam_int
+ \int_gincr:N \g__um_fam_int
\tl_set:Nx \l__um_symfont_label_tl {__um_fam\int_use:N\g__um_fam_int}
\cs_set_eq:NN \__um_sym:nnn \__um_process_symbol_parse:nnn
\cs_set_eq:NN \__um_remap_symbol:nnn \__um_remap_symbol_parse:nnn
@@ -2057,7 +2083,7 @@
}
\cs_new:Nn \__um_mathmap_noparse:nnn
{
- \tl_put_right:cx { __um_switchto_#1: }
+ \tl_gput_right:cx { g__um_switchto_#1_tl }
{
\__um_set_mathcode:nnnn {#2} {\mathalpha} {\l__um_symfont_label_tl} {#3}
}
@@ -2153,7 +2179,7 @@
\mode_if_math:F { \exp_args:Nc \non@alpherr {sym#1} }
\tl_set:Nn \l__um_mathstyle_tl {#1}
}
- \exp_not:c {__um_switchto_#1:}
+ \__um_switch_to:n {#1}
\__um_mathgroup_set:n {-1}
\__um_group_end:n
}
@@ -2161,7 +2187,12 @@
\cs_set:Nn \__um_init_alphabet:n
{
\__um_log:nx {alph-initialise} {#1}
- \cs_set_eq:cN {__um_switchto_#1:} \prg_do_nothing:
+ \tl_gclear_new:c {g__um_switchto_#1_tl}
+ \cs_set_protected:cpn {__um_switchto_#1:} { \tl_use:c {g__um_switchto_#1_tl} }
+ }
+\cs_new_protected:Nn \__um_switch_to:n
+ {
+ \tl_use:c {g__um_switchto_#1_tl}
}
\cs_new:Nn \__um_default_mathalph:nnn
{
@@ -3410,13 +3441,56 @@
\__um_setup_active_superscript:nn {"207C} {=}
\__um_setup_active_superscript:nn {"207D} {(}
\__um_setup_active_superscript:nn {"207E} {)}
-\__um_setup_active_superscript:nn {"2071} {i}
-\__um_setup_active_superscript:nn {"207F} {n}
+\__um_setup_active_superscript:nn {"1D2C} {A}
+\__um_setup_active_superscript:nn {"1D2E} {B}
+\__um_setup_active_superscript:nn {"1D30} {D}
+\__um_setup_active_superscript:nn {"1D31} {E}
+\__um_setup_active_superscript:nn {"1D33} {G}
+\__um_setup_active_superscript:nn {"1D34} {H}
+\__um_setup_active_superscript:nn {"1D35} {I}
+\__um_setup_active_superscript:nn {"1D36} {J}
+\__um_setup_active_superscript:nn {"1D37} {K}
+\__um_setup_active_superscript:nn {"1D38} {L}
+\__um_setup_active_superscript:nn {"1D39} {M}
+\__um_setup_active_superscript:nn {"1D3A} {N}
+\__um_setup_active_superscript:nn {"1D3C} {O}
+\__um_setup_active_superscript:nn {"1D3E} {P}
+\__um_setup_active_superscript:nn {"1D3F} {R}
+\__um_setup_active_superscript:nn {"1D40} {T}
+\__um_setup_active_superscript:nn {"1D41} {U}
+\__um_setup_active_superscript:nn {"2C7D} {V}
+\__um_setup_active_superscript:nn {"1D42} {W}
+\__um_setup_active_superscript:nn {"1D43} {a}
+\__um_setup_active_superscript:nn {"1D47} {b}
+\__um_setup_active_superscript:nn {"1D9C} {c}
+\__um_setup_active_superscript:nn {"1D48} {d}
+\__um_setup_active_superscript:nn {"1D49} {e}
+\__um_setup_active_superscript:nn {"1DA0} {f}
+\__um_setup_active_superscript:nn {"1D4D} {g}
\__um_setup_active_superscript:nn {"02B0} {h}
+\__um_setup_active_superscript:nn {"2071} {i}
\__um_setup_active_superscript:nn {"02B2} {j}
+\__um_setup_active_superscript:nn {"1D4F} {k}
+\__um_setup_active_superscript:nn {"02E1} {l}
+\__um_setup_active_superscript:nn {"1D50} {m}
+\__um_setup_active_superscript:nn {"207F} {n}
+\__um_setup_active_superscript:nn {"1D52} {o}
+\__um_setup_active_superscript:nn {"1D56} {p}
\__um_setup_active_superscript:nn {"02B3} {r}
+\__um_setup_active_superscript:nn {"02E2} {s}
+\__um_setup_active_superscript:nn {"1D57} {t}
+\__um_setup_active_superscript:nn {"1D58} {u}
+\__um_setup_active_superscript:nn {"1D5B} {v}
\__um_setup_active_superscript:nn {"02B7} {w}
+\__um_setup_active_superscript:nn {"02E3} {x}
\__um_setup_active_superscript:nn {"02B8} {y}
+\__um_setup_active_superscript:nn {"1DBB} {z}
+\__um_setup_active_superscript:nn {"1D5D} {\beta}
+\__um_setup_active_superscript:nn {"1D5E} {\gamma}
+\__um_setup_active_superscript:nn {"1D5F} {\delta}
+\__um_setup_active_superscript:nn {"1D60} {\phi}
+\__um_setup_active_superscript:nn {"1D61} {\chi}
+\__um_setup_active_superscript:nn {"1DBF} {\theta}
\__um_setup_active_subscript:nn {"2080} {0}
\__um_setup_active_subscript:nn {"2081} {1}
\__um_setup_active_subscript:nn {"2082} {2}
@@ -3487,7 +3561,7 @@
}
\AtEndOfPackageFile * {url}
{
- \tl_put_left:Nn \Url@FormatString { \__um_switchto_up: }
+ \tl_put_left:Nn \Url@FormatString { \__um_switch_to:n {up} }
\tl_put_right:Nn \UrlSpecials
{
\do \` { \mathchar`\` }
@@ -3695,7 +3769,7 @@
%%^^A%% um-code-epilogue.dtx -- part of UNICODE-MATH <wspr.io/unicode-math>
%%^^A%% Assorted definitions to close up.
-\AtBeginDocument { \__um_resolve_greek: }
+\AtBeginDocument { \debug_suspend: \__um_resolve_greek: \debug_resume: }
\cs_new:Npn \__um_resolve_greek:
{
\clist_map_inline:nn
diff --git a/Master/texmf-dist/tex/latex/unicode-math/unicode-math.sty b/Master/texmf-dist/tex/latex/unicode-math/unicode-math.sty
index 1d111d77bd6..8f9e1fea54b 100644
--- a/Master/texmf-dist/tex/latex/unicode-math/unicode-math.sty
+++ b/Master/texmf-dist/tex/latex/unicode-math/unicode-math.sty
@@ -24,7 +24,7 @@
\RequirePackage{expl3}
\ProvidesExplPackage{unicode-math}
- {2018/02/02} {v0.8l} {Unicode maths in XeLaTeX and LuaLaTeX}
+ {2018/07/29} {v0.8m} {Unicode maths in XeLaTeX and LuaLaTeX}
\sys_if_engine_luatex:T { \RequirePackageWithOptions{unicode-math-luatex} }
\sys_if_engine_xetex:T { \RequirePackageWithOptions{unicode-math-xetex} }
\sys_if_engine_pdftex:T