summaryrefslogtreecommitdiff
path: root/macros/jptex/latex/japanese-otf/sty/mlutf.sty
blob: 28538d0d28547ce6932b832cb9fa26adcbbb0a29 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
\NeedsTeXFormat{pLaTeX2e}
\ProvidesPackage{mlutf}[2004/04/17 v1.1.2 psitau, u0.28 ttk]
%force catcode of \" be 12
\count@\catcode`\"
\catcode`\"=12
\if@otf@uplatex
\if@deluxe
	\DeclareRobustCommand{\UTFK}[1]{\begingroup%
		\edef\reserved@a{\gtdefault}\edef\reserved@b{\mgdefault}%
		\ifx\k@family\reserved@a \kanjifamily{utfkg}\else\ifx\k@family\reserved@b
			\kanjifamily{utfkmg}\else\kanjifamily{utfk}\fi\fi%
		\uppercase{\set@character@="#1}%
		\endgroup%
	}
	\DeclareRobustCommand{\UTFC}[1]{\begingroup%
		\edef\reserved@a{\gtdefault}\edef\reserved@b{\mgdefault}%
		\ifx\k@family\reserved@a \kanjifamily{utfcg}\else\ifx\k@family\reserved@b
			\kanjifamily{utfcmg}\else\kanjifamily{utfc}\fi\fi%
		\uppercase{\set@character@="#1}%
		\endgroup%
	}
	\DeclareRobustCommand{\UTFT}[1]{\begingroup%
		\edef\reserved@a{\gtdefault}\edef\reserved@b{\mgdefault}%
		\ifx\k@family\reserved@a \kanjifamily{utftg}\else\ifx\k@family\reserved@b
			\kanjifamily{utftmg}\else\kanjifamily{utft}\fi\fi%
		\uppercase{\set@character@="#1}%
		\endgroup%
	}
\else
	\DeclareRobustCommand{\UTFK}[1]{\begingroup%
		\edef\reserved@a{\gtdefault}\ifx\k@family\reserved@a \kanjiseries{bx}\fi%
		\kanjifamily{utfk}\uppercase{\set@character@="#1}%
		\endgroup%
	}
	\DeclareRobustCommand{\UTFC}[1]{\begingroup%
		\edef\reserved@a{\gtdefault}\ifx\k@family\reserved@a \kanjiseries{bx}\fi%
		\kanjifamily{utfc}\uppercase{\set@character@="#1}%
		\endgroup%
	}
	\DeclareRobustCommand{\UTFT}[1]{\begingroup%
		\edef\reserved@a{\gtdefault}\ifx\k@family\reserved@a \kanjiseries{bx}\fi%
		\kanjifamily{utft}\uppercase{\set@character@="#1}%
		\endgroup%
	}
\fi
\else% for pLaTeX
	\DeclareRobustCommand{\UTFK}[1]{\begingroup%
		\edef\reserved@a{\gtdefault}\ifx\k@family\reserved@a \kanjiseries{bx}\fi%
		\kanjifamily{utfk}\uppercase{\set@character="#1}%
		\endgroup%
	}
	\DeclareRobustCommand{\UTFC}[1]{\begingroup%
		\edef\reserved@a{\gtdefault}\ifx\k@family\reserved@a \kanjiseries{bx}\fi%
		\kanjifamily{utfc}\uppercase{\set@character="#1}%
		\endgroup%
	}
	\DeclareRobustCommand{\UTFT}[1]{\begingroup%
		\edef\reserved@a{\gtdefault}\ifx\k@family\reserved@a \kanjiseries{bx}\fi%
		\kanjifamily{utft}\uppercase{\set@character="#1}%
		\endgroup%
	}
\fi
\DeclareRobustCommand{\UTFM}[1]{\begingroup%
	\edef\reserved@a{\gtdefault}\ifx\k@family\reserved@a \kanjiseries{bx}\fi%
	\kanjifamily{utf}\uppercase{\set@character="#1}%
	\endgroup%
}
\catcode`\"=\count@
%end of changing catcode of \"
\gdef\Redefine@MLUTF{%
	\@ifpackageloaded{hyperref}{%
		\def\hyper@UTFC##1{\ifHy@pdfstring\hyper@UTF@{##1}\else\csname UTFC \endcsname{##1}\fi}
		\def\hyper@UTFK##1{\ifHy@pdfstring\hyper@UTF@{##1}\else\csname UTFK \endcsname{##1}\fi}
		\def\hyper@UTFT##1{\ifHy@pdfstring\hyper@UTF@{##1}\else\csname UTFT \endcsname{##1}\fi}
		\def\hyper@UTFM##1{\ifHy@pdfstring\hyper@UTF@{##1}\else\csname UTFM \endcsname{##1}\fi}
		\def\UTFC{\protect\hyper@UTFC}
		\def\UTFK{\protect\hyper@UTFK}
		\def\UTFT{\protect\hyper@UTFT}
		\def\UTFM{\protect\hyper@UTFM}
	}{}
}
\AtBeginDocument{\Redefine@MLUTF}

\DeclareKanjiFamily{\otf@JYn}{utfk}{}
\DeclareKanjiFamily{\otf@JTn}{utfk}{}
\DeclareKanjiFamily{\otf@JYn}{utfc}{}
\DeclareKanjiFamily{\otf@JTn}{utfc}{}
\DeclareKanjiFamily{\otf@JYn}{utft}{}
\DeclareKanjiFamily{\otf@JTn}{utft}{}
\if@otf@uplatex
	\Declare@FontShape{utfk}{m}{-}{utfkmr}
	\Declare@FontShape{utfc}{m}{-}{utfcmr}
	\Declare@FontShape{utft}{m}{-}{utftmr}
	\if@deluxe
		\Declare@FontShape{utfk}{bx}{-}{utfkmb}
		\DeclareKanjiFamily{\otf@JYn}{utfkg}{}
		\DeclareKanjiFamily{\otf@JTn}{utfkg}{}
		\Declare@FontShape{utfkg}{m}{-}{utfkgr}
		\Declare@FontShape{utfkg}{bx}{-}{utfkgb}
		\Declare@FontShape{utfkg}{eb}{-}{utfkge}
		\DeclareKanjiFamily{\otf@JYn}{utfkmg}{}
		\DeclareKanjiFamily{\otf@JTn}{utfkmg}{}
		\Declare@FontShape{utfkmg}{m}{-}{utfkmgr}
		\Declare@FontShape{utfk}{l}{-}{utfkml}
		\Declare@FontShape{utfc}{bx}{-}{utfcmb}
		\DeclareKanjiFamily{\otf@JYn}{utfcg}{}
		\DeclareKanjiFamily{\otf@JTn}{utfcg}{}
		\Declare@FontShape{utfcg}{m}{-}{utfcgr}
		\Declare@FontShape{utfcg}{bx}{-}{utfcgb}
		\Declare@FontShape{utfcg}{eb}{-}{utfcge}
		\DeclareKanjiFamily{\otf@JYn}{utfcmg}{}
		\DeclareKanjiFamily{\otf@JTn}{utfcmg}{}
		\Declare@FontShape{utfcmg}{m}{-}{utfcmgr}
		\Declare@FontShape{utfc}{l}{-}{utfcml}
		\Declare@FontShape{utft}{bx}{-}{utftmb}
		\DeclareKanjiFamily{\otf@JYn}{utftg}{}
		\DeclareKanjiFamily{\otf@JTn}{utftg}{}
		\Declare@FontShape{utftg}{m}{-}{utftgr}
		\Declare@FontShape{utftg}{bx}{-}{utftgb}
		\Declare@FontShape{utftg}{eb}{-}{utftge}
		\DeclareKanjiFamily{\otf@JYn}{utftmg}{}
		\DeclareKanjiFamily{\otf@JTn}{utftmg}{}
		\Declare@FontShape{utftmg}{m}{-}{utftmgr}
		\Declare@FontShape{utft}{l}{-}{utftml}
	\else
		\if@bold
			\Declare@FontShape{utfk}{bx}{-}{utfkgb}
			\Declare@FontShape{utfc}{bx}{-}{utfcgb}
			\Declare@FontShape{utft}{bx}{-}{utftgb}
		\else
			\Declare@FontShape{utfk}{bx}{-}{utfkgr}
			\Declare@FontShape{utfc}{bx}{-}{utfcgr}
			\Declare@FontShape{utft}{bx}{-}{utftgr}
		\fi
	\fi
\else
	\Declare@FontShape{utfk}{m}{0123456789abcdef}{utfkmr}
	\Declare@FontShape{utfk}{bx}{0123456789abcdef}{utfkgr}
	\Declare@FontShape{utfc}{m}{0123456789abcdefklmo}{utfcmr}
	\Declare@FontShape{utfc}{bx}{0123456789abcdefklmo}{utfcgr}
	\Declare@FontShape{utft}{m}{0123456789abcdefklmnopqrstuvwxz}{utftmr}
	\Declare@FontShape{utft}{bx}{0123456789abcdefklmnopqrstuvwxz}{utftgr}
\fi
\DeclareKanjiFamily{\otf@JYn}{utf}{}
\DeclareKanjiFamily{\otf@JTn}{utf}{}
\Declare@FontShape{utf}{m}{0123456789abcdefjklmnopqrstuvwxyz}{utfmr}
\Declare@FontShape{utf}{bx}{0123456789abcdefjklmnopqrstuvwxyz}{utfgr}
\endinput