local has_attr = node.has_attribute
local set_attr = node.set_attribute
local unset_attr = node.unset_attribute
+local node_type = node.type
local node_remove = node.remove
local node_next = node.next
local node_free = node.free
local id_glyph = node.id('glyph')
+local id_math = node.id('math')
local id_whatsit = node.id('whatsit')
local sid_user = node.subtype('user_defined')
-- This is used in jfmglue.lua.
local function suppress_hyphenate_ja(head)
- for p in node.traverse_id(id_glyph, head) do
- local i = has_attr(p, attr_icflag) or 0
- if i==0 and ltjc.is_ucs_in_japanese_char(p) then
- local v = has_attr(p, attr_curjfnt)
- if v then
- p.font = v
+ local non_math = true
+ for p in node.traverse(head) do
+ if p.id == id_glyph and non_math then
+ local i = has_attr(p, attr_icflag) or 0
+ if i==0 and ltjc.is_ucs_in_japanese_char(p) then
+ local v = has_attr(p, attr_curjfnt)
+ if v then
+ p.font = v
+ end
+ v = has_attr(p, attr_ykblshift)
+ if v then
+ set_attr(p, attr_yablshift, v)
+ else
+ unset_attr(p, attr_yablshift)
+ end
+ if p.subtype%2==1 then p.subtype = p.subtype - 1 end
+ -- p.lang=lang_ja
end
- v = has_attr(p, attr_ykblshift)
- if v then
- set_attr(p, attr_yablshift, v)
- else
- unset_attr(p, attr_yablshift)
- end
- if p.subtype%2==1 then p.subtype = p.subtype - 1 end
- -- p.lang=lang_ja
+ elseif p.id == id_math then
+ non_math = (p.subtype ~= 0)
end
end
lang.hyphenate(head)
\mathchar@type#2 \csname sym#3\endcsname \int_eval:n {#4} \scan_stop:
\directlua{luatexja.math.is_math_letters[\int_eval:n {#4}]=true}
}
+\group_begin:
+ \char_set_catcode_other:N \^
+ \gdef\q{hoge}\gdef\r{piyo}
+ \cs_gset:Npn \um_cs_set_eq_active_char:Nw #1 = "#2 \q_nil {%"
+ \tl_set:Nn \l_tmpa_tl {\ifmmode\char"#2\else\ltjalchar"#2\relax\fi}
+ \cs_gset_eq:NN #1 \l_tmpa_tl
+ }
+\group_end:
+
+\ExplSyntaxOff
\endinput
=\frac16\cdot \pi\times\pi,\qquad a_1,\dots,a_n.
\]
+$
+ \frac1{1^2}+\frac1{2^2}+\cdots=
+\sum_{n=1}^\infty \frac1{n^s\zeta}=\zeta(2)=\frac{\pi^2}{6}
+=\frac16\cdot \pi\times\pi,\qquad a_1,\dots,a_n. \hbar
+$
+
+{\tt\meaning\sum}
+
-○×○漢×漢\times え\ltjjachar`\“え\ltjalchar`\“え\textquotedblleft え“え←数式外では和文文字扱いのままになっている.
+○×○漢\ltjjachar`\×漢\ltjalchar`\×漢\times 漢
+え\ltjjachar`\“え\ltjalchar`\“え\textquotedblleft え“え
+←数式外では和文文字扱いのままになっている.
\end{document}