diff options
Diffstat (limited to 'source/luametatex/source/lua')
-rw-r--r-- | source/luametatex/source/lua/lmtinterface.h | 9 | ||||
-rw-r--r-- | source/luametatex/source/lua/lmttexlib.c | 15 |
2 files changed, 23 insertions, 1 deletions
diff --git a/source/luametatex/source/lua/lmtinterface.h b/source/luametatex/source/lua/lmtinterface.h index d98b55294..2636ea2d7 100644 --- a/source/luametatex/source/lua/lmtinterface.h +++ b/source/luametatex/source/lua/lmtinterface.h @@ -405,7 +405,13 @@ extern lmt_interface_info lmt_interface; # define lmt_name_of_math_indirect(n) lmt_interface.math_indirect_values [n].name # define lmt_name_of_field_type(n) lmt_interface.field_type_values [n].name -/*tex This list will be made smaller because not all values need the boost. */ +/*tex + This list will be made smaller because not all values need the boost. Before we define the + lot we undefine some possibly conflicting snippets. Actually, we don't really define the + key's here but assemble more complex references to registry indices and variables. +*/ + +# undef quad /* CYGWIN */ # define declare_shared_lua_keys(L) \ /* */\ @@ -872,6 +878,7 @@ make_lua_key(L, mathcontrol);\ make_lua_key(L, mathdir);\ make_lua_key(L, mathfence);\ make_lua_key(L, mathfraction);\ +make_lua_key(L, mathkern);\ make_lua_key(L, mathkerns);\ make_lua_key(L, MathLeading);\ make_lua_key(L, mathoperator);\ diff --git a/source/luametatex/source/lua/lmttexlib.c b/source/luametatex/source/lua/lmttexlib.c index 0ce5bfd08..e87a88292 100644 --- a/source/luametatex/source/lua/lmttexlib.c +++ b/source/luametatex/source/lua/lmttexlib.c @@ -1037,6 +1037,16 @@ static const char *texlib_aux_scan_dimen_part(lua_State * L, const char *ss, int numerator = 49838; denominator = 7739; goto CONVERSION; + } else if (strncmp(str, "es", 2) == 0) { + str += 2; + numerator = 9176; + denominator = 129; + goto CONVERSION; + } else if (strncmp(str, "ts", 2) == 0) { + str += 2; + numerator = 4588; + denominator = 645; + goto CONVERSION; } else if (strncmp(str, "em", 2) == 0) { str += 2; special = tex_get_font_em_width(cur_font_par); @@ -1045,6 +1055,11 @@ static const char *texlib_aux_scan_dimen_part(lua_State * L, const char *ss, int str += 2; special = tex_get_font_ex_height(cur_font_par); goto SPECIAL; + } else if (strncmp(str, "eu", 2) == 0) { + str += 2; + numerator = 9176 * eu_factor_par; + denominator = 129 * 10; + goto CONVERSION; } else if (strncmp(str, "px", 2) == 0) { str += 2; special = px_dimen_par; |