summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source/latex/unicode-math/um-code-main.dtx
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/source/latex/unicode-math/um-code-main.dtx
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/source/latex/unicode-math/um-code-main.dtx')
-rw-r--r--Master/texmf-dist/source/latex/unicode-math/um-code-main.dtx125
1 files changed, 67 insertions, 58 deletions
diff --git a/Master/texmf-dist/source/latex/unicode-math/um-code-main.dtx b/Master/texmf-dist/source/latex/unicode-math/um-code-main.dtx
index e57fbf45d15..907556283fb 100644
--- a/Master/texmf-dist/source/latex/unicode-math/um-code-main.dtx
+++ b/Master/texmf-dist/source/latex/unicode-math/um-code-main.dtx
@@ -107,7 +107,7 @@
\cs_new:Nn \@@_init:n
{
\tl_set:Nn \l_@@_fontname_tl {#1}
- \bool_set_true:N \l_@@_ot_math_bool
+ \bool_gset_true:N \g_@@_ot_math_bool
\tl_set:Nn \l_@@_mversion_tl {normal}
\tl_set:Nn \l_@@_symfont_label_tl {operators}
@@ -169,8 +169,8 @@
\exp_last_unbraced:NNo \@@_fontface_gset_eq:NN \g_@@_trial_font \font@name
\fontspec_if_script:nF {math}
{
- \bool_gset_false:N \l_@@_ot_math_bool
- \bool_gset_false:N \l_@@_init_bool
+ \bool_gset_false:N \g_@@_ot_math_bool
+ \bool_gset_false:N \g_@@_init_bool
}
\group_end:
@@ -223,8 +223,8 @@
}
\fontspec_if_script:nF {math}
{
- \bool_gset_false:N \l_@@_ot_math_bool
- \bool_gset_false:N \l_@@_init_bool
+ \bool_gset_false:N \g_@@_ot_math_bool
+ \bool_gset_false:N \g_@@_init_bool
}
\group_end:
}
@@ -232,12 +232,16 @@
% \end{macro}
%
% \begin{macrocode}
-\tl_set:Nn \g_@@_main_font_cmd_tl { \l_@@_font }
-\tl_set:Nn \g_@@_sqrt_font_cmd_tl { \l_@@_font }
-\tl_set:Nn \g_@@_prime_font_cmd_tl { \l_@@_font }
+\tl_gset:Nn \g_@@_main_font_cmd_tl { \l_@@_font }
+\tl_gset:Nn \g_@@_sqrt_font_cmd_tl { \l_@@_font }
+\tl_gset:Nn \g_@@_prime_font_cmd_tl { \l_@@_font }
% \end{macrocode}
%
% \begin{macro}{\@@_luatex_copy_fontdimens:}
+% This performs a once-off copy of the LuaTeX math params into XeTeX-like fontdimens.
+% While the list is somewhat comprehensive, these are really only for backwards compatibility
+% and to allow a little shared code. They shouldn't be relied upon, since LuaTeX users
+% might change the math params, which wouldn't be reflected in the fontdimens.
% \begin{macrocode}
%<*LU>
\cs_new_protected:Nn \@@_luatex_copy_fontdimens:
@@ -586,7 +590,7 @@
% We organise radicals in the same way as nolimits-operators.
% (\cs{cuberoot} and \cs{fourthroot}, don't seem to behave as proper radicals.)
% \begin{macrocode}
-\tl_set:Nn \l_@@_radicals_tl {\sqrt \longdivision}
+\tl_set:Nn \l_@@_radicals_tl {\sqrt \longdivision \cuberoot \fourthroot}
% \end{macrocode}
% \end{macro}
%
@@ -597,21 +601,26 @@
% \end{macrocode}
%
% \begin{macro}{\@@_mathparam_restore:}
+% \cs{glb@settings} might not be necessary but is included for symmetry.
+% If the maths font were to be loaded later it would clobber our mathparam settings, so
+% this seems like a sensible move.
% \begin{macrocode}
\cs_set:Nn \@@_mathparam_restore:
{
- \check@mathfonts
- \tl_use:N \g_@@_mathparam_store_tl
+ \glb@settings
+ \tl_use:N \g_@@_mathparam_settings_tl
}
% \end{macrocode}
% \end{macro}
%
% \begin{macro}{\@@_mathparam_store:}
+% \cs{glb@settings} is called to force maths fonts loading \emph{now} so the mathparams
+% are up-to-date.
% \begin{macrocode}
\cs_set:Nn \@@_mathparam_store:
{
- \check@mathfonts
- \tl_gset:Nx \g_@@_mathparam_store_tl
+ \glb@settings
+ \tl_gset:Nx \g_@@_mathparam_settings_tl
{
\@@_mathparam_store_aux:N \displaystyle
\@@_mathparam_store_aux:N \textstyle
@@ -624,51 +633,51 @@
% \begin{macrocode}
\cs_set:Nn \@@_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:
}
% \end{macrocode}
% \end{macro}