OSDN Git Service

Fix #39391
[luatex-ja/luatexja.git] / src / patches / lltjp-microtype.sty
1 %
2 % lltjp-microtype.sty 2019-07-12
3 %
4 % (Work in Progress)
5
6 \NeedsTeXFormat{LaTeX2e}
7
8 \RequirePackage{etoolbox}
9 \RequirePackage{luatexja}
10 \makeatletter
11
12 \def\MT@register@font{%
13   \xdef\MT@font@list{\expandonce{\MT@font@list}\MT@font,}%
14 }
15 \def\MT@register@subst@font{\MT@exp@one@n\MT@in@clist\font@name\MT@font@list
16   \ifMT@inlist@\else
17         \xdef\MT@font@list{\expandonce{\MT@font@list}\font@name,}%
18   \fi}
19
20 %\endinput
21 \begingroup
22   \catcode`\/=\z@
23   /MT@map@tlist@n{/\LτJCHAREX}/@makeother /lccode`/τ=`/t
24   /lowercase{%
25     /def/x{/endgroup
26       /def/MT@charstring{\CHAR"}%
27       /def/MT@is@char##1\CHAR"##2##3##4/relax{%
28                 %/message{MIC <##1><##2><##3><##4>}%
29         /ifx/relax##4/relax
30             /expandafter/MT@is@char@ltja/MT@strip@prefix##1>/relax\LτJALCHAR\LτJALCHAR/relax
31         /else
32           /ifx/relax##1/relax
33             /if##3\/relax
34               /edef/MT@char@{/number"##2}%
35               /MT@ifstreq/MT@charstring{##3##4}/relax/MT@norestfalse
36             /else
37               /edef/MT@char@{/number"##2##3}%
38               /MT@ifstreq/MT@charstring{##4}/relax
39                 {/MT@is@xchar##2##3|##4\CHAR"/relax}%
40             /fi
41           /fi
42         /fi
43       }%
44       /def/MT@is@char@ltja##1\LτJALCHAR##2\LτJALCHAR##3/relax{%
45         /ifx/relax##1/relax
46           /ifx/relax##2/relax/else
47             /edef/MT@char@{/number##2}%
48           /fi
49         /fi
50       }%
51     }%
52   }
53 /x
54 \endinput