2 %% luatexja-latex-fonts.sty: derived from plfonts.dtx in pLaTeX.
6 \let\ck@encoding\@empty
7 % LuaTeX-ja uses JY3 and JT3 encodings.
8 \def\cy@encoding{JY3}\def\ct@encoding{JT3}
14 \def\curr@kfontshape{\k@encoding/\k@family/\k@series/\k@shape}
15 \def\rel@fontshape{\f@encoding/\f@family/\f@series/\f@shape}
29 \def\in@@##1<#1>##2##3\in@@{%
30 \ifx\in@##2\in@false\else\in@true\fi}%
32 \def\fam@elt{\noexpand\fam@elt}
33 \def\enc@elt{\noexpand\enc@elt}
34 \def\fenc@list{\enc@elt<OML>\enc@elt<T1>\enc@elt<OT1>\enc@elt<OMS>%
35 \enc@elt<OMX>\enc@elt<TS1>\enc@elt<U>}
37 \let\kyenc@list\@empty
38 \let\ktenc@list\@empty
39 \def\kfam@list{\fam@elt<mc>\fam@elt<gt>}
40 \def\ffam@list{\fam@elt<cmr>\fam@elt<cmss>\fam@elt<cmtt>%
41 \fam@elt<cmm>\fam@elt<cmsy>\fam@elt<cmex>}
42 \let\notkfam@list\ffam@list
43 \let\notffam@list\kfam@list
48 \ifmmode\copy\strutbox\else\unhcopy\strutbox\fi
50 % \ifmmode\copy\tstrutbox\else\unhcopy\tstrutbox\fi
53 \def\tstrut{\relax\hbox{\tate
54 \ifmmode\copy\tstrutbox\else\unhcopy\tstrutbox\fi}}
55 \def\zstrut{\relax\hbox{\tate
56 \ifmmode\copy\zstrutbox\else\unhcopy\zstrutbox\fi}}
57 \def\DeclareFontEncoding{%
61 \DeclareFontEncoding@}
62 \def\DeclareFontEncoding@#1#2#3{%
64 \ifx\csname T@#1\endcsname\relax
65 \def\cdp@elt{\noexpand\cdp@elt}%
66 \xdef\cdp@list{\cdp@list\cdp@elt{#1}%
67 {\default@family}{\default@series}%
69 \expandafter\let\csname#1-cmd\endcsname\@changed@cmd
70 \def\enc@elt{\noexpand\enc@elt}%
71 \xdef\fenc@list{\fenc@list\enc@elt<#1>}%
73 \@font@info{Redeclaring font encoding #1}%
75 \global\@namedef{T@#1}{#2}%
76 \global\@namedef{M@#1}{\default@M#3}%
77 \xdef\LastDeclaredEncoding{#1}%
79 \def\DeclareKanjiEncoding#1{%
81 The \string\DeclareKanjiEncoding\space is obsoleted command. Please use
83 the \string\DeclareTateKanjiEncoding\space for `Tate-kumi' encoding, and
85 the \string\DeclareYokoKanjiEncoding\space for `Yoko-kumi' encoding.
87 I treat the `#1' encoding as `Yoko-kumi'.}
88 \DeclareYokoKanjiEncoding{#1}%
90 \def\DeclareYokoKanjiEncoding{%
94 \DeclareYokoKanjiEncoding@}
95 \def\DeclareYokoKanjiEncoding@#1#2#3{%
97 \ifx\csname T@#1\endcsname\relax
98 \def\cdp@elt{\noexpand\cdp@elt}%
99 \xdef\cdp@list{\cdp@list\cdp@elt{#1}%
100 {\default@k@family}{\default@k@series}%
102 \expandafter\let\csname#1-cmd\endcsname\@changed@kcmd
103 \def\enc@elt{\noexpand\enc@elt}%
104 \xdef\kyenc@list{\kyenc@list\enc@elt<#1>}%
105 \xdef\kenc@list{\kenc@list\enc@elt<#1>}%
107 \@font@info{Redeclaring KANJI (yoko) font encoding #1}%
109 \global\@namedef{T@#1}{#2}%
110 \global\@namedef{M@#1}{\default@KM#3}%
112 \def\DeclareTateKanjiEncoding{%
115 \expandafter\endgroup
116 \DeclareTateKanjiEncoding@}
117 \def\DeclareTateKanjiEncoding@#1#2#3{%
119 \ifx\csname T@#1\endcsname\relax
120 \def\cdp@elt{\noexpand\cdp@elt}%
121 \xdef\cdp@list{\cdp@list\cdp@elt{#1}%
122 {\default@k@family}{\default@k@series}%
124 \expandafter\let\csname#1-cmd\endcsname\@changed@kcmd
125 \def\enc@elt{\noexpand\enc@elt}%
126 \xdef\ktenc@list{\ktenc@list\enc@elt<#1>}%
127 \xdef\kenc@list{\kenc@list\enc@elt<#1>}%
129 \@font@info{Redeclaring KANJI (tate) font encoding #1}%
131 \global\@namedef{T@#1}{#2}%
132 \global\@namedef{M@#1}{\default@KM#3}%
134 \@onlypreamble\DeclareKanjiEncoding
135 \@onlypreamble\DeclareYokoKanjiEncoding
136 \@onlypreamble\DeclareYokoKanjiEncoding@
137 \@onlypreamble\DeclareTateKanjiEncoding
138 \@onlypreamble\DeclareTateKanjiEncoding@
139 \def\DeclareKanjiEncodingDefaults#1#2{%
141 \ifx\default@KT\@empty\else
142 \@font@info{Overwriting KANJI encoding scheme text defaults}%
144 \gdef\default@KT{#1}%
147 \ifx\default@KM\@empty\else
148 \@font@info{Overwriting KANJI encoding scheme math defaults}%
150 \gdef\default@KM{#2}%
152 \let\default@KT\@empty
153 \let\default@KM\@empty
154 \@onlypreamble\DeclareKanjiEncodingDefaults
155 \def\DeclareFontFamily#1#2#3{%
157 {\@latex@error{Encoding scheme `#1' unknown}\@eha}%
158 {\edef\tmp@item{{#2}}%
159 \expandafter\expandafter\expandafter
160 \inlist@\expandafter\tmp@item\expandafter{\ffam@list}%
162 \def\fam@elt{\noexpand\fam@elt}%
163 \xdef\ffam@list{\ffam@list\fam@elt<#2>}%
167 \expandafter\let\csname #1+#2\expandafter\endcsname
168 \ifx \reserved@a\@empty
174 \def\DeclareKanjiFamily#1#2#3{%
176 {\@latex@error{KANJI Encoding scheme `#1' unknown}\@eha}%
177 {\edef\tmp@item{{#2}}%
178 \expandafter\expandafter\expandafter
179 \inlist@\expandafter\tmp@item\expandafter{\kfam@list}%
181 \def\fam@elt{\noexpand\fam@elt}%
182 \xdef\kfam@list{\kfam@list\fam@elt<#2>}%
186 \expandafter\let\csname #1+#2\expandafter\endcsname
187 \ifx \reserved@a\@empty
193 \def\DeclareKanjiSubstitution#1#2#3#4{%
194 \expandafter\ifx\csname T@#1\endcsname\relax
195 \@latex@error{KANJI Encoding scheme `#1' unknown}\@eha
200 \def\cdp@elt##1##2##3##4{%
201 \def\reserved@b{##1}%
202 \ifx\reserved@a\reserved@b
203 \addto@hook\toks@{\cdp@elt{#1}{#2}{#3}{#4}}%
205 \addto@hook\toks@{\cdp@elt{##1}{##2}{##3}{##4}}%
208 \xdef\cdp@list{\the\toks@}%
210 \global\@namedef{D@#1}{\def\default@family{#2}%
211 \def\default@series{#3}%
212 \def\default@shape{#4}}%
214 \def\DeclareErrorKanjiFont#1#2#3#4#5{%
215 \xdef\error@kfontshape{%
216 \noexpand\expandafter\noexpand\split@name\noexpand\string
217 \expandafter\noexpand\csname#1/#2/#3/#4/#5\endcsname
219 \gdef\default@k@family{#2}%
220 \gdef\default@k@series{#3}%
221 \gdef\default@k@shape{#4}%
222 \global\let\k@family\default@k@family
223 \global\let\k@series\default@k@series
224 \global\let\k@shape\default@k@shape
226 \gdef\f@baselineskip{#5pt}}
227 \@onlypreamble\DeclareKanjiSubstitution
228 \@onlypreamble\DeclareErrorKanjiFont
229 \def\DeclareFixedFont#1#2#3#4#5#6{%
234 \edef\tmp@item{{#2}}%
235 \expandafter\expandafter\expandafter
236 \inlist@\expandafter\tmp@item\expandafter{\kyenc@list}%
238 \usekanji{#2}{#3}{#4}{#5}%
239 \global\let#1\getjfont
241 %\expandafter\expandafter\expandafter
242 %\inlist@\expandafter\tmp@item\expandafter{\ktenc@list}%
244 % \usekanji{#2}{#3}{#4}{#5}%
247 \useroman{#2}{#3}{#4}{#5}%
248 \global\expandafter\let\expandafter#1\the\font
253 \def\reDeclareMathAlphabet#1#2#3{%
254 \edef#1{\noexpand\protect\expandafter\noexpand\csname%
255 \expandafter\@gobble\string#1\space\space\endcsname}%
256 \edef\@tempa{\expandafter\@gobble\string#2}%
257 \edef\@tempb{\expandafter\@gobble\string#3}%
258 \edef\@tempc{\string @\expandafter\@gobbletwo\string#2}%
260 \edef\@tempa{\expandafter\@gobbletwo\string#2}%
261 \edef\@tempb{\expandafter\@gobbletwo\string#3}%
263 \expandafter\edef\csname\expandafter\@gobble\string#1\space\space\endcsname%
264 {\noexpand\DualLang@mathalph@bet%
265 {\expandafter\noexpand\csname\@tempa\space\endcsname}%
266 {\expandafter\noexpand\csname\@tempb\space\endcsname}%
269 \@onlypreamble\reDeclareMathAlphabet
270 \def\DualLang@mathalph@bet#1#2{%
272 \ifx\math@bgroup\bgroup% 2e normal style (\mathrm{...})
273 \bgroup\let\DualLang@Mfontsw\DLMfontsw@standard
275 \ifx\math@bgroup\relax% 2e two letter style (\rm->\mathrm)
276 \let\DualLang@Mfontsw\DLMfontsw@oldstyle
278 \bgroup\let\DualLang@Mfontsw\DLMfontsw@standard
282 \let\DualLang@Mfontsw\@firstoftwo
284 \DualLang@Mfontsw{#1}{#2}%
286 \def\DLMfontsw@standard#1#2#3{#1{#2{#3}}\egroup}
287 \def\DLMfontsw@oldstyle#1#2{#1\relax\@fontswitch\relax{#2}}
288 \def\DLMfontsw@oldlfont#1#2{#1\relax#2\relax}
290 \def\DeclareRelationFont#1#2#3#4#5#6#7#8{%
292 \ifx\rel@shape\@empty
294 \expandafter\def\csname rel@#1/#2/#3/all\endcsname{%
295 \romanencoding{#5}\romanfamily{#6}%
299 \expandafter\def\csname rel@#1/#2/#3/#4\endcsname{%
300 \romanencoding{#5}\romanfamily{#6}%
301 \romanseries{#7}\romanshape{#8}}%
304 \def\SetRelationFont#1#2#3#4#5#6#7#8{%
306 \ifx\rel@shape\@empty
307 \expandafter\def\csname rel@#1/#2/#3/all\endcsname{%
308 \romanencoding{#5}\romanfamily{#6}%
311 \expandafter\def\csname rel@#1/#2/#3/#4\endcsname{%
312 \romanencoding{#5}\romanfamily{#6}%
313 \romanseries{#7}\romanshape{#8}}%
317 \def\userelfont{\@knjcmdtrue}
318 \DeclareRobustCommand\selectfont{%
319 \let\tmp@error@fontshape\error@fontshape
320 \let\error@fontshape\error@kfontshape
321 \edef\tmp@item{{\k@encoding}}%
322 \expandafter\expandafter\expandafter
323 \inlist@\expandafter\tmp@item\expandafter{\kyenc@list}%
325 \let\cy@encoding\k@encoding
326 \edef\ct@encoding{\csname t@enc@\k@encoding\endcsname}%
328 \expandafter\expandafter\expandafter
329 \inlist@\expandafter\tmp@item\expandafter{\ktenc@list}%
331 \let\ct@encoding\k@encoding
332 \edef\cy@encoding{\csname y@enc@\k@encoding\endcsname}%
334 \@latex@error{KANJI Encoding scheme `\k@encoding' unknown}\@eha
338 %\let\k@encoding\ct@encoding
339 %\xdef\font@name{\csname\curr@kfontshape/\f@size\endcsname}%
342 \let\k@encoding\cy@encoding
343 \xdef\font@name{\csname\curr@kfontshape/\f@size\endcsname}%
346 \expandafter\def\expandafter\k@encoding\tmp@item
348 \let\error@fontshape\tmp@error@fontshape
349 \if@knjcmd \@knjcmdfalse
351 \csname rel@\k@encoding/\k@family/\k@series/\k@shape\endcsname\relax
353 \csname rel@\k@encoding/\k@family/\k@series/all\endcsname\relax
355 \csname rel@\k@encoding/\k@family/\k@series/all\endcsname
358 \csname rel@\k@encoding/\k@family/\k@series/\k@shape\endcsname
362 \xdef\font@name{\csname\curr@fontshape/\f@size\endcsname}%
366 \ifx\f@linespread\baselinestretch \else
367 \set@fontsize\baselinestretch\f@size\f@baselineskip
370 \def\KanjiEncodingPair#1#2{\@namedef{t@enc@#1}{#2}\@namedef{y@enc@#2}{#1}}
371 \KanjiEncodingPair{JY3}{JT3}
372 \def\set@fontsize#1#2#3{%
373 \@defaultunits\@tempdimb#2pt\relax\@nnil
374 \edef\f@size{\strip@pt\@tempdimb}%
375 \@defaultunits\@tempskipa#3pt\relax\@nnil
376 \edef\f@baselineskip{\the\@tempskipa}%
377 \edef\f@linespread{#1}%
378 \let\baselinestretch\f@linespread
380 \baselineskip\f@baselineskip\relax
381 \baselineskip\f@linespread\baselineskip
382 \normalbaselineskip\baselineskip
384 \setbox\strutbox\hbox{%\yoko
386 \@height.7\baselineskip \@depth.3\baselineskip}%
387 \setbox\tstrutbox\hbox{%\tate
389 \@height.5\baselineskip \@depth.5\baselineskip}%
390 \setbox\zstrutbox\hbox{%\tate
392 \@height.7\baselineskip \@depth.3\baselineskip}%
393 \let\size@update\relax}}
395 \newdimen\adjust@dimen
396 \def\adjustbaseline{%
397 \setbox\adjust@box\hbox{\ltjsetparameter{yjabaselineshift=\z@}あ}%
401 \cvs\normalbaselineskip
403 \cHT\cht \advance\cHT\cdp
405 % \setbox\adjust@box\hbox{\tbaselineshift\z@ M}%
406 % \adjust@dimen\ht\adjust@box
407 % \advance\adjust@dimen\dp\adjust@box
408 % \advance\adjust@dimen-\cHT
409 % \divide\adjust@dimen\tw@
410 % \advance\adjust@dimen\cdp
411 % \advance\adjust@dimen-\dp\adjust@box
412 % \tbaselineshift\adjust@dimen
415 \DeclareRobustCommand\romanencoding[1]{%
416 \expandafter\ifx\csname T@#1\endcsname\relax
417 \@latex@error{Encoding scheme `#1' unknown}\@eha
419 \edef\f@encoding{#1}%
420 \ifx\cf@encoding\f@encoding
421 \let\enc@update\relax
423 \let\enc@update\@@enc@update
427 \DeclareRobustCommand\kanjiencoding[1]{%
428 \expandafter\ifx\csname T@#1\endcsname\relax
429 \@latex@error{KANJI Encoding scheme `#1' unknown}\@eha
431 \edef\k@encoding{#1}%
432 \ifx\ck@encoding\k@encoding
433 \let\kenc@update\relax
435 \let\kenc@update\@@kenc@update
439 \DeclareRobustCommand\fontencoding[1]{%
440 \edef\tmp@item{{#1}}%
441 \expandafter\expandafter\expandafter
442 \inlist@\expandafter\tmp@item\expandafter{\kenc@list}%
443 \ifin@ \kanjiencoding{#1}\else\romanencoding{#1}\fi}
446 \csname T@\k@encoding\endcsname
447 \csname D@\k@encoding\endcsname
448 \let\kenc@update\relax
449 \let\ck@encoding\k@encoding
450 \edef\tmp@item{{\k@encoding}}%
451 \expandafter\expandafter\expandafter
452 \inlist@\expandafter\tmp@item\expandafter{\kyenc@list}%
453 \ifin@ \let\cy@encoding\k@encoding
455 \expandafter\expandafter\expandafter
456 \inlist@\expandafter\tmp@item\expandafter{\ktenc@list}%
457 \ifin@ \let\ct@encoding\k@encoding
459 \@latex@error{KANJI Encoding scheme `\k@encoding' unknown}\@eha
463 \let\kenc@update\relax
464 \def\@changed@kcmd#1#2{%
465 \ifx\protect\@typeset@protect
467 \expandafter\ifx\csname\ck@encoding\string#1\endcsname\relax
468 \expandafter\ifx\csname ?\string#1\endcsname\relax
469 \expandafter\def\csname ?\string#1\endcsname{%
470 \TextSymbolUnavailable#1%
473 \global\expandafter\let
474 \csname\cf@encoding \string#1\expandafter\endcsname
475 \csname ?\string#1\endcsname
477 \csname\ck@encoding\string#1%
478 \expandafter\endcsname
485 \DeclareRobustCommand\romanfamily[1]{\edef\f@family{#1}}
486 \DeclareRobustCommand\kanjifamily[1]{\edef\k@family{#1}}
487 \DeclareRobustCommand\fontfamily[1]{%
488 \edef\tmp@item{{#1}}%
491 \expandafter\expandafter\expandafter
492 \inlist@\expandafter\tmp@item\expandafter{\kfam@list}%
493 \ifin@ \edef\k@family{#1}%
495 \expandafter\expandafter\expandafter
496 \inlist@\expandafter\tmp@item\expandafter{\notkfam@list}%
500 \def\fam@elt{\noexpand\fam@elt}%
501 \message{(I search kanjifont definition file:}%
502 \def\enc@elt<##1>{\message{.}%
503 \edef\reserved@a{\lowercase{\noexpand\IfFileExists{##1#1.fd}}}%
504 \reserved@a{\@tempswztrue}{}\relax}%
511 \xdef\notkfam@list{\notkfam@list\fam@elt<#1>}%
514 \expandafter\expandafter\expandafter
515 \inlist@\expandafter\tmp@item\expandafter{\ffam@list}%
516 \ifin@ \edef\f@family{#1}\else
517 \expandafter\expandafter\expandafter
518 \inlist@\expandafter\tmp@item\expandafter{\notffam@list}%
519 \ifin@ \@notffamtrue \else
521 \def\fam@elt{\noexpand\fam@elt}%
522 \message{(I search font definition file:}%
523 \def\enc@elt<##1>{\message{.}%
524 \edef\reserved@a{\lowercase{\noexpand\IfFileExists{##1#1.fd}}}%
525 \reserved@a{\@tempswztrue}{}\relax}%
532 \xdef\notffam@list{\notffam@list\fam@elt<#1>}%
535 \if@notkfam\if@notffam
536 \edef\k@family{#1}\edef\f@family{#1}%
538 \DeclareRobustCommand\romanseries[1]{\edef\f@series{#1}}
539 \DeclareRobustCommand\kanjiseries[1]{\edef\k@series{#1}}
540 \DeclareRobustCommand\fontseries[1]{\kanjiseries{#1}\romanseries{#1}}
541 \DeclareRobustCommand\romanshape[1]{\edef\f@shape{#1}}
542 \DeclareRobustCommand\kanjishape[1]{\edef\k@shape{#1}}
543 \DeclareRobustCommand\fontshape[1]{\kanjishape{#1}\romanshape{#1}}
544 \def\usekanji#1#2#3#4{%
545 \kanjiencoding{#1}\kanjifamily{#2}\kanjiseries{#3}\kanjishape{#4}%
546 \selectfont\ignorespaces}
547 \def\useroman#1#2#3#4{%
548 \romanencoding{#1}\romanfamily{#2}\romanseries{#3}\romanshape{#4}%
549 \selectfont\ignorespaces}
550 \def\usefont#1#2#3#4{%
551 \edef\tmp@item{{#1}}%
552 \expandafter\expandafter\expandafter
553 \inlist@\expandafter\tmp@item\expandafter{\kenc@list}%
554 \ifin@ \usekanji{#1}{#2}{#3}{#4}%
555 \else\useroman{#1}{#2}{#3}{#4}%
557 \DeclareRobustCommand\normalfont{%
558 \kanjiencoding{\kanjiencodingdefault}%
559 \kanjifamily{\kanjifamilydefault}%
560 \kanjiseries{\kanjiseriesdefault}%
561 \kanjishape{\kanjishapedefault}%
562 \romanencoding{\encodingdefault}%
563 \romanfamily{\familydefault}%
564 \romanseries{\seriesdefault}%
565 \romanshape{\shapedefault}%
566 \selectfont\ignorespaces}
568 \let\reset@font\normalfont
569 \DeclareRobustCommand\mcfamily
570 {\not@math@alphabet\mcfamily\mathmc
571 \kanjifamily\mcdefault\selectfont}
572 \DeclareRobustCommand\gtfamily
573 {\not@math@alphabet\gtfamily\mathgt
574 \kanjifamily\gtdefault\selectfont}
575 \let\romanprocess@table\process@table
576 \def\kanjiprocess@table{%
577 \kanjiencoding{\kanjiencodingdefault}%
578 \kanjifamily{\kanjifamilydefault}%
579 \kanjiseries{\kanjiseriesdefault}%
580 \kanjishape{\kanjishapedefault}%
586 \@onlypreamble\romanprocess@table
587 \@onlypreamble\kanjiprocess@table
588 \DeclareTextCommandDefault{\textunderscore}{%
589 \leavevmode\kern.06em
590 %\iftdir\raise-\tbaselineshift\fi
591 \vbox{\hrule\@width.3em}}
593 %%%%%% LuaTeX-ja specific
595 % #1 の展開結果から encoding 部分をとりだし,それが和文用かどうかの結果を \ifin@ に代入
596 \def\ltj@@IsFontJapanese#1{%
597 \expandafter\ltj@@IsFontJapaneseX#1//:%
598 \expandafter\expandafter\expandafter
599 \inlist@\expandafter\tmp@item\expandafter{\kenc@list}}
600 \def\ltj@@IsFontJapaneseX#1/#2/:{\edef\tmp@item{{\directlua{tex.print('#1')}}}}
603 \let\extract@afont\extract@font
605 \expandafter \ifx \font@name \relax
606 \let\extract@font\extract@jfont
608 \let\extract@font\extract@afont
610 \let\getjfont\font@name}
614 \expandafter\globaljfont\font@name\external@font\relax
615 \font@name\global\zw=\zw\global\zh=\zh
616 \csname \f@encoding+\f@family\endcsname
617 \csname\curr@fontshape\endcsname}
619 \let\ltj@@al@do@subst@correction=\do@subst@correction
620 \def\ltj@@ja@do@subst@correction{%
621 \xdef\subst@correction{%
623 \global\expandafter\let\csname \curr@fontshape/\f@size\endcsname\font@name%
625 \aftergroup\subst@correction
627 \def\do@subst@correction{%
628 \ltj@@IsFontJapanese{\curr@fontshape}\ifin@
629 \ltj@@ja@do@subst@correction
631 \ltj@@al@do@subst@correction
636 %%%%%% Japanese font for math mode
638 % \M@<enc> から その <enc> が和文用か調べる
640 \gdef\ltj@@mathJapaneseFonts#1M#2#3\relax{\ltj@@IsFontJapanese{#3}}}
642 \let\ltj@@al@getanddefine@fonts=\getanddefine@fonts
643 \def\ltj@@ja@getanddefine@fonts#1#2{%
644 \xdef\font@name{\csname \string#2/\tf@size\endcsname}%
645 \pickup@jfont\let\textfont@name\font@name
646 \xdef\font@name{\csname \string#2/\sf@size\endcsname}%
647 \pickup@jfont\let\scriptfont@name\font@name
648 \xdef\font@name{\csname \string#2/\ssf@size\endcsname}%
650 \edef\math@fonts{\math@fonts\ltjsetparameter{%
651 jatextfont={#1,\textfont@name},%
652 jascriptfont={#1,\scriptfont@name},%
653 jascriptscriptfont={#1,\font@name}}}%
656 \def\getanddefine@fonts#1#2{%
657 \ltj@tempcnta=#1 \ltj@@IsFontJapanese{\string#2}%
658 \ifin@\ltj@@ja@getanddefine@fonts{#1}{#2}%
659 \else \ltj@@al@getanddefine@fonts{#1}{#2}\fi
661 \def\use@mathgroup#1#2{\relax\ifmmode
663 \expandafter\ifx\csname M@\f@encoding\endcsname#1\else
664 #1\fi\ltj@tempcnta=#2 \expandafter\ltj@@mathJapaneseFonts\string#1\relax%
665 \ifin@\jfam#2\relax\else\mathgroup#2\relax\fi
666 \expandafter\math@egroup\fi}%