OSDN Git Service

lltjp-microtype: adapt \MT@is@char to LuaTeX-ja
[luatex-ja/luatexja.git] / src / patches / lltjp-microtype.sty
1 %
2 % lltjp-microtype.sty 2019-03-29
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@is@char##1\CHAR"##2##3##4/relax{%
27                 %/message{MIC <##1><##2><##3><##4>}%
28         /ifx/relax##4/relax
29             /expandafter/MT@is@char@ltja/MT@strip@prefix##1/relax\LτJALCHAR\LτJALCHAR/relax
30         /else
31           /ifx/relax##1/relax
32             /if##3\/relax
33               /edef/MT@char@{/number"##2}%
34               /MT@ifstreq/MT@charstring{##3##4}/relax/MT@norestfalse
35             /else
36               /edef/MT@char@{/number"##2##3}%
37               /MT@ifstreq/MT@charstring{##4}/relax
38                 {/MT@is@xchar##2##3|##4\CHAR"/relax}%
39             /fi
40           /fi
41         /fi
42       }%
43       /def/MT@is@char@ltja##1\LτJALCHAR##2\LτJALCHAR##3/relax{%
44         /ifx/relax##1/relax
45           /ifx/relax##2/relax/else
46             /edef/MT@char@{/number##2}%
47           /fi
48         /fi
49       }%
50     }%
51   }
52 /x
53
54 \endinput