summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source/latex/unicode-math/um-code-variables.dtx
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/source/latex/unicode-math/um-code-variables.dtx')
-rw-r--r--Master/texmf-dist/source/latex/unicode-math/um-code-variables.dtx103
1 files changed, 71 insertions, 32 deletions
diff --git a/Master/texmf-dist/source/latex/unicode-math/um-code-variables.dtx b/Master/texmf-dist/source/latex/unicode-math/um-code-variables.dtx
index 1f4a5c70fb4..082a38bb3cb 100644
--- a/Master/texmf-dist/source/latex/unicode-math/um-code-variables.dtx
+++ b/Master/texmf-dist/source/latex/unicode-math/um-code-variables.dtx
@@ -1,4 +1,5 @@
%%^^A%% um-code-variables.dtx -- part of UNICODE-MATH <wspr.io/unicode-math>
+%%^^A%% Declaration of all code-level variables used in the package.
% \section{Variable initialisation}
%
@@ -7,7 +8,7 @@
% \end{macrocode}
%
%
-% \paragraph{Conditionals}
+% \subsection{bool}
%
% True if using a proper OpenType font with unicode maths
% \begin{macrocode}
@@ -17,7 +18,6 @@
% \begin{macrocode}
\bool_new:N \l_@@_init_bool
\bool_new:N \l_@@_implicit_alph_bool
-\bool_new:N \g_@@_mainfont_already_set_bool
% \end{macrocode}
% For \opt{math-style}:
% \begin{macrocode}
@@ -55,11 +55,16 @@
\bool_new:N \g_@@_mathtt_text_bool
% \end{macrocode}
%
-% \paragraph{Variables}
+% \subsection{int}
+%
% \begin{macrocode}
\int_new:N \g_@@_fam_int
+\int_new:N \g_@@_fonts_used_int
+\int_new:N \l_@@_primecount_int
% \end{macrocode}
%
+% \subsection{tl}
+%
% For displaying in warning messages, etc.:
% \begin{macrocode}
\tl_const:Nn \c_@@_math_alphabet_name_latin_tl {Latin,~lowercase}
@@ -82,29 +87,56 @@
% \end{macrocode}
%
% \begin{macrocode}
-\seq_new:N \l_@@_missing_alph_seq
-\seq_new:N \l_@@_mathalph_seq
-\seq_new:N \l_@@_char_range_seq
-\seq_new:N \l_@@_mclass_range_seq
-\seq_new:N \l_@@_cmd_range_seq
+\tl_new:N \g_@@_slash_delimiter_usv
+\tl_new:N \g_@@_mathtable_tl
+\tl_new:N \g_@@_fontname_tl
+\tl_new:N \g_@@_mversion_tl
+\tl_new:N \g_@@_symfont_tl
+\tl_new:N \g_@@_font_keyval_tl
+\tl_new:N \g_@@_family_tl
+\tl_new:N \g_@@_style_tl
+\tl_new:N \g_@@_remap_style_tl
+\tl_new:N \l_@@_not_token_name_tl
+\tl_new:N \g_@@_curr_font_cmd_tl
+\tl_new:N \g_@@_sqrt_font_cmd_tl
+\tl_new:N \g_@@_prime_font_cmd_tl
% \end{macrocode}
%
-% \begin{macro}{\g_@@_alphabets_seq}
-% Each of math `style' (bfup, sfit, etc.) usually contains one or more `alphabets', which are currently |latin|, |Latin|, |greek|, |Greek|, |num|, and |misc|, although there's an implicit potential for more.
-% |misc| is not included in the official list to avoid checking code.
+% \begin{macro}{\g_@@_mathparam_store_tl}
+% Used to store and restore the math parameters used in Lua\TeX.
+% This is done to `save' the values of the \emph{first} (or main)
+% maths font loaded, rather than (as per Lua\TeX\ defaults) the last.
% \begin{macrocode}
-\clist_new:N \g_@@_alphabets_seq
-\clist_set:Nn \g_@@_alphabets_seq { latin, Latin, greek, Greek, num }
+%<*LU>
+\tl_new:N \g_@@_mathparam_store_tl
+%</LU>
% \end{macrocode}
% \end{macro}
%
+% \subsection{clist}
+%
% \begin{macrocode}
-\clist_new:N \g_@@_named_ranges_clist
\clist_new:N \g_@@_char_nrange_clist
\clist_new:N \g_@@_unknown_keys_clist
\clist_new:N \g_@@_alphabet_clist
% \end{macrocode}
%
+% \begin{macrocode}
+\clist_new:N \g_@@_bad_alpha_clist
+\clist_put_right:Nx \g_@@_bad_alpha_clist { \tl_to_str:n {bf} }
+\clist_put_right:Nx \g_@@_bad_alpha_clist { \tl_to_str:n {sf} }
+\clist_put_right:Nx \g_@@_bad_alpha_clist { \tl_to_str:n {bfsf} }
+% \end{macrocode}
+%
+% \subsection{seq}
+%
+% \begin{macrocode}
+\seq_new:N \l_@@_missing_alph_seq
+\seq_new:N \g_@@_mathalph_seq
+\seq_new:N \g_@@_char_range_seq
+\seq_new:N \g_@@_mclass_range_seq
+% \end{macrocode}
+%
% \begin{macro}{\g_@@_mathclasses_seq}
% Every math class.
% \begin{macrocode}
@@ -115,12 +147,11 @@
\mathop,
\mathopen,\mathclose,
\mathfence,\mathover,\mathunder,
- \mathaccent,\mathbotaccent,\mathaccentwide,\mathbotaccentwide
+ \mathaccent,\mathaccentoverlay,\mathbotaccent,\mathaccentwide,\mathbotaccentwide
}
% \end{macrocode}
% \end{macro}
%
-
% \begin{macro}{\g_@@_default_mathalph_seq}
% This sequence stores the alphabets in each math style.
% \begin{macrocode}
@@ -129,37 +160,45 @@
% \end{macro}
%
% \begin{macro}{\g_@@_mathstyles_seq}
-% This is every `named range' and every `math style' known to \pkg{unicode-math}.
+% This is every `math style' known to \pkg{unicode-math}.
% A named range is such as "bfit" and "sfit", which are also math styles (with \cs{symbfit} and \cs{symsfit}).
% `Mathstyles' are a superset of named ranges and also include commands such as \cs{symbf} and \cs{symsf}.
%
% N.B. for parsing purposes `named ranges' are defined as strings!
% \begin{macrocode}
-\seq_new:N \g_@@_named_ranges_seq
\seq_new:N \g_@@_mathstyles_seq
% \end{macrocode}
% \end{macro}
%
+% \subsection{prop}
+%
% \begin{macrocode}
-\muskip_new:N \g_@@_primekern_muskip
-\muskip_gset:Nn \g_@@_primekern_muskip { -\thinmuskip/2 }% arbitrary
-\int_new:N \l_@@_primecount_int
\prop_new:N \g_@@_supers_prop
\prop_new:N \g_@@_subs_prop
-\tl_new:N \l_not_token_name_tl
% \end{macrocode}
%
+% \subsection{muskip}
+%
% \begin{macrocode}
-\tl_new:N \g_@@_slash_delimiter_usv
-\tl_new:N \g_@@_mathtable_tl
-\tl_new:N \g_@@_fontname_tl
-\tl_new:N \g_@@_mversion_tl
-\tl_new:N \g_@@_symfont_tl
-\tl_new:N \g_@@_font_keyval_tl
-\tl_new:N \g_@@_family_tl
-\tl_new:N \g_@@_style_tl
-\tl_new:N \g_@@_remap_style_tl
+\muskip_new:N \g_@@_primekern_muskip
+\muskip_gset:Nn \g_@@_primekern_muskip { -\thinmuskip/2 }% arbitrary
+% \end{macrocode}
+%
+% \subsection{fp}
+%
+% \begin{macrocode}
+\fp_new:N \g_@@_size_tfsf_fp
+\fp_new:N \g_@@_size_sfssf_fp
+% \end{macrocode}
+%
+% \subsection{quark}
+%
+% \begin{macro}{\q_unicode_math}
+% Used as a flag within control sequences to check they're recognised by the package.
+% \begin{macrocode}
+\quark_new:N \q_unicode_math
% \end{macrocode}
+% \end{macro}
%
% \begin{macrocode}
%</package>
@@ -176,7 +215,7 @@
% the conditions of the LaTeX Project Public License, version 1.3c or higher
% (your choice): <http://www.latex-project.org/lppl/>.
% ------------------------------------------------
-% Copyright 2006-2017 Will Robertson, LPPL "maintainer"
+% Copyright 2006-2018 Will Robertson, LPPL "maintainer"
% Copyright 2010-2017 Philipp Stephani
% Copyright 2011-2017 Joseph Wright
% Copyright 2012-2015 Khaled Hosny