5 \NeedsTeXFormat{LaTeX2e}
6 \ProvidesPackage{lltjdefs}[2019/09/26 Default font settings of LuaTeX-ja]
8 \ifdefined\ltj@stdmcfont\else\def\ltj@stdmcfont{IPAExMincho}\fi
9 \ifdefined\ltj@stdgtfont\else\def\ltj@stdgtfont{IPAExGothic}\fi
10 \ifdefined\ltj@stdyokojfm\else\def\ltj@stdyokojfm{ujis}\fi
11 \ifdefined\ltj@stdtatejfm\else\def\ltj@stdtatejfm{ujisv}\fi
12 \InputIfFileExists{luatexja.cfg}{%
13 \typeout{*************************^^J%
14 * Loading luatexja.cfg.^^J%
15 *************************}%
18 \DeclareKanjiEncodingDefaults{}{}
19 \DeclareErrorKanjiFont{JY3}{mc}{m}{n}{10}
24 \DeclareYokoKanjiEncoding{JY3}{}{}
25 \DeclareKanjiSubstitution{JY3}{mc}{m}{n}
26 \DeclareTateKanjiEncoding{JT3}{}{}
27 \DeclareKanjiSubstitution{JT3}{mc}{m}{n}
29 \newcommand\mcdefault{mc}
30 \newcommand\gtdefault{gt}
31 \newcommand\jttdefault{\mcdefault}
32 \newcommand\kanjiencodingdefault{JY3}
33 \newcommand\kanjifamilydefault{\mcdefault}
34 \newcommand\kanjiseriesdefault{\mddefault}
35 \newcommand\kanjishapedefault{\updefault}
37 \DeclareKanjiFamily{JY3}{mc}{}
38 \DeclareFontShape{JY3}{mc}{m}{n}{<-> s*[\ifdefined\Cjascale\Cjascale\else 0.962216\fi] \ltj@stdmcfont:jfm=\ltj@stdyokojfm}{}
39 \DeclareKanjiFamily{JY3}{gt}{}
40 \DeclareFontShape{JY3}{gt}{m}{n}{<-> s*[\ifdefined\Cjascale\Cjascale\else 0.962216\fi] \ltj@stdgtfont:jfm=\ltj@stdyokojfm}{}
41 \DeclareFontShape{JY3}{mc}{bx}{n}{<-> ssub*gt/m/n}{}
42 \DeclareFontShape{JY3}{gt}{bx}{n}{<-> ssub*gt/m/n}{}
43 \DeclareFontShape{JY3}{mc}{b}{n}{<-> ssub*gt/m/n}{}
44 \DeclareFontShape{JY3}{gt}{b}{n}{<-> ssub*gt/m/n}{}
46 \DeclareKanjiFamily{JT3}{mc}{}
47 \DeclareFontShape{JT3}{mc}{m}{n}{<-> s*[\ifdefined\Cjascale\Cjascale\else 0.962216\fi] \ltj@stdmcfont:jfm=\ltj@stdtatejfm}{}
48 \DeclareKanjiFamily{JT3}{gt}{}
49 \DeclareFontShape{JT3}{gt}{m}{n}{<-> s*[\ifdefined\Cjascale\Cjascale\else 0.962216\fi] \ltj@stdgtfont:jfm=\ltj@stdtatejfm}{}
50 \DeclareFontShape{JT3}{mc}{bx}{n}{<-> ssub*gt/m/n}{}
51 \DeclareFontShape{JT3}{gt}{bx}{n}{<-> ssub*gt/m/n}{}
52 \DeclareFontShape{JT3}{mc}{b}{n}{<-> ssub*gt/m/n}{}
53 \DeclareFontShape{JT3}{gt}{b}{n}{<-> ssub*gt/m/n}{}
54 \KanjiEncodingPair{JY3}{JT3}
56 \DeclareRelationFont{JY3}{gt}{m}{}{TU}{lmr}{bx}{}
57 \DeclareRelationFont{JY3}{mc}{m}{}{TU}{lmr}{m}{}
58 \DeclareRelationFont{JY3}{mc}{bx}{}{TU}{lmr}{bx}{}
59 \DeclareRelationFont{JY3}{mc}{b}{}{TU}{lmr}{b}{}
60 \DeclareRelationFont{JT3}{gt}{m}{}{TU}{lmr}{bx}{}
61 \DeclareRelationFont{JT3}{mc}{m}{}{TU}{lmr}{m}{}
62 \DeclareRelationFont{JT3}{mc}{bx}{}{TU}{lmr}{bx}{}
63 \DeclareRelationFont{JT3}{mc}{b}{}{TU}{lmr}{b}{}
65 \kanjiencoding{JY3}\selectfont\adjustbaseline
67 \DeclareTextFontCommand{\textmc}{\mcfamily}
68 \DeclareTextFontCommand{\textgt}{\gtfamily}
69 \DeclareOldFontCommand{\mc}{\normalfont\mcfamily}{}
70 \DeclareOldFontCommand{\gt}{\normalfont\gtfamily}{}
72 \unless\ifltj@disablejfam
73 \DeclareSymbolFont{mincho}{JY3}{mc}{m}{n}
75 \SetSymbolFont{mincho}{bold}{JY3}{gt}{m}{n}
76 \DeclareSymbolFontAlphabet{\mathmc}{mincho}
77 \DeclareMathAlphabet{\mathgt}{JY3}{gt}{m}{n}
80 \newif\if@ltj@match@family
81 \@ltj@match@familyfalse
82 \def\verbatim@font{\normalfont\ttfamily\kanjifamily\jttdefault\selectfont}
83 \def\@ltj@hook@family#1#2{ % #1: csname #2: contents
84 \ifcsname @#1hook\endcsname % LaTeX 2020-02-02
85 \csappto{@#1hook}{#2}%
87 \ifcsname #1 \endcsname
88 \expandafter\patchcmd\csname #1 \endcsname{\selectfont}{#2\selectfont}{}{}%
90 \PackageWarningNoLine{luatexja}{%
91 Patching to \expandafter\string\csname #1\endcsname\space failed
96 \@ltj@hook@family{rmfamily}{\if@ltj@match@family\kanjifamily\mcdefault\fi}
97 \@ltj@hook@family{sffamily}{\if@ltj@match@family\kanjifamily\gtdefault\fi}
98 \@ltj@hook@family{ttfamily}{\if@ltj@match@family\kanjifamily\jttdefault\fi}
101 \expandafter\patchcmd\csname em \endcsname{\itshape}{\gtfamily\itshape}{}{}
102 \def\eminnershape{\mcfamily \upshape}
104 \ltjdefcharrange{1}{"80-"36F, "1E00-"1EFF}
105 \ltjdefcharrange{2}{"370-"4FF, "1F00-"1FFF}
106 \ltjdefcharrange{3}{%
107 "2000-"243F, "2500-"27BF, "2900-"29FF, "2B00-"2BFF}
108 \ltjdefcharrange{4}{%
109 "500-"10FF, "1200-"1DFF, "2440-"245F, "27C0-"28FF, "2A00-"2AFF,
110 "2C00-"2E7F, "4DC0-"4DFF, "A4D0-"A95F, "A980-"ABFF, "E000-"F8FF,
111 "FB00-"FE0F, "FE20-"FE2F, "FE70-"FEFF, "10000-"1AFFF, "1B170-"1F0FF,
112 "1F300-"1FFFF, "2000-"206F
114 \ltjdefcharrange{5}{"D800-"DFFF, "E0000-"E00FF, "E01F0-"10FFFF}
115 \ltjdefcharrange{6}{%
116 "2460-"24FF, "2E80-"2EFF, "3000-"30FF, "3190-"319F, "31F0-"4DBF,
117 "4E00-"9FFF, "F900-"FAFF, "FE10-"FE1F, "FE30-"FE6F, "FF00-"FFEF,
118 "1B000-"1B16F, "1F100-"1F2FF, "20000-"2FFFF, "E0100-"E01EF
120 \ltjdefcharrange{7}{%
121 "1100-"11FF, "2F00-"2FFF, "3100-"318F, "31A0-"31EF, "A000-"A4CF,
122 "A960-"A97F, "AC00-"D7FF
124 \ltjdefcharrange{8}{"A7, "A8, "B0, "B1, "B4, "B6, "D7, "F7}
126 "2002, "2010, "2011, "2013, "2014, "2015, "2016, "2018, "2019,
127 "201A, "201C, "201D, "201E, "2020, "2021, "2022, "2025, "2026,
128 "2030, "2032, "2033, "2039, "203A, "203B, "203C, "203E, "203F,
129 "2042, "2044, "2047, "2048, "2049, "2051
131 \ltjsetparameter{jacharrange={-1, +2, +3, -4, -5, +6, +7, -8, +9}}
133 \directlua{for x=128,255 do luatexja.math.is_math_letters[x] = true end}
134 \protected\def\<{\ifvmode\leavevmode\fi\inhibitglue}
136 \directlua{luatexja.jfont.register_vert_replace{
137 [',']='、', ['.']='。', ['“']=0x301D, ['”']=0x301F,
143 ======== comment ========
147 \ltjdefcharrange{1}{"80-"36F, "1E00-"1EFF}
148 % 2 "80-"FF num = 471/128 name = Latin-1 Supplement
149 % 3 "100-"17F num = 484/128 name = Latin Extended-A
150 % 4 "180-"24F num = 87/208 name = Latin Extended-B
151 % 5 "250-"2AF num = 154/96 name = IPA Extensions
152 % 6 "2B0-"2FF num = 42/80 name = Spacing Modifier Letters
153 % 7 "300-"36F num = 98/112 name = Combining Diacritical Marks
154 % 64 "1E00-"1EFF num = 16/256 name = Latin Extended Additional
156 \ltjdefcharrange{2}{"370-"4FF, "1F00-"1FFF}
157 % Greek and Coptic, Cyrillic, Greek Extended
159 \ltjdefcharrange{3}{%
160 "2070-"243F, "2500-"27BF, "2900-"29FF, "2B00-"2BFF}
161 % 67 "2070-"209F num = 68/48 name = Superscripts and Subscripts
162 % 68 "20A0-"20CF num = 5/48 name = Currency Symbols
163 % 69 "20D0-"20FF num = 2/48 name = Combining Diacritical Marks for Symbols
164 % 70 "2100-"214F num = 46/80 name = Letterlike Symbols
165 % 71 "2150-"218F num = 90/64 name = Number Forms
166 % 72 "2190-"21FF num = 39/112 name = Arrows
167 % 73 "2200-"22FF num = 210/256 name = Mathematical Operators
168 % 74 "2300-"23FF num = 69/256 name = Miscellaneous Technical
169 % 75 "2400-"243F num = 1/64 name = Control Pictures
170 % 78 "2500-"257F num = 241 name = Box Drawing
171 % 79 "2580-"259F num = 17 name = Block Elements
172 % 80 "25A0-"25FF num = 70 name = Geometric Shapes
173 % 81 "2600-"26FF num = 49 name = Miscellaneous Symbols
174 % 82 "2700-"27BF num = 23 name = Dingbats
175 % 86 "2900-"297F num = 2 name = Supplemental Arrows-B
176 % 87 "2980-"29FF num = 4 name = Miscellaneous Mathematical Symbols-B
177 % 89 "2B00-"2BFF num = 3 name = Miscellaneous Symbols and Arrows
179 \ltjdefcharrange{4}{%
180 "500-"10FF, "1200-"1DFF, "2440-"245F, "27C0-"28FF, "2A00-"2AFF,
181 "2C00-"2E7F, "4DC0-"4DFF, "A4D0-"A95F, "A980-"ABFF, "E000-"F8FF,
182 "FB00-"FE0F, "FE20-"FE2F, "FE70-"FEFF, "10000-"1AFFF, "1B170-"1F0FF,
186 \ltjdefcharrange{5}{"D800-"DFFF, "E0000-"E00FF, "E01F0-"10FFFF}
188 % 208 "F0000-"FFFFF num = 0/65536 name = Supplementary Private Use Area-A
189 % 209 "100000-"10FFFF num = 0/65536 name = Supplementary Private Use Area-B
194 \ltjdefcharrange{6}{%
195 "2460-"24FF, "2E80-"2EFF, "3000-"30FF, "3190-"319F, "31F0-"4DBF,
196 "4E00-"9FFF, "F900-"FAFF, "FE10-"FE1F, "FE30-"FE6F, "FF00-"FFEF,
197 "1B000-"1B16F, "1F100-"1F2FF, "20000-"2FFFF, "E0100-"E01EF
199 % 77 "2460-"24FF num = 150/160 name = Enclosed Alphanumerics
200 % 98 "2E80-"2EFF num = 21 name = CJK Radicals Supplement
201 % 101 "3000-"303F num = 144 name = CJK Symbols and Punctuation
202 % 102 "3040-"309F num = 1074 name = Hiragana
203 % 103 "30A0-"30FF num = 985 name = Katakana
204 % 106 "3190-"319F num = 16/16 name = Kanbun
205 % 109 "31F0-"31FF num = 128 name = Katakana Phonetic Extensions
206 % 110 "3200-"32FF num = 143 name = Enclosed CJK Letters and Months
207 % 111 "3300-"33FF num = 255 name = CJK Compatibility
208 % 112 "3400-"4DBF num = 203 name = CJK Unified Ideographs Extension A
209 % 114 "4E00-"9FFF num = 14087 name = CJK Unified Ideographs
210 % 143 "F900-"FAFF num = 110/512 name = CJK Compatibility Ideographs
211 % 147 "FE10-"FE1F num = 0/16 name = Vertical Forms
212 % 149 "FE30-"FE4F num = 8/32 name = CJK Compatibility Forms
213 % 150 "FE50-"FE6F num = 0/32 name = Small Form Variants
214 % "FF00-"FFEF name = Halfwidth and Fullwidth Forms
215 % "1B000-"1B0FF name = Kana Supplement
216 % "1B100-"1B12F name = Kana Extended-A
217 % "1B130-"1B16F name = Small Kana Extension
218 % "1F100-"1F1FF name = Enclosed Alphanumeric Supplement
219 % "1F200-"1F2FF name = Enclosed Ideographic Supplement
221 % "E0000-"E01EF name = Variation Selectors Supplement
223 \ltjdefcharrange{7}{%
224 "1100-"11FF, "2F00-"2FFF, "3100-"318F, "31A0-"31EF, "A000-"A4CF,
225 "A960-"A97F, "AC00-"D7FF
227 % 35 "1100-"11FF num = 1 name = Hangul Jamo
228 % 99 "2F00-"2FDF num = 0/224 name = Kangxi Radicals
229 % 100 "2FF0-"2FFF num = 0/16 name = Ideographic Description Characters
230 % 104 "3100-"312F num = 0/48 name = Bopomofo
231 % 105 "3130-"318F num = 0/96 name = Hangul Compatibility Jamo
232 % 107 "31A0-"31BF num = 0/32 name = Bopomofo Extended
233 % 108 "31C0-"31EF num = 0/48 name = CJK Strokes
234 % 115 "A000-"A48F num = 0/1168 name = Yi Syllables
235 % 116 "A490-"A4CF num = 0/64 name = Yi Radicals
236 % "A960-"A97F name = Hangul Jamo Extended-A
237 % 137 "AC00-"D7AF num = 0/11184 name = Hangul Syllables
238 % 138 "D7B0-"D7FF num = 0/80 name = Hangul Jamo Extended-B