2 \input luatexja-core.sty
4 \def\head#1{\medskip\penalty-100\noindent{\bf\tengt ■ #1}\par\penalty10000}
5 \jfont\rml={psft:Ryumin-Light:jfm=ujis} at 10pt
6 \rml あ\inhibitglue\char"201Cあ・い←Ryumin-Light
8 \jfont\rml={file:ipam.ttf:jfm=ujis} at 10pt
9 \rml あ\inhibitglue\char"201Cあ・い←IPA\hbox{}明朝 (ipam)
11 \jfont\rml={file:KozMinPr6N-Regular.otf:jfm=ujis} at 10pt
12 \rml あ\inhibitglue\char"201Cあ・い←KozMinPr6N-Regular
14 \jfont\rml={file:ipamp.ttf:jfm=ujis} at 10pt
15 \rml あ\inhibitglue\char"201Cあ・い←IPA P\hbox{}明朝 (ipamp)
18 \globaljfont\rml={psft:GothicBBB-Medium:jfm=bad} at 10pt % must be error
20 \rml あ123 % \rml は未定義となる
24 \font\rml={file:ipaexg.ttf} at 10pt\rml
26 ここからは,欧文文字フォントはIPA EXゴシック
31 \ltjdefcharrange{2}{`あ,"E0-"FF}
32 「\char"F4」は2番の文字範囲なので,和文扱いのはず
34 {iso8859-1 和文扱い:\ltjsetparameter{jacharrange={1}}%
35 \ltjgetparameter{jacharrange}{1}%
38 {iso8859-1 欧文扱い:\ltjsetparameter{jacharrange={-1}}%
39 \ltjgetparameter{jacharrange}{1}%
44 \ltjgetparameter{jacharrange}{0}
45 \ltjgetparameter{jacharrange}{1}
46 \ltjgetparameter{jacharrange}{2}
49 \ltjgetparameter{chartorange}{`い} % must be 217
50 \ltjgetparameter{chartorange}{`§} % must be 1
51 \ltjgetparameter{chartorange}{"F7} % must be 2
52 \ltjgetparameter{chartorange}{-1} % must be error "
55 \ltjsetparameter{jacharrange={-217}}
57 \ltjsetparameter{jacharrange={218}}
61 \setbox0=\hbox{\ltjsetparameter{kanjiskip=-5pt}
62 あいうえお\hbox{\ltjsetparameter{kanjiskip=12pt}かきくけこ}さしすせそ\par a}\copy0
63 \tracingonline=0\showboxdepth=10000\showboxbreadth=10000\tracingonline=1\showbox0
65 {\ltjsetparameter{kanjiskip=3pt}
66 あいうえお{\ltjsetparameter{kanjiskip=-5pt}% this setting is ignored
69 {\ltjsetparameter{kanjiskip=3pt}
74 \noindent{\bf\gt 以下はJFMグルー挿入検証}
75 \jfont\rmlh={psft:Ryumin-Light:jfm=test} at 10pt
76 \jfont\sixgt={psft:GothicBBB-Medium:jfm=ujis} at 6pt
77 \font\sixtt=cmtt10 at 6pt
79 \def\dumplist#1{\par\noindent\leavevmode
80 \hbox to 0.2\hsize{\copy#1\hss}%
81 \vbox{\hsize=0.6\hsize\sixtt\baselineskip=7.2pt\sixgt\let\\=\relax
82 \directlua{ltj.ext_show_node_list(tex.getbox(#1).head, '\\par', tex.print)}\hrule}}
86 \setbox0=\hbox{\rmlh あア}\dumplist0
88 \setbox0=\hbox{\rmlh あイ}\dumplist0
90 \setbox0=\hbox{\rmlh あウ}\dumplist0
92 \setbox0=\hbox{\rmlh いア}\dumplist0
94 \setbox0=\hbox{\rmlh いイ}\dumplist0
96 \setbox0=\hbox{\rmlh いウ}\dumplist0
100 \setbox0=\hbox{\rmlh あa}\dumplist0
102 \setbox0=\hbox{\rmlh いa}\dumplist0
104 \setbox0=\hbox{\rmlh うa}\dumplist0
106 \setbox0=\hbox{\rmlh えa}\dumplist0
108 \setbox0=\hbox{\rmlh おa}\dumplist0
110 \head{EN--JA (penなし)}
112 \setbox0=\hbox{\rmlh aあ}\dumplist0
114 \setbox0=\hbox{\rmlh aい}\dumplist0
116 \setbox0=\hbox{\rmlh aう}\dumplist0
118 \head{JA--明kern (penなし)}
120 \setbox0=\hbox{\rmlh あ\kern3pt}\dumplist0
122 \setbox0=\hbox{\rmlh い\kern3pt}\dumplist0
124 \setbox0=\hbox{\rmlh う\kern3pt}\dumplist0
126 \head{明kern--JA (penなし)}
128 \setbox0=\hbox{\rmlh \kern3ptあ}\dumplist0
130 \setbox0=\hbox{\rmlh \kern3ptい}\dumplist0
132 \setbox0=\hbox{\rmlh \kern3ptう}\dumplist0
134 \head{JA--hbox (penなし)}
136 \setbox0=\hbox{\rmlh あ\hbox{}}\dumplist0
138 \setbox0=\hbox{\rmlh い\hbox{}}\dumplist0
140 \setbox0=\hbox{\rmlh う\hbox{}}\dumplist0
142 \setbox0=\hbox{\rmlh え\hbox{}}\dumplist0
144 \head{hbox--JA (penなし)}
146 \setbox0=\hbox{\rmlh \hbox{}あ}\dumplist0
148 \setbox0=\hbox{\rmlh \hbox{}い}\dumplist0
150 \setbox0=\hbox{\rmlh \hbox{}う}\dumplist0
152 \head{JA--penalty (penなし)} TODO: この場合の挙動はこれで良いか?
154 \setbox0=\hbox{\rmlh あ\penalty567}\dumplist0
156 \setbox0=\hbox{\rmlh い\penalty567}\dumplist0
158 \setbox0=\hbox{\rmlh う\penalty567}\dumplist0
160 \setbox0=\hbox{\rmlh え\penalty567}\dumplist0
162 \head{penalty--JA (penなし)} TODO: この場合の挙動はこれで良いか?
164 \setbox0=\hbox{\rmlh \penalty567あ}\dumplist0
166 \setbox0=\hbox{\rmlh \penalty567い}\dumplist0
168 \setbox0=\hbox{\rmlh \penalty567う}\dumplist0
172 \ltjsetparameter{prebreakpenalty={`(,123}}
173 \ltjsetparameter{postbreakpenalty={`あ,123}}
174 \ltjsetparameter{postbreakpenalty={`い,123}}
175 \ltjsetparameter{postbreakpenalty={`う,123}}
176 \ltjsetparameter{postbreakpenalty={`え,123}}
177 \ltjsetparameter{postbreakpenalty={`お,123}}
178 \ltjsetparameter{postbreakpenalty={`a,321}}
179 \head{JA--JA (penあり)}
181 \setbox0=\hbox{\rmlh あア}\dumplist0
183 \setbox0=\hbox{\rmlh あイ}\dumplist0
185 \setbox0=\hbox{\rmlh あウ}\dumplist0
187 \setbox0=\hbox{\rmlh いア}\dumplist0
189 \setbox0=\hbox{\rmlh いイ}\dumplist0
191 \setbox0=\hbox{\rmlh いウ}\dumplist0
193 \head{JA--EN (penあり)}
195 \setbox0=\hbox{\rmlh あa}\dumplist0
197 \setbox0=\hbox{\rmlh いa}\dumplist0
199 \setbox0=\hbox{\rmlh うa}\dumplist0
201 \setbox0=\hbox{\rmlh えa}\dumplist0
203 \setbox0=\hbox{\rmlh おa}\dumplist0
205 \head{EN--JA (penあり)}
207 \setbox0=\hbox{\rmlh aあ}\dumplist0
209 \setbox0=\hbox{\rmlh aい}\dumplist0
211 \setbox0=\hbox{\rmlh aう}\dumplist0
213 \head{italic correction}
215 \setbox0=\hbox{\it f\/(\/あ}\dumplist0
220 \noindent{\gt\bf [x]kanjiskipの挿入}
222 \head{kanjiskip from JFM, autospacing (JA--JA)}
223 \setbox0=\hbox{あ\rmlh あ}\dumplist0
225 {\ltjsetparameter{kanjiskip=\maxdimen}
226 \setbox0=\hbox{あ\rmlh あ}\dumplist0
227 \jfont\rmlk={psft:Ryumin-Light:jfm=test} at 12pt
228 \setbox0=\hbox{\rmlk は\rmlh あ}\dumplist0}
230 \def\naspc{\ltjsetparameter{autospacing=false}\relax}
231 \def\naxspc{\ltjsetparameter{autoxspacing=false}\relax}
232 \setbox0=\hbox{あ\naspc ああ}\dumplist0
234 \head{kanjiskip from JFM/autoxspacing (JA--EN)}
235 \setbox0=\hbox{\rmlh まx}\dumplist0
237 \setbox0=\hbox{\rmlh ま\naxspc x}\dumplist0
239 \setbox0=\hbox{\naxspc\rmlh まx}\dumplist0
241 {\ltjsetparameter{xkanjiskip=\maxdimen}\setbox0=\hbox{\rmlh まx}\dumplist0}
243 {\ltjsetparameter{jaxspmode={`ま,preonly}}
244 \setbox0=\hbox{\rmlh まx}\dumplist0}
245 {\ltjsetparameter{alxspmode={`x,postonly}}
246 \setbox0=\hbox{\rmlh まx}\dumplist0}
248 \head{kanjiskip from JFM/autoxspacing (EN--JA)}
249 \setbox0=\hbox{\rmlh xま}\dumplist0
251 \setbox0=\hbox{\rmlh x\naxspc ま}\dumplist0
253 \setbox0=\hbox{\naxspc\rmlh xま}\dumplist0
255 {\ltjsetparameter{xkanjiskip=\maxdimen}\setbox0=\hbox{\rmlh xま}\dumplist0}
257 {\ltjsetparameter{jaxspmode={`ま,postonly}}
258 \setbox0=\hbox{\rmlh xま}\dumplist0}
259 {\ltjsetparameter{alxspmode={`x,inhibit}}
260 \setbox0=\hbox{\rmlh xまおx}\dumplist0}