OSDN Git Service

Merge branch 'kitagawa_test' into kitagawa_adjust
[luatex-ja/luatexja.git] / test / jfm-hang.lua
1 -- -*- coding: utf-8 -*-
2 -- jfm-ujis.lua から派生
3 -- jlreq では行末の句読点の直後に二分空きがある
4
5
6 luatexja.jfont.define_jfm {
7    dir = 'yoko', version = 2,
8    zw = 1.0, zh = 1.0,
9    kanjiskip =  { 0.0, 0.25, 0 },
10    xkanjiskip = { 0.25, 0.25, .125 },
11    [0] = {
12       align = 'left', left = 0.0, down = 0.0,
13       width = 1.0, height = 0.88, depth = 0.12, italic=0.0,
14       glue = {
15          [1] = { 0.5 , 0.0, 0.5, ratio=1, kanjiskip_stretch=1 },
16          [2] = { 0, 0, 0, kanjiskip_shrink=1 },
17          [102] = { 0, 0, 0, kanjiskip_shrink=1 },
18          [3] = { 0.25, 0.0, 0.25, priority=1, ratio=1 },
19          [4] = { 0, 0, 0, kanjiskip_shrink=1 },
20          [6] = { 0, 0, 0, kanjiskip_shrink=1 },
21          [7] = { 0, 0, 0, kanjiskip_shrink=1 },
22          [8] = { 0, 0, 0, kanjiskip_shrink=1 },
23       }
24    },
25
26    [1] = { -- 開き括弧類
27       chars = {
28          '‘', '“', '〈', '《', '「', '『', '【', '〔', '〖',
29          '〘', '〝', '(', '[', '{', '⦅'
30       },
31       align = 'right', left = 0.0, down = 0.0,
32       width = 0.5, height = 0.88, depth = 0.12, italic=0.0,
33       glue = {
34 -- 3 のみ四分,あとは0
35          [0] = { 0, 0, 0, kanjiskip_shrink=1 },
36          [1] = { 0, 0, 0, kanjiskip_shrink=1 },
37          [2] = { 0, 0, 0, kanjiskip_shrink=1, kanjiskip_stretch=1 },
38          [102] = { 0, 0, 0, kanjiskip_shrink=1, kanjiskip_stretch=1 },
39          [3] = { 0.25, 0.0, 0.25, priority=1 },
40          [4] = { 0, 0, 0, kanjiskip_shrink=1 },
41          [5] = { 0, 0, 0, kanjiskip_shrink=1 },
42          [6] = { 0, 0, 0, kanjiskip_shrink=1 },
43          [7] = { 0, 0, 0, kanjiskip_shrink=1 },
44          [8] = { 0, 0, 0, kanjiskip_shrink=1 },
45       }
46    },
47
48    [2] = { -- 閉じ括弧類
49       chars = {
50          '’', '”', '〉', '》', '」', '』', '】', '〕',
51          '〗', '〙', '〟', ')', ']', '}', '⦆'
52       },
53       align = 'left', left = 0.0, down = 0.0,
54       width = 0.5, height = 0.88, depth = 0.12, italic=0.0,
55       end_adjust = { 0, 0.5 },
56       glue = {
57      -- 3 は四分, 2, 4, 9 は0, あとは0.5
58          [0] = { 0.5 , 0.0, 0.5, ratio=0, kanjiskip_stretch=1 },
59          [1] = { 0.5 , 0.0, 0.5, ratio=0, kanjiskip_stretch=1 },
60          [2] = { 0, 0, 0, kanjiskip_shrink=1},
61          [102] = { 0, 0, 0, kanjiskip_shrink=1},
62          [3] = { 0.25, 0.0, 0.25, priority=1, ratio=1 },
63          [4] = { 0, 0, 0, kanjiskip_shrink=1 },
64          [5] = { 0.5 , 0.0, 0.5, ratio=0, kanjiskip_stretch=1 },
65          [6] = { 0.5 , 0.0, 0.5, ratio=0, kanjiskip_stretch=1 },
66          [7] = { 0.5 , 0.0, 0.5, ratio=0, kanjiskip_stretch=1 },
67          [8] = { 0.5 , 0.0, 0.5, ratio=0, kanjiskip_stretch=1 },
68       }
69    },
70
71    [102] = { -- 読点類
72       chars = {
73          '、', ',*'
74       },
75       align = 'left', left = 0.0, down = 0.0,
76       width = 0.5, height = 0.88, depth = 0.12, italic=0.0,
77       end_adjust = { -0.5, 0, 0.5 }, -- ぶら下げ,半角取り,全角取り
78       glue = {
79      -- 3 は四分, 2, 4, 9 は0, あとは0.5
80          [0] = { 0.5 , 0.0, 0.5, ratio=0, kanjiskip_stretch=1 },
81          [1] = { 0.5 , 0.0, 0.5, ratio=0, kanjiskip_stretch=1 },
82          [2] = { 0, 0, 0, kanjiskip_shrink=1},
83          [102] = { 0, 0, 0, kanjiskip_shrink=1},
84          [3] = { 0.25, 0.0, 0.25, priority=1, ratio=1 },
85          [4] = { 0, 0, 0, kanjiskip_shrink=1 },
86          [5] = { 0.5 , 0.0, 0.5, ratio=0, kanjiskip_stretch=1 },
87          [6] = { 0.5 , 0.0, 0.5, ratio=0, kanjiskip_stretch=1 },
88          [7] = { 0.5 , 0.0, 0.5, ratio=0, kanjiskip_stretch=1 },
89          [8] = { 0.5 , 0.0, 0.5, ratio=0, kanjiskip_stretch=1 },
90       }
91    },
92
93    [3] = { -- 中点類
94       chars = {'・', ':', ';'},
95       align = 'middle', left = 0.0, down = 0.0,
96       width = 0.5, height = 0.88, depth = 0.12, italic=0.0,
97       end_adjust = { 0.25 },
98       glue = {
99 -- 3 のみ 0.5,あとは0.25
100          [0] = { 0.25, 0.0, 0.25, priority=1, ratio=1 },
101          [1] = { 0.25, 0.0, 0.25, priority=1, ratio=1 },
102          [2] = { 0.25, 0.0, 0.25, priority=1, ratio=1 },
103          [102] = { 0.25, 0.0, 0.25, priority=1, ratio=1 },
104          [3] = { 0.5 , 0.0, 0.5 , priority=1 },
105          [4] = { 0.25, 0.0, 0.25, priority=1, ratio=1 },
106          [5] = { 0.25, 0.0, 0.25, priority=1, ratio=1 },
107          [6] = { 0.25, 0.0, 0.25, priority=1, ratio=1 },
108          [7] = { 0.25, 0.0, 0.25, priority=1, ratio=1 },
109          [8] = { 0.25, 0.0, 0.25, priority=1, ratio=1 },
110       }
111    },
112
113    [4] = { -- 句点類
114       chars = {'。', '.'},
115       align = 'left', left = 0.0, down = 0.0,
116       width = 0.5, height = 0.88, depth = 0.12, italic=0.0,
117       end_adjust = { -0.5, 0.5 }, -- ぶら下げ,全角取り
118       -- (luatexja-adjust 下では半角取りを認めない)
119       glue = {
120          -- 3 は.75, 2, 4 は0, あとは0.5
121          [0] = { 0.5 , 0.0, 0.5, ratio=0, kanjiskip_stretch=1 },
122          [1] = { 0.5 , 0.0, 0.5, ratio=0, kanjiskip_stretch=1 },
123          [3] = { 0.75, 0.0, 0.25, priority=1, ratio=1./3, kanjiskip_stretch=1 },
124          [5] = { 0.5 , 0.0, 0.5, ratio=0, kanjiskip_stretch=1 },
125          [6] = { 0.5 , 0.0, 0.5, ratio=0, kanjiskip_stretch=1 },
126          [7] = { 0.5 , 0.0, 0.5, ratio=0, kanjiskip_stretch=1 },
127          [8] = { 0.5 , 0.0, 0.5, ratio=0, kanjiskip_stretch=1 },
128       }
129    },
130
131    [5] = { -- ダッシュ
132       chars = { '—', '―', '‥', '…', '〳', '〴', '〵', },
133       align = 'left', left = 0.0, down = 0.0,
134       width = 1.0, height = 0.88, depth = 0.12, italic=0.0,
135       glue = {
136          [1] = { 0.5 , 0.0, 0.5, ratio=1, kanjiskip_stretch=1 },
137          [2] = { 0, 0, 0, kanjiskip_shrink=1 },
138          [102] = { 0, 0, 0, kanjiskip_shrink=1 },
139          [3] = { 0.25, 0.0, 0.25, priority=1, ratio=1 },
140          [4] = { 0, 0, 0, kanjiskip_shrink=1 },
141          [6] = { 0, 0, 0, kanjiskip_shrink=1 },
142       },
143       kern = {
144          [5] = 0.0
145       }
146    },
147
148    [6] = { -- 感嘆符・疑問符
149       chars = { '?', '!', '‼', '⁇', '⁈', '⁉', },
150       align = 'left', left = 0.0, down = 0.0,
151       width = 1.0, height = 0.88, depth = 0.12, italic=0.0,
152       glue = {
153          [0] = { 0.5 , 0.0, 0.5, ratio=1, kanjiskip_stretch=1 },
154          [1] = { 0.5 , 0.0, 0.5, ratio=1, kanjiskip_stretch=1 },
155          [2] = { 0, 0, 0, kanjiskip_shrink=1 },
156          [102] = { 0, 0, 0, kanjiskip_shrink=1 },
157          [3] = { 0.75, 0.0, 0.25, priority=1, ratio=1 },
158          [4] = { 0, 0, 0, kanjiskip_shrink=1 },
159          [6] = { 0, 0, 0, kanjiskip_shrink=1 },
160          [7] = { 0.5 , 0.0, 0.5, ratio=1, kanjiskip_stretch=1 },
161          [8] = { 0, 0, 0, kanjiskip_shrink=1 },
162       },
163       kern = {
164          [5] = 0.0
165       }
166    },
167
168    [7] = { -- 半角カナ
169       chars = {
170          '。', '「', '」', '、', '・', 'ヲ', 'ァ', 'ィ', 'ゥ',
171          'ェ', 'ォ', 'ャ', 'ュ', 'ョ', 'ッ', 'ー', 'ア', 'イ',
172          'ウ', 'エ', 'オ', 'カ', 'キ', 'ク', 'ケ', 'コ', 'サ',
173          'シ', 'ス', 'セ', 'ソ', 'タ', 'チ', 'ツ', 'テ', 'ト',
174          'ナ', 'ニ', 'ヌ', 'ネ', 'ノ', 'ハ', 'ヒ', 'フ', 'ヘ',
175          'ホ', 'マ', 'ミ', 'ム', 'メ', 'モ', 'ヤ', 'ユ', 'ヨ',
176          'ラ', 'リ', 'ル', 'レ', 'ロ', 'ワ', 'ン', '゙', '゚',
177          "AJ1-516", "AJ1-517", "AJ1-518", "AJ1-519", "AJ1-520", "AJ1-521", "AJ1-522",
178          "AJ1-523", "AJ1-524", "AJ1-525", "AJ1-526", "AJ1-527", "AJ1-528", "AJ1-529",
179          "AJ1-530", "AJ1-531", "AJ1-532", "AJ1-533", "AJ1-534", "AJ1-535", "AJ1-536",
180          "AJ1-537", "AJ1-538", "AJ1-539", "AJ1-540", "AJ1-541", "AJ1-542", "AJ1-543",
181          "AJ1-544", "AJ1-545", "AJ1-546", "AJ1-547", "AJ1-548", "AJ1-549", "AJ1-550",
182          "AJ1-551", "AJ1-552", "AJ1-553", "AJ1-554", "AJ1-555", "AJ1-556", "AJ1-557",
183          "AJ1-558", "AJ1-559", "AJ1-560", "AJ1-561", "AJ1-562", "AJ1-563", "AJ1-564",
184          "AJ1-565", "AJ1-566", "AJ1-567", "AJ1-568", "AJ1-569", "AJ1-570", "AJ1-571",
185          "AJ1-572", "AJ1-573", "AJ1-574", "AJ1-575", "AJ1-576", "AJ1-577", "AJ1-578",
186          "AJ1-579", "AJ1-580", "AJ1-581", "AJ1-582", "AJ1-583", "AJ1-584", "AJ1-585",
187          "AJ1-586", "AJ1-587", "AJ1-588", "AJ1-589", "AJ1-590", "AJ1-591", "AJ1-592",
188          "AJ1-593", "AJ1-594", "AJ1-595", "AJ1-596", "AJ1-597", "AJ1-598",
189       },
190       align = 'left', left = 0.0, down = 0.0,
191       width = 0.5, height = 0.88, depth = 0.12, italic=0.0,
192       glue = {
193          [1] = { 0.5 , 0.0, 0.5, ratio=1, kanjiskip_stretch=1 },
194          [2] = { 0, 0, 0, kanjiskip_shrink=1 },
195          [102] = { 0, 0, 0, kanjiskip_shrink=1 },
196          [3] = { 0.25, 0.0, 0.25, priority=1, ratio=1 },
197          [4] = { 0, 0, 0, kanjiskip_shrink=1 },
198          [6] = { 0, 0, 0, kanjiskip_shrink=1 },
199          [7] = { 0, 0, 0, kanjiskip_shrink=1 },
200          [8] = { 0, 0, 0, kanjiskip_shrink=1 },
201       }
202    },
203
204    [8] = { -- 罫線類.
205       chars = {
206          '─', '━', '│', '┃', '┄', '┅', '┆', '┇',
207          '┈', '┉', '┊', '┋', '┌', '┍', '┎', '┏',
208          '┐', '┑', '┒', '┓', '└', '┕', '┖', '┗',
209          '┘', '┙', '┚', '┛', '├', '┝', '┞', '┟',
210          '┠', '┡', '┢', '┣', '┤', '┥', '┦', '┧',
211          '┨', '┩', '┪', '┫', '┬', '┭', '┮', '┯',
212          '┰', '┱', '┲', '┳', '┴', '┵', '┶', '┷',
213          '┸', '┹', '┺', '┻', '┼', '┽', '┾', '┿',
214          '╀', '╁', '╂', '╃', '╄', '╅', '╆', '╇',
215          '╈', '╉', '╊', '╋', '╌', '╍', '╎', '╏',
216          '═', '║', '╒', '╓', '╔', '╕', '╖', '╗',
217          '╘', '╙', '╚', '╛', '╜', '╝', '╞', '╟',
218          '╠', '╡', '╢', '╣', '╤', '╥', '╦', '╧',
219          '╨', '╩', '╪', '╫', '╬', '╭', '╮', '╯',
220          '╰', '╱', '╲', '╳', '╴', '╵', '╶', '╷',
221          '╸', '╹', '╺', '╻', '╼', '╽', '╾', '╿',
222       },
223       align = 'left', left = 0.0, down = 0.0,
224       width = 1.0, height = 0.88, depth = 0.12, italic=0.0,
225       glue = {
226          [1] = { 0.5 , 0.0, 0.5, ratio=1, kanjiskip_stretch=1 },
227          [2] = { 0, 0, 0, kanjiskip_shrink=1 },
228          [102] = { 0, 0, 0, kanjiskip_shrink=1 },
229          [3] = { 0.25, 0.0, 0.25, priority=1, ratio=1 },
230          [4] = { 0, 0, 0, kanjiskip_shrink=1 },
231          [6] = { 0, 0, 0, kanjiskip_shrink=1 },
232       },
233       kern = {
234          [8] = 0.0
235       }
236    },
237
238
239    [99] = { -- box末尾
240       chars = {'boxbdd', 'parbdd'},
241       glue = {
242          [3] = { 0.25, 0.0, 0.25, priority=1 },
243       }
244    },
245
246 }