]> git.ipfire.org Git - people/ms/ipfire-3.x.git/blob - groff/patches/groff-1.18.1.4-debian_fixes-1.patch
perl-File-HomeDir: New package
[people/ms/ipfire-3.x.git] / groff / patches / groff-1.18.1.4-debian_fixes-1.patch
1 Submitted By: Matthew Burgess (matthew at linuxfromscratch dot org)
2 Date: 2006-10-20
3 Initial Package Version: 1.18.1.4
4 Origin: http://ftp.debian.org/debian/pool/main/g/groff/groff_1.18.1.1-12.diff.gz
5 Upstream Status: This is a debian-specific patch
6 Description: Adds the ascii8 and nippon devices to groff for man-db.
7
8 diff -Naur groff-1.18.1.4.orig/ChangeLog.jp groff-1.18.1.4/ChangeLog.jp
9 --- groff-1.18.1.4.orig/ChangeLog.jp 1970-01-01 00:00:00.000000000 +0000
10 +++ groff-1.18.1.4/ChangeLog.jp 2006-10-18 18:54:44.000000000 +0000
11 @@ -0,0 +1,345 @@
12 +2002-11-04 Fumitoshi UKAI <ukai@debian.or.jp>
13 +
14 + * src/libs/libgroff/encoding.cc: for C or POSIX locale,
15 + use ascii8 encoding handler
16 + * font/devX*: new font desc for M, G
17 + * src/xditview: support ENABLE_MULTIBYTE (Japanese only?)
18 +
19 +2002-10-09 Fumitoshi UKAI <ukai@debian.or.jp>
20 +
21 + * update groff-1.18-7
22 +
23 +2002-09-23 Fumitoshi UKAI <ukai@debian.or.jp>
24 +
25 + * src/roff/troff/input.cc: fix bug in wchar_charinfo()
26 + check u<CODE> where <CODE> is 4- HEX chars
27 + * src/device/grohtml/post-html.cc: works ENABLE_MULTIBYTE
28 + * font/devhtml: add font M, G for Japanese
29 +
30 +2002-09-22 Fumitoshi UKAI <ukai@debian.or.jp>
31 +
32 + * new multibyte patch
33 +
34 +2001-08-16 Fumitoshi UKAI <ukai@debian.or.jp>
35 +
36 + * tmac/euc-jp.tmac:
37 + fix disappearing `-' char
38 +
39 +2001-07-21 Fumitoshi UKAI <ukai@debian.or.jp>
40 +
41 + * add ENABLE_MULTIBYTE support to src/xditview
42 +
43 +2001-07-20 Fumitoshi UKAI <ukai@debian.or.jp>
44 +
45 + * introduce "fontset" in font/*/DESC
46 + obsoletes "ondemand"
47 +
48 +2001-07-19 Fumitoshi UKAI <ukai@debian.or.jp>
49 +
50 + * don't use input_encoding->is_wchar_code()
51 + * fix troffrc empty line
52 + * fix duplicate strcasecmp()
53 +
54 +2001-07-19 Fumitoshi UKAI <ukai@debian.or.jp>
55 +
56 + * sub font selection move into environment::add_char()
57 + it makes possible to use \[uni<code>]
58 +
59 +2001-07-19 Fumitoshi UKAI <ukai@debian.or.jp>
60 +
61 + * use generic iconv_handler instead of euc_handler
62 + * internal code now uses UCS-2
63 +
64 +2001-07-19 Fumitoshi UKAI <ukai@debian.or.jp
65 +
66 + * wchar%x -> uni%X
67 + - still no code conversion
68 + - font description is not accurate
69 + * change "fixed" to charset range
70 +
71 +2001-07-18 Fumitoshi UKAI <ukai@debian.or.jp>
72 +
73 + * Configuration Change:
74 + obsolete: --enable-japanese (#ifdef NIPPON)
75 + new: --enable-multibyte (#ifdef ENABLE_MULTIBYTE)
76 +
77 +2001-07-18 Fumitoshi UKAI <ukai@debian.or.jp>
78 +
79 + * create charinfo for wchar on demand (src/roff/troff/input.cc)
80 + * use "fixed" for font wchar metric (src/libs/libgroff/font.cc)
81 + - font/*/M,G
82 +
83 +2001-07-17 Fumitoshi UKAI <ukai@debian.or.jp>
84 +
85 + * add utf8 encoding handler to src/libs/libgroff/encoding.cc
86 + (this utf8 encodig handler is too slow!)
87 +
88 +2001-07-15 Fumitoshi UKAI <ukai@debian.or.jp>
89 +
90 + * based on groff 1.17.2-1
91 + * use src/include/encoding.h instead of eucmac.h
92 + * introduce src/libs/libgroff/encoding.cc
93 + * introduce tmac/euc-jp.tmac for EUC-JP documents
94 +
95 +2001-05-24 Fumitoshi UKAI <ukai@debian.or.jp>
96 +
97 + * Apply for groff-1.17
98 +
99 +2000-01-06 Yoshiaki Yanagihara <yochi@debian.or.jp>
100 +
101 + * Apply japanese patch "jgroff-0.101"
102 + (thanks hanataka@abyss.rim.or.jp).
103 + * Added japanese extention option at configure.in, aclocal.m4.
104 +
105 +Sat Jan 1 17:10:32 JST 2000 HANATAKA Shinya <hanataka@abyss.rim.or.jp>
106 +
107 + * jgroff-0.100 ¤ò¤½¤Î¤Þ¤Þ groff-1.14 ¤ËŬÍѤ·¤Æ jgroff-101
108 + ¤È¤·¤¿¡£
109 + * grohtml ¤òÆüËܸì¤ËÂбþ¤µ¤»¤ë¡£
110 + * ÆüËܸì¥Þ¥Ë¥å¥¢¥ëÍÑ¤Ë tmac.docj ¤È tmac.andocj ¥Þ¥¯¥í¤òÄɲá£
111 +
112 +Sun Mar 15 18:23:12 1998 Yoshiaki Yanagihara <yochi@debian.or.jp>
113 +
114 + * jgroff ¤Î¥Ù¡¼¥¹¤ò groff-1.11a ¤ËÊѹ¹¤·¡¢jgroff-0.99¥Ñ¥Ã¥Á¤ò
115 + ŬÍѤ·¤¿¤â¤Î¤ò jgroff-0.100 ¤È¤·¤¿¡£
116 + ´ðËÜŪ¤Ë jgroff-0.99 ¤Èµ¡Ç½¤ÏƱ¤¸ *¤Ï¤º*¡£
117 +
118 +Fri Dec 22 11:47:46 1995 Kitagawa Toshiyuki <tm-kita@kh.rim.or.jp>
119 +
120 + * ¥Ð¡¼¥¸¥ç¥ó0.99¡£
121 +
122 +Mon Dec 18 18:28:37 1995 Kitagawa Toshiyuki <tm-kita@kh.rim.or.jp>
123 +
124 + * tmac/Makefile.sub: ¥¿¡¼¥²¥Ã¥È stamp-wrap¡¢uninstall_sub ¤¬°ìÉô
125 + OS¤Îsh¤Ç¹½Ê¸¥¨¥é¡¼¤È¤Ê¤ë¥ª¥ê¥¸¥Ê¥ë¥Ð¥°¤ò½¤Àµ¡£
126 +
127 +Wed Dec 13 15:09:26 1995 Kitagawa Toshiyuki <tm-kita@kh.rim.or.jp>
128 +
129 + * jgroff.sh: ¥ª¥ê¥¸¥Ê¥ë¤Ç¥¤¥ó¥¹¥È¡¼¥ë¥Ñ¥¹¤¬Êѹ¹¤µ¤ì¤¿¤Î¤Ë¹ç¤ï¤»¡¢
130 + GROFF_TMAC_PATH¡¢GROFF_FONT_PATH¤òshare/groffÇÛ²¼¤ËÊѹ¹¡£
131 +
132 +Sat Dec 9 15:28:36 1995 Kitagawa Toshiyuki <tm-kita@kh.rim.or.jp>
133 +
134 + * wchar.h¤«¤éeucmac.h¤Ë¥Õ¥¡¥¤¥ë̾¤òÊѹ¹¡£
135 +
136 +Fri Dec 8 12:15:47 1995 Yoshio Takaeda <shio@yinyan.bekkoame.or.jp>
137 +
138 + * troff/env.cc(add_char): ¡ØASCIIʸ»ú + ²þ¹Ô¥³¡¼¥É + EUCʸ»ú¡Ù¤È¤¤¤¦
139 + ¥Ñ¥¿¡¼¥ó¤Î»þ¡¢²þ¹Ô¥³¡¼¥É¤¬¥¹¥Ú¡¼¥¹¤ËÊÑ´¹¤µ¤ì¤Ê¤¤¥Ð¥°¤ò½¤Àµ¡£
140 +
141 +Thu Dec 7 21:35:06 1995 Yanagihara Yoshiaki <yosiaki@bsd2.kbnes.nec.co.jp>
142 +
143 + * troff/input.cc (process_input_stack): gcc-2.7.0¤ÇÊÑ¿ôÄêµÁ¤¬¥¹¥³¡¼¥×
144 + °ãÈ¿¤È¤Ê¤Ã¤Æ¤·¤Þ¤¦²Õ½ê¤ò½¤Àµ¡£
145 +
146 +Thu Dec 7 21:35:06 1995 Yanagihara Yoshiaki <yosiaki@bsd2.kbnes.nec.co.jp>
147 +
148 + * jgroff¤Î¥Ù¡¼¥¹¥½¡¼¥¹¤ògroff-1.10¤ËÊѹ¹¡£
149 +
150 +Thu Apr 6 16:56:32 1995 Kitagawa Toshiyuki <kitagawa@bsd2.kbnes.nec.co.jp>
151 +
152 + * devdvi/M.proto-NTT: DNP¤Îpk¥Õ¥©¥ó¥È¤Î¥Á¥§¥Ã¥¯¥µ¥àÃͤ¬0¤Ê¤Î¤Ç¡¢¤³
153 + ¤ì¤Ë¹ç¤ï¤»¤Æchecksum¤ÎÃͤò0¤ËÊѹ¹¡£
154 +
155 +Mon Apr 3 20:36:37 1995 Kitagawa Toshiyuki <kitagawa@bsd2.kbnes.nec.co.jp>
156 +
157 + * troff/env.cc (possibly_break_line):
158 + line¥ê¥¹¥ÈÃæ¤Îkword_space_node¤òÄ´À°¤¹¤ë½èÍý¤Ç¡¢lineÃæ¤Ë¤³¤Î¥Î¡¼¥É
159 + ¤¬´Þ¤Þ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ï½èÍý¤ò¥¹¥­¥Ã¥×¤¹¤ë¤è¤¦¤Ë¤·¤¿(EUC¥³¡¼¥É¤ò´Þ¤Þ
160 + ¤Ê¤¤roff¤ò½èÍý¤¹¤ë¾ì¹ç¤Ë¤Ïkword_space_node¤Ï¸½¤ì¤Ê¤¤¤Î¤Ç½èÍý¤¬¹â®
161 + ²½¤µ¤ì¤ë)¡£
162 +
163 +Mon Apr 3 20:36:37 1995 Kitagawa Toshiyuki <kitagawa@bsd2.kbnes.nec.co.jp>
164 +
165 + * troff/env.cc (add_char): hwkern¡¢vlower¤Î½é´ü²½¤Ïdevice½é´ü²½¸å
166 + ¤Ë°ìÅÙ¤À¤±¹Ô¤¨¤ÐÎɤ¤¤Î¤Çenvironment¥¯¥é¥¹¤Î¥³¥ó¥¹¥È¥é¥¯¥¿¤Ç¤³¤ì¤ò
167 + ¹Ô¤¦¤è¤¦¤ËÊѹ¹¡£
168 +
169 +Sat Apr 1 17:57:23 1995 Kitagawa Toshiyuki <kitagawa@bsd2.kbnes.nec.co.jp>
170 +
171 + * troff/input.cc (mount_on_demand): on demand¤Ç¥Þ¥¦¥ó¥È¤µ¤ì¤ë¥Õ¥©
172 + ¥ó¥È̾¤ò¥Ç¥Ð¥¤¥¹¤´¤È¤ÎDESC¥Õ¥¡¥¤¥ë¤Ç»ØÄê¤Ç¤­¤ë¤è¤¦¤ËÊѹ¹¡£
173 + ¥Ç¥£¥ì¥¯¥Æ¥£¥Öondemand¤Ç»ØÄꤷ¤¿¥Õ¥©¥ó¥È¤¬on demand¤Ç¥Þ¥¦¥ó¥È¤µ¤ì¤ë¡£
174 +
175 +Fri Mar 31 20:23:43 1995 Kitagawa Toshiyuki <kitagawa@bsd2.kbnes.nec.co.jp>
176 +
177 + * libgroff/font.cc (load): ´Á»ú¥Õ¥©¥ó¥È¥Õ¥¡¥¤¥ëÍѤ˥ǥ£¥ì¥¯¥Æ¥£¥Ö
178 + fixedkanji¤òÄɲᣤ³¤ì¤Ï³Æʸ»ú¤Î¥á¥È¥ê¥Ã¥¯¤¬Á´¤ÆƱ¤¸¤Ç¤¢¤ë»ö¤ò»ØÄê
179 + ¤¹¤ë¤â¤Î¤Ç¡¢fixedkanji¤¬»ØÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ïcharset¤Ïɾ²Á¤µ¤ì¤Ê¤¤
180 + ¤¿¤á´Á»ú¥Õ¥©¥ó¥È¤Î¥í¡¼¥É¤¬Â®¤¤¡£
181 +
182 +Thu Mar 30 18:20:24 1995 Kitagawa Toshiyuki <kitagawa@bsd2.kbnes.nec.co.jp>
183 +
184 + * troff: node¼±Ê̤òʸ»úÎóÈæ³Ó¤Ç¹Ô¤Ã¤Æ¤¤¤¿¤¬¹â®²½¤Î¤¿¤á¿ôÃÍÈæ³Ó¤Ë
185 + Êѹ¹¤·¤¿¡£
186 +
187 +Wed Mar 29 20:20:49 1995 Kitagawa Toshiyuki <kitagawa@bsd2.kbnes.nec.co.jp>
188 +
189 + * troff/input.cc: ´Á»ú¥Õ¥©¥ó¥È(M¤ÈG)¤òon demand¤Ç¥Þ¥¦¥ó¥È¤¹¤ë¤è¤¦
190 + ¤ËÊѹ¹¡£¤³¤ì¤Ë¤è¤Ã¤Æ´Á»ú¤ò´Þ¤Þ¤Ê¤¤roff¥Õ¥¡¥¤¥ë¤Î½èÍý»þ´Ö¤¬¹â®²½¤µ
191 + ¤ì¤¿¡£
192 +
193 +Fri Mar 10 15:34:26 1995 Shigeki Yoshida <shige@theta.iis.u-tokyo.ac.jp>
194 +
195 + * troff/input.cc (process): geqn¤Ç¡¢
196 +
197 + .EQ
198 + Í×ÁÇ sub µ­¹æ
199 + .EN
200 +
201 + ¤ò½èÍý¤¹¤ë¤È¡¢"illegal token in argument to \Z"¤È¤Ê¤Ã¤Æ¤·¤Þ¤¦¥Ð¥°
202 + (\Z¥·¡¼¥±¥ó¥¹¤Î°ú¿ô¤ËEUCʸ»ú¤¬Í褿¾ì¹ç¤ÎÂбþϳ¤ì)¤ò½¤Àµ¡£
203 +
204 +Mon Feb 6 11:22:33 1995 Yoshio Takaeda <e50110@sakura.kudpc.kyoto-u.ac.jp>
205 +
206 + * troff/input.cc: ¹ÔƬ¶Ø§ʸ»ú¤ÎEUC¥³¡¼¥É¤Î°ìÉô¤¬ÉÔÀµ¡£
207 +
208 +Mon Jan 30 14:02:54 1995 Kitagawa Toshiyuki <kitagawa@bsd2.kbnes.nec.co.jp>
209 +
210 + * ¥Ð¡¼¥¸¥ç¥ó0.97¡£
211 +
212 +Fri Dec 10 14:26:14 1994 Kazutaka YOKOTA <yokota@zodiac.mech.utsunomiya-u.ac.jp>
213 +
214 + * devdvi/M.proto: NTT JTeX¤ÈASCIIÆüËܸìTeXξÊý¤Îdvi¥Õ¥¡¥¤¥ë¤ò°·¤¨¤ë¤è¤¦
215 + M.proto¥Õ¥¡¥¤¥ë¤òÊѹ¹¡£
216 +
217 +Fri Dec 9 14:26:14 1994 Kazutaka YOKOTA <yokota@zodiac.mech.utsunomiya-u.ac.jp>
218 +
219 + * troff/node.cc: boldfont_list[]¤Ë¥Õ¥©¥ó¥È̾ B ¤òÅÐÏ¿¤·¤Æ¤¤¤Ê¤«¤Ã
220 + ¤¿¤¿¤á¡¢dvi¥Õ¥¡¥¤¥ë¤Ë¥´¥·¥Ã¥¯ÂΤ¬½ÐÎϤµ¤ì¤Æ¤¤¤Ê¤«¤Ã¤¿¡£
221 +
222 +Fri Dec 9 14:23:22 1994 Kazutaka YOKOTA <yokota@zodiac.mech.utsunomiya-u.ac.jp>
223 +
224 + * grotty/tty.cc (add_char): EUCʸ»ú¤ËÂФ·¤ÆWCHAR_MODE¤òÀßÄꤷ¤Æ¤¤
225 + ¤Ê¤«¤Ã¤¿¤¿¤á¡¢tty½ÐÎϤǥ´¥·¥Ã¥¯ÂΤ¬Æó½ÅÂǤÁ¤µ¤ì¤Æ¤¤¤Ê¤«¤Ã¤¿¡£
226 +
227 +Fri Dec 9 14:19:33 1994 Kazutaka YOKOTA <yokota@zodiac.mech.utsunomiya-u.ac.jp>
228 +
229 + * devdvi/Makefile.sub: ¥Õ¥©¥ó¥È¥Õ¥¡¥¤¥ë G ¤Ç¡¢name¥Ç¥£¥ì¥¯¥Æ¥£¥Ö¤¬
230 + `name M'¤Ë¤Ê¤Ã¤Æ¤¤¤ë¡£
231 +
232 +Wed Nov 30 13:24:54 1994 Kitagawa Toshiyuki <kitagawa@bsd2.kbnes.nec.co.jp>
233 +
234 + * ¥Ð¡¼¥¸¥ç¥ó0.96¡£
235 +
236 + * grodvi/dvi.cc: FreeBSD 1.1.5R¤Îstrcmp(3)¤Ç¤Ï°ú¿ô¤Ë¥Ì¥ë¥Ý¥¤¥ó¥¿¤ò
237 + ÅϤ¹¤È¥³¥¢¥À¥ó¥×¤·¤Æ¤·¤Þ¤¦¤Î¤Ç¡¢¤³¤ì¤ò²óÈò¤¹¤ë¥³¡¼¥É¤òÄɲä·¤¿¡£
238 +
239 +Tue Nov 29 13:52:54 1994 Kitagawa Toshiyuki <kitagawa@bsd2.kbnes.nec.co.jp>
240 +
241 + * troff/input.cc: EUC¤Î¥¹¥Ú¡¼¥¹Ê¸»ú(0xa1a1)¤ÏASCII¤Î¥¹¥Ú¡¼¥¹Ê¸»ú¤È
242 + ¤·¤Æ½èÍý¤¹¤ë¤è¤¦½¤Àµ¡£
243 +
244 + * devnippon/createM: JISX0208¤Ë¤ª¤¤¤Æʸ»ú¤¬Ì¤ÄêµÁ¤ÎÉôʬ¤Ë¤Ä¤¤¤Æ¤Ï
245 + ¥Õ¥©¥ó¥È¥Õ¥¡¥¤¥ë¤Ë½ÐÎϤ·¤Ê¤¤¤è¤¦½¤Àµ¡£
246 +
247 +Mon Nov 28 18:15:31 1994 Kitagawa Toshiyuki <kitagawa@bsd2.kbnes.nec.co.jp>
248 +
249 + * grodvi/dvi.cc: grodvi¤òÆüËܸ첽¤·¤¿¡£
250 +
251 +Fri Nov 25 15:39:05 1994 Kitagawa Toshiyuki <kitagawa@bsd2.kbnes.nec.co.jp>
252 +
253 + * troff/env.cc: EUCʸ»ú¤Ç»Ï¤Þ¤ë¹Ô¤ËÂФ·¤Æ¶ÑÅù³ä¤êÉÕ¤±¤¬¹Ô¤ï¤ì¤¿¾ì
254 + ¹ç¡¢¹ÔƬ¤Ë;ʬ¤Ê¶õÇò¤¬Æþ¤ë»ö¤¬¤¢¤Ã¤¿¤Î¤Ç¤³¤ì¤ò½¤Àµ¤·¤¿¡£
255 +
256 +Fri Nov 18 20:19:55 1994 Masubuchi Toshimichi <tmasu@st.rim.or.jp>
257 +
258 + * devnippon/createM.c: createM¤Î½ªÎ»¥¹¥Æ¡¼¥¿¥¹¤¬ÉÔÄê¤Ë¤Ê¤ë¤¿¤á¡¢
259 + make¤¬½ªÎ»¤·¤Æ¤·¤Þ¤¦¡£createM¤Î½ªÎ»¥¹¥Æ¡¼¥¿¥¹¤¬0¤Ë¤Ê¤ë¤è¤¦½¤Àµ¡£
260 +
261 + * devnippon/Makefile.sub: PATH´Ä¶­ÊÑ¿ô¤Ë¥«¥ì¥ó¥È¥Ç¥£¥ì¥¯¥È¥ê¤¬´Þ¤Þ
262 + ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¡¢devnippon/M¤òmake¤¹¤ë»þÅÀ¤ÇcreateM¤¬¸«¤Ä¤«¤é¤ºmake
263 + ¥¨¥é¡¼¤Ë¤Ê¤ë¥Ð¥°¤ò½¤Àµ¡£
264 +
265 +Thu Nov 17 17:11:26 1994 Kitagawa Toshiyuki <kitagawa@bsd2.kbnes.nec.co.jp>
266 +
267 + * devnippon/createM.c: gets()¤òfgets()¤ËÊѹ¹¡£
268 +
269 +Sat Nov 12 13:38:19 1994 Kitagawa Toshiyuki <kitagawa@bsd2.kbnes.nec.co.jp>
270 +
271 + * ¥Ð¡¼¥¸¥ç¥ó0.95¡£
272 +
273 + * troff/env.cc: .stt ¥ê¥¯¥¨¥¹¥È¤òÄɲÃ(¥í¡¼¥«¥ë¤Ê¥Þ¥Ë¥å¥¢¥ë½ñ¼°¤Ë¹ç
274 + ¤ï¤»¤ë¤¿¤á -> ¤³¤Î¥ê¥¯¥¨¥¹¥È¤ÏÈó¸ø³«)¡£
275 +
276 + * troff/input.cc (init_charset_table): ASCII¤Î¹ÔƬ¶Ø§ʸ»ú¤È¤·¤Æ
277 + ,:;>}¤òÄɲä·¤¿¡£
278 +
279 + * EUC¥Õ¥©¥ó¥È¥Õ¥¡¥¤¥ë¤Ï¡¢make»þ¤Ë¥Ä¡¼¥ë¤Ë¤è¤Ã¤ÆÀ¸À®¤¹¤ë¤è¤¦Êѹ¹¡£
280 + ¤³¤ì¤Ë¤è¤êpatch¥µ¥¤¥º¤¬¤«¤Ê¤ê¾®¤µ¤¯¤Ê¤Ã¤¿¡£
281 +
282 +Fri Nov 11 20:53:00 1994 Kitagawa Toshiyuki <kitagawa@bsd2.kbnes.nec.co.jp>
283 +
284 + * troff/env.cc (add_char): <EUCʸ»ú> + <ASCIIʸ»ú>¤Î¾ì¹ç¡¢´Ö¤ËÆþ¤ì
285 + ¤ë¶õÇò¤Ï¶Ø§¤Ë°ãÈ¿¤·¤Ê¤¤¤«¤®¤ê¥Ö¥ì¡¼¥¯²Äǽ¤Ê¶õÇò¤¬Æþ¤ë¤è¤¦½¤Àµ¤·¤¿¡£
286 +
287 +
288 +Tue Oct 25 04:46:09 1994 Kitagawa Toshiyuki (kitagawa@bsd2.kbnes.nec.co.jp)
289 +
290 + * ¥Ð¡¼¥¸¥ç¥ó0.94¡£
291 +
292 + * libdriver/input.cc (do_file): -Tlatin1¤ÇEUC¤Ç¤Ï¤Ê¤¤Ê¸»ú¥³¡¼¥É¤ò
293 + EUC¤ÈȽÃǤ·¤Æ¤·¤Þ¤¦¥Ð¥°¤ò½¤Àµ¡£
294 +
295 +Mon Oct 24 07:16:19 1994 Kitagawa Toshiyuki (kitagawa@bsd2.kbnes.nec.co.jp)
296 +
297 + * troff/node.cc (is_boldfont): FreeBSD 1.1.5¤Ç¡¢¥¼¥íÈÖÃÏ»²¾È¤Î¤¿¤á¥³
298 + ¥¢¥À¥ó¥×¤¹¤ë¥Ð¥°¤ò½¤Àµ¡£
299 +
300 + * indxbib/dirnamemax.c: FreeBSD 1.1.5¤Ïpathconf()¤ò»ý¤Ã¤Æ¤¤¤Ê¤¤¤Î¤Ç
301 + _POSIX_VERSION¤òundef¤·¤¿¡£
302 +
303 + * ¥Ð¡¼¥¸¥ç¥ó0.93¡£
304 +
305 + * geqn¤òÆüËܸ첽¤·¤¿¡£
306 +
307 + * devps/DESC¤Îwcharkern¤òÀßÄꤹ¤ë¤È¹ÔƬ¤Ë¶õÇò¤¬Æþ¤Ã¤Æ¤·¤Þ¤¦¥Ð¥°¤Î
308 + ½¤ÀµÊýË¡¤òÊѹ¹¡£
309 +
310 +Sat Oct 22 08:19:15 1994 Kitagawa Toshiyuki (kitagawa@bsd2.kbnes.nec.co.jp)
311 +
312 + * ¥Ð¡¼¥¸¥ç¥ó0.90¡£
313 +
314 + * xtotroff¤òÆüËܸ첽¡£
315 +
316 +Fri Oct 21 05:33:02 1994 Kitagawa Toshiyuki (kitagawa@bsd2.kbnes.nec.co.jp)
317 +
318 + * devps/DESC¤Îwcharkern¤òÀßÄꤹ¤ë¤È¹ÔƬ¤Ë¶õÇò¤¬Æþ¤Ã¤Æ¤·¤Þ¤¦»ö¤¬¤¢
319 + ¤Ã¤¿¤Î¤Ç¡¢¤³¤ì¤ò½¤Àµ¡£
320 +
321 + * pre-release¥Ð¡¼¥¸¥ç¥ó¡£
322 +
323 + * gxditview¤òÆüËܸ첽¤·¤¿(¥Õ¥©¥ó¥È¥á¥È¥ê¥Ã¥¯¤Î¼è¤ê½Ð¤·¤¬¤¤¤¤²Ã¸º)¡£
324 +
325 +Thu Oct 20 05:23:09 1994 Kitagawa Toshiyuki (kitagawa@bsd2.kbnes.nec.co.jp)
326 +
327 + * ¥Õ¥©¥ó¥ÈÈÖ¹æ3¤Ë¥Ü¡¼¥ë¥ÉÂΰʳ°¤Î¥Õ¥©¥ó¥È¤ò¥Þ¥¦¥ó¥È¤·¤¿¾ì¹ç¡¢´Á»ú¥Õ¥©
328 + ¥ó¥È¤¬¥´¥·¥Ã¥¯ÂΤˤʤäƤ·¤Þ¤¦¥Ð¥°¤ò½¤Àµ¡£
329 +
330 +Wed Oct 19 06:48:55 1994 Kitagawa Toshiyuki (kitagawa@bsd2.kbnes.nec.co.jp)
331 +
332 + * beta¥Ð¡¼¥¸¥ç¥ó¡£
333 +
334 +Tue Oct 18 05:02:59 1994 Kitagawa Toshiyuki (kitagawa@bsd2.kbnes.nec.co.jp)
335 +
336 + * pic:
337 + gpic¤òÆüËܸìÂбþ¤·¤¿¡£
338 +
339 + * tbl:
340 + gtbl¤òÆüËܸìÂбþ¤·¤¿¡£
341 +
342 + * troff/troff:
343 + Times-Bold°Ê³°¤Î¥Ü¡¼¥ë¥ÉÂΤ¬¥«¥ì¥ó¥È¥Õ¥©¥ó¥È¤Î»þ¡¢´Á»ú¥Õ¥©¥ó¥È¤¬¥´
344 + ¥·¥Ã¥¯¤ËÀÚ¤êÂؤï¤é¤Ê¤¤¥Ð¥°¤ò½¤Àµ¡£
345 +
346 + * troff/troff:
347 + DESC¤Ë¥Ç¥£¥ì¥¯¥Æ¥£¥Öwcharkern¤òÄɲä·¡¢ASCIIʸ»ú¤ÈEUCʸ»ú¤Î´Ö¤Ë¡¢
348 + »ØÄꤷ¤¿unit¿ô¤À¤±breakÉÔ²Äǽ¤Ê¶õÇò¤òÆþ¤ì¤ë¤è¤¦¤Ë¤·¤¿¡£
349 +
350 + * troff/troff:
351 + DESC¤Ë¥Ç¥£¥ì¥¯¥Æ¥£¥Ölowerwchar¤òÄɲä·¡¢ASCIIʸ»ú¤ËÂФ·¤ÆEUCʸ»ú¤ò¡¢
352 + »ØÄꤷ¤¿unit¿ô¤À¤±²¼¤²¤ë¤è¤¦¤Ë¤·¤¿(ASCIIʸ»ú¤¬Íî¤Á¹þ¤ó¤Ç¸«¤¨¤ë¤¿¤á)¡£
353 +
354 +Fri Oct 14 08:29:06 1994 Kitagawa Toshiyuki (kitagawa@bsd2.kbnes.nec.co.jp)
355 +
356 + * aplah¥Ð¡¼¥¸¥ç¥ó¡£
357 diff -Naur groff-1.18.1.4.orig/Makefile.in groff-1.18.1.4/Makefile.in
358 --- groff-1.18.1.4.orig/Makefile.in 2002-09-16 16:51:00.000000000 +0000
359 +++ groff-1.18.1.4/Makefile.in 2006-10-18 18:54:44.000000000 +0000
360 @@ -136,7 +136,11 @@
361 # directory will be always added.
362 # `troffrc' and `troffrc-end' (and `eqnrc') are searched neither in the
363 # current nor in the home directory.
364 +ifeq (,$(extratmacdirs))
365 tmacpath=$(systemtmacdir):$(localtmacdir):$(tmacdir)
366 +else
367 +tmacpath=$(systemtmacdir):$(localtmacdir):$(tmacdir):$(extratmacdirs)
368 +endif
369
370 # `sys_tmac_prefix' is prefix (if any) for system macro packages.
371 sys_tmac_prefix=@sys_tmac_prefix@
372 @@ -195,6 +199,9 @@
373 man7ext=7
374 man7dir=$(manroot)/man$(man7ext)
375
376 +# DVI file format.
377 +DVIFORMAT=@DVIFORMAT@
378 +
379 # The configure script checks whether all necessary utility programs for
380 # grohtml are available -- only then we can build the HTML documentation.
381 make_html=@make_html@
382 @@ -261,6 +268,8 @@
383 # -DRETSIGTYPE=int if signal handlers return int not void
384 # -DIS_EBCDIC_HOST if the host's encoding is EBCDIC
385 # -DPAGEA4 if the the printer's page size is A4
386 +# -DENABLE_MULTIBYTE enable multibyte extension
387 +# -DHAVE_LANGINFO_CODESET if you have nl_langinfo(CODESET)
388 DEFINES=@DEFS@
389
390 # Include
391 @@ -395,7 +404,8 @@
392 "PERLPATH=$(PERLPATH)" \
393 "SH_SCRIPT_SED_CMD=$(SH_SCRIPT_SED_CMD)" \
394 "PURIFY=$(PURIFY)" \
395 - "PURIFYCCFLAGS=$(PURIFYCCFLAGS)"
396 + "PURIFYCCFLAGS=$(PURIFYCCFLAGS)" \
397 + "DVIFORMAT=$(DVIFORMAT)"
398
399 SHELL=/bin/sh
400 INCDIRS=src/include
401 @@ -437,8 +447,10 @@
402 font/devhtml
403 ALLTTYDEVDIRS=\
404 font/devascii \
405 + font/devascii8 \
406 font/devlatin1 \
407 font/devutf8 \
408 + font/devnippon \
409 font/devcp1047
410 OTHERDIRS=\
411 man \
412 @@ -483,7 +495,7 @@
413 fi
414
415 do=all
416 -dodirs=$(ALLDIRS) dot
417 +dodirs=$(DISTDIRS)
418 # Default target for subdir_Makefile
419 subdir=src/roff/troff
420
421 diff -Naur groff-1.18.1.4.orig/README.jp groff-1.18.1.4/README.jp
422 --- groff-1.18.1.4.orig/README.jp 1970-01-01 00:00:00.000000000 +0000
423 +++ groff-1.18.1.4/README.jp 2006-10-18 18:54:44.000000000 +0000
424 @@ -0,0 +1,142 @@
425 +
426 + ÆüËܸìÂбþÈÇ groff-1.12 (jgroff-0.101)
427 +
428 +
429 + ËÌÀî ¿®µü (Kitagawa Toshiyuki)
430 + tm-kita@kh.rim.or.jp
431 +
432 + Ìø¸¶ ÎÉμ (Yanagihara Yoshiaki)
433 + yochi@debian.or.jp
434 +
435 + GNU¤Îroff¥Õ¥©¡¼¥Þ¥Ã¥¿groff(version 1.12)¤ÎÆüËܸìÂбþ¤ò¹Ô¤Ê¤¤¤Þ¤·¤¿¡£
436 + ¾å°Ì¸ß´¹¤È¤Ê¤Ã¤Æ¤¤¤Þ¤¹¤Î¤Ç¡¢ÆüËܸì¤ò´Þ¤Þ¤Ê¤¤roff¥Ç¡¼¥¿¤Ï¥ª¥ê¥¸¥Ê¥ë¤É
437 +¤ª¤ê¤ÎÆ°ºî¤Ë¤Ê¤ê¤Þ¤¹¡£ÆüËܸ첽¤Ë´Ø¤¹¤ë½¤ÀµÉôʬ¤Ë¤Ä¤¤¤Æ¤ÎÃøºî¸¢¤ÏGNU
438 +General Public License Version 2 ¤Ë½¾¤¤¤Þ¤¹(¾ÜºÙ¤ÏCOPYING¤ò¸æÍ÷¤¯¤À¤µ¤¤)¡£
439 +
440 + ÆüËܸìgroff(jgroff)¤Î¸½¥Ð¡¼¥¸¥ç¥ó¤Ï0.101(ºÇ½ª¦ÂÈÇ)¤Ç¤¹¡£¤³¤Î¥Ð¡¼¥¸¥ç¥ó
441 +¤Ç¤Ï°Ê²¼¤Î¥â¥¸¥å¡¼¥ë¤¬ÆüËܸ첽¤µ¤ì¤Æ¤¤¤Þ¤¹¡£
442 +
443 + groff ... groff¥É¥é¥¤¥Ð
444 + gtroff ... groffËÜÂÎ
445 + grotty ... üËöÍѥݥ¹¥È¥×¥í¥»¥Ã¥µ
446 + grops ... PostScriptÍѥݥ¹¥È¥×¥í¥»¥Ã¥µ
447 + grohtml ... HTMLÍѥݥ¹¥È¥×¥í¥»¥Ã¥µ(Thanks HANATAKA Shinya
448 + <hanataka@abyss.rim.or.jp>)
449 + grodvi ... DVIÍѥݥ¹¥È¥×¥í¥»¥Ã¥µ (NTT JTeX or ASCIIÆüËܸìTeX)
450 + gxditview ... X¥¦¥£¥ó¥É¥¦Íѥݥ¹¥È¥×¥í¥»¥Ã¥µ
451 + gtbl ... tbl¥Þ¥¯¥íÍÑ¥×¥ê¥×¥í¥»¥Ã¥µ
452 + gpic ... pic¥Þ¥¯¥íÍÑ¥×¥ê¥×¥í¥»¥Ã¥µ
453 + geqn ... eqn¥Þ¥¯¥íÍÑ¥×¥ê¥×¥í¥»¥Ã¥µ
454 + xtotroff ... X¤Î¥Õ¥©¥ó¥È¤«¤égroffÍÑ¥Õ¥©¥ó¥È¥Õ¥¡¥¤¥ë¤òºîÀ®¤¹
455 + ¤ë¥Ä¡¼¥ë
456 +
457 +¡ô lj4¥Ý¥¹¥È¥×¥í¥»¥Ã¥µ¡¢bib´ØÏ¢¤Î¥³¥Þ¥ó¥É¤ÏÆüËܸì̤Âбþ¤Ç¤¹¡£
458 +
459 +
460 +¡ý ¥¤¥ó¥¹¥È¡¼¥ë
461 +
462 + °Ê²¼¤Î´Ä¶­¤Çmake½ÐÍè¤ë¤³¤È¤ò³Îǧ¤·¤Æ¤¤¤Þ¤¹¡£
463 +
464 + ¡ù FreeBSD 2.1.0-RELEASE
465 + XFree86-3.1.2, gcc 2.6.3
466 +
467 + ¡ù Debian GNU/Linux 2.2
468 +
469 + ¡ù NEC EWS/4800/310
470 + SVR4.2 Release9.1 Rev.B, X11R5, gcc 2.6.0
471 +
472 + (1) ¥ª¥ê¥¸¥Ê¥ë¤ÈƱÍÍconfigure¤ò¼Â¹Ô¤·¤¿¸å¡¢make & install¤·¤Æ²¼¤µ¤¤¡£
473 + ¾Ü¤·¤¯¤ÏINSTALL¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
474 +
475 + *) grodvi¤ÏNTT JTeX·Á¼°¤Þ¤¿¤ÏASCIIÆüËܸìTeX·Á¼°¤ÎDVI¥Õ¥¡¥¤¥ë¤ò¥µ¥Ý¡¼
476 + ¥È¤·¤Æ¤¤¤Þ¤¹¡£groff¤¬½ÐÎϤ¹¤ëDVI¥Õ¥¡¥¤¥ë¤òASCIIÆüËܸìTeX·Á¼°¤Ë
477 + ¤·¤¿¤¤¾ì¹ç¤Ïconfigure --JTeX=ASCII¤È¤·¤Æ¤¯¤À¤µ¤¤¡£
478 + --JTeX¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Ê¤«¤Ã¤¿¾ì¹ç¤ÏNTT JTeX·Á¼°¤Ë¤Ê¤ê¤Þ¤¹¡£
479 +
480 + (2) groff¤Îmake¤Î¸å¡¢gxditview(groff¤ÎX¥¦¥£¥ó¥É¥¦Íѥݥ¹¥È¥×¥í¥»¥Ã¥µ)
481 + ¤òmake¤·¤Þ¤¹¡£¥È¥Ã¥×¥Ç¥£¥ì¥¯¥È¥êľ²¼¤Îxditview¤Øcd¤·¤Æ¡¢
482 +
483 + % xmkmf
484 + % make depend
485 + % make all
486 + % make install install.man
487 +
488 + ¤Ç¡¢¥¤¥ó¥¹¥È¡¼¥ë´°Î»¤Ç¤¹¡£
489 +
490 +
491 +¡ý »È¤¤Êý
492 +
493 + groff¤Î-T¥ª¥×¥·¥ç¥ó¤Ë-Tnippon(üËöɽ¼¨)¤òÄɲä·¤¿°Ê³°¤Ï¥ª¥ê¥¸¥Ê¥ë¤Î¤Þ
494 +¤Þ¤Ç¤¹¡£
495 +°Ê²¼¤Ï»ÈÍÑÎã¡£
496 +
497 + (£±) groff -Tnippon -man groff.jman
498 +
499 + ÆüËܸì¤ò´Þ¤àroff¥Õ¥¡¥¤¥ë(groff.jman)¤òman¥Þ¥¯¥í¤ò»È¤Ã¤Æ¥Õ¥©¡¼¥Þ¥Ã¥È¤·¡¢
500 +üËö¤Ëɽ¼¨¤·¤Þ¤¹¡£
501 +
502 + (£²) groff -Tps -man groff.jman
503 +
504 + ÆüËܸì¤ò´Þ¤àroff¥Õ¥¡¥¤¥ë¤ò¥Õ¥©¡¼¥Þ¥Ã¥È¤·¡¢PostScript¤ËÊÑ´¹¤·¤Þ¤¹¡£
505 +
506 + (£³) groff -TX100 -man groff.jman
507 +
508 + ÆüËܸì¤ò´Þ¤àroff¥Õ¥¡¥¤¥ë¤ò¥Õ¥©¡¼¥Þ¥Ã¥È¤·¡¢X¥¦¥£¥ó¥É¥¦¤Ëɽ¼¨¤·¤Þ¤¹¡£
509 +
510 + (£´) groff -Tdvi -man groff.jman
511 +
512 + ÆüËܸì¤ò´Þ¤àroff¥Õ¥¡¥¤¥ë¤ò¥Õ¥©¡¼¥Þ¥Ã¥È¤·¡¢DVI¥Õ¥¡¥¤¥ë¤ò½ÐÎϤ·¤Þ¤¹¡£
513 +
514 +
515 +¡ý ÆüËܸ첽¤Ë¤Ä¤¤¤Æ
516 +
517 +¡¦ ÆüËܸìʸ»ú¥³¡¼¥É¤ÏÆüËܸìEUC(¤Î¥³¡¼¥É¥»¥Ã¥È1)¤Î¤ß¥µ¥Ý¡¼¥È¤·¤Æ¤¤¤Þ¤¹¡£
518 +
519 +¡¦ ÆüËܸì¥Õ¥©¥ó¥È¤Ë¤Ä¤¤¤Æ¤Ï¡¢¥«¥ì¥ó¥È¥Õ¥©¥ó¥È¤¬¥Ü¡¼¥ë¥ÉÂΤλþ¤Ï¥´¥·¥Ã
520 + ¥¯ÂΤˡ¢¤½¤ì°Ê³°¤Î¥Õ¥©¥ó¥È(¥í¡¼¥Þ¥ó¡¢¥¤¥¿¥ê¥Ã¥¯¡¢¥¤¥¿¥ê¥Ã¥¯¥Ü¡¼¥ë¥É
521 + Åù)¤¬¥«¥ì¥ó¥È¥Õ¥©¥ó¥È¤Î»þ¤ÏÌÀÄ«ÂΤˡ¢¼«Æ°Åª¤ËÀÚ¤êÂؤï¤ê¤Þ¤¹¡£ÆüËܸì
522 + ¥Õ¥©¥ó¥È¤òľÀÜ»ØÄꤹ¤ë¤³¤È¤Ï½ÐÍè¤Þ¤»¤ó¡£
523 +
524 + (Ãí) ¥Õ¥©¥ó¥È¥Õ¥¡¥¤¥ë̾¤¬'B'¤Ç½ª¤Ã¤Æ¤¤¤ë¥Õ¥©¥ó¥È(B¡¢TB¡¢HNB¤Ê¤É)¤ò
525 + ¥Ü¡¼¥ë¥É¥Õ¥©¥ó¥È¤È¤·¤Æ¤¤¤Þ¤¹¡£
526 +
527 +¡¦ ¹ÔƬ¡¢¤ª¤è¤Ó¹ÔËö¶Ø§¤ËÂбþ¤·¤Æ¤¤¤Þ¤¹¡£¤½¤ì¤¾¤ì¤Î¶Ø§ʸ»ú¤Ï¡¢
528 +
529 + ¹ÔƬ¶Ø§ʸ»ú: ¡¢ ¡£¡¤¡¥¡¦¡§¡¨¡©¡ª¡Ë¡Í¡Ï¡Ñ¡×¡Ù¡Û
530 + ¤¡¤£¤¥¤§¤©¤Ã¤ã¤å¤ç¥¡¥£¥¥¥§¥©¥Ã¥ã¥å¥ç
531 + . ? ! " ' ) ] * , : ; > }
532 + ¹ÔËö¶Ø§ʸ»ú: ¡Ê ¡Ì¡Î¡Ð¡Ö¡Ø¡Ú
533 +
534 + ¤òÄêµÁ¤·¤Æ¤¤¤Þ¤¹¡£
535 +
536 +¡¦ -Tps¤ò»ØÄꤷ¤¿¾ì¹ç¡¢EUCʸ»ú¤ÈASCIIʸ»ú¤Î´Ö¤Ë¤Ï¡¢Éý¤Î¶¹¤¤¶õÇò¤¬¼«Æ°
537 + Ū¤ËÁÞÆþ¤µ¤ì¤Þ¤¹¡£¤³¤Î¶õÇò¤ÎÉý¤Ïdevps/DESC¤Îwcharkern¤Ç»ØÄꤷ¤Þ¤¹¡£
538 + unitñ°Ì¤Ç¤¹¡£0¤ò»ØÄꤹ¤ë¤È¶õÇò¤ÏÁÞÆþ¤µ¤ì¤Ê¤¯¤Ê¤ê¤Þ¤¹¡£
539 +
540 +¡¦ -Tps¤ò»ØÄꤷ¤¿¾ì¹ç¡¢EUCʸ»ú¤ÏASCIIʸ»ú¤ËÂФ·¤Æ¾¯¤·²¼¤²¤Æ½ÐÎϤµ¤ì¤Þ
541 + ¤¹(¤½¤Î¤Þ¤Þ¤À¤ÈASCIIʸ»ú¤¬Íî¤Á¹þ¤ó¤Ç¸«¤¨¤ë¤¿¤á)¡£¤³¤Î²¼¤²Éý¤Ï
542 + devps/DESC¤Îlowerwchar¤Ç»ØÄꤷ¤Þ¤¹¡£unitñ°Ì¤Ç¤¹¡£0¤ò»ØÄꤹ¤ë¤È»ú²¼
543 + ¤²¤Ï¹Ô¤Ê¤ï¤ì¤Þ¤»¤ó¡£
544 +
545 +¡¦ ¥ª¥ê¥¸¥Ê¥ë¤Ç¤Ï²þ¹Ô¥³¡¼¥É¤Ï̵¾ò·ï¤Ë¥¹¥Ú¡¼¥¹Ê¸»ú¤ËÊÑ´¹¤µ¤ì¤Þ¤¹¤¬¡¢EUC
546 + ʸ»ú¤Ç°Ï¤Þ¤ì¤¿²þ¹Ô¥³¡¼¥É¤Ï¥¹¥Ú¡¼¥¹¤ËÊÑ´¹¤»¤ºÌµ»ë¤¹¤ë¤è¤¦¤Ë¤·¤Þ¤·¤¿¡£
547 +
548 +¡¦ EUC¤Î¥¹¥Ú¡¼¥¹Ê¸»ú(0xa1a1)¤ÏASCII¤Î¥¹¥Ú¡¼¥¹Ê¸»ú¤È¤·¤Æ½èÍý¤µ¤ì¤Þ¤¹¡£
549 +
550 +
551 +¡ý ¼Õ¼­
552 +
553 +grodvi¤ÎASCIIÆüËܸìTeXÂбþ¤Ï¡¢±§ÅÔµÜÂç³Ø¤Î²£ÅĤµ¤ó¤¬¹Ô¤Ê¤Ã¤Æ¤¯¤À¤µ¤¤¤Þ
554 +¤·¤¿¡£grohtml¤ÎÆüËܸì(EUC)Âбþ¤Ï¡¢²Ö¿ó¿®ºÈ¤µ¤ó¤¬¹Ô¤Ã¤Æ¤¯¤ì¤Þ¤·¤¿¡£
555 +¤Þ¤¿¡¢Â¿¤¯¤ÎÊý¤«¤é¥Ð¥°¤Ë´Ø¤¹¤ëÊó¹ð¡¢½¤Àµ¥¤¥á¡¼¥¸¤òÁ÷¤Ã¤Æ夭¤Þ¤·¤¿¡£
556 +¸æ¶¨ÎϤ¯¤À¤µ¤Ã¤¿³§ÍͤˤϤȤƤⴶ¼Õ¤·¤Æ¤ª¤ê¤Þ¤¹¡£Í­Æñ¤¦¤´¤¶¤¤¤Þ¤·¤¿¡£
557 +
558 +
559 +¡ý ¤ª´ê¤¤
560 +
561 +¸½¥Ð¡¼¥¸¥ç¥ó¤Ç¤Ïlj4¥Ý¥¹¥È¥×¥í¥»¥Ã¥µ¡¢bib´ØÏ¢¤Î¥³¥Þ¥ó¥É·²¤¬ÆüËܸ첽¤µ¤ì
562 +¤Æ¤ª¤ê¤Þ¤»¤ó¡£¤³¤ì¤é¤ÎÆüËܸ첽¤ò¹Ô¤Ã¤Æ¤¯¤À¤µ¤ëÊý¤òÊ罸Ãפ·¤Æ¤ª¤ê¤Þ¤¹¡£
563 +¤¼¤Ò¸æ¶¨ÎϤ¯¤À¤µ¤¤¡£¤Þ¤¿¡¢ÆüËܸìÂбþgroff¤Ë´Ø¤·¤Æ¸æ°Õ¸«¡¢¸æ´õ˾Åù¤ò
564 +À§Èó¤ªÊ¹¤«¤»¤¯¤À¤µ¤¤¡£º£¸å¤Î»²¹Í¤Ë¤µ¤»¤Æ夭¤Þ¤¹(¤â¤Á¤í¤ó¥Ð¥°Êó¹ð¤â
565 +´¿·Þ¤Ç¤¹¡ª)¡£
566 +°Ê¾å¤ÏE-Mail¤Ë¤Æ¡¢tm-kita@kh.rim.or.jp°¸¤Ë¤ªÁ÷¤ê¤¯¤À¤µ¤¤¡£
567 diff -Naur groff-1.18.1.4.orig/TODO.jp groff-1.18.1.4/TODO.jp
568 --- groff-1.18.1.4.orig/TODO.jp 1970-01-01 00:00:00.000000000 +0000
569 +++ groff-1.18.1.4/TODO.jp 2006-10-18 18:54:44.000000000 +0000
570 @@ -0,0 +1,19 @@
571 +TODO lists
572 +
573 +- configure
574 + nl_langinfo()
575 + iconv()
576 +
577 +- font/devdvi
578 + G,M -- NTT and/or ASCII
579 +- src/devices
580 + grohtml
581 + grodvi
582 + grolbp
583 + grolj4
584 +- src/xditview
585 +
586 +- command line option to specify input/output encoding
587 +- font code?
588 + can we assume wchar code == font code?
589 + [to simplify indexing]
590 diff -Naur groff-1.18.1.4.orig/aclocal.m4 groff-1.18.1.4/aclocal.m4
591 --- groff-1.18.1.4.orig/aclocal.m4 2002-06-18 09:36:43.000000000 +0000
592 +++ groff-1.18.1.4/aclocal.m4 2006-10-18 18:54:44.000000000 +0000
593 @@ -356,6 +356,19 @@
594 AC_MSG_RESULT(no);AC_MSG_ERROR([header files do not support C++ (if you are using a version of gcc/g++ earlier than 2.5, you should install libg++)]))
595 AC_LANG_POP(C++)])dnl
596 dnl
597 +dnl Support Multibyte characters, such as Japanese Code (EUC-JP)
598 +dnl
599 +AC_DEFUN(GROFF_MULTIBYTE,
600 +[AC_MSG_CHECKING([whether to enable multibyte extension])
601 +AC_ARG_ENABLE(multibyte, [ --enable-multibyte Enable multibyte extension],
602 + multibyte=$enableval, multibyte=no)
603 +if test "x$multibyte" != "xno"; then
604 + AC_DEFINE(ENABLE_MULTIBYTE, 1,
605 + [Define if you want to use multibyte extension.])
606 +fi
607 +AC_MSG_RESULT([$multibyte])
608 +])dnl
609 +dnl
610 dnl
611 AC_DEFUN(GROFF_TMAC,
612 [AC_MSG_CHECKING([for prefix of system macro packages])
613 @@ -415,6 +428,33 @@
614 AC_MSG_RESULT([$tmac_wrap])
615 AC_SUBST(tmac_wrap)])dnl
616 dnl
617 +dnl codeset.m4 from gettext, by Bruno Haible.
618 +dnl
619 +AC_DEFUN(GROFF_LANGINFO_CODESET,
620 +[AC_CACHE_CHECK([for nl_langinfo and CODESET], groff_cv_langinfo_codeset,
621 + [AC_TRY_LINK([#include <langinfo.h>],
622 + [char* cs = nl_langinfo(CODESET);],
623 + groff_cv_langinfo_codeset=yes,
624 + groff_cv_langinfo_codeset=no)
625 + ])
626 + if test $groff_cv_langinfo_codeset = yes; then
627 + AC_DEFINE(HAVE_LANGINFO_CODESET, 1,
628 + [Define if you have <langinfo.h> and nl_langinfo(CODESET).])
629 + fi
630 +])dnl
631 +dnl
632 +dnl
633 +AC_DEFUN(GROFF_DVIFORMAT,
634 +[AC_MSG_CHECKING([japanese dvi file format])
635 +if test "x$dvi_format" != "xASCII"; then
636 + DVIFORMAT=NTT
637 +else
638 + DVIFORMAT=ASCII
639 +fi
640 +AC_MSG_RESULT([$DVIFORMAT])
641 +AC_SUBST(DVIFORMAT)
642 +])dnl
643 +dnl
644 dnl
645 AC_DEFUN(GROFF_G,
646 [AC_MSG_CHECKING([for existing troff installation])
647 @@ -481,7 +521,7 @@
648 AC_DEFINE(IS_EBCDIC_HOST, 1,
649 [Define if the host's encoding is EBCDIC.]),
650 groff_cv_ebcdic="no"
651 - TTYDEVDIRS="font/devascii font/devlatin1"
652 + TTYDEVDIRS="font/devascii font/devlatin1 font/devascii8 font/devnippon"
653 OTHERDEVDIRS="font/devlj4 font/devlbp"
654 AC_MSG_RESULT(no))
655 AC_SUBST(TTYDEVDIRS)
656 diff -Naur groff-1.18.1.4.orig/configure groff-1.18.1.4/configure
657 --- groff-1.18.1.4.orig/configure 2002-09-20 16:14:00.000000000 +0000
658 +++ groff-1.18.1.4/configure 2006-10-18 18:54:44.000000000 +0000
659 @@ -305,7 +305,7 @@
660 # include <unistd.h>
661 #endif"
662
663 -ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS groff_top_builddir CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT CXX CXXFLAGS ac_ct_CXX TTYDEVDIRS OTHERDEVDIRS LPR LP LPQ PSPRINT DVIPRINT PERLPATH YACC RANLIB ac_ct_RANLIB INSTALL_INFO INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA LN_S SH_SCRIPT_SED_CMD CPP EGREP LIBM LIBOBJS BROKEN_SPOOLER_FLAGS PAGE g sys_tmac_prefix tmac_wrap pnmcut pnmcrop pnmtopng gs psselect make_html make_install_html LTLIBOBJS'
664 +ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS groff_top_builddir CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT CXX CXXFLAGS ac_ct_CXX TTYDEVDIRS OTHERDEVDIRS LPR LP LPQ PSPRINT DVIPRINT PERLPATH YACC RANLIB ac_ct_RANLIB INSTALL_INFO INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA LN_S SH_SCRIPT_SED_CMD CPP EGREP LIBM LIBOBJS BROKEN_SPOOLER_FLAGS PAGE g sys_tmac_prefix tmac_wrap pnmcut pnmcrop pnmtopng gs psselect make_html make_install_html DVIFORMAT LTLIBOBJS'
665 ac_subst_files=''
666
667 # Initialize some variables set by options.
668 @@ -841,6 +841,11 @@
669
670 cat <<\_ACEOF
671
672 +Optional Features:
673 + --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no)
674 + --enable-FEATURE[=ARG] include FEATURE [ARG=yes]
675 + --enable-multibyte Enable multibyte extension
676 +
677 Some influential environment variables:
678 CC C compiler command
679 CFLAGS C compiler flags
680 @@ -2530,7 +2535,7 @@
681 echo "$as_me: failed program was:" >&5
682 cat conftest.$ac_ext >&5
683 groff_cv_ebcdic="no"
684 - TTYDEVDIRS="font/devascii font/devlatin1"
685 + TTYDEVDIRS="font/devascii font/devlatin1 font/devascii8 font/devnippon"
686 OTHERDEVDIRS="font/devlj4 font/devlbp"
687 echo "$as_me:$LINENO: result: no" >&5
688 echo "${ECHO_T}no" >&6
689 @@ -5859,6 +5864,84 @@
690 esac
691
692
693 +echo "$as_me:$LINENO: checking whether to enable multibyte extension" >&5
694 +echo $ECHO_N "checking whether to enable multibyte extension... $ECHO_C" >&6
695 +# Check whether --enable-multibyte or --disable-multibyte was given.
696 +if test "${enable_multibyte+set}" = set; then
697 + enableval="$enable_multibyte"
698 + multibyte=$enableval
699 +else
700 + multibyte=no
701 +fi;
702 +if test "x$multibyte" != "xno"; then
703 +
704 +cat >>confdefs.h <<\_ACEOF
705 +#define ENABLE_MULTIBYTE 1
706 +_ACEOF
707 +
708 +fi
709 +echo "$as_me:$LINENO: result: $multibyte" >&5
710 +echo "${ECHO_T}$multibyte" >&6
711 +
712 +echo "$as_me:$LINENO: checking japanese dvi file format" >&5
713 +echo $ECHO_N "checking japanese dvi file format... $ECHO_C" >&6
714 +if test "x$dvi_format" != "xASCII"; then
715 + DVIFORMAT=NTT
716 +else
717 + DVIFORMAT=ASCII
718 +fi
719 +echo "$as_me:$LINENO: result: $DVIFORMAT" >&5
720 +echo "${ECHO_T}$DVIFORMAT" >&6
721 +
722 +
723 +echo "$as_me:$LINENO: checking for nl_langinfo and CODESET" >&5
724 +echo $ECHO_N "checking for nl_langinfo and CODESET... $ECHO_C" >&6
725 +if test "${groff_cv_langinfo_codeset+set}" = set; then
726 + echo $ECHO_N "(cached) $ECHO_C" >&6
727 +else
728 + cat >conftest.$ac_ext <<_ACEOF
729 +#line $LINENO "configure"
730 +#include "confdefs.h"
731 +#include <langinfo.h>
732 +int
733 +main ()
734 +{
735 +char* cs = nl_langinfo(CODESET);
736 + ;
737 + return 0;
738 +}
739 +_ACEOF
740 +rm -f conftest.$ac_objext conftest$ac_exeext
741 +if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
742 + (eval $ac_link) 2>&5
743 + ac_status=$?
744 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
745 + (exit $ac_status); } &&
746 + { ac_try='test -s conftest$ac_exeext'
747 + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
748 + (eval $ac_try) 2>&5
749 + ac_status=$?
750 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
751 + (exit $ac_status); }; }; then
752 + groff_cv_langinfo_codeset=yes
753 +else
754 + echo "$as_me: failed program was:" >&5
755 +cat conftest.$ac_ext >&5
756 +groff_cv_langinfo_codeset=no
757 +fi
758 +rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
759 +
760 +fi
761 +echo "$as_me:$LINENO: result: $groff_cv_langinfo_codeset" >&5
762 +echo "${ECHO_T}$groff_cv_langinfo_codeset" >&6
763 + if test $groff_cv_langinfo_codeset = yes; then
764 +
765 +cat >>confdefs.h <<\_ACEOF
766 +#define HAVE_LANGINFO_CODESET 1
767 +_ACEOF
768 +
769 + fi
770 +
771 ac_config_files="$ac_config_files stamp-h"
772
773 ac_config_files="$ac_config_files Makefile doc/Makefile src/xditview/Imakefile"
774 @@ -6497,6 +6580,7 @@
775 s,@psselect@,$psselect,;t t
776 s,@make_html@,$make_html,;t t
777 s,@make_install_html@,$make_install_html,;t t
778 +s,@DVIFORMAT@,$DVIFORMAT,;t t
779 s,@LTLIBOBJS@,$LTLIBOBJS,;t t
780 CEOF
781
782 diff -Naur groff-1.18.1.4.orig/configure.ac groff-1.18.1.4/configure.ac
783 --- groff-1.18.1.4.orig/configure.ac 2002-07-23 21:44:20.000000000 +0000
784 +++ groff-1.18.1.4/configure.ac 2006-10-18 18:54:44.000000000 +0000
785 @@ -68,6 +68,9 @@
786 GROFF_G
787 GROFF_TMAC
788 GROFF_HTML_PROGRAMS
789 +GROFF_MULTIBYTE
790 +GROFF_DVIFORMAT
791 +GROFF_LANGINFO_CODESET
792 AC_CONFIG_FILES(stamp-h, [echo timestamp > stamp-h])
793 AC_CONFIG_FILES([Makefile doc/Makefile src/xditview/Imakefile])
794 AC_OUTPUT
795 diff -Naur groff-1.18.1.4.orig/contrib/eqn2graph/eqn2graph.sh groff-1.18.1.4/contrib/eqn2graph/eqn2graph.sh
796 --- groff-1.18.1.4.orig/contrib/eqn2graph/eqn2graph.sh 2002-07-17 04:55:46.000000000 +0000
797 +++ groff-1.18.1.4/contrib/eqn2graph/eqn2graph.sh 2006-10-18 18:54:44.000000000 +0000
798 @@ -32,7 +32,7 @@
799 #
800 # Thus, we pass -U to groff(1), and everything else to convert(1).
801 #
802 -# $Id: eqn2graph.sh,v 1.2 2002/07/17 04:55:46 wlemb Exp $
803 +# $Id: eqn2graph.sh,v 1.3 2003/10/28 07:46:23 wlemb Exp $
804 #
805 groff_opts=""
806 convert_opts=""
807 @@ -58,17 +58,34 @@
808 shift
809 done
810
811 +# create temporary directory
812 +tmp=
813 +for d in "$GROFF_TMPDIR" "$TMPDIR" "$TMP" "$TEMP" /tmp; do
814 + test -z "$d" && continue
815 +
816 + tmp=`(umask 077 && mktemp -d -q "$d/eqn2graph-XXXXXX") 2> /dev/null` \
817 + && test -n "$tmp" && test -d "$tmp" \
818 + && break
819 +
820 + tmp=$d/eqn2graph$$-$RANDOM
821 + (umask 077 && mkdir $tmp) 2> /dev/null && break
822 +done;
823 +if test -z "$tmp"; then
824 + echo "$0: cannot create temporary directory" >&2
825 + { (exit 1); exit 1; }
826 +fi
827 +
828 +trap 'exit_status=$?; rm -rf $tmp && exit $exit_status' 0 2 15
829 +
830 # Here goes:
831 # 1. Add .EQ/.EN.
832 # 2. Process through eqn(1) to emit troff markup.
833 # 3. Process through groff(1) to emit Postscript.
834 # 4. Use convert(1) to crop the Postscript and turn it into a bitmap.
835 -tmp=/usr/tmp/eqn2graph-$$
836 -trap "rm ${tmp}.*" 0 2 15
837 read equation
838 -(echo ".EQ"; echo 'delim $$'; echo ".EN"; echo '$'"${equation}"'$') | \
839 - groff -e $groff_opts -Tps >${tmp}.ps \
840 - && convert -crop 0x0 $convert_opts ${tmp}.ps ${tmp}.${format} \
841 - && cat ${tmp}.${format}
842 +(echo ".EQ"; echo 'delim $$'; echo ".EN"; echo '$'"$equation"'$') | \
843 + groff -e $groff_opts -Tps -P-pletter > $tmp/eqn2graph.ps \
844 + && convert -crop 0x0 $convert_opts $tmp/eqn2graph.ps $tmp/eqn2graph.$format \
845 + && cat $tmp/eqn2graph.$format
846
847 # End
848 diff -Naur groff-1.18.1.4.orig/contrib/mom/groff_mom.man groff-1.18.1.4/contrib/mom/groff_mom.man
849 --- groff-1.18.1.4.orig/contrib/mom/groff_mom.man 2002-09-04 21:44:16.000000000 +0000
850 +++ groff-1.18.1.4/contrib/mom/groff_mom.man 2006-10-18 18:54:44.000000000 +0000
851 @@ -13,6 +13,10 @@
852 A copy of the Free Documentation License is included as a file called
853 FDL in the main directory of the groff source package.
854 ..
855 +.ig
856 +A copy of the GNU Free Documentation License is also available in this
857 +Debian package as /usr/share/doc/groff/copyright.
858 +..
859 .
860 .mso www.tmac
861 .
862 diff -Naur groff-1.18.1.4.orig/contrib/pic2graph/pic2graph.sh groff-1.18.1.4/contrib/pic2graph/pic2graph.sh
863 --- groff-1.18.1.4.orig/contrib/pic2graph/pic2graph.sh 2002-07-17 04:55:46.000000000 +0000
864 +++ groff-1.18.1.4/contrib/pic2graph/pic2graph.sh 2006-10-18 18:54:44.000000000 +0000
865 @@ -32,7 +32,7 @@
866 # We don't have complete option coverage on eqn because this is primarily
867 # intended as a pic translator; we can live with eqn defaults.
868 #
869 -# $Id: pic2graph.sh,v 1.2 2002/07/17 04:55:46 wlemb Exp $
870 +# $Id: pic2graph.sh,v 1.5 2003/10/31 19:32:36 wlemb Exp $
871 #
872 groffpic_opts=""
873 gs_opts=""
874 @@ -44,7 +44,7 @@
875 do
876 case $1 in
877 -unsafe)
878 - groffpic_opts="-U"
879 + groffpic_opts="-U";;
880 -format)
881 format=$2
882 shift;;
883 @@ -68,16 +68,34 @@
884 eqndelim="delim $eqndelim"
885 fi
886
887 +# create temporary directory
888 +tmp=
889 +for d in "$GROFF_TMPDIR" "$TMPDIR" "$TMP" "$TEMP" /tmp; do
890 + test -z "$d" && continue
891 +
892 + tmp=`(umask 077 && mktemp -d -q "$d/pic2graph-XXXXXX") 2> /dev/null` \
893 + && test -n "$tmp" && test -d "$tmp" \
894 + && break
895 +
896 + tmp=$d/pic2graph$$-$RANDOM
897 + (umask 077 && mkdir $tmp) 2> /dev/null \
898 + && break
899 +done;
900 +if test -z "$tmp"; then
901 + echo "$0: cannot create temporary directory" >&2
902 + { (exit 1); exit 1; }
903 +fi
904 +
905 +trap 'exit_status=$?; rm -rf $tmp && exit $exit_status' 0 2 15
906 +
907 # Here goes:
908 # 1. Wrap the input in dummy .PS/PE macros (and add possibly null .EQ/.EN)
909 # 2. Process through eqn and pic to emit troff markup.
910 # 3. Process through groff to emit Postscript.
911 # 4. Use convert(1) to crop the PostScript and turn it into a bitmap.
912 -tmp=/usr/tmp/pic2graph-$$
913 -trap "rm ${tmp}.*" 0 2 15
914 (echo ".EQ"; echo $eqndelim; echo ".EN"; echo ".PS"; cat; echo ".PE") | \
915 - groff -e -p $groffpic_opts -Tps >${tmp}.ps \
916 - && convert -crop 0x0 $convert_opts ${tmp}.ps ${tmp}.${format} \
917 - && cat ${tmp}.${format}
918 + groff -e -p $groffpic_opts -Tps -P-pletter > $tmp/pic2graph.ps \
919 + && convert -crop 0x0 $convert_opts $tmp/pic2graph.ps $tmp/pic2graph.$format \
920 + && cat $tmp/pic2graph.$format
921
922 # End
923 diff -Naur groff-1.18.1.4.orig/font/devX100/DESC groff-1.18.1.4/font/devX100/DESC
924 --- groff-1.18.1.4.orig/font/devX100/DESC 2000-02-06 09:35:04.000000000 +0000
925 +++ groff-1.18.1.4/font/devX100/DESC 2006-10-18 18:54:44.000000000 +0000
926 @@ -1,5 +1,17 @@
927 styles R I B BI
928 -fonts 6 0 0 0 0 0 S
929 +fonts 8 0 0 0 0 0 S M G
930 +fontset B G 2E00..9FFF
931 +fontset CB G 2E00..9FFF
932 +fontset HB G 2E00..9FFF
933 +fontset NB G 2E00..9FFF
934 +fontset TB G 2E00..9FFF
935 +fontset - M 2E00..9FFF
936 +fontset B G FF00..FFEF
937 +fontset CB G FF00..FFEF
938 +fontset HB G FF00..FFEF
939 +fontset NB G FF00..FFEF
940 +fontset TB G FF00..FFEF
941 +fontset - M FF00..FFEF
942 sizes 8 10 12 14 18 24 0
943 res 100
944 X11
945 diff -Naur groff-1.18.1.4.orig/font/devX100/M.proto groff-1.18.1.4/font/devX100/M.proto
946 --- groff-1.18.1.4.orig/font/devX100/M.proto 1970-01-01 00:00:00.000000000 +0000
947 +++ groff-1.18.1.4/font/devX100/M.proto 2006-10-18 18:54:44.000000000 +0000
948 @@ -0,0 +1,5 @@
949 +name M
950 +spacewidth 3
951 +charset
952 +u2E00..u9FFF 20 0
953 +uFF00..uFFEF 20 0
954 diff -Naur groff-1.18.1.4.orig/font/devX100/Makefile.sub groff-1.18.1.4/font/devX100/Makefile.sub
955 --- groff-1.18.1.4.orig/font/devX100/Makefile.sub 2000-02-06 09:35:06.000000000 +0000
956 +++ groff-1.18.1.4/font/devX100/Makefile.sub 2006-10-18 18:54:44.000000000 +0000
957 @@ -1,2 +1,13 @@
958 DEV=X100
959 -DEVFILES=DESC TR TI TB TBI CR CI CB CBI HR HI HB HBI NR NI NB NBI S
960 +DEVFILES=DESC TR TI TB TBI CR CI CB CBI HR HI HB HBI NR NI NB NBI S M G
961 +CLEANADD=M G
962 +
963 +M: M.proto
964 + @echo Making M
965 + @-rm -f M
966 + @cat $(srcdir)/M.proto > M
967 +
968 +G: M
969 + @echo Making G
970 + @-rm -f G
971 + @sed -e 's/name M/name G/' M > G
972 diff -Naur groff-1.18.1.4.orig/font/devX100-12/DESC groff-1.18.1.4/font/devX100-12/DESC
973 --- groff-1.18.1.4.orig/font/devX100-12/DESC 2000-02-06 09:35:07.000000000 +0000
974 +++ groff-1.18.1.4/font/devX100-12/DESC 2006-10-18 18:54:44.000000000 +0000
975 @@ -1,5 +1,17 @@
976 styles R I B BI
977 -fonts 6 0 0 0 0 0 S
978 +fonts 8 0 0 0 0 0 S M G
979 +fontset B G 2E00..9FFF
980 +fontset CB G 2E00..9FFF
981 +fontset HB G 2E00..9FFF
982 +fontset NB G 2E00..9FFF
983 +fontset TB G 2E00..9FFF
984 +fontset - M 2E00..9FFF
985 +fontset B G FF00..FFEF
986 +fontset CB G FF00..FFEF
987 +fontset HB G FF00..FFEF
988 +fontset NB G FF00..FFEF
989 +fontset TB G FF00..FFEF
990 +fontset - M FF00..FFEF
991 sizes 8 10 12 14 18 24 0
992 res 100
993 X11
994 diff -Naur groff-1.18.1.4.orig/font/devX100-12/M.proto groff-1.18.1.4/font/devX100-12/M.proto
995 --- groff-1.18.1.4.orig/font/devX100-12/M.proto 1970-01-01 00:00:00.000000000 +0000
996 +++ groff-1.18.1.4/font/devX100-12/M.proto 2006-10-18 18:54:44.000000000 +0000
997 @@ -0,0 +1,5 @@
998 +name M
999 +spacewidth 4
1000 +charset
1001 +u2E00..u9FFF 20 0
1002 +uFF00..uFFEF 20 0
1003 diff -Naur groff-1.18.1.4.orig/font/devX100-12/Makefile.sub groff-1.18.1.4/font/devX100-12/Makefile.sub
1004 --- groff-1.18.1.4.orig/font/devX100-12/Makefile.sub 2000-02-06 09:35:07.000000000 +0000
1005 +++ groff-1.18.1.4/font/devX100-12/Makefile.sub 2006-10-18 18:54:44.000000000 +0000
1006 @@ -1,2 +1,14 @@
1007 DEV=X100-12
1008 -DEVFILES=DESC TR TI TB TBI CR CI CB CBI HR HI HB HBI NR NI NB NBI S
1009 +DEVFILES=DESC TR TI TB TBI CR CI CB CBI HR HI HB HBI NR NI NB NBI S M G
1010 +CLEANADD=M G
1011 +
1012 +M: M.proto
1013 + @echo Making M
1014 + @-rm -f M
1015 + @cat $(srcdir)/M.proto > M
1016 +
1017 +G: M
1018 + @echo Making G
1019 + @-rm -f G
1020 + @sed -e 's/name M/name G/' M > G
1021 +
1022 diff -Naur groff-1.18.1.4.orig/font/devX75/DESC groff-1.18.1.4/font/devX75/DESC
1023 --- groff-1.18.1.4.orig/font/devX75/DESC 2000-02-06 09:35:09.000000000 +0000
1024 +++ groff-1.18.1.4/font/devX75/DESC 2006-10-18 18:54:44.000000000 +0000
1025 @@ -1,5 +1,17 @@
1026 styles R I B BI
1027 -fonts 6 0 0 0 0 0 S
1028 +fonts 8 0 0 0 0 0 S M G
1029 +fontset B G 2E00..9FFF
1030 +fontset CB G 2E00..9FFF
1031 +fontset HB G 2E00..9FFF
1032 +fontset NB G 2E00..9FFF
1033 +fontset TB G 2E00..9FFF
1034 +fontset - M 2E00..9FFF
1035 +fontset B G FF00..FFEF
1036 +fontset CB G FF00..FFEF
1037 +fontset HB G FF00..FFEF
1038 +fontset NB G FF00..FFEF
1039 +fontset TB G FF00..FFEF
1040 +fontset - M FF00..FFEF
1041 sizes 8 10 12 14 18 24 0
1042 res 75
1043 X11
1044 diff -Naur groff-1.18.1.4.orig/font/devX75/M.proto groff-1.18.1.4/font/devX75/M.proto
1045 --- groff-1.18.1.4.orig/font/devX75/M.proto 1970-01-01 00:00:00.000000000 +0000
1046 +++ groff-1.18.1.4/font/devX75/M.proto 2006-10-18 18:54:44.000000000 +0000
1047 @@ -0,0 +1,6 @@
1048 +name M
1049 +spacewidth 2
1050 +charset
1051 +u2E00..u9FFF 10 0
1052 +uFF00..uFFEF 10 0
1053 +
1054 diff -Naur groff-1.18.1.4.orig/font/devX75/Makefile.sub groff-1.18.1.4/font/devX75/Makefile.sub
1055 --- groff-1.18.1.4.orig/font/devX75/Makefile.sub 2000-02-06 09:35:10.000000000 +0000
1056 +++ groff-1.18.1.4/font/devX75/Makefile.sub 2006-10-18 18:54:44.000000000 +0000
1057 @@ -1,2 +1,13 @@
1058 DEV=X75
1059 -DEVFILES=DESC TR TI TB TBI CR CI CB CBI HR HI HB HBI NR NI NB NBI S
1060 +DEVFILES=DESC TR TI TB TBI CR CI CB CBI HR HI HB HBI NR NI NB NBI S M G
1061 +CLEANADD=M G
1062 +
1063 +M: M.proto
1064 + @echo Making M
1065 + @-rm -f M
1066 + @cat $(srcdir)/M.proto > M
1067 +
1068 +G: M
1069 + @echo Making G
1070 + @-rm -f G
1071 + @sed -e 's/name M/name G/' M > G
1072 diff -Naur groff-1.18.1.4.orig/font/devX75-12/DESC groff-1.18.1.4/font/devX75-12/DESC
1073 --- groff-1.18.1.4.orig/font/devX75-12/DESC 2000-02-06 09:35:11.000000000 +0000
1074 +++ groff-1.18.1.4/font/devX75-12/DESC 2006-10-18 18:54:44.000000000 +0000
1075 @@ -1,5 +1,17 @@
1076 styles R I B BI
1077 -fonts 6 0 0 0 0 0 S
1078 +fonts 8 0 0 0 0 0 S M G
1079 +fontset B G 2E00..9FFF
1080 +fontset CB G 2E00..9FFF
1081 +fontset HB G 2E00..9FFF
1082 +fontset NB G 2E00..9FFF
1083 +fontset TB G 2E00..9FFF
1084 +fontset - M 2E00..9FFF
1085 +fontset B G FF00..FFEF
1086 +fontset CB G FF00..FFEF
1087 +fontset HB G FF00..FFEF
1088 +fontset NB G FF00..FFEF
1089 +fontset TB G FF00..FFEF
1090 +fontset - M FF00..FFEF
1091 sizes 8 10 12 14 18 24 0
1092 res 75
1093 X11
1094 diff -Naur groff-1.18.1.4.orig/font/devX75-12/M.proto groff-1.18.1.4/font/devX75-12/M.proto
1095 --- groff-1.18.1.4.orig/font/devX75-12/M.proto 1970-01-01 00:00:00.000000000 +0000
1096 +++ groff-1.18.1.4/font/devX75-12/M.proto 2006-10-18 18:54:44.000000000 +0000
1097 @@ -0,0 +1,5 @@
1098 +name M
1099 +spacewidth 2
1100 +charset
1101 +u2E00..u9FFF 12 0
1102 +uFF00..uFFEF 12 0
1103 diff -Naur groff-1.18.1.4.orig/font/devX75-12/Makefile.sub groff-1.18.1.4/font/devX75-12/Makefile.sub
1104 --- groff-1.18.1.4.orig/font/devX75-12/Makefile.sub 2000-02-06 09:35:12.000000000 +0000
1105 +++ groff-1.18.1.4/font/devX75-12/Makefile.sub 2006-10-18 18:54:44.000000000 +0000
1106 @@ -1,2 +1,13 @@
1107 DEV=X75-12
1108 -DEVFILES=DESC TR TI TB TBI CR CI CB CBI HR HI HB HBI NR NI NB NBI S
1109 +DEVFILES=DESC TR TI TB TBI CR CI CB CBI HR HI HB HBI NR NI NB NBI S M G
1110 +CLEANADD=M G
1111 +
1112 +M: M.proto
1113 + @echo Making M
1114 + @-rm -f M
1115 + @cat $(srcdir)/M.proto > M
1116 +
1117 +G: M
1118 + @echo Making G
1119 + @-rm -f G
1120 + @sed -e 's/name M/name G/' M > G
1121 diff -Naur groff-1.18.1.4.orig/font/devascii/Makefile.sub groff-1.18.1.4/font/devascii/Makefile.sub
1122 --- groff-1.18.1.4.orig/font/devascii/Makefile.sub 2000-02-06 09:35:12.000000000 +0000
1123 +++ groff-1.18.1.4/font/devascii/Makefile.sub 2006-10-18 18:54:44.000000000 +0000
1124 @@ -12,8 +12,8 @@
1125 @-rm -f $@
1126 @(charwidth=`expr $(RES) / $(CPI)` ; \
1127 sed -e "s/^name [A-Z]*$$/name $@/" \
1128 - -e "s/^\\([^ ]*\\) [0-9]+ /\\1 $$charwidth /" \
1129 - -e "s/^spacewidth [0-9]+$$/spacewidth $$charwidth/" \
1130 + -e "s/^\\([^ ]*\\) [0-9][0-9]* /\\1 $$charwidth /" \
1131 + -e "s/^spacewidth [0-9][0-9]*$$/spacewidth $$charwidth/" \
1132 -e "s/^internalname .*$$/internalname $@/" \
1133 -e "/^internalname/s/BI/3/" \
1134 -e "/^internalname/s/B/2/" \
1135 diff -Naur groff-1.18.1.4.orig/font/devascii8/DESC.proto groff-1.18.1.4/font/devascii8/DESC.proto
1136 --- groff-1.18.1.4.orig/font/devascii8/DESC.proto 1970-01-01 00:00:00.000000000 +0000
1137 +++ groff-1.18.1.4/font/devascii8/DESC.proto 2006-10-18 18:54:44.000000000 +0000
1138 @@ -0,0 +1,8 @@
1139 +res 240
1140 +hor 24
1141 +vert 40
1142 +unitwidth 10
1143 +sizes 10 0
1144 +fonts 4 R I B BI
1145 +tcommand
1146 +postpro grotty
1147 diff -Naur groff-1.18.1.4.orig/font/devascii8/Makefile.sub groff-1.18.1.4/font/devascii8/Makefile.sub
1148 --- groff-1.18.1.4.orig/font/devascii8/Makefile.sub 1970-01-01 00:00:00.000000000 +0000
1149 +++ groff-1.18.1.4/font/devascii8/Makefile.sub 2006-10-18 18:54:44.000000000 +0000
1150 @@ -0,0 +1,31 @@
1151 +DEV=ascii8
1152 +FONTS=R I B BI
1153 +DEVFILES=$(FONTS) DESC
1154 +CLEANADD=$(FONTS) DESC
1155 +
1156 +RES=240
1157 +CPI=10
1158 +LPI=6
1159 +
1160 +$(FONTS): R.proto
1161 + @echo Making $@
1162 + @-rm -f $@
1163 + @(charwidth=`expr $(RES) / $(CPI)` ; \
1164 + sed -e "s/^name [A-Z]*$$/name $@/" \
1165 + -e "s/^\\([^ ]*\\) [0-9][0-9]* /\\1 $$charwidth /" \
1166 + -e "s/^spacewidth [0-9][0-9]*$$/spacewidth $$charwidth/" \
1167 + -e "s/^internalname .*$$/internalname $@/" \
1168 + -e "/^internalname/s/BI/3/" \
1169 + -e "/^internalname/s/B/2/" \
1170 + -e "/^internalname/s/I/1/" \
1171 + -e "/^internalname .*[^ 0-9]/d" \
1172 + $(srcdir)/R.proto >$@)
1173 +
1174 +DESC: DESC.proto
1175 + @echo Making $@
1176 + @-rm -f $@
1177 + @sed -e "s/^res .*$$/res $(RES)/" \
1178 + -e "s/^hor .*$$/hor `expr $(RES) / $(CPI)`/" \
1179 + -e "s/^vert .*$$/vert `expr $(RES) / $(LPI)`/" \
1180 + -e "s/^fonts .*$$/fonts `set $(FONTS); echo $$#` $(FONTS)/" \
1181 + $(srcdir)/DESC.proto >$@
1182 diff -Naur groff-1.18.1.4.orig/font/devascii8/R.proto groff-1.18.1.4/font/devascii8/R.proto
1183 --- groff-1.18.1.4.orig/font/devascii8/R.proto 1970-01-01 00:00:00.000000000 +0000
1184 +++ groff-1.18.1.4/font/devascii8/R.proto 2006-10-18 18:54:44.000000000 +0000
1185 @@ -0,0 +1,262 @@
1186 +name R
1187 +internalname 0
1188 +spacewidth 24
1189 +charset
1190 +! 24 0 0041
1191 +" 24 0 0042
1192 +dq "
1193 +lq "
1194 +rq "
1195 +# 24 0 0043
1196 +sh "
1197 +$ 24 0 0044
1198 +Do "
1199 +% 24 0 0045
1200 +& 24 0 0046
1201 +' 24 0 0047
1202 +aa "
1203 +fm "
1204 +aq "
1205 +cq "
1206 +( 24 0 0050
1207 +) 24 0 0051
1208 +* 24 0 0052
1209 +** "
1210 ++ 24 0 0053
1211 +pl "
1212 +, 24 0 0054
1213 +\- 24 0 0055
1214 +hy "
1215 +- "
1216 +mi "
1217 +en "
1218 +. 24 0 0056
1219 +/ 24 0 0057
1220 +sl "
1221 +f/ "
1222 +0 24 0 0060
1223 +1 24 0 0061
1224 +2 24 0 0062
1225 +3 24 0 0063
1226 +4 24 0 0064
1227 +5 24 0 0065
1228 +6 24 0 0066
1229 +7 24 0 0067
1230 +8 24 0 0070
1231 +9 24 0 0071
1232 +: 24 0 0072
1233 +; 24 0 0073
1234 +< 24 0 0074
1235 +la "
1236 +fo "
1237 += 24 0 0075
1238 +eq "
1239 +> 24 0 0076
1240 +ra "
1241 +fc "
1242 +? 24 0 0077
1243 +@ 24 0 0100
1244 +at "
1245 +A 24 0 0101
1246 +*A "
1247 +B 24 0 0102
1248 +*B "
1249 +C 24 0 0103
1250 +D 24 0 0104
1251 +E 24 0 0105
1252 +*E "
1253 +F 24 0 0106
1254 +G 24 0 0107
1255 +H 24 0 0110
1256 +*Y "
1257 +I 24 0 0111
1258 +*I "
1259 +J 24 0 0112
1260 +K 24 0 0113
1261 +*K "
1262 +L 24 0 0114
1263 +M 24 0 0115
1264 +*M "
1265 +N 24 0 0116
1266 +*N "
1267 +O 24 0 0117
1268 +ci "
1269 +*O "
1270 +P 24 0 0120
1271 +*R "
1272 +Q 24 0 0121
1273 +R 24 0 0122
1274 +S 24 0 0123
1275 +T 24 0 0124
1276 +*T "
1277 +U 24 0 0125
1278 +V 24 0 0126
1279 +W 24 0 0127
1280 +X 24 0 0130
1281 +*X "
1282 +Y 24 0 0131
1283 +*U "
1284 +Z 24 0 0132
1285 +*Z "
1286 +[ 24 0 0133
1287 +lB "
1288 +\ 24 0 0134
1289 +rs "
1290 +] 24 0 0135
1291 +rB "
1292 +a^ 24 0 0136
1293 +^ "
1294 +ha "
1295 +_ 24 0 0137
1296 +ru "
1297 +ul "
1298 +` 24 0 0140
1299 +oq "
1300 +ga "
1301 +a 24 0 0141
1302 +b 24 0 0142
1303 +c 24 0 0143
1304 +d 24 0 0144
1305 +e 24 0 0145
1306 +f 24 0 0146
1307 +g 24 0 0147
1308 +h 24 0 0150
1309 +i 24 0 0151
1310 +.i "
1311 +j 24 0 0152
1312 +k 24 0 0153
1313 +l 24 0 0154
1314 +m 24 0 0155
1315 +n 24 0 0156
1316 +o 24 0 0157
1317 +*o "
1318 +p 24 0 0160
1319 +q 24 0 0161
1320 +r 24 0 0162
1321 +s 24 0 0163
1322 +t 24 0 0164
1323 +u 24 0 0165
1324 +v 24 0 0166
1325 +w 24 0 0167
1326 +x 24 0 0170
1327 +mu "
1328 +y 24 0 0171
1329 +z 24 0 0172
1330 +lC 24 0 0173
1331 +{ "
1332 +ba 24 0 0174
1333 +or "
1334 +bv "
1335 +br "
1336 +| "
1337 +lb "
1338 +lc "
1339 +lf "
1340 +lk "
1341 +lt "
1342 +rb "
1343 +rc "
1344 +rf "
1345 +rk "
1346 +rt "
1347 +rC 24 0 0175
1348 +} "
1349 +a~ 24 0 0176
1350 +~ "
1351 +ap "
1352 +ti "
1353 +char161 24 0 0241
1354 +char162 24 0 0242
1355 +char163 24 0 0243
1356 +char164 24 0 0244
1357 +char165 24 0 0245
1358 +char166 24 0 0246
1359 +char167 24 0 0247
1360 +char168 24 0 0250
1361 +char169 24 0 0251
1362 +char170 24 0 0252
1363 +char171 24 0 0253
1364 +char172 24 0 0254
1365 +char173 24 0 0255
1366 +char174 24 0 0256
1367 +char175 24 0 0257
1368 +char176 24 0 0260
1369 +char177 24 0 0261
1370 +char178 24 0 0262
1371 +char179 24 0 0263
1372 +char180 24 0 0264
1373 +char181 24 0 0265
1374 +char182 24 0 0266
1375 +char183 24 0 0267
1376 +char184 24 0 0270
1377 +char185 24 0 0271
1378 +char186 24 0 0272
1379 +char187 24 0 0273
1380 +char188 24 0 0274
1381 +char189 24 0 0275
1382 +char190 24 0 0276
1383 +char191 24 0 0277
1384 +char192 24 0 0300
1385 +char193 24 0 0301
1386 +char194 24 0 0302
1387 +char195 24 0 0303
1388 +char196 24 0 0304
1389 +char197 24 0 0305
1390 +char198 24 0 0306
1391 +char199 24 0 0307
1392 +char200 24 0 0310
1393 +char201 24 0 0311
1394 +char202 24 0 0312
1395 +char203 24 0 0313
1396 +char204 24 0 0314
1397 +char205 24 0 0315
1398 +char206 24 0 0316
1399 +char207 24 0 0317
1400 +char208 24 0 0320
1401 +char209 24 0 0321
1402 +char210 24 0 0322
1403 +char211 24 0 0323
1404 +char212 24 0 0324
1405 +char213 24 0 0325
1406 +char214 24 0 0326
1407 +char215 24 0 0327
1408 +char216 24 0 0330
1409 +char217 24 0 0331
1410 +char218 24 0 0332
1411 +char219 24 0 0333
1412 +char220 24 0 0334
1413 +char221 24 0 0335
1414 +char222 24 0 0336
1415 +char223 24 0 0337
1416 +char224 24 0 0340
1417 +char225 24 0 0341
1418 +char226 24 0 0342
1419 +char227 24 0 0343
1420 +char228 24 0 0344
1421 +char229 24 0 0345
1422 +char230 24 0 0346
1423 +char231 24 0 0347
1424 +char232 24 0 0350
1425 +char233 24 0 0351
1426 +char234 24 0 0352
1427 +char235 24 0 0353
1428 +char236 24 0 0354
1429 +char237 24 0 0355
1430 +char238 24 0 0356
1431 +char239 24 0 0357
1432 +char240 24 0 0360
1433 +char241 24 0 0361
1434 +char242 24 0 0362
1435 +char243 24 0 0363
1436 +char244 24 0 0364
1437 +char245 24 0 0365
1438 +char246 24 0 0366
1439 +char247 24 0 0367
1440 +char248 24 0 0370
1441 +char249 24 0 0371
1442 +char250 24 0 0372
1443 +char251 24 0 0373
1444 +char252 24 0 0374
1445 +char253 24 0 0375
1446 +char254 24 0 0376
1447 +char255 24 0 0377
1448 diff -Naur groff-1.18.1.4.orig/font/devdvi/DESC.in groff-1.18.1.4/font/devdvi/DESC.in
1449 --- groff-1.18.1.4.orig/font/devdvi/DESC.in 2002-03-16 07:45:07.000000000 +0000
1450 +++ groff-1.18.1.4/font/devdvi/DESC.in 2006-10-18 18:54:44.000000000 +0000
1451 @@ -6,6 +6,10 @@
1452 sizes 500-1000000 0
1453 styles R I B BI
1454 family T
1455 -fonts 13 0 0 0 0 0 0 0 0 0 MI S EX CW
1456 +fonts 15 0 0 0 0 0 0 0 0 0 MI S EX CW M G
1457 +fontset B G 100..FFFF
1458 +fontset HB G 100..FFFF
1459 +fontset SB G 100..FFFF
1460 +fontset - M 100..FFFF
1461 tcommand
1462 postpro grodvi
1463 diff -Naur groff-1.18.1.4.orig/font/devdvi/FixMetric.sed groff-1.18.1.4/font/devdvi/FixMetric.sed
1464 --- groff-1.18.1.4.orig/font/devdvi/FixMetric.sed 1970-01-01 00:00:00.000000000 +0000
1465 +++ groff-1.18.1.4/font/devdvi/FixMetric.sed 2006-10-18 18:54:44.000000000 +0000
1466 @@ -0,0 +1,77 @@
1467 +s/1006514,.*0x212b$/370845,815360,145600 1 0x212b/
1468 +s/1006514,.*0x212c$/370845,815360,145600 1 0x212c/
1469 +s/1006514,.*0x2126$/370845,815360,145600 1 0x2126/
1470 +s/1006514,.*0x2127$/370845,815360,145600 1 0x2127/
1471 +s/1006514,.*0x2128$/370845,815360,145600 1 0x2128/
1472 +s/1006514,.*0x212a$/370845,815360,145600 1 0x212a/
1473 +s/1006514,.*0x212d$/370845,815360,145600 1 0x212d/
1474 +s/1006514,.*0x212e$/370845,815360,145600 1 0x212e/
1475 +s/1006514,.*0x213e$/370845,815360,145600 1 0x213e/
1476 +s/1006514,.*0x2142$/370845,815360,145600 1 0x2142/
1477 +s/1006514,.*0x2143$/370845,815360,145600 1 0x2143/
1478 +s/1006514,.*0x2146$/370845,815360,145600 1 0x2146/
1479 +s/1006514,.*0x2147$/370845,815360,145600 1 0x2147/
1480 +s/1006514,.*0x2124$/370845,815360,145600 1 0x2124/
1481 +s/1006514,.*0x2125$/370845,815360,145600 1 0x2125/
1482 +s/1006514,.*0x214b$/528496,815360,145600 1 0x214b/
1483 +s/1006514,.*0x214d$/528496,815360,145600 1 0x214d/
1484 +s/1006514,.*0x214f$/528496,815360,145600 1 0x214f/
1485 +s/1006514,.*0x2151$/528496,815360,145600 1 0x2151/
1486 +s/1006514,.*0x2153$/528496,815360,145600 1 0x2153/
1487 +s/1006514,.*0x2155$/528496,815360,145600 1 0x2155/
1488 +s/1006514,.*0x2157$/528496,815360,145600 1 0x2157/
1489 +s/1006514,.*0x2159$/528496,815360,145600 1 0x2159/
1490 +s/1006514,.*0x215b$/528496,815360,145600 1 0x215b/
1491 +s/1006514,.*0x2129$/528496,815360,145600 1 0x2129/
1492 +s/1006514,.*0x212f$/528496,815360,145600 1 0x212f/
1493 +s/1006514,.*0x2130$/528496,815360,145600 1 0x2130/
1494 +s/1006514,.*0x2133$/528496,815360,145600 1 0x2133/
1495 +s/1006514,.*0x2135$/528496,815360,145600 1 0x2135/
1496 +s/1006514,.*0x2148$/528496,815360,145600 1 0x2148/
1497 +s/1006514,.*0x2149$/528496,815360,145600 1 0x2149/
1498 +s/1006514,.*0x216b$/528496,815360,145600 1 0x216b/
1499 +s/1006514,.*0x216c$/528496,815360,145600 1 0x216c/
1500 +s/1006514,.*0x216d$/528496,815360,145600 1 0x216d/
1501 +s/1006514,.*0x2178$/528496,815360,145600 1 0x2178/
1502 +s/1006514,.*0x214a$/528496,815360,145600 1 0x214a/
1503 +s/1006514,.*0x214c$/528496,815360,145600 1 0x214c/
1504 +s/1006514,.*0x214e$/528496,815360,145600 1 0x214e/
1505 +s/1006514,.*0x2150$/528496,815360,145600 1 0x2150/
1506 +s/1006514,.*0x2152$/528496,815360,145600 1 0x2152/
1507 +s/1006514,.*0x2154$/528496,815360,145600 1 0x2154/
1508 +s/1006514,.*0x2156$/528496,815360,145600 1 0x2156/
1509 +s/1006514,.*0x2158$/528496,815360,145600 1 0x2158/
1510 +s/1006514,.*0x215a$/528496,815360,145600 1 0x215a/
1511 +s/1006514,.*0x2122$/528496,815360,145600 1 0x2122/
1512 +s/1006514,.*0x2123$/528496,815360,145600 1 0x2123/
1513 +s/1006514,.*0x2136$/783741,815360,145600 1 0x2136/
1514 +s/1006514,.*0x2137$/783741,815360,145600 1 0x2137/
1515 +s/1006514,.*0x2139$/783741,815360,145600 1 0x2139/
1516 +s/1006514,.*0x2168$/783741,815360,145600 1 0x2168/
1517 +s/1006514,.*0x2169$/783741,815360,145600 1 0x2169/
1518 +s/1006514,.*0x216a$/783741,815360,145600 1 0x216a/
1519 +s/1006514,.*0x2170$/783741,815360,145600 1 0x2170/
1520 +s/1006514,.*0x2171$/783741,815360,145600 1 0x2171/
1521 +s/1006514,.*0x2172$/783741,815360,145600 1 0x2172/
1522 +s/1006514,.*0x2421$/783741,815360,145600 1 0x2421/
1523 +s/1006514,.*0x2423$/783741,815360,145600 1 0x2423/
1524 +s/1006514,.*0x2425$/783741,815360,145600 1 0x2425/
1525 +s/1006514,.*0x2427$/783741,815360,145600 1 0x2427/
1526 +s/1006514,.*0x2429$/783741,815360,145600 1 0x2429/
1527 +s/1006514,.*0x2443$/783741,815360,145600 1 0x2443/
1528 +s/1006514,.*0x2463$/783741,815360,145600 1 0x2463/
1529 +s/1006514,.*0x2465$/783741,815360,145600 1 0x2465/
1530 +s/1006514,.*0x2467$/783741,815360,145600 1 0x2467/
1531 +s/1006514,.*0x246e$/783741,815360,145600 1 0x246e/
1532 +s/1006514,.*0x2521$/783741,815360,145600 1 0x2521/
1533 +s/1006514,.*0x2523$/783741,815360,145600 1 0x2523/
1534 +s/1006514,.*0x2525$/783741,815360,145600 1 0x2525/
1535 +s/1006514,.*0x2527$/783741,815360,145600 1 0x2527/
1536 +s/1006514,.*0x2529$/783741,815360,145600 1 0x2529/
1537 +s/1006514,.*0x2543$/783741,815360,145600 1 0x2543/
1538 +s/1006514,.*0x2563$/783741,815360,145600 1 0x2563/
1539 +s/1006514,.*0x2565$/783741,815360,145600 1 0x2565/
1540 +s/1006514,.*0x2567$/783741,815360,145600 1 0x2567/
1541 +s/1006514,.*0x256e$/783741,815360,145600 1 0x256e/
1542 +s/1006514,.*0x2575$/783741,815360,145600 1 0x2575/
1543 +s/1006514,.*0x2576$/783741,815360,145600 1 0x2576/
1544 diff -Naur groff-1.18.1.4.orig/font/devdvi/M.proto-ASCII groff-1.18.1.4/font/devdvi/M.proto-ASCII
1545 --- groff-1.18.1.4.orig/font/devdvi/M.proto-ASCII 1970-01-01 00:00:00.000000000 +0000
1546 +++ groff-1.18.1.4/font/devdvi/M.proto-ASCII 2006-10-18 18:54:44.000000000 +0000
1547 @@ -0,0 +1,4 @@
1548 +name M
1549 +internalname min10
1550 +checksum -375402250
1551 +designsize 10485760
1552 diff -Naur groff-1.18.1.4.orig/font/devdvi/M.proto-NTT groff-1.18.1.4/font/devdvi/M.proto-NTT
1553 --- groff-1.18.1.4.orig/font/devdvi/M.proto-NTT 1970-01-01 00:00:00.000000000 +0000
1554 +++ groff-1.18.1.4/font/devdvi/M.proto-NTT 2006-10-18 18:54:44.000000000 +0000
1555 @@ -0,0 +1,6882 @@
1556 +name M
1557 +internalname dmj10
1558 +checksum 0
1559 +designsize 10485760
1560 +charset
1561 +¡¡ F 1:0
1562 +¡¢ F 2:0
1563 +¡£ F 3:0
1564 +¡¤ F 4:0
1565 +¡¥ F 5:0
1566 +¡¦ F 6:0
1567 +¡§ F 7:0
1568 +¡¨ F 8:0
1569 +¡© F 9:0
1570 +¡ª F 10:0
1571 +¡« F 11:0
1572 +¡¬ F 12:0
1573 +¡­ F 13:0
1574 +¡® F 14:0
1575 +¡¯ F 15:0
1576 +¡° F 16:0
1577 +¡± F 17:0
1578 +¡² F 18:0
1579 +¡³ F 19:0
1580 +¡´ F 20:0
1581 +¡µ F 21:0
1582 +¡¶ F 22:0
1583 +¡· F 23:0
1584 +¡¸ F 24:0
1585 +¡¹ F 25:0
1586 +¡º F 26:0
1587 +¡» F 27:0
1588 +¡¼ F 28:0
1589 +¡½ F 29:0
1590 +¡¾ F 30:0
1591 +¡¿ F 31:0
1592 +¡À F 32:0
1593 +¡Á F 33:0
1594 +¡Â F 34:0
1595 +¡Ã F 35:0
1596 +¡Ä F 36:0
1597 +¡Å F 37:0
1598 +¡Æ F 38:0
1599 +¡Ç F 39:0
1600 +¡È F 40:0
1601 +¡É F 41:0
1602 +¡Ê F 42:0
1603 +¡Ë F 43:0
1604 +¡Ì F 44:0
1605 +¡Í F 45:0
1606 +¡Î F 46:0
1607 +¡Ï F 47:0
1608 +¡Ð F 48:0
1609 +¡Ñ F 49:0
1610 +¡Ò F 50:0
1611 +¡Ó F 51:0
1612 +¡Ô F 52:0
1613 +¡Õ F 53:0
1614 +¡Ö F 54:0
1615 +¡× F 55:0
1616 +¡Ø F 56:0
1617 +¡Ù F 57:0
1618 +¡Ú F 58:0
1619 +¡Û F 59:0
1620 +¡Ü F 60:0
1621 +¡Ý F 61:0
1622 +¡Þ F 62:0
1623 +¡ß F 63:0
1624 +¡à F 64:0
1625 +¡á F 65:0
1626 +¡â F 66:0
1627 +¡ã F 67:0
1628 +¡ä F 68:0
1629 +¡å F 69:0
1630 +¡æ F 70:0
1631 +¡ç F 71:0
1632 +¡è F 72:0
1633 +¡é F 73:0
1634 +¡ê F 74:0
1635 +¡ë F 75:0
1636 +¡ì F 76:0
1637 +¡í F 77:0
1638 +¡î F 78:0
1639 +¡ï F 79:0
1640 +¡ð F 80:0
1641 +¡ñ F 81:0
1642 +¡ò F 82:0
1643 +¡ó F 83:0
1644 +¡ô F 84:0
1645 +¡õ F 85:0
1646 +¡ö F 86:0
1647 +¡÷ F 87:0
1648 +¡ø F 88:0
1649 +¡ù F 89:0
1650 +¡ú F 90:0
1651 +¡û F 91:0
1652 +¡ü F 92:0
1653 +¡ý F 93:0
1654 +¡þ F 94:0
1655 +¢¡ F 101:0
1656 +¢¢ F 102:0
1657 +¢£ F 103:0
1658 +¢¤ F 104:0
1659 +¢¥ F 105:0
1660 +¢¦ F 106:0
1661 +¢§ F 107:0
1662 +¢¨ F 108:0
1663 +¢© F 109:0
1664 +¢ª F 110:0
1665 +¢« F 111:0
1666 +¢¬ F 112:0
1667 +¢­ F 113:0
1668 +¢® F 114:0
1669 +¢º F 126:0
1670 +¢» F 127:0
1671 +¢¼ F 128:0
1672 +¢½ F 129:0
1673 +¢¾ F 130:0
1674 +¢¿ F 131:0
1675 +¢À F 132:0
1676 +¢Á F 133:0
1677 +¢Ê F 142:0
1678 +¢Ë F 143:0
1679 +¢Ì F 144:0
1680 +¢Í F 145:0
1681 +¢Î F 146:0
1682 +¢Ï F 147:0
1683 +¢Ð F 148:0
1684 +¢Ü F 160:0
1685 +¢Ý F 161:0
1686 +¢Þ F 162:0
1687 +¢ß F 163:0
1688 +¢à F 164:0
1689 +¢á F 165:0
1690 +¢â F 166:0
1691 +¢ã F 167:0
1692 +¢ä F 168:0
1693 +¢å F 169:0
1694 +¢æ F 170:0
1695 +¢ç F 171:0
1696 +¢è F 172:0
1697 +¢é F 173:0
1698 +¢ê F 174:0
1699 +¢ò F 182:0
1700 +¢ó F 183:0
1701 +¢ô F 184:0
1702 +¢õ F 185:0
1703 +¢ö F 186:0
1704 +¢÷ F 187:0
1705 +¢ø F 188:0
1706 +¢ù F 189:0
1707 +¢þ F 194:0
1708 +£° F 48:1
1709 +£± F 49:1
1710 +£² F 50:1
1711 +£³ F 51:1
1712 +£´ F 52:1
1713 +£µ F 53:1
1714 +£¶ F 54:1
1715 +£· F 55:1
1716 +£¸ F 56:1
1717 +£¹ F 57:1
1718 +£Á F 65:1
1719 +£Â F 66:1
1720 +£Ã F 67:1
1721 +£Ä F 68:1
1722 +£Å F 69:1
1723 +£Æ F 70:1
1724 +£Ç F 71:1
1725 +£È F 72:1
1726 +£É F 73:1
1727 +£Ê F 74:1
1728 +£Ë F 75:1
1729 +£Ì F 76:1
1730 +£Í F 77:1
1731 +£Î F 78:1
1732 +£Ï F 79:1
1733 +£Ð F 80:1
1734 +£Ñ F 81:1
1735 +£Ò F 82:1
1736 +£Ó F 83:1
1737 +£Ô F 84:1
1738 +£Õ F 85:1
1739 +£Ö F 86:1
1740 +£× F 87:1
1741 +£Ø F 88:1
1742 +£Ù F 89:1
1743 +£Ú F 90:1
1744 +£á F 97:1
1745 +£â F 98:1
1746 +£ã F 99:1
1747 +£ä F 100:1
1748 +£å F 101:1
1749 +£æ F 102:1
1750 +£ç F 103:1
1751 +£è F 104:1
1752 +£é F 105:1
1753 +£ê F 106:1
1754 +£ë F 107:1
1755 +£ì F 108:1
1756 +£í F 109:1
1757 +£î F 110:1
1758 +£ï F 111:1
1759 +£ð F 112:1
1760 +£ñ F 113:1
1761 +£ò F 114:1
1762 +£ó F 115:1
1763 +£ô F 116:1
1764 +£õ F 117:1
1765 +£ö F 118:1
1766 +£÷ F 119:1
1767 +£ø F 120:1
1768 +£ù F 121:1
1769 +£ú F 122:1
1770 +¤¡ F 1:2
1771 +¤¢ F 2:2
1772 +¤£ F 3:2
1773 +¤¤ F 4:2
1774 +¤¥ F 5:2
1775 +¤¦ F 6:2
1776 +¤§ F 7:2
1777 +¤¨ F 8:2
1778 +¤© F 9:2
1779 +¤ª F 10:2
1780 +¤« F 11:2
1781 +¤¬ F 12:2
1782 +¤­ F 13:2
1783 +¤® F 14:2
1784 +¤¯ F 15:2
1785 +¤° F 16:2
1786 +¤± F 17:2
1787 +¤² F 18:2
1788 +¤³ F 19:2
1789 +¤´ F 20:2
1790 +¤µ F 21:2
1791 +¤¶ F 22:2
1792 +¤· F 23:2
1793 +¤¸ F 24:2
1794 +¤¹ F 25:2
1795 +¤º F 26:2
1796 +¤» F 27:2
1797 +¤¼ F 28:2
1798 +¤½ F 29:2
1799 +¤¾ F 30:2
1800 +¤¿ F 31:2
1801 +¤À F 32:2
1802 +¤Á F 33:2
1803 +¤Â F 34:2
1804 +¤Ã F 35:2
1805 +¤Ä F 36:2
1806 +¤Å F 37:2
1807 +¤Æ F 38:2
1808 +¤Ç F 39:2
1809 +¤È F 40:2
1810 +¤É F 41:2
1811 +¤Ê F 42:2
1812 +¤Ë F 43:2
1813 +¤Ì F 44:2
1814 +¤Í F 45:2
1815 +¤Î F 46:2
1816 +¤Ï F 47:2
1817 +¤Ð F 48:2
1818 +¤Ñ F 49:2
1819 +¤Ò F 50:2
1820 +¤Ó F 51:2
1821 +¤Ô F 52:2
1822 +¤Õ F 53:2
1823 +¤Ö F 54:2
1824 +¤× F 55:2
1825 +¤Ø F 56:2
1826 +¤Ù F 57:2
1827 +¤Ú F 58:2
1828 +¤Û F 59:2
1829 +¤Ü F 60:2
1830 +¤Ý F 61:2
1831 +¤Þ F 62:2
1832 +¤ß F 63:2
1833 +¤à F 64:2
1834 +¤á F 65:2
1835 +¤â F 66:2
1836 +¤ã F 67:2
1837 +¤ä F 68:2
1838 +¤å F 69:2
1839 +¤æ F 70:2
1840 +¤ç F 71:2
1841 +¤è F 72:2
1842 +¤é F 73:2
1843 +¤ê F 74:2
1844 +¤ë F 75:2
1845 +¤ì F 76:2
1846 +¤í F 77:2
1847 +¤î F 78:2
1848 +¤ï F 79:2
1849 +¤ð F 80:2
1850 +¤ñ F 81:2
1851 +¤ò F 82:2
1852 +¤ó F 83:2
1853 +¥¡ F 1:3
1854 +¥¢ F 2:3
1855 +¥£ F 3:3
1856 +¥¤ F 4:3
1857 +¥¥ F 5:3
1858 +¥¦ F 6:3
1859 +¥§ F 7:3
1860 +¥¨ F 8:3
1861 +¥© F 9:3
1862 +¥ª F 10:3
1863 +¥« F 11:3
1864 +¥¬ F 12:3
1865 +¥­ F 13:3
1866 +¥® F 14:3
1867 +¥¯ F 15:3
1868 +¥° F 16:3
1869 +¥± F 17:3
1870 +¥² F 18:3
1871 +¥³ F 19:3
1872 +¥´ F 20:3
1873 +¥µ F 21:3
1874 +¥¶ F 22:3
1875 +¥· F 23:3
1876 +¥¸ F 24:3
1877 +¥¹ F 25:3
1878 +¥º F 26:3
1879 +¥» F 27:3
1880 +¥¼ F 28:3
1881 +¥½ F 29:3
1882 +¥¾ F 30:3
1883 +¥¿ F 31:3
1884 +¥À F 32:3
1885 +¥Á F 33:3
1886 +¥Â F 34:3
1887 +¥Ã F 35:3
1888 +¥Ä F 36:3
1889 +¥Å F 37:3
1890 +¥Æ F 38:3
1891 +¥Ç F 39:3
1892 +¥È F 40:3
1893 +¥É F 41:3
1894 +¥Ê F 42:3
1895 +¥Ë F 43:3
1896 +¥Ì F 44:3
1897 +¥Í F 45:3
1898 +¥Î F 46:3
1899 +¥Ï F 47:3
1900 +¥Ð F 48:3
1901 +¥Ñ F 49:3
1902 +¥Ò F 50:3
1903 +¥Ó F 51:3
1904 +¥Ô F 52:3
1905 +¥Õ F 53:3
1906 +¥Ö F 54:3
1907 +¥× F 55:3
1908 +¥Ø F 56:3
1909 +¥Ù F 57:3
1910 +¥Ú F 58:3
1911 +¥Û F 59:3
1912 +¥Ü F 60:3
1913 +¥Ý F 61:3
1914 +¥Þ F 62:3
1915 +¥ß F 63:3
1916 +¥à F 64:3
1917 +¥á F 65:3
1918 +¥â F 66:3
1919 +¥ã F 67:3
1920 +¥ä F 68:3
1921 +¥å F 69:3
1922 +¥æ F 70:3
1923 +¥ç F 71:3
1924 +¥è F 72:3
1925 +¥é F 73:3
1926 +¥ê F 74:3
1927 +¥ë F 75:3
1928 +¥ì F 76:3
1929 +¥í F 77:3
1930 +¥î F 78:3
1931 +¥ï F 79:3
1932 +¥ð F 80:3
1933 +¥ñ F 81:3
1934 +¥ò F 82:3
1935 +¥ó F 83:3
1936 +¥ô F 84:3
1937 +¥õ F 85:3
1938 +¥ö F 86:3
1939 +¦¡ F 1:4
1940 +¦¢ F 2:4
1941 +¦£ F 3:4
1942 +¦¤ F 4:4
1943 +¦¥ F 5:4
1944 +¦¦ F 6:4
1945 +¦§ F 7:4
1946 +¦¨ F 8:4
1947 +¦© F 9:4
1948 +¦ª F 10:4
1949 +¦« F 11:4
1950 +¦¬ F 12:4
1951 +¦­ F 13:4
1952 +¦® F 14:4
1953 +¦¯ F 15:4
1954 +¦° F 16:4
1955 +¦± F 17:4
1956 +¦² F 18:4
1957 +¦³ F 19:4
1958 +¦´ F 20:4
1959 +¦µ F 21:4
1960 +¦¶ F 22:4
1961 +¦· F 23:4
1962 +¦¸ F 24:4
1963 +¦Á F 33:4
1964 +¦Â F 34:4
1965 +¦Ã F 35:4
1966 +¦Ä F 36:4
1967 +¦Å F 37:4
1968 +¦Æ F 38:4
1969 +¦Ç F 39:4
1970 +¦È F 40:4
1971 +¦É F 41:4
1972 +¦Ê F 42:4
1973 +¦Ë F 43:4
1974 +¦Ì F 44:4
1975 +¦Í F 45:4
1976 +¦Î F 46:4
1977 +¦Ï F 47:4
1978 +¦Ð F 48:4
1979 +¦Ñ F 49:4
1980 +¦Ò F 50:4
1981 +¦Ó F 51:4
1982 +¦Ô F 52:4
1983 +¦Õ F 53:4
1984 +¦Ö F 54:4
1985 +¦× F 55:4
1986 +¦Ø F 56:4
1987 +§¡ F 1:5
1988 +§¢ F 2:5
1989 +§£ F 3:5
1990 +§¤ F 4:5
1991 +§¥ F 5:5
1992 +§¦ F 6:5
1993 +§§ F 7:5
1994 +§¨ F 8:5
1995 +§© F 9:5
1996 +§ª F 10:5
1997 +§« F 11:5
1998 +§¬ F 12:5
1999 +§­ F 13:5
2000 +§® F 14:5
2001 +§¯ F 15:5
2002 +§° F 16:5
2003 +§± F 17:5
2004 +§² F 18:5
2005 +§³ F 19:5
2006 +§´ F 20:5
2007 +§µ F 21:5
2008 +§¶ F 22:5
2009 +§· F 23:5
2010 +§¸ F 24:5
2011 +§¹ F 25:5
2012 +§º F 26:5
2013 +§» F 27:5
2014 +§¼ F 28:5
2015 +§½ F 29:5
2016 +§¾ F 30:5
2017 +§¿ F 31:5
2018 +§À F 32:5
2019 +§Á F 33:5
2020 +§Ñ F 49:5
2021 +§Ò F 50:5
2022 +§Ó F 51:5
2023 +§Ô F 52:5
2024 +§Õ F 53:5
2025 +§Ö F 54:5
2026 +§× F 55:5
2027 +§Ø F 56:5
2028 +§Ù F 57:5
2029 +§Ú F 58:5
2030 +§Û F 59:5
2031 +§Ü F 60:5
2032 +§Ý F 61:5
2033 +§Þ F 62:5
2034 +§ß F 63:5
2035 +§à F 64:5
2036 +§á F 65:5
2037 +§â F 66:5
2038 +§ã F 67:5
2039 +§ä F 68:5
2040 +§å F 69:5
2041 +§æ F 70:5
2042 +§ç F 71:5
2043 +§è F 72:5
2044 +§é F 73:5
2045 +§ê F 74:5
2046 +§ë F 75:5
2047 +§ì F 76:5
2048 +§í F 77:5
2049 +§î F 78:5
2050 +§ï F 79:5
2051 +§ð F 80:5
2052 +§ñ F 81:5
2053 +¨¡ F 1:6
2054 +¨¢ F 2:6
2055 +¨£ F 3:6
2056 +¨¤ F 4:6
2057 +¨¥ F 5:6
2058 +¨¦ F 6:6
2059 +¨§ F 7:6
2060 +¨¨ F 8:6
2061 +¨© F 9:6
2062 +¨ª F 10:6
2063 +¨« F 11:6
2064 +¨¬ F 12:6
2065 +¨­ F 13:6
2066 +¨® F 14:6
2067 +¨¯ F 15:6
2068 +¨° F 16:6
2069 +¨± F 17:6
2070 +¨² F 18:6
2071 +¨³ F 19:6
2072 +¨´ F 20:6
2073 +¨µ F 21:6
2074 +¨¶ F 22:6
2075 +¨· F 23:6
2076 +¨¸ F 24:6
2077 +¨¹ F 25:6
2078 +¨º F 26:6
2079 +¨» F 27:6
2080 +¨¼ F 28:6
2081 +¨½ F 29:6
2082 +¨¾ F 30:6
2083 +¨¿ F 31:6
2084 +¨À F 32:6
2085 +°¡ F 0:a
2086 +°¢ F 1:a
2087 +°£ F 2:a
2088 +°¤ F 3:a
2089 +°¥ F 4:a
2090 +°¦ F 5:a
2091 +°§ F 6:a
2092 +°¨ F 7:a
2093 +°© F 8:a
2094 +°ª F 9:a
2095 +°« F 10:a
2096 +°¬ F 11:a
2097 +°­ F 12:a
2098 +°® F 13:a
2099 +°¯ F 14:a
2100 +°° F 15:a
2101 +°± F 16:a
2102 +°² F 17:a
2103 +°³ F 18:a
2104 +°´ F 19:a
2105 +°µ F 20:a
2106 +°¶ F 21:a
2107 +°· F 22:a
2108 +°¸ F 23:a
2109 +°¹ F 24:a
2110 +°º F 25:a
2111 +°» F 26:a
2112 +°¼ F 27:a
2113 +°½ F 28:a
2114 +°¾ F 29:a
2115 +°¿ F 30:a
2116 +°À F 31:a
2117 +°Á F 32:a
2118 +°Â F 33:a
2119 +°Ã F 34:a
2120 +°Ä F 35:a
2121 +°Å F 36:a
2122 +°Æ F 37:a
2123 +°Ç F 38:a
2124 +°È F 39:a
2125 +°É F 40:a
2126 +°Ê F 41:a
2127 +°Ë F 42:a
2128 +°Ì F 43:a
2129 +°Í F 44:a
2130 +°Î F 45:a
2131 +°Ï F 46:a
2132 +°Ð F 47:a
2133 +°Ñ F 48:a
2134 +°Ò F 49:a
2135 +°Ó F 50:a
2136 +°Ô F 51:a
2137 +°Õ F 52:a
2138 +°Ö F 53:a
2139 +°× F 54:a
2140 +°Ø F 55:a
2141 +°Ù F 56:a
2142 +°Ú F 57:a
2143 +°Û F 58:a
2144 +°Ü F 59:a
2145 +°Ý F 60:a
2146 +°Þ F 61:a
2147 +°ß F 62:a
2148 +°à F 63:a
2149 +°á F 64:a
2150 +°â F 65:a
2151 +°ã F 66:a
2152 +°ä F 67:a
2153 +°å F 68:a
2154 +°æ F 69:a
2155 +°ç F 70:a
2156 +°è F 71:a
2157 +°é F 72:a
2158 +°ê F 73:a
2159 +°ë F 74:a
2160 +°ì F 75:a
2161 +°í F 76:a
2162 +°î F 77:a
2163 +°ï F 78:a
2164 +°ð F 79:a
2165 +°ñ F 80:a
2166 +°ò F 81:a
2167 +°ó F 82:a
2168 +°ô F 83:a
2169 +°õ F 84:a
2170 +°ö F 85:a
2171 +°÷ F 86:a
2172 +°ø F 87:a
2173 +°ù F 88:a
2174 +°ú F 89:a
2175 +°û F 90:a
2176 +°ü F 91:a
2177 +°ý F 92:a
2178 +°þ F 93:a
2179 +±¡ F 94:a
2180 +±¢ F 95:a
2181 +±£ F 96:a
2182 +±¤ F 97:a
2183 +±¥ F 98:a
2184 +±¦ F 99:a
2185 +±§ F 100:a
2186 +±¨ F 101:a
2187 +±© F 102:a
2188 +±ª F 103:a
2189 +±« F 104:a
2190 +±¬ F 105:a
2191 +±­ F 106:a
2192 +±® F 107:a
2193 +±¯ F 108:a
2194 +±° F 109:a
2195 +±± F 110:a
2196 +±² F 111:a
2197 +±³ F 112:a
2198 +±´ F 113:a
2199 +±µ F 114:a
2200 +±¶ F 115:a
2201 +±· F 116:a
2202 +±¸ F 117:a
2203 +±¹ F 118:a
2204 +±º F 119:a
2205 +±» F 120:a
2206 +±¼ F 121:a
2207 +±½ F 122:a
2208 +±¾ F 123:a
2209 +±¿ F 124:a
2210 +±À F 125:a
2211 +±Á F 126:a
2212 +±Â F 127:a
2213 +±Ã F 128:a
2214 +±Ä F 129:a
2215 +±Å F 130:a
2216 +±Æ F 131:a
2217 +±Ç F 132:a
2218 +±È F 133:a
2219 +±É F 134:a
2220 +±Ê F 135:a
2221 +±Ë F 136:a
2222 +±Ì F 137:a
2223 +±Í F 138:a
2224 +±Î F 139:a
2225 +±Ï F 140:a
2226 +±Ð F 141:a
2227 +±Ñ F 142:a
2228 +±Ò F 143:a
2229 +±Ó F 144:a
2230 +±Ô F 145:a
2231 +±Õ F 146:a
2232 +±Ö F 147:a
2233 +±× F 148:a
2234 +±Ø F 149:a
2235 +±Ù F 150:a
2236 +±Ú F 151:a
2237 +±Û F 152:a
2238 +±Ü F 153:a
2239 +±Ý F 154:a
2240 +±Þ F 155:a
2241 +±ß F 156:a
2242 +±à F 157:a
2243 +±á F 158:a
2244 +±â F 159:a
2245 +±ã F 160:a
2246 +±ä F 161:a
2247 +±å F 162:a
2248 +±æ F 163:a
2249 +±ç F 164:a
2250 +±è F 165:a
2251 +±é F 166:a
2252 +±ê F 167:a
2253 +±ë F 168:a
2254 +±ì F 169:a
2255 +±í F 170:a
2256 +±î F 171:a
2257 +±ï F 172:a
2258 +±ð F 173:a
2259 +±ñ F 174:a
2260 +±ò F 175:a
2261 +±ó F 176:a
2262 +±ô F 177:a
2263 +±õ F 178:a
2264 +±ö F 179:a
2265 +±÷ F 180:a
2266 +±ø F 181:a
2267 +±ù F 182:a
2268 +±ú F 183:a
2269 +±û F 184:a
2270 +±ü F 185:a
2271 +±ý F 186:a
2272 +±þ F 187:a
2273 +²¡ F 188:a
2274 +²¢ F 189:a
2275 +²£ F 190:a
2276 +²¤ F 191:a
2277 +²¥ F 192:a
2278 +²¦ F 193:a
2279 +²§ F 194:a
2280 +²¨ F 195:a
2281 +²© F 196:a
2282 +²ª F 197:a
2283 +²« F 198:a
2284 +²¬ F 199:a
2285 +²­ F 200:a
2286 +²® F 201:a
2287 +²¯ F 202:a
2288 +²° F 203:a
2289 +²± F 204:a
2290 +²² F 205:a
2291 +²³ F 206:a
2292 +²´ F 207:a
2293 +²µ F 208:a
2294 +²¶ F 209:a
2295 +²· F 210:a
2296 +²¸ F 211:a
2297 +²¹ F 212:a
2298 +²º F 213:a
2299 +²» F 214:a
2300 +²¼ F 215:a
2301 +²½ F 216:a
2302 +²¾ F 217:a
2303 +²¿ F 218:a
2304 +²À F 219:a
2305 +²Á F 220:a
2306 +²Â F 221:a
2307 +²Ã F 222:a
2308 +²Ä F 223:a
2309 +²Å F 224:a
2310 +²Æ F 225:a
2311 +²Ç F 226:a
2312 +²È F 227:a
2313 +²É F 228:a
2314 +²Ê F 229:a
2315 +²Ë F 230:a
2316 +²Ì F 231:a
2317 +²Í F 232:a
2318 +²Î F 233:a
2319 +²Ï F 234:a
2320 +²Ð F 235:a
2321 +²Ñ F 236:a
2322 +²Ò F 237:a
2323 +²Ó F 238:a
2324 +²Ô F 239:a
2325 +²Õ F 240:a
2326 +²Ö F 241:a
2327 +²× F 242:a
2328 +²Ø F 243:a
2329 +²Ù F 244:a
2330 +²Ú F 245:a
2331 +²Û F 246:a
2332 +²Ü F 247:a
2333 +²Ý F 248:a
2334 +²Þ F 249:a
2335 +²ß F 250:a
2336 +²à F 251:a
2337 +²á F 252:a
2338 +²â F 253:a
2339 +²ã F 254:a
2340 +²ä F 255:a
2341 +²å F 0:b
2342 +²æ F 1:b
2343 +²ç F 2:b
2344 +²è F 3:b
2345 +²é F 4:b
2346 +²ê F 5:b
2347 +²ë F 6:b
2348 +²ì F 7:b
2349 +²í F 8:b
2350 +²î F 9:b
2351 +²ï F 10:b
2352 +²ð F 11:b
2353 +²ñ F 12:b
2354 +²ò F 13:b
2355 +²ó F 14:b
2356 +²ô F 15:b
2357 +²õ F 16:b
2358 +²ö F 17:b
2359 +²÷ F 18:b
2360 +²ø F 19:b
2361 +²ù F 20:b
2362 +²ú F 21:b
2363 +²û F 22:b
2364 +²ü F 23:b
2365 +²ý F 24:b
2366 +²þ F 25:b
2367 +³¡ F 26:b
2368 +³¢ F 27:b
2369 +³£ F 28:b
2370 +³¤ F 29:b
2371 +³¥ F 30:b
2372 +³¦ F 31:b
2373 +³§ F 32:b
2374 +³¨ F 33:b
2375 +³© F 34:b
2376 +³ª F 35:b
2377 +³« F 36:b
2378 +³¬ F 37:b
2379 +³­ F 38:b
2380 +³® F 39:b
2381 +³¯ F 40:b
2382 +³° F 41:b
2383 +³± F 42:b
2384 +³² F 43:b
2385 +³³ F 44:b
2386 +³´ F 45:b
2387 +³µ F 46:b
2388 +³¶ F 47:b
2389 +³· F 48:b
2390 +³¸ F 49:b
2391 +³¹ F 50:b
2392 +³º F 51:b
2393 +³» F 52:b
2394 +³¼ F 53:b
2395 +³½ F 54:b
2396 +³¾ F 55:b
2397 +³¿ F 56:b
2398 +³À F 57:b
2399 +³Á F 58:b
2400 +³Â F 59:b
2401 +³Ã F 60:b
2402 +³Ä F 61:b
2403 +³Å F 62:b
2404 +³Æ F 63:b
2405 +³Ç F 64:b
2406 +³È F 65:b
2407 +³É F 66:b
2408 +³Ê F 67:b
2409 +³Ë F 68:b
2410 +³Ì F 69:b
2411 +³Í F 70:b
2412 +³Î F 71:b
2413 +³Ï F 72:b
2414 +³Ð F 73:b
2415 +³Ñ F 74:b
2416 +³Ò F 75:b
2417 +³Ó F 76:b
2418 +³Ô F 77:b
2419 +³Õ F 78:b
2420 +³Ö F 79:b
2421 +³× F 80:b
2422 +³Ø F 81:b
2423 +³Ù F 82:b
2424 +³Ú F 83:b
2425 +³Û F 84:b
2426 +³Ü F 85:b
2427 +³Ý F 86:b
2428 +³Þ F 87:b
2429 +³ß F 88:b
2430 +³à F 89:b
2431 +³á F 90:b
2432 +³â F 91:b
2433 +³ã F 92:b
2434 +³ä F 93:b
2435 +³å F 94:b
2436 +³æ F 95:b
2437 +³ç F 96:b
2438 +³è F 97:b
2439 +³é F 98:b
2440 +³ê F 99:b
2441 +³ë F 100:b
2442 +³ì F 101:b
2443 +³í F 102:b
2444 +³î F 103:b
2445 +³ï F 104:b
2446 +³ð F 105:b
2447 +³ñ F 106:b
2448 +³ò F 107:b
2449 +³ó F 108:b
2450 +³ô F 109:b
2451 +³õ F 110:b
2452 +³ö F 111:b
2453 +³÷ F 112:b
2454 +³ø F 113:b
2455 +³ù F 114:b
2456 +³ú F 115:b
2457 +³û F 116:b
2458 +³ü F 117:b
2459 +³ý F 118:b
2460 +³þ F 119:b
2461 +´¡ F 120:b
2462 +´¢ F 121:b
2463 +´£ F 122:b
2464 +´¤ F 123:b
2465 +´¥ F 124:b
2466 +´¦ F 125:b
2467 +´§ F 126:b
2468 +´¨ F 127:b
2469 +´© F 128:b
2470 +´ª F 129:b
2471 +´« F 130:b
2472 +´¬ F 131:b
2473 +´­ F 132:b
2474 +´® F 133:b
2475 +´¯ F 134:b
2476 +´° F 135:b
2477 +´± F 136:b
2478 +´² F 137:b
2479 +´³ F 138:b
2480 +´´ F 139:b
2481 +´µ F 140:b
2482 +´¶ F 141:b
2483 +´· F 142:b
2484 +´¸ F 143:b
2485 +´¹ F 144:b
2486 +´º F 145:b
2487 +´» F 146:b
2488 +´¼ F 147:b
2489 +´½ F 148:b
2490 +´¾ F 149:b
2491 +´¿ F 150:b
2492 +´À F 151:b
2493 +´Á F 152:b
2494 +´Â F 153:b
2495 +´Ã F 154:b
2496 +´Ä F 155:b
2497 +´Å F 156:b
2498 +´Æ F 157:b
2499 +´Ç F 158:b
2500 +´È F 159:b
2501 +´É F 160:b
2502 +´Ê F 161:b
2503 +´Ë F 162:b
2504 +´Ì F 163:b
2505 +´Í F 164:b
2506 +´Î F 165:b
2507 +´Ï F 166:b
2508 +´Ð F 167:b
2509 +´Ñ F 168:b
2510 +´Ò F 169:b
2511 +´Ó F 170:b
2512 +´Ô F 171:b
2513 +´Õ F 172:b
2514 +´Ö F 173:b
2515 +´× F 174:b
2516 +´Ø F 175:b
2517 +´Ù F 176:b
2518 +´Ú F 177:b
2519 +´Û F 178:b
2520 +´Ü F 179:b
2521 +´Ý F 180:b
2522 +´Þ F 181:b
2523 +´ß F 182:b
2524 +´à F 183:b
2525 +´á F 184:b
2526 +´â F 185:b
2527 +´ã F 186:b
2528 +´ä F 187:b
2529 +´å F 188:b
2530 +´æ F 189:b
2531 +´ç F 190:b
2532 +´è F 191:b
2533 +´é F 192:b
2534 +´ê F 193:b
2535 +´ë F 194:b
2536 +´ì F 195:b
2537 +´í F 196:b
2538 +´î F 197:b
2539 +´ï F 198:b
2540 +´ð F 199:b
2541 +´ñ F 200:b
2542 +´ò F 201:b
2543 +´ó F 202:b
2544 +´ô F 203:b
2545 +´õ F 204:b
2546 +´ö F 205:b
2547 +´÷ F 206:b
2548 +´ø F 207:b
2549 +´ù F 208:b
2550 +´ú F 209:b
2551 +´û F 210:b
2552 +´ü F 211:b
2553 +´ý F 212:b
2554 +´þ F 213:b
2555 +µ¡ F 214:b
2556 +µ¢ F 215:b
2557 +µ£ F 216:b
2558 +µ¤ F 217:b
2559 +µ¥ F 218:b
2560 +µ¦ F 219:b
2561 +µ§ F 220:b
2562 +µ¨ F 221:b
2563 +µ© F 222:b
2564 +µª F 223:b
2565 +µ« F 224:b
2566 +µ¬ F 225:b
2567 +µ­ F 226:b
2568 +µ® F 227:b
2569 +µ¯ F 228:b
2570 +µ° F 229:b
2571 +µ± F 230:b
2572 +µ² F 231:b
2573 +µ³ F 232:b
2574 +µ´ F 233:b
2575 +µµ F 234:b
2576 +µ¶ F 235:b
2577 +µ· F 236:b
2578 +µ¸ F 237:b
2579 +µ¹ F 238:b
2580 +µº F 239:b
2581 +µ» F 240:b
2582 +µ¼ F 241:b
2583 +µ½ F 242:b
2584 +µ¾ F 243:b
2585 +µ¿ F 244:b
2586 +µÀ F 245:b
2587 +µÁ F 246:b
2588 +µÂ F 247:b
2589 +µÃ F 248:b
2590 +µÄ F 249:b
2591 +µÅ F 250:b
2592 +µÆ F 251:b
2593 +µÇ F 252:b
2594 +µÈ F 253:b
2595 +µÉ F 254:b
2596 +µÊ F 255:b
2597 +µË F 0:c
2598 +µÌ F 1:c
2599 +µÍ F 2:c
2600 +µÎ F 3:c
2601 +µÏ F 4:c
2602 +µÐ F 5:c
2603 +µÑ F 6:c
2604 +µÒ F 7:c
2605 +µÓ F 8:c
2606 +µÔ F 9:c
2607 +µÕ F 10:c
2608 +µÖ F 11:c
2609 +µ× F 12:c
2610 +µØ F 13:c
2611 +µÙ F 14:c
2612 +µÚ F 15:c
2613 +µÛ F 16:c
2614 +µÜ F 17:c
2615 +µÝ F 18:c
2616 +µÞ F 19:c
2617 +µß F 20:c
2618 +µà F 21:c
2619 +µá F 22:c
2620 +µâ F 23:c
2621 +µã F 24:c
2622 +µä F 25:c
2623 +µå F 26:c
2624 +µæ F 27:c
2625 +µç F 28:c
2626 +µè F 29:c
2627 +µé F 30:c
2628 +µê F 31:c
2629 +µë F 32:c
2630 +µì F 33:c
2631 +µí F 34:c
2632 +µî F 35:c
2633 +µï F 36:c
2634 +µð F 37:c
2635 +µñ F 38:c
2636 +µò F 39:c
2637 +µó F 40:c
2638 +µô F 41:c
2639 +µõ F 42:c
2640 +µö F 43:c
2641 +µ÷ F 44:c
2642 +µø F 45:c
2643 +µù F 46:c
2644 +µú F 47:c
2645 +µû F 48:c
2646 +µü F 49:c
2647 +µý F 50:c
2648 +µþ F 51:c
2649 +¶¡ F 52:c
2650 +¶¢ F 53:c
2651 +¶£ F 54:c
2652 +¶¤ F 55:c
2653 +¶¥ F 56:c
2654 +¶¦ F 57:c
2655 +¶§ F 58:c
2656 +¶¨ F 59:c
2657 +¶© F 60:c
2658 +¶ª F 61:c
2659 +¶« F 62:c
2660 +¶¬ F 63:c
2661 +¶­ F 64:c
2662 +¶® F 65:c
2663 +¶¯ F 66:c
2664 +¶° F 67:c
2665 +¶± F 68:c
2666 +¶² F 69:c
2667 +¶³ F 70:c
2668 +¶´ F 71:c
2669 +¶µ F 72:c
2670 +¶¶ F 73:c
2671 +¶· F 74:c
2672 +¶¸ F 75:c
2673 +¶¹ F 76:c
2674 +¶º F 77:c
2675 +¶» F 78:c
2676 +¶¼ F 79:c
2677 +¶½ F 80:c
2678 +¶¾ F 81:c
2679 +¶¿ F 82:c
2680 +¶À F 83:c
2681 +¶Á F 84:c
2682 +¶Â F 85:c
2683 +¶Ã F 86:c
2684 +¶Ä F 87:c
2685 +¶Å F 88:c
2686 +¶Æ F 89:c
2687 +¶Ç F 90:c
2688 +¶È F 91:c
2689 +¶É F 92:c
2690 +¶Ê F 93:c
2691 +¶Ë F 94:c
2692 +¶Ì F 95:c
2693 +¶Í F 96:c
2694 +¶Î F 97:c
2695 +¶Ï F 98:c
2696 +¶Ð F 99:c
2697 +¶Ñ F 100:c
2698 +¶Ò F 101:c
2699 +¶Ó F 102:c
2700 +¶Ô F 103:c
2701 +¶Õ F 104:c
2702 +¶Ö F 105:c
2703 +¶× F 106:c
2704 +¶Ø F 107:c
2705 +¶Ù F 108:c
2706 +¶Ú F 109:c
2707 +¶Û F 110:c
2708 +¶Ü F 111:c
2709 +¶Ý F 112:c
2710 +¶Þ F 113:c
2711 +¶ß F 114:c
2712 +¶à F 115:c
2713 +¶á F 116:c
2714 +¶â F 117:c
2715 +¶ã F 118:c
2716 +¶ä F 119:c
2717 +¶å F 120:c
2718 +¶æ F 121:c
2719 +¶ç F 122:c
2720 +¶è F 123:c
2721 +¶é F 124:c
2722 +¶ê F 125:c
2723 +¶ë F 126:c
2724 +¶ì F 127:c
2725 +¶í F 128:c
2726 +¶î F 129:c
2727 +¶ï F 130:c
2728 +¶ð F 131:c
2729 +¶ñ F 132:c
2730 +¶ò F 133:c
2731 +¶ó F 134:c
2732 +¶ô F 135:c
2733 +¶õ F 136:c
2734 +¶ö F 137:c
2735 +¶÷ F 138:c
2736 +¶ø F 139:c
2737 +¶ù F 140:c
2738 +¶ú F 141:c
2739 +¶û F 142:c
2740 +¶ü F 143:c
2741 +¶ý F 144:c
2742 +¶þ F 145:c
2743 +·¡ F 146:c
2744 +·¢ F 147:c
2745 +·£ F 148:c
2746 +·¤ F 149:c
2747 +·¥ F 150:c
2748 +·¦ F 151:c
2749 +·§ F 152:c
2750 +·¨ F 153:c
2751 +·© F 154:c
2752 +·ª F 155:c
2753 +·« F 156:c
2754 +·¬ F 157:c
2755 +·­ F 158:c
2756 +·® F 159:c
2757 +·¯ F 160:c
2758 +·° F 161:c
2759 +·± F 162:c
2760 +·² F 163:c
2761 +·³ F 164:c
2762 +·´ F 165:c
2763 +·µ F 166:c
2764 +·¶ F 167:c
2765 +·· F 168:c
2766 +·¸ F 169:c
2767 +·¹ F 170:c
2768 +·º F 171:c
2769 +·» F 172:c
2770 +·¼ F 173:c
2771 +·½ F 174:c
2772 +·¾ F 175:c
2773 +·¿ F 176:c
2774 +·À F 177:c
2775 +·Á F 178:c
2776 +·Â F 179:c
2777 +·Ã F 180:c
2778 +·Ä F 181:c
2779 +·Å F 182:c
2780 +·Æ F 183:c
2781 +·Ç F 184:c
2782 +·È F 185:c
2783 +·É F 186:c
2784 +·Ê F 187:c
2785 +·Ë F 188:c
2786 +·Ì F 189:c
2787 +·Í F 190:c
2788 +·Î F 191:c
2789 +·Ï F 192:c
2790 +·Ð F 193:c
2791 +·Ñ F 194:c
2792 +·Ò F 195:c
2793 +·Ó F 196:c
2794 +·Ô F 197:c
2795 +·Õ F 198:c
2796 +·Ö F 199:c
2797 +·× F 200:c
2798 +·Ø F 201:c
2799 +·Ù F 202:c
2800 +·Ú F 203:c
2801 +·Û F 204:c
2802 +·Ü F 205:c
2803 +·Ý F 206:c
2804 +·Þ F 207:c
2805 +·ß F 208:c
2806 +·à F 209:c
2807 +·á F 210:c
2808 +·â F 211:c
2809 +·ã F 212:c
2810 +·ä F 213:c
2811 +·å F 214:c
2812 +·æ F 215:c
2813 +·ç F 216:c
2814 +·è F 217:c
2815 +·é F 218:c
2816 +·ê F 219:c
2817 +·ë F 220:c
2818 +·ì F 221:c
2819 +·í F 222:c
2820 +·î F 223:c
2821 +·ï F 224:c
2822 +·ð F 225:c
2823 +·ñ F 226:c
2824 +·ò F 227:c
2825 +·ó F 228:c
2826 +·ô F 229:c
2827 +·õ F 230:c
2828 +·ö F 231:c
2829 +·÷ F 232:c
2830 +·ø F 233:c
2831 +·ù F 234:c
2832 +·ú F 235:c
2833 +·û F 236:c
2834 +·ü F 237:c
2835 +·ý F 238:c
2836 +·þ F 239:c
2837 +¸¡ F 240:c
2838 +¸¢ F 241:c
2839 +¸£ F 242:c
2840 +¸¤ F 243:c
2841 +¸¥ F 244:c
2842 +¸¦ F 245:c
2843 +¸§ F 246:c
2844 +¸¨ F 247:c
2845 +¸© F 248:c
2846 +¸ª F 249:c
2847 +¸« F 250:c
2848 +¸¬ F 251:c
2849 +¸­ F 252:c
2850 +¸® F 253:c
2851 +¸¯ F 254:c
2852 +¸° F 255:c
2853 +¸± F 0:d
2854 +¸² F 1:d
2855 +¸³ F 2:d
2856 +¸´ F 3:d
2857 +¸µ F 4:d
2858 +¸¶ F 5:d
2859 +¸· F 6:d
2860 +¸¸ F 7:d
2861 +¸¹ F 8:d
2862 +¸º F 9:d
2863 +¸» F 10:d
2864 +¸¼ F 11:d
2865 +¸½ F 12:d
2866 +¸¾ F 13:d
2867 +¸¿ F 14:d
2868 +¸À F 15:d
2869 +¸Á F 16:d
2870 +¸Â F 17:d
2871 +¸Ã F 18:d
2872 +¸Ä F 19:d
2873 +¸Å F 20:d
2874 +¸Æ F 21:d
2875 +¸Ç F 22:d
2876 +¸È F 23:d
2877 +¸É F 24:d
2878 +¸Ê F 25:d
2879 +¸Ë F 26:d
2880 +¸Ì F 27:d
2881 +¸Í F 28:d
2882 +¸Î F 29:d
2883 +¸Ï F 30:d
2884 +¸Ð F 31:d
2885 +¸Ñ F 32:d
2886 +¸Ò F 33:d
2887 +¸Ó F 34:d
2888 +¸Ô F 35:d
2889 +¸Õ F 36:d
2890 +¸Ö F 37:d
2891 +¸× F 38:d
2892 +¸Ø F 39:d
2893 +¸Ù F 40:d
2894 +¸Ú F 41:d
2895 +¸Û F 42:d
2896 +¸Ü F 43:d
2897 +¸Ý F 44:d
2898 +¸Þ F 45:d
2899 +¸ß F 46:d
2900 +¸à F 47:d
2901 +¸á F 48:d
2902 +¸â F 49:d
2903 +¸ã F 50:d
2904 +¸ä F 51:d
2905 +¸å F 52:d
2906 +¸æ F 53:d
2907 +¸ç F 54:d
2908 +¸è F 55:d
2909 +¸é F 56:d
2910 +¸ê F 57:d
2911 +¸ë F 58:d
2912 +¸ì F 59:d
2913 +¸í F 60:d
2914 +¸î F 61:d
2915 +¸ï F 62:d
2916 +¸ð F 63:d
2917 +¸ñ F 64:d
2918 +¸ò F 65:d
2919 +¸ó F 66:d
2920 +¸ô F 67:d
2921 +¸õ F 68:d
2922 +¸ö F 69:d
2923 +¸÷ F 70:d
2924 +¸ø F 71:d
2925 +¸ù F 72:d
2926 +¸ú F 73:d
2927 +¸û F 74:d
2928 +¸ü F 75:d
2929 +¸ý F 76:d
2930 +¸þ F 77:d
2931 +¹¡ F 78:d
2932 +¹¢ F 79:d
2933 +¹£ F 80:d
2934 +¹¤ F 81:d
2935 +¹¥ F 82:d
2936 +¹¦ F 83:d
2937 +¹§ F 84:d
2938 +¹¨ F 85:d
2939 +¹© F 86:d
2940 +¹ª F 87:d
2941 +¹« F 88:d
2942 +¹¬ F 89:d
2943 +¹­ F 90:d
2944 +¹® F 91:d
2945 +¹¯ F 92:d
2946 +¹° F 93:d
2947 +¹± F 94:d
2948 +¹² F 95:d
2949 +¹³ F 96:d
2950 +¹´ F 97:d
2951 +¹µ F 98:d
2952 +¹¶ F 99:d
2953 +¹· F 100:d
2954 +¹¸ F 101:d
2955 +¹¹ F 102:d
2956 +¹º F 103:d
2957 +¹» F 104:d
2958 +¹¼ F 105:d
2959 +¹½ F 106:d
2960 +¹¾ F 107:d
2961 +¹¿ F 108:d
2962 +¹À F 109:d
2963 +¹Á F 110:d
2964 +¹Â F 111:d
2965 +¹Ã F 112:d
2966 +¹Ä F 113:d
2967 +¹Å F 114:d
2968 +¹Æ F 115:d
2969 +¹Ç F 116:d
2970 +¹È F 117:d
2971 +¹É F 118:d
2972 +¹Ê F 119:d
2973 +¹Ë F 120:d
2974 +¹Ì F 121:d
2975 +¹Í F 122:d
2976 +¹Î F 123:d
2977 +¹Ï F 124:d
2978 +¹Ð F 125:d
2979 +¹Ñ F 126:d
2980 +¹Ò F 127:d
2981 +¹Ó F 128:d
2982 +¹Ô F 129:d
2983 +¹Õ F 130:d
2984 +¹Ö F 131:d
2985 +¹× F 132:d
2986 +¹Ø F 133:d
2987 +¹Ù F 134:d
2988 +¹Ú F 135:d
2989 +¹Û F 136:d
2990 +¹Ü F 137:d
2991 +¹Ý F 138:d
2992 +¹Þ F 139:d
2993 +¹ß F 140:d
2994 +¹à F 141:d
2995 +¹á F 142:d
2996 +¹â F 143:d
2997 +¹ã F 144:d
2998 +¹ä F 145:d
2999 +¹å F 146:d
3000 +¹æ F 147:d
3001 +¹ç F 148:d
3002 +¹è F 149:d
3003 +¹é F 150:d
3004 +¹ê F 151:d
3005 +¹ë F 152:d
3006 +¹ì F 153:d
3007 +¹í F 154:d
3008 +¹î F 155:d
3009 +¹ï F 156:d
3010 +¹ð F 157:d
3011 +¹ñ F 158:d
3012 +¹ò F 159:d
3013 +¹ó F 160:d
3014 +¹ô F 161:d
3015 +¹õ F 162:d
3016 +¹ö F 163:d
3017 +¹÷ F 164:d
3018 +¹ø F 165:d
3019 +¹ù F 166:d
3020 +¹ú F 167:d
3021 +¹û F 168:d
3022 +¹ü F 169:d
3023 +¹ý F 170:d
3024 +¹þ F 171:d
3025 +º¡ F 172:d
3026 +º¢ F 173:d
3027 +º£ F 174:d
3028 +º¤ F 175:d
3029 +º¥ F 176:d
3030 +º¦ F 177:d
3031 +º§ F 178:d
3032 +º¨ F 179:d
3033 +º© F 180:d
3034 +ºª F 181:d
3035 +º« F 182:d
3036 +º¬ F 183:d
3037 +º­ F 184:d
3038 +º® F 185:d
3039 +º¯ F 186:d
3040 +º° F 187:d
3041 +º± F 188:d
3042 +º² F 189:d
3043 +º³ F 190:d
3044 +º´ F 191:d
3045 +ºµ F 192:d
3046 +º¶ F 193:d
3047 +º· F 194:d
3048 +º¸ F 195:d
3049 +º¹ F 196:d
3050 +ºº F 197:d
3051 +º» F 198:d
3052 +º¼ F 199:d
3053 +º½ F 200:d
3054 +º¾ F 201:d
3055 +º¿ F 202:d
3056 +ºÀ F 203:d
3057 +ºÁ F 204:d
3058 +ºÂ F 205:d
3059 +ºÃ F 206:d
3060 +ºÄ F 207:d
3061 +ºÅ F 208:d
3062 +ºÆ F 209:d
3063 +ºÇ F 210:d
3064 +ºÈ F 211:d
3065 +ºÉ F 212:d
3066 +ºÊ F 213:d
3067 +ºË F 214:d
3068 +ºÌ F 215:d
3069 +ºÍ F 216:d
3070 +ºÎ F 217:d
3071 +ºÏ F 218:d
3072 +ºÐ F 219:d
3073 +ºÑ F 220:d
3074 +ºÒ F 221:d
3075 +ºÓ F 222:d
3076 +ºÔ F 223:d
3077 +ºÕ F 224:d
3078 +ºÖ F 225:d
3079 +º× F 226:d
3080 +ºØ F 227:d
3081 +ºÙ F 228:d
3082 +ºÚ F 229:d
3083 +ºÛ F 230:d
3084 +ºÜ F 231:d
3085 +ºÝ F 232:d
3086 +ºÞ F 233:d
3087 +ºß F 234:d
3088 +ºà F 235:d
3089 +ºá F 236:d
3090 +ºâ F 237:d
3091 +ºã F 238:d
3092 +ºä F 239:d
3093 +ºå F 240:d
3094 +ºæ F 241:d
3095 +ºç F 242:d
3096 +ºè F 243:d
3097 +ºé F 244:d
3098 +ºê F 245:d
3099 +ºë F 246:d
3100 +ºì F 247:d
3101 +ºí F 248:d
3102 +ºî F 249:d
3103 +ºï F 250:d
3104 +ºð F 251:d
3105 +ºñ F 252:d
3106 +ºò F 253:d
3107 +ºó F 254:d
3108 +ºô F 255:d
3109 +ºõ F 0:e
3110 +ºö F 1:e
3111 +º÷ F 2:e
3112 +ºø F 3:e
3113 +ºù F 4:e
3114 +ºú F 5:e
3115 +ºû F 6:e
3116 +ºü F 7:e
3117 +ºý F 8:e
3118 +ºþ F 9:e
3119 +»¡ F 10:e
3120 +Ȣ F 11:e
3121 +ȣ F 12:e
3122 +»¤ F 13:e
3123 +ȴ F 14:e
3124 +»¦ F 15:e
3125 +Ȥ F 16:e
3126 +Ȭ F 17:e
3127 +»© F 18:e
3128 +Ȼ F 19:e
3129 +»« F 20:e
3130 +»¬ F 21:e
3131 +»­ F 22:e
3132 +»® F 23:e
3133 +»¯ F 24:e
3134 +»° F 25:e
3135 +»± F 26:e
3136 +»² F 27:e
3137 +»³ F 28:e
3138 +»´ F 29:e
3139 +»µ F 30:e
3140 +Ȧ F 31:e
3141 +»· F 32:e
3142 +»¸ F 33:e
3143 +»¹ F 34:e
3144 +ȼ F 35:e
3145 +»» F 36:e
3146 +»¼ F 37:e
3147 +»½ F 38:e
3148 +»¾ F 39:e
3149 +»¿ F 40:e
3150 +»À F 41:e
3151 +»Á F 42:e
3152 +»Â F 43:e
3153 +»Ã F 44:e
3154 +Ȁ F 45:e
3155 +ȁ F 46:e
3156 +Ȯ F 47:e
3157 +Ȃ F 48:e
3158 +»È F 49:e
3159 +ȃ F 50:e
3160 +»Ê F 51:e
3161 +»Ë F 52:e
3162 +»Ì F 53:e
3163 +»Í F 54:e
3164 +»Î F 55:e
3165 +»Ï F 56:e
3166 +»Ð F 57:e
3167 +Ȅ F 58:e
3168 +»Ò F 59:e
3169 +»Ó F 60:e
3170 +»Ô F 61:e
3171 +»Õ F 62:e
3172 +»Ö F 63:e
3173 +»× F 64:e
3174 +ȯ F 65:e
3175 +»Ù F 66:e
3176 +»Ú F 67:e
3177 +»Û F 68:e
3178 +Ȇ F 69:e
3179 +»Ý F 70:e
3180 +»Þ F 71:e
3181 +ȧ F 72:e
3182 +Ȉ F 73:e
3183 +ȇ F 74:e
3184 +ȉ F 75:e
3185 +ȋ F 76:e
3186 +Ȋ F 77:e
3187 +Ȍ F 78:e
3188 +Ⱦ F 79:e
3189 +ȍ F 80:e
3190 +ȏ F 81:e
3191 +Ȏ F 82:e
3192 +Ȑ F 83:e
3193 +ȑ F 84:e
3194 +ȓ F 85:e
3195 +Ȓ F 86:e
3196 +Ȕ F 87:e
3197 +ȕ F 88:e
3198 +»ð F 89:e
3199 +Ȗ F 90:e
3200 +»ò F 91:e
3201 +»ó F 92:e
3202 +»ô F 93:e
3203 +»õ F 94:e
3204 +»ö F 95:e
3205 +»÷ F 96:e
3206 +»ø F 97:e
3207 +»ù F 98:e
3208 +»ú F 99:e
3209 +»û F 100:e
3210 +ȟ F 101:e
3211 +»ý F 102:e
3212 +»þ F 103:e
3213 +¼¡ F 104:e
3214 +¼¢ F 105:e
3215 +¼£ F 106:e
3216 +¼¤ F 107:e
3217 +¼¥ F 108:e
3218 +¼¦ F 109:e
3219 +¼§ F 110:e
3220 +¼¨ F 111:e
3221 +¼© F 112:e
3222 +¼ª F 113:e
3223 +¼« F 114:e
3224 +¼¬ F 115:e
3225 +¼­ F 116:e
3226 +¼® F 117:e
3227 +¼¯ F 118:e
3228 +¼° F 119:e
3229 +¼± F 120:e
3230 +¼² F 121:e
3231 +¼³ F 122:e
3232 +¼´ F 123:e
3233 +¼µ F 124:e
3234 +¼¶ F 125:e
3235 +¼· F 126:e
3236 +¼¸ F 127:e
3237 +¼¹ F 128:e
3238 +¼º F 129:e
3239 +¼» F 130:e
3240 +¼¼ F 131:e
3241 +¼½ F 132:e
3242 +¼¾ F 133:e
3243 +¼¿ F 134:e
3244 +¼À F 135:e
3245 +¼Á F 136:e
3246 +¼Â F 137:e
3247 +¼Ã F 138:e
3248 +¼Ä F 139:e
3249 +¼Å F 140:e
3250 +¼Æ F 141:e
3251 +¼Ç F 142:e
3252 +¼È F 143:e
3253 +¼É F 144:e
3254 +¼Ê F 145:e
3255 +¼Ë F 146:e
3256 +¼Ì F 147:e
3257 +¼Í F 148:e
3258 +¼Î F 149:e
3259 +¼Ï F 150:e
3260 +¼Ð F 151:e
3261 +¼Ñ F 152:e
3262 +¼Ò F 153:e
3263 +¼Ó F 154:e
3264 +¼Ô F 155:e
3265 +¼Õ F 156:e
3266 +¼Ö F 157:e
3267 +¼× F 158:e
3268 +¼Ø F 159:e
3269 +¼Ù F 160:e
3270 +¼Ú F 161:e
3271 +¼Û F 162:e
3272 +¼Ü F 163:e
3273 +¼Ý F 164:e
3274 +¼Þ F 165:e
3275 +¼ß F 166:e
3276 +¼à F 167:e
3277 +¼á F 168:e
3278 +¼â F 169:e
3279 +¼ã F 170:e
3280 +¼ä F 171:e
3281 +¼å F 172:e
3282 +¼æ F 173:e
3283 +¼ç F 174:e
3284 +¼è F 175:e
3285 +¼é F 176:e
3286 +¼ê F 177:e
3287 +¼ë F 178:e
3288 +¼ì F 179:e
3289 +¼í F 180:e
3290 +¼î F 181:e
3291 +¼ï F 182:e
3292 +¼ð F 183:e
3293 +¼ñ F 184:e
3294 +¼ò F 185:e
3295 +¼ó F 186:e
3296 +¼ô F 187:e
3297 +¼õ F 188:e
3298 +¼ö F 189:e
3299 +¼÷ F 190:e
3300 +¼ø F 191:e
3301 +¼ù F 192:e
3302 +¼ú F 193:e
3303 +¼û F 194:e
3304 +¼ü F 195:e
3305 +¼ý F 196:e
3306 +¼þ F 197:e
3307 +½¡ F 198:e
3308 +½¢ F 199:e
3309 +½£ F 200:e
3310 +½¤ F 201:e
3311 +½¥ F 202:e
3312 +½¦ F 203:e
3313 +½§ F 204:e
3314 +½¨ F 205:e
3315 +½© F 206:e
3316 +½ª F 207:e
3317 +½« F 208:e
3318 +½¬ F 209:e
3319 +½­ F 210:e
3320 +½® F 211:e
3321 +½¯ F 212:e
3322 +½° F 213:e
3323 +½± F 214:e
3324 +½² F 215:e
3325 +½³ F 216:e
3326 +½´ F 217:e
3327 +½µ F 218:e
3328 +½¶ F 219:e
3329 +½· F 220:e
3330 +½¸ F 221:e
3331 +½¹ F 222:e
3332 +½º F 223:e
3333 +½» F 224:e
3334 +½¼ F 225:e
3335 +½½ F 226:e
3336 +½¾ F 227:e
3337 +½¿ F 228:e
3338 +½À F 229:e
3339 +½Á F 230:e
3340 +½Â F 231:e
3341 +½Ã F 232:e
3342 +½Ä F 233:e
3343 +½Å F 234:e
3344 +½Æ F 235:e
3345 +½Ç F 236:e
3346 +½È F 237:e
3347 +½É F 238:e
3348 +½Ê F 239:e
3349 +½Ë F 240:e
3350 +½Ì F 241:e
3351 +½Í F 242:e
3352 +½Î F 243:e
3353 +½Ï F 244:e
3354 +½Ð F 245:e
3355 +½Ñ F 246:e
3356 +½Ò F 247:e
3357 +½Ó F 248:e
3358 +½Ô F 249:e
3359 +½Õ F 250:e
3360 +½Ö F 251:e
3361 +½× F 252:e
3362 +½Ø F 253:e
3363 +½Ù F 254:e
3364 +½Ú F 255:e
3365 +½Û F 0:f
3366 +½Ü F 1:f
3367 +½Ý F 2:f
3368 +½Þ F 3:f
3369 +½ß F 4:f
3370 +½à F 5:f
3371 +½á F 6:f
3372 +½â F 7:f
3373 +½ã F 8:f
3374 +½ä F 9:f
3375 +½å F 10:f
3376 +½æ F 11:f
3377 +½ç F 12:f
3378 +½è F 13:f
3379 +½é F 14:f
3380 +½ê F 15:f
3381 +½ë F 16:f
3382 +½ì F 17:f
3383 +½í F 18:f
3384 +½î F 19:f
3385 +½ï F 20:f
3386 +½ð F 21:f
3387 +½ñ F 22:f
3388 +½ò F 23:f
3389 +½ó F 24:f
3390 +½ô F 25:f
3391 +½õ F 26:f
3392 +½ö F 27:f
3393 +½÷ F 28:f
3394 +½ø F 29:f
3395 +½ù F 30:f
3396 +½ú F 31:f
3397 +½û F 32:f
3398 +½ü F 33:f
3399 +½ý F 34:f
3400 +½þ F 35:f
3401 +¾¡ F 36:f
3402 +¾¢ F 37:f
3403 +¾£ F 38:f
3404 +¾¤ F 39:f
3405 +¾¥ F 40:f
3406 +¾¦ F 41:f
3407 +¾§ F 42:f
3408 +¾¨ F 43:f
3409 +¾© F 44:f
3410 +¾ª F 45:f
3411 +¾« F 46:f
3412 +¾¬ F 47:f
3413 +¾­ F 48:f
3414 +¾® F 49:f
3415 +¾¯ F 50:f
3416 +¾° F 51:f
3417 +¾± F 52:f
3418 +¾² F 53:f
3419 +¾³ F 54:f
3420 +¾´ F 55:f
3421 +¾µ F 56:f
3422 +¾¶ F 57:f
3423 +¾· F 58:f
3424 +¾¸ F 59:f
3425 +¾¹ F 60:f
3426 +¾º F 61:f
3427 +¾» F 62:f
3428 +¾¼ F 63:f
3429 +¾½ F 64:f
3430 +¾¾ F 65:f
3431 +¾¿ F 66:f
3432 +¾À F 67:f
3433 +¾Á F 68:f
3434 +¾Â F 69:f
3435 +¾Ã F 70:f
3436 +¾Ä F 71:f
3437 +¾Å F 72:f
3438 +¾Æ F 73:f
3439 +¾Ç F 74:f
3440 +¾È F 75:f
3441 +¾É F 76:f
3442 +¾Ê F 77:f
3443 +¾Ë F 78:f
3444 +¾Ì F 79:f
3445 +¾Í F 80:f
3446 +¾Î F 81:f
3447 +¾Ï F 82:f
3448 +¾Ð F 83:f
3449 +¾Ñ F 84:f
3450 +¾Ò F 85:f
3451 +¾Ó F 86:f
3452 +¾Ô F 87:f
3453 +¾Õ F 88:f
3454 +¾Ö F 89:f
3455 +¾× F 90:f
3456 +¾Ø F 91:f
3457 +¾Ù F 92:f
3458 +¾Ú F 93:f
3459 +¾Û F 94:f
3460 +¾Ü F 95:f
3461 +¾Ý F 96:f
3462 +¾Þ F 97:f
3463 +¾ß F 98:f
3464 +¾à F 99:f
3465 +¾á F 100:f
3466 +¾â F 101:f
3467 +¾ã F 102:f
3468 +¾ä F 103:f
3469 +¾å F 104:f
3470 +¾æ F 105:f
3471 +¾ç F 106:f
3472 +¾è F 107:f
3473 +¾é F 108:f
3474 +¾ê F 109:f
3475 +¾ë F 110:f
3476 +¾ì F 111:f
3477 +¾í F 112:f
3478 +¾î F 113:f
3479 +¾ï F 114:f
3480 +¾ð F 115:f
3481 +¾ñ F 116:f
3482 +¾ò F 117:f
3483 +¾ó F 118:f
3484 +¾ô F 119:f
3485 +¾õ F 120:f
3486 +¾ö F 121:f
3487 +¾÷ F 122:f
3488 +¾ø F 123:f
3489 +¾ù F 124:f
3490 +¾ú F 125:f
3491 +¾û F 126:f
3492 +¾ü F 127:f
3493 +¾ý F 128:f
3494 +¾þ F 129:f
3495 +¿¡ F 130:f
3496 +¿¢ F 131:f
3497 +¿£ F 132:f
3498 +¿¤ F 133:f
3499 +¿¥ F 134:f
3500 +¿¦ F 135:f
3501 +¿§ F 136:f
3502 +¿¨ F 137:f
3503 +¿© F 138:f
3504 +¿ª F 139:f
3505 +¿« F 140:f
3506 +¿¬ F 141:f
3507 +¿­ F 142:f
3508 +¿® F 143:f
3509 +¿¯ F 144:f
3510 +¿° F 145:f
3511 +¿± F 146:f
3512 +¿² F 147:f
3513 +¿³ F 148:f
3514 +¿´ F 149:f
3515 +¿µ F 150:f
3516 +¿¶ F 151:f
3517 +¿· F 152:f
3518 +¿¸ F 153:f
3519 +¿¹ F 154:f
3520 +¿º F 155:f
3521 +¿» F 156:f
3522 +¿¼ F 157:f
3523 +¿½ F 158:f
3524 +¿¾ F 159:f
3525 +¿¿ F 160:f
3526 +¿À F 161:f
3527 +¿Á F 162:f
3528 +¿Â F 163:f
3529 +¿Ã F 164:f
3530 +¿Ä F 165:f
3531 +¿Å F 166:f
3532 +¿Æ F 167:f
3533 +¿Ç F 168:f
3534 +¿È F 169:f
3535 +¿É F 170:f
3536 +¿Ê F 171:f
3537 +¿Ë F 172:f
3538 +¿Ì F 173:f
3539 +¿Í F 174:f
3540 +¿Î F 175:f
3541 +¿Ï F 176:f
3542 +¿Ð F 177:f
3543 +¿Ñ F 178:f
3544 +¿Ò F 179:f
3545 +¿Ó F 180:f
3546 +¿Ô F 181:f
3547 +¿Õ F 182:f
3548 +¿Ö F 183:f
3549 +¿× F 184:f
3550 +¿Ø F 185:f
3551 +¿Ù F 186:f
3552 +¿Ú F 187:f
3553 +¿Û F 188:f
3554 +¿Ü F 189:f
3555 +¿Ý F 190:f
3556 +¿Þ F 191:f
3557 +¿ß F 192:f
3558 +¿à F 193:f
3559 +¿á F 194:f
3560 +¿â F 195:f
3561 +¿ã F 196:f
3562 +¿ä F 197:f
3563 +¿å F 198:f
3564 +¿æ F 199:f
3565 +¿ç F 200:f
3566 +¿è F 201:f
3567 +¿é F 202:f
3568 +¿ê F 203:f
3569 +¿ë F 204:f
3570 +¿ì F 205:f
3571 +¿í F 206:f
3572 +¿î F 207:f
3573 +¿ï F 208:f
3574 +¿ð F 209:f
3575 +¿ñ F 210:f
3576 +¿ò F 211:f
3577 +¿ó F 212:f
3578 +¿ô F 213:f
3579 +¿õ F 214:f
3580 +¿ö F 215:f
3581 +¿÷ F 216:f
3582 +¿ø F 217:f
3583 +¿ù F 218:f
3584 +¿ú F 219:f
3585 +¿û F 220:f
3586 +¿ü F 221:f
3587 +¿ý F 222:f
3588 +¿þ F 223:f
3589 +À¡ F 224:f
3590 +À¢ F 225:f
3591 +À£ F 226:f
3592 +À¤ F 227:f
3593 +À¥ F 228:f
3594 +À¦ F 229:f
3595 +ˤ F 230:f
3596 +ˬ F 231:f
3597 +À© F 232:f
3598 +˻ F 233:f
3599 +À« F 234:f
3600 +À¬ F 235:f
3601 +À­ F 236:f
3602 +À® F 237:f
3603 +À¯ F 238:f
3604 +À° F 239:f
3605 +˱ F 240:f
3606 +À² F 241:f
3607 +À³ F 242:f
3608 +À´ F 243:f
3609 +˵ F 244:f
3610 +˦ F 245:f
3611 +À· F 246:f
3612 +À¸ F 247:f
3613 +À¹ F 248:f
3614 +˼ F 249:f
3615 +À» F 250:f
3616 +À¼ F 251:f
3617 +À½ F 252:f
3618 +À¾ F 253:f
3619 +À¿ F 254:f
3620 +ÀÀ F 255:f
3621 +ÀÁ F 0:g
3622 +ÀÂ F 1:g
3623 +ÀÃ F 2:g
3624 +ÀÄ F 3:g
3625 +ÀÅ F 4:g
3626 +ÀÆ F 5:g
3627 +ÀÇ F 6:g
3628 +ÀÈ F 7:g
3629 +ÀÉ F 8:g
3630 +ÀÊ F 9:g
3631 +ÀË F 10:g
3632 +ÀÌ F 11:g
3633 +ÀÍ F 12:g
3634 +ÀÎ F 13:g
3635 +ÀÏ F 14:g
3636 +ÀÐ F 15:g
3637 +ÀÑ F 16:g
3638 +ÀÒ F 17:g
3639 +ÀÓ F 18:g
3640 +ÀÔ F 19:g
3641 +ÀÕ F 20:g
3642 +ÀÖ F 21:g
3643 +À× F 22:g
3644 +ÀØ F 23:g
3645 +ÀÙ F 24:g
3646 +ÀÚ F 25:g
3647 +ÀÛ F 26:g
3648 +ÀÜ F 27:g
3649 +ÀÝ F 28:g
3650 +ÀÞ F 29:g
3651 +Àß F 30:g
3652 +Àà F 31:g
3653 +Àá F 32:g
3654 +Àâ F 33:g
3655 +Àã F 34:g
3656 +Àä F 35:g
3657 +Àå F 36:g
3658 +Àæ F 37:g
3659 +Àç F 38:g
3660 +Àè F 39:g
3661 +Àé F 40:g
3662 +Àê F 41:g
3663 +Àë F 42:g
3664 +Àì F 43:g
3665 +Àí F 44:g
3666 +Àî F 45:g
3667 +Àï F 46:g
3668 +Àð F 47:g
3669 +Àñ F 48:g
3670 +Àò F 49:g
3671 +Àó F 50:g
3672 +Àô F 51:g
3673 +Àõ F 52:g
3674 +Àö F 53:g
3675 +À÷ F 54:g
3676 +Àø F 55:g
3677 +Àù F 56:g
3678 +Àú F 57:g
3679 +Àû F 58:g
3680 +Àü F 59:g
3681 +Àý F 60:g
3682 +Àþ F 61:g
3683 +Á¡ F 62:g
3684 +Á¢ F 63:g
3685 +Á£ F 64:g
3686 +Á¤ F 65:g
3687 +Á¥ F 66:g
3688 +Á¦ F 67:g
3689 +Á§ F 68:g
3690 +Á¨ F 69:g
3691 +Á© F 70:g
3692 +Áª F 71:g
3693 +Á« F 72:g
3694 +Á¬ F 73:g
3695 +Á­ F 74:g
3696 +Á® F 75:g
3697 +Á¯ F 76:g
3698 +Á° F 77:g
3699 +Á± F 78:g
3700 +Á² F 79:g
3701 +Á³ F 80:g
3702 +Á´ F 81:g
3703 +Áµ F 82:g
3704 +Á¶ F 83:g
3705 +Á· F 84:g
3706 +Á¸ F 85:g
3707 +Á¹ F 86:g
3708 +Áº F 87:g
3709 +Á» F 88:g
3710 +Á¼ F 89:g
3711 +Á½ F 90:g
3712 +Á¾ F 91:g
3713 +Á¿ F 92:g
3714 +ÁÀ F 93:g
3715 +ÁÁ F 94:g
3716 +ÁÂ F 95:g
3717 +ÁÃ F 96:g
3718 +ÁÄ F 97:g
3719 +ÁÅ F 98:g
3720 +ÁÆ F 99:g
3721 +ÁÇ F 100:g
3722 +ÁÈ F 101:g
3723 +ÁÉ F 102:g
3724 +ÁÊ F 103:g
3725 +ÁË F 104:g
3726 +ÁÌ F 105:g
3727 +ÁÍ F 106:g
3728 +ÁÎ F 107:g
3729 +ÁÏ F 108:g
3730 +ÁÐ F 109:g
3731 +ÁÑ F 110:g
3732 +ÁÒ F 111:g
3733 +ÁÓ F 112:g
3734 +ÁÔ F 113:g
3735 +ÁÕ F 114:g
3736 +ÁÖ F 115:g
3737 +Á× F 116:g
3738 +ÁØ F 117:g
3739 +ÁÙ F 118:g
3740 +ÁÚ F 119:g
3741 +ÁÛ F 120:g
3742 +ÁÜ F 121:g
3743 +ÁÝ F 122:g
3744 +ÁÞ F 123:g
3745 +Áß F 124:g
3746 +Áà F 125:g
3747 +Áá F 126:g
3748 +Áâ F 127:g
3749 +Áã F 128:g
3750 +Áä F 129:g
3751 +Áå F 130:g
3752 +Áæ F 131:g
3753 +Áç F 132:g
3754 +Áè F 133:g
3755 +Áé F 134:g
3756 +Áê F 135:g
3757 +Áë F 136:g
3758 +Áì F 137:g
3759 +Áí F 138:g
3760 +Áî F 139:g
3761 +Áï F 140:g
3762 +Áð F 141:g
3763 +Áñ F 142:g
3764 +Áò F 143:g
3765 +Áó F 144:g
3766 +Áô F 145:g
3767 +Áõ F 146:g
3768 +Áö F 147:g
3769 +Á÷ F 148:g
3770 +Áø F 149:g
3771 +Áù F 150:g
3772 +Áú F 151:g
3773 +Áû F 152:g
3774 +Áü F 153:g
3775 +Áý F 154:g
3776 +Áþ F 155:g
3777 +¡ F 156:g
3778 +¢ F 157:g
3779 +£ F 158:g
3780 +¤ F 159:g
3781 +¥ F 160:g
3782 +¦ F 161:g
3783 +§ F 162:g
3784 +¨ F 163:g
3785 +© F 164:g
3786 +ª F 165:g
3787 +« F 166:g
3788 +¬ F 167:g
3789 +­ F 168:g
3790 +® F 169:g
3791 +¯ F 170:g
3792 +° F 171:g
3793 +± F 172:g
3794 +² F 173:g
3795 +³ F 174:g
3796 +´ F 175:g
3797 +µ F 176:g
3798 +¶ F 177:g
3799 +· F 178:g
3800 +¸ F 179:g
3801 +¹ F 180:g
3802 +º F 181:g
3803 +» F 182:g
3804 +¼ F 183:g
3805 +½ F 184:g
3806 +¾ F 185:g
3807 +¿ F 186:g
3808 +ÂÀ F 187:g
3809 +ÂÁ F 188:g
3810 +ÂÂ F 189:g
3811 +ÂÃ F 190:g
3812 +ÂÄ F 191:g
3813 +ÂÅ F 192:g
3814 +ÂÆ F 193:g
3815 +ÂÇ F 194:g
3816 +ÂÈ F 195:g
3817 +ÂÉ F 196:g
3818 +ÂÊ F 197:g
3819 +ÂË F 198:g
3820 +ÂÌ F 199:g
3821 +ÂÍ F 200:g
3822 +ÂÎ F 201:g
3823 +ÂÏ F 202:g
3824 +ÂÐ F 203:g
3825 +ÂÑ F 204:g
3826 +ÂÒ F 205:g
3827 +ÂÓ F 206:g
3828 +ÂÔ F 207:g
3829 +ÂÕ F 208:g
3830 +ÂÖ F 209:g
3831 +Â× F 210:g
3832 +ÂØ F 211:g
3833 +ÂÙ F 212:g
3834 +ÂÚ F 213:g
3835 +ÂÛ F 214:g
3836 +ÂÜ F 215:g
3837 +ÂÝ F 216:g
3838 +ÂÞ F 217:g
3839 +Âß F 218:g
3840 +Âà F 219:g
3841 +Âá F 220:g
3842 +Ââ F 221:g
3843 +Âã F 222:g
3844 +Âä F 223:g
3845 +Âå F 224:g
3846 +Âæ F 225:g
3847 +Âç F 226:g
3848 +Âè F 227:g
3849 +Âé F 228:g
3850 +Âê F 229:g
3851 +Âë F 230:g
3852 +Âì F 231:g
3853 +Âí F 232:g
3854 +Âî F 233:g
3855 +Âï F 234:g
3856 +Âð F 235:g
3857 +Âñ F 236:g
3858 +Âò F 237:g
3859 +Âó F 238:g
3860 +Âô F 239:g
3861 +Âõ F 240:g
3862 +Âö F 241:g
3863 +Â÷ F 242:g
3864 +Âø F 243:g
3865 +Âù F 244:g
3866 +Âú F 245:g
3867 +Âû F 246:g
3868 +Âü F 247:g
3869 +Âý F 248:g
3870 +Âþ F 249:g
3871 +á F 250:g
3872 +â F 251:g
3873 +ã F 252:g
3874 +ä F 253:g
3875 +å F 254:g
3876 +æ F 255:g
3877 +ç F 0:h
3878 +è F 1:h
3879 +é F 2:h
3880 +ê F 3:h
3881 +ë F 4:h
3882 +ì F 5:h
3883 +í F 6:h
3884 +î F 7:h
3885 +ï F 8:h
3886 +ð F 9:h
3887 +ñ F 10:h
3888 +ò F 11:h
3889 +ó F 12:h
3890 +ô F 13:h
3891 +õ F 14:h
3892 +ö F 15:h
3893 +÷ F 16:h
3894 +ø F 17:h
3895 +ù F 18:h
3896 +ú F 19:h
3897 +û F 20:h
3898 +ü F 21:h
3899 +ý F 22:h
3900 +þ F 23:h
3901 +ÿ F 24:h
3902 +ÃÀ F 25:h
3903 +ÃÁ F 26:h
3904 +ÃÂ F 27:h
3905 +ÃÃ F 28:h
3906 +ÃÄ F 29:h
3907 +ÃÅ F 30:h
3908 +ÃÆ F 31:h
3909 +ÃÇ F 32:h
3910 +ÃÈ F 33:h
3911 +ÃÉ F 34:h
3912 +ÃÊ F 35:h
3913 +ÃË F 36:h
3914 +ÃÌ F 37:h
3915 +ÃÍ F 38:h
3916 +ÃÎ F 39:h
3917 +ÃÏ F 40:h
3918 +ÃÐ F 41:h
3919 +ÃÑ F 42:h
3920 +ÃÒ F 43:h
3921 +ÃÓ F 44:h
3922 +ÃÔ F 45:h
3923 +ÃÕ F 46:h
3924 +ÃÖ F 47:h
3925 +Ã× F 48:h
3926 +ÃØ F 49:h
3927 +ÃÙ F 50:h
3928 +ÃÚ F 51:h
3929 +ÃÛ F 52:h
3930 +ÃÜ F 53:h
3931 +ÃÝ F 54:h
3932 +ÃÞ F 55:h
3933 +Ãß F 56:h
3934 +Ãà F 57:h
3935 +Ãá F 58:h
3936 +Ãâ F 59:h
3937 +Ãã F 60:h
3938 +Ãä F 61:h
3939 +Ãå F 62:h
3940 +Ãæ F 63:h
3941 +Ãç F 64:h
3942 +Ãè F 65:h
3943 +Ãé F 66:h
3944 +Ãê F 67:h
3945 +Ãë F 68:h
3946 +Ãì F 69:h
3947 +Ãí F 70:h
3948 +Ãî F 71:h
3949 +Ãï F 72:h
3950 +Ãð F 73:h
3951 +Ãñ F 74:h
3952 +Ãò F 75:h
3953 +Ãó F 76:h
3954 +Ãô F 77:h
3955 +Ãõ F 78:h
3956 +Ãö F 79:h
3957 +Ã÷ F 80:h
3958 +Ãø F 81:h
3959 +Ãù F 82:h
3960 +Ãú F 83:h
3961 +Ãû F 84:h
3962 +Ãü F 85:h
3963 +Ãý F 86:h
3964 +Ãþ F 87:h
3965 +ġ F 88:h
3966 +Ģ F 89:h
3967 +ģ F 90:h
3968 +Ĥ F 91:h
3969 +ĥ F 92:h
3970 +Ħ F 93:h
3971 +ħ F 94:h
3972 +Ĩ F 95:h
3973 +ĩ F 96:h
3974 +Ī F 97:h
3975 +ī F 98:h
3976 +Ĭ F 99:h
3977 +ĭ F 100:h
3978 +Į F 101:h
3979 +į F 102:h
3980 +İ F 103:h
3981 +ı F 104:h
3982 +IJ F 105:h
3983 +ij F 106:h
3984 +Ĵ F 107:h
3985 +ĵ F 108:h
3986 +Ķ F 109:h
3987 +ķ F 110:h
3988 +ĸ F 111:h
3989 +Ĺ F 112:h
3990 +ĺ F 113:h
3991 +Ļ F 114:h
3992 +ļ F 115:h
3993 +Ľ F 116:h
3994 +ľ F 117:h
3995 +Ŀ F 118:h
3996 +ÄÀ F 119:h
3997 +ÄÁ F 120:h
3998 +ÄÂ F 121:h
3999 +ÄÃ F 122:h
4000 +ÄÄ F 123:h
4001 +ÄÅ F 124:h
4002 +ÄÆ F 125:h
4003 +ÄÇ F 126:h
4004 +ÄÈ F 127:h
4005 +ÄÉ F 128:h
4006 +ÄÊ F 129:h
4007 +ÄË F 130:h
4008 +ÄÌ F 131:h
4009 +ÄÍ F 132:h
4010 +ÄÎ F 133:h
4011 +ÄÏ F 134:h
4012 +ÄÐ F 135:h
4013 +ÄÑ F 136:h
4014 +ÄÒ F 137:h
4015 +ÄÓ F 138:h
4016 +ÄÔ F 139:h
4017 +ÄÕ F 140:h
4018 +ÄÖ F 141:h
4019 +Ä× F 142:h
4020 +ÄØ F 143:h
4021 +ÄÙ F 144:h
4022 +ÄÚ F 145:h
4023 +ÄÛ F 146:h
4024 +ÄÜ F 147:h
4025 +ÄÝ F 148:h
4026 +ÄÞ F 149:h
4027 +Äß F 150:h
4028 +Äà F 151:h
4029 +Äá F 152:h
4030 +Äâ F 153:h
4031 +Äã F 154:h
4032 +Ää F 155:h
4033 +Äå F 156:h
4034 +Äæ F 157:h
4035 +Äç F 158:h
4036 +Äè F 159:h
4037 +Äé F 160:h
4038 +Äê F 161:h
4039 +Äë F 162:h
4040 +Äì F 163:h
4041 +Äí F 164:h
4042 +Äî F 165:h
4043 +Äï F 166:h
4044 +Äð F 167:h
4045 +Äñ F 168:h
4046 +Äò F 169:h
4047 +Äó F 170:h
4048 +Äô F 171:h
4049 +Äõ F 172:h
4050 +Äö F 173:h
4051 +Ä÷ F 174:h
4052 +Äø F 175:h
4053 +Äù F 176:h
4054 +Äú F 177:h
4055 +Äû F 178:h
4056 +Äü F 179:h
4057 +Äý F 180:h
4058 +Äþ F 181:h
4059 +š F 182:h
4060 +Ţ F 183:h
4061 +ţ F 184:h
4062 +Ť F 185:h
4063 +ť F 186:h
4064 +Ŧ F 187:h
4065 +ŧ F 188:h
4066 +Ũ F 189:h
4067 +ũ F 190:h
4068 +Ū F 191:h
4069 +ū F 192:h
4070 +Ŭ F 193:h
4071 +ŭ F 194:h
4072 +Ů F 195:h
4073 +ů F 196:h
4074 +Ű F 197:h
4075 +ű F 198:h
4076 +Ų F 199:h
4077 +ų F 200:h
4078 +Ŵ F 201:h
4079 +ŵ F 202:h
4080 +Ŷ F 203:h
4081 +ŷ F 204:h
4082 +Ÿ F 205:h
4083 +Ź F 206:h
4084 +ź F 207:h
4085 +Ż F 208:h
4086 +ż F 209:h
4087 +Ž F 210:h
4088 +ž F 211:h
4089 +ſ F 212:h
4090 +ÅÀ F 213:h
4091 +ÅÁ F 214:h
4092 +ÅÂ F 215:h
4093 +ÅÃ F 216:h
4094 +ÅÄ F 217:h
4095 +ÅÅ F 218:h
4096 +ÅÆ F 219:h
4097 +ÅÇ F 220:h
4098 +ÅÈ F 221:h
4099 +ÅÉ F 222:h
4100 +ÅÊ F 223:h
4101 +ÅË F 224:h
4102 +ÅÌ F 225:h
4103 +ÅÍ F 226:h
4104 +ÅÎ F 227:h
4105 +ÅÏ F 228:h
4106 +ÅÐ F 229:h
4107 +ÅÑ F 230:h
4108 +ÅÒ F 231:h
4109 +ÅÓ F 232:h
4110 +ÅÔ F 233:h
4111 +ÅÕ F 234:h
4112 +ÅÖ F 235:h
4113 +Å× F 236:h
4114 +ÅØ F 237:h
4115 +ÅÙ F 238:h
4116 +ÅÚ F 239:h
4117 +ÅÛ F 240:h
4118 +ÅÜ F 241:h
4119 +ÅÝ F 242:h
4120 +ÅÞ F 243:h
4121 +Åß F 244:h
4122 +Åà F 245:h
4123 +Åá F 246:h
4124 +Åâ F 247:h
4125 +Åã F 248:h
4126 +Åä F 249:h
4127 +Åå F 250:h
4128 +Åæ F 251:h
4129 +Åç F 252:h
4130 +Åè F 253:h
4131 +Åé F 254:h
4132 +Åê F 255:h
4133 +Åë F 0:i
4134 +Åì F 1:i
4135 +Åí F 2:i
4136 +Åî F 3:i
4137 +Åï F 4:i
4138 +Åð F 5:i
4139 +Åñ F 6:i
4140 +Åò F 7:i
4141 +Åó F 8:i
4142 +Åô F 9:i
4143 +Åõ F 10:i
4144 +Åö F 11:i
4145 +Å÷ F 12:i
4146 +Åø F 13:i
4147 +Åù F 14:i
4148 +Åú F 15:i
4149 +Åû F 16:i
4150 +Åü F 17:i
4151 +Åý F 18:i
4152 +Åþ F 19:i
4153 +ơ F 20:i
4154 +Ƣ F 21:i
4155 +ƣ F 22:i
4156 +Ƥ F 23:i
4157 +ƥ F 24:i
4158 +Ʀ F 25:i
4159 +Ƨ F 26:i
4160 +ƨ F 27:i
4161 +Ʃ F 28:i
4162 +ƪ F 29:i
4163 +ƫ F 30:i
4164 +Ƭ F 31:i
4165 +ƭ F 32:i
4166 +Ʈ F 33:i
4167 +Ư F 34:i
4168 +ư F 35:i
4169 +Ʊ F 36:i
4170 +Ʋ F 37:i
4171 +Ƴ F 38:i
4172 +ƴ F 39:i
4173 +Ƶ F 40:i
4174 +ƶ F 41:i
4175 +Ʒ F 42:i
4176 +Ƹ F 43:i
4177 +ƹ F 44:i
4178 +ƺ F 45:i
4179 +ƻ F 46:i
4180 +Ƽ F 47:i
4181 +ƽ F 48:i
4182 +ƾ F 49:i
4183 +ƿ F 50:i
4184 +ÆÀ F 51:i
4185 +ÆÁ F 52:i
4186 +ÆÂ F 53:i
4187 +ÆÃ F 54:i
4188 +ÆÄ F 55:i
4189 +ÆÅ F 56:i
4190 +ÆÆ F 57:i
4191 +ÆÇ F 58:i
4192 +ÆÈ F 59:i
4193 +ÆÉ F 60:i
4194 +ÆÊ F 61:i
4195 +ÆË F 62:i
4196 +ÆÌ F 63:i
4197 +ÆÍ F 64:i
4198 +ÆÎ F 65:i
4199 +ÆÏ F 66:i
4200 +ÆÐ F 67:i
4201 +ÆÑ F 68:i
4202 +ÆÒ F 69:i
4203 +ÆÓ F 70:i
4204 +ÆÔ F 71:i
4205 +ÆÕ F 72:i
4206 +ÆÖ F 73:i
4207 +Æ× F 74:i
4208 +ÆØ F 75:i
4209 +ÆÙ F 76:i
4210 +ÆÚ F 77:i
4211 +ÆÛ F 78:i
4212 +ÆÜ F 79:i
4213 +ÆÝ F 80:i
4214 +ÆÞ F 81:i
4215 +Æß F 82:i
4216 +Æà F 83:i
4217 +Æá F 84:i
4218 +Æâ F 85:i
4219 +Æã F 86:i
4220 +Æä F 87:i
4221 +Æå F 88:i
4222 +Ææ F 89:i
4223 +Æç F 90:i
4224 +Æè F 91:i
4225 +Æé F 92:i
4226 +Æê F 93:i
4227 +Æë F 94:i
4228 +Æì F 95:i
4229 +Æí F 96:i
4230 +Æî F 97:i
4231 +Æï F 98:i
4232 +Æð F 99:i
4233 +Æñ F 100:i
4234 +Æò F 101:i
4235 +Æó F 102:i
4236 +Æô F 103:i
4237 +Æõ F 104:i
4238 +Æö F 105:i
4239 +Æ÷ F 106:i
4240 +Æø F 107:i
4241 +Æù F 108:i
4242 +Æú F 109:i
4243 +Æû F 110:i
4244 +Æü F 111:i
4245 +Æý F 112:i
4246 +Æþ F 113:i
4247 +ǡ F 114:i
4248 +Ǣ F 115:i
4249 +ǣ F 116:i
4250 +Ǥ F 117:i
4251 +ǥ F 118:i
4252 +Ǧ F 119:i
4253 +ǧ F 120:i
4254 +Ǩ F 121:i
4255 +ǩ F 122:i
4256 +Ǫ F 123:i
4257 +ǫ F 124:i
4258 +Ǭ F 125:i
4259 +ǭ F 126:i
4260 +Ǯ F 127:i
4261 +ǯ F 128:i
4262 +ǰ F 129:i
4263 +DZ F 130:i
4264 +Dz F 131:i
4265 +dz F 132:i
4266 +Ǵ F 133:i
4267 +ǵ F 134:i
4268 +Ƕ F 135:i
4269 +Ƿ F 136:i
4270 +Ǹ F 137:i
4271 +ǹ F 138:i
4272 +Ǻ F 139:i
4273 +ǻ F 140:i
4274 +Ǽ F 141:i
4275 +ǽ F 142:i
4276 +Ǿ F 143:i
4277 +ǿ F 144:i
4278 +ÇÀ F 145:i
4279 +ÇÁ F 146:i
4280 +ÇÂ F 147:i
4281 +ÇÃ F 148:i
4282 +ÇÄ F 149:i
4283 +ÇÅ F 150:i
4284 +ÇÆ F 151:i
4285 +ÇÇ F 152:i
4286 +ÇÈ F 153:i
4287 +ÇÉ F 154:i
4288 +ÇÊ F 155:i
4289 +ÇË F 156:i
4290 +ÇÌ F 157:i
4291 +ÇÍ F 158:i
4292 +ÇÎ F 159:i
4293 +ÇÏ F 160:i
4294 +ÇÐ F 161:i
4295 +ÇÑ F 162:i
4296 +ÇÒ F 163:i
4297 +ÇÓ F 164:i
4298 +ÇÔ F 165:i
4299 +ÇÕ F 166:i
4300 +ÇÖ F 167:i
4301 +Ç× F 168:i
4302 +ÇØ F 169:i
4303 +ÇÙ F 170:i
4304 +ÇÚ F 171:i
4305 +ÇÛ F 172:i
4306 +ÇÜ F 173:i
4307 +ÇÝ F 174:i
4308 +ÇÞ F 175:i
4309 +Çß F 176:i
4310 +Çà F 177:i
4311 +Çá F 178:i
4312 +Çâ F 179:i
4313 +Çã F 180:i
4314 +Çä F 181:i
4315 +Çå F 182:i
4316 +Çæ F 183:i
4317 +Çç F 184:i
4318 +Çè F 185:i
4319 +Çé F 186:i
4320 +Çê F 187:i
4321 +Çë F 188:i
4322 +Çì F 189:i
4323 +Çí F 190:i
4324 +Çî F 191:i
4325 +Çï F 192:i
4326 +Çð F 193:i
4327 +Çñ F 194:i
4328 +Çò F 195:i
4329 +Çó F 196:i
4330 +Çô F 197:i
4331 +Çõ F 198:i
4332 +Çö F 199:i
4333 +Ç÷ F 200:i
4334 +Çø F 201:i
4335 +Çù F 202:i
4336 +Çú F 203:i
4337 +Çû F 204:i
4338 +Çü F 205:i
4339 +Çý F 206:i
4340 +Çþ F 207:i
4341 +ȡ F 208:i
4342 +Ȣ F 209:i
4343 +ȣ F 210:i
4344 +Ȥ F 211:i
4345 +ȥ F 212:i
4346 +Ȧ F 213:i
4347 +ȧ F 214:i
4348 +Ȩ F 215:i
4349 +ȩ F 216:i
4350 +Ȫ F 217:i
4351 +ȫ F 218:i
4352 +Ȭ F 219:i
4353 +ȭ F 220:i
4354 +Ȯ F 221:i
4355 +ȯ F 222:i
4356 +Ȱ F 223:i
4357 +ȱ F 224:i
4358 +Ȳ F 225:i
4359 +ȳ F 226:i
4360 +ȴ F 227:i
4361 +ȵ F 228:i
4362 +ȶ F 229:i
4363 +ȷ F 230:i
4364 +ȸ F 231:i
4365 +ȹ F 232:i
4366 +Ⱥ F 233:i
4367 +Ȼ F 234:i
4368 +ȼ F 235:i
4369 +Ƚ F 236:i
4370 +Ⱦ F 237:i
4371 +ȿ F 238:i
4372 +ÈÀ F 239:i
4373 +ÈÁ F 240:i
4374 +ÈÂ F 241:i
4375 +ÈÃ F 242:i
4376 +ÈÄ F 243:i
4377 +ÈÅ F 244:i
4378 +ÈÆ F 245:i
4379 +ÈÇ F 246:i
4380 +ÈÈ F 247:i
4381 +ÈÉ F 248:i
4382 +ÈÊ F 249:i
4383 +ÈË F 250:i
4384 +ÈÌ F 251:i
4385 +ÈÍ F 252:i
4386 +ÈÎ F 253:i
4387 +ÈÏ F 254:i
4388 +ÈÐ F 255:i
4389 +ÈÑ F 0:j
4390 +ÈÒ F 1:j
4391 +ÈÓ F 2:j
4392 +ÈÔ F 3:j
4393 +ÈÕ F 4:j
4394 +ÈÖ F 5:j
4395 +È× F 6:j
4396 +ÈØ F 7:j
4397 +ÈÙ F 8:j
4398 +ÈÚ F 9:j
4399 +ÈÛ F 10:j
4400 +ÈÜ F 11:j
4401 +ÈÝ F 12:j
4402 +ÈÞ F 13:j
4403 +Èß F 14:j
4404 +Èà F 15:j
4405 +Èá F 16:j
4406 +Èâ F 17:j
4407 +Èã F 18:j
4408 +Èä F 19:j
4409 +Èå F 20:j
4410 +Èæ F 21:j
4411 +Èç F 22:j
4412 +Èè F 23:j
4413 +Èé F 24:j
4414 +Èê F 25:j
4415 +Èë F 26:j
4416 +Èì F 27:j
4417 +Èí F 28:j
4418 +Èî F 29:j
4419 +Èï F 30:j
4420 +Èð F 31:j
4421 +Èñ F 32:j
4422 +Èò F 33:j
4423 +Èó F 34:j
4424 +Èô F 35:j
4425 +Èõ F 36:j
4426 +Èö F 37:j
4427 +È÷ F 38:j
4428 +Èø F 39:j
4429 +Èù F 40:j
4430 +Èú F 41:j
4431 +Èû F 42:j
4432 +Èü F 43:j
4433 +Èý F 44:j
4434 +Èþ F 45:j
4435 +ɡ F 46:j
4436 +ɢ F 47:j
4437 +ɣ F 48:j
4438 +ɤ F 49:j
4439 +ɥ F 50:j
4440 +ɦ F 51:j
4441 +ɧ F 52:j
4442 +ɨ F 53:j
4443 +ɩ F 54:j
4444 +ɪ F 55:j
4445 +ɫ F 56:j
4446 +ɬ F 57:j
4447 +ɭ F 58:j
4448 +ɮ F 59:j
4449 +ɯ F 60:j
4450 +ɰ F 61:j
4451 +ɱ F 62:j
4452 +ɲ F 63:j
4453 +ɳ F 64:j
4454 +ɴ F 65:j
4455 +ɵ F 66:j
4456 +ɶ F 67:j
4457 +ɷ F 68:j
4458 +ɸ F 69:j
4459 +ɹ F 70:j
4460 +ɺ F 71:j
4461 +ɻ F 72:j
4462 +ɼ F 73:j
4463 +ɽ F 74:j
4464 +ɾ F 75:j
4465 +ɿ F 76:j
4466 +ÉÀ F 77:j
4467 +ÉÁ F 78:j
4468 +ÉÂ F 79:j
4469 +ÉÃ F 80:j
4470 +ÉÄ F 81:j
4471 +ÉÅ F 82:j
4472 +ÉÆ F 83:j
4473 +ÉÇ F 84:j
4474 +ÉÈ F 85:j
4475 +ÉÉ F 86:j
4476 +ÉÊ F 87:j
4477 +ÉË F 88:j
4478 +ÉÌ F 89:j
4479 +ÉÍ F 90:j
4480 +ÉÎ F 91:j
4481 +ÉÏ F 92:j
4482 +ÉÐ F 93:j
4483 +ÉÑ F 94:j
4484 +ÉÒ F 95:j
4485 +ÉÓ F 96:j
4486 +ÉÔ F 97:j
4487 +ÉÕ F 98:j
4488 +ÉÖ F 99:j
4489 +É× F 100:j
4490 +ÉØ F 101:j
4491 +ÉÙ F 102:j
4492 +ÉÚ F 103:j
4493 +ÉÛ F 104:j
4494 +ÉÜ F 105:j
4495 +ÉÝ F 106:j
4496 +ÉÞ F 107:j
4497 +Éß F 108:j
4498 +Éà F 109:j
4499 +Éá F 110:j
4500 +Éâ F 111:j
4501 +Éã F 112:j
4502 +Éä F 113:j
4503 +Éå F 114:j
4504 +Éæ F 115:j
4505 +Éç F 116:j
4506 +Éè F 117:j
4507 +Éé F 118:j
4508 +Éê F 119:j
4509 +Éë F 120:j
4510 +Éì F 121:j
4511 +Éí F 122:j
4512 +Éî F 123:j
4513 +Éï F 124:j
4514 +Éð F 125:j
4515 +Éñ F 126:j
4516 +Éò F 127:j
4517 +Éó F 128:j
4518 +Éô F 129:j
4519 +Éõ F 130:j
4520 +Éö F 131:j
4521 +É÷ F 132:j
4522 +Éø F 133:j
4523 +Éù F 134:j
4524 +Éú F 135:j
4525 +Éû F 136:j
4526 +Éü F 137:j
4527 +Éý F 138:j
4528 +Éþ F 139:j
4529 +ʡ F 140:j
4530 +ʢ F 141:j
4531 +ʣ F 142:j
4532 +ʤ F 143:j
4533 +ʥ F 144:j
4534 +ʦ F 145:j
4535 +ʧ F 146:j
4536 +ʨ F 147:j
4537 +ʩ F 148:j
4538 +ʪ F 149:j
4539 +ʫ F 150:j
4540 +ʬ F 151:j
4541 +ʭ F 152:j
4542 +ʮ F 153:j
4543 +ʯ F 154:j
4544 +ʰ F 155:j
4545 +ʱ F 156:j
4546 +ʲ F 157:j
4547 +ʳ F 158:j
4548 +ʴ F 159:j
4549 +ʵ F 160:j
4550 +ʶ F 161:j
4551 +ʷ F 162:j
4552 +ʸ F 163:j
4553 +ʹ F 164:j
4554 +ʺ F 165:j
4555 +ʻ F 166:j
4556 +ʼ F 167:j
4557 +ʽ F 168:j
4558 +ʾ F 169:j
4559 +ʿ F 170:j
4560 +ÊÀ F 171:j
4561 +ÊÁ F 172:j
4562 +ÊÂ F 173:j
4563 +ÊÃ F 174:j
4564 +ÊÄ F 175:j
4565 +ÊÅ F 176:j
4566 +ÊÆ F 177:j
4567 +ÊÇ F 178:j
4568 +ÊÈ F 179:j
4569 +ÊÉ F 180:j
4570 +ÊÊ F 181:j
4571 +ÊË F 182:j
4572 +ÊÌ F 183:j
4573 +ÊÍ F 184:j
4574 +ÊÎ F 185:j
4575 +ÊÏ F 186:j
4576 +ÊÐ F 187:j
4577 +ÊÑ F 188:j
4578 +ÊÒ F 189:j
4579 +ÊÓ F 190:j
4580 +ÊÔ F 191:j
4581 +ÊÕ F 192:j
4582 +ÊÖ F 193:j
4583 +Ê× F 194:j
4584 +ÊØ F 195:j
4585 +ÊÙ F 196:j
4586 +ÊÚ F 197:j
4587 +ÊÛ F 198:j
4588 +ÊÜ F 199:j
4589 +ÊÝ F 200:j
4590 +ÊÞ F 201:j
4591 +Êß F 202:j
4592 +Êà F 203:j
4593 +Êá F 204:j
4594 +Êâ F 205:j
4595 +Êã F 206:j
4596 +Êä F 207:j
4597 +Êå F 208:j
4598 +Êæ F 209:j
4599 +Êç F 210:j
4600 +Êè F 211:j
4601 +Êé F 212:j
4602 +Êê F 213:j
4603 +Êë F 214:j
4604 +Êì F 215:j
4605 +Êí F 216:j
4606 +Êî F 217:j
4607 +Êï F 218:j
4608 +Êð F 219:j
4609 +Êñ F 220:j
4610 +Êò F 221:j
4611 +Êó F 222:j
4612 +Êô F 223:j
4613 +Êõ F 224:j
4614 +Êö F 225:j
4615 +Ê÷ F 226:j
4616 +Êø F 227:j
4617 +Êù F 228:j
4618 +Êú F 229:j
4619 +Êû F 230:j
4620 +Êü F 231:j
4621 +Êý F 232:j
4622 +Êþ F 233:j
4623 +ˡ F 234:j
4624 +ˢ F 235:j
4625 +ˣ F 236:j
4626 +ˤ F 237:j
4627 +˥ F 238:j
4628 +˦ F 239:j
4629 +˧ F 240:j
4630 +˨ F 241:j
4631 +˩ F 242:j
4632 +˪ F 243:j
4633 +˫ F 244:j
4634 +ˬ F 245:j
4635 +˭ F 246:j
4636 +ˮ F 247:j
4637 +˯ F 248:j
4638 +˰ F 249:j
4639 +˱ F 250:j
4640 +˲ F 251:j
4641 +˳ F 252:j
4642 +˴ F 253:j
4643 +˵ F 254:j
4644 +˶ F 255:j
4645 +˷ F 0:k
4646 +˸ F 1:k
4647 +˹ F 2:k
4648 +˺ F 3:k
4649 +˻ F 4:k
4650 +˼ F 5:k
4651 +˽ F 6:k
4652 +˾ F 7:k
4653 +˿ F 8:k
4654 +ËÀ F 9:k
4655 +ËÁ F 10:k
4656 +ËÂ F 11:k
4657 +ËÃ F 12:k
4658 +ËÄ F 13:k
4659 +ËÅ F 14:k
4660 +ËÆ F 15:k
4661 +ËÇ F 16:k
4662 +ËÈ F 17:k
4663 +ËÉ F 18:k
4664 +ËÊ F 19:k
4665 +ËË F 20:k
4666 +ËÌ F 21:k
4667 +ËÍ F 22:k
4668 +ËÎ F 23:k
4669 +ËÏ F 24:k
4670 +ËÐ F 25:k
4671 +ËÑ F 26:k
4672 +ËÒ F 27:k
4673 +ËÓ F 28:k
4674 +ËÔ F 29:k
4675 +ËÕ F 30:k
4676 +ËÖ F 31:k
4677 +Ë× F 32:k
4678 +ËØ F 33:k
4679 +ËÙ F 34:k
4680 +ËÚ F 35:k
4681 +ËÛ F 36:k
4682 +ËÜ F 37:k
4683 +ËÝ F 38:k
4684 +ËÞ F 39:k
4685 +Ëß F 40:k
4686 +Ëà F 41:k
4687 +Ëá F 42:k
4688 +Ëâ F 43:k
4689 +Ëã F 44:k
4690 +Ëä F 45:k
4691 +Ëå F 46:k
4692 +Ëæ F 47:k
4693 +Ëç F 48:k
4694 +Ëè F 49:k
4695 +Ëé F 50:k
4696 +Ëê F 51:k
4697 +Ëë F 52:k
4698 +Ëì F 53:k
4699 +Ëí F 54:k
4700 +Ëî F 55:k
4701 +Ëï F 56:k
4702 +Ëð F 57:k
4703 +Ëñ F 58:k
4704 +Ëò F 59:k
4705 +Ëó F 60:k
4706 +Ëô F 61:k
4707 +Ëõ F 62:k
4708 +Ëö F 63:k
4709 +Ë÷ F 64:k
4710 +Ëø F 65:k
4711 +Ëù F 66:k
4712 +Ëú F 67:k
4713 +Ëû F 68:k
4714 +Ëü F 69:k
4715 +Ëý F 70:k
4716 +Ëþ F 71:k
4717 +̡ F 72:k
4718 +̢ F 73:k
4719 +̣ F 74:k
4720 +̤ F 75:k
4721 +̥ F 76:k
4722 +̦ F 77:k
4723 +̧ F 78:k
4724 +̨ F 79:k
4725 +̩ F 80:k
4726 +̪ F 81:k
4727 +̫ F 82:k
4728 +̬ F 83:k
4729 +̭ F 84:k
4730 +̮ F 85:k
4731 +̯ F 86:k
4732 +̰ F 87:k
4733 +̱ F 88:k
4734 +̲ F 89:k
4735 +̳ F 90:k
4736 +̴ F 91:k
4737 +̵ F 92:k
4738 +̶ F 93:k
4739 +̷ F 94:k
4740 +̸ F 95:k
4741 +̹ F 96:k
4742 +̺ F 97:k
4743 +̻ F 98:k
4744 +̼ F 99:k
4745 +̽ F 100:k
4746 +̾ F 101:k
4747 +̿ F 102:k
4748 +ÌÀ F 103:k
4749 +ÌÁ F 104:k
4750 +ÌÂ F 105:k
4751 +ÌÃ F 106:k
4752 +ÌÄ F 107:k
4753 +ÌÅ F 108:k
4754 +ÌÆ F 109:k
4755 +ÌÇ F 110:k
4756 +ÌÈ F 111:k
4757 +ÌÉ F 112:k
4758 +ÌÊ F 113:k
4759 +ÌË F 114:k
4760 +ÌÌ F 115:k
4761 +ÌÍ F 116:k
4762 +ÌÎ F 117:k
4763 +ÌÏ F 118:k
4764 +ÌÐ F 119:k
4765 +ÌÑ F 120:k
4766 +ÌÒ F 121:k
4767 +ÌÓ F 122:k
4768 +ÌÔ F 123:k
4769 +ÌÕ F 124:k
4770 +ÌÖ F 125:k
4771 +Ì× F 126:k
4772 +ÌØ F 127:k
4773 +ÌÙ F 128:k
4774 +ÌÚ F 129:k
4775 +ÌÛ F 130:k
4776 +ÌÜ F 131:k
4777 +ÌÝ F 132:k
4778 +ÌÞ F 133:k
4779 +Ìß F 134:k
4780 +Ìà F 135:k
4781 +Ìá F 136:k
4782 +Ìâ F 137:k
4783 +Ìã F 138:k
4784 +Ìä F 139:k
4785 +Ìå F 140:k
4786 +Ìæ F 141:k
4787 +Ìç F 142:k
4788 +Ìè F 143:k
4789 +Ìé F 144:k
4790 +Ìê F 145:k
4791 +Ìë F 146:k
4792 +Ìì F 147:k
4793 +Ìí F 148:k
4794 +Ìî F 149:k
4795 +Ìï F 150:k
4796 +Ìð F 151:k
4797 +Ìñ F 152:k
4798 +Ìò F 153:k
4799 +Ìó F 154:k
4800 +Ìô F 155:k
4801 +Ìõ F 156:k
4802 +Ìö F 157:k
4803 +Ì÷ F 158:k
4804 +Ìø F 159:k
4805 +Ìù F 160:k
4806 +Ìú F 161:k
4807 +Ìû F 162:k
4808 +Ìü F 163:k
4809 +Ìý F 164:k
4810 +Ìþ F 165:k
4811 +͡ F 166:k
4812 +͢ F 167:k
4813 +ͣ F 168:k
4814 +ͤ F 169:k
4815 +ͥ F 170:k
4816 +ͦ F 171:k
4817 +ͧ F 172:k
4818 +ͨ F 173:k
4819 +ͩ F 174:k
4820 +ͪ F 175:k
4821 +ͫ F 176:k
4822 +ͬ F 177:k
4823 +ͭ F 178:k
4824 +ͮ F 179:k
4825 +ͯ F 180:k
4826 +Ͱ F 181:k
4827 +ͱ F 182:k
4828 +Ͳ F 183:k
4829 +ͳ F 184:k
4830 +ʹ F 185:k
4831 +͵ F 186:k
4832 +Ͷ F 187:k
4833 +ͷ F 188:k
4834 +͸ F 189:k
4835 +͹ F 190:k
4836 +ͺ F 191:k
4837 +ͻ F 192:k
4838 +ͼ F 193:k
4839 +ͽ F 194:k
4840 +; F 195:k
4841 +Ϳ F 196:k
4842 +ÍÀ F 197:k
4843 +ÍÁ F 198:k
4844 +ÍÂ F 199:k
4845 +ÍÃ F 200:k
4846 +ÍÄ F 201:k
4847 +ÍÅ F 202:k
4848 +ÍÆ F 203:k
4849 +ÍÇ F 204:k
4850 +ÍÈ F 205:k
4851 +ÍÉ F 206:k
4852 +ÍÊ F 207:k
4853 +ÍË F 208:k
4854 +ÍÌ F 209:k
4855 +ÍÍ F 210:k
4856 +ÍÎ F 211:k
4857 +ÍÏ F 212:k
4858 +ÍÐ F 213:k
4859 +ÍÑ F 214:k
4860 +ÍÒ F 215:k
4861 +ÍÓ F 216:k
4862 +ÍÔ F 217:k
4863 +ÍÕ F 218:k
4864 +ÍÖ F 219:k
4865 +Í× F 220:k
4866 +ÍØ F 221:k
4867 +ÍÙ F 222:k
4868 +ÍÚ F 223:k
4869 +ÍÛ F 224:k
4870 +ÍÜ F 225:k
4871 +ÍÝ F 226:k
4872 +ÍÞ F 227:k
4873 +Íß F 228:k
4874 +Íà F 229:k
4875 +Íá F 230:k
4876 +Íâ F 231:k
4877 +Íã F 232:k
4878 +Íä F 233:k
4879 +Íå F 234:k
4880 +Íæ F 235:k
4881 +Íç F 236:k
4882 +Íè F 237:k
4883 +Íé F 238:k
4884 +Íê F 239:k
4885 +Íë F 240:k
4886 +Íì F 241:k
4887 +Íí F 242:k
4888 +Íî F 243:k
4889 +Íï F 244:k
4890 +Íð F 245:k
4891 +Íñ F 246:k
4892 +Íò F 247:k
4893 +Íó F 248:k
4894 +Íô F 249:k
4895 +Íõ F 250:k
4896 +Íö F 251:k
4897 +Í÷ F 252:k
4898 +Íø F 253:k
4899 +Íù F 254:k
4900 +Íú F 255:k
4901 +Íû F 0:l
4902 +Íü F 1:l
4903 +Íý F 2:l
4904 +Íþ F 3:l
4905 +Ρ F 4:l
4906 +΢ F 5:l
4907 +Σ F 6:l
4908 +Τ F 7:l
4909 +Υ F 8:l
4910 +Φ F 9:l
4911 +Χ F 10:l
4912 +Ψ F 11:l
4913 +Ω F 12:l
4914 +Ϊ F 13:l
4915 +Ϋ F 14:l
4916 +ά F 15:l
4917 +έ F 16:l
4918 +ή F 17:l
4919 +ί F 18:l
4920 +ΰ F 19:l
4921 +α F 20:l
4922 +β F 21:l
4923 +γ F 22:l
4924 +δ F 23:l
4925 +ε F 24:l
4926 +ζ F 25:l
4927 +η F 26:l
4928 +θ F 27:l
4929 +ι F 28:l
4930 +κ F 29:l
4931 +λ F 30:l
4932 +μ F 31:l
4933 +ν F 32:l
4934 +ξ F 33:l
4935 +ο F 34:l
4936 +ÎÀ F 35:l
4937 +ÎÁ F 36:l
4938 +ÎÂ F 37:l
4939 +ÎÃ F 38:l
4940 +ÎÄ F 39:l
4941 +ÎÅ F 40:l
4942 +ÎÆ F 41:l
4943 +ÎÇ F 42:l
4944 +ÎÈ F 43:l
4945 +ÎÉ F 44:l
4946 +ÎÊ F 45:l
4947 +ÎË F 46:l
4948 +ÎÌ F 47:l
4949 +ÎÍ F 48:l
4950 +ÎÎ F 49:l
4951 +ÎÏ F 50:l
4952 +ÎÐ F 51:l
4953 +ÎÑ F 52:l
4954 +ÎÒ F 53:l
4955 +ÎÓ F 54:l
4956 +ÎÔ F 55:l
4957 +ÎÕ F 56:l
4958 +ÎÖ F 57:l
4959 +Î× F 58:l
4960 +ÎØ F 59:l
4961 +ÎÙ F 60:l
4962 +ÎÚ F 61:l
4963 +ÎÛ F 62:l
4964 +ÎÜ F 63:l
4965 +ÎÝ F 64:l
4966 +ÎÞ F 65:l
4967 +Îß F 66:l
4968 +Îà F 67:l
4969 +Îá F 68:l
4970 +Îâ F 69:l
4971 +Îã F 70:l
4972 +Îä F 71:l
4973 +Îå F 72:l
4974 +Îæ F 73:l
4975 +Îç F 74:l
4976 +Îè F 75:l
4977 +Îé F 76:l
4978 +Îê F 77:l
4979 +Îë F 78:l
4980 +Îì F 79:l
4981 +Îí F 80:l
4982 +Îî F 81:l
4983 +Îï F 82:l
4984 +Îð F 83:l
4985 +Îñ F 84:l
4986 +Îò F 85:l
4987 +Îó F 86:l
4988 +Îô F 87:l
4989 +Îõ F 88:l
4990 +Îö F 89:l
4991 +Î÷ F 90:l
4992 +Îø F 91:l
4993 +Îù F 92:l
4994 +Îú F 93:l
4995 +Îû F 94:l
4996 +Îü F 95:l
4997 +Îý F 96:l
4998 +Îþ F 97:l
4999 +ϡ F 98:l
5000 +Ϣ F 99:l
5001 +ϣ F 100:l
5002 +Ϥ F 101:l
5003 +ϥ F 102:l
5004 +Ϧ F 103:l
5005 +ϧ F 104:l
5006 +Ϩ F 105:l
5007 +ϩ F 106:l
5008 +Ϫ F 107:l
5009 +ϫ F 108:l
5010 +Ϭ F 109:l
5011 +ϭ F 110:l
5012 +Ϯ F 111:l
5013 +ϯ F 112:l
5014 +ϰ F 113:l
5015 +ϱ F 114:l
5016 +ϲ F 115:l
5017 +ϳ F 116:l
5018 +ϴ F 117:l
5019 +ϵ F 118:l
5020 +϶ F 119:l
5021 +Ϸ F 120:l
5022 +ϸ F 121:l
5023 +Ϲ F 122:l
5024 +Ϻ F 123:l
5025 +ϻ F 124:l
5026 +ϼ F 125:l
5027 +Ͻ F 126:l
5028 +Ͼ F 127:l
5029 +Ͽ F 128:l
5030 +ÏÀ F 129:l
5031 +ÏÁ F 130:l
5032 +ÏÂ F 131:l
5033 +ÏÃ F 132:l
5034 +ÏÄ F 133:l
5035 +ÏÅ F 134:l
5036 +ÏÆ F 135:l
5037 +ÏÇ F 136:l
5038 +ÏÈ F 137:l
5039 +ÏÉ F 138:l
5040 +ÏÊ F 139:l
5041 +ÏË F 140:l
5042 +ÏÌ F 141:l
5043 +ÏÍ F 142:l
5044 +ÏÎ F 143:l
5045 +ÏÏ F 144:l
5046 +ÏÐ F 145:l
5047 +ÏÑ F 146:l
5048 +ÏÒ F 147:l
5049 +ÏÓ F 148:l
5050 +С F 0:m
5051 +Т F 1:m
5052 +У F 2:m
5053 +Ф F 3:m
5054 +Х F 4:m
5055 +Ц F 5:m
5056 +Ч F 6:m
5057 +Ш F 7:m
5058 +Щ F 8:m
5059 +Ъ F 9:m
5060 +Ы F 10:m
5061 +Ь F 11:m
5062 +Э F 12:m
5063 +Ю F 13:m
5064 +Я F 14:m
5065 +а F 15:m
5066 +б F 16:m
5067 +в F 17:m
5068 +г F 18:m
5069 +д F 19:m
5070 +е F 20:m
5071 +ж F 21:m
5072 +з F 22:m
5073 +и F 23:m
5074 +й F 24:m
5075 +к F 25:m
5076 +л F 26:m
5077 +м F 27:m
5078 +н F 28:m
5079 +о F 29:m
5080 +п F 30:m
5081 +ÐÀ F 31:m
5082 +ÐÁ F 32:m
5083 +ÐÂ F 33:m
5084 +ÐÃ F 34:m
5085 +ÐÄ F 35:m
5086 +ÐÅ F 36:m
5087 +ÐÆ F 37:m
5088 +ÐÇ F 38:m
5089 +ÐÈ F 39:m
5090 +ÐÉ F 40:m
5091 +ÐÊ F 41:m
5092 +ÐË F 42:m
5093 +ÐÌ F 43:m
5094 +ÐÍ F 44:m
5095 +ÐÎ F 45:m
5096 +ÐÏ F 46:m
5097 +ÐÐ F 47:m
5098 +ÐÑ F 48:m
5099 +ÐÒ F 49:m
5100 +ÐÓ F 50:m
5101 +ÐÔ F 51:m
5102 +ÐÕ F 52:m
5103 +ÐÖ F 53:m
5104 +Ð× F 54:m
5105 +ÐØ F 55:m
5106 +ÐÙ F 56:m
5107 +ÐÚ F 57:m
5108 +ÐÛ F 58:m
5109 +ÐÜ F 59:m
5110 +ÐÝ F 60:m
5111 +ÐÞ F 61:m
5112 +Ðß F 62:m
5113 +Ðà F 63:m
5114 +Ðá F 64:m
5115 +Ðâ F 65:m
5116 +Ðã F 66:m
5117 +Ðä F 67:m
5118 +Ðå F 68:m
5119 +Ðæ F 69:m
5120 +Ðç F 70:m
5121 +Ðè F 71:m
5122 +Ðé F 72:m
5123 +Ðê F 73:m
5124 +Ðë F 74:m
5125 +Ðì F 75:m
5126 +Ðí F 76:m
5127 +Ðî F 77:m
5128 +Ðï F 78:m
5129 +Ðð F 79:m
5130 +Ðñ F 80:m
5131 +Ðò F 81:m
5132 +Ðó F 82:m
5133 +Ðô F 83:m
5134 +Ðõ F 84:m
5135 +Ðö F 85:m
5136 +Ð÷ F 86:m
5137 +Ðø F 87:m
5138 +Ðù F 88:m
5139 +Ðú F 89:m
5140 +Ðû F 90:m
5141 +Ðü F 91:m
5142 +Ðý F 92:m
5143 +Ðþ F 93:m
5144 +ѡ F 94:m
5145 +Ѣ F 95:m
5146 +ѣ F 96:m
5147 +Ѥ F 97:m
5148 +ѥ F 98:m
5149 +Ѧ F 99:m
5150 +ѧ F 100:m
5151 +Ѩ F 101:m
5152 +ѩ F 102:m
5153 +Ѫ F 103:m
5154 +ѫ F 104:m
5155 +Ѭ F 105:m
5156 +ѭ F 106:m
5157 +Ѯ F 107:m
5158 +ѯ F 108:m
5159 +Ѱ F 109:m
5160 +ѱ F 110:m
5161 +Ѳ F 111:m
5162 +ѳ F 112:m
5163 +Ѵ F 113:m
5164 +ѵ F 114:m
5165 +Ѷ F 115:m
5166 +ѷ F 116:m
5167 +Ѹ F 117:m
5168 +ѹ F 118:m
5169 +Ѻ F 119:m
5170 +ѻ F 120:m
5171 +Ѽ F 121:m
5172 +ѽ F 122:m
5173 +Ѿ F 123:m
5174 +ѿ F 124:m
5175 +ÑÀ F 125:m
5176 +ÑÁ F 126:m
5177 +ÑÂ F 127:m
5178 +ÑÃ F 128:m
5179 +ÑÄ F 129:m
5180 +ÑÅ F 130:m
5181 +ÑÆ F 131:m
5182 +ÑÇ F 132:m
5183 +ÑÈ F 133:m
5184 +ÑÉ F 134:m
5185 +ÑÊ F 135:m
5186 +ÑË F 136:m
5187 +ÑÌ F 137:m
5188 +ÑÍ F 138:m
5189 +ÑÎ F 139:m
5190 +ÑÏ F 140:m
5191 +ÑÐ F 141:m
5192 +ÑÑ F 142:m
5193 +ÑÒ F 143:m
5194 +ÑÓ F 144:m
5195 +ÑÔ F 145:m
5196 +ÑÕ F 146:m
5197 +ÑÖ F 147:m
5198 +Ñ× F 148:m
5199 +ÑØ F 149:m
5200 +ÑÙ F 150:m
5201 +ÑÚ F 151:m
5202 +ÑÛ F 152:m
5203 +ÑÜ F 153:m
5204 +ÑÝ F 154:m
5205 +ÑÞ F 155:m
5206 +Ñß F 156:m
5207 +Ñà F 157:m
5208 +Ñá F 158:m
5209 +Ñâ F 159:m
5210 +Ñã F 160:m
5211 +Ñä F 161:m
5212 +Ñå F 162:m
5213 +Ñæ F 163:m
5214 +Ñç F 164:m
5215 +Ñè F 165:m
5216 +Ñé F 166:m
5217 +Ñê F 167:m
5218 +Ñë F 168:m
5219 +Ñì F 169:m
5220 +Ñí F 170:m
5221 +Ñî F 171:m
5222 +Ñï F 172:m
5223 +Ñð F 173:m
5224 +Ññ F 174:m
5225 +Ñò F 175:m
5226 +Ñó F 176:m
5227 +Ñô F 177:m
5228 +Ñõ F 178:m
5229 +Ñö F 179:m
5230 +Ñ÷ F 180:m
5231 +Ñø F 181:m
5232 +Ñù F 182:m
5233 +Ñú F 183:m
5234 +Ñû F 184:m
5235 +Ñü F 185:m
5236 +Ñý F 186:m
5237 +Ñþ F 187:m
5238 +ҡ F 188:m
5239 +Ң F 189:m
5240 +ң F 190:m
5241 +Ҥ F 191:m
5242 +ҥ F 192:m
5243 +Ҧ F 193:m
5244 +ҧ F 194:m
5245 +Ҩ F 195:m
5246 +ҩ F 196:m
5247 +Ҫ F 197:m
5248 +ҫ F 198:m
5249 +Ҭ F 199:m
5250 +ҭ F 200:m
5251 +Ү F 201:m
5252 +ү F 202:m
5253 +Ұ F 203:m
5254 +ұ F 204:m
5255 +Ҳ F 205:m
5256 +ҳ F 206:m
5257 +Ҵ F 207:m
5258 +ҵ F 208:m
5259 +Ҷ F 209:m
5260 +ҷ F 210:m
5261 +Ҹ F 211:m
5262 +ҹ F 212:m
5263 +Һ F 213:m
5264 +һ F 214:m
5265 +Ҽ F 215:m
5266 +ҽ F 216:m
5267 +Ҿ F 217:m
5268 +ҿ F 218:m
5269 +ÒÀ F 219:m
5270 +ÒÁ F 220:m
5271 +ÒÂ F 221:m
5272 +ÒÃ F 222:m
5273 +ÒÄ F 223:m
5274 +ÒÅ F 224:m
5275 +ÒÆ F 225:m
5276 +ÒÇ F 226:m
5277 +ÒÈ F 227:m
5278 +ÒÉ F 228:m
5279 +ÒÊ F 229:m
5280 +ÒË F 230:m
5281 +ÒÌ F 231:m
5282 +ÒÍ F 232:m
5283 +ÒÎ F 233:m
5284 +ÒÏ F 234:m
5285 +ÒÐ F 235:m
5286 +ÒÑ F 236:m
5287 +ÒÒ F 237:m
5288 +ÒÓ F 238:m
5289 +ÒÔ F 239:m
5290 +ÒÕ F 240:m
5291 +ÒÖ F 241:m
5292 +Ò× F 242:m
5293 +ÒØ F 243:m
5294 +ÒÙ F 244:m
5295 +ÒÚ F 245:m
5296 +ÒÛ F 246:m
5297 +ÒÜ F 247:m
5298 +ÒÝ F 248:m
5299 +ÒÞ F 249:m
5300 +Òß F 250:m
5301 +Òà F 251:m
5302 +Òá F 252:m
5303 +Òâ F 253:m
5304 +Òã F 254:m
5305 +Òä F 255:m
5306 +Òå F 0:n
5307 +Òæ F 1:n
5308 +Òç F 2:n
5309 +Òè F 3:n
5310 +Òé F 4:n
5311 +Òê F 5:n
5312 +Òë F 6:n
5313 +Òì F 7:n
5314 +Òí F 8:n
5315 +Òî F 9:n
5316 +Òï F 10:n
5317 +Òð F 11:n
5318 +Òñ F 12:n
5319 +Òò F 13:n
5320 +Òó F 14:n
5321 +Òô F 15:n
5322 +Òõ F 16:n
5323 +Òö F 17:n
5324 +Ò÷ F 18:n
5325 +Òø F 19:n
5326 +Òù F 20:n
5327 +Òú F 21:n
5328 +Òû F 22:n
5329 +Òü F 23:n
5330 +Òý F 24:n
5331 +Òþ F 25:n
5332 +ӡ F 26:n
5333 +Ӣ F 27:n
5334 +ӣ F 28:n
5335 +Ӥ F 29:n
5336 +ӥ F 30:n
5337 +Ӧ F 31:n
5338 +ӧ F 32:n
5339 +Ө F 33:n
5340 +ө F 34:n
5341 +Ӫ F 35:n
5342 +ӫ F 36:n
5343 +Ӭ F 37:n
5344 +ӭ F 38:n
5345 +Ӯ F 39:n
5346 +ӯ F 40:n
5347 +Ӱ F 41:n
5348 +ӱ F 42:n
5349 +Ӳ F 43:n
5350 +ӳ F 44:n
5351 +Ӵ F 45:n
5352 +ӵ F 46:n
5353 +Ӷ F 47:n
5354 +ӷ F 48:n
5355 +Ӹ F 49:n
5356 +ӹ F 50:n
5357 +Ӻ F 51:n
5358 +ӻ F 52:n
5359 +Ӽ F 53:n
5360 +ӽ F 54:n
5361 +Ӿ F 55:n
5362 +ӿ F 56:n
5363 +ÓÀ F 57:n
5364 +ÓÁ F 58:n
5365 +ÓÂ F 59:n
5366 +ÓÃ F 60:n
5367 +ÓÄ F 61:n
5368 +ÓÅ F 62:n
5369 +ÓÆ F 63:n
5370 +ÓÇ F 64:n
5371 +ÓÈ F 65:n
5372 +ÓÉ F 66:n
5373 +ÓÊ F 67:n
5374 +ÓË F 68:n
5375 +ÓÌ F 69:n
5376 +ÓÍ F 70:n
5377 +ÓÎ F 71:n
5378 +ÓÏ F 72:n
5379 +ÓÐ F 73:n
5380 +ÓÑ F 74:n
5381 +ÓÒ F 75:n
5382 +ÓÓ F 76:n
5383 +ÓÔ F 77:n
5384 +ÓÕ F 78:n
5385 +ÓÖ F 79:n
5386 +Ó× F 80:n
5387 +ÓØ F 81:n
5388 +ÓÙ F 82:n
5389 +ÓÚ F 83:n
5390 +ÓÛ F 84:n
5391 +ÓÜ F 85:n
5392 +ÓÝ F 86:n
5393 +ÓÞ F 87:n
5394 +Óß F 88:n
5395 +Óà F 89:n
5396 +Óá F 90:n
5397 +Óâ F 91:n
5398 +Óã F 92:n
5399 +Óä F 93:n
5400 +Óå F 94:n
5401 +Óæ F 95:n
5402 +Óç F 96:n
5403 +Óè F 97:n
5404 +Óé F 98:n
5405 +Óê F 99:n
5406 +Óë F 100:n
5407 +Óì F 101:n
5408 +Óí F 102:n
5409 +Óî F 103:n
5410 +Óï F 104:n
5411 +Óð F 105:n
5412 +Óñ F 106:n
5413 +Óò F 107:n
5414 +Óó F 108:n
5415 +Óô F 109:n
5416 +Óõ F 110:n
5417 +Óö F 111:n
5418 +Ó÷ F 112:n
5419 +Óø F 113:n
5420 +Óù F 114:n
5421 +Óú F 115:n
5422 +Óû F 116:n
5423 +Óü F 117:n
5424 +Óý F 118:n
5425 +Óþ F 119:n
5426 +ԡ F 120:n
5427 +Ԣ F 121:n
5428 +ԣ F 122:n
5429 +Ԥ F 123:n
5430 +ԥ F 124:n
5431 +Ԧ F 125:n
5432 +ԧ F 126:n
5433 +Ԩ F 127:n
5434 +ԩ F 128:n
5435 +Ԫ F 129:n
5436 +ԫ F 130:n
5437 +Ԭ F 131:n
5438 +ԭ F 132:n
5439 +Ԯ F 133:n
5440 +ԯ F 134:n
5441 +԰ F 135:n
5442 +Ա F 136:n
5443 +Բ F 137:n
5444 +Գ F 138:n
5445 +Դ F 139:n
5446 +Ե F 140:n
5447 +Զ F 141:n
5448 +Է F 142:n
5449 +Ը F 143:n
5450 +Թ F 144:n
5451 +Ժ F 145:n
5452 +Ի F 146:n
5453 +Լ F 147:n
5454 +Խ F 148:n
5455 +Ծ F 149:n
5456 +Կ F 150:n
5457 +ÔÀ F 151:n
5458 +ÔÁ F 152:n
5459 +ÔÂ F 153:n
5460 +ÔÃ F 154:n
5461 +ÔÄ F 155:n
5462 +ÔÅ F 156:n
5463 +ÔÆ F 157:n
5464 +ÔÇ F 158:n
5465 +ÔÈ F 159:n
5466 +ÔÉ F 160:n
5467 +ÔÊ F 161:n
5468 +ÔË F 162:n
5469 +ÔÌ F 163:n
5470 +ÔÍ F 164:n
5471 +ÔÎ F 165:n
5472 +ÔÏ F 166:n
5473 +ÔÐ F 167:n
5474 +ÔÑ F 168:n
5475 +ÔÒ F 169:n
5476 +ÔÓ F 170:n
5477 +ÔÔ F 171:n
5478 +ÔÕ F 172:n
5479 +ÔÖ F 173:n
5480 +Ô× F 174:n
5481 +ÔØ F 175:n
5482 +ÔÙ F 176:n
5483 +ÔÚ F 177:n
5484 +ÔÛ F 178:n
5485 +ÔÜ F 179:n
5486 +ÔÝ F 180:n
5487 +ÔÞ F 181:n
5488 +Ôß F 182:n
5489 +Ôà F 183:n
5490 +Ôá F 184:n
5491 +Ôâ F 185:n
5492 +Ôã F 186:n
5493 +Ôä F 187:n
5494 +Ôå F 188:n
5495 +Ôæ F 189:n
5496 +Ôç F 190:n
5497 +Ôè F 191:n
5498 +Ôé F 192:n
5499 +Ôê F 193:n
5500 +Ôë F 194:n
5501 +Ôì F 195:n
5502 +Ôí F 196:n
5503 +Ôî F 197:n
5504 +Ôï F 198:n
5505 +Ôð F 199:n
5506 +Ôñ F 200:n
5507 +Ôò F 201:n
5508 +Ôó F 202:n
5509 +Ôô F 203:n
5510 +Ôõ F 204:n
5511 +Ôö F 205:n
5512 +Ô÷ F 206:n
5513 +Ôø F 207:n
5514 +Ôù F 208:n
5515 +Ôú F 209:n
5516 +Ôû F 210:n
5517 +Ôü F 211:n
5518 +Ôý F 212:n
5519 +Ôþ F 213:n
5520 +ա F 214:n
5521 +բ F 215:n
5522 +գ F 216:n
5523 +դ F 217:n
5524 +ե F 218:n
5525 +զ F 219:n
5526 +է F 220:n
5527 +ը F 221:n
5528 +թ F 222:n
5529 +ժ F 223:n
5530 +ի F 224:n
5531 +լ F 225:n
5532 +խ F 226:n
5533 +ծ F 227:n
5534 +կ F 228:n
5535 +հ F 229:n
5536 +ձ F 230:n
5537 +ղ F 231:n
5538 +ճ F 232:n
5539 +մ F 233:n
5540 +յ F 234:n
5541 +ն F 235:n
5542 +շ F 236:n
5543 +ո F 237:n
5544 +չ F 238:n
5545 +պ F 239:n
5546 +ջ F 240:n
5547 +ռ F 241:n
5548 +ս F 242:n
5549 +վ F 243:n
5550 +տ F 244:n
5551 +ÕÀ F 245:n
5552 +ÕÁ F 246:n
5553 +ÕÂ F 247:n
5554 +ÕÃ F 248:n
5555 +ÕÄ F 249:n
5556 +ÕÅ F 250:n
5557 +ÕÆ F 251:n
5558 +ÕÇ F 252:n
5559 +ÕÈ F 253:n
5560 +ÕÉ F 254:n
5561 +ÕÊ F 255:n
5562 +ÕË F 0:o
5563 +ÕÌ F 1:o
5564 +ÕÍ F 2:o
5565 +ÕÎ F 3:o
5566 +ÕÏ F 4:o
5567 +ÕÐ F 5:o
5568 +ÕÑ F 6:o
5569 +ÕÒ F 7:o
5570 +ÕÓ F 8:o
5571 +ÕÔ F 9:o
5572 +ÕÕ F 10:o
5573 +ÕÖ F 11:o
5574 +Õ× F 12:o
5575 +ÕØ F 13:o
5576 +ÕÙ F 14:o
5577 +ÕÚ F 15:o
5578 +ÕÛ F 16:o
5579 +ÕÜ F 17:o
5580 +ÕÝ F 18:o
5581 +ÕÞ F 19:o
5582 +Õß F 20:o
5583 +Õà F 21:o
5584 +Õá F 22:o
5585 +Õâ F 23:o
5586 +Õã F 24:o
5587 +Õä F 25:o
5588 +Õå F 26:o
5589 +Õæ F 27:o
5590 +Õç F 28:o
5591 +Õè F 29:o
5592 +Õé F 30:o
5593 +Õê F 31:o
5594 +Õë F 32:o
5595 +Õì F 33:o
5596 +Õí F 34:o
5597 +Õî F 35:o
5598 +Õï F 36:o
5599 +Õð F 37:o
5600 +Õñ F 38:o
5601 +Õò F 39:o
5602 +Õó F 40:o
5603 +Õô F 41:o
5604 +Õõ F 42:o
5605 +Õö F 43:o
5606 +Õ÷ F 44:o
5607 +Õø F 45:o
5608 +Õù F 46:o
5609 +Õú F 47:o
5610 +Õû F 48:o
5611 +Õü F 49:o
5612 +Õý F 50:o
5613 +Õþ F 51:o
5614 +֡ F 52:o
5615 +֢ F 53:o
5616 +֣ F 54:o
5617 +֤ F 55:o
5618 +֥ F 56:o
5619 +֦ F 57:o
5620 +֧ F 58:o
5621 +֨ F 59:o
5622 +֩ F 60:o
5623 +֪ F 61:o
5624 +֫ F 62:o
5625 +֬ F 63:o
5626 +֭ F 64:o
5627 +֮ F 65:o
5628 +֯ F 66:o
5629 +ְ F 67:o
5630 +ֱ F 68:o
5631 +ֲ F 69:o
5632 +ֳ F 70:o
5633 +ִ F 71:o
5634 +ֵ F 72:o
5635 +ֶ F 73:o
5636 +ַ F 74:o
5637 +ָ F 75:o
5638 +ֹ F 76:o
5639 +ֺ F 77:o
5640 +ֻ F 78:o
5641 +ּ F 79:o
5642 +ֽ F 80:o
5643 +־ F 81:o
5644 +ֿ F 82:o
5645 +ÖÀ F 83:o
5646 +ÖÁ F 84:o
5647 +ÖÂ F 85:o
5648 +ÖÃ F 86:o
5649 +ÖÄ F 87:o
5650 +ÖÅ F 88:o
5651 +ÖÆ F 89:o
5652 +ÖÇ F 90:o
5653 +ÖÈ F 91:o
5654 +ÖÉ F 92:o
5655 +ÖÊ F 93:o
5656 +ÖË F 94:o
5657 +ÖÌ F 95:o
5658 +ÖÍ F 96:o
5659 +ÖÎ F 97:o
5660 +ÖÏ F 98:o
5661 +ÖÐ F 99:o
5662 +ÖÑ F 100:o
5663 +ÖÒ F 101:o
5664 +ÖÓ F 102:o
5665 +ÖÔ F 103:o
5666 +ÖÕ F 104:o
5667 +ÖÖ F 105:o
5668 +Ö× F 106:o
5669 +ÖØ F 107:o
5670 +ÖÙ F 108:o
5671 +ÖÚ F 109:o
5672 +ÖÛ F 110:o
5673 +ÖÜ F 111:o
5674 +ÖÝ F 112:o
5675 +ÖÞ F 113:o
5676 +Öß F 114:o
5677 +Öà F 115:o
5678 +Öá F 116:o
5679 +Öâ F 117:o
5680 +Öã F 118:o
5681 +Öä F 119:o
5682 +Öå F 120:o
5683 +Öæ F 121:o
5684 +Öç F 122:o
5685 +Öè F 123:o
5686 +Öé F 124:o
5687 +Öê F 125:o
5688 +Öë F 126:o
5689 +Öì F 127:o
5690 +Öí F 128:o
5691 +Öî F 129:o
5692 +Öï F 130:o
5693 +Öð F 131:o
5694 +Öñ F 132:o
5695 +Öò F 133:o
5696 +Öó F 134:o
5697 +Öô F 135:o
5698 +Öõ F 136:o
5699 +Öö F 137:o
5700 +Ö÷ F 138:o
5701 +Öø F 139:o
5702 +Öù F 140:o
5703 +Öú F 141:o
5704 +Öû F 142:o
5705 +Öü F 143:o
5706 +Öý F 144:o
5707 +Öþ F 145:o
5708 +ס F 146:o
5709 +ע F 147:o
5710 +ף F 148:o
5711 +פ F 149:o
5712 +ץ F 150:o
5713 +צ F 151:o
5714 +ק F 152:o
5715 +ר F 153:o
5716 +ש F 154:o
5717 +ת F 155:o
5718 +׫ F 156:o
5719 +׬ F 157:o
5720 +׭ F 158:o
5721 +׮ F 159:o
5722 +ׯ F 160:o
5723 +װ F 161:o
5724 +ױ F 162:o
5725 +ײ F 163:o
5726 +׳ F 164:o
5727 +״ F 165:o
5728 +׵ F 166:o
5729 +׶ F 167:o
5730 +׷ F 168:o
5731 +׸ F 169:o
5732 +׹ F 170:o
5733 +׺ F 171:o
5734 +׻ F 172:o
5735 +׼ F 173:o
5736 +׽ F 174:o
5737 +׾ F 175:o
5738 +׿ F 176:o
5739 +×À F 177:o
5740 +×Á F 178:o
5741 +× F 179:o
5742 +×à F 180:o
5743 +×Ä F 181:o
5744 +×Å F 182:o
5745 +×Æ F 183:o
5746 +×Ç F 184:o
5747 +×È F 185:o
5748 +×É F 186:o
5749 +×Ê F 187:o
5750 +×Ë F 188:o
5751 +×Ì F 189:o
5752 +×Í F 190:o
5753 +×Î F 191:o
5754 +×Ï F 192:o
5755 +×Ð F 193:o
5756 +×Ñ F 194:o
5757 +×Ò F 195:o
5758 +×Ó F 196:o
5759 +×Ô F 197:o
5760 +×Õ F 198:o
5761 +×Ö F 199:o
5762 +×× F 200:o
5763 +×Ø F 201:o
5764 +×Ù F 202:o
5765 +×Ú F 203:o
5766 +×Û F 204:o
5767 +×Ü F 205:o
5768 +×Ý F 206:o
5769 +×Þ F 207:o
5770 +×ß F 208:o
5771 +×à F 209:o
5772 +×á F 210:o
5773 +×â F 211:o
5774 +×ã F 212:o
5775 +×ä F 213:o
5776 +×å F 214:o
5777 +×æ F 215:o
5778 +×ç F 216:o
5779 +×è F 217:o
5780 +×é F 218:o
5781 +×ê F 219:o
5782 +×ë F 220:o
5783 +×ì F 221:o
5784 +×í F 222:o
5785 +×î F 223:o
5786 +×ï F 224:o
5787 +×ð F 225:o
5788 +×ñ F 226:o
5789 +×ò F 227:o
5790 +×ó F 228:o
5791 +×ô F 229:o
5792 +×õ F 230:o
5793 +×ö F 231:o
5794 +×÷ F 232:o
5795 +×ø F 233:o
5796 +×ù F 234:o
5797 +×ú F 235:o
5798 +×û F 236:o
5799 +×ü F 237:o
5800 +×ý F 238:o
5801 +×þ F 239:o
5802 +ء F 240:o
5803 +آ F 241:o
5804 +أ F 242:o
5805 +ؤ F 243:o
5806 +إ F 244:o
5807 +ئ F 245:o
5808 +ا F 246:o
5809 +ب F 247:o
5810 +ة F 248:o
5811 +ت F 249:o
5812 +ث F 250:o
5813 +ج F 251:o
5814 +ح F 252:o
5815 +خ F 253:o
5816 +د F 254:o
5817 +ذ F 255:o
5818 +ر F 0:p
5819 +ز F 1:p
5820 +س F 2:p
5821 +ش F 3:p
5822 +ص F 4:p
5823 +ض F 5:p
5824 +ط F 6:p
5825 +ظ F 7:p
5826 +ع F 8:p
5827 +غ F 9:p
5828 +ػ F 10:p
5829 +ؼ F 11:p
5830 +ؽ F 12:p
5831 +ؾ F 13:p
5832 +ؿ F 14:p
5833 +ØÀ F 15:p
5834 +ØÁ F 16:p
5835 +ØÂ F 17:p
5836 +ØÃ F 18:p
5837 +ØÄ F 19:p
5838 +ØÅ F 20:p
5839 +ØÆ F 21:p
5840 +ØÇ F 22:p
5841 +ØÈ F 23:p
5842 +ØÉ F 24:p
5843 +ØÊ F 25:p
5844 +ØË F 26:p
5845 +ØÌ F 27:p
5846 +ØÍ F 28:p
5847 +ØÎ F 29:p
5848 +ØÏ F 30:p
5849 +ØÐ F 31:p
5850 +ØÑ F 32:p
5851 +ØÒ F 33:p
5852 +ØÓ F 34:p
5853 +ØÔ F 35:p
5854 +ØÕ F 36:p
5855 +ØÖ F 37:p
5856 +Ø× F 38:p
5857 +ØØ F 39:p
5858 +ØÙ F 40:p
5859 +ØÚ F 41:p
5860 +ØÛ F 42:p
5861 +ØÜ F 43:p
5862 +ØÝ F 44:p
5863 +ØÞ F 45:p
5864 +Øß F 46:p
5865 +Øà F 47:p
5866 +Øá F 48:p
5867 +Øâ F 49:p
5868 +Øã F 50:p
5869 +Øä F 51:p
5870 +Øå F 52:p
5871 +Øæ F 53:p
5872 +Øç F 54:p
5873 +Øè F 55:p
5874 +Øé F 56:p
5875 +Øê F 57:p
5876 +Øë F 58:p
5877 +Øì F 59:p
5878 +Øí F 60:p
5879 +Øî F 61:p
5880 +Øï F 62:p
5881 +Øð F 63:p
5882 +Øñ F 64:p
5883 +Øò F 65:p
5884 +Øó F 66:p
5885 +Øô F 67:p
5886 +Øõ F 68:p
5887 +Øö F 69:p
5888 +Ø÷ F 70:p
5889 +Øø F 71:p
5890 +Øù F 72:p
5891 +Øú F 73:p
5892 +Øû F 74:p
5893 +Øü F 75:p
5894 +Øý F 76:p
5895 +Øþ F 77:p
5896 +١ F 78:p
5897 +٢ F 79:p
5898 +٣ F 80:p
5899 +٤ F 81:p
5900 +٥ F 82:p
5901 +٦ F 83:p
5902 +٧ F 84:p
5903 +٨ F 85:p
5904 +٩ F 86:p
5905 +٪ F 87:p
5906 +٫ F 88:p
5907 +٬ F 89:p
5908 +٭ F 90:p
5909 +ٮ F 91:p
5910 +ٯ F 92:p
5911 +ٰ F 93:p
5912 +ٱ F 94:p
5913 +ٲ F 95:p
5914 +ٳ F 96:p
5915 +ٴ F 97:p
5916 +ٵ F 98:p
5917 +ٶ F 99:p
5918 +ٷ F 100:p
5919 +ٸ F 101:p
5920 +ٹ F 102:p
5921 +ٺ F 103:p
5922 +ٻ F 104:p
5923 +ټ F 105:p
5924 +ٽ F 106:p
5925 +پ F 107:p
5926 +ٿ F 108:p
5927 +ÙÀ F 109:p
5928 +ÙÁ F 110:p
5929 +ÙÂ F 111:p
5930 +ÙÃ F 112:p
5931 +ÙÄ F 113:p
5932 +ÙÅ F 114:p
5933 +ÙÆ F 115:p
5934 +ÙÇ F 116:p
5935 +ÙÈ F 117:p
5936 +ÙÉ F 118:p
5937 +ÙÊ F 119:p
5938 +ÙË F 120:p
5939 +ÙÌ F 121:p
5940 +ÙÍ F 122:p
5941 +ÙÎ F 123:p
5942 +ÙÏ F 124:p
5943 +ÙÐ F 125:p
5944 +ÙÑ F 126:p
5945 +ÙÒ F 127:p
5946 +ÙÓ F 128:p
5947 +ÙÔ F 129:p
5948 +ÙÕ F 130:p
5949 +ÙÖ F 131:p
5950 +Ù× F 132:p
5951 +ÙØ F 133:p
5952 +ÙÙ F 134:p
5953 +ÙÚ F 135:p
5954 +ÙÛ F 136:p
5955 +ÙÜ F 137:p
5956 +ÙÝ F 138:p
5957 +ÙÞ F 139:p
5958 +Ùß F 140:p
5959 +Ùà F 141:p
5960 +Ùá F 142:p
5961 +Ùâ F 143:p
5962 +Ùã F 144:p
5963 +Ùä F 145:p
5964 +Ùå F 146:p
5965 +Ùæ F 147:p
5966 +Ùç F 148:p
5967 +Ùè F 149:p
5968 +Ùé F 150:p
5969 +Ùê F 151:p
5970 +Ùë F 152:p
5971 +Ùì F 153:p
5972 +Ùí F 154:p
5973 +Ùî F 155:p
5974 +Ùï F 156:p
5975 +Ùð F 157:p
5976 +Ùñ F 158:p
5977 +Ùò F 159:p
5978 +Ùó F 160:p
5979 +Ùô F 161:p
5980 +Ùõ F 162:p
5981 +Ùö F 163:p
5982 +Ù÷ F 164:p
5983 +Ùø F 165:p
5984 +Ùù F 166:p
5985 +Ùú F 167:p
5986 +Ùû F 168:p
5987 +Ùü F 169:p
5988 +Ùý F 170:p
5989 +Ùþ F 171:p
5990 +ڡ F 172:p
5991 +ڢ F 173:p
5992 +ڣ F 174:p
5993 +ڤ F 175:p
5994 +ڥ F 176:p
5995 +ڦ F 177:p
5996 +ڧ F 178:p
5997 +ڨ F 179:p
5998 +ک F 180:p
5999 +ڪ F 181:p
6000 +ګ F 182:p
6001 +ڬ F 183:p
6002 +ڭ F 184:p
6003 +ڮ F 185:p
6004 +گ F 186:p
6005 +ڰ F 187:p
6006 +ڱ F 188:p
6007 +ڲ F 189:p
6008 +ڳ F 190:p
6009 +ڴ F 191:p
6010 +ڵ F 192:p
6011 +ڶ F 193:p
6012 +ڷ F 194:p
6013 +ڸ F 195:p
6014 +ڹ F 196:p
6015 +ں F 197:p
6016 +ڻ F 198:p
6017 +ڼ F 199:p
6018 +ڽ F 200:p
6019 +ھ F 201:p
6020 +ڿ F 202:p
6021 +ÚÀ F 203:p
6022 +ÚÁ F 204:p
6023 +ÚÂ F 205:p
6024 +ÚÃ F 206:p
6025 +ÚÄ F 207:p
6026 +ÚÅ F 208:p
6027 +ÚÆ F 209:p
6028 +ÚÇ F 210:p
6029 +ÚÈ F 211:p
6030 +ÚÉ F 212:p
6031 +ÚÊ F 213:p
6032 +ÚË F 214:p
6033 +ÚÌ F 215:p
6034 +ÚÍ F 216:p
6035 +ÚÎ F 217:p
6036 +ÚÏ F 218:p
6037 +ÚÐ F 219:p
6038 +ÚÑ F 220:p
6039 +ÚÒ F 221:p
6040 +ÚÓ F 222:p
6041 +ÚÔ F 223:p
6042 +ÚÕ F 224:p
6043 +ÚÖ F 225:p
6044 +Ú× F 226:p
6045 +ÚØ F 227:p
6046 +ÚÙ F 228:p
6047 +ÚÚ F 229:p
6048 +ÚÛ F 230:p
6049 +ÚÜ F 231:p
6050 +ÚÝ F 232:p
6051 +ÚÞ F 233:p
6052 +Úß F 234:p
6053 +Úà F 235:p
6054 +Úá F 236:p
6055 +Úâ F 237:p
6056 +Úã F 238:p
6057 +Úä F 239:p
6058 +Úå F 240:p
6059 +Úæ F 241:p
6060 +Úç F 242:p
6061 +Úè F 243:p
6062 +Úé F 244:p
6063 +Úê F 245:p
6064 +Úë F 246:p
6065 +Úì F 247:p
6066 +Úí F 248:p
6067 +Úî F 249:p
6068 +Úï F 250:p
6069 +Úð F 251:p
6070 +Úñ F 252:p
6071 +Úò F 253:p
6072 +Úó F 254:p
6073 +Úô F 255:p
6074 +Úõ F 0:q
6075 +Úö F 1:q
6076 +Ú÷ F 2:q
6077 +Úø F 3:q
6078 +Úù F 4:q
6079 +Úú F 5:q
6080 +Úû F 6:q
6081 +Úü F 7:q
6082 +Úý F 8:q
6083 +Úþ F 9:q
6084 +ۡ F 10:q
6085 +ۢ F 11:q
6086 +ۣ F 12:q
6087 +ۤ F 13:q
6088 +ۥ F 14:q
6089 +ۦ F 15:q
6090 +ۧ F 16:q
6091 +ۨ F 17:q
6092 +۩ F 18:q
6093 +۪ F 19:q
6094 +۫ F 20:q
6095 +۬ F 21:q
6096 +ۭ F 22:q
6097 +ۮ F 23:q
6098 +ۯ F 24:q
6099 +۰ F 25:q
6100 +۱ F 26:q
6101 +۲ F 27:q
6102 +۳ F 28:q
6103 +۴ F 29:q
6104 +۵ F 30:q
6105 +۶ F 31:q
6106 +۷ F 32:q
6107 +۸ F 33:q
6108 +۹ F 34:q
6109 +ۺ F 35:q
6110 +ۻ F 36:q
6111 +ۼ F 37:q
6112 +۽ F 38:q
6113 +۾ F 39:q
6114 +ۿ F 40:q
6115 +ÛÀ F 41:q
6116 +ÛÁ F 42:q
6117 +ÛÂ F 43:q
6118 +ÛÃ F 44:q
6119 +ÛÄ F 45:q
6120 +ÛÅ F 46:q
6121 +ÛÆ F 47:q
6122 +ÛÇ F 48:q
6123 +ÛÈ F 49:q
6124 +ÛÉ F 50:q
6125 +ÛÊ F 51:q
6126 +ÛË F 52:q
6127 +ÛÌ F 53:q
6128 +ÛÍ F 54:q
6129 +ÛÎ F 55:q
6130 +ÛÏ F 56:q
6131 +ÛÐ F 57:q
6132 +ÛÑ F 58:q
6133 +ÛÒ F 59:q
6134 +ÛÓ F 60:q
6135 +ÛÔ F 61:q
6136 +ÛÕ F 62:q
6137 +ÛÖ F 63:q
6138 +Û× F 64:q
6139 +ÛØ F 65:q
6140 +ÛÙ F 66:q
6141 +ÛÚ F 67:q
6142 +ÛÛ F 68:q
6143 +ÛÜ F 69:q
6144 +ÛÝ F 70:q
6145 +ÛÞ F 71:q
6146 +Ûß F 72:q
6147 +Ûà F 73:q
6148 +Ûá F 74:q
6149 +Ûâ F 75:q
6150 +Ûã F 76:q
6151 +Ûä F 77:q
6152 +Ûå F 78:q
6153 +Ûæ F 79:q
6154 +Ûç F 80:q
6155 +Ûè F 81:q
6156 +Ûé F 82:q
6157 +Ûê F 83:q
6158 +Ûë F 84:q
6159 +Ûì F 85:q
6160 +Ûí F 86:q
6161 +Ûî F 87:q
6162 +Ûï F 88:q
6163 +Ûð F 89:q
6164 +Ûñ F 90:q
6165 +Ûò F 91:q
6166 +Ûó F 92:q
6167 +Ûô F 93:q
6168 +Ûõ F 94:q
6169 +Ûö F 95:q
6170 +Û÷ F 96:q
6171 +Ûø F 97:q
6172 +Ûù F 98:q
6173 +Ûú F 99:q
6174 +Ûû F 100:q
6175 +Ûü F 101:q
6176 +Ûý F 102:q
6177 +Ûþ F 103:q
6178 +ܡ F 104:q
6179 +ܢ F 105:q
6180 +ܣ F 106:q
6181 +ܤ F 107:q
6182 +ܥ F 108:q
6183 +ܦ F 109:q
6184 +ܧ F 110:q
6185 +ܨ F 111:q
6186 +ܩ F 112:q
6187 +ܪ F 113:q
6188 +ܫ F 114:q
6189 +ܬ F 115:q
6190 +ܭ F 116:q
6191 +ܮ F 117:q
6192 +ܯ F 118:q
6193 +ܰ F 119:q
6194 +ܱ F 120:q
6195 +ܲ F 121:q
6196 +ܳ F 122:q
6197 +ܴ F 123:q
6198 +ܵ F 124:q
6199 +ܶ F 125:q
6200 +ܷ F 126:q
6201 +ܸ F 127:q
6202 +ܹ F 128:q
6203 +ܺ F 129:q
6204 +ܻ F 130:q
6205 +ܼ F 131:q
6206 +ܽ F 132:q
6207 +ܾ F 133:q
6208 +ܿ F 134:q
6209 +ÜÀ F 135:q
6210 +ÜÁ F 136:q
6211 +ÜÂ F 137:q
6212 +ÜÃ F 138:q
6213 +ÜÄ F 139:q
6214 +ÜÅ F 140:q
6215 +ÜÆ F 141:q
6216 +ÜÇ F 142:q
6217 +ÜÈ F 143:q
6218 +ÜÉ F 144:q
6219 +ÜÊ F 145:q
6220 +ÜË F 146:q
6221 +ÜÌ F 147:q
6222 +ÜÍ F 148:q
6223 +ÜÎ F 149:q
6224 +ÜÏ F 150:q
6225 +ÜÐ F 151:q
6226 +ÜÑ F 152:q
6227 +ÜÒ F 153:q
6228 +ÜÓ F 154:q
6229 +ÜÔ F 155:q
6230 +ÜÕ F 156:q
6231 +ÜÖ F 157:q
6232 +Ü× F 158:q
6233 +ÜØ F 159:q
6234 +ÜÙ F 160:q
6235 +ÜÚ F 161:q
6236 +ÜÛ F 162:q
6237 +ÜÜ F 163:q
6238 +ÜÝ F 164:q
6239 +ÜÞ F 165:q
6240 +Üß F 166:q
6241 +Üà F 167:q
6242 +Üá F 168:q
6243 +Üâ F 169:q
6244 +Üã F 170:q
6245 +Üä F 171:q
6246 +Üå F 172:q
6247 +Üæ F 173:q
6248 +Üç F 174:q
6249 +Üè F 175:q
6250 +Üé F 176:q
6251 +Üê F 177:q
6252 +Üë F 178:q
6253 +Üì F 179:q
6254 +Üí F 180:q
6255 +Üî F 181:q
6256 +Üï F 182:q
6257 +Üð F 183:q
6258 +Üñ F 184:q
6259 +Üò F 185:q
6260 +Üó F 186:q
6261 +Üô F 187:q
6262 +Üõ F 188:q
6263 +Üö F 189:q
6264 +Ü÷ F 190:q
6265 +Üø F 191:q
6266 +Üù F 192:q
6267 +Üú F 193:q
6268 +Üû F 194:q
6269 +Üü F 195:q
6270 +Üý F 196:q
6271 +Üþ F 197:q
6272 +ݡ F 198:q
6273 +ݢ F 199:q
6274 +ݣ F 200:q
6275 +ݤ F 201:q
6276 +ݥ F 202:q
6277 +ݦ F 203:q
6278 +ݧ F 204:q
6279 +ݨ F 205:q
6280 +ݩ F 206:q
6281 +ݪ F 207:q
6282 +ݫ F 208:q
6283 +ݬ F 209:q
6284 +ݭ F 210:q
6285 +ݮ F 211:q
6286 +ݯ F 212:q
6287 +ݰ F 213:q
6288 +ݱ F 214:q
6289 +ݲ F 215:q
6290 +ݳ F 216:q
6291 +ݴ F 217:q
6292 +ݵ F 218:q
6293 +ݶ F 219:q
6294 +ݷ F 220:q
6295 +ݸ F 221:q
6296 +ݹ F 222:q
6297 +ݺ F 223:q
6298 +ݻ F 224:q
6299 +ݼ F 225:q
6300 +ݽ F 226:q
6301 +ݾ F 227:q
6302 +ݿ F 228:q
6303 +ÝÀ F 229:q
6304 +ÝÁ F 230:q
6305 +ÝÂ F 231:q
6306 +ÝÃ F 232:q
6307 +ÝÄ F 233:q
6308 +ÝÅ F 234:q
6309 +ÝÆ F 235:q
6310 +ÝÇ F 236:q
6311 +ÝÈ F 237:q
6312 +ÝÉ F 238:q
6313 +ÝÊ F 239:q
6314 +ÝË F 240:q
6315 +ÝÌ F 241:q
6316 +ÝÍ F 242:q
6317 +ÝÎ F 243:q
6318 +ÝÏ F 244:q
6319 +ÝÐ F 245:q
6320 +ÝÑ F 246:q
6321 +ÝÒ F 247:q
6322 +ÝÓ F 248:q
6323 +ÝÔ F 249:q
6324 +ÝÕ F 250:q
6325 +ÝÖ F 251:q
6326 +Ý× F 252:q
6327 +ÝØ F 253:q
6328 +ÝÙ F 254:q
6329 +ÝÚ F 255:q
6330 +ÝÛ F 0:r
6331 +ÝÜ F 1:r
6332 +ÝÝ F 2:r
6333 +ÝÞ F 3:r
6334 +Ýß F 4:r
6335 +Ýà F 5:r
6336 +Ýá F 6:r
6337 +Ýâ F 7:r
6338 +Ýã F 8:r
6339 +Ýä F 9:r
6340 +Ýå F 10:r
6341 +Ýæ F 11:r
6342 +Ýç F 12:r
6343 +Ýè F 13:r
6344 +Ýé F 14:r
6345 +Ýê F 15:r
6346 +Ýë F 16:r
6347 +Ýì F 17:r
6348 +Ýí F 18:r
6349 +Ýî F 19:r
6350 +Ýï F 20:r
6351 +Ýð F 21:r
6352 +Ýñ F 22:r
6353 +Ýò F 23:r
6354 +Ýó F 24:r
6355 +Ýô F 25:r
6356 +Ýõ F 26:r
6357 +Ýö F 27:r
6358 +Ý÷ F 28:r
6359 +Ýø F 29:r
6360 +Ýù F 30:r
6361 +Ýú F 31:r
6362 +Ýû F 32:r
6363 +Ýü F 33:r
6364 +Ýý F 34:r
6365 +Ýþ F 35:r
6366 +ޡ F 36:r
6367 +ޢ F 37:r
6368 +ޣ F 38:r
6369 +ޤ F 39:r
6370 +ޥ F 40:r
6371 +ަ F 41:r
6372 +ާ F 42:r
6373 +ި F 43:r
6374 +ީ F 44:r
6375 +ު F 45:r
6376 +ޫ F 46:r
6377 +ެ F 47:r
6378 +ޭ F 48:r
6379 +ޮ F 49:r
6380 +ޯ F 50:r
6381 +ް F 51:r
6382 +ޱ F 52:r
6383 +޲ F 53:r
6384 +޳ F 54:r
6385 +޴ F 55:r
6386 +޵ F 56:r
6387 +޶ F 57:r
6388 +޷ F 58:r
6389 +޸ F 59:r
6390 +޹ F 60:r
6391 +޺ F 61:r
6392 +޻ F 62:r
6393 +޼ F 63:r
6394 +޽ F 64:r
6395 +޾ F 65:r
6396 +޿ F 66:r
6397 +ÞÀ F 67:r
6398 +ÞÁ F 68:r
6399 +ÞÂ F 69:r
6400 +ÞÃ F 70:r
6401 +ÞÄ F 71:r
6402 +ÞÅ F 72:r
6403 +ÞÆ F 73:r
6404 +ÞÇ F 74:r
6405 +ÞÈ F 75:r
6406 +ÞÉ F 76:r
6407 +ÞÊ F 77:r
6408 +ÞË F 78:r
6409 +ÞÌ F 79:r
6410 +ÞÍ F 80:r
6411 +ÞÎ F 81:r
6412 +ÞÏ F 82:r
6413 +ÞÐ F 83:r
6414 +ÞÑ F 84:r
6415 +ÞÒ F 85:r
6416 +ÞÓ F 86:r
6417 +ÞÔ F 87:r
6418 +ÞÕ F 88:r
6419 +ÞÖ F 89:r
6420 +Þ× F 90:r
6421 +ÞØ F 91:r
6422 +ÞÙ F 92:r
6423 +ÞÚ F 93:r
6424 +ÞÛ F 94:r
6425 +ÞÜ F 95:r
6426 +ÞÝ F 96:r
6427 +ÞÞ F 97:r
6428 +Þß F 98:r
6429 +Þà F 99:r
6430 +Þá F 100:r
6431 +Þâ F 101:r
6432 +Þã F 102:r
6433 +Þä F 103:r
6434 +Þå F 104:r
6435 +Þæ F 105:r
6436 +Þç F 106:r
6437 +Þè F 107:r
6438 +Þé F 108:r
6439 +Þê F 109:r
6440 +Þë F 110:r
6441 +Þì F 111:r
6442 +Þí F 112:r
6443 +Þî F 113:r
6444 +Þï F 114:r
6445 +Þð F 115:r
6446 +Þñ F 116:r
6447 +Þò F 117:r
6448 +Þó F 118:r
6449 +Þô F 119:r
6450 +Þõ F 120:r
6451 +Þö F 121:r
6452 +Þ÷ F 122:r
6453 +Þø F 123:r
6454 +Þù F 124:r
6455 +Þú F 125:r
6456 +Þû F 126:r
6457 +Þü F 127:r
6458 +Þý F 128:r
6459 +Þþ F 129:r
6460 +ߡ F 130:r
6461 +ߢ F 131:r
6462 +ߣ F 132:r
6463 +ߤ F 133:r
6464 +ߥ F 134:r
6465 +ߦ F 135:r
6466 +ߧ F 136:r
6467 +ߨ F 137:r
6468 +ߩ F 138:r
6469 +ߪ F 139:r
6470 +߫ F 140:r
6471 +߬ F 141:r
6472 +߭ F 142:r
6473 +߮ F 143:r
6474 +߯ F 144:r
6475 +߰ F 145:r
6476 +߱ F 146:r
6477 +߲ F 147:r
6478 +߳ F 148:r
6479 +ߴ F 149:r
6480 +ߵ F 150:r
6481 +߶ F 151:r
6482 +߷ F 152:r
6483 +߸ F 153:r
6484 +߹ F 154:r
6485 +ߺ F 155:r
6486 +߻ F 156:r
6487 +߼ F 157:r
6488 +߽ F 158:r
6489 +߾ F 159:r
6490 +߿ F 160:r
6491 +ßÀ F 161:r
6492 +ßÁ F 162:r
6493 +ß F 163:r
6494 +ßà F 164:r
6495 +ᎠF 165:r
6496 +ᏠF 166:r
6497 +ᒠF 167:r
6498 +ဠF 168:r
6499 +ßÈ F 169:r
6500 +ᐠF 170:r
6501 +ßÊ F 171:r
6502 +ßË F 172:r
6503 +ßÌ F 173:r
6504 +ßÍ F 174:r
6505 +ßÎ F 175:r
6506 +ßÏ F 176:r
6507 +ßÐ F 177:r
6508 +ᥠF 178:r
6509 +ßÒ F 179:r
6510 +ßÓ F 180:r
6511 +ßÔ F 181:r
6512 +ßÕ F 182:r
6513 +ßÖ F 183:r
6514 +ß× F 184:r
6515 +ßØ F 185:r
6516 +ßÙ F 186:r
6517 +ßÚ F 187:r
6518 +ßÛ F 188:r
6519 +ᚠF 189:r
6520 +ßÝ F 190:r
6521 +ßÞ F 191:r
6522 +ßß F 192:r
6523 +ßà F 193:r
6524 +ßá F 194:r
6525 +ßâ F 195:r
6526 +ßã F 196:r
6527 +ßä F 197:r
6528 +ßå F 198:r
6529 +ßæ F 199:r
6530 +ßç F 200:r
6531 +ßè F 201:r
6532 +ßé F 202:r
6533 +ßê F 203:r
6534 +ßë F 204:r
6535 +ßì F 205:r
6536 +ßí F 206:r
6537 +ßî F 207:r
6538 +ßï F 208:r
6539 +ßð F 209:r
6540 +ßñ F 210:r
6541 +ßò F 211:r
6542 +ßó F 212:r
6543 +ßô F 213:r
6544 +ßõ F 214:r
6545 +ßö F 215:r
6546 +ß÷ F 216:r
6547 +ßø F 217:r
6548 +ßù F 218:r
6549 +ßú F 219:r
6550 +ßû F 220:r
6551 +ßü F 221:r
6552 +ßý F 222:r
6553 +ßþ F 223:r
6554 +à¡ F 224:r
6555 +ࢠF 225:r
6556 +࣠F 226:r
6557 +ठF 227:r
6558 +ॠF 228:r
6559 +ঠF 229:r
6560 +ৠF 230:r
6561 +ਠF 231:r
6562 +à© F 232:r
6563 +ઠF 233:r
6564 +à« F 234:r
6565 +ଠF 235:r
6566 +à­ F 236:r
6567 +à® F 237:r
6568 +௠F 238:r
6569 +à° F 239:r
6570 +à± F 240:r
6571 +ಠF 241:r
6572 +à³ F 242:r
6573 +à´ F 243:r
6574 +ൠF 244:r
6575 +චF 245:r
6576 +à· F 246:r
6577 +ภF 247:r
6578 +๠F 248:r
6579 +ຠF 249:r
6580 +à» F 250:r
6581 +༠F 251:r
6582 +འF 252:r
6583 +ྠF 253:r
6584 +à¿ F 254:r
6585 +àÀ F 255:r
6586 +àÁ F 0:s
6587 +à F 1:s
6588 +àà F 2:s
6589 +àÄ F 3:s
6590 +àÅ F 4:s
6591 +àÆ F 5:s
6592 +àÇ F 6:s
6593 +àÈ F 7:s
6594 +àÉ F 8:s
6595 +àÊ F 9:s
6596 +àË F 10:s
6597 +àÌ F 11:s
6598 +àÍ F 12:s
6599 +àÎ F 13:s
6600 +àÏ F 14:s
6601 +àÐ F 15:s
6602 +àÑ F 16:s
6603 +àÒ F 17:s
6604 +àÓ F 18:s
6605 +àÔ F 19:s
6606 +àÕ F 20:s
6607 +àÖ F 21:s
6608 +à× F 22:s
6609 +àØ F 23:s
6610 +àÙ F 24:s
6611 +àÚ F 25:s
6612 +àÛ F 26:s
6613 +àÜ F 27:s
6614 +àÝ F 28:s
6615 +àÞ F 29:s
6616 +àß F 30:s
6617 +àà F 31:s
6618 +àá F 32:s
6619 +àâ F 33:s
6620 +àã F 34:s
6621 +àä F 35:s
6622 +àå F 36:s
6623 +àæ F 37:s
6624 +àç F 38:s
6625 +àè F 39:s
6626 +àé F 40:s
6627 +àê F 41:s
6628 +àë F 42:s
6629 +àì F 43:s
6630 +àí F 44:s
6631 +àî F 45:s
6632 +àï F 46:s
6633 +àð F 47:s
6634 +àñ F 48:s
6635 +àò F 49:s
6636 +àó F 50:s
6637 +àô F 51:s
6638 +àõ F 52:s
6639 +àö F 53:s
6640 +à÷ F 54:s
6641 +àø F 55:s
6642 +àù F 56:s
6643 +àú F 57:s
6644 +àû F 58:s
6645 +àü F 59:s
6646 +àý F 60:s
6647 +àþ F 61:s
6648 +á¡ F 62:s
6649 +ᢠF 63:s
6650 +ᣠF 64:s
6651 +ᤠF 65:s
6652 +ᥠF 66:s
6653 +ᦠF 67:s
6654 +᧠F 68:s
6655 +ᨠF 69:s
6656 +á© F 70:s
6657 +᪠F 71:s
6658 +á« F 72:s
6659 +ᬠF 73:s
6660 +á­ F 74:s
6661 +á® F 75:s
6662 +ᯠF 76:s
6663 +á° F 77:s
6664 +á± F 78:s
6665 +á² F 79:s
6666 +á³ F 80:s
6667 +á´ F 81:s
6668 +áµ F 82:s
6669 +ᶠF 83:s
6670 +á· F 84:s
6671 +ḠF 85:s
6672 +á¹ F 86:s
6673 +ẠF 87:s
6674 +á» F 88:s
6675 +á¼ F 89:s
6676 +á½ F 90:s
6677 +á¾ F 91:s
6678 +á¿ F 92:s
6679 +áÀ F 93:s
6680 +áÁ F 94:s
6681 +á F 95:s
6682 +áà F 96:s
6683 +áÄ F 97:s
6684 +áÅ F 98:s
6685 +áÆ F 99:s
6686 +áÇ F 100:s
6687 +áÈ F 101:s
6688 +áÉ F 102:s
6689 +áÊ F 103:s
6690 +áË F 104:s
6691 +áÌ F 105:s
6692 +áÍ F 106:s
6693 +áÎ F 107:s
6694 +áÏ F 108:s
6695 +áÐ F 109:s
6696 +áÑ F 110:s
6697 +áÒ F 111:s
6698 +áÓ F 112:s
6699 +áÔ F 113:s
6700 +áÕ F 114:s
6701 +áÖ F 115:s
6702 +á× F 116:s
6703 +áØ F 117:s
6704 +áÙ F 118:s
6705 +áÚ F 119:s
6706 +áÛ F 120:s
6707 +áÜ F 121:s
6708 +áÝ F 122:s
6709 +áÞ F 123:s
6710 +áß F 124:s
6711 +áà F 125:s
6712 +áá F 126:s
6713 +áâ F 127:s
6714 +áã F 128:s
6715 +áä F 129:s
6716 +áå F 130:s
6717 +áæ F 131:s
6718 +áç F 132:s
6719 +áè F 133:s
6720 +áé F 134:s
6721 +áê F 135:s
6722 +áë F 136:s
6723 +áì F 137:s
6724 +áí F 138:s
6725 +áî F 139:s
6726 +áï F 140:s
6727 +áð F 141:s
6728 +áñ F 142:s
6729 +áò F 143:s
6730 +áó F 144:s
6731 +áô F 145:s
6732 +áõ F 146:s
6733 +áö F 147:s
6734 +á÷ F 148:s
6735 +áø F 149:s
6736 +áù F 150:s
6737 +áú F 151:s
6738 +áû F 152:s
6739 +áü F 153:s
6740 +áý F 154:s
6741 +áþ F 155:s
6742 +â¡ F 156:s
6743 +⢠F 157:s
6744 +⣠F 158:s
6745 +⤠F 159:s
6746 +⥠F 160:s
6747 +⦠F 161:s
6748 +⧠F 162:s
6749 +⨠F 163:s
6750 +â© F 164:s
6751 +⪠F 165:s
6752 +â« F 166:s
6753 +⬠F 167:s
6754 +â­ F 168:s
6755 +â® F 169:s
6756 +⯠F 170:s
6757 +â° F 171:s
6758 +â± F 172:s
6759 +â² F 173:s
6760 +â³ F 174:s
6761 +â´ F 175:s
6762 +âµ F 176:s
6763 +ⶠF 177:s
6764 +â· F 178:s
6765 +⸠F 179:s
6766 +â¹ F 180:s
6767 +⺠F 181:s
6768 +â» F 182:s
6769 +â¼ F 183:s
6770 +â½ F 184:s
6771 +â¾ F 185:s
6772 +â¿ F 186:s
6773 +âÀ F 187:s
6774 +âÁ F 188:s
6775 +â F 189:s
6776 +âà F 190:s
6777 +âÄ F 191:s
6778 +âÅ F 192:s
6779 +âÆ F 193:s
6780 +âÇ F 194:s
6781 +âÈ F 195:s
6782 +âÉ F 196:s
6783 +âÊ F 197:s
6784 +âË F 198:s
6785 +âÌ F 199:s
6786 +âÍ F 200:s
6787 +âÎ F 201:s
6788 +âÏ F 202:s
6789 +âÐ F 203:s
6790 +âÑ F 204:s
6791 +âÒ F 205:s
6792 +âÓ F 206:s
6793 +âÔ F 207:s
6794 +âÕ F 208:s
6795 +âÖ F 209:s
6796 +â× F 210:s
6797 +âØ F 211:s
6798 +âÙ F 212:s
6799 +âÚ F 213:s
6800 +âÛ F 214:s
6801 +âÜ F 215:s
6802 +âÝ F 216:s
6803 +âÞ F 217:s
6804 +âß F 218:s
6805 +âà F 219:s
6806 +âá F 220:s
6807 +ââ F 221:s
6808 +âã F 222:s
6809 +âä F 223:s
6810 +âå F 224:s
6811 +âæ F 225:s
6812 +âç F 226:s
6813 +âè F 227:s
6814 +âé F 228:s
6815 +âê F 229:s
6816 +âë F 230:s
6817 +âì F 231:s
6818 +âí F 232:s
6819 +âî F 233:s
6820 +âï F 234:s
6821 +âð F 235:s
6822 +âñ F 236:s
6823 +âò F 237:s
6824 +âó F 238:s
6825 +âô F 239:s
6826 +âõ F 240:s
6827 +âö F 241:s
6828 +â÷ F 242:s
6829 +âø F 243:s
6830 +âù F 244:s
6831 +âú F 245:s
6832 +âû F 246:s
6833 +âü F 247:s
6834 +âý F 248:s
6835 +âþ F 249:s
6836 +ã¡ F 250:s
6837 +㢠F 251:s
6838 +㣠F 252:s
6839 +㤠F 253:s
6840 +㥠F 254:s
6841 +㦠F 255:s
6842 +㧠F 0:t
6843 +㨠F 1:t
6844 +ã© F 2:t
6845 +㪠F 3:t
6846 +ã« F 4:t
6847 +㬠F 5:t
6848 +ã­ F 6:t
6849 +ã® F 7:t
6850 +㯠F 8:t
6851 +ã° F 9:t
6852 +ã± F 10:t
6853 +ã² F 11:t
6854 +ã³ F 12:t
6855 +ã´ F 13:t
6856 +ãµ F 14:t
6857 +㶠F 15:t
6858 +ã· F 16:t
6859 +㸠F 17:t
6860 +ã¹ F 18:t
6861 +㺠F 19:t
6862 +ã» F 20:t
6863 +ã¼ F 21:t
6864 +ã½ F 22:t
6865 +ã¾ F 23:t
6866 +ã¿ F 24:t
6867 +ãÀ F 25:t
6868 +ãÁ F 26:t
6869 +ã F 27:t
6870 +ãà F 28:t
6871 +ãÄ F 29:t
6872 +ãÅ F 30:t
6873 +ãÆ F 31:t
6874 +ãÇ F 32:t
6875 +ãÈ F 33:t
6876 +ãÉ F 34:t
6877 +ãÊ F 35:t
6878 +ãË F 36:t
6879 +ãÌ F 37:t
6880 +ãÍ F 38:t
6881 +ãÎ F 39:t
6882 +ãÏ F 40:t
6883 +ãÐ F 41:t
6884 +ãÑ F 42:t
6885 +ãÒ F 43:t
6886 +ãÓ F 44:t
6887 +ãÔ F 45:t
6888 +ãÕ F 46:t
6889 +ãÖ F 47:t
6890 +ã× F 48:t
6891 +ãØ F 49:t
6892 +ãÙ F 50:t
6893 +ãÚ F 51:t
6894 +ãÛ F 52:t
6895 +ãÜ F 53:t
6896 +ãÝ F 54:t
6897 +ãÞ F 55:t
6898 +ãß F 56:t
6899 +ãà F 57:t
6900 +ãá F 58:t
6901 +ãâ F 59:t
6902 +ãã F 60:t
6903 +ãä F 61:t
6904 +ãå F 62:t
6905 +ãæ F 63:t
6906 +ãç F 64:t
6907 +ãè F 65:t
6908 +ãé F 66:t
6909 +ãê F 67:t
6910 +ãë F 68:t
6911 +ãì F 69:t
6912 +ãí F 70:t
6913 +ãî F 71:t
6914 +ãï F 72:t
6915 +ãð F 73:t
6916 +ãñ F 74:t
6917 +ãò F 75:t
6918 +ãó F 76:t
6919 +ãô F 77:t
6920 +ãõ F 78:t
6921 +ãö F 79:t
6922 +ã÷ F 80:t
6923 +ãø F 81:t
6924 +ãù F 82:t
6925 +ãú F 83:t
6926 +ãû F 84:t
6927 +ãü F 85:t
6928 +ãý F 86:t
6929 +ãþ F 87:t
6930 +ä¡ F 88:t
6931 +ä¢ F 89:t
6932 +ä£ F 90:t
6933 +ä¤ F 91:t
6934 +ä¥ F 92:t
6935 +ä¦ F 93:t
6936 +ä§ F 94:t
6937 +ä¨ F 95:t
6938 +ä© F 96:t
6939 +äª F 97:t
6940 +ä« F 98:t
6941 +ä¬ F 99:t
6942 +ä­ F 100:t
6943 +ä® F 101:t
6944 +ä¯ F 102:t
6945 +ä° F 103:t
6946 +ä± F 104:t
6947 +ä² F 105:t
6948 +ä³ F 106:t
6949 +ä´ F 107:t
6950 +äµ F 108:t
6951 +ä¶ F 109:t
6952 +ä· F 110:t
6953 +ä¸ F 111:t
6954 +ä¹ F 112:t
6955 +äº F 113:t
6956 +ä» F 114:t
6957 +ä¼ F 115:t
6958 +ä½ F 116:t
6959 +ä¾ F 117:t
6960 +ä¿ F 118:t
6961 +äÀ F 119:t
6962 +äÁ F 120:t
6963 +ä F 121:t
6964 +äà F 122:t
6965 +äÄ F 123:t
6966 +äÅ F 124:t
6967 +äÆ F 125:t
6968 +äÇ F 126:t
6969 +äÈ F 127:t
6970 +äÉ F 128:t
6971 +äÊ F 129:t
6972 +äË F 130:t
6973 +äÌ F 131:t
6974 +äÍ F 132:t
6975 +äÎ F 133:t
6976 +äÏ F 134:t
6977 +äÐ F 135:t
6978 +äÑ F 136:t
6979 +äÒ F 137:t
6980 +äÓ F 138:t
6981 +äÔ F 139:t
6982 +äÕ F 140:t
6983 +äÖ F 141:t
6984 +ä× F 142:t
6985 +äØ F 143:t
6986 +äÙ F 144:t
6987 +äÚ F 145:t
6988 +äÛ F 146:t
6989 +äÜ F 147:t
6990 +äÝ F 148:t
6991 +äÞ F 149:t
6992 +äß F 150:t
6993 +äà F 151:t
6994 +äá F 152:t
6995 +äâ F 153:t
6996 +äã F 154:t
6997 +ää F 155:t
6998 +äå F 156:t
6999 +äæ F 157:t
7000 +äç F 158:t
7001 +äè F 159:t
7002 +äé F 160:t
7003 +äê F 161:t
7004 +äë F 162:t
7005 +äì F 163:t
7006 +äí F 164:t
7007 +äî F 165:t
7008 +äï F 166:t
7009 +äð F 167:t
7010 +äñ F 168:t
7011 +äò F 169:t
7012 +äó F 170:t
7013 +äô F 171:t
7014 +äõ F 172:t
7015 +äö F 173:t
7016 +ä÷ F 174:t
7017 +äø F 175:t
7018 +äù F 176:t
7019 +äú F 177:t
7020 +äû F 178:t
7021 +äü F 179:t
7022 +äý F 180:t
7023 +äþ F 181:t
7024 +å¡ F 182:t
7025 +å¢ F 183:t
7026 +å£ F 184:t
7027 +å¤ F 185:t
7028 +å¥ F 186:t
7029 +å¦ F 187:t
7030 +å§ F 188:t
7031 +å¨ F 189:t
7032 +å© F 190:t
7033 +åª F 191:t
7034 +å« F 192:t
7035 +å¬ F 193:t
7036 +å­ F 194:t
7037 +å® F 195:t
7038 +å¯ F 196:t
7039 +å° F 197:t
7040 +å± F 198:t
7041 +å² F 199:t
7042 +å³ F 200:t
7043 +å´ F 201:t
7044 +åµ F 202:t
7045 +å¶ F 203:t
7046 +å· F 204:t
7047 +å¸ F 205:t
7048 +å¹ F 206:t
7049 +åº F 207:t
7050 +å» F 208:t
7051 +å¼ F 209:t
7052 +å½ F 210:t
7053 +å¾ F 211:t
7054 +å¿ F 212:t
7055 +åÀ F 213:t
7056 +åÁ F 214:t
7057 +å F 215:t
7058 +åà F 216:t
7059 +åÄ F 217:t
7060 +åÅ F 218:t
7061 +åÆ F 219:t
7062 +åÇ F 220:t
7063 +åÈ F 221:t
7064 +åÉ F 222:t
7065 +åÊ F 223:t
7066 +åË F 224:t
7067 +åÌ F 225:t
7068 +åÍ F 226:t
7069 +åÎ F 227:t
7070 +åÏ F 228:t
7071 +åÐ F 229:t
7072 +åÑ F 230:t
7073 +åÒ F 231:t
7074 +åÓ F 232:t
7075 +åÔ F 233:t
7076 +åÕ F 234:t
7077 +åÖ F 235:t
7078 +å× F 236:t
7079 +åØ F 237:t
7080 +åÙ F 238:t
7081 +åÚ F 239:t
7082 +åÛ F 240:t
7083 +åÜ F 241:t
7084 +åÝ F 242:t
7085 +åÞ F 243:t
7086 +åß F 244:t
7087 +åà F 245:t
7088 +åá F 246:t
7089 +åâ F 247:t
7090 +åã F 248:t
7091 +åä F 249:t
7092 +åå F 250:t
7093 +åæ F 251:t
7094 +åç F 252:t
7095 +åè F 253:t
7096 +åé F 254:t
7097 +åê F 255:t
7098 +åë F 0:u
7099 +åì F 1:u
7100 +åí F 2:u
7101 +åî F 3:u
7102 +åï F 4:u
7103 +åð F 5:u
7104 +åñ F 6:u
7105 +åò F 7:u
7106 +åó F 8:u
7107 +åô F 9:u
7108 +åõ F 10:u
7109 +åö F 11:u
7110 +å÷ F 12:u
7111 +åø F 13:u
7112 +åù F 14:u
7113 +åú F 15:u
7114 +åû F 16:u
7115 +åü F 17:u
7116 +åý F 18:u
7117 +åþ F 19:u
7118 +æ¡ F 20:u
7119 +æ¢ F 21:u
7120 +æ£ F 22:u
7121 +æ¤ F 23:u
7122 +æ¥ F 24:u
7123 +æ¦ F 25:u
7124 +æ§ F 26:u
7125 +æ¨ F 27:u
7126 +æ© F 28:u
7127 +æª F 29:u
7128 +æ« F 30:u
7129 +æ¬ F 31:u
7130 +æ­ F 32:u
7131 +æ® F 33:u
7132 +æ¯ F 34:u
7133 +æ° F 35:u
7134 +æ± F 36:u
7135 +æ² F 37:u
7136 +æ³ F 38:u
7137 +æ´ F 39:u
7138 +æµ F 40:u
7139 +æ¶ F 41:u
7140 +æ· F 42:u
7141 +æ¸ F 43:u
7142 +æ¹ F 44:u
7143 +æº F 45:u
7144 +æ» F 46:u
7145 +æ¼ F 47:u
7146 +æ½ F 48:u
7147 +æ¾ F 49:u
7148 +æ¿ F 50:u
7149 +æÀ F 51:u
7150 +æÁ F 52:u
7151 +æ F 53:u
7152 +æà F 54:u
7153 +æÄ F 55:u
7154 +æÅ F 56:u
7155 +æÆ F 57:u
7156 +æÇ F 58:u
7157 +æÈ F 59:u
7158 +æÉ F 60:u
7159 +æÊ F 61:u
7160 +æË F 62:u
7161 +æÌ F 63:u
7162 +æÍ F 64:u
7163 +æÎ F 65:u
7164 +æÏ F 66:u
7165 +æÐ F 67:u
7166 +æÑ F 68:u
7167 +æÒ F 69:u
7168 +æÓ F 70:u
7169 +æÔ F 71:u
7170 +æÕ F 72:u
7171 +æÖ F 73:u
7172 +æ× F 74:u
7173 +æØ F 75:u
7174 +æÙ F 76:u
7175 +æÚ F 77:u
7176 +æÛ F 78:u
7177 +æÜ F 79:u
7178 +æÝ F 80:u
7179 +æÞ F 81:u
7180 +æß F 82:u
7181 +æà F 83:u
7182 +æá F 84:u
7183 +æâ F 85:u
7184 +æã F 86:u
7185 +æä F 87:u
7186 +æå F 88:u
7187 +ææ F 89:u
7188 +æç F 90:u
7189 +æè F 91:u
7190 +æé F 92:u
7191 +æê F 93:u
7192 +æë F 94:u
7193 +æì F 95:u
7194 +æí F 96:u
7195 +æî F 97:u
7196 +æï F 98:u
7197 +æð F 99:u
7198 +æñ F 100:u
7199 +æò F 101:u
7200 +æó F 102:u
7201 +æô F 103:u
7202 +æõ F 104:u
7203 +æö F 105:u
7204 +æ÷ F 106:u
7205 +æø F 107:u
7206 +æù F 108:u
7207 +æú F 109:u
7208 +æû F 110:u
7209 +æü F 111:u
7210 +æý F 112:u
7211 +æþ F 113:u
7212 +ç¡ F 114:u
7213 +ç¢ F 115:u
7214 +ç£ F 116:u
7215 +ç¤ F 117:u
7216 +ç¥ F 118:u
7217 +ç¦ F 119:u
7218 +ç§ F 120:u
7219 +ç¨ F 121:u
7220 +ç© F 122:u
7221 +çª F 123:u
7222 +ç« F 124:u
7223 +ç¬ F 125:u
7224 +ç­ F 126:u
7225 +ç® F 127:u
7226 +ç¯ F 128:u
7227 +ç° F 129:u
7228 +ç± F 130:u
7229 +ç² F 131:u
7230 +ç³ F 132:u
7231 +ç´ F 133:u
7232 +çµ F 134:u
7233 +ç¶ F 135:u
7234 +ç· F 136:u
7235 +ç¸ F 137:u
7236 +ç¹ F 138:u
7237 +çº F 139:u
7238 +ç» F 140:u
7239 +ç¼ F 141:u
7240 +ç½ F 142:u
7241 +ç¾ F 143:u
7242 +ç¿ F 144:u
7243 +çÀ F 145:u
7244 +çÁ F 146:u
7245 +ç F 147:u
7246 +çà F 148:u
7247 +çÄ F 149:u
7248 +çÅ F 150:u
7249 +çÆ F 151:u
7250 +çÇ F 152:u
7251 +çÈ F 153:u
7252 +çÉ F 154:u
7253 +çÊ F 155:u
7254 +çË F 156:u
7255 +çÌ F 157:u
7256 +çÍ F 158:u
7257 +çÎ F 159:u
7258 +çÏ F 160:u
7259 +çÐ F 161:u
7260 +çÑ F 162:u
7261 +çÒ F 163:u
7262 +çÓ F 164:u
7263 +çÔ F 165:u
7264 +çÕ F 166:u
7265 +çÖ F 167:u
7266 +ç× F 168:u
7267 +çØ F 169:u
7268 +çÙ F 170:u
7269 +çÚ F 171:u
7270 +çÛ F 172:u
7271 +çÜ F 173:u
7272 +çÝ F 174:u
7273 +çÞ F 175:u
7274 +çß F 176:u
7275 +çà F 177:u
7276 +çá F 178:u
7277 +çâ F 179:u
7278 +çã F 180:u
7279 +çä F 181:u
7280 +çå F 182:u
7281 +çæ F 183:u
7282 +çç F 184:u
7283 +çè F 185:u
7284 +çé F 186:u
7285 +çê F 187:u
7286 +çë F 188:u
7287 +çì F 189:u
7288 +çí F 190:u
7289 +çî F 191:u
7290 +çï F 192:u
7291 +çð F 193:u
7292 +çñ F 194:u
7293 +çò F 195:u
7294 +çó F 196:u
7295 +çô F 197:u
7296 +çõ F 198:u
7297 +çö F 199:u
7298 +ç÷ F 200:u
7299 +çø F 201:u
7300 +çù F 202:u
7301 +çú F 203:u
7302 +çû F 204:u
7303 +çü F 205:u
7304 +çý F 206:u
7305 +çþ F 207:u
7306 +è¡ F 208:u
7307 +è¢ F 209:u
7308 +è£ F 210:u
7309 +è¤ F 211:u
7310 +è¥ F 212:u
7311 +è¦ F 213:u
7312 +è§ F 214:u
7313 +è¨ F 215:u
7314 +è© F 216:u
7315 +èª F 217:u
7316 +è« F 218:u
7317 +è¬ F 219:u
7318 +è­ F 220:u
7319 +è® F 221:u
7320 +è¯ F 222:u
7321 +è° F 223:u
7322 +è± F 224:u
7323 +è² F 225:u
7324 +è³ F 226:u
7325 +è´ F 227:u
7326 +èµ F 228:u
7327 +è¶ F 229:u
7328 +è· F 230:u
7329 +è¸ F 231:u
7330 +è¹ F 232:u
7331 +èº F 233:u
7332 +è» F 234:u
7333 +è¼ F 235:u
7334 +è½ F 236:u
7335 +è¾ F 237:u
7336 +è¿ F 238:u
7337 +èÀ F 239:u
7338 +èÁ F 240:u
7339 +è F 241:u
7340 +èà F 242:u
7341 +èÄ F 243:u
7342 +èÅ F 244:u
7343 +èÆ F 245:u
7344 +èÇ F 246:u
7345 +èÈ F 247:u
7346 +èÉ F 248:u
7347 +èÊ F 249:u
7348 +èË F 250:u
7349 +èÌ F 251:u
7350 +èÍ F 252:u
7351 +èÎ F 253:u
7352 +èÏ F 254:u
7353 +èÐ F 255:u
7354 +èÑ F 0:v
7355 +èÒ F 1:v
7356 +èÓ F 2:v
7357 +èÔ F 3:v
7358 +èÕ F 4:v
7359 +èÖ F 5:v
7360 +è× F 6:v
7361 +èØ F 7:v
7362 +èÙ F 8:v
7363 +èÚ F 9:v
7364 +èÛ F 10:v
7365 +èÜ F 11:v
7366 +èÝ F 12:v
7367 +èÞ F 13:v
7368 +èß F 14:v
7369 +èà F 15:v
7370 +èá F 16:v
7371 +èâ F 17:v
7372 +èã F 18:v
7373 +èä F 19:v
7374 +èå F 20:v
7375 +èæ F 21:v
7376 +èç F 22:v
7377 +èè F 23:v
7378 +èé F 24:v
7379 +èê F 25:v
7380 +èë F 26:v
7381 +èì F 27:v
7382 +èí F 28:v
7383 +èî F 29:v
7384 +èï F 30:v
7385 +èð F 31:v
7386 +èñ F 32:v
7387 +èò F 33:v
7388 +èó F 34:v
7389 +èô F 35:v
7390 +èõ F 36:v
7391 +èö F 37:v
7392 +è÷ F 38:v
7393 +èø F 39:v
7394 +èù F 40:v
7395 +èú F 41:v
7396 +èû F 42:v
7397 +èü F 43:v
7398 +èý F 44:v
7399 +èþ F 45:v
7400 +é¡ F 46:v
7401 +é¢ F 47:v
7402 +é£ F 48:v
7403 +é¤ F 49:v
7404 +é¥ F 50:v
7405 +é¦ F 51:v
7406 +é§ F 52:v
7407 +é¨ F 53:v
7408 +é© F 54:v
7409 +éª F 55:v
7410 +é« F 56:v
7411 +é¬ F 57:v
7412 +é­ F 58:v
7413 +é® F 59:v
7414 +é¯ F 60:v
7415 +é° F 61:v
7416 +é± F 62:v
7417 +é² F 63:v
7418 +é³ F 64:v
7419 +é´ F 65:v
7420 +éµ F 66:v
7421 +é¶ F 67:v
7422 +é· F 68:v
7423 +é¸ F 69:v
7424 +é¹ F 70:v
7425 +éº F 71:v
7426 +é» F 72:v
7427 +é¼ F 73:v
7428 +é½ F 74:v
7429 +é¾ F 75:v
7430 +é¿ F 76:v
7431 +éÀ F 77:v
7432 +éÁ F 78:v
7433 +é F 79:v
7434 +éà F 80:v
7435 +éÄ F 81:v
7436 +éÅ F 82:v
7437 +éÆ F 83:v
7438 +éÇ F 84:v
7439 +éÈ F 85:v
7440 +éÉ F 86:v
7441 +éÊ F 87:v
7442 +éË F 88:v
7443 +éÌ F 89:v
7444 +éÍ F 90:v
7445 +éÎ F 91:v
7446 +éÏ F 92:v
7447 +éÐ F 93:v
7448 +éÑ F 94:v
7449 +éÒ F 95:v
7450 +éÓ F 96:v
7451 +éÔ F 97:v
7452 +éÕ F 98:v
7453 +éÖ F 99:v
7454 +é× F 100:v
7455 +éØ F 101:v
7456 +éÙ F 102:v
7457 +éÚ F 103:v
7458 +éÛ F 104:v
7459 +éÜ F 105:v
7460 +éÝ F 106:v
7461 +éÞ F 107:v
7462 +éß F 108:v
7463 +éà F 109:v
7464 +éá F 110:v
7465 +éâ F 111:v
7466 +éã F 112:v
7467 +éä F 113:v
7468 +éå F 114:v
7469 +éæ F 115:v
7470 +éç F 116:v
7471 +éè F 117:v
7472 +éé F 118:v
7473 +éê F 119:v
7474 +éë F 120:v
7475 +éì F 121:v
7476 +éí F 122:v
7477 +éî F 123:v
7478 +éï F 124:v
7479 +éð F 125:v
7480 +éñ F 126:v
7481 +éò F 127:v
7482 +éó F 128:v
7483 +éô F 129:v
7484 +éõ F 130:v
7485 +éö F 131:v
7486 +é÷ F 132:v
7487 +éø F 133:v
7488 +éù F 134:v
7489 +éú F 135:v
7490 +éû F 136:v
7491 +éü F 137:v
7492 +éý F 138:v
7493 +éþ F 139:v
7494 +ê¡ F 140:v
7495 +ê¢ F 141:v
7496 +ê£ F 142:v
7497 +ê¤ F 143:v
7498 +ê¥ F 144:v
7499 +ê¦ F 145:v
7500 +ê§ F 146:v
7501 +ê¨ F 147:v
7502 +ê© F 148:v
7503 +êª F 149:v
7504 +ê« F 150:v
7505 +ê¬ F 151:v
7506 +ê­ F 152:v
7507 +ê® F 153:v
7508 +ê¯ F 154:v
7509 +ê° F 155:v
7510 +ê± F 156:v
7511 +ê² F 157:v
7512 +ê³ F 158:v
7513 +ê´ F 159:v
7514 +êµ F 160:v
7515 +ê¶ F 161:v
7516 +ê· F 162:v
7517 +ê¸ F 163:v
7518 +ê¹ F 164:v
7519 +êº F 165:v
7520 +ê» F 166:v
7521 +ê¼ F 167:v
7522 +ê½ F 168:v
7523 +ê¾ F 169:v
7524 +ê¿ F 170:v
7525 +êÀ F 171:v
7526 +êÁ F 172:v
7527 +ê F 173:v
7528 +êà F 174:v
7529 +êÄ F 175:v
7530 +êÅ F 176:v
7531 +êÆ F 177:v
7532 +êÇ F 178:v
7533 +êÈ F 179:v
7534 +êÉ F 180:v
7535 +êÊ F 181:v
7536 +êË F 182:v
7537 +êÌ F 183:v
7538 +êÍ F 184:v
7539 +êÎ F 185:v
7540 +êÏ F 186:v
7541 +êÐ F 187:v
7542 +êÑ F 188:v
7543 +êÒ F 189:v
7544 +êÓ F 190:v
7545 +êÔ F 191:v
7546 +êÕ F 192:v
7547 +êÖ F 193:v
7548 +ê× F 194:v
7549 +êØ F 195:v
7550 +êÙ F 196:v
7551 +êÚ F 197:v
7552 +êÛ F 198:v
7553 +êÜ F 199:v
7554 +êÝ F 200:v
7555 +êÞ F 201:v
7556 +êß F 202:v
7557 +êà F 203:v
7558 +êá F 204:v
7559 +êâ F 205:v
7560 +êã F 206:v
7561 +êä F 207:v
7562 +êå F 208:v
7563 +êæ F 209:v
7564 +êç F 210:v
7565 +êè F 211:v
7566 +êé F 212:v
7567 +êê F 213:v
7568 +êë F 214:v
7569 +êì F 215:v
7570 +êí F 216:v
7571 +êî F 217:v
7572 +êï F 218:v
7573 +êð F 219:v
7574 +êñ F 220:v
7575 +êò F 221:v
7576 +êó F 222:v
7577 +êô F 223:v
7578 +êõ F 224:v
7579 +êö F 225:v
7580 +ê÷ F 226:v
7581 +êø F 227:v
7582 +êù F 228:v
7583 +êú F 229:v
7584 +êû F 230:v
7585 +êü F 231:v
7586 +êý F 232:v
7587 +êþ F 233:v
7588 +ë¡ F 234:v
7589 +ë¢ F 235:v
7590 +ë£ F 236:v
7591 +ë¤ F 237:v
7592 +ë¥ F 238:v
7593 +ë¦ F 239:v
7594 +ë§ F 240:v
7595 +ë¨ F 241:v
7596 +ë© F 242:v
7597 +ëª F 243:v
7598 +ë« F 244:v
7599 +ë¬ F 245:v
7600 +ë­ F 246:v
7601 +ë® F 247:v
7602 +ë¯ F 248:v
7603 +ë° F 249:v
7604 +ë± F 250:v
7605 +ë² F 251:v
7606 +ë³ F 252:v
7607 +ë´ F 253:v
7608 +ëµ F 254:v
7609 +ë¶ F 255:v
7610 +ë· F 0:w
7611 +ë¸ F 1:w
7612 +ë¹ F 2:w
7613 +ëº F 3:w
7614 +ë» F 4:w
7615 +ë¼ F 5:w
7616 +ë½ F 6:w
7617 +ë¾ F 7:w
7618 +ë¿ F 8:w
7619 +ëÀ F 9:w
7620 +ëÁ F 10:w
7621 +ë F 11:w
7622 +ëà F 12:w
7623 +ëÄ F 13:w
7624 +ëÅ F 14:w
7625 +ëÆ F 15:w
7626 +ëÇ F 16:w
7627 +ëÈ F 17:w
7628 +ëÉ F 18:w
7629 +ëÊ F 19:w
7630 +ëË F 20:w
7631 +ëÌ F 21:w
7632 +ëÍ F 22:w
7633 +ëÎ F 23:w
7634 +ëÏ F 24:w
7635 +ëÐ F 25:w
7636 +ëÑ F 26:w
7637 +ëÒ F 27:w
7638 +ëÓ F 28:w
7639 +ëÔ F 29:w
7640 +ëÕ F 30:w
7641 +ëÖ F 31:w
7642 +ë× F 32:w
7643 +ëØ F 33:w
7644 +ëÙ F 34:w
7645 +ëÚ F 35:w
7646 +ëÛ F 36:w
7647 +ëÜ F 37:w
7648 +ëÝ F 38:w
7649 +ëÞ F 39:w
7650 +ëß F 40:w
7651 +ëà F 41:w
7652 +ëá F 42:w
7653 +ëâ F 43:w
7654 +ëã F 44:w
7655 +ëä F 45:w
7656 +ëå F 46:w
7657 +ëæ F 47:w
7658 +ëç F 48:w
7659 +ëè F 49:w
7660 +ëé F 50:w
7661 +ëê F 51:w
7662 +ëë F 52:w
7663 +ëì F 53:w
7664 +ëí F 54:w
7665 +ëî F 55:w
7666 +ëï F 56:w
7667 +ëð F 57:w
7668 +ëñ F 58:w
7669 +ëò F 59:w
7670 +ëó F 60:w
7671 +ëô F 61:w
7672 +ëõ F 62:w
7673 +ëö F 63:w
7674 +ë÷ F 64:w
7675 +ëø F 65:w
7676 +ëù F 66:w
7677 +ëú F 67:w
7678 +ëû F 68:w
7679 +ëü F 69:w
7680 +ëý F 70:w
7681 +ëþ F 71:w
7682 +ì¡ F 72:w
7683 +ì¢ F 73:w
7684 +ì£ F 74:w
7685 +ì¤ F 75:w
7686 +ì¥ F 76:w
7687 +ì¦ F 77:w
7688 +ì§ F 78:w
7689 +ì¨ F 79:w
7690 +ì© F 80:w
7691 +ìª F 81:w
7692 +ì« F 82:w
7693 +ì¬ F 83:w
7694 +ì­ F 84:w
7695 +ì® F 85:w
7696 +ì¯ F 86:w
7697 +ì° F 87:w
7698 +ì± F 88:w
7699 +ì² F 89:w
7700 +ì³ F 90:w
7701 +ì´ F 91:w
7702 +ìµ F 92:w
7703 +ì¶ F 93:w
7704 +ì· F 94:w
7705 +ì¸ F 95:w
7706 +ì¹ F 96:w
7707 +ìº F 97:w
7708 +ì» F 98:w
7709 +ì¼ F 99:w
7710 +ì½ F 100:w
7711 +ì¾ F 101:w
7712 +ì¿ F 102:w
7713 +ìÀ F 103:w
7714 +ìÁ F 104:w
7715 +ì F 105:w
7716 +ìà F 106:w
7717 +ìÄ F 107:w
7718 +ìÅ F 108:w
7719 +ìÆ F 109:w
7720 +ìÇ F 110:w
7721 +ìÈ F 111:w
7722 +ìÉ F 112:w
7723 +ìÊ F 113:w
7724 +ìË F 114:w
7725 +ìÌ F 115:w
7726 +ìÍ F 116:w
7727 +ìÎ F 117:w
7728 +ìÏ F 118:w
7729 +ìÐ F 119:w
7730 +ìÑ F 120:w
7731 +ìÒ F 121:w
7732 +ìÓ F 122:w
7733 +ìÔ F 123:w
7734 +ìÕ F 124:w
7735 +ìÖ F 125:w
7736 +ì× F 126:w
7737 +ìØ F 127:w
7738 +ìÙ F 128:w
7739 +ìÚ F 129:w
7740 +ìÛ F 130:w
7741 +ìÜ F 131:w
7742 +ìÝ F 132:w
7743 +ìÞ F 133:w
7744 +ìß F 134:w
7745 +ìà F 135:w
7746 +ìá F 136:w
7747 +ìâ F 137:w
7748 +ìã F 138:w
7749 +ìä F 139:w
7750 +ìå F 140:w
7751 +ìæ F 141:w
7752 +ìç F 142:w
7753 +ìè F 143:w
7754 +ìé F 144:w
7755 +ìê F 145:w
7756 +ìë F 146:w
7757 +ìì F 147:w
7758 +ìí F 148:w
7759 +ìî F 149:w
7760 +ìï F 150:w
7761 +ìð F 151:w
7762 +ìñ F 152:w
7763 +ìò F 153:w
7764 +ìó F 154:w
7765 +ìô F 155:w
7766 +ìõ F 156:w
7767 +ìö F 157:w
7768 +ì÷ F 158:w
7769 +ìø F 159:w
7770 +ìù F 160:w
7771 +ìú F 161:w
7772 +ìû F 162:w
7773 +ìü F 163:w
7774 +ìý F 164:w
7775 +ìþ F 165:w
7776 +í¡ F 166:w
7777 +í¢ F 167:w
7778 +í£ F 168:w
7779 +í¤ F 169:w
7780 +í¥ F 170:w
7781 +í¦ F 171:w
7782 +í§ F 172:w
7783 +í¨ F 173:w
7784 +í© F 174:w
7785 +íª F 175:w
7786 +í« F 176:w
7787 +í¬ F 177:w
7788 +í­ F 178:w
7789 +í® F 179:w
7790 +í¯ F 180:w
7791 +í° F 181:w
7792 +í± F 182:w
7793 +í² F 183:w
7794 +í³ F 184:w
7795 +í´ F 185:w
7796 +íµ F 186:w
7797 +í¶ F 187:w
7798 +í· F 188:w
7799 +í¸ F 189:w
7800 +í¹ F 190:w
7801 +íº F 191:w
7802 +í» F 192:w
7803 +í¼ F 193:w
7804 +í½ F 194:w
7805 +í¾ F 195:w
7806 +í¿ F 196:w
7807 +íÀ F 197:w
7808 +íÁ F 198:w
7809 +í F 199:w
7810 +íà F 200:w
7811 +íÄ F 201:w
7812 +íÅ F 202:w
7813 +íÆ F 203:w
7814 +íÇ F 204:w
7815 +íÈ F 205:w
7816 +íÉ F 206:w
7817 +íÊ F 207:w
7818 +íË F 208:w
7819 +íÌ F 209:w
7820 +íÍ F 210:w
7821 +íÎ F 211:w
7822 +íÏ F 212:w
7823 +íÐ F 213:w
7824 +íÑ F 214:w
7825 +íÒ F 215:w
7826 +íÓ F 216:w
7827 +íÔ F 217:w
7828 +íÕ F 218:w
7829 +íÖ F 219:w
7830 +í× F 220:w
7831 +íØ F 221:w
7832 +íÙ F 222:w
7833 +íÚ F 223:w
7834 +íÛ F 224:w
7835 +íÜ F 225:w
7836 +íÝ F 226:w
7837 +íÞ F 227:w
7838 +íß F 228:w
7839 +íà F 229:w
7840 +íá F 230:w
7841 +íâ F 231:w
7842 +íã F 232:w
7843 +íä F 233:w
7844 +íå F 234:w
7845 +íæ F 235:w
7846 +íç F 236:w
7847 +íè F 237:w
7848 +íé F 238:w
7849 +íê F 239:w
7850 +íë F 240:w
7851 +íì F 241:w
7852 +íí F 242:w
7853 +íî F 243:w
7854 +íï F 244:w
7855 +íð F 245:w
7856 +íñ F 246:w
7857 +íò F 247:w
7858 +íó F 248:w
7859 +íô F 249:w
7860 +íõ F 250:w
7861 +íö F 251:w
7862 +í÷ F 252:w
7863 +íø F 253:w
7864 +íù F 254:w
7865 +íú F 255:w
7866 +íû F 0:x
7867 +íü F 1:x
7868 +íý F 2:x
7869 +íþ F 3:x
7870 +î¡ F 4:x
7871 +î¢ F 5:x
7872 +î£ F 6:x
7873 +î¤ F 7:x
7874 +î¥ F 8:x
7875 +î¦ F 9:x
7876 +î§ F 10:x
7877 +î¨ F 11:x
7878 +î© F 12:x
7879 +îª F 13:x
7880 +î« F 14:x
7881 +î¬ F 15:x
7882 +î­ F 16:x
7883 +î® F 17:x
7884 +î¯ F 18:x
7885 +î° F 19:x
7886 +î± F 20:x
7887 +î² F 21:x
7888 +î³ F 22:x
7889 +î´ F 23:x
7890 +îµ F 24:x
7891 +î¶ F 25:x
7892 +î· F 26:x
7893 +î¸ F 27:x
7894 +î¹ F 28:x
7895 +îº F 29:x
7896 +î» F 30:x
7897 +î¼ F 31:x
7898 +î½ F 32:x
7899 +î¾ F 33:x
7900 +î¿ F 34:x
7901 +îÀ F 35:x
7902 +îÁ F 36:x
7903 +î F 37:x
7904 +îà F 38:x
7905 +îÄ F 39:x
7906 +îÅ F 40:x
7907 +îÆ F 41:x
7908 +îÇ F 42:x
7909 +îÈ F 43:x
7910 +îÉ F 44:x
7911 +îÊ F 45:x
7912 +îË F 46:x
7913 +îÌ F 47:x
7914 +îÍ F 48:x
7915 +îÎ F 49:x
7916 +îÏ F 50:x
7917 +îÐ F 51:x
7918 +îÑ F 52:x
7919 +îÒ F 53:x
7920 +îÓ F 54:x
7921 +îÔ F 55:x
7922 +îÕ F 56:x
7923 +îÖ F 57:x
7924 +î× F 58:x
7925 +îØ F 59:x
7926 +îÙ F 60:x
7927 +îÚ F 61:x
7928 +îÛ F 62:x
7929 +îÜ F 63:x
7930 +îÝ F 64:x
7931 +îÞ F 65:x
7932 +îß F 66:x
7933 +îà F 67:x
7934 +îá F 68:x
7935 +îâ F 69:x
7936 +îã F 70:x
7937 +îä F 71:x
7938 +îå F 72:x
7939 +îæ F 73:x
7940 +îç F 74:x
7941 +îè F 75:x
7942 +îé F 76:x
7943 +îê F 77:x
7944 +îë F 78:x
7945 +îì F 79:x
7946 +îí F 80:x
7947 +îî F 81:x
7948 +îï F 82:x
7949 +îð F 83:x
7950 +îñ F 84:x
7951 +îò F 85:x
7952 +îó F 86:x
7953 +îô F 87:x
7954 +îõ F 88:x
7955 +îö F 89:x
7956 +î÷ F 90:x
7957 +îø F 91:x
7958 +îù F 92:x
7959 +îú F 93:x
7960 +îû F 94:x
7961 +îü F 95:x
7962 +îý F 96:x
7963 +îþ F 97:x
7964 +ï¡ F 98:x
7965 +ï¢ F 99:x
7966 +ï£ F 100:x
7967 +ï¤ F 101:x
7968 +ï¥ F 102:x
7969 +ï¦ F 103:x
7970 +ï§ F 104:x
7971 +ï¨ F 105:x
7972 +ï© F 106:x
7973 +ïª F 107:x
7974 +ï« F 108:x
7975 +ï¬ F 109:x
7976 +ï­ F 110:x
7977 +ï® F 111:x
7978 +ï¯ F 112:x
7979 +ï° F 113:x
7980 +ï± F 114:x
7981 +ï² F 115:x
7982 +ï³ F 116:x
7983 +ï´ F 117:x
7984 +ïµ F 118:x
7985 +ï¶ F 119:x
7986 +ï· F 120:x
7987 +ï¸ F 121:x
7988 +ï¹ F 122:x
7989 +ïº F 123:x
7990 +ï» F 124:x
7991 +ï¼ F 125:x
7992 +ï½ F 126:x
7993 +ï¾ F 127:x
7994 +ï¿ F 128:x
7995 +ïÀ F 129:x
7996 +ïÁ F 130:x
7997 +ï F 131:x
7998 +ïà F 132:x
7999 +ïÄ F 133:x
8000 +ïÅ F 134:x
8001 +ïÆ F 135:x
8002 +ïÇ F 136:x
8003 +ïÈ F 137:x
8004 +ïÉ F 138:x
8005 +ïÊ F 139:x
8006 +ïË F 140:x
8007 +ïÌ F 141:x
8008 +ïÍ F 142:x
8009 +ïÎ F 143:x
8010 +ïÏ F 144:x
8011 +ïÐ F 145:x
8012 +ïÑ F 146:x
8013 +ïÒ F 147:x
8014 +ïÓ F 148:x
8015 +ïÔ F 149:x
8016 +ïÕ F 150:x
8017 +ïÖ F 151:x
8018 +ï× F 152:x
8019 +ïØ F 153:x
8020 +ïÙ F 154:x
8021 +ïÚ F 155:x
8022 +ïÛ F 156:x
8023 +ïÜ F 157:x
8024 +ïÝ F 158:x
8025 +ïÞ F 159:x
8026 +ïß F 160:x
8027 +ïà F 161:x
8028 +ïá F 162:x
8029 +ïâ F 163:x
8030 +ïã F 164:x
8031 +ïä F 165:x
8032 +ïå F 166:x
8033 +ïæ F 167:x
8034 +ïç F 168:x
8035 +ïè F 169:x
8036 +ïé F 170:x
8037 +ïê F 171:x
8038 +ïë F 172:x
8039 +ïì F 173:x
8040 +ïí F 174:x
8041 +ïî F 175:x
8042 +ïï F 176:x
8043 +ïð F 177:x
8044 +ïñ F 178:x
8045 +ïò F 179:x
8046 +ïó F 180:x
8047 +ïô F 181:x
8048 +ïõ F 182:x
8049 +ïö F 183:x
8050 +ï÷ F 184:x
8051 +ïø F 185:x
8052 +ïù F 186:x
8053 +ïú F 187:x
8054 +ïû F 188:x
8055 +ïü F 189:x
8056 +ïý F 190:x
8057 +ïþ F 191:x
8058 +ð¡ F 192:x
8059 +ð¢ F 193:x
8060 +ð£ F 194:x
8061 +ð¤ F 195:x
8062 +ð¥ F 196:x
8063 +ð¦ F 197:x
8064 +ð§ F 198:x
8065 +ð¨ F 199:x
8066 +ð© F 200:x
8067 +ðª F 201:x
8068 +ð« F 202:x
8069 +ð¬ F 203:x
8070 +ð­ F 204:x
8071 +ð® F 205:x
8072 +ð¯ F 206:x
8073 +ð° F 207:x
8074 +ð± F 208:x
8075 +ð² F 209:x
8076 +ð³ F 210:x
8077 +ð´ F 211:x
8078 +ðµ F 212:x
8079 +ð¶ F 213:x
8080 +ð· F 214:x
8081 +ð¸ F 215:x
8082 +ð¹ F 216:x
8083 +ðº F 217:x
8084 +ð» F 218:x
8085 +ð¼ F 219:x
8086 +ð½ F 220:x
8087 +ð¾ F 221:x
8088 +ð¿ F 222:x
8089 +ðÀ F 223:x
8090 +ðÁ F 224:x
8091 +ð F 225:x
8092 +ðà F 226:x
8093 +ðÄ F 227:x
8094 +ðÅ F 228:x
8095 +ðÆ F 229:x
8096 +ðÇ F 230:x
8097 +ðÈ F 231:x
8098 +ðÉ F 232:x
8099 +ðÊ F 233:x
8100 +ðË F 234:x
8101 +ðÌ F 235:x
8102 +ðÍ F 236:x
8103 +ðÎ F 237:x
8104 +ðÏ F 238:x
8105 +ðÐ F 239:x
8106 +ðÑ F 240:x
8107 +ðÒ F 241:x
8108 +ðÓ F 242:x
8109 +ðÔ F 243:x
8110 +ðÕ F 244:x
8111 +ðÖ F 245:x
8112 +ð× F 246:x
8113 +ðØ F 247:x
8114 +ðÙ F 248:x
8115 +ðÚ F 249:x
8116 +ðÛ F 250:x
8117 +ðÜ F 251:x
8118 +ðÝ F 252:x
8119 +ðÞ F 253:x
8120 +ðß F 254:x
8121 +ðà F 255:x
8122 +ðá F 0:y
8123 +ðâ F 1:y
8124 +ðã F 2:y
8125 +ðä F 3:y
8126 +ðå F 4:y
8127 +ðæ F 5:y
8128 +ðç F 6:y
8129 +ðè F 7:y
8130 +ðé F 8:y
8131 +ðê F 9:y
8132 +ðë F 10:y
8133 +ðì F 11:y
8134 +ðí F 12:y
8135 +ðî F 13:y
8136 +ðï F 14:y
8137 +ðð F 15:y
8138 +ðñ F 16:y
8139 +ðò F 17:y
8140 +ðó F 18:y
8141 +ðô F 19:y
8142 +ðõ F 20:y
8143 +ðö F 21:y
8144 +ð÷ F 22:y
8145 +ðø F 23:y
8146 +ðù F 24:y
8147 +ðú F 25:y
8148 +ðû F 26:y
8149 +ðü F 27:y
8150 +ðý F 28:y
8151 +ðþ F 29:y
8152 +ñ¡ F 30:y
8153 +ñ¢ F 31:y
8154 +ñ£ F 32:y
8155 +ñ¤ F 33:y
8156 +ñ¥ F 34:y
8157 +ñ¦ F 35:y
8158 +ñ§ F 36:y
8159 +ñ¨ F 37:y
8160 +ñ© F 38:y
8161 +ñª F 39:y
8162 +ñ« F 40:y
8163 +ñ¬ F 41:y
8164 +ñ­ F 42:y
8165 +ñ® F 43:y
8166 +ñ¯ F 44:y
8167 +ñ° F 45:y
8168 +ñ± F 46:y
8169 +ñ² F 47:y
8170 +ñ³ F 48:y
8171 +ñ´ F 49:y
8172 +ñµ F 50:y
8173 +ñ¶ F 51:y
8174 +ñ· F 52:y
8175 +ñ¸ F 53:y
8176 +ñ¹ F 54:y
8177 +ñº F 55:y
8178 +ñ» F 56:y
8179 +ñ¼ F 57:y
8180 +ñ½ F 58:y
8181 +ñ¾ F 59:y
8182 +ñ¿ F 60:y
8183 +ñÀ F 61:y
8184 +ñÁ F 62:y
8185 +ñ F 63:y
8186 +ñà F 64:y
8187 +ñÄ F 65:y
8188 +ñÅ F 66:y
8189 +ñÆ F 67:y
8190 +ñÇ F 68:y
8191 +ñÈ F 69:y
8192 +ñÉ F 70:y
8193 +ñÊ F 71:y
8194 +ñË F 72:y
8195 +ñÌ F 73:y
8196 +ñÍ F 74:y
8197 +ñÎ F 75:y
8198 +ñÏ F 76:y
8199 +ñÐ F 77:y
8200 +ñÑ F 78:y
8201 +ñÒ F 79:y
8202 +ñÓ F 80:y
8203 +ñÔ F 81:y
8204 +ñÕ F 82:y
8205 +ñÖ F 83:y
8206 +ñ× F 84:y
8207 +ñØ F 85:y
8208 +ñÙ F 86:y
8209 +ñÚ F 87:y
8210 +ñÛ F 88:y
8211 +ñÜ F 89:y
8212 +ñÝ F 90:y
8213 +ñÞ F 91:y
8214 +ñß F 92:y
8215 +ñà F 93:y
8216 +ñá F 94:y
8217 +ñâ F 95:y
8218 +ñã F 96:y
8219 +ñä F 97:y
8220 +ñå F 98:y
8221 +ñæ F 99:y
8222 +ñç F 100:y
8223 +ñè F 101:y
8224 +ñé F 102:y
8225 +ñê F 103:y
8226 +ñë F 104:y
8227 +ñì F 105:y
8228 +ñí F 106:y
8229 +ñî F 107:y
8230 +ñï F 108:y
8231 +ñð F 109:y
8232 +ññ F 110:y
8233 +ñò F 111:y
8234 +ñó F 112:y
8235 +ñô F 113:y
8236 +ñõ F 114:y
8237 +ñö F 115:y
8238 +ñ÷ F 116:y
8239 +ñø F 117:y
8240 +ñù F 118:y
8241 +ñú F 119:y
8242 +ñû F 120:y
8243 +ñü F 121:y
8244 +ñý F 122:y
8245 +ñþ F 123:y
8246 +ò¡ F 124:y
8247 +ò¢ F 125:y
8248 +ò£ F 126:y
8249 +ò¤ F 127:y
8250 +ò¥ F 128:y
8251 +ò¦ F 129:y
8252 +ò§ F 130:y
8253 +ò¨ F 131:y
8254 +ò© F 132:y
8255 +òª F 133:y
8256 +ò« F 134:y
8257 +ò¬ F 135:y
8258 +ò­ F 136:y
8259 +ò® F 137:y
8260 +ò¯ F 138:y
8261 +ò° F 139:y
8262 +ò± F 140:y
8263 +ò² F 141:y
8264 +ò³ F 142:y
8265 +ò´ F 143:y
8266 +òµ F 144:y
8267 +ò¶ F 145:y
8268 +ò· F 146:y
8269 +ò¸ F 147:y
8270 +ò¹ F 148:y
8271 +òº F 149:y
8272 +ò» F 150:y
8273 +ò¼ F 151:y
8274 +ò½ F 152:y
8275 +ò¾ F 153:y
8276 +ò¿ F 154:y
8277 +òÀ F 155:y
8278 +òÁ F 156:y
8279 +òÂ F 157:y
8280 +òÃ F 158:y
8281 +òÄ F 159:y
8282 +òÅ F 160:y
8283 +òÆ F 161:y
8284 +òÇ F 162:y
8285 +òÈ F 163:y
8286 +òÉ F 164:y
8287 +òÊ F 165:y
8288 +òË F 166:y
8289 +òÌ F 167:y
8290 +òÍ F 168:y
8291 +òÎ F 169:y
8292 +òÏ F 170:y
8293 +òÐ F 171:y
8294 +òÑ F 172:y
8295 +òÒ F 173:y
8296 +òÓ F 174:y
8297 +òÔ F 175:y
8298 +òÕ F 176:y
8299 +òÖ F 177:y
8300 +ò× F 178:y
8301 +òØ F 179:y
8302 +òÙ F 180:y
8303 +òÚ F 181:y
8304 +òÛ F 182:y
8305 +òÜ F 183:y
8306 +òÝ F 184:y
8307 +òÞ F 185:y
8308 +òß F 186:y
8309 +òà F 187:y
8310 +òá F 188:y
8311 +òâ F 189:y
8312 +òã F 190:y
8313 +òä F 191:y
8314 +òå F 192:y
8315 +òæ F 193:y
8316 +òç F 194:y
8317 +òè F 195:y
8318 +òé F 196:y
8319 +òê F 197:y
8320 +òë F 198:y
8321 +òì F 199:y
8322 +òí F 200:y
8323 +òî F 201:y
8324 +òï F 202:y
8325 +òð F 203:y
8326 +òñ F 204:y
8327 +òò F 205:y
8328 +òó F 206:y
8329 +òô F 207:y
8330 +òõ F 208:y
8331 +òö F 209:y
8332 +ò÷ F 210:y
8333 +òø F 211:y
8334 +òù F 212:y
8335 +òú F 213:y
8336 +òû F 214:y
8337 +òü F 215:y
8338 +òý F 216:y
8339 +òþ F 217:y
8340 +ó¡ F 218:y
8341 +ó¢ F 219:y
8342 +ó£ F 220:y
8343 +ó¤ F 221:y
8344 +ó¥ F 222:y
8345 +ó¦ F 223:y
8346 +ó§ F 224:y
8347 +ó¨ F 225:y
8348 +ó© F 226:y
8349 +óª F 227:y
8350 +ó« F 228:y
8351 +ó¬ F 229:y
8352 +ó­ F 230:y
8353 +ó® F 231:y
8354 +ó¯ F 232:y
8355 +ó° F 233:y
8356 +ó± F 234:y
8357 +ó² F 235:y
8358 +ó³ F 236:y
8359 +ó´ F 237:y
8360 +óµ F 238:y
8361 +ó¶ F 239:y
8362 +ó· F 240:y
8363 +ó¸ F 241:y
8364 +ó¹ F 242:y
8365 +óº F 243:y
8366 +ó» F 244:y
8367 +ó¼ F 245:y
8368 +ó½ F 246:y
8369 +ó¾ F 247:y
8370 +ó¿ F 248:y
8371 +óÀ F 249:y
8372 +óÁ F 250:y
8373 +óÂ F 251:y
8374 +óÃ F 252:y
8375 +óÄ F 253:y
8376 +óÅ F 254:y
8377 +óÆ F 255:y
8378 +óÇ F 0:z
8379 +óÈ F 1:z
8380 +óÉ F 2:z
8381 +óÊ F 3:z
8382 +óË F 4:z
8383 +óÌ F 5:z
8384 +óÍ F 6:z
8385 +óÎ F 7:z
8386 +óÏ F 8:z
8387 +óÐ F 9:z
8388 +óÑ F 10:z
8389 +óÒ F 11:z
8390 +óÓ F 12:z
8391 +óÔ F 13:z
8392 +óÕ F 14:z
8393 +óÖ F 15:z
8394 +ó× F 16:z
8395 +óØ F 17:z
8396 +óÙ F 18:z
8397 +óÚ F 19:z
8398 +óÛ F 20:z
8399 +óÜ F 21:z
8400 +óÝ F 22:z
8401 +óÞ F 23:z
8402 +óß F 24:z
8403 +óà F 25:z
8404 +óá F 26:z
8405 +óâ F 27:z
8406 +óã F 28:z
8407 +óä F 29:z
8408 +óå F 30:z
8409 +óæ F 31:z
8410 +óç F 32:z
8411 +óè F 33:z
8412 +óé F 34:z
8413 +óê F 35:z
8414 +óë F 36:z
8415 +óì F 37:z
8416 +óí F 38:z
8417 +óî F 39:z
8418 +óï F 40:z
8419 +óð F 41:z
8420 +óñ F 42:z
8421 +óò F 43:z
8422 +óó F 44:z
8423 +óô F 45:z
8424 +óõ F 46:z
8425 +óö F 47:z
8426 +ó÷ F 48:z
8427 +óø F 49:z
8428 +óù F 50:z
8429 +óú F 51:z
8430 +óû F 52:z
8431 +óü F 53:z
8432 +óý F 54:z
8433 +óþ F 55:z
8434 +ô¡ F 56:z
8435 +ô¢ F 57:z
8436 +ô£ F 58:z
8437 +ô¤ F 59:z
8438 diff -Naur groff-1.18.1.4.orig/font/devdvi/Makefile.sub groff-1.18.1.4/font/devdvi/Makefile.sub
8439 --- groff-1.18.1.4.orig/font/devdvi/Makefile.sub 2002-02-27 02:23:12.000000000 +0000
8440 +++ groff-1.18.1.4/font/devdvi/Makefile.sub 2006-10-18 18:54:44.000000000 +0000
8441 @@ -3,15 +3,68 @@
8442 TR TI TB TBI CW CWI HR HI HB HBI \
8443 TREC TIEC TBEC TBIEC CWEC CWIEC HREC HIEC HBEC HBIEC \
8444 TRTC TITC TBTC TBITC CWTC CWITC HRTC HITC HBTC HBITC \
8445 - MI S EX SA SB \
8446 + MI S EX SA SB M G \
8447 generate/CompileFonts generate/Makefile \
8448 generate/msam.map generate/msbm.map \
8449 generate/texb.map generate/texex.map generate/texi.map generate/texmi.map \
8450 generate/texr.map generate/texsy.map generate/textt.map \
8451 generate/ec.map generate/tc.map
8452
8453 -CLEANADD=DESC
8454 +CLEANADD=DESC M G
8455
8456 DESC: DESC.in
8457 cat $(srcdir)/DESC.in >DESC
8458 test -z '$(DVIPRINT)' || echo print '$(DVIPRINT)' >>DESC
8459 +
8460 +M: M.proto-$(DVIFORMAT)
8461 + @echo Making $@
8462 + @-rm -f $@
8463 + cp M.proto-$(DVIFORMAT) M
8464 +# @if [ x$(DVIFORMAT) = xNTT ]; then \
8465 +# sed -e 's/ F / 959887,808326,151561 1 /' \
8466 +# -e 's/:0$$/:dmjsy10/' \
8467 +# -e 's/:1$$/:dmjroma10/' \
8468 +# -e 's/:2$$/:dmjhira10/' \
8469 +# -e 's/:3$$/:dmjkata10/' \
8470 +# -e 's/:4$$/:dmjgreek10/' \
8471 +# -e 's/:5$$/:dmjrussian10/' \
8472 +# -e 's/:6$$/:dmjkeisen10/' \
8473 +# -e 's/:a$$/:dmjka10/' \
8474 +# -e 's/:b$$/:dmjkb10/' \
8475 +# -e 's/:c$$/:dmjkc10/' \
8476 +# -e 's/:d$$/:dmjkd10/' \
8477 +# -e 's/:e$$/:dmjke10/' \
8478 +# -e 's/:f$$/:dmjkf10/' \
8479 +# -e 's/:g$$/:dmjkg10/' \
8480 +# -e 's/:h$$/:dmjkh10/' \
8481 +# -e 's/:i$$/:dmjki10/' \
8482 +# -e 's/:j$$/:dmjkj10/' \
8483 +# -e 's/:k$$/:dmjkk10/' \
8484 +# -e 's/:l$$/:dmjkl10/' \
8485 +# -e 's/:m$$/:dmjkm10/' \
8486 +# -e 's/:n$$/:dmjkn10/' \
8487 +# -e 's/:o$$/:dmjko10/' \
8488 +# -e 's/:p$$/:dmjkp10/' \
8489 +# -e 's/:q$$/:dmjkq10/' \
8490 +# -e 's/:r$$/:dmjkr10/' \
8491 +# -e 's/:s$$/:dmjks10/' \
8492 +# -e 's/:t$$/:dmjkt10/' \
8493 +# -e 's/:u$$/:dmjku10/' \
8494 +# -e 's/:v$$/:dmjkv10/' \
8495 +# -e 's/:w$$/:dmjkw10/' \
8496 +# -e 's/:x$$/:dmjkx10/' \
8497 +# -e 's/:y$$/:dmjky10/' \
8498 +# -e 's/:z$$/:dmjkz10/' \
8499 +# < M.proto-NTT > M ;\
8500 +# else \
8501 +# ../devnippon/createM -jis "1006514,815360,145600" 1 < M.proto-ASCII | \
8502 +# sed -f FixMetric.sed > M ;\
8503 +# fi
8504 +
8505 +G: M
8506 + @echo Making $@
8507 + @-rm -f $@
8508 + @sed -e 's/name M/name G/' \
8509 + -e 's/dmj/dgj/' \
8510 + -e 's/internalname min10/internalname goth10/' \
8511 + < M > G
8512 diff -Naur groff-1.18.1.4.orig/font/devhtml/DESC.proto groff-1.18.1.4/font/devhtml/DESC.proto
8513 --- groff-1.18.1.4.orig/font/devhtml/DESC.proto 2002-08-07 12:52:23.000000000 +0000
8514 +++ groff-1.18.1.4/font/devhtml/DESC.proto 2006-10-18 18:54:44.000000000 +0000
8515 @@ -3,7 +3,11 @@
8516 vert 40
8517 unitwidth 10
8518 sizes 6 8 10 12 14 16 18 0
8519 -fonts 9 R I B BI CR CI CB CBI S
8520 +fonts 11 R I B BI CR CI CB CBI S M G
8521 +fontset B G 2E00..9FFF
8522 +fontset - M 2E00..9FFF
8523 +fontset B G FF00..FFEF
8524 +fontset - M FF00..FFEF
8525 tcommand
8526 html
8527 postpro post-grohtml
8528 diff -Naur groff-1.18.1.4.orig/font/devhtml/M.proto groff-1.18.1.4/font/devhtml/M.proto
8529 --- groff-1.18.1.4.orig/font/devhtml/M.proto 1970-01-01 00:00:00.000000000 +0000
8530 +++ groff-1.18.1.4/font/devhtml/M.proto 2006-10-18 18:54:44.000000000 +0000
8531 @@ -0,0 +1,5 @@
8532 +name M
8533 +spacewidth 16
8534 +charset
8535 +u2E00..u9FFF 16,14,2 0
8536 +uFF00..uFFEF 16,14,2 0
8537 diff -Naur groff-1.18.1.4.orig/font/devhtml/Makefile.sub groff-1.18.1.4/font/devhtml/Makefile.sub
8538 --- groff-1.18.1.4.orig/font/devhtml/Makefile.sub 2002-08-07 12:52:23.000000000 +0000
8539 +++ groff-1.18.1.4/font/devhtml/Makefile.sub 2006-10-18 18:54:44.000000000 +0000
8540 @@ -1,8 +1,10 @@
8541 DEV=html
8542 PROTOFONTS=R I B BI CR CI CB CBI
8543 FONTS=$(PROTOFONTS) S
8544 -DEVFILES=$(FONTS) DESC
8545 -CLEANADD=$(FONTS) DESC
8546 +WFONTS=M G
8547 +ALLFONTS=$(FONTS) $(WFONTS)
8548 +DEVFILES=$(ALLFONTS) DESC
8549 +CLEANADD=$(ALLFONTS) DESC
8550
8551 RES=240
8552 CPI=10
8553 @@ -13,8 +15,8 @@
8554 @-rm -f $@
8555 @(charwidth=`expr $(RES) / $(CPI)` ; \
8556 sed -e "s/^name [A-Z]*$$/name $@/" \
8557 - -e "s/^\\([^ ]*\\) [0-9]+ /\\1 $$charwidth /" \
8558 - -e "s/^spacewidth [0-9]+$$/spacewidth $$charwidth/" \
8559 + -e "s/^\\([^ ]*\\) [0-9][0-9]* /\\1 $$charwidth /" \
8560 + -e "s/^spacewidth [0-9][0-9]*$$/spacewidth $$charwidth/" \
8561 -e "s/^internalname .*$$/internalname $@/" \
8562 -e "/^internalname/s/CR/4/" \
8563 -e "/^internalname/s/BI/3/" \
8564 @@ -29,6 +31,19 @@
8565 @sed -e "s/^res .*$$/res $(RES)/" \
8566 -e "s/^hor .*$$/hor `expr $(RES) / $(CPI)`/" \
8567 -e "s/^vert .*$$/vert `expr $(RES) / $(LPI)`/" \
8568 - -e "s/^fonts .*$$/fonts `set $(FONTS); echo $$#` $(FONTS)/" \
8569 + -e "s/^fonts .*$$/fonts `set $(ALLFONTS); echo $$#` $(ALLFONTS)/" \
8570 $(srcdir)/DESC.proto >$@
8571
8572 +M: M.proto
8573 + @echo Making M
8574 + @-rm -f M
8575 + @(wcharwidth=`expr $(RES) / $(CPI) \* 2`; \
8576 + spacewidth=`expr $(RES) / $(CPI)`; \
8577 + sed -e "s/^u\\([0-9A-F]*\\)..u\\([0-9A-F]*\\) [0-9][0-9]*/u\\1..u\\2 $$wcharwidth/" \
8578 + -e "s/^spacewidth [0-9][0-9]*$$/spacewidth $$spacewidth/" \
8579 + $(srcdir)/M.proto > $@)
8580 +
8581 +G: M
8582 + @echo Making G
8583 + @-rm -f G
8584 + @sed -e 's/name M/name G/' M > G
8585 diff -Naur groff-1.18.1.4.orig/font/devlbp/Makefile.sub groff-1.18.1.4/font/devlbp/Makefile.sub
8586 --- groff-1.18.1.4.orig/font/devlbp/Makefile.sub 2002-03-08 07:33:49.000000000 +0000
8587 +++ groff-1.18.1.4/font/devlbp/Makefile.sub 2006-10-18 18:54:44.000000000 +0000
8588 @@ -13,9 +13,9 @@
8589 -rm -f DESC
8590 cat $(srcdir)/DESC.in >>DESC
8591 if test "$(PAGE)" = A4; then \
8592 - echo "papersize a4" >>DESC; \
8593 + echo "papersize /etc/papersize a4" >>DESC; \
8594 else \
8595 - echo "papersize letter" >>DESC; \
8596 + echo "papersize /etc/papersize letter" >>DESC; \
8597 fi
8598 test -z '$(LBPPRINT)' || echo print '$(LBPPRINT)' >>DESC
8599
8600 diff -Naur groff-1.18.1.4.orig/font/devlj4/Makefile.sub groff-1.18.1.4/font/devlj4/Makefile.sub
8601 --- groff-1.18.1.4.orig/font/devlj4/Makefile.sub 2000-02-06 09:35:37.000000000 +0000
8602 +++ groff-1.18.1.4/font/devlj4/Makefile.sub 2006-10-18 18:54:44.000000000 +0000
8603 @@ -22,9 +22,9 @@
8604 echo "unitwidth `expr 7620000 / $(LJ4RES)`" >>DESC
8605 cat $(srcdir)/DESC.in >>DESC
8606 if test "$(PAGE)" = A4; then \
8607 - echo "papersize a4" >>DESC; \
8608 + echo "papersize /etc/papersize a4" >>DESC; \
8609 else \
8610 - echo "papersize letter" >>DESC; \
8611 + echo "papersize /etc/papersize letter" >>DESC; \
8612 fi
8613 test -z '$(LJ4PRINT)' || echo print '$(LJ4PRINT)' >>DESC
8614
8615 diff -Naur groff-1.18.1.4.orig/font/devnippon/DESC.proto groff-1.18.1.4/font/devnippon/DESC.proto
8616 --- groff-1.18.1.4.orig/font/devnippon/DESC.proto 1970-01-01 00:00:00.000000000 +0000
8617 +++ groff-1.18.1.4/font/devnippon/DESC.proto 2006-10-18 18:54:44.000000000 +0000
8618 @@ -0,0 +1,12 @@
8619 +res 240
8620 +hor 24
8621 +vert 40
8622 +unitwidth 10
8623 +sizes 10 0
8624 +fonts 6 R I B BI M G
8625 +fontset B G 2E00..9FFF
8626 +fontset - M 2E00..9FFF
8627 +fontset B G FF00..FFEF
8628 +fontset - M FF00..FFEF
8629 +tcommand
8630 +postpro grotty
8631 diff -Naur groff-1.18.1.4.orig/font/devnippon/M.proto groff-1.18.1.4/font/devnippon/M.proto
8632 --- groff-1.18.1.4.orig/font/devnippon/M.proto 1970-01-01 00:00:00.000000000 +0000
8633 +++ groff-1.18.1.4/font/devnippon/M.proto 2006-10-18 18:54:44.000000000 +0000
8634 @@ -0,0 +1,6 @@
8635 +name M
8636 +internalname 4
8637 +spacewidth 48
8638 +charset
8639 +u2E00..u9FFF 48 0
8640 +uFF00..uFFEF 48 0
8641 diff -Naur groff-1.18.1.4.orig/font/devnippon/Makefile.sub groff-1.18.1.4/font/devnippon/Makefile.sub
8642 --- groff-1.18.1.4.orig/font/devnippon/Makefile.sub 1970-01-01 00:00:00.000000000 +0000
8643 +++ groff-1.18.1.4/font/devnippon/Makefile.sub 2006-10-18 18:54:44.000000000 +0000
8644 @@ -0,0 +1,48 @@
8645 +DEV=nippon
8646 +FONTS=R I B BI
8647 +WFONTS=M G
8648 +ALLFONTS=$(FONTS) $(WFONTS)
8649 +DEVFILES=$(ALLFONTS) DESC
8650 +CLEANADD=$(ALLFONTS) DESC
8651 +
8652 +RES=240
8653 +CPI=10
8654 +LPI=6
8655 +
8656 +$(FONTS): R.proto
8657 + @echo Making $@
8658 + @-rm -f $@
8659 + @(charwidth=`expr $(RES) / $(CPI)` ; \
8660 + sed -e "s/^name [A-Z]*$$/name $@/" \
8661 + -e "s/^\\([^ ]*\\) [0-9][0-9]* /\\1 $$charwidth /" \
8662 + -e "s/^spacewidth [0-9][0-9]*$$/spacewidth $$charwidth/" \
8663 + -e "s/^internalname .*$$/internalname $@/" \
8664 + -e "/^internalname/s/BI/3/" \
8665 + -e "/^internalname/s/B/2/" \
8666 + -e "/^internalname/s/I/1/" \
8667 + -e "/^internalname .*[^ 0-9]/d" \
8668 + $(srcdir)/R.proto >$@)
8669 +
8670 +M: M.proto
8671 + @echo Making M
8672 + @-rm -f M
8673 + @(wcharwidth=`expr $(RES) / $(CPI) \* 2` ; \
8674 + spacewidth=`expr $(RES) / $(CPI)` ; \
8675 + sed -e "s/^spacewidth [0-9][0-9]*$$/spacewidth $$spacewidth/" \
8676 + -e "s/^u\\([0-9A-F]*\\)..u\\([0-9A-F]*\\) [0-9][0-9]*/u\\1..u\\2 $$wcharwidth/" \
8677 + $(srcdir)/M.proto > $@)
8678 +
8679 +G: M
8680 + @echo Making G
8681 + @-rm -f G
8682 + @sed -e 's/name M/name G/' \
8683 + -e 's/internalname 4/internalname 5/' M > G
8684 +
8685 +DESC: DESC.proto
8686 + @echo Making $@
8687 + @-rm -f $@
8688 + @sed -e "s/^res .*$$/res $(RES)/" \
8689 + -e "s/^hor .*$$/hor `expr $(RES) / $(CPI)`/" \
8690 + -e "s/^vert .*$$/vert `expr $(RES) / $(LPI)`/" \
8691 + -e "s/^fonts .*$$/fonts `set $(ALLFONTS); echo $$#` $(ALLFONTS)/" \
8692 + $(srcdir)/DESC.proto >$@
8693 diff -Naur groff-1.18.1.4.orig/font/devnippon/R.proto groff-1.18.1.4/font/devnippon/R.proto
8694 --- groff-1.18.1.4.orig/font/devnippon/R.proto 1970-01-01 00:00:00.000000000 +0000
8695 +++ groff-1.18.1.4/font/devnippon/R.proto 2006-10-18 18:54:44.000000000 +0000
8696 @@ -0,0 +1,167 @@
8697 +name R
8698 +internalname 0
8699 +spacewidth 24
8700 +charset
8701 +! 24 0 0041
8702 +" 24 0 0042
8703 +dq "
8704 +lq "
8705 +rq "
8706 +# 24 0 0043
8707 +sh "
8708 +$ 24 0 0044
8709 +Do "
8710 +% 24 0 0045
8711 +& 24 0 0046
8712 +' 24 0 0047
8713 +aa "
8714 +fm "
8715 +aq "
8716 +cq "
8717 +( 24 0 0050
8718 +) 24 0 0051
8719 +* 24 0 0052
8720 +** "
8721 ++ 24 0 0053
8722 +pl "
8723 +, 24 0 0054
8724 +\- 24 0 0055
8725 +hy "
8726 +- "
8727 +mi "
8728 +en "
8729 +. 24 0 0056
8730 +/ 24 0 0057
8731 +sl "
8732 +f/ "
8733 +0 24 0 0060
8734 +1 24 0 0061
8735 +2 24 0 0062
8736 +3 24 0 0063
8737 +4 24 0 0064
8738 +5 24 0 0065
8739 +6 24 0 0066
8740 +7 24 0 0067
8741 +8 24 0 0070
8742 +9 24 0 0071
8743 +: 24 0 0072
8744 +; 24 0 0073
8745 +< 24 0 0074
8746 +la "
8747 +fo "
8748 += 24 0 0075
8749 +eq "
8750 +> 24 0 0076
8751 +ra "
8752 +fc "
8753 +? 24 0 0077
8754 +@ 24 0 0100
8755 +at "
8756 +A 24 0 0101
8757 +*A "
8758 +B 24 0 0102
8759 +*B "
8760 +C 24 0 0103
8761 +D 24 0 0104
8762 +E 24 0 0105
8763 +*E "
8764 +F 24 0 0106
8765 +G 24 0 0107
8766 +H 24 0 0110
8767 +*Y "
8768 +I 24 0 0111
8769 +*I "
8770 +J 24 0 0112
8771 +K 24 0 0113
8772 +*K "
8773 +L 24 0 0114
8774 +M 24 0 0115
8775 +*M "
8776 +N 24 0 0116
8777 +*N "
8778 +O 24 0 0117
8779 +ci "
8780 +*O "
8781 +P 24 0 0120
8782 +*R "
8783 +Q 24 0 0121
8784 +R 24 0 0122
8785 +S 24 0 0123
8786 +T 24 0 0124
8787 +*T "
8788 +U 24 0 0125
8789 +V 24 0 0126
8790 +W 24 0 0127
8791 +X 24 0 0130
8792 +*X "
8793 +Y 24 0 0131
8794 +*U "
8795 +Z 24 0 0132
8796 +*Z "
8797 +[ 24 0 0133
8798 +lB "
8799 +\ 24 0 0134
8800 +rs "
8801 +] 24 0 0135
8802 +rB "
8803 +a^ 24 0 0136
8804 +^ "
8805 +ha "
8806 +_ 24 0 0137
8807 +ru "
8808 +ul "
8809 +` 24 0 0140
8810 +oq "
8811 +ga "
8812 +a 24 0 0141
8813 +b 24 0 0142
8814 +c 24 0 0143
8815 +d 24 0 0144
8816 +e 24 0 0145
8817 +f 24 0 0146
8818 +g 24 0 0147
8819 +h 24 0 0150
8820 +i 24 0 0151
8821 +.i "
8822 +j 24 0 0152
8823 +k 24 0 0153
8824 +l 24 0 0154
8825 +m 24 0 0155
8826 +n 24 0 0156
8827 +o 24 0 0157
8828 +*o "
8829 +p 24 0 0160
8830 +q 24 0 0161
8831 +r 24 0 0162
8832 +s 24 0 0163
8833 +t 24 0 0164
8834 +u 24 0 0165
8835 +v 24 0 0166
8836 +w 24 0 0167
8837 +x 24 0 0170
8838 +mu "
8839 +y 24 0 0171
8840 +z 24 0 0172
8841 +lC 24 0 0173
8842 +{ "
8843 +ba 24 0 0174
8844 +or "
8845 +bv "
8846 +br "
8847 +| "
8848 +lb "
8849 +lc "
8850 +lf "
8851 +lk "
8852 +lt "
8853 +rb "
8854 +rc "
8855 +rf "
8856 +rk "
8857 +rt "
8858 +rC 24 0 0175
8859 +} "
8860 +a~ 24 0 0176
8861 +~ "
8862 +ap "
8863 +ti "
8864 diff -Naur groff-1.18.1.4.orig/font/devps/DESC.in groff-1.18.1.4/font/devps/DESC.in
8865 --- groff-1.18.1.4.orig/font/devps/DESC.in 2000-02-06 09:35:57.000000000 +0000
8866 +++ groff-1.18.1.4/font/devps/DESC.in 2006-10-18 18:54:44.000000000 +0000
8867 @@ -1,11 +1,33 @@
8868 res 72000
8869 hor 1
8870 vert 1
8871 +lowerwchar 300
8872 +wcharkern 400
8873 sizescale 1000
8874 unitwidth 1000
8875 sizes 1000-10000000 0
8876 styles R I B BI
8877 family T
8878 -fonts 9 0 0 0 0 0 SS S ZD ZDR
8879 +fonts 11 0 0 0 0 0 SS S ZD ZDR M G
8880 +fontset B G 2E00..9FFF
8881 +fontset AB G 2E00..9FFF
8882 +fontset BMB G 2E00..9FFF
8883 +fontset CB G 2E00..9FFF
8884 +fontset HB G 2E00..9FFF
8885 +fontset HNB G 2E00..9FFF
8886 +fontset NB G 2E00..9FFF
8887 +fontset PB G 2E00..9FFF
8888 +fontset TB G 2E00..9FFF
8889 +fontset - M 2E00..9FFF
8890 +fontset B G FF00..FFEF
8891 +fontset AB G FF00..FFEF
8892 +fontset BMB G FF00..FFEF
8893 +fontset CB G FF00..FFEF
8894 +fontset HB G FF00..FFEF
8895 +fontset HNB G FF00..FFEF
8896 +fontset NB G FF00..FFEF
8897 +fontset PB G FF00..FFEF
8898 +fontset TB G FF00..FFEF
8899 +fontset - M FF00..FFEF
8900 tcommand
8901 postpro grops
8902 diff -Naur groff-1.18.1.4.orig/font/devps/M.proto groff-1.18.1.4/font/devps/M.proto
8903 --- groff-1.18.1.4.orig/font/devps/M.proto 1970-01-01 00:00:00.000000000 +0000
8904 +++ groff-1.18.1.4/font/devps/M.proto 2006-10-18 18:54:44.000000000 +0000
8905 @@ -0,0 +1,9 @@
8906 +name M
8907 +internalname Ryumin-Light-EUC-H
8908 +spacewidth 250
8909 +encodingname EUC-JP
8910 +charset
8911 +u2E00..u9FFF 1000 3
8912 +uFF00..uFF5F 1000 3
8913 +uFF60..uFF9F 500 3
8914 +uFFA0..uFFEF 1000 3
8915 diff -Naur groff-1.18.1.4.orig/font/devps/Makefile.sub groff-1.18.1.4/font/devps/Makefile.sub
8916 --- groff-1.18.1.4.orig/font/devps/Makefile.sub 2002-06-04 13:03:19.000000000 +0000
8917 +++ groff-1.18.1.4/font/devps/Makefile.sub 2006-10-18 18:54:44.000000000 +0000
8918 @@ -2,23 +2,23 @@
8919 DISTFILES=text.enc download \
8920 S ZD ZDR SS AB ABI AI AR BMB BMBI BMI BMR \
8921 CB CBI CI CR HB HBI HI HR HNB HNBI HNI HNR \
8922 - NB NBI NI NR PB PBI PI PR TB TBI TI TR ZCMI
8923 + NB NBI NI NR PB PBI PI PR TB TBI TI TR ZCMI M G
8924 PSFILES=prologue symbolsl.pfa zapfdr.pfa
8925 DEVGENFILES=generate/Makefile generate/afmname generate/dingbats.map \
8926 generate/dingbats.rmap generate/lgreekmap generate/symbol.sed \
8927 generate/symbolchars generate/symbolsl.afm generate/textmap
8928 DEVFILES=DESC $(PSFILES) $(DISTFILES) $(DEVGENFILES)
8929
8930 -CLEANADD=DESC $(PSFILES)
8931 +CLEANADD=DESC $(PSFILES) M G
8932
8933 DESC: DESC.in
8934 -rm -f DESC
8935 cat $(srcdir)/DESC.in >DESC
8936 echo broken $(BROKEN_SPOOLER_FLAGS) >>DESC
8937 if test "$(PAGE)" = A4; then \
8938 - echo "papersize a4" >>DESC; \
8939 + echo "papersize /etc/papersize a4" >>DESC; \
8940 else \
8941 - echo "papersize letter" >>DESC; \
8942 + echo "papersize /etc/papersize letter" >>DESC; \
8943 fi
8944 test -z '$(PSPRINT)' || echo print '$(PSPRINT)' >>DESC
8945
8946 @@ -33,3 +33,14 @@
8947 $(PSFILES):
8948 -rm -f $@
8949 sed -f $(srcdir)/psstrip.sed $? >$@
8950 +
8951 +M: M.proto
8952 + @echo Making M
8953 + @-rm -f M
8954 + @cp M.proto M
8955 +
8956 +G: M
8957 + @echo Making G
8958 + @-rm -f G
8959 + @sed -e 's/name M/name G/' \
8960 + -e 's/internalname Ryumin-Light-EUC-H/internalname GothicBBB-Medium-EUC-H/' M > G
8961 diff -Naur groff-1.18.1.4.orig/font/devutf8/DESC.proto groff-1.18.1.4/font/devutf8/DESC.proto
8962 --- groff-1.18.1.4.orig/font/devutf8/DESC.proto 2000-02-06 09:36:22.000000000 +0000
8963 +++ groff-1.18.1.4/font/devutf8/DESC.proto 2006-10-18 18:54:44.000000000 +0000
8964 @@ -3,6 +3,10 @@
8965 vert 40
8966 unitwidth 10
8967 sizes 10 0
8968 -fonts 4 R I B BI
8969 +fonts 6 R I B BI M G
8970 +fontset B G 2E00..9FFF
8971 +fontset B G FF00..FFEF
8972 +fontset - M 2E00..9FFF
8973 +fontset - M FF00..FFEF
8974 tcommand
8975 postpro grotty
8976 diff -Naur groff-1.18.1.4.orig/font/devutf8/M.proto groff-1.18.1.4/font/devutf8/M.proto
8977 --- groff-1.18.1.4.orig/font/devutf8/M.proto 1970-01-01 00:00:00.000000000 +0000
8978 +++ groff-1.18.1.4/font/devutf8/M.proto 2006-10-18 18:54:44.000000000 +0000
8979 @@ -0,0 +1,6 @@
8980 +name M
8981 +internalname 4
8982 +spacewidth 48
8983 +charset
8984 +u2E00..u9FFF 48 0
8985 +uFF00..uFFEF 48 0
8986 diff -Naur groff-1.18.1.4.orig/font/devutf8/Makefile.sub groff-1.18.1.4/font/devutf8/Makefile.sub
8987 --- groff-1.18.1.4.orig/font/devutf8/Makefile.sub 2000-02-06 09:36:22.000000000 +0000
8988 +++ groff-1.18.1.4/font/devutf8/Makefile.sub 2006-10-18 18:54:44.000000000 +0000
8989 @@ -1,7 +1,8 @@
8990 DEV=utf8
8991 FONTS=R I B BI
8992 -DEVFILES=$(FONTS) DESC
8993 -CLEANADD=$(FONTS) DESC
8994 +WFONTS=M G
8995 +DEVFILES=$(FONTS) $(WFONTS) DESC
8996 +CLEANADD=$(FONTS) $(WFONTS) DESC
8997
8998 RES=240
8999 CPI=10
9000 @@ -12,8 +13,8 @@
9001 @-rm -f $@
9002 @(charwidth=`expr $(RES) / $(CPI)` ; \
9003 sed -e "s/^name [A-Z]*$$/name $@/" \
9004 - -e "s/^\\([^ ]*\\) [0-9]+ /\\1 $$charwidth /" \
9005 - -e "s/^spacewidth [0-9]+$$/spacewidth $$charwidth/" \
9006 + -e "s/^\\([^ ]*\\) [0-9][0-9]* /\\1 $$charwidth /" \
9007 + -e "s/^spacewidth [0-9][0-9]*$$/spacewidth $$charwidth/" \
9008 -e "s/^internalname .*$$/internalname $@/" \
9009 -e "/^internalname/s/BI/3/" \
9010 -e "/^internalname/s/B/2/" \
9011 @@ -21,12 +22,27 @@
9012 -e "/^internalname .*[^ 0-9]/d" \
9013 $(srcdir)/R.proto >$@)
9014
9015 +M: M.proto
9016 + @echo Making M
9017 + @-rm -f M
9018 + (wcharwidth=`expr $(RES) / $(CPI) \* 2` ; \
9019 + spacewidth=`expr $(RES) / $(CPI)` ; \
9020 + sed -e "s/^spacewidth [0-9][0-9]*$$/spacewidth $$spacewidth/" \
9021 + -e "s/^u\\([0-9A-F]*\\)..u\\([0-9A-F]*\\) [0-9][0-9]*/u\\1..u\\2 $$wcharwidth/" \
9022 + $(srcdir)/M.proto > $@)
9023 +
9024 +G: M
9025 + @echo Making G
9026 + @-rm -f G
9027 + @sed -e 's/name M/name G/' \
9028 + -e 's/internalname 4/internalname 5/' M > G
9029 +
9030 DESC: DESC.proto
9031 @echo Making $@
9032 @-rm -f $@
9033 @sed -e "s/^res .*$$/res $(RES)/" \
9034 -e "s/^hor .*$$/hor `expr $(RES) / $(CPI)`/" \
9035 -e "s/^vert .*$$/vert `expr $(RES) / $(LPI)`/" \
9036 - -e "s/^fonts .*$$/fonts `set $(FONTS); echo $$#` $(FONTS)/" \
9037 + -e "s/^fonts .*$$/fonts `set $(FONTS) $(WFONTS); echo $$#` $(FONTS) $(WFONTS)/" \
9038 $(srcdir)/DESC.proto >$@
9039
9040 diff -Naur groff-1.18.1.4.orig/man/ditroff.man groff-1.18.1.4/man/ditroff.man
9041 --- groff-1.18.1.4.orig/man/ditroff.man 2002-02-19 16:28:30.000000000 +0000
9042 +++ groff-1.18.1.4/man/ditroff.man 2006-10-18 18:54:44.000000000 +0000
9043 @@ -18,6 +18,10 @@
9044 A copy of the Free Documentation License is included as a file called
9045 FDL in the main directory of the groff source package.
9046 ..
9047 +.ig
9048 +A copy of the GNU Free Documentation License is also available in this
9049 +Debian package as /usr/share/doc/groff/copyright.
9050 +..
9051 .
9052 .\" --------------------------------------------------------------------
9053 .\" Setup
9054 diff -Naur groff-1.18.1.4.orig/man/groff.man groff-1.18.1.4/man/groff.man
9055 --- groff-1.18.1.4.orig/man/groff.man 2002-06-29 20:46:03.000000000 +0000
9056 +++ groff-1.18.1.4/man/groff.man 2006-10-18 18:54:44.000000000 +0000
9057 @@ -19,6 +19,10 @@
9058 A copy of the Free Documentation License is included as a file called
9059 FDL in the main directory of the groff source package.
9060 ..
9061 +.ig
9062 +A copy of the GNU Free Documentation License is also available in this
9063 +Debian package as /usr/share/doc/groff/copyright.
9064 +..
9065 .
9066 .\" --------------------------------------------------------------------
9067 .\" Setup
9068 diff -Naur groff-1.18.1.4.orig/man/groff_char.man groff-1.18.1.4/man/groff_char.man
9069 --- groff-1.18.1.4.orig/man/groff_char.man 2002-07-20 03:54:14.000000000 +0000
9070 +++ groff-1.18.1.4/man/groff_char.man 2006-10-18 18:54:44.000000000 +0000
9071 @@ -32,6 +32,10 @@
9072 A copy of the Free Documentation License is included as a file called
9073 FDL in the main directory of the groff source package.
9074 ..
9075 +.ig
9076 +A copy of the GNU Free Documentation License is also available in this
9077 +Debian package as /usr/share/doc/groff/copyright.
9078 +..
9079 .
9080 .\" --------------------------------------------------------------------
9081 .\" Setup Part 1
9082 diff -Naur groff-1.18.1.4.orig/man/groff_diff.man groff-1.18.1.4/man/groff_diff.man
9083 --- groff-1.18.1.4.orig/man/groff_diff.man 2002-07-05 15:04:22.000000000 +0000
9084 +++ groff-1.18.1.4/man/groff_diff.man 2006-10-18 18:54:44.000000000 +0000
9085 @@ -23,6 +23,10 @@
9086 A copy of the Free Documentation License is included as a file called
9087 FDL in the main directory of the groff source package.
9088 ..
9089 +.ig
9090 +A copy of the GNU Free Documentation License is also available in this
9091 +Debian package as /usr/share/doc/groff/copyright.
9092 +..
9093 .
9094 .\" --------------------------------------------------------------------
9095 .\" Setup
9096 diff -Naur groff-1.18.1.4.orig/man/groff_out.man groff-1.18.1.4/man/groff_out.man
9097 --- groff-1.18.1.4.orig/man/groff_out.man 2002-09-12 10:00:17.000000000 +0000
9098 +++ groff-1.18.1.4/man/groff_out.man 2006-10-18 18:54:44.000000000 +0000
9099 @@ -19,6 +19,10 @@
9100 A copy of the Free Documentation License is included as a file called
9101 FDL in the main directory of the groff source package.
9102 ..
9103 +.ig
9104 +A copy of the GNU Free Documentation License is also available in this
9105 +Debian package as /usr/share/doc/groff/copyright.
9106 +..
9107 .
9108 .\" --------------------------------------------------------------------
9109 .\" Setup
9110 diff -Naur groff-1.18.1.4.orig/man/groff_tmac.man groff-1.18.1.4/man/groff_tmac.man
9111 --- groff-1.18.1.4.orig/man/groff_tmac.man 2002-08-21 07:37:10.000000000 +0000
9112 +++ groff-1.18.1.4/man/groff_tmac.man 2006-10-18 18:54:44.000000000 +0000
9113 @@ -32,6 +32,10 @@
9114 A copy of the Free Documentation License is included as a file called
9115 FDL in the main directory of the groff source package.
9116 ..
9117 +.ig
9118 +A copy of the GNU Free Documentation License is also available in this
9119 +Debian package as /usr/share/doc/groff/copyright.
9120 +..
9121 .
9122 .\" --------------------------------------------------------------------
9123 .\" Setup
9124 diff -Naur groff-1.18.1.4.orig/man/roff.man groff-1.18.1.4/man/roff.man
9125 --- groff-1.18.1.4.orig/man/roff.man 2002-04-23 04:28:59.000000000 +0000
9126 +++ groff-1.18.1.4/man/roff.man 2006-10-18 18:54:44.000000000 +0000
9127 @@ -18,6 +18,10 @@
9128 A copy of the Free Documentation License is included as a file called
9129 FDL in the main directory of the groff source package.
9130 ..
9131 +.ig
9132 +A copy of the GNU Free Documentation License is also available in this
9133 +Debian package as /usr/share/doc/groff/copyright.
9134 +..
9135 .
9136 .\" --------------------------------------------------------------------
9137 .\" Setup
9138 diff -Naur groff-1.18.1.4.orig/mdate.sh groff-1.18.1.4/mdate.sh
9139 --- groff-1.18.1.4.orig/mdate.sh 2001-03-09 15:26:30.000000000 +0000
9140 +++ groff-1.18.1.4/mdate.sh 2006-10-18 18:54:44.000000000 +0000
9141 @@ -2,41 +2,4 @@
9142
9143 # Print the modification date of $1 `nicely'.
9144
9145 -# Don't want foreign dates.
9146 -
9147 -LANGUAGE=
9148 -LC_ALL=C; export LC_ALL
9149 -
9150 -
9151 -(date;
9152 -if ls -L /dev/null 1>/dev/null 2>&1; then ls -L -l $1; else ls -l $1; fi
9153 -) | awk '
9154 -BEGIN {
9155 - full["Jan"] = "January"; number["Jan"] = 1;
9156 - full["Feb"] = "February"; number["Feb"] = 2;
9157 - full["Mar"] = "March"; number["Mar"] = 3;
9158 - full["Apr"] = "April"; number["Apr"] = 4;
9159 - full["May"] = "May"; number["May"] = 5;
9160 - full["Jun"] = "June"; number["Jun"] = 6;
9161 - full["Jul"] = "July"; number["Jul"] = 7;
9162 - full["Aug"] = "August"; number["Aug"] = 8;
9163 - full["Sep"] = "September"; number["Sep"] = 9;
9164 - full["Oct"] = "October"; number["Oct"] = 10;
9165 - full["Nov"] = "November"; number["Nov"] = 11;
9166 - full["Dec"] = "December"; number["Dec"] = 12;
9167 -}
9168 -
9169 -NR == 1 {
9170 - month = $2;
9171 - year = $NF;
9172 -}
9173 -
9174 -NR == 2 {
9175 - if ($(NF-1) ~ /:/) {
9176 - if (number[$(NF-3)] > number[month])
9177 - year--;
9178 - }
9179 - else
9180 - year = $(NF-1);
9181 - print $(NF-2), full[$(NF-3)], year
9182 -}'
9183 +perl -MPOSIX -le 'print strftime("%d %B %Y", localtime((stat $ARGV[0])[9]))' $1
9184 diff -Naur groff-1.18.1.4.orig/src/devices/grodvi/dvi.cc groff-1.18.1.4/src/devices/grodvi/dvi.cc
9185 --- groff-1.18.1.4.orig/src/devices/grodvi/dvi.cc 2002-03-01 01:15:36.000000000 +0000
9186 +++ groff-1.18.1.4/src/devices/grodvi/dvi.cc 2006-10-18 18:54:44.000000000 +0000
9187 @@ -21,6 +21,7 @@
9188
9189 #include "driver.h"
9190 #include "nonposix.h"
9191 +#include "encoding.h"
9192
9193 extern "C" const char *Version_string;
9194
9195 @@ -104,6 +105,9 @@
9196 struct output_font {
9197 dvi_font *f;
9198 int point_size;
9199 +#ifdef ENABLE_MULTIBYTE
9200 + const char *sf; // subfont name
9201 +#endif
9202 output_font() : f(0) { }
9203 };
9204
9205 @@ -121,6 +125,9 @@
9206 output_font output_font_table[FONTS_MAX];
9207 font *cur_font;
9208 int cur_point_size;
9209 +#ifdef ENABLE_MULTIBYTE
9210 + const char *cur_subfont;
9211 +#endif
9212 color cur_color;
9213 int pushed;
9214 int pushed_h;
9215 @@ -341,9 +348,18 @@
9216 if (*env->col != cur_color)
9217 set_color(env->col);
9218 int code = f->get_code(index);
9219 +#ifdef ENABLE_MULTIBYTE
9220 + const char *sf = f->get_subfont_name(index);
9221 + if (env->size != cur_point_size || f != cur_font ||
9222 + (sf != cur_subfont && strcmp(sf, cur_subfont))) {
9223 +#else
9224 if (env->size != cur_point_size || f != cur_font) {
9225 +#endif
9226 cur_font = f;
9227 cur_point_size = env->size;
9228 +#ifdef ENABLE_MULTIBYTE
9229 + cur_subfont = sf;
9230 +#endif
9231 int i;
9232 for (i = 0;; i++) {
9233 if (i >= FONTS_MAX) {
9234 @@ -352,9 +368,16 @@
9235 if (output_font_table[i].f == 0) {
9236 output_font_table[i].f = (dvi_font *)cur_font;
9237 output_font_table[i].point_size = cur_point_size;
9238 +#ifdef ENABLE_MULTIBYTE
9239 + output_font_table[i].sf = cur_subfont;
9240 +#endif
9241 define_font(i);
9242 }
9243 if (output_font_table[i].f == cur_font
9244 +#ifdef ENABLE_MULTIBYTE
9245 + && (output_font_table[i].sf == cur_subfont ||
9246 + strcmp(output_font_table[i].sf, cur_subfont) == 0)
9247 +#endif
9248 && output_font_table[i].point_size == cur_point_size)
9249 break;
9250 }
9251 @@ -398,7 +421,13 @@
9252 out4(f->checksum);
9253 out4(output_font_table[i].point_size*RES_7227);
9254 out4(int((double(f->design_size)/(1<<20))*RES_7227*100 + .5));
9255 +#ifdef ENABLE_MULTIBYTE
9256 + const char *nm;
9257 + if (!(nm = output_font_table[i].sf))
9258 + nm = f->get_internal_name();
9259 +#else
9260 const char *nm = f->get_internal_name();
9261 +#endif
9262 out1(0);
9263 out_string(nm);
9264 }
9265 @@ -889,6 +918,7 @@
9266 program_name = argv[0];
9267 static char stderr_buf[BUFSIZ];
9268 setbuf(stderr, stderr_buf);
9269 + init_encoding_handler();
9270 int c;
9271 static const struct option long_options[] = {
9272 { "help", no_argument, 0, CHAR_MAX + 1 },
9273 diff -Naur groff-1.18.1.4.orig/src/devices/grohtml/html.h groff-1.18.1.4/src/devices/grohtml/html.h
9274 --- groff-1.18.1.4.orig/src/devices/grohtml/html.h 2002-02-17 17:05:53.000000000 +0000
9275 +++ groff-1.18.1.4/src/devices/grohtml/html.h 2006-10-18 18:54:44.000000000 +0000
9276 @@ -49,6 +49,9 @@
9277 class simple_output {
9278 public:
9279 simple_output(FILE *, int max_line_length);
9280 +#ifdef ENABLE_MULTIBYTE
9281 + simple_output &put_string(const wchar *, int);
9282 +#endif
9283 simple_output &put_string(const char *, int);
9284 simple_output &put_string(const char *s);
9285 simple_output &put_string(const string &s);
9286 diff -Naur groff-1.18.1.4.orig/src/devices/grohtml/post-html.cc groff-1.18.1.4/src/devices/grohtml/post-html.cc
9287 --- groff-1.18.1.4.orig/src/devices/grohtml/post-html.cc 2006-10-14 12:32:59.000000000 +0000
9288 +++ groff-1.18.1.4/src/devices/grohtml/post-html.cc 2006-10-18 18:54:44.000000000 +0000
9289 @@ -29,6 +29,7 @@
9290 #include "html.h"
9291 #include "html-text.h"
9292 #include "html-table.h"
9293 +#include "encoding.h" // XXX: ukai
9294
9295 #include <time.h>
9296
9297 @@ -280,6 +281,9 @@
9298 public:
9299 char_buffer();
9300 ~char_buffer();
9301 +#ifdef ENABLE_MULTIBYTE
9302 + char *add_string(const wchar *, unsigned int);
9303 +#endif
9304 char *add_string(const char *, unsigned int);
9305 char *add_string(const string &);
9306 private:
9307 @@ -301,6 +305,43 @@
9308 }
9309 }
9310
9311 +#ifdef ENABLE_MULTIBYTE
9312 +char *char_buffer::add_string (const wchar *s, unsigned int length)
9313 +{
9314 + int i=0;
9315 + unsigned int old_used;
9316 +
9317 + if (tail == 0) {
9318 + tail = new char_block;
9319 + head = tail;
9320 + } else {
9321 + if (tail->used + length*2 + 1 > char_block::SIZE) {
9322 + tail->next = new char_block;
9323 + tail = tail->next;
9324 + }
9325 + }
9326 + // at this point we have a tail which is ready for the string.
9327 + if (tail->used + length*2 + 1 > char_block::SIZE) {
9328 + fatal("need to increase char_block::SIZE");
9329 + }
9330 +
9331 + old_used = tail->used;
9332 + do {
9333 + length -= output_encoding->put_wchar(s[i], (unsigned char *)tail->buffer, &tail->used, length*2);
9334 + i++;
9335 + } while (length>0);
9336 +
9337 + // add terminating nul character
9338 +
9339 + tail->buffer[tail->used] = '\0';
9340 + tail->used++;
9341 +
9342 + // and return start of new string
9343 +
9344 + return( &tail->buffer[old_used] );
9345 +}
9346 +#endif
9347 +
9348 char *char_buffer::add_string (const char *s, unsigned int length)
9349 {
9350 int i=0;
9351 @@ -320,6 +361,7 @@
9352 }
9353
9354 old_used = tail->used;
9355 + /* XXX: encoding - ukai */
9356 do {
9357 tail->buffer[tail->used] = s[i];
9358 tail->used++;
9359 @@ -1917,6 +1959,15 @@
9360
9361 current_paragraph->do_para(&html, "", indentation, pageoffset, linelength);
9362 }
9363 +#if 0 // def ENABLE_MULTIBYTE /* XXX */
9364 + else if (strcmp(fontname, "M") == 0) {
9365 + current_paragraph->done_bold();
9366 + current_paragraph->done_italic();
9367 + current_paragraph->done_tt();
9368 + } else if (strcmp(fontname, "G") == 0) {
9369 + current_paragraph->do_bold();
9370 + }
9371 +#endif
9372 }
9373
9374 void html_printer::determine_header_level (int level)
9375 @@ -2948,6 +2999,11 @@
9376 current_paragraph->done_italic();
9377 current_paragraph->done_tt();
9378 }
9379 +#ifdef ENABLE_MULTIBYTE
9380 + else if (strcmp(fontname, "G") == 0) {
9381 + current_paragraph->done_bold();
9382 + }
9383 +#endif
9384 }
9385
9386 /*
9387 @@ -2992,6 +3048,15 @@
9388 current_paragraph->do_italic();
9389 current_paragraph->do_bold();
9390 }
9391 +#ifdef ENABLE_MULTIBYTE
9392 + else if (strcmp(fontname, "M") == 0) {
9393 + current_paragraph->done_bold();
9394 + current_paragraph->done_italic();
9395 + current_paragraph->done_tt();
9396 + } else if (strcmp(fontname, "G") == 0) {
9397 + current_paragraph->do_bold();
9398 + }
9399 +#endif
9400 }
9401
9402 /*
9403 @@ -3331,7 +3396,23 @@
9404
9405 last_sbuf_length = sbuf.length();
9406 if (html_glyph == NULL)
9407 +#ifdef ENABLE_MULTIBYTE
9408 + {
9409 + if (is_wchar_code(code)) {
9410 + int mblen = output_encoding->max_wchar_len();
9411 + unsigned char *wbuf = new unsigned char[mblen];
9412 + int i = 0, j = 0;
9413 + output_encoding->put_wchar(code, wbuf, &j, mblen);
9414 + for (i = 0; i < j; i++) {
9415 + sbuf += wbuf[i];
9416 + }
9417 + }
9418 + else
9419 + sbuf += ((char)code);
9420 + }
9421 +#else
9422 sbuf += ((char)code);
9423 +#endif
9424 else
9425 sbuf += html_glyph;
9426 }
9427 @@ -3445,12 +3526,12 @@
9428 return;
9429
9430 flush_sbuf();
9431 + sbuf_style = sty; /* XXX? */
9432 add_to_sbuf(i, name);
9433 sbuf_end_hpos = env->hpos + w;
9434 sbuf_start_hpos = env->hpos;
9435 sbuf_prev_hpos = env->hpos;
9436 sbuf_vpos = env->vpos;
9437 - sbuf_style = sty;
9438 sbuf_kern = 0;
9439 }
9440
9441 @@ -3659,6 +3740,7 @@
9442 program_name = argv[0];
9443 static char stderr_buf[BUFSIZ];
9444 setbuf(stderr, stderr_buf);
9445 + init_encoding_handler();
9446 int c;
9447 static const struct option long_options[] = {
9448 { "help", no_argument, 0, CHAR_MAX + 1 },
9449 diff -Naur groff-1.18.1.4.orig/src/devices/grops/ps.cc groff-1.18.1.4/src/devices/grops/ps.cc
9450 --- groff-1.18.1.4.orig/src/devices/grops/ps.cc 2002-06-19 21:07:33.000000000 +0000
9451 +++ groff-1.18.1.4/src/devices/grops/ps.cc 2006-10-18 18:54:44.000000000 +0000
9452 @@ -24,6 +24,7 @@
9453 #include "cset.h"
9454 #include "nonposix.h"
9455 #include "paper.h"
9456 +#include "encoding.h"
9457
9458 #include "ps.h"
9459 #include <time.h>
9460 @@ -193,12 +194,23 @@
9461 return *this;
9462 }
9463
9464 +#ifdef ENABLE_MULTIBYTE
9465 +ps_output &ps_output::put_string(const wchar *s, int n)
9466 +#else
9467 ps_output &ps_output::put_string(const char *s, int n)
9468 +#endif
9469 {
9470 int len = 0;
9471 int i;
9472 for (i = 0; i < n; i++) {
9473 +#ifdef ENABLE_MULTIBYTE
9474 + wchar wc = s[i];
9475 + char c = 0;
9476 + if (is_wchar_singlebyte(wc))
9477 + c = wchar_singlebyte(wc);
9478 +#else
9479 char c = s[i];
9480 +#endif
9481 if (is_ascii(c) && csprint(c)) {
9482 if (c == '(' || c == ')' || c == '\\')
9483 len += 2;
9484 @@ -224,8 +236,13 @@
9485 putc('\n', fp);
9486 col = 0;
9487 }
9488 +#ifdef ENABLE_MULTIBYTE
9489 + int nb = output_encoding->put_wchar(s[i], fp, "%02x");
9490 + col += nb * 2;
9491 +#else
9492 fprintf(fp, "%02x", s[i] & 0377);
9493 col += 2;
9494 +#endif
9495 }
9496 putc('>', fp);
9497 col++;
9498 @@ -396,6 +413,9 @@
9499 int encoding_index;
9500 char *encoding;
9501 char *reencoded_name;
9502 +#ifdef ENABLE_MULTIBYTE
9503 + char *encodingname;
9504 +#endif
9505 ~ps_font();
9506 void handle_unknown_font_command(const char *command, const char *arg,
9507 const char *filename, int lineno);
9508 @@ -414,6 +434,9 @@
9509
9510 ps_font::ps_font(const char *nm)
9511 : font(nm), encoding_index(-1), encoding(0), reencoded_name(0)
9512 +#ifdef ENABLE_MULTIBYTE
9513 + , encodingname(0)
9514 +#endif
9515 {
9516 }
9517
9518 @@ -421,6 +444,9 @@
9519 {
9520 a_delete encoding;
9521 a_delete reencoded_name;
9522 +#ifdef ENABLE_MULTIBYTE
9523 + a_delete encodingname;
9524 +#endif
9525 }
9526
9527 void ps_font::handle_unknown_font_command(const char *command, const char *arg,
9528 @@ -433,6 +459,15 @@
9529 else
9530 encoding = strsave(arg);
9531 }
9532 +#ifdef ENABLE_MULTIBYTE
9533 + if (strcmp(command, "encodingname") == 0) {
9534 + if (arg == 0)
9535 + error_with_file_and_line(filename, lineno,
9536 + "`encodingname' command requires an argument");
9537 + else
9538 + encodingname = strsave(arg);
9539 + }
9540 +#endif
9541 }
9542
9543 static void handle_unknown_desc_command(const char *command, const char *arg,
9544 @@ -487,7 +522,11 @@
9545 int paper_length;
9546 int equalise_spaces;
9547 enum { SBUF_SIZE = 256 };
9548 +#ifdef ENABLE_MULTIBYTE
9549 + wchar sbuf[SBUF_SIZE];
9550 +#else
9551 char sbuf[SBUF_SIZE];
9552 +#endif
9553 int sbuf_len;
9554 int sbuf_start_hpos;
9555 int sbuf_vpos;
9556 @@ -606,7 +645,11 @@
9557 {
9558 if (i == space_char_index || invis_count > 0)
9559 return;
9560 +#ifdef ENABLE_MULTIBYTE
9561 + wchar code = f->get_code(i);
9562 +#else
9563 unsigned char code = f->get_code(i);
9564 +#endif
9565 style sty(f, env->size, env->height, env->slant);
9566 if (sty.slant != 0) {
9567 if (sty.slant > 80 || sty.slant < -80) {
9568 @@ -763,6 +806,14 @@
9569 if (sty == defined_styles[i]) {
9570 sprintf(buf, "F%d", i);
9571 out.put_symbol(buf);
9572 +#ifdef ENABLE_MULTIBYTE
9573 + char *encodingname = ((ps_font *)sty.f)->encodingname;
9574 + if (encodingname != 0) {
9575 + select_output_encoding_handler(encodingname);
9576 + } else {
9577 + select_output_encoding_handler("LATIN1");
9578 + }
9579 +#endif
9580 return;
9581 }
9582 if (ndefined_styles >= MAX_DEFINED_STYLES)
9583 @@ -772,6 +823,14 @@
9584 const char *psname = sty.f->get_internal_name();
9585 if (psname == 0)
9586 fatal("no internalname specified for font `%1'", sty.f->get_name());
9587 +#ifdef ENABLE_MULTIBYTE
9588 + char *encodingname = ((ps_font *)sty.f)->encodingname;
9589 + if (encodingname != 0) {
9590 + select_output_encoding_handler(encodingname);
9591 + } else {
9592 + select_output_encoding_handler("LATIN1");
9593 + }
9594 +#endif
9595 char *encoding = ((ps_font *)sty.f)->encoding;
9596 if (encoding != 0) {
9597 char *s = ((ps_font *)sty.f)->reencoded_name;
9598 @@ -1555,6 +1614,7 @@
9599 string env;
9600 static char stderr_buf[BUFSIZ];
9601 setbuf(stderr, stderr_buf);
9602 + init_encoding_handler();
9603 int c;
9604 static const struct option long_options[] = {
9605 { "help", no_argument, 0, CHAR_MAX + 1 },
9606 diff -Naur groff-1.18.1.4.orig/src/devices/grops/ps.h groff-1.18.1.4/src/devices/grops/ps.h
9607 --- groff-1.18.1.4.orig/src/devices/grops/ps.h 2002-01-24 22:37:32.000000000 +0000
9608 +++ groff-1.18.1.4/src/devices/grops/ps.h 2006-10-18 18:54:44.000000000 +0000
9609 @@ -18,10 +18,16 @@
9610 with groff; see the file COPYING. If not, write to the Free Software
9611 Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
9612
9613 +#include "encoding.h" // XXX
9614 +
9615 class ps_output {
9616 public:
9617 ps_output(FILE *, int max_line_length);
9618 +#ifdef ENABLE_MULTIBYTE
9619 + ps_output &put_string(const wchar *, int);
9620 +#else
9621 ps_output &put_string(const char *, int);
9622 +#endif
9623 ps_output &put_number(int);
9624 ps_output &put_fix_number(int);
9625 ps_output &put_float(double);
9626 diff -Naur groff-1.18.1.4.orig/src/devices/grotty/grotty.man groff-1.18.1.4/src/devices/grotty/grotty.man
9627 --- groff-1.18.1.4.orig/src/devices/grotty/grotty.man 2002-10-01 19:01:45.000000000 +0000
9628 +++ groff-1.18.1.4/src/devices/grotty/grotty.man 2006-10-18 18:54:44.000000000 +0000
9629 @@ -50,7 +50,9 @@
9630 command
9631 with a
9632 .BR \-Tascii ,
9633 -.B \-Tlatin1
9634 +.BR \-Tascii8 ,
9635 +.BR \-Tlatin1 ,
9636 +.B \-Tnippon
9637 or
9638 .B \-Tutf8
9639 option on ASCII based systems, and with
9640 @@ -235,8 +237,10 @@
9641 .I name
9642 is the name of the device, usually
9643 .BR ascii ,
9644 +.BR ascii8 ,
9645 .BR latin1 ,
9646 .BR utf8 ,
9647 +.B nippon
9648 or
9649 .BR cp1047 .
9650 .TP
9651 @@ -315,10 +319,20 @@
9652 device.
9653 .
9654 .TP
9655 +.B @FONTDIR@/devascii8/DESC
9656 +Device description file for
9657 +.B ascii8
9658 +device.
9659 +.TP
9660 .B @FONTDIR@/devlatin1/DESC
9661 Device description file for
9662 .B latin1
9663 device.
9664 +.TP
9665 +.B @FONTDIR@/devnippon/DESC
9666 +Device description file for
9667 +.B nippon
9668 +device.
9669 .
9670 .TP
9671 .BI @FONTDIR@/devlatin1/ F
9672 diff -Naur groff-1.18.1.4.orig/src/devices/grotty/tty.cc groff-1.18.1.4/src/devices/grotty/tty.cc
9673 --- groff-1.18.1.4.orig/src/devices/grotty/tty.cc 2002-06-19 21:31:15.000000000 +0000
9674 +++ groff-1.18.1.4/src/devices/grotty/tty.cc 2006-10-18 18:54:44.000000000 +0000
9675 @@ -20,6 +20,7 @@
9676
9677 #include "driver.h"
9678 #include "device.h"
9679 +#include "encoding.h"
9680
9681 extern "C" const char *Version_string;
9682
9683 @@ -51,8 +52,18 @@
9684 HDRAW_MODE = 0x08,
9685 CU_MODE = 0x10,
9686 COLOR_CHANGE = 0x20
9687 +#ifdef ENABLE_MULTIBYTE
9688 + , WCHAR_MODE = 0x100
9689 +#endif
9690 };
9691
9692 +#ifdef ENABLE_MULTIBYTE
9693 +# ifdef putchar
9694 +# undef putchar
9695 +# endif
9696 +#define putchar(wc) output_encoding->put_wchar((wc), stdout)
9697 +#endif
9698 +
9699 // Mode to use for bold-underlining.
9700 static unsigned char bold_underline_mode = BOLD_MODE|UNDERLINE_MODE;
9701
9702 @@ -89,6 +100,7 @@
9703 static tty_font *load_tty_font(const char *);
9704 };
9705
9706 +
9707 tty_font *tty_font::load_tty_font(const char *s)
9708 {
9709 tty_font *f = new tty_font(s);
9710 @@ -98,8 +110,26 @@
9711 }
9712 const char *num = f->get_internal_name();
9713 long n;
9714 +#ifdef ENABLE_MULTIBYTE
9715 + if (num != 0) {
9716 + n = strtol(num, 0, 0);
9717 + switch (n) {
9718 + case 1:
9719 + f->mode = int(UNDERLINE_MODE);
9720 + break;
9721 + case 2:
9722 + case 5:
9723 + f->mode = int(BOLD_MODE);
9724 + break;
9725 + case 3:
9726 + f->mode = int(BOLD_MODE|UNDERLINE_MODE);
9727 + break;
9728 + }
9729 + }
9730 +#else
9731 if (num != 0 && (n = strtol(num, 0, 0)) != 0)
9732 f->mode = int(n & (BOLD_MODE|UNDERLINE_MODE));
9733 +#endif
9734 if (!underline_flag)
9735 f->mode &= ~UNDERLINE_MODE;
9736 if (!bold_flag)
9737 @@ -135,6 +165,9 @@
9738 short hpos;
9739 unsigned int code;
9740 unsigned char mode;
9741 +#ifdef ENABLE_MULTIBYTE
9742 + short cols;
9743 +#endif
9744 unsigned char back_color_idx;
9745 unsigned char fore_color_idx;
9746 void *operator new(size_t);
9747 @@ -184,7 +217,7 @@
9748 void make_underline();
9749 void make_bold(unsigned int);
9750 unsigned char color_to_idx(color *col);
9751 - void add_char(unsigned int, int, int, color *, color *, unsigned char);
9752 + void add_char(unsigned int, int, int, color *, color *, font *, unsigned char);
9753 public:
9754 tty_printer(const char *device);
9755 ~tty_printer();
9756 @@ -193,7 +226,7 @@
9757 void special(char *arg, const environment *env, char type);
9758 void change_color(const environment *env);
9759 void change_fill_color(const environment *env);
9760 - void put_char(unsigned int);
9761 + int put_char(unsigned int);
9762 void put_color(unsigned char, int);
9763 void begin_page(int) { }
9764 void end_page(int page_length);
9765 @@ -203,6 +236,10 @@
9766 tty_printer::tty_printer(const char *device) : cached_v(0)
9767 {
9768 is_utf8 = !strcmp(device, "utf8");
9769 +#ifdef ENABLE_MULTIBYTE
9770 + if (is_utf8)
9771 + select_output_encoding_handler("UTF-8");
9772 +#endif
9773 tty_colors[0].set_rgb(0, // black
9774 0,
9775 0);
9776 @@ -242,8 +279,18 @@
9777 void tty_printer::make_underline()
9778 {
9779 if (old_drawing_scheme) {
9780 +#if 0 /* def ENABLE_MULTIBYTE XXX: not necessary? */
9781 + if ((p->mode & WCHAR_MODE)) {
9782 + putchar('_'); putchar('_');
9783 + putchar('\b'); putchar('\b');
9784 + } else {
9785 + putchar('_');
9786 + putchar('\b');
9787 + }
9788 +#else
9789 putchar('_');
9790 putchar('\b');
9791 +#endif
9792 }
9793 else {
9794 if (!is_underline) {
9795 @@ -285,17 +332,25 @@
9796 void tty_printer::set_char(int i, font *f, const environment *env,
9797 int w, const char *name)
9798 {
9799 +#ifdef ENABLE_MULTIBYTE
9800 + if (is_wchar_code(i)) {
9801 + add_char(wchar_code(i), env->hpos, env->vpos, env->col, env->fill,
9802 + f, ((tty_font *)f)->get_mode());
9803 + return;
9804 + }
9805 +#endif
9806 if (w != font::hor)
9807 fatal("width of character not equal to horizontal resolution");
9808 add_char(f->get_code(i),
9809 env->hpos, env->vpos,
9810 env->col, env->fill,
9811 - ((tty_font *)f)->get_mode());
9812 + f, ((tty_font *)f)->get_mode());
9813 }
9814
9815 void tty_printer::add_char(unsigned int c,
9816 int h, int v,
9817 color *fore, color *back,
9818 + font *curfont,
9819 unsigned char mode)
9820 {
9821 #if 0
9822 @@ -338,6 +393,16 @@
9823 g->code = c;
9824 g->fore_color_idx = color_to_idx(fore);
9825 g->back_color_idx = color_to_idx(back);
9826 +#ifdef ENABLE_MULTIBYTE
9827 + if (is_wchar_code(c))
9828 + mode |= WCHAR_MODE;
9829 + if (curfont && curfont->contains(c)) {
9830 + int gw0 = curfont->get_space_width(font::unitwidth);
9831 + int gw = curfont->get_width(c, font::unitwidth);
9832 + g->cols = gw/gw0;
9833 + } else
9834 + g->cols = 1; /* XXX */
9835 +#endif
9836 g->mode = mode;
9837
9838 // The list will be reversed later. After reversal, it must be in
9839 @@ -357,7 +422,7 @@
9840 void tty_printer::special(char *arg, const environment *env, char type)
9841 {
9842 if (type == 'u') {
9843 - add_char(*arg - '0', env->hpos, env->vpos, env->col, env->fill, CU_MODE);
9844 + add_char(*arg - '0', env->hpos, env->vpos, env->col, env->fill, get_font_from_index(env->fontno), CU_MODE);
9845 return;
9846 }
9847 if (type != 'p')
9848 @@ -395,12 +460,12 @@
9849
9850 void tty_printer::change_color(const environment *env)
9851 {
9852 - add_char(0, env->hpos, env->vpos, env->col, env->fill, COLOR_CHANGE);
9853 + add_char(0, env->hpos, env->vpos, env->col, env->fill, get_font_from_index(env->fontno), COLOR_CHANGE);
9854 }
9855
9856 void tty_printer::change_fill_color(const environment *env)
9857 {
9858 - add_char(0, env->hpos, env->vpos, env->col, env->fill, COLOR_CHANGE);
9859 + add_char(0, env->hpos, env->vpos, env->col, env->fill, get_font_from_index(env->fontno), COLOR_CHANGE);
9860 }
9861
9862 void tty_printer::draw(int code, int *p, int np, const environment *env)
9863 @@ -420,7 +485,7 @@
9864 len = -len;
9865 }
9866 while (len >= 0) {
9867 - add_char('|', env->hpos, v, env->col, env->fill, VDRAW_MODE);
9868 + add_char('|', env->hpos, v, env->col, env->fill, get_font_from_index(env->fontno), VDRAW_MODE);
9869 len -= font::vert;
9870 v += font::vert;
9871 }
9872 @@ -434,18 +499,24 @@
9873 len = -len;
9874 }
9875 while (len >= 0) {
9876 - add_char('-', h, env->vpos, env->col, env->fill, HDRAW_MODE);
9877 + add_char('-', h, env->vpos, env->col, env->fill, get_font_from_index(env->fontno), HDRAW_MODE);
9878 len -= font::hor;
9879 h += font::hor;
9880 }
9881 }
9882 }
9883
9884 -void tty_printer::put_char(unsigned int wc)
9885 +int tty_printer::put_char(unsigned int wc)
9886 {
9887 +#ifdef ENABLE_MULTIBYTE
9888 + if (wc >= 0x80) {
9889 + return output_encoding->put_wchar(make_wchar(wc), stdout);
9890 + }
9891 +#else
9892 if (is_utf8 && wc >= 0x80) {
9893 char buf[6 + 1];
9894 int count;
9895 + int len;
9896 char *p = buf;
9897 if (wc < 0x800)
9898 count = 1, *p = (unsigned char)((wc >> 6) | 0xc0);
9899 @@ -458,14 +529,18 @@
9900 else if (wc <= 0x7fffffff)
9901 count = 5, *p = (unsigned char)((wc >> 30) | 0xfC);
9902 else
9903 - return;
9904 + return 0;
9905 + len = count;
9906 do *++p = (unsigned char)(((wc >> (6 * --count)) & 0x3f) | 0x80);
9907 while (count > 0);
9908 *++p = '\0';
9909 putstring(buf);
9910 + return len;
9911 }
9912 +#endif
9913 else
9914 putchar(wc);
9915 + return 1;
9916 }
9917
9918 void tty_printer::put_color(unsigned char color_index, int back)
9919 @@ -629,7 +704,11 @@
9920 }
9921 }
9922 put_char(p->code);
9923 +#ifdef ENABLE_MULTIBYTE
9924 + hpos += p->cols;
9925 +#else
9926 hpos++;
9927 +#endif
9928 }
9929 if (!old_drawing_scheme
9930 && (is_bold || is_underline
9931 @@ -667,6 +746,7 @@
9932 if (getenv("GROFF_NO_SGR"))
9933 old_drawing_scheme = 1;
9934 setbuf(stderr, stderr_buf);
9935 + init_encoding_handler();
9936 int c;
9937 static const struct option long_options[] = {
9938 { "help", no_argument, 0, CHAR_MAX + 1 },
9939 diff -Naur groff-1.18.1.4.orig/src/include/config.h groff-1.18.1.4/src/include/config.h
9940 --- groff-1.18.1.4.orig/src/include/config.h 1970-01-01 00:00:00.000000000 +0000
9941 +++ groff-1.18.1.4/src/include/config.h 2006-10-18 18:54:44.000000000 +0000
9942 @@ -0,0 +1,187 @@
9943 +/* src/include/config.h. Generated by configure. */
9944 +/* src/include/config.hin. Generated from configure.ac by autoheader. */
9945 +
9946 +/* Define if your C++ doesn't understand `delete []'. */
9947 +/* #undef ARRAY_DELETE_NEEDS_SIZE */
9948 +
9949 +/* Define if you want to use multibyte extension. */
9950 +#define ENABLE_MULTIBYTE 1
9951 +
9952 +/* Define if you have a C++ <limits.h>. */
9953 +#define HAVE_CC_LIMITS_H 1
9954 +
9955 +/* Define if you have a C++ <osfcn.h>. */
9956 +/* #undef HAVE_CC_OSFCN_H */
9957 +
9958 +/* Define to 1 if you have the <dirent.h> header file. */
9959 +#define HAVE_DIRENT_H 1
9960 +
9961 +/* Define to 1 if you have the `fmod' function. */
9962 +#define HAVE_FMOD 1
9963 +
9964 +/* Define to 1 if you have the `getcwd' function. */
9965 +#define HAVE_GETCWD 1
9966 +
9967 +/* Define to 1 if you have the `getpagesize' function. */
9968 +#define HAVE_GETPAGESIZE 1
9969 +
9970 +/* Define to 1 if you have the `gettimeofday' function. */
9971 +#define HAVE_GETTIMEOFDAY 1
9972 +
9973 +/* Define to 1 if you have the <inttypes.h> header file. */
9974 +#define HAVE_INTTYPES_H 1
9975 +
9976 +/* Define to 1 if you have the `isatty' function. */
9977 +#define HAVE_ISATTY 1
9978 +
9979 +/* Define if you have <langinfo.h> and nl_langinfo(CODESET). */
9980 +#define HAVE_LANGINFO_CODESET 1
9981 +
9982 +/* Define to 1 if you have the <limits.h> header file. */
9983 +#define HAVE_LIMITS_H 1
9984 +
9985 +/* Define to 1 if you have the <math.h> header file. */
9986 +#define HAVE_MATH_H 1
9987 +
9988 +/* Define to 1 if you have the <memory.h> header file. */
9989 +#define HAVE_MEMORY_H 1
9990 +
9991 +/* Define if you have mkstemp(). */
9992 +#define HAVE_MKSTEMP 1
9993 +
9994 +/* Define to 1 if you have a working `mmap' system call. */
9995 +#define HAVE_MMAP 1
9996 +
9997 +/* Define to 1 if you have the `putenv' function. */
9998 +#define HAVE_PUTENV 1
9999 +
10000 +/* Define to 1 if you have the `rename' function. */
10001 +#define HAVE_RENAME 1
10002 +
10003 +/* Define to 1 if you have the `snprintf' function. */
10004 +#define HAVE_SNPRINTF 1
10005 +
10006 +/* Define to 1 if you have the <stdint.h> header file. */
10007 +#define HAVE_STDINT_H 1
10008 +
10009 +/* Define to 1 if you have the <stdlib.h> header file. */
10010 +#define HAVE_STDLIB_H 1
10011 +
10012 +/* Define to 1 if you have the `strcasecmp' function. */
10013 +#define HAVE_STRCASECMP 1
10014 +
10015 +/* Define to 1 if you have the `strerror' function. */
10016 +#define HAVE_STRERROR 1
10017 +
10018 +/* Define to 1 if you have the <strings.h> header file. */
10019 +#define HAVE_STRINGS_H 1
10020 +
10021 +/* Define to 1 if you have the <string.h> header file. */
10022 +#define HAVE_STRING_H 1
10023 +
10024 +/* Define to 1 if you have the `strncasecmp' function. */
10025 +#define HAVE_STRNCASECMP 1
10026 +
10027 +/* Define to 1 if you have the `strsep' function. */
10028 +#define HAVE_STRSEP 1
10029 +
10030 +/* Define to 1 if you have the `strtol' function. */
10031 +#define HAVE_STRTOL 1
10032 +
10033 +/* Define if <math.h> defines struct exception. */
10034 +#define HAVE_STRUCT_EXCEPTION 1
10035 +
10036 +/* Define to 1 if you have the <sys/dir.h> header file. */
10037 +#define HAVE_SYS_DIR_H 1
10038 +
10039 +/* Define if you have sys_errlist in <errno.h> or in <stdio.h>. */
10040 +#define HAVE_SYS_ERRLIST 1
10041 +
10042 +/* Define if you have sysnerr in <errno.h> or <stdio.h>. */
10043 +#define HAVE_SYS_NERR 1
10044 +
10045 +/* Define to 1 if you have the <sys/stat.h> header file. */
10046 +#define HAVE_SYS_STAT_H 1
10047 +
10048 +/* Define to 1 if you have the <sys/time.h> header file. */
10049 +#define HAVE_SYS_TIME_H 1
10050 +
10051 +/* Define to 1 if you have the <sys/types.h> header file. */
10052 +#define HAVE_SYS_TYPES_H 1
10053 +
10054 +/* Define to 1 if you have the <unistd.h> header file. */
10055 +#define HAVE_UNISTD_H 1
10056 +
10057 +/* Define if the host's encoding is EBCDIC. */
10058 +/* #undef IS_EBCDIC_HOST */
10059 +
10060 +/* Define if localtime() takes a long * not a time_t *. */
10061 +/* #undef LONG_FOR_TIME_T */
10062 +
10063 +/* Define if your C++ doesn't declare gettimeofday(). */
10064 +/* #undef NEED_DECLARATION_GETTIMEOFDAY */
10065 +
10066 +/* Define if your C++ doesn't declare hypot(). */
10067 +/* #undef NEED_DECLARATION_HYPOT */
10068 +
10069 +/* Define if your C++ doesn't declare pclose(). */
10070 +/* #undef NEED_DECLARATION_PCLOSE */
10071 +
10072 +/* Define if your C++ doesn't declare popen(). */
10073 +/* #undef NEED_DECLARATION_POPEN */
10074 +
10075 +/* Define if your C++ doesn't declare putenv(). */
10076 +/* #undef NEED_DECLARATION_PUTENV */
10077 +
10078 +/* Define if your C++ doesn't declare strcasecmp(). */
10079 +/* #undef NEED_DECLARATION_STRCASECMP */
10080 +
10081 +/* Define if your C++ doesn't declare strncasecmp(). */
10082 +/* #undef NEED_DECLARATION_STRNCASECMP */
10083 +
10084 +/* Define to the address where bug reports for this package should be sent. */
10085 +#define PACKAGE_BUGREPORT ""
10086 +
10087 +/* Define to the full name of this package. */
10088 +#define PACKAGE_NAME ""
10089 +
10090 +/* Define to the full name and version of this package. */
10091 +#define PACKAGE_STRING ""
10092 +
10093 +/* Define to the one symbol short name of this package. */
10094 +#define PACKAGE_TARNAME ""
10095 +
10096 +/* Define to the version of this package. */
10097 +#define PACKAGE_VERSION ""
10098 +
10099 +/* Define if the printer's page size is A4. */
10100 +#define PAGEA4 1
10101 +
10102 +/* Define as the return type of signal handlers (`int' or `void'). */
10103 +#define RETSIGTYPE void
10104 +
10105 +/* Define if srand() returns void not int. */
10106 +#define RET_TYPE_SRAND_IS_VOID 1
10107 +
10108 +/* Define to 1 if you have the ANSI C header files. */
10109 +#define STDC_HEADERS 1
10110 +
10111 +/* Define to 1 if `sys_siglist' is declared by <signal.h> or <unistd.h>. */
10112 +#define SYS_SIGLIST_DECLARED 1
10113 +
10114 +/* Define if your C++ compiler uses a traditional (Reiser) preprocessor. */
10115 +/* #undef TRADITIONAL_CPP */
10116 +
10117 +/* Define if the 0200 bit of the status returned by wait() indicates whether a
10118 + core image was produced for a process that was terminated by a signal. */
10119 +/* #undef WCOREFLAG */
10120 +
10121 +/* Define if -D_POSIX_SOURCE is necessary. */
10122 +/* #undef _POSIX_SOURCE */
10123 +
10124 +/* Define if you have ISC 3.x or 4.x. */
10125 +/* #undef _SYSV3 */
10126 +
10127 +/* Define uintmax_t to `unsigned long' or `unsigned long long' if <inttypes.h>
10128 + does not exist. */
10129 +/* #undef uintmax_t */
10130 diff -Naur groff-1.18.1.4.orig/src/include/config.hin groff-1.18.1.4/src/include/config.hin
10131 --- groff-1.18.1.4.orig/src/include/config.hin 2002-09-06 07:32:26.000000000 +0000
10132 +++ groff-1.18.1.4/src/include/config.hin 2006-10-18 18:54:44.000000000 +0000
10133 @@ -1,84 +1,96 @@
10134 -/* src/include/config.hin. Generated automatically from configure.ac by autoheader. */
10135 +/* src/include/config.hin. Generated from configure.ac by autoheader. */
10136
10137 /* Define if your C++ doesn't understand `delete []'. */
10138 #undef ARRAY_DELETE_NEEDS_SIZE
10139
10140 +/* Define if you want to use multibyte extension. */
10141 +#undef ENABLE_MULTIBYTE
10142 +
10143 /* Define if you have a C++ <limits.h>. */
10144 #undef HAVE_CC_LIMITS_H
10145
10146 /* Define if you have a C++ <osfcn.h>. */
10147 #undef HAVE_CC_OSFCN_H
10148
10149 -/* Define if you have the <dirent.h> header file. */
10150 +/* Define to 1 if you have the <dirent.h> header file. */
10151 #undef HAVE_DIRENT_H
10152
10153 -/* Define if you have the `fmod' function. */
10154 +/* Define to 1 if you have the `fmod' function. */
10155 #undef HAVE_FMOD
10156
10157 -/* Define if you have the `getcwd' function. */
10158 +/* Define to 1 if you have the `getcwd' function. */
10159 #undef HAVE_GETCWD
10160
10161 -/* Define if you have the `getpagesize' function. */
10162 +/* Define to 1 if you have the `getpagesize' function. */
10163 #undef HAVE_GETPAGESIZE
10164
10165 -/* Define if you have the `gettimeofday' function. */
10166 +/* Define to 1 if you have the `gettimeofday' function. */
10167 #undef HAVE_GETTIMEOFDAY
10168
10169 -/* Define if you have the <limits.h> header file. */
10170 +/* Define to 1 if you have the <inttypes.h> header file. */
10171 +#undef HAVE_INTTYPES_H
10172 +
10173 +/* Define to 1 if you have the `isatty' function. */
10174 +#undef HAVE_ISATTY
10175 +
10176 +/* Define if you have <langinfo.h> and nl_langinfo(CODESET). */
10177 +#undef HAVE_LANGINFO_CODESET
10178 +
10179 +/* Define to 1 if you have the <limits.h> header file. */
10180 #undef HAVE_LIMITS_H
10181
10182 -/* Define if you have the <math.h> header file. */
10183 +/* Define to 1 if you have the <math.h> header file. */
10184 #undef HAVE_MATH_H
10185
10186 +/* Define to 1 if you have the <memory.h> header file. */
10187 +#undef HAVE_MEMORY_H
10188 +
10189 /* Define if you have mkstemp(). */
10190 #undef HAVE_MKSTEMP
10191
10192 -/* Define if you have a working `mmap' system call. */
10193 +/* Define to 1 if you have a working `mmap' system call. */
10194 #undef HAVE_MMAP
10195
10196 -/* Define if you have the `putenv' function. */
10197 +/* Define to 1 if you have the `putenv' function. */
10198 #undef HAVE_PUTENV
10199
10200 -/* Define if you have the `rename' function. */
10201 +/* Define to 1 if you have the `rename' function. */
10202 #undef HAVE_RENAME
10203
10204 -/* Define if you have the `snprintf' function. */
10205 +/* Define to 1 if you have the `snprintf' function. */
10206 #undef HAVE_SNPRINTF
10207
10208 -/* Define if you have the `isatty' function. */
10209 -#undef HAVE_ISATTY
10210 -
10211 -/* Define if you have the <stdint.h> header file. */
10212 +/* Define to 1 if you have the <stdint.h> header file. */
10213 #undef HAVE_STDINT_H
10214
10215 -/* Define if you have the <stdlib.h> header file. */
10216 +/* Define to 1 if you have the <stdlib.h> header file. */
10217 #undef HAVE_STDLIB_H
10218
10219 -/* Define if you have the `strcasecmp' function. */
10220 +/* Define to 1 if you have the `strcasecmp' function. */
10221 #undef HAVE_STRCASECMP
10222
10223 -/* Define if you have the `strerror' function. */
10224 +/* Define to 1 if you have the `strerror' function. */
10225 #undef HAVE_STRERROR
10226
10227 -/* Define if you have the <strings.h> header file. */
10228 +/* Define to 1 if you have the <strings.h> header file. */
10229 #undef HAVE_STRINGS_H
10230
10231 -/* Define if you have the <string.h> header file. */
10232 +/* Define to 1 if you have the <string.h> header file. */
10233 #undef HAVE_STRING_H
10234
10235 -/* Define if you have the `strncasecmp' function. */
10236 +/* Define to 1 if you have the `strncasecmp' function. */
10237 #undef HAVE_STRNCASECMP
10238
10239 -/* Define if you have the `strsep' function. */
10240 +/* Define to 1 if you have the `strsep' function. */
10241 #undef HAVE_STRSEP
10242
10243 -/* Define if you have the `strtol' function. */
10244 +/* Define to 1 if you have the `strtol' function. */
10245 #undef HAVE_STRTOL
10246
10247 /* Define if <math.h> defines struct exception. */
10248 #undef HAVE_STRUCT_EXCEPTION
10249
10250 -/* Define if you have the <sys/dir.h> header file. */
10251 +/* Define to 1 if you have the <sys/dir.h> header file. */
10252 #undef HAVE_SYS_DIR_H
10253
10254 /* Define if you have sys_errlist in <errno.h> or in <stdio.h>. */
10255 @@ -87,10 +99,16 @@
10256 /* Define if you have sysnerr in <errno.h> or <stdio.h>. */
10257 #undef HAVE_SYS_NERR
10258
10259 -/* Define if you have the <sys/time.h> header file. */
10260 +/* Define to 1 if you have the <sys/stat.h> header file. */
10261 +#undef HAVE_SYS_STAT_H
10262 +
10263 +/* Define to 1 if you have the <sys/time.h> header file. */
10264 #undef HAVE_SYS_TIME_H
10265
10266 -/* Define if you have the <unistd.h> header file. */
10267 +/* Define to 1 if you have the <sys/types.h> header file. */
10268 +#undef HAVE_SYS_TYPES_H
10269 +
10270 +/* Define to 1 if you have the <unistd.h> header file. */
10271 #undef HAVE_UNISTD_H
10272
10273 /* Define if the host's encoding is EBCDIC. */
10274 @@ -120,6 +138,21 @@
10275 /* Define if your C++ doesn't declare strncasecmp(). */
10276 #undef NEED_DECLARATION_STRNCASECMP
10277
10278 +/* Define to the address where bug reports for this package should be sent. */
10279 +#undef PACKAGE_BUGREPORT
10280 +
10281 +/* Define to the full name of this package. */
10282 +#undef PACKAGE_NAME
10283 +
10284 +/* Define to the full name and version of this package. */
10285 +#undef PACKAGE_STRING
10286 +
10287 +/* Define to the one symbol short name of this package. */
10288 +#undef PACKAGE_TARNAME
10289 +
10290 +/* Define to the version of this package. */
10291 +#undef PACKAGE_VERSION
10292 +
10293 /* Define if the printer's page size is A4. */
10294 #undef PAGEA4
10295
10296 @@ -129,7 +162,10 @@
10297 /* Define if srand() returns void not int. */
10298 #undef RET_TYPE_SRAND_IS_VOID
10299
10300 -/* Define if `sys_siglist' is declared by <signal.h> or <unistd.h>. */
10301 +/* Define to 1 if you have the ANSI C header files. */
10302 +#undef STDC_HEADERS
10303 +
10304 +/* Define to 1 if `sys_siglist' is declared by <signal.h> or <unistd.h>. */
10305 #undef SYS_SIGLIST_DECLARED
10306
10307 /* Define if your C++ compiler uses a traditional (Reiser) preprocessor. */
10308 diff -Naur groff-1.18.1.4.orig/src/include/device.h groff-1.18.1.4/src/include/device.h
10309 --- groff-1.18.1.4.orig/src/include/device.h 2000-02-06 09:36:30.000000000 +0000
10310 +++ groff-1.18.1.4/src/include/device.h 2006-10-18 18:54:44.000000000 +0000
10311 @@ -18,4 +18,9 @@
10312 with groff; see the file COPYING. If not, write to the Free Software
10313 Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
10314
10315 +#ifndef _DEVICE_H
10316 +#define _DEVICE_H
10317 +
10318 extern const char *device;
10319 +
10320 +#endif /* _DEVICE_H */
10321 diff -Naur groff-1.18.1.4.orig/src/include/driver.h groff-1.18.1.4/src/include/driver.h
10322 --- groff-1.18.1.4.orig/src/include/driver.h 2002-02-17 17:05:53.000000000 +0000
10323 +++ groff-1.18.1.4/src/include/driver.h 2006-10-18 18:54:44.000000000 +0000
10324 @@ -27,6 +27,7 @@
10325 #include <errno.h>
10326 #include <assert.h>
10327 #include <math.h>
10328 +#include "encoding.h" // XXX: ukai
10329 #include "errarg.h"
10330 #include "error.h"
10331 #include "font.h"
10332 diff -Naur groff-1.18.1.4.orig/src/include/encoding.h groff-1.18.1.4/src/include/encoding.h
10333 --- groff-1.18.1.4.orig/src/include/encoding.h 1970-01-01 00:00:00.000000000 +0000
10334 +++ groff-1.18.1.4/src/include/encoding.h 2006-10-18 18:54:44.000000000 +0000
10335 @@ -0,0 +1,175 @@
10336 +// -*- C++ -*-
10337 +/* Copyright (c) 2001 Fumitoshi UKAI <ukai@debian.or.jp>
10338 +
10339 +This file is part of groff.
10340 +
10341 +groff is free software; you can redistribute it and/or modify it under
10342 +the terms of the GNU General Public License as published by the Free
10343 +Software Foundation; either version 2, or (at your option) any later
10344 +version.
10345 +
10346 +groff is distributed in the hope that it will be useful, but WITHOUT ANY
10347 +WARRANTY; without even the implied warranty of MERCHANTABILITY or
10348 +FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
10349 +for more details.
10350 +
10351 +You should have received a copy of the GNU General Public License
10352 +along with this program; if not, write to the Free Software
10353 +Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */
10354 +
10355 +#ifndef ENCODING_H
10356 +#define ENCODING_H
10357 +
10358 +#include <config.h>
10359 +
10360 +#ifdef ENABLE_MULTIBYTE
10361 +typedef int wchar; // negative is used for charcode & index
10362 +#else
10363 +typedef char wchar;
10364 +#endif
10365 +
10366 +#include <stdio.h>
10367 +
10368 +#ifdef __cplusplus
10369 +class encoding_istream {
10370 +public:
10371 + encoding_istream() {};
10372 + virtual ~encoding_istream() {};
10373 + virtual int getbyte() = 0;
10374 + virtual int peekbyte() = 0;
10375 + virtual void ungetbyte(int ch) = 0;
10376 +};
10377 +
10378 +class encoding_istream_str: public encoding_istream {
10379 +private:
10380 + const unsigned char *s;
10381 + int *i;
10382 + encoding_istream_str() {};
10383 +public:
10384 + encoding_istream_str(const unsigned char *s0, int *i0) : s(s0), i(i0) {};
10385 + ~encoding_istream_str() {};
10386 + inline int getbyte() { return s[(*i)++]; };
10387 + inline int peekbyte() { return s[(*i)]; };
10388 + inline void ungetbyte(int ch) { --(*i); };
10389 +};
10390 +
10391 +class encoding_istream_fp: public encoding_istream {
10392 +private:
10393 + FILE *fp;
10394 +public:
10395 + encoding_istream_fp(FILE *fp0) : fp(fp0) {};
10396 + ~encoding_istream_fp() {};
10397 + inline int getbyte() { return fgetc(fp); };
10398 + inline int peekbyte() { int ch = fgetc(fp); ungetc(ch, fp); return ch; };
10399 + inline void ungetbyte(int ch) { ungetc(ch, fp); };
10400 +};
10401 +
10402 +class encoding_ostream {
10403 +public:
10404 + encoding_ostream() {};
10405 + virtual ~encoding_ostream() {};
10406 + virtual void putbyte(unsigned char ch) = 0;
10407 +};
10408 +
10409 +class encoding_ostream_str: public encoding_ostream {
10410 +private:
10411 + unsigned char *s;
10412 + int *i;
10413 + int len;
10414 + encoding_ostream_str() {};
10415 +public:
10416 + encoding_ostream_str(unsigned char *s0, int *i0, int max) : s(s0), i(i0), len(max) {};
10417 + ~encoding_ostream_str() {};
10418 + inline void putbyte(unsigned char ch) {
10419 + if (*i < len)
10420 + s[(*i)++] = ch;
10421 + }
10422 +};
10423 +
10424 +class encoding_ostream_fp: public encoding_ostream {
10425 +private:
10426 + FILE *fp;
10427 + const char *format;
10428 +public:
10429 + encoding_ostream_fp(FILE *ofp, const char *fmt = "%c") : fp(ofp), format(fmt) {};
10430 + ~encoding_ostream_fp() {};
10431 + inline void putbyte(unsigned char ch) {
10432 + fprintf(fp, format, ch);
10433 + }
10434 +};
10435 +
10436 +class encoding_handler {
10437 +public:
10438 + encoding_handler() {};
10439 + virtual ~encoding_handler() {};
10440 +
10441 + // name of this encoding_handler
10442 + virtual const char *name() { return ""; };
10443 +
10444 + // check if this byte is byte in multibyte character in this encoding?
10445 + virtual int is_wchar_byte(unsigned char c) { return 0; };
10446 +
10447 + // make new wchar from c0 (beginning of multibytes) and rest from `in'
10448 + virtual wchar make_wchar(unsigned char c0, encoding_istream& in) {
10449 + return wchar(c0);
10450 + }
10451 + // make new wchar from c0 (beginning of multibytes) and rest from `fp'
10452 + virtual wchar make_wchar(unsigned char c0, FILE *fp) {
10453 + encoding_istream_fp in(fp);
10454 + return make_wchar(c0, in);
10455 + }
10456 + // make new wchar from c0 (beginning of multibtyes) and rest from
10457 + // s[*i], *i will be changed to point the byte of next character.
10458 + virtual wchar make_wchar(unsigned char c0, const unsigned char *s, int *i) {
10459 + encoding_istream_str in(s, i);
10460 + return make_wchar(c0, in);
10461 + }
10462 +
10463 + // put wchar to outputstream
10464 + // returns number of bytes written
10465 + virtual int put_wchar(wchar wc, encoding_ostream& eos) {
10466 + eos.putbyte((unsigned char)wc);
10467 + return 1;
10468 + }
10469 + // put wchar to `fp' using `fmt'
10470 + // returns number of bytes written
10471 + virtual int put_wchar(wchar wc, FILE *fp, const char *fmt = "%c") {
10472 + encoding_ostream_fp out(fp, fmt);
10473 + return put_wchar(wc, out);
10474 + }
10475 + // put wchar to s[*i] (until maxlen)
10476 + // *i will be changed to point the byte of next character.
10477 + virtual int put_wchar(wchar wc, unsigned char *s, int *i, int maxlen) {
10478 + encoding_ostream_str out(s, i, maxlen);
10479 + return put_wchar(wc, out);
10480 + }
10481 +
10482 + // maximum number of bytes of multibyte character in this encoding
10483 + virtual int max_wchar_len() { return 1; };
10484 +
10485 +};
10486 +
10487 +encoding_handler* select_input_encoding_handler(const char* encoding_name);
10488 +encoding_handler* select_output_encoding_handler(const char* encoding_name);
10489 +extern encoding_handler* input_encoding;
10490 +extern encoding_handler* output_encoding;
10491 +void init_encoding_handler();
10492 +
10493 +// check if wc is wchar?
10494 +int is_wchar_code(wchar wc);
10495 +
10496 +// check if wc is wchar & can be represented in single byte?
10497 +int is_wchar_singlebyte(wchar wc);
10498 +
10499 +// get singlebyte representation of wchar (if is_wchar_singlebyte(wc))
10500 +unsigned char wchar_singlebyte(wchar wc);
10501 +
10502 +// get actual wide character code
10503 +int wchar_code(wchar wc);
10504 +
10505 +// make wchar from wide character code
10506 +int make_wchar(int w);
10507 +
10508 +#endif
10509 +
10510 +#endif /* ENCODING_H */
10511 diff -Naur groff-1.18.1.4.orig/src/include/font.h groff-1.18.1.4/src/include/font.h
10512 --- groff-1.18.1.4.orig/src/include/font.h 2002-07-09 07:57:02.000000000 +0000
10513 +++ groff-1.18.1.4/src/include/font.h 2006-10-18 18:54:44.000000000 +0000
10514 @@ -18,11 +18,17 @@
10515 with groff; see the file COPYING. If not, write to the Free Software
10516 Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
10517
10518 +#include "encoding.h"
10519 +
10520 typedef void (*FONT_COMMAND_HANDLER)(const char *, const char *,
10521 const char *, int);
10522
10523 struct font_kern_list;
10524 struct font_char_metric;
10525 +#ifdef ENABLE_MULTIBYTE
10526 +struct fontset_list;
10527 +struct font_wchar_metric;
10528 +#endif
10529 struct font_widths_cache;
10530
10531 class font {
10532 @@ -53,6 +59,9 @@
10533 const char *get_special_device_encoding(int index);
10534 const char *get_name();
10535 const char *get_internal_name();
10536 +#ifdef ENABLE_MULTIBYTE
10537 + const char *get_subfont_name(int index);
10538 +#endif
10539
10540 static int scan_papersize(const char *, const char **, double *, double *);
10541
10542 @@ -62,6 +71,9 @@
10543 static int load_desc();
10544 static int name_to_index(const char *);
10545 static int number_to_index(int);
10546 +#ifdef ENABLE_MULTIBYTE
10547 + static int wchar_index(wchar);
10548 +#endif
10549 static FONT_COMMAND_HANDLER
10550 set_unknown_desc_command_handler(FONT_COMMAND_HANDLER);
10551
10552 @@ -76,6 +88,11 @@
10553 static int spare2;
10554 static int sizescale;
10555 static int tcommand;
10556 +#ifdef ENABLE_MULTIBYTE
10557 + // XXX: should be in charinfo or font_wchar_metric?
10558 + static int lowerwchar;
10559 + static int wcharkern;
10560 +#endif
10561 static int pass_filenames;
10562 static int use_charnames_in_special;
10563
10564 @@ -83,13 +100,27 @@
10565 static const char **style_table;
10566 static const char *family;
10567 static int *sizes;
10568 +#ifdef ENABLE_MULTIBYTE
10569 + // fontsets - sub font list
10570 + static fontset_list *fontsets;
10571 + // get fontset for `wc' in current font `fname'
10572 + static int get_fontset_font(const char *fname, wchar wc);
10573 + // is the fontno's font load on demand?
10574 + static int is_on_demand(int fontno);
10575 +#endif
10576 private:
10577 unsigned ligatures;
10578 font_kern_list **kern_hash_table;
10579 int space_width;
10580 - short *ch_index;
10581 + short *ch_index; /* XXX: this is used unless font_wchar_metric. */
10582 int nindices;
10583 font_char_metric *ch;
10584 +#ifdef ENABLE_MULTIBYTE
10585 + // font metric for wchar
10586 + font_wchar_metric *wch;
10587 + // get font metric for wchar indexed by c
10588 + font_wchar_metric *get_font_wchar_metric(int c);
10589 +#endif
10590 int ch_used;
10591 int ch_size;
10592 int special;
10593 diff -Naur groff-1.18.1.4.orig/src/include/lib.h groff-1.18.1.4/src/include/lib.h
10594 --- groff-1.18.1.4.orig/src/include/lib.h 2002-03-08 07:33:49.000000000 +0000
10595 +++ groff-1.18.1.4/src/include/lib.h 2006-10-18 18:54:44.000000000 +0000
10596 @@ -88,8 +88,15 @@
10597
10598 extern char invalid_char_table[];
10599
10600 +#include "encoding.h" /* XXX: ukai */
10601 +
10602 inline int invalid_input_char(int c)
10603 {
10604 +#ifdef ENABLE_MULTIBYTE
10605 + if (input_encoding->is_wchar_byte(c))
10606 + return 0;
10607 + else
10608 +#endif
10609 return c >= 0 && invalid_char_table[c];
10610 }
10611
10612 diff -Naur groff-1.18.1.4.orig/src/include/printer.h groff-1.18.1.4/src/include/printer.h
10613 --- groff-1.18.1.4.orig/src/include/printer.h 2002-04-14 10:22:57.000000000 +0000
10614 +++ groff-1.18.1.4/src/include/printer.h 2006-10-18 18:54:44.000000000 +0000
10615 @@ -38,6 +38,8 @@
10616
10617 #include "color.h"
10618
10619 +#include "encoding.h"
10620 +
10621 struct environment {
10622 int fontno;
10623 int size;
10624 @@ -63,6 +65,9 @@
10625 printer();
10626 virtual ~printer();
10627 void load_font(int i, const char *name);
10628 +#ifdef ENABLE_MULTIBYTE
10629 + void set_wchar_char(wchar c, char *s, int i0, int len, const environment *env, int *widthp = 0);
10630 +#endif
10631 void set_ascii_char(unsigned char c, const environment *env,
10632 int *widthp = 0);
10633 void set_special_char(const char *nm, const environment *env,
10634 diff -Naur groff-1.18.1.4.orig/src/libs/libdriver/input.cc groff-1.18.1.4/src/libs/libdriver/input.cc
10635 --- groff-1.18.1.4.orig/src/libs/libdriver/input.cc 2002-09-06 08:10:38.000000000 +0000
10636 +++ groff-1.18.1.4/src/libs/libdriver/input.cc 2006-10-18 18:54:44.000000000 +0000
10637 @@ -250,6 +250,7 @@
10638
10639 #include "driver.h"
10640 #include "device.h"
10641 +#include "encoding.h"
10642
10643 #include <stdlib.h>
10644 #include <errno.h>
10645 @@ -1439,6 +1440,19 @@
10646 char *subcmd_str = get_string_arg();
10647 char subcmd = subcmd_str[0];
10648 switch (subcmd) {
10649 +#ifdef ENABLE_MULTIBYTE
10650 + case 'e': // x encoding: select encoding
10651 + {
10652 + char *str_arg = get_string_arg();
10653 + if (str_arg == 0)
10654 + warning("empty argument for `x encoding' command");
10655 + else {
10656 + select_input_encoding_handler(str_arg);
10657 + delete str_arg;
10658 + }
10659 + break;
10660 + }
10661 +#endif
10662 case 'f': // x font: mount font
10663 {
10664 IntArg n = get_integer_arg();
10665 @@ -1517,7 +1531,7 @@
10666 return stopped;
10667 }
10668
10669 -
10670 +////////////////////////////////////////////////////////////////
10671 /**********************************************************************
10672 exported part (by driver.h)
10673 **********************************************************************/
10674 @@ -1625,6 +1639,18 @@
10675 if (str_arg[0] != 'i')
10676 fatal("the third command must be `x init'");
10677 delete str_arg;
10678 +#ifdef ENABLE_MULTIBYTE
10679 + Char c = get_char();
10680 + while (is_space_or_tab(c) && c != Char('\n') && c != Char(EOF))
10681 + c = get_char();
10682 + unget_char(c);
10683 + if (c != Char('\n') && c != Char(EOF)) {
10684 + const char *tmp_encoding = get_string_arg();
10685 + if (tmp_encoding && *tmp_encoding)
10686 + select_input_encoding_handler(tmp_encoding);
10687 + delete tmp_encoding;
10688 + }
10689 +#endif
10690 skip_line_x();
10691 }
10692
10693 @@ -1763,6 +1789,18 @@
10694 size_t i = 0;
10695 while ((c = str_arg[i++]) != '\0') {
10696 EnvInt w;
10697 +#ifdef ENABLE_MULTIBYTE
10698 + if (input_encoding->is_wchar_byte(c)) {
10699 + int i0 = i - 1;
10700 + wchar wc = input_encoding->make_wchar(c, (const unsigned char *)str_arg, (int *)&i);
10701 + if (is_wchar_code(wc)) {
10702 + /* XXX: singlebyte check? */
10703 + pr->set_wchar_char(wc, str_arg, i0, i - i0, current_env, &w);
10704 + } else {
10705 + pr->set_ascii_char((unsigned char) c, current_env, &w);
10706 + }
10707 + } else
10708 +#endif
10709 pr->set_ascii_char((unsigned char) c, current_env, &w);
10710 current_env->hpos += w;
10711 }
10712 diff -Naur groff-1.18.1.4.orig/src/libs/libdriver/printer.cc groff-1.18.1.4/src/libs/libdriver/printer.cc
10713 --- groff-1.18.1.4.orig/src/libs/libdriver/printer.cc 2002-04-14 10:22:57.000000000 +0000
10714 +++ groff-1.18.1.4/src/libs/libdriver/printer.cc 2006-10-18 18:54:44.000000000 +0000
10715 @@ -27,6 +27,7 @@
10716 */
10717
10718 #include "driver.h"
10719 +#include "encoding.h"
10720
10721 printer *pr = 0;
10722
10723 @@ -138,6 +139,24 @@
10724 }
10725 }
10726
10727 +#ifdef ENABLE_MULTIBYTE
10728 +void printer::set_wchar_char(wchar c, char *s, int i0, int len, const environment *env, int *widthp)
10729 +{
10730 + unsigned char *buf = new unsigned char[len+1];
10731 + memset(buf, 0, len+1);
10732 + memcpy(buf, s+i0, len);
10733 + font *f;
10734 + int w;
10735 + int i = set_char_and_width((const char *)buf, env, &w, &f);
10736 + if (i != -1) {
10737 + set_char(c, f, env, w, (const char *)buf);
10738 + if (widthp)
10739 + *widthp = w;
10740 + }
10741 + delete [] buf;
10742 +}
10743 +#endif
10744 +
10745 void printer::set_special_char(const char *nm, const environment *env,
10746 int *widthp)
10747 {
10748 diff -Naur groff-1.18.1.4.orig/src/libs/libgroff/Makefile.sub groff-1.18.1.4/src/libs/libgroff/Makefile.sub
10749 --- groff-1.18.1.4.orig/src/libs/libgroff/Makefile.sub 2002-08-23 07:04:40.000000000 +0000
10750 +++ groff-1.18.1.4/src/libs/libgroff/Makefile.sub 2006-10-18 18:54:44.000000000 +0000
10751 @@ -6,6 +6,7 @@
10752 color.$(OBJEXT) \
10753 cset.$(OBJEXT) \
10754 device.$(OBJEXT) \
10755 + encoding.$(OBJEXT) \
10756 errarg.$(OBJEXT) \
10757 error.$(OBJEXT) \
10758 fatal.$(OBJEXT) \
10759 @@ -45,6 +46,7 @@
10760 $(srcdir)/color.cc \
10761 $(srcdir)/cset.cc \
10762 $(srcdir)/device.cc \
10763 + $(srcdir)/encoding.cc \
10764 $(srcdir)/errarg.cc \
10765 $(srcdir)/error.cc \
10766 $(srcdir)/fatal.cc \
10767 diff -Naur groff-1.18.1.4.orig/src/libs/libgroff/encoding.cc groff-1.18.1.4/src/libs/libgroff/encoding.cc
10768 --- groff-1.18.1.4.orig/src/libs/libgroff/encoding.cc 1970-01-01 00:00:00.000000000 +0000
10769 +++ groff-1.18.1.4/src/libs/libgroff/encoding.cc 2006-10-18 18:54:44.000000000 +0000
10770 @@ -0,0 +1,441 @@
10771 +// -*- C++ -*-
10772 +/* Copyright (C) 2001 Fumitoshi UKAI <ukai@debian.or.jp>
10773 +
10774 +This file is part of groff.
10775 +
10776 +groff is free software; you can redistribute it and/or modify it under
10777 +the terms of the GNU General Public License as published by the Free
10778 +Software Foundation; either version 2, or (at your option) any later
10779 +version.
10780 +
10781 +groff is distributed in the hope that it will be useful, but WITHOUT ANY
10782 +WARRANTY; without even the implied warranty of MERCHANTABILITY or
10783 +FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
10784 +for more details.
10785 +
10786 +You should have received a copy of the GNU General Public License
10787 +along with this program; if not, write to the Free Software
10788 +Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */
10789 +
10790 +#include "encoding.h"
10791 +#include "device.h"
10792 +
10793 +#include <string.h>
10794 +#ifdef ENABLE_MULTIBYTE
10795 +#include <locale.h>
10796 +#include <wchar.h>
10797 +#ifdef HAVE_LANGINFO_CODESET
10798 +#include <langinfo.h>
10799 +#else
10800 +#include <stdlib.h>
10801 +#endif
10802 +#endif
10803 +
10804 +class ascii8_handler : public encoding_handler {
10805 + // encoding handler for 8bit ascii
10806 + // no multibyte support
10807 +public:
10808 + ascii8_handler() {}
10809 + ~ascii8_handler() {}
10810 +
10811 + const char *name() { return "C"; }; /* ??? */
10812 +
10813 + inline int is_wchar_byte(unsigned char c) { return 0; }
10814 + inline wchar make_wchar(unsigned char c0, encoding_istream& eis) {
10815 + return wchar(c0);
10816 + }
10817 + inline int put_wchar(wchar wc, encoding_ostream& eos) {
10818 + eos.putbyte((unsigned char)wchar_code(wc));
10819 + return 1;
10820 + }
10821 + inline int max_wchar_len() { return 1; };
10822 +
10823 +};
10824 +
10825 +#ifdef ENABLE_MULTIBYTE
10826 +class utf8_handler: public encoding_handler {
10827 +public:
10828 + utf8_handler() { }
10829 + ~utf8_handler() { }
10830 +
10831 + const char *name() { return "UTF-8"; };
10832 +
10833 + inline int is_wchar_byte(unsigned char c) {
10834 + return (c >= 0x80);
10835 + }
10836 +
10837 + /*
10838 + 0000 0000-0000 007F 0xxxxxxx
10839 + 0000 0080-0000 07FF 110xxxxx 10xxxxxx
10840 + 0000 0800-0000 FFFF 1110xxxx 10xxxxxx 10xxxxxx
10841 +
10842 + 0001 0000-001F FFFF 11110xxx 10xxxxxx 10xxxxxx 10xxxxxx
10843 + 0020 0000-03FF FFFF 111110xx 10xxxxxx 10xxxxxx 10xxxxxx 10xxxxxx
10844 + 0400 0000-7FFF FFFF 1111110x 10xxxxxx ... 10xxxxxx
10845 + */
10846 +
10847 + inline wchar make_wchar(unsigned char c0, encoding_istream& eis) {
10848 + wchar wc = 0;
10849 + int count = 0;
10850 + if (! is_wchar_byte(c0)) {
10851 + return c0;
10852 + }
10853 + if ((c0 & 0xFC) == 0xFC) {
10854 + wc = c0 & 0x01;
10855 + count = 5;
10856 + } else if ((c0 & 0xF8) == 0xF8) {
10857 + wc = c0 & 0x03;
10858 + count = 4;
10859 + } else if ((c0 & 0xF0) == 0xF0) {
10860 + wc = c0 & 0x07;
10861 + count = 3;
10862 + } else if ((c0 & 0xE0) == 0xE0) {
10863 + wc = c0 & 0x0F;
10864 + count = 2;
10865 + } else if ((c0 & 0xC0) == 0xC0) {
10866 + wc = c0 & 0x1F;
10867 + count = 1;
10868 + }
10869 + for (; count > 0; count--) {
10870 + wc <<= 6;
10871 + int c1 = eis.getbyte();
10872 + if (! is_wchar_byte(c1)) {
10873 + /* illegal utf8 sequence? */
10874 + }
10875 + wc |= (c1 & 0x3F);
10876 + }
10877 + return -wc; // XXX: negative
10878 + }
10879 +
10880 + inline int put_wchar(wchar wc, encoding_ostream& eos) {
10881 + int count = 0;
10882 + if (! is_wchar_code(wc)) {
10883 + eos.putbyte(wc);
10884 + return 1;
10885 + }
10886 + wc = -wc; // XXX: negative -> character code
10887 +
10888 + if (wc < 0x800) {
10889 + count = 1; eos.putbyte((wc >> 6) | 0xC0);
10890 + } else if (wc < 0x10000) {
10891 + count = 2; eos.putbyte((wc >> 12) | 0xE0);
10892 + } else if (wc < 0x200000) {
10893 + count = 3; eos.putbyte((wc >> 18) | 0xF0);
10894 + } else if (wc < 0x4000000) {
10895 + count = 4; eos.putbyte((wc >> 24) | 0xf8);
10896 + } else if (wc <= 0x7fffffff) {
10897 + count = 5; eos.putbyte((wc >> 30) | 0xFC);
10898 + }
10899 + for (int i = 0; i < count; i++) {
10900 + eos.putbyte(((wc >> 6 * (count - i - 1)) & 0x3f) | 0x80);
10901 + }
10902 + return count;
10903 + }
10904 + inline int max_wchar_len() { return 6; }; /* XXX 3?*/
10905 +
10906 +};
10907 +
10908 +#define USE_ICONV
10909 +#ifdef USE_ICONV
10910 +#include <iconv.h>
10911 +#include <errno.h>
10912 +
10913 +class iconv_handler : public encoding_handler {
10914 +private:
10915 + iconv_t icd, ocd;
10916 + const char *encoding_name;
10917 + static iconv_handler *ih_header;
10918 +
10919 +public:
10920 + iconv_handler *next;
10921 +
10922 + static iconv_handler *new_iconv_handler(const char *ename) {
10923 + iconv_handler *ip;
10924 + // if already created, use it.
10925 + for (ip = ih_header; ip != NULL; ip = ip->next) {
10926 + if (strcmp(ip->name(), ename) == 0) {
10927 + return ip;
10928 + }
10929 + }
10930 + // not found, create new one.
10931 + ip = new iconv_handler(ename);
10932 + ip->next = ih_header;
10933 + ih_header = ip;
10934 + return ip;
10935 + }
10936 + iconv_handler(const char *ename) : encoding_name(ename) {
10937 + // internal code is UCS-2BE
10938 + icd = iconv_open("UCS-2BE", encoding_name);
10939 + ocd = iconv_open(encoding_name, "UCS-2BE");
10940 + };
10941 + ~iconv_handler() {};
10942 +
10943 + const char *name() { return encoding_name; };
10944 +
10945 + inline int is_wchar_byte(unsigned char c) {
10946 + return (c >= 0x80); /* ??? */
10947 + }
10948 +
10949 + inline wchar make_wchar(unsigned char c0, encoding_istream& eis) {
10950 + wchar wc = 0;
10951 + char inbuf[8], outbuf[8];
10952 + char *inp, *outp;
10953 + size_t inbytesleft, outbytesleft;
10954 + int i = 0;
10955 +
10956 + if (! is_wchar_byte(c0)) {
10957 + return c0;
10958 + }
10959 + for (inbuf[i++] = c0; ;inbuf[i++] = eis.getbyte()) {
10960 + inbytesleft = i;
10961 + outbytesleft = sizeof(outbuf);
10962 + inp = inbuf;
10963 + outp = outbuf;
10964 + size_t r = iconv(icd, &inp, &inbytesleft, &outp, &outbytesleft);
10965 + if (r == (size_t)-1) {
10966 + if (errno == EILSEQ) {
10967 + /* illegal sequence? */
10968 + return '?';
10969 + } else if (errno == EINVAL) {
10970 + /* incomplete sequence? */
10971 + continue;
10972 + } else if (errno == E2BIG) {
10973 + /* no room to output? */
10974 + return '?';
10975 + }
10976 + }
10977 + /* ok */
10978 + /* UCS-2 is 2 bytes */
10979 + wc = ((outbuf[0] & 0x0ff) << 8) | (outbuf[1] & 0x0ff);
10980 + return -wc; // XXX: negative
10981 + }
10982 + }
10983 +
10984 +
10985 + inline int put_wchar(wchar wc, encoding_ostream& eos) {
10986 + char inbuf[4], outbuf[4];
10987 + char *inp, *outp;
10988 + size_t inbytesleft, outbytesleft;
10989 +
10990 + if (!is_wchar_code(wc)) {
10991 + eos.putbyte(wc & 0x0ff);
10992 + return 1;
10993 + }
10994 + wc = -wc; // XXX: negative -> character code
10995 +
10996 + inbuf[0] = (wc >> 8) & 0x0ff;
10997 + inbuf[1] = (wc >> 0) & 0x0ff;
10998 + inbuf[2] = 0;
10999 + inbytesleft = 2;
11000 + outbytesleft = 4;
11001 + inp = inbuf;
11002 + outp = outbuf;
11003 + size_t r = iconv(ocd, &inp, &inbytesleft, &outp, &outbytesleft);
11004 + if (r == (size_t)-1) {
11005 + if (errno == EILSEQ) {
11006 + /* illegal sequence? */;
11007 + } else if (errno == EINVAL) {
11008 + /* incomplete sequence? */;
11009 + } else if (errno == E2BIG) {
11010 + /* no room to output? */;
11011 + }
11012 + eos.putbyte('?');
11013 + return 1;
11014 + }
11015 + char *op = outbuf;
11016 + int n = 0;
11017 + for (; op < outp; op++, n++) {
11018 + eos.putbyte(*op & 0x0ff);
11019 + }
11020 + return outp - outbuf;
11021 + }
11022 + inline int max_wchar_len() { return 6; }; /* XXX */
11023 +
11024 +};
11025 +#else
11026 +class euc_handler : public encoding_handler {
11027 + static const int WCTABLE_OFFSET = 0xa1;
11028 + static const int WCTABLE_SIZE = 94;
11029 + static const int EUCMASK = 0x8080;
11030 +
11031 +public:
11032 + euc_handler() {}
11033 + ~euc_handler() {};
11034 +
11035 + const char *name() { return "EUC-JP"; };
11036 +
11037 + inline int is_wchar_byte(unsigned char c) {
11038 + return (c >= 0xa1 && c <= 0xfe);
11039 + }
11040 +
11041 + inline wchar make_wchar(unsigned char c0, encoding_istream& eis) {
11042 + wchar wc;
11043 + if (! is_wchar_byte(c0)) {
11044 + return c0;
11045 + }
11046 + int c1 = eis.peekbyte();
11047 + if (! is_wchar_byte(c1)) {
11048 + eis.ungetbyte(c1);
11049 + return c0;
11050 + }
11051 + c1 = eis.getbyte();
11052 + wc = (c0 & 0xff) << 8;
11053 + wc |= (c1 & 0xff);
11054 +
11055 + if (wc == 0xa1a1)
11056 + return ' ';
11057 + return -wc;
11058 + }
11059 +
11060 + inline int put_wchar(wchar wc, encoding_ostream& eos) {
11061 + if (is_wchar_code(wc)) {
11062 + wc = -wc;
11063 + eos.putbyte((wc >> 8) & 0x0ff);
11064 + eos.putbyte((wc >> 0) & 0x0ff);
11065 + return 2;
11066 + } else {
11067 + eos.putbyte(wc & 0x0ff);
11068 + return 1;
11069 + }
11070 + }
11071 + inline int max_wchar_len() { return 2; }; /* XXX */
11072 +};
11073 +#endif /* USE_ICONV */
11074 +#endif
11075 +
11076 +static ascii8_handler ascii8;
11077 +#ifdef ENABLE_MULTIBYTE
11078 +static utf8_handler utf8;
11079 +#ifdef USE_ICONV
11080 +iconv_handler *iconv_handler::ih_header = NULL;
11081 +#else
11082 +static euc_handler eucjp;
11083 +#endif
11084 +#endif
11085 +
11086 +encoding_handler *input_encoding = &ascii8;
11087 +encoding_handler *output_encoding = &ascii8;
11088 +
11089 +static void
11090 +new_encoding_handler(encoding_handler **eptr, const char *encoding_name)
11091 +{
11092 + if (!encoding_name) {
11093 + *eptr = &ascii8;
11094 + return;
11095 + }
11096 +#ifdef ENABLE_MULTIBYTE
11097 + if (strcmp(encoding_name, "UTF-8") == 0) {
11098 + *eptr = &utf8;
11099 + return;
11100 + }
11101 +#ifdef USE_ICONV
11102 + if (strcmp(encoding_name, "C") != 0) {
11103 + *eptr = iconv_handler::new_iconv_handler(encoding_name);
11104 + return;
11105 + }
11106 +#else
11107 + // printf("encoding request: [%s]\n", encoding_name);
11108 + if (strcmp(encoding_name, "EUC-JP") == 0) {
11109 + // printf("encoding: [EUC-JP]\n");
11110 + *eptr = &eucjp;
11111 + return;
11112 + }
11113 +#endif
11114 +#endif
11115 + // default
11116 + *eptr = &ascii8;
11117 + return;
11118 +}
11119 +
11120 +encoding_handler *
11121 +select_input_encoding_handler(const char *encoding_name)
11122 +{
11123 + new_encoding_handler(&input_encoding, encoding_name);
11124 + return input_encoding;
11125 +}
11126 +
11127 +encoding_handler *
11128 +select_output_encoding_handler(const char *encoding_name)
11129 +{
11130 + new_encoding_handler(&output_encoding, encoding_name);
11131 + return output_encoding;
11132 +}
11133 +
11134 +void
11135 +init_encoding_handler()
11136 +{
11137 +#ifdef ENABLE_MULTIBYTE
11138 + const char *locale, *charset;
11139 + // groff 1 defines ISO-8859-1 as the input encoding, so this is required
11140 + // for compatibility. groff 2 will define UTF-8 (or possibly officially
11141 + // allow it to be switchable?)
11142 + select_input_encoding_handler("ISO-8859-1");
11143 + select_output_encoding_handler("C");
11144 +
11145 + locale = setlocale(LC_ALL, "");
11146 + if (locale == NULL ||
11147 + strcmp(locale, "C") == 0 || strcmp(locale, "POSIX") == 0) {
11148 + return;
11149 + }
11150 + /* check LC_CTYPE is C or POSIX */
11151 + locale = setlocale(LC_CTYPE, NULL);
11152 + if (strcmp(locale, "C") == 0 || strcmp(locale, "POSIX") == 0) {
11153 + return;
11154 + }
11155 + /* otherwise */
11156 +#if HAVE_LANGINFO_CODESET
11157 + charset = nl_langinfo(CODESET);
11158 +#else
11159 + charset = strchr(locale, '.');
11160 + if (charset)
11161 + ++charset;
11162 + else
11163 + charset = "";
11164 +#endif
11165 + if (strncmp(locale, "ja", 2) == 0 || strncmp(locale, "zh", 2) == 0 ||
11166 + (strncmp(locale, "ko", 2) == 0 && strcmp(charset, "UTF-8") == 0)) {
11167 + select_input_encoding_handler(charset);
11168 + select_output_encoding_handler(charset);
11169 + } else if ((!device || strcmp(device, "ascii8") == 0)) {
11170 + select_input_encoding_handler(NULL);
11171 + select_output_encoding_handler(NULL);
11172 + }
11173 +#endif
11174 + return;
11175 +}
11176 +
11177 +int
11178 +is_wchar_code(wchar wc)
11179 +{
11180 + return (wc < 0);
11181 +}
11182 +
11183 +int
11184 +is_wchar_singlebyte(wchar wc)
11185 +{
11186 + return ((-256 < wc) && (wc < 0));
11187 +}
11188 +
11189 +unsigned char
11190 +wchar_singlebyte(wchar wc)
11191 +{
11192 + if (wc >= 0)
11193 + return (unsigned char)wc;
11194 + else
11195 + return (unsigned char)-wc;
11196 +}
11197 +
11198 +int
11199 +wchar_code(wchar wc)
11200 +{
11201 + if (wc >= 0)
11202 + return wc;
11203 + else
11204 + return -wc;
11205 +}
11206 +
11207 +int
11208 +make_wchar(int w)
11209 +{
11210 + return -w;
11211 +}
11212 diff -Naur groff-1.18.1.4.orig/src/libs/libgroff/font.cc groff-1.18.1.4/src/libs/libgroff/font.cc
11213 --- groff-1.18.1.4.orig/src/libs/libgroff/font.cc 2002-07-23 23:50:52.000000000 +0000
11214 +++ groff-1.18.1.4/src/libs/libgroff/font.cc 2006-10-18 18:54:44.000000000 +0000
11215 @@ -25,6 +25,7 @@
11216 #include <assert.h>
11217 #include <math.h>
11218 #include <stdlib.h>
11219 +#include "encoding.h" // XXX: ukai
11220 #include "errarg.h"
11221 #include "error.h"
11222 #include "cset.h"
11223 @@ -43,8 +44,39 @@
11224 int italic_correction;
11225 int subscript_correction;
11226 char *special_device_coding;
11227 +#ifdef ENABLE_MULTIBYTE
11228 + char *subfont_name;
11229 +#endif
11230 };
11231
11232 +#ifdef ENABLE_MULTIBYTE
11233 +struct fontset_list {
11234 + struct fontset_list *next;
11235 + char *primary_font_name;
11236 + int fontset_font;
11237 + wchar start_code;
11238 + wchar end_code;
11239 + int on_demand;
11240 +};
11241 +
11242 +fontset_list *font::fontsets = NULL;
11243 +
11244 +struct font_wchar_metric {
11245 + struct font_wchar_metric *next;
11246 + char type;
11247 + int start_code;
11248 + int end_code;
11249 + int width;
11250 + int height;
11251 + int depth;
11252 + int pre_math_space;
11253 + int italic_correction;
11254 + int subscript_correction;
11255 + char *special_device_coding;
11256 + char *subfont_name;
11257 +};
11258 +#endif
11259 +
11260 struct font_kern_list {
11261 int i1;
11262 int i2;
11263 @@ -149,7 +181,11 @@
11264
11265 font::font(const char *s)
11266 : ligatures(0), kern_hash_table(0), space_width(0), ch_index(0), nindices(0),
11267 - ch(0), ch_used(0), ch_size(0), special(0), widths_cache(0)
11268 + ch(0),
11269 +#ifdef ENABLE_MULTIBYTE
11270 + wch(0),
11271 +#endif
11272 + ch_used(0), ch_size(0), special(0), widths_cache(0)
11273 {
11274 name = new char[strlen(s) + 1];
11275 strcpy(name, s);
11276 @@ -183,6 +219,17 @@
11277 widths_cache = widths_cache->next;
11278 delete tem;
11279 }
11280 +#ifdef ENABLE_MULTIBYTE
11281 + struct font_wchar_metric *wcp, *nwcp;
11282 + for (wcp = wch; wcp != NULL; wcp = nwcp) {
11283 + nwcp = wcp->next;
11284 + if (wcp->special_device_coding)
11285 + delete [] wcp->special_device_coding;
11286 + if (wcp->subfont_name)
11287 + delete [] wcp->subfont_name;
11288 + delete wcp;
11289 + }
11290 +#endif
11291 }
11292
11293 static int scale_round(int n, int x, int y)
11294 @@ -244,6 +291,11 @@
11295
11296 int font::contains(int c)
11297 {
11298 +#ifdef ENABLE_MULTIBYTE
11299 + font_wchar_metric *wcp = get_font_wchar_metric(c);
11300 + if (wcp != NULL)
11301 + return 1;
11302 +#endif
11303 return c >= 0 && c < nindices && ch_index[c] >= 0;
11304 }
11305
11306 @@ -266,8 +318,31 @@
11307 a_delete width;
11308 }
11309
11310 +#ifdef ENABLE_MULTIBYTE
11311 +struct font_wchar_metric *
11312 +font::get_font_wchar_metric(int c)
11313 +{
11314 + /* XXX: c is font index, not char code... */
11315 + /* XXX: we assume wchar_code == font index code for wchars */
11316 + /* XXX: does really code conflicts with index? */
11317 + struct font_wchar_metric *wcp;
11318 + for (wcp = wch; wcp != NULL; wcp = wcp->next) {
11319 + if (wcp->start_code <= wchar_code(c) && wchar_code(c) <= wcp->end_code) {
11320 + return wcp;
11321 + }
11322 + }
11323 + return NULL;
11324 +}
11325 +#endif
11326 +
11327 int font::get_width(int c, int point_size)
11328 {
11329 +#ifdef ENABLE_MULTIBYTE
11330 + font_wchar_metric *wcp = get_font_wchar_metric(c);
11331 + if (wcp != NULL) {
11332 + return scale(wcp->width, point_size);
11333 + }
11334 +#endif
11335 assert(c >= 0 && c < nindices);
11336 int i = ch_index[c];
11337 assert(i >= 0);
11338 @@ -299,30 +374,60 @@
11339
11340 int font::get_height(int c, int point_size)
11341 {
11342 +#ifdef ENABLE_MULTIBYTE
11343 + font_wchar_metric *wcp = get_font_wchar_metric(c);
11344 + if (wcp != NULL) {
11345 + return scale(wcp->height, point_size);
11346 + }
11347 +#endif
11348 assert(c >= 0 && c < nindices && ch_index[c] >= 0);
11349 return scale(ch[ch_index[c]].height, point_size);
11350 }
11351
11352 int font::get_depth(int c, int point_size)
11353 {
11354 +#ifdef ENABLE_MULTIBYTE
11355 + font_wchar_metric *wcp = get_font_wchar_metric(c);
11356 + if (wcp != NULL) {
11357 + return scale(wcp->depth, point_size);
11358 + }
11359 +#endif
11360 assert(c >= 0 && c < nindices && ch_index[c] >= 0);
11361 return scale(ch[ch_index[c]].depth, point_size);
11362 }
11363
11364 int font::get_italic_correction(int c, int point_size)
11365 {
11366 +#ifdef ENABLE_MULTIBYTE
11367 + font_wchar_metric *wcp = get_font_wchar_metric(c);
11368 + if (wcp != NULL) {
11369 + return scale(wcp->italic_correction, point_size);
11370 + }
11371 +#endif
11372 assert(c >= 0 && c < nindices && ch_index[c] >= 0);
11373 return scale(ch[ch_index[c]].italic_correction, point_size);
11374 }
11375
11376 int font::get_left_italic_correction(int c, int point_size)
11377 {
11378 +#ifdef ENABLE_MULTIBYTE
11379 + font_wchar_metric *wcp = get_font_wchar_metric(c);
11380 + if (wcp != NULL) {
11381 + return scale(wcp->pre_math_space, point_size);
11382 + }
11383 +#endif
11384 assert(c >= 0 && c < nindices && ch_index[c] >= 0);
11385 return scale(ch[ch_index[c]].pre_math_space, point_size);
11386 }
11387
11388 int font::get_subscript_correction(int c, int point_size)
11389 {
11390 +#ifdef ENABLE_MULTIBYTE
11391 + font_wchar_metric *wcp = get_font_wchar_metric(c);
11392 + if (wcp != NULL) {
11393 + return scale(wcp->subscript_correction, point_size);
11394 + }
11395 +#endif
11396 assert(c >= 0 && c < nindices && ch_index[c] >= 0);
11397 return scale(ch[ch_index[c]].subscript_correction, point_size);
11398 }
11399 @@ -371,12 +476,24 @@
11400
11401 int font::get_character_type(int c)
11402 {
11403 +#ifdef ENABLE_MULTIBYTE
11404 + font_wchar_metric *wcp = get_font_wchar_metric(c);
11405 + if (wcp != NULL) {
11406 + return wcp->type;
11407 + }
11408 +#endif
11409 assert(c >= 0 && c < nindices && ch_index[c] >= 0);
11410 return ch[ch_index[c]].type;
11411 }
11412
11413 int font::get_code(int c)
11414 {
11415 +#ifdef ENABLE_MULTIBYTE
11416 + font_wchar_metric *wcp = get_font_wchar_metric(c);
11417 + if (wcp != NULL) {
11418 + return c;
11419 + }
11420 +#endif
11421 assert(c >= 0 && c < nindices && ch_index[c] >= 0);
11422 return ch[ch_index[c]].code;
11423 }
11424 @@ -393,10 +510,26 @@
11425
11426 const char *font::get_special_device_encoding(int c)
11427 {
11428 +#ifdef ENABLE_MULTIBYTE
11429 + font_wchar_metric *wcp = get_font_wchar_metric(c);
11430 + if (wcp != NULL)
11431 + return wcp->special_device_coding;
11432 +#endif
11433 assert(c >= 0 && c < nindices && ch_index[c] >= 0);
11434 return( ch[ch_index[c]].special_device_coding );
11435 }
11436
11437 +#ifdef ENABLE_MULTIBYTE
11438 +const char *font::get_subfont_name(int c)
11439 +{
11440 + font_wchar_metric *wcp = get_font_wchar_metric(c);
11441 + if (wcp != NULL)
11442 + return wcp->subfont_name;
11443 + assert(c >= 0 && c < nindices && ch_index[c] >= 0);
11444 + return ch[ch_index[c]].subfont_name;
11445 +}
11446 +#endif
11447 +
11448 void font::alloc_ch_index(int index)
11449 {
11450 if (nindices == 0) {
11451 @@ -554,9 +687,11 @@
11452 return 0;
11453 }
11454
11455 +
11456 // If the font can't be found, then if not_found is non-NULL, it will be set
11457 // to 1 otherwise a message will be printed.
11458
11459 +
11460 int font::load(int *not_found)
11461 {
11462 char *path;
11463 @@ -570,7 +705,7 @@
11464 }
11465 text_file t(fp, path);
11466 t.skip_comments = 1;
11467 - char *p;
11468 + char *p = NULL;
11469 for (;;) {
11470 if (!t.next()) {
11471 t.error("missing charset command");
11472 @@ -681,6 +816,9 @@
11473 }
11474 else if (strcmp(command, "charset") == 0) {
11475 had_charset = 1;
11476 +#ifdef ENABLE_MULTIBYTE
11477 + int had_range = 0;
11478 +#endif
11479 int last_index = -1;
11480 for (;;) {
11481 if (!t.next()) {
11482 @@ -695,6 +833,11 @@
11483 command = nm;
11484 break;
11485 }
11486 +#ifdef ENABLE_MULTIBYTE
11487 + int start_code = 0;
11488 + int end_code = 0;
11489 + int nrange = sscanf(nm, "u%X..u%X", &start_code, &end_code);
11490 +#endif
11491 if (p[0] == '"') {
11492 if (last_index == -1) {
11493 t.error("first charset entry is duplicate");
11494 @@ -711,7 +854,64 @@
11495 }
11496 copy_entry(index, last_index);
11497 }
11498 +#ifdef ENABLE_MULTIBYTE
11499 + else if (nrange == 2) {
11500 + had_range = 1;
11501 + font_wchar_metric *wcp = new font_wchar_metric;
11502 + wcp->start_code = start_code;
11503 + wcp->end_code = end_code;
11504 + wcp->height = 0;
11505 + wcp->depth = 0;
11506 + wcp->pre_math_space = 0;
11507 + wcp->italic_correction = 0;
11508 + wcp->subscript_correction = 0;
11509 + int nparms = sscanf(p, "%d,%d,%d,%d,%d,%d",
11510 + &wcp->width, &wcp->height, &wcp->depth,
11511 + &wcp->italic_correction,
11512 + &wcp->pre_math_space,
11513 + &wcp->subscript_correction);
11514 + if (nparms < 1) {
11515 + t.error("bad width for `%1'", nm);
11516 + return 0;
11517 + }
11518 + p = strtok(0, WS);
11519 + if (p == 0) {
11520 + t.error("missing character type for `%1'", nm);
11521 + return 0;
11522 + }
11523 + int type;
11524 + if (sscanf(p, "%d", &type) != 1) {
11525 + t.error("bad character type for `%1'", nm);
11526 + return 0;
11527 + }
11528 + if (type < 0 || type > 255) {
11529 + t.error("character type `%1' out of range", type);
11530 + return 0;
11531 + }
11532 + wcp->type = type;
11533 +
11534 + p = strtok(0, WS);
11535 + if ((p == 0) || (strcmp(p, "--") == 0)) {
11536 + wcp->subfont_name = NULL;
11537 + } else {
11538 + wcp->subfont_name = new char[strlen(p) + 1];
11539 + strcpy(wcp->subfont_name, p);
11540 + }
11541 +
11542 + p = strtok(0, WS);
11543 + if ((p == NULL) || (strcmp(p, "--") == 0)) {
11544 + wcp->special_device_coding = NULL;
11545 + } else {
11546 + wcp->special_device_coding = new char[strlen(p) + 1];
11547 + strcpy(wcp->special_device_coding, p);
11548 + }
11549 + wcp->next = wch;
11550 + wch = wcp;
11551 + p = NULL;
11552 + }
11553 +#endif
11554 else {
11555 +
11556 font_char_metric metric;
11557 metric.height = 0;
11558 metric.depth = 0;
11559 @@ -747,6 +947,16 @@
11560 t.error("missing code for `%1'", nm);
11561 return 0;
11562 }
11563 +#ifdef ENABLE_MULTIBYTE
11564 + char *subp = strchr(p, ':');
11565 + if (subp) {
11566 + *subp++ = '\0';
11567 + metric.subfont_name = new char[strlen(subp) + 1];
11568 + strcpy(metric.subfont_name, subp);
11569 + } else {
11570 + metric.subfont_name = NULL;
11571 + }
11572 +#endif
11573 char *ptr;
11574 metric.code = (int)strtol(p, &ptr, 0);
11575 if (metric.code == 0 && ptr == p) {
11576 @@ -777,7 +987,11 @@
11577 }
11578 }
11579 }
11580 +#ifdef ENABLE_MULTIBYTE
11581 + if (!had_range && last_index == -1) {
11582 +#else
11583 if (last_index == -1) {
11584 +#endif
11585 t.error("I didn't seem to find any characters");
11586 return 0;
11587 }
11588 @@ -811,6 +1025,11 @@
11589 { "biggestfont", &font::biggestfont },
11590 { "spare2", &font::spare2 },
11591 { "sizescale", &font::sizescale }
11592 +#ifdef ENABLE_MULTIBYTE
11593 + ,
11594 + { "lowerwchar", &font::lowerwchar },
11595 + { "wcharkern", &font::wcharkern }
11596 +#endif
11597 };
11598
11599 int font::load_desc()
11600 @@ -981,6 +1200,67 @@
11601 tcommand = 1;
11602 else if (strcmp("use_charnames_in_special", p) == 0)
11603 use_charnames_in_special = 1;
11604 +#ifdef ENABLE_MULTIBYTE
11605 + else if (strcmp("fontset", p) == 0) {
11606 + /* fontset <primary-fontname> <fontname> <code>..<code> [ondemand] */
11607 + p = strtok(0, WS);
11608 + if (p == NULL) {
11609 + t.error("no primary font for fontset");
11610 + return 0;
11611 + }
11612 + char *pfont = NULL;
11613 + if (strcmp(p, "-") != 0) {
11614 + pfont = new char[strlen(p)+1];
11615 + strcpy(pfont, p);
11616 + }
11617 + p = strtok(0, WS);
11618 + if (p == NULL) {
11619 + t.error("no fontset font for `%1'",
11620 + pfont ? pfont : "-");
11621 + return 0;
11622 + }
11623 + int fontset_font = 0;
11624 + for (int i = 0; i < nfonts; i++) {
11625 + if (strcmp(p, font_name_table[i]) == 0) {
11626 + fontset_font = i;
11627 + break;
11628 + }
11629 + }
11630 + if (fontset_font == nfonts) {
11631 + t.error("fontset font `%1' for font `%2' not defined",
11632 + p, pfont ? pfont : "-");
11633 + return 0;
11634 + }
11635 + p = strtok(0, WS);
11636 + if (p == NULL) {
11637 + t.error("no range for fontset font `%1' for font `%2'",
11638 + font_name_table[fontset_font],
11639 + pfont ? pfont : "-");
11640 + return 0;
11641 + }
11642 + wchar start_code = 0;
11643 + wchar end_code = 0;
11644 + int nparms = sscanf(p, "%x..%x", &start_code, &end_code);
11645 + if (nparms != 2) {
11646 + t.error("invalid range format `%1'", p);
11647 + return 0;
11648 + }
11649 + p = strtok(0, WS);
11650 + int on_demand = 0;
11651 + if (p != NULL && strcmp(p, "ondemand") == 0) {
11652 + on_demand = 1;
11653 + }
11654 + /* XXX */
11655 + fontset_list *fl = new fontset_list;
11656 + fl->primary_font_name = pfont;
11657 + fl->fontset_font = fontset_font;
11658 + fl->start_code = start_code;
11659 + fl->end_code = end_code;
11660 + fl->on_demand = on_demand;
11661 + fl->next = fontsets;
11662 + fontsets = fl;
11663 + }
11664 +#endif
11665 else if (strcmp("charset", p) == 0)
11666 break;
11667 else if (unknown_desc_command_handler) {
11668 @@ -1020,6 +1300,39 @@
11669 return 1;
11670 }
11671
11672 +#ifdef ENABLE_MULTIBYTE
11673 +int
11674 +font::get_fontset_font(const char *fname, wchar wc) {
11675 + fontset_list *fl;
11676 + int avail_fontno = -1;
11677 + wc = wchar_code(wc);
11678 + for (fl = fontsets; fl != NULL; fl = fl->next) {
11679 + if (fl->primary_font_name == NULL) {
11680 + if (fl->start_code <= wc && wc <= fl->end_code) {
11681 + avail_fontno = fl->fontset_font;
11682 + }
11683 + }
11684 + else if (fname && strcmp(fl->primary_font_name, fname) == 0) {
11685 + if (fl->start_code <= wc && wc <= fl->end_code) {
11686 + return fl->fontset_font;
11687 + }
11688 + }
11689 + }
11690 + return avail_fontno;
11691 +}
11692 +
11693 +int
11694 +font::is_on_demand(int fontno) {
11695 + fontset_list *fl;
11696 + for (fl = fontsets; fl != NULL; fl = fl->next) {
11697 + if (fl->fontset_font == fontno) {
11698 + return fl->on_demand;
11699 + }
11700 + }
11701 + return 0;
11702 +}
11703 +#endif
11704 +
11705 void font::handle_unknown_font_command(const char *, const char *,
11706 const char *, int)
11707 {
11708 diff -Naur groff-1.18.1.4.orig/src/libs/libgroff/fontfile.cc groff-1.18.1.4/src/libs/libgroff/fontfile.cc
11709 --- groff-1.18.1.4.orig/src/libs/libgroff/fontfile.cc 2002-05-31 14:31:01.000000000 +0000
11710 +++ groff-1.18.1.4/src/libs/libgroff/fontfile.cc 2006-10-18 18:54:44.000000000 +0000
11711 @@ -24,6 +24,7 @@
11712 #include <assert.h>
11713 #include <stdlib.h>
11714 #include <errno.h>
11715 +#include "encoding.h" // XXX: ukai
11716 #include "font.h"
11717 #include "searchpath.h"
11718 #include "device.h"
11719 @@ -36,6 +37,10 @@
11720 int font::res = 0;
11721 int font::hor = 1;
11722 int font::vert = 1;
11723 +#ifdef ENABLE_MULTIBYTE
11724 +int font::lowerwchar = 0;
11725 +int font::wcharkern = 0;
11726 +#endif
11727 int font::unitwidth = 0;
11728 int font::paperwidth = 0;
11729 int font::paperlength = 0;
11730 diff -Naur groff-1.18.1.4.orig/src/libs/libgroff/nametoindex.cc groff-1.18.1.4/src/libs/libgroff/nametoindex.cc
11731 --- groff-1.18.1.4.orig/src/libs/libgroff/nametoindex.cc 2002-04-05 20:55:38.000000000 +0000
11732 +++ groff-1.18.1.4/src/libs/libgroff/nametoindex.cc 2006-10-18 18:54:44.000000000 +0000
11733 @@ -24,6 +24,7 @@
11734 #include <ctype.h>
11735 #include <assert.h>
11736 #include <stdlib.h>
11737 +#include "encoding.h" // XXX: ukai
11738 #include "errarg.h"
11739 #include "error.h"
11740 #include "font.h"
11741 @@ -37,6 +38,9 @@
11742 character_indexer();
11743 ~character_indexer();
11744 int ascii_char_index(unsigned char);
11745 +#ifdef ENABLE_MULTIBYTE
11746 + int wchar_index(wchar);
11747 +#endif
11748 int named_char_index(const char *);
11749 int numbered_char_index(int);
11750 private:
11751 @@ -68,6 +72,13 @@
11752 return ascii_index[c];
11753 }
11754
11755 +#ifdef ENABLE_MULTIBYTE
11756 +int character_indexer::wchar_index(wchar wc)
11757 +{
11758 + return wc; /* XXX: wchar code == index */
11759 +}
11760 +#endif
11761 +
11762 int character_indexer::numbered_char_index(int n)
11763 {
11764 if (n >= 0 && n < NSMALL) {
11765 @@ -103,6 +114,30 @@
11766 int font::name_to_index(const char *s)
11767 {
11768 assert(s != 0 && s[0] != '\0' && s[0] != ' ');
11769 +#ifdef ENABLE_MULTIBYTE
11770 + {
11771 + int i = 1;
11772 + wchar wc = input_encoding->make_wchar(s[0], (const unsigned char *)s, &i);
11773 + /* XXX
11774 + * if wchar can be represented in single byte (<256),
11775 + * it should be the same as char<wc>.
11776 + */
11777 + if (is_wchar_singlebyte(wc)) {
11778 + return indexer.ascii_char_index(wchar_singlebyte(wc));
11779 + }
11780 + if (is_wchar_code(wc)) {
11781 + return indexer.wchar_index(wc);
11782 + }
11783 + /* XXX: uA1A1 and \xa1a1 are synonyms */
11784 + if (s[0] == 'u') {
11785 + char *res;
11786 + long n = strtol(s + 1, &res, 16);
11787 + if (res != s + 1 && *res == '\0') {
11788 + return indexer.wchar_index(n);
11789 + }
11790 + }
11791 + }
11792 +#endif
11793 if (s[1] == '\0')
11794 return indexer.ascii_char_index(s[0]);
11795 /* char128 and \200 are synonyms */
11796 @@ -115,3 +150,9 @@
11797 return indexer.named_char_index(s);
11798 }
11799
11800 +#ifdef ENABLE_MULTIBYTE
11801 +int font::wchar_index(wchar wc)
11802 +{
11803 + return indexer.wchar_index(wc);
11804 +}
11805 +#endif
11806 diff -Naur groff-1.18.1.4.orig/src/libs/libgroff/searchpath.cc groff-1.18.1.4/src/libs/libgroff/searchpath.cc
11807 --- groff-1.18.1.4.orig/src/libs/libgroff/searchpath.cc 2001-08-19 21:32:28.000000000 +0000
11808 +++ groff-1.18.1.4/src/libs/libgroff/searchpath.cc 2006-10-18 18:54:44.000000000 +0000
11809 @@ -19,6 +19,7 @@
11810 with groff; see the file COPYING. If not, write to the Free Software
11811 Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
11812
11813 +#include "encoding.h"
11814 #include "lib.h"
11815
11816 #include <stdlib.h>
11817 diff -Naur groff-1.18.1.4.orig/src/libs/libgroff/tmpfile.cc groff-1.18.1.4/src/libs/libgroff/tmpfile.cc
11818 --- groff-1.18.1.4.orig/src/libs/libgroff/tmpfile.cc 2002-09-06 07:50:42.000000000 +0000
11819 +++ groff-1.18.1.4/src/libs/libgroff/tmpfile.cc 2006-10-18 18:54:44.000000000 +0000
11820 @@ -24,6 +24,7 @@
11821 #include <errno.h>
11822 #include <stdlib.h>
11823
11824 +#include "encoding.h"
11825 #include "posix.h"
11826 #include "errarg.h"
11827 #include "error.h"
11828 diff -Naur groff-1.18.1.4.orig/src/preproc/eqn/box.cc groff-1.18.1.4/src/preproc/eqn/box.cc
11829 --- groff-1.18.1.4.orig/src/preproc/eqn/box.cc 2002-04-04 14:04:45.000000000 +0000
11830 +++ groff-1.18.1.4/src/preproc/eqn/box.cc 2006-10-18 18:54:44.000000000 +0000
11831 @@ -80,7 +80,7 @@
11832
11833 int nroff = 0; // should we grok ndefine or tdefine?
11834
11835 -struct {
11836 +struct S {
11837 const char *name;
11838 int *ptr;
11839 } param_table[] = {
11840 diff -Naur groff-1.18.1.4.orig/src/preproc/eqn/eqn.y groff-1.18.1.4/src/preproc/eqn/eqn.y
11841 --- groff-1.18.1.4.orig/src/preproc/eqn/eqn.y 2000-02-06 09:38:01.000000000 +0000
11842 +++ groff-1.18.1.4/src/preproc/eqn/eqn.y 2006-10-18 18:54:44.000000000 +0000
11843 @@ -21,6 +21,7 @@
11844 #include <string.h>
11845 #include <stdlib.h>
11846
11847 +#include "encoding.h" /* XXX */
11848 #include "lib.h"
11849 #include "box.h"
11850 extern int non_empty_flag;
11851 diff -Naur groff-1.18.1.4.orig/src/preproc/eqn/lex.cc groff-1.18.1.4/src/preproc/eqn/lex.cc
11852 --- groff-1.18.1.4.orig/src/preproc/eqn/lex.cc 2002-02-10 01:22:11.000000000 +0000
11853 +++ groff-1.18.1.4/src/preproc/eqn/lex.cc 2006-10-18 18:54:44.000000000 +0000
11854 @@ -23,6 +23,7 @@
11855 #include "eqn_tab.h"
11856 #include "stringclass.h"
11857 #include "ptable.h"
11858 +#include "encoding.h"
11859
11860 struct definition {
11861 char is_macro;
11862 @@ -375,6 +376,11 @@
11863 lex_error("invalid input character code %1", c);
11864 else {
11865 line += char(c);
11866 +#ifdef ENABLE_MULTIBYTE
11867 + if (input_encoding->is_wchar_byte(c)) {
11868 + line += char(getc(fp));
11869 + }
11870 +#endif
11871 if (c == '\n')
11872 break;
11873 }
11874 diff -Naur groff-1.18.1.4.orig/src/preproc/eqn/main.cc groff-1.18.1.4/src/preproc/eqn/main.cc
11875 --- groff-1.18.1.4.orig/src/preproc/eqn/main.cc 2002-02-19 16:28:31.000000000 +0000
11876 +++ groff-1.18.1.4/src/preproc/eqn/main.cc 2006-10-18 18:54:44.000000000 +0000
11877 @@ -258,6 +258,7 @@
11878 program_name = argv[0];
11879 static char stderr_buf[BUFSIZ];
11880 setbuf(stderr, stderr_buf);
11881 + init_encoding_handler();
11882 int opt;
11883 int load_startup_file = 1;
11884 static const struct option long_options[] = {
11885 diff -Naur groff-1.18.1.4.orig/src/preproc/eqn/text.cc groff-1.18.1.4/src/preproc/eqn/text.cc
11886 --- groff-1.18.1.4.orig/src/preproc/eqn/text.cc 2000-02-06 09:38:06.000000000 +0000
11887 +++ groff-1.18.1.4/src/preproc/eqn/text.cc 2006-10-18 18:54:44.000000000 +0000
11888 @@ -21,13 +21,20 @@
11889 #include "eqn.h"
11890 #include "pbox.h"
11891 #include "ptable.h"
11892 +#include "encoding.h"
11893
11894 class char_box : public simple_box {
11895 unsigned char c;
11896 +#ifdef ENABLE_MULTIBYTE
11897 + wchar wc;
11898 +#endif
11899 char next_is_italic;
11900 char prev_is_italic;
11901 public:
11902 char_box(unsigned char);
11903 +#ifdef ENABLE_MULTIBYTE
11904 + char_box(unsigned char, wchar);
11905 +#endif
11906 void debug_print();
11907 void output();
11908 int is_char();
11909 @@ -165,11 +172,22 @@
11910 }
11911
11912 char_box::char_box(unsigned char cc)
11913 -: c(cc), next_is_italic(0), prev_is_italic(0)
11914 +: c(cc),
11915 +#ifdef ENABLE_MULTIBYTE
11916 + wc(cc),
11917 +#endif
11918 + next_is_italic(0), prev_is_italic(0)
11919 {
11920 spacing_type = char_table[c].spacing_type;
11921 }
11922
11923 +#ifdef ENABLE_MULTIBYTE
11924 +char_box::char_box(unsigned char cc, wchar wc)
11925 +: c(cc), wc(wc), next_is_italic(0), prev_is_italic(0)
11926 +{
11927 +}
11928 +#endif
11929 +
11930 void char_box::hint(unsigned flags)
11931 {
11932 if (flags & HINT_PREV_IS_ITALIC)
11933 @@ -188,7 +206,11 @@
11934 if (c == '\\')
11935 fputs("\\e", stdout);
11936 else
11937 +#ifdef ENABLE_MULTIBYTE
11938 + output_encoding->put_wchar(wc, stdout);
11939 +#else
11940 putchar(c);
11941 +#endif
11942 if (!next_is_italic)
11943 fputs("\\/", stdout);
11944 else
11945 @@ -497,6 +519,14 @@
11946 break;
11947 default:
11948 normal_char:
11949 +#ifdef ENABLE_MULTIBYTE
11950 + if (input_encoding->is_wchar_byte(c)) {
11951 + int i = 1;
11952 + wchar wc = input_encoding->make_wchar(c, (unsigned char *)s, &i);
11953 + b = new char_box('A', wc); // char_info of wc is same the 'A'.
11954 + s += i;
11955 + } else
11956 +#endif
11957 b = new char_box(c);
11958 break;
11959 }
11960 diff -Naur groff-1.18.1.4.orig/src/preproc/html/pre-html.cc groff-1.18.1.4/src/preproc/html/pre-html.cc
11961 --- groff-1.18.1.4.orig/src/preproc/html/pre-html.cc 2002-09-05 23:37:01.000000000 +0000
11962 +++ groff-1.18.1.4/src/preproc/html/pre-html.cc 2006-10-18 18:54:44.000000000 +0000
11963 @@ -63,6 +63,10 @@
11964 #define DEFAULT_IMAGE_RES 100 // number of pixels per inch resolution
11965 #define IMAGE_BOARDER_PIXELS 0
11966 #define INLINE_LEADER_CHAR '\\'
11967 +#define A4_LENGTH 841890 // taken from devps/Makefile.sub
11968 +#define LETTER_LENGTH 792000 // taken from devps/Makefile.sub
11969 +#define A4_OFFSET 0
11970 +#define LETTER_OFFSET 50 // 50/72 of an inch
11971
11972 #define TRANSPARENT "-background white -transparent white"
11973 #define MIN_ALPHA_BITS 0
11974 @@ -104,6 +108,7 @@
11975 static char *macroset_template= NULL; // image template passed to troff by -D
11976 static int troff_arg = 0; // troff arg index
11977 static char *image_dir = NULL; // user specified image directory
11978 +static char *gsPaper = NULL; // the paper size that gs must use
11979 static int textAlphaBits = MAX_ALPHA_BITS;
11980 static int graphicAlphaBits = MAX_ALPHA_BITS;
11981 static char *antiAlias = NULL; // antialias arguments we pass to gs.
11982 @@ -211,6 +216,54 @@
11983 }
11984
11985 /*
11986 + * get_papersize - returns an integer determining the paper length from
11987 + * devps/DESC
11988 + */
11989 +
11990 +static int get_papersize (void)
11991 +{
11992 + char *pathp;
11993 + FILE *f;
11994 + int res;
11995 + f = font_path.open_file("devps/DESC", &pathp);
11996 + if (f == 0)
11997 + fatal("can't open devps/DESC");
11998 + while (get_line(f)) {
11999 + int n = sscanf(linebuf, "paperlength %d", &res);
12000 + if (n >= 1) {
12001 + fclose(f);
12002 + return res;
12003 + }
12004 + if (!strncmp(linebuf, "papersize", 9)) {
12005 + double length;
12006 + char *p = linebuf + 9;
12007 + while (*p == ' ' || *p == '\t')
12008 + p++;
12009 + for (p = strtok(p, " \t"); p; p = strtok(0, " \t")) {
12010 + if (font::scan_papersize(p, 0, &length, 0)) {
12011 + fclose(f);
12012 + return int(length * postscriptRes + 0.5);
12013 + }
12014 + }
12015 + fatal("bad argument to `papersize' keyword in devps/DESC");
12016 + }
12017 + }
12018 + fatal("can't find `papersize' or `paperlength' keyword in devps/DESC");
12019 + return 0;
12020 +}
12021 +
12022 +/*
12023 + * determine_vertical_offset - works out the default vertical offset from
12024 + * the page length
12025 + */
12026 +
12027 +static void determine_vertical_offset (void)
12028 +{
12029 + vertical_offset = ((A4_LENGTH-get_papersize())*72)/postscriptRes;
12030 + gsPaper = "-sPAPERSIZE=a4";
12031 +}
12032 +
12033 +/*
12034 * html_system - a wrapper for system()
12035 */
12036
12037 @@ -1469,6 +1522,7 @@
12038 int ok=1;
12039
12040 postscriptRes = get_resolution();
12041 + determine_vertical_offset();
12042 i = scanArguments(argc, argv);
12043 setupAntiAlias();
12044 checkImageDir();
12045 diff -Naur groff-1.18.1.4.orig/src/preproc/refer/command.cc groff-1.18.1.4/src/preproc/refer/command.cc
12046 --- groff-1.18.1.4.orig/src/preproc/refer/command.cc 2002-02-10 01:22:12.000000000 +0000
12047 +++ groff-1.18.1.4/src/preproc/refer/command.cc 2006-10-18 18:54:44.000000000 +0000
12048 @@ -632,7 +632,7 @@
12049 ? means that the previous argument is optional, * means that the
12050 previous argument can occur any number of times. */
12051
12052 -struct {
12053 +struct S {
12054 const char *name;
12055 command_t func;
12056 const char *arg_types;
12057 diff -Naur groff-1.18.1.4.orig/src/roff/groff/groff.cc groff-1.18.1.4/src/roff/groff/groff.cc
12058 --- groff-1.18.1.4.orig/src/roff/groff/groff.cc 2002-09-22 08:35:48.000000000 +0000
12059 +++ groff-1.18.1.4/src/roff/groff/groff.cc 2006-10-18 18:54:44.000000000 +0000
12060 @@ -107,6 +107,7 @@
12061 program_name = argv[0];
12062 static char stderr_buf[BUFSIZ];
12063 setbuf(stderr, stderr_buf);
12064 + init_encoding_handler();
12065 assert(NCOMMANDS <= MAX_COMMANDS);
12066 string Pargs, Largs, Fargs;
12067 int vflag = 0;
12068 diff -Naur groff-1.18.1.4.orig/src/roff/groff/groff.man groff-1.18.1.4/src/roff/groff/groff.man
12069 --- groff-1.18.1.4.orig/src/roff/groff/groff.man 2002-07-13 09:28:17.000000000 +0000
12070 +++ groff-1.18.1.4/src/roff/groff/groff.man 2006-10-18 18:54:44.000000000 +0000
12071 @@ -15,6 +15,10 @@
12072 A copy of the Free Documentation License is included as a file called
12073 FDL in the main directory of the groff source package.
12074 ..
12075 +.ig
12076 +A copy of the GNU Free Documentation License is also available in this
12077 +Debian package as /usr/share/doc/groff-base/copyright.
12078 +..
12079 .
12080 .\" --------------------------------------------------------------------
12081 .\" Setup
12082 @@ -118,7 +122,7 @@
12083 .c --------------------------------------------------------------------
12084 .c ShortOpt ([char [punct]])
12085 .c
12086 -.c `-c' somwhere in the text
12087 +.c `-c' somewhere in the text
12088 .c second arg is punctuation
12089 .c
12090 .de ShortOpt
12091 @@ -130,7 +134,7 @@
12092 .c --------------------------------------------------------------------
12093 .c LongOpt ([name [punct]])
12094 .c
12095 -.c `--name' somwhere in the text
12096 +.c `--name' somewhere in the text
12097 .c second arg is punctuation
12098 .c
12099 .de LongOpt
12100 @@ -314,7 +318,7 @@
12101 .B groff
12102 program allows to control the whole
12103 .I groff
12104 -system by comand line options.
12105 +system by command line options.
12106 .
12107 This is a great simplification in comparison to the classical case (which
12108 uses pipes only).
12109 @@ -610,7 +614,7 @@
12110 .
12111 .
12112 .\" --------------------------------------------------------------------
12113 -.SS Tranparent Options
12114 +.SS Transparent Options
12115 .\" --------------------------------------------------------------------
12116 .
12117 The following options are transparently handed over to the formatter
12118 @@ -695,7 +699,7 @@
12119 is much easier than
12120 .IR "classical roff" .
12121 .
12122 -This section gives an overview of the parts that consitute the groff
12123 +This section gives an overview of the parts that constitute the groff
12124 system.
12125 .
12126 It complements
12127 @@ -948,6 +952,10 @@
12128 Text output using the EBCDIC code page IBM cp1047 (e.g. OS/390 Unix).
12129 .
12130 .TP
12131 +.B nippon
12132 +Text output using the Japanese-EUC character set.
12133 +.
12134 +.TP
12135 .B dvi
12136 TeX DVI format.
12137 .
12138 @@ -956,6 +964,12 @@
12139 HTML output.
12140 .
12141 .TP
12142 +.B ascii8
12143 +For typewriter-like devices. Unlike
12144 +.BR ascii ,
12145 +this device is 8 bit clean. This device is intended to be used
12146 +for codesets other than ASCII and ISO-8859-1.
12147 +.TP
12148 .B latin1
12149 Text output using the ISO Latin-1 (ISO 8859-1) character set; see
12150 .BR iso_8859_1 (7).
12151 @@ -1031,7 +1045,7 @@
12152 .
12153 .P
12154 Today, most printing or drawing hardware is handled by the operating
12155 -system, by device drivers, or by software interfaces, usally accepting
12156 +system, by device drivers, or by software interfaces, usually accepting
12157 PostScript.
12158 .
12159 Consequently, there isn't an urgent need for more hardware device
12160 diff -Naur groff-1.18.1.4.orig/src/roff/nroff/nroff.man groff-1.18.1.4/src/roff/nroff/nroff.man
12161 --- groff-1.18.1.4.orig/src/roff/nroff/nroff.man 2002-02-07 08:36:54.000000000 +0000
12162 +++ groff-1.18.1.4/src/roff/nroff/nroff.man 2006-10-18 18:54:44.000000000 +0000
12163 @@ -53,8 +53,10 @@
12164 command using groff.
12165 Only
12166 .BR ascii ,
12167 +.BR ascii8 ,
12168 .BR latin1 ,
12169 .BR utf8 ,
12170 +.BR nippon ,
12171 and
12172 .B cp1047
12173 are valid arguments for the
12174 diff -Naur groff-1.18.1.4.orig/src/roff/nroff/nroff.sh groff-1.18.1.4/src/roff/nroff/nroff.sh
12175 --- groff-1.18.1.4.orig/src/roff/nroff/nroff.sh 2002-02-07 08:36:54.000000000 +0000
12176 +++ groff-1.18.1.4/src/roff/nroff/nroff.sh 2006-10-18 18:54:44.000000000 +0000
12177 @@ -12,6 +12,8 @@
12178 T=-Tlatin1 ;;
12179 IBM-1047)
12180 T=-Tcp1047 ;;
12181 + EUC-JP)
12182 + T=-Tnippon ;;
12183 *)
12184 case "${LC_ALL-${LC_CTYPE-${LANG}}}" in
12185 *.UTF-8)
12186 @@ -20,6 +22,8 @@
12187 T=-Tlatin1 ;;
12188 *.IBM-1047)
12189 T=-Tcp1047 ;;
12190 + ja_JP.ujis | ja_JP.eucJP)
12191 + T=-Tnippon ;;
12192 *)
12193 case "$LESSCHARSET" in
12194 utf-8)
12195 @@ -28,8 +32,10 @@
12196 T=-Tlatin1 ;;
12197 cp1047)
12198 T=-Tcp1047 ;;
12199 + japanese)
12200 + T=-Tnippon ;;
12201 *)
12202 - T=-Tascii ;;
12203 + T=-Tascii8 ;;
12204 esac ;;
12205 esac ;;
12206 esac
12207 @@ -52,7 +58,7 @@
12208 exit 1 ;;
12209 -[iptSUC] | -[mrno]*)
12210 opts="$opts $1" ;;
12211 - -Tascii | -Tlatin1 | -Tutf8 | -Tcp1047)
12212 + -Tascii | -Tlatin1 | -Tutf8 | -Tcp1047 | -Tascii8 | -Tnippon)
12213 T=$1 ;;
12214 -T*)
12215 # ignore other devices
12216 diff -Naur groff-1.18.1.4.orig/src/roff/troff/charinfo.h groff-1.18.1.4/src/roff/troff/charinfo.h
12217 --- groff-1.18.1.4.orig/src/roff/troff/charinfo.h 2002-03-22 16:11:18.000000000 +0000
12218 +++ groff-1.18.1.4/src/roff/troff/charinfo.h 2006-10-18 18:54:44.000000000 +0000
12219 @@ -29,9 +29,16 @@
12220 macro *mac;
12221 unsigned char special_translation;
12222 unsigned char hyphenation_code;
12223 +#ifdef ENABLE_MULTIBYTE
12224 + unsigned short flags;
12225 +#else
12226 unsigned char flags;
12227 +#endif
12228 unsigned char ascii_code;
12229 unsigned char asciify_code;
12230 +#ifdef ENABLE_MULTIBYTE
12231 + wchar wchar_code;
12232 +#endif
12233 char not_found;
12234 char transparent_translate; // non-zero means translation applies
12235 // to transparent throughput
12236 @@ -47,6 +54,11 @@
12237 OVERLAPS_VERTICALLY = 16,
12238 TRANSPARENT = 32,
12239 NUMBERED = 64
12240 +#ifdef ENABLE_MULTIBYTE
12241 + ,
12242 + DONT_BREAK_BEFORE = 0x100, // 256, pre kinsoku
12243 + DONT_BREAK_AFTER = 0x200 // 512, post kinsoku
12244 +#endif
12245 };
12246 enum {
12247 TRANSLATE_NONE,
12248 @@ -74,7 +86,11 @@
12249 int get_translation_input();
12250 charinfo *get_translation(int = 0);
12251 void set_translation(charinfo *, int, int);
12252 +#ifdef ENABLE_MULTIBYTE
12253 + void set_flags(unsigned short);
12254 +#else
12255 void set_flags(unsigned char);
12256 +#endif
12257 void set_special_translation(int, int);
12258 int get_special_translation(int = 0);
12259 macro *set_macro(macro *, int = 0);
12260 @@ -84,6 +100,12 @@
12261 int get_number();
12262 int numbered();
12263 int is_fallback();
12264 +#ifdef ENABLE_MULTIBYTE
12265 + wchar get_wchar_code();
12266 + void set_wchar_code(wchar);
12267 + int cannot_break_before(); // pre kinsoku
12268 + int cannot_break_after(); // post kinsoku
12269 +#endif
12270 symbol *get_symbol();
12271 };
12272
12273 @@ -131,6 +153,18 @@
12274 return fallback;
12275 }
12276
12277 +#ifdef ENABLE_MULTIBYTE
12278 +inline int charinfo::cannot_break_before()
12279 +{
12280 + return flags & DONT_BREAK_BEFORE;
12281 +}
12282 +
12283 +inline int charinfo::cannot_break_after()
12284 +{
12285 + return flags & DONT_BREAK_AFTER;
12286 +}
12287 +#endif
12288 +
12289 inline charinfo *charinfo::get_translation(int transparent_throughput)
12290 {
12291 return (transparent_throughput && !transparent_translate
12292 @@ -153,7 +187,18 @@
12293 return (translate_input ? asciify_code : 0);
12294 }
12295
12296 +#ifdef ENABLE_MULTIBYTE
12297 +inline wchar charinfo::get_wchar_code()
12298 +{
12299 + return wchar_code;
12300 +}
12301 +#endif
12302 +
12303 +#ifdef ENABLE_MULTIBYTE
12304 +inline void charinfo::set_flags(unsigned short c)
12305 +#else
12306 inline void charinfo::set_flags(unsigned char c)
12307 +#endif
12308 {
12309 flags = c;
12310 }
12311 diff -Naur groff-1.18.1.4.orig/src/roff/troff/env.cc groff-1.18.1.4/src/roff/troff/env.cc
12312 --- groff-1.18.1.4.orig/src/roff/troff/env.cc 2002-10-03 15:53:06.000000000 +0000
12313 +++ groff-1.18.1.4/src/roff/troff/env.cc 2006-10-18 18:54:44.000000000 +0000
12314 @@ -32,6 +32,7 @@
12315 #include "charinfo.h"
12316 #include "macropath.h"
12317 #include "input.h"
12318 +#include "font.h" // ENABLE_MULTIBYTE only?
12319 #include <math.h>
12320
12321 symbol default_family("T");
12322 @@ -264,6 +265,13 @@
12323 void environment::add_char(charinfo *ci)
12324 {
12325 int s;
12326 +#ifdef ENABLE_MULTIBYTE
12327 + int fontno = get_font(); // current font #
12328 + int fontset_font = get_fontset_fontno(fontno, ci->get_wchar_code());
12329 + if (fontno >= 0 && fontno != fontset_font) {
12330 + change_curfont(fontset_font);
12331 + }
12332 +#endif
12333 if (interrupted)
12334 ;
12335 // don't allow fields in dummy environments
12336 @@ -286,11 +294,95 @@
12337 else {
12338 if (line == 0)
12339 start_line();
12340 +#ifdef ENABLE_MULTIBYTE
12341 + /*
12342 + * XXX: NEED REWRITE TO BE MORE GENERIC
12343 + * This code is based on jgroff
12344 + * about kerning between ASCII and EUC-JP
12345 + */
12346 + if (!ci->get_wchar_code()) {
12347 + /*
12348 + * This node is a ASCII character node.
12349 + */
12350 + if (!pre_char_is_ascii && enable_wcharkern && !hwkern.is_zero()) {
12351 + /*
12352 + * Insert a little space node between EUC and ASCII.
12353 + */
12354 + word_space_node *ws;
12355 +
12356 + if (ci->ends_sentence() || ci->transparent() || ci->cannot_break_before())
12357 + ws = new unbreakable_space_node(hwkern.to_units(), get_fill_color());
12358 + else
12359 + ws = new word_space_node(hwkern.to_units(),
12360 + get_fill_color(),
12361 + new width_list(env_space_width(this),
12362 + env_sentence_space_width(this)));
12363 + curenv->add_node(ws);
12364 + }
12365 + pre_char_is_ascii = 1;
12366 + pre_wchar_cannot_break_after = 0;
12367 + } else {
12368 + /*
12369 + * This node is a EUC charcater node.
12370 + */
12371 + if (!pre_char_is_ascii && line->get_node_type() == NODE_NEWLINE_SPACE) {
12372 + /*
12373 + * remove a newline-node.
12374 + */
12375 + node *ns_node = line;
12376 + line = line->next;
12377 + width_total -= ns_node->width();
12378 + space_total -= ns_node->nspaces();
12379 + delete ns_node;
12380 + }
12381 +
12382 + if (!pre_wchar_cannot_break_after && !ci->cannot_break_before()) {
12383 + /*
12384 + * add a zero-width-space-node before EUC charcater node.
12385 + */
12386 + add_node(new kword_space_node(get_fill_color()));
12387 + met_with_kword_space = 1;
12388 + }
12389 + pre_wchar_cannot_break_after = ci->cannot_break_after();
12390 +
12391 + if (pre_char_is_ascii && enable_wcharkern && !hwkern.is_zero()) {
12392 + /*
12393 + * Insert a little space node between ASCII and EUC.
12394 + */
12395 + unbreakable_space_node *ws =
12396 + new unbreakable_space_node(hwkern.to_units(), get_fill_color());
12397 + curenv->add_node(ws);
12398 + }
12399 + pre_char_is_ascii = 0;
12400 +
12401 + if (!vlower.is_zero()) {
12402 + /*
12403 + * Lower a EUC charcater node.
12404 + */
12405 + curenv->add_node(new vmotion_node(vlower.to_units(),
12406 + get_fill_color())); // lower
12407 + }
12408 + }
12409 +#endif
12410 if (ci != hyphen_indicator_char)
12411 line = line->add_char(ci, this, &width_total, &space_total);
12412 else
12413 line = line->add_discretionary_hyphen();
12414 +#ifdef ENABLE_MULTIBYTE
12415 + enable_wcharkern = 1;
12416 + if (!vlower.is_zero() && ci->get_wchar_code()) {
12417 + /*
12418 + * Raise a EUC charcater node.
12419 + */
12420 + curenv->add_node(new vmotion_node(-vlower.to_units(),
12421 + get_fill_color())); // raise
12422 + }
12423 +#endif
12424 }
12425 +#ifdef ENABLE_MULTIBYTE
12426 + if (fontset_font >= 0 && fontno != fontset_font)
12427 + change_curfont(fontno); /* restore saved font # */
12428 +#endif
12429 }
12430
12431 node *environment::make_char_node(charinfo *ci)
12432 @@ -394,7 +486,11 @@
12433 width_total += x;
12434 return;
12435 }
12436 +#ifdef ENABLE_MULTIBYTE
12437 + add_node(new newline_space_node(x, get_fill_color())); // This node may be removed
12438 +#else
12439 add_node(new word_space_node(x, get_fill_color(), w));
12440 +#endif
12441 possibly_break_line(0, spread_flag);
12442 spread_flag = 0;
12443 }
12444 @@ -480,6 +576,35 @@
12445 warning(WARN_FONT, "bad font number");
12446 }
12447
12448 +#ifdef ENABLE_MULTIBYTE
12449 +void environment::change_curfont(symbol nm)
12450 +{
12451 + int n = symbol_fontno(nm);
12452 + if (n < 0) {
12453 + n = next_available_font_position();
12454 + if (!mount_font(n, nm))
12455 + return;
12456 + }
12457 + fontno = n;
12458 +}
12459 +
12460 +void environment::change_curfont(int n)
12461 +{
12462 + if (is_good_fontno(n))
12463 + fontno = n;
12464 + else
12465 + error("bad font number");
12466 +}
12467 +
12468 +void environment::set_encoding(symbol enc)
12469 +{
12470 + if (enc.is_null() || enc.is_empty())
12471 + return;
12472 + select_input_encoding_handler(enc.contents());
12473 + select_output_encoding_handler(enc.contents());
12474 +}
12475 +#endif /* ENABLE_MULTIBYTE */
12476 +
12477 void environment::set_family(symbol fam)
12478 {
12479 if (interrupted)
12480 @@ -649,6 +774,16 @@
12481 control_char('.'),
12482 no_break_control_char('\''),
12483 hyphen_indicator_char(0)
12484 +#ifdef ENABLE_MULTIBYTE
12485 + ,
12486 + stretch_threshold(0),
12487 + pre_wchar_cannot_break_after(0),
12488 + pre_char_is_ascii(-1),
12489 + enable_wcharkern(0),
12490 + met_with_kword_space(0),
12491 + hwkern(font::wcharkern),
12492 + vlower(font::lowerwchar)
12493 +#endif
12494 {
12495 prev_family = family = lookup_family(default_family);
12496 prev_fontno = fontno = 1;
12497 @@ -739,6 +874,16 @@
12498 control_char(e->control_char),
12499 no_break_control_char(e->no_break_control_char),
12500 hyphen_indicator_char(e->hyphen_indicator_char)
12501 +#ifdef ENABLE_MULTIBYTE
12502 + ,
12503 + stretch_threshold(e->stretch_threshold),
12504 + pre_wchar_cannot_break_after(0),
12505 + pre_char_is_ascii(-1),
12506 + enable_wcharkern(0),
12507 + met_with_kword_space(0),
12508 + hwkern(font::wcharkern),
12509 + vlower(font::lowerwchar)
12510 +#endif
12511 {
12512 }
12513
12514 @@ -1781,6 +1926,9 @@
12515 target_text_length = line_length - saved_indent;
12516 width_total = H0;
12517 space_total = 0;
12518 +#ifdef ENABLE_MULTIBYTE
12519 + enable_wcharkern = 0;
12520 +#endif
12521 }
12522
12523 hunits environment::get_hyphenation_space()
12524 @@ -1819,6 +1967,23 @@
12525 skip_line();
12526 }
12527
12528 +#ifdef ENABLE_MULTIBYTE
12529 +void stretch_threshold_request()
12530 +{
12531 + int n;
12532 + if (has_arg() && get_integer(&n)) {
12533 + if (n < 0 || n > 100) {
12534 + warning(WARN_RANGE, "stretch threshold value %1 out of range", n);
12535 + } else {
12536 + curenv->stretch_threshold = n;
12537 + }
12538 + } else {
12539 + curenv->stretch_threshold = 0;
12540 + }
12541 + skip_line();
12542 +}
12543 +#endif
12544 +
12545 breakpoint *environment::choose_breakpoint()
12546 {
12547 hunits x = width_total;
12548 @@ -2014,6 +2179,30 @@
12549 // When a macro follows a paragraph in fill mode, the
12550 // current line should not be empty.
12551 || (width_total - line->width()) > target_text_length)) {
12552 +#ifdef ENABLE_MULTIBYTE
12553 + if (met_with_kword_space) {
12554 + node *linep = line;
12555 + node *prep = 0;
12556 + while (linep->next) {
12557 + if (linep->next->get_node_type() == NODE_GLYPH)
12558 + prep = 0;
12559 + else if (linep->next->get_node_type() == NODE_KWORD_SPACE)
12560 + prep = linep;
12561 + linep = linep->next;
12562 + }
12563 + if (prep) {
12564 + /*
12565 + * delete a kword_space_node which is in the top of line.
12566 + */
12567 + linep = prep->next;
12568 + prep->next = linep->next;
12569 + width_total -= linep->width();
12570 + space_total -= linep->nspaces();
12571 + delete linep;
12572 + }
12573 + met_with_kword_space = 0;
12574 + }
12575 +#endif
12576 hyphenate_line(start_here);
12577 breakpoint *bp = choose_breakpoint();
12578 if (bp == 0)
12579 @@ -2026,6 +2215,15 @@
12580 bp->nd->split(bp->index, &pre, &post);
12581 *ndp = post;
12582 hunits extra_space_width = H0;
12583 +#ifdef ENABLE_MULTIBYTE
12584 + int sv_adjust_mode = adjust_mode;
12585 + if (stretch_threshold) {
12586 + int ratio = bp->width * 100 / target_text_length;
12587 + if (ratio < stretch_threshold) {
12588 + adjust_mode = ADJUST_LEFT;
12589 + }
12590 + }
12591 +#endif
12592 switch(adjust_mode) {
12593 case ADJUST_BOTH:
12594 if (bp->nspaces != 0)
12595 @@ -2041,6 +2239,9 @@
12596 saved_indent += target_text_length - bp->width;
12597 break;
12598 }
12599 +#ifdef ENABLE_MULTIBYTE
12600 + adjust_mode = sv_adjust_mode;
12601 +#endif
12602 distribute_space(pre, bp->nspaces, extra_space_width);
12603 hunits output_width = bp->width + extra_space_width;
12604 input_line_start -= output_width;
12605 @@ -3237,6 +3438,9 @@
12606 init_request("hys", hyphenation_space_request);
12607 init_request("hym", hyphenation_margin_request);
12608 init_request("pvs", post_vertical_spacing);
12609 +#ifdef ENABLE_MULTIBYTE
12610 + init_request("stt", stretch_threshold_request);
12611 +#endif
12612 init_int_env_reg(".f", get_font);
12613 init_int_env_reg(".b", get_bold);
12614 init_hunits_env_reg(".i", get_indent);
12615 diff -Naur groff-1.18.1.4.orig/src/roff/troff/env.h groff-1.18.1.4/src/roff/troff/env.h
12616 --- groff-1.18.1.4.orig/src/roff/troff/env.h 2002-09-20 14:39:32.000000000 +0000
12617 +++ groff-1.18.1.4/src/roff/troff/env.h 2006-10-18 18:54:44.000000000 +0000
12618 @@ -213,6 +213,15 @@
12619 unsigned char control_char;
12620 unsigned char no_break_control_char;
12621 charinfo *hyphen_indicator_char;
12622 +#ifdef ENABLE_MULTIBYTE
12623 + int stretch_threshold;
12624 + int pre_wchar_cannot_break_after;
12625 + int pre_char_is_ascii;
12626 + int enable_wcharkern;
12627 + int met_with_kword_space;
12628 + hunits hwkern;
12629 + vunits vlower;
12630 +#endif
12631
12632 environment(symbol);
12633 environment(const environment *); // for temporary environment
12634 @@ -279,6 +288,10 @@
12635 void wrap_up_tab();
12636 void set_font(int);
12637 void set_font(symbol);
12638 +#ifdef ENABLE_MULTIBYTE
12639 + void change_curfont(int);
12640 + void change_curfont(symbol);
12641 +#endif
12642 void set_family(symbol);
12643 void set_size(int);
12644 void set_char_height(int);
12645 @@ -309,6 +322,9 @@
12646 const char *get_point_size_string();
12647 const char *get_requested_point_size_string();
12648 void output_pending_lines();
12649 +#ifdef ENABLE_MULTIBYTE
12650 + void set_encoding(symbol);
12651 +#endif
12652
12653 friend void title_length();
12654 friend void space_size();
12655 @@ -347,6 +363,9 @@
12656 #ifdef WIDOW_CONTROL
12657 friend void widow_control_request();
12658 #endif /* WIDOW_CONTROL */
12659 +#ifdef ENABLE_MULTIBYTE
12660 + friend void stretch_threshold_request();
12661 +#endif
12662
12663 friend void do_divert(int append, int boxing);
12664 };
12665 diff -Naur groff-1.18.1.4.orig/src/roff/troff/input.cc groff-1.18.1.4/src/roff/troff/input.cc
12666 --- groff-1.18.1.4.orig/src/roff/troff/input.cc 2002-10-03 15:52:20.000000000 +0000
12667 +++ groff-1.18.1.4/src/roff/troff/input.cc 2006-10-18 18:54:44.000000000 +0000
12668 @@ -35,6 +35,7 @@
12669 #include "macropath.h"
12670 #include "defs.h"
12671 #include "input.h"
12672 +#include "encoding.h" // XXX: ukai
12673
12674 // Needed for getpid() and isatty()
12675 #include "posix.h"
12676 @@ -89,6 +90,11 @@
12677 charinfo *charset_table[256];
12678 unsigned char hpf_code_table[256];
12679
12680 +#ifdef ENABLE_MULTIBYTE
12681 +charinfo *wcharset_table_entry(wchar wc);
12682 +
12683 +#endif /* ENABLE_MULTIBYTE */
12684 +
12685 static int warning_mask = DEFAULT_WARNING_MASK;
12686 static int inhibit_errors = 0;
12687 static int ignoring = 0;
12688 @@ -148,6 +154,20 @@
12689 input_iterator *make_temp_iterator(const char *);
12690 const char *input_char_description(int);
12691
12692 +#ifdef ENABLE_MULTIBYTE
12693 +static void
12694 +select_encoding()
12695 +{
12696 + symbol e = get_long_name(1);
12697 + if (e.is_null()) {
12698 + skip_line();
12699 + return;
12700 + }
12701 + curenv->set_encoding(e);
12702 + skip_line();
12703 +
12704 +}
12705 +#endif
12706
12707 void set_escape_char()
12708 {
12709 @@ -1524,6 +1544,19 @@
12710 type = TOKEN_NEWLINE;
12711 }
12712
12713 +#ifdef ENABLE_MULTIBYTE
12714 +class encoding_istream_input : public encoding_istream {
12715 +private:
12716 + node **np;
12717 +public:
12718 + encoding_istream_input(node **n) : np(n) {};
12719 + ~encoding_istream_input() {};
12720 + int getbyte() { return input_stack::get(np); };
12721 + int peekbyte() { return input_stack::peek(); };
12722 + void ungetbyte(int ch) { return; };
12723 +};
12724 +#endif
12725 +
12726 void token::next()
12727 {
12728 if (nd) {
12729 @@ -1533,6 +1566,10 @@
12730 units x;
12731 for (;;) {
12732 node *n;
12733 +#ifdef ENABLE_MULTIBYTE
12734 + encoding_istream_input einput(&n);
12735 +#endif
12736 +
12737 int cc = input_stack::get(&n);
12738 if (cc != escape_char || escape_char == 0) {
12739 handle_normal_char:
12740 @@ -1686,8 +1723,22 @@
12741 }
12742 return;
12743 default:
12744 +#ifdef ENABLE_MULTIBYTE
12745 + wc = input_encoding->make_wchar(cc, einput);
12746 + if (is_wchar_code(wc)) {
12747 + type = TOKEN_WCHAR;
12748 + c = 0;
12749 + } else if (wc == ' ') {
12750 + type = TOKEN_SPACE;
12751 + c = cc;
12752 + } else {
12753 + type = TOKEN_CHAR;
12754 + c = cc;
12755 + }
12756 +#else
12757 type = TOKEN_CHAR;
12758 c = cc;
12759 +#endif
12760 return;
12761 }
12762 }
12763 @@ -2057,6 +2108,10 @@
12764 switch(type) {
12765 case TOKEN_CHAR:
12766 return c == t.c;
12767 +#ifdef ENABLE_MULTIBYTE
12768 + case TOKEN_WCHAR:
12769 + return wc == t.wc;
12770 +#endif
12771 case TOKEN_SPECIAL:
12772 return nm == t.nm;
12773 case TOKEN_NUMBERED_CHAR:
12774 @@ -2563,6 +2618,27 @@
12775 }
12776 break;
12777 }
12778 +#ifdef ENABLE_MULTIBYTE
12779 + case token::TOKEN_WCHAR:
12780 + {
12781 + wchar wch = tok.wc;
12782 +
12783 + if (possibly_handle_first_page_transition())
12784 + ;
12785 + else {
12786 + for (;;) {
12787 + curenv->add_char(wcharset_table_entry(wch));
12788 + tok.next();
12789 + if (tok.type != token::TOKEN_WCHAR)
12790 + break;
12791 + wch = tok.wc;
12792 + }
12793 + suppress_next = 1;
12794 + bol = 0;
12795 + }
12796 + break;
12797 + }
12798 +#endif /* ENABLE_MULTIBYTE */
12799 case token::TOKEN_TRANSPARENT:
12800 {
12801 if (bol) {
12802 @@ -6018,6 +6094,10 @@
12803 {
12804 if (type == TOKEN_CHAR)
12805 return charset_table[c];
12806 +#ifdef ENABLE_MULTIBYTE
12807 + if (type == TOKEN_WCHAR)
12808 + return wcharset_table_entry(wc);
12809 +#endif
12810 if (type == TOKEN_SPECIAL)
12811 return get_charinfo(nm);
12812 if (type == TOKEN_NUMBERED_CHAR)
12813 @@ -6070,6 +6150,11 @@
12814 case TOKEN_CHAR:
12815 *pp = (*pp)->add_char(charset_table[c], curenv, &w, &s);
12816 break;
12817 +#ifdef ENABLE_MULTIBYTE
12818 + case TOKEN_WCHAR:
12819 + *pp = (*pp)->add_char(wcharset_table_entry(wc), curenv, &w, &s);
12820 + break;
12821 +#endif
12822 case TOKEN_DUMMY:
12823 n = new dummy_node;
12824 break;
12825 @@ -6142,6 +6227,11 @@
12826 case TOKEN_CHAR:
12827 curenv->add_char(charset_table[c]);
12828 break;
12829 +#ifdef ENABLE_MULTIBYTE
12830 + case TOKEN_WCHAR:
12831 + curenv->add_char(wcharset_table_entry(wc));
12832 + break;
12833 +#endif
12834 case TOKEN_DUMMY:
12835 curenv->add_node(new dummy_node);
12836 break;
12837 @@ -6900,6 +6990,7 @@
12838 if (!safer_flag)
12839 mac_path = &macro_path;
12840 set_string(".T", device);
12841 + init_encoding_handler();
12842 init_charset_table();
12843 init_hpf_code_table();
12844 if (!font::load_desc())
12845 @@ -6924,6 +7015,9 @@
12846 // In the DESC file a font name of 0 (zero) means leave this
12847 // position empty.
12848 if (strcmp(font::font_name_table[i], "0") != 0)
12849 +#ifdef ENABLE_MULTIBYTE
12850 + if (!font::is_on_demand(i))
12851 +#endif
12852 mount_font(j, symbol(font::font_name_table[i]));
12853 curdiv = topdiv = new top_level_diversion;
12854 if (nflag)
12855 @@ -7081,6 +7175,9 @@
12856 init_request("ecs", save_escape_char);
12857 init_request("el", else_request);
12858 init_request("em", end_macro);
12859 +#ifdef ENABLE_MULTIBYTE
12860 + init_request("encoding", select_encoding);
12861 +#endif
12862 init_request("eo", escape_off);
12863 init_request("ex", exit_request);
12864 init_request("fchar", define_fallback_character);
12865 @@ -7533,12 +7630,92 @@
12866
12867 dictionary charinfo_dictionary(501);
12868
12869 +#ifdef ENABLE_MULTIBYTE
12870 +struct charinfo_list {
12871 + struct charinfo_list *next;
12872 + charinfo *ci;
12873 +} *wcharset_table = NULL;
12874 +
12875 +/* XXX: use more efficient method? */
12876 +static charinfo*
12877 +lookup_wcharset_table(wchar wc)
12878 +{
12879 + struct charinfo_list *cl;
12880 + for (cl = wcharset_table; cl; cl = cl->next) {
12881 + if (cl->ci && cl->ci->get_wchar_code() == wc)
12882 + return cl->ci;
12883 + }
12884 + return NULL;
12885 +}
12886 +
12887 +static void
12888 +add_wcharset_table(charinfo *ci)
12889 +{
12890 + struct charinfo_list *cl = new struct charinfo_list;
12891 + cl->next = wcharset_table;
12892 + cl->ci = ci;
12893 + wcharset_table = cl;
12894 +}
12895 +
12896 +charinfo *wcharset_table_entry(wchar wc)
12897 +{
12898 + if (! is_wchar_code(wc))
12899 + return NULL;
12900 + charinfo *cp = lookup_wcharset_table(wc);
12901 + if (cp == NULL) {
12902 + int i = wchar_code(wc);
12903 + char buf[16];
12904 + if (i > 0x100)
12905 + sprintf(buf, "u%04X", i);
12906 + else {
12907 + cp = get_charinfo_by_number(i);
12908 + if (cp != NULL)
12909 + return cp;
12910 + sprintf(buf, "char%d", i); // ???
12911 + }
12912 + symbol nm = symbol(buf);
12913 + cp = new charinfo(nm);
12914 + (void)charinfo_dictionary.lookup(nm, cp);
12915 + cp->set_wchar_code(wc);
12916 + add_wcharset_table(cp);
12917 + }
12918 + return cp;
12919 +}
12920 +
12921 +static charinfo *
12922 +wchar_charinfo(symbol nm)
12923 +{
12924 + const char *p = nm.contents();
12925 + if (*p != 'u') {
12926 + return NULL;
12927 + }
12928 + char *pp;
12929 + wchar wc = make_wchar(strtol(p + 1, &pp, 16));
12930 + if (pp < p + 5)
12931 + return NULL;
12932 + charinfo *cp = lookup_wcharset_table(wc);
12933 + if (cp)
12934 + return cp;
12935 + /* create on demand */
12936 + cp = new charinfo(nm);
12937 + cp->set_wchar_code(wc);
12938 + add_wcharset_table(cp);
12939 + return cp;
12940 +}
12941 +#endif
12942 +
12943 charinfo *get_charinfo(symbol nm)
12944 {
12945 void *p = charinfo_dictionary.lookup(nm);
12946 if (p != 0)
12947 return (charinfo *)p;
12948 +#ifdef ENABLE_MULTIBYTE
12949 + charinfo *cp = wchar_charinfo(nm);
12950 + if (cp == NULL)
12951 + cp = new charinfo(nm);
12952 +#else
12953 charinfo *cp = new charinfo(nm);
12954 +#endif
12955 (void)charinfo_dictionary.lookup(nm, cp);
12956 return cp;
12957 }
12958 @@ -7548,6 +7725,9 @@
12959 charinfo::charinfo(symbol s)
12960 : translation(0), mac(0), special_translation(TRANSLATE_NONE),
12961 hyphenation_code(0), flags(0), ascii_code(0), asciify_code(0),
12962 +#ifdef ENABLE_MULTIBYTE
12963 + wchar_code(0),
12964 +#endif
12965 not_found(0), transparent_translate(1), translate_input(0),
12966 fallback(0), nm(s)
12967 {
12968 @@ -7592,6 +7772,14 @@
12969 asciify_code = c;
12970 }
12971
12972 +#ifdef ENABLE_MULTIBYTE
12973 +void charinfo::set_wchar_code(wchar wc)
12974 +{
12975 + wchar_code = wc;
12976 + index = wc; /* XXX: wchar code == index */
12977 +}
12978 +#endif
12979 +
12980 macro *charinfo::set_macro(macro *m, int f)
12981 {
12982 macro *tem = mac;
12983 @@ -7647,6 +7835,13 @@
12984 int font::name_to_index(const char *nm)
12985 {
12986 charinfo *ci;
12987 +#ifdef ENABLE_MULTIBYTE
12988 + int i = 1;
12989 + wchar wc = input_encoding->make_wchar(nm[0], (const unsigned char *)nm, &i);
12990 + if (is_wchar_code(wc)) {
12991 + ci = wcharset_table_entry(wc);
12992 + } else
12993 +#endif
12994 if (nm[1] == 0)
12995 ci = charset_table[nm[0] & 0xff];
12996 else if (nm[0] == '\\' && nm[2] == 0)
12997 @@ -7663,3 +7858,10 @@
12998 {
12999 return get_charinfo_by_number(n)->get_index();
13000 }
13001 +
13002 +#ifdef ENABLE_MULTIBYTE
13003 +int font::wchar_index(wchar wc)
13004 +{
13005 + return(wcharset_table_entry(wc)->get_index());
13006 +}
13007 +#endif
13008 diff -Naur groff-1.18.1.4.orig/src/roff/troff/node.cc groff-1.18.1.4/src/roff/troff/node.cc
13009 --- groff-1.18.1.4.orig/src/roff/troff/node.cc 2002-10-03 21:55:09.000000000 +0000
13010 +++ groff-1.18.1.4/src/roff/troff/node.cc 2006-10-18 18:54:44.000000000 +0000
13011 @@ -38,6 +38,7 @@
13012 #include "input.h"
13013 #include "div.h"
13014 #include "geometry.h"
13015 +#include "encoding.h"
13016
13017 #include "nonposix.h"
13018
13019 @@ -745,8 +746,15 @@
13020 int current_font_number;
13021 symbol *font_position;
13022 int nfont_positions;
13023 +#ifdef ENABLE_MULTIBYTE
13024 + const char *current_encoding;
13025 +#endif
13026 enum { TBUF_SIZE = 256 };
13027 +#ifdef ENABLE_MULTIBYTE
13028 + wchar tbuf[TBUF_SIZE];
13029 +#else
13030 char tbuf[TBUF_SIZE];
13031 +#endif
13032 int tbuf_len;
13033 int tbuf_kern;
13034 int begun_page;
13035 @@ -756,6 +764,9 @@
13036 void put(int i);
13037 void put(unsigned int i);
13038 void put(const char *s);
13039 +#ifdef ENABLE_MULTIBYTE
13040 + void putw(const wchar wc);
13041 +#endif
13042 void set_font(tfont *tf);
13043 void flush_tbuf();
13044 public:
13045 @@ -799,6 +810,13 @@
13046 putc(c, fp);
13047 }
13048
13049 +#ifdef ENABLE_MULTIBYTE
13050 +inline void troff_output_file::putw(wchar wc)
13051 +{
13052 + output_encoding->put_wchar(wc, fp);
13053 +}
13054 +#endif
13055 +
13056 inline void troff_output_file::put(unsigned char c)
13057 {
13058 putc(c, fp);
13059 @@ -956,7 +974,11 @@
13060 check_output_limits(hpos, vpos - current_size);
13061
13062 for (int i = 0; i < tbuf_len; i++)
13063 +#ifdef ENABLE_MULTIBYTE
13064 + putw(tbuf[i]);
13065 +#else
13066 put(tbuf[i]);
13067 +#endif
13068 put('\n');
13069 tbuf_len = 0;
13070 }
13071 @@ -988,7 +1010,13 @@
13072 flush_tbuf();
13073 set_font(tf);
13074 }
13075 +#ifdef ENABLE_MULTIBYTE
13076 + wchar c = ci->get_wchar_code();
13077 + if (c == '\0')
13078 + c = ci->get_ascii_code();
13079 +#else
13080 char c = ci->get_ascii_code();
13081 +#endif
13082 if (c == '\0') {
13083 flush_tbuf();
13084 do_motion();
13085 @@ -1014,7 +1042,8 @@
13086 }
13087 else if (tcommand_flag) {
13088 if (tbuf_len > 0 && hpos == output_hpos && vpos == output_vpos
13089 - && gcol == current_glyph_color && fcol == current_fill_color
13090 + && (!gcol || gcol == current_glyph_color)
13091 + && (!fcol || fcol == current_fill_color)
13092 && kk == tbuf_kern
13093 && tbuf_len < TBUF_SIZE) {
13094 check_charinfo(tf, ci);
13095 @@ -1039,17 +1068,26 @@
13096 check_charinfo(tf, ci);
13097 // check_output_limits(output_hpos, output_vpos);
13098 if (vpos == output_vpos
13099 - && gcol == current_glyph_color && fcol == current_fill_color
13100 + && (!gcol || gcol == current_glyph_color)
13101 + && (!fcol || fcol == current_fill_color)
13102 && n > 0 && n < 100 && !force_motion) {
13103 put(char(n/10 + '0'));
13104 put(char(n%10 + '0'));
13105 +#ifdef ENABLE_MULTIBYTE
13106 + putw(c);
13107 +#else
13108 put(c);
13109 +#endif
13110 output_hpos = hpos;
13111 }
13112 else {
13113 do_motion();
13114 put('c');
13115 +#ifdef ENABLE_MULTIBYTE
13116 + putw(c);
13117 +#else
13118 put(c);
13119 +#endif
13120 }
13121 hpos += w.to_units() + kk;
13122 }
13123 @@ -1063,7 +1101,13 @@
13124 return;
13125 if (tf != current_tfont)
13126 set_font(tf);
13127 +#ifdef ENABLE_MULTIBYTE
13128 + wchar c = ci->get_wchar_code();
13129 + if (c == '\0')
13130 + c = ci->get_ascii_code();
13131 +#else
13132 char c = ci->get_ascii_code();
13133 +#endif
13134 if (c == '\0') {
13135 do_motion();
13136 glyph_color(gcol);
13137 @@ -1087,11 +1131,16 @@
13138 else {
13139 int n = hpos - output_hpos;
13140 if (vpos == output_vpos
13141 - && gcol == current_glyph_color && fcol == current_fill_color
13142 + && (!gcol || gcol == current_glyph_color)
13143 + && (!fcol || fcol == current_fill_color)
13144 && n > 0 && n < 100) {
13145 put(char(n/10 + '0'));
13146 put(char(n%10 + '0'));
13147 +#ifdef ENABLE_MULTIBYTE
13148 + putw(c);
13149 +#else
13150 put(c);
13151 +#endif
13152 output_hpos = hpos;
13153 }
13154 else {
13155 @@ -1099,13 +1148,26 @@
13156 glyph_color(gcol);
13157 fill_color(fcol);
13158 put('c');
13159 +#ifdef ENABLE_MULTIBYTE
13160 + putw(c);
13161 +#else
13162 put(c);
13163 +#endif
13164 }
13165 }
13166 }
13167
13168 void troff_output_file::set_font(tfont *tf)
13169 {
13170 +#ifdef ENABLE_MULTIBYTE
13171 + /* XXX */
13172 + if (current_encoding != output_encoding->name()) {
13173 + put("x encoding ");
13174 + put(output_encoding->name());
13175 + put('\n');
13176 + current_encoding = output_encoding->name();
13177 + }
13178 +#endif
13179 if (current_tfont == tf)
13180 return;
13181 int n = tf->get_input_position();
13182 @@ -1162,7 +1224,7 @@
13183
13184 void troff_output_file::fill_color(color *col)
13185 {
13186 - if ((current_fill_color == col) || !color_flag)
13187 + if (!col || current_fill_color == col || !color_flag)
13188 return;
13189 flush_tbuf();
13190 put("DF");
13191 @@ -1210,7 +1272,7 @@
13192
13193 void troff_output_file::glyph_color(color *col)
13194 {
13195 - if ((current_glyph_color == col) || !color_flag)
13196 + if (!col || current_glyph_color == col || !color_flag)
13197 return;
13198 flush_tbuf();
13199 put("m");
13200 @@ -1497,7 +1559,17 @@
13201 put(' ');
13202 put(vresolution);
13203 put('\n');
13204 +#ifdef ENABLE_MULTIBYTE
13205 + current_encoding = output_encoding->name();
13206 + put("x init");
13207 + if (current_encoding && *current_encoding != '\0') {
13208 + put(' ');
13209 + put(current_encoding);
13210 + }
13211 + put('\n');
13212 +#else
13213 put("x init\n");
13214 +#endif
13215 }
13216
13217 /* output_file */
13218 @@ -1777,6 +1849,9 @@
13219 int same(node *);
13220 const char *type();
13221 int force_tprint();
13222 +#ifdef ENABLE_MULTIBYTE
13223 + node_type get_node_type();
13224 +#endif
13225 };
13226
13227 glyph_node *glyph_node::free_list = 0;
13228 @@ -1802,6 +1877,9 @@
13229 int same(node *);
13230 const char *type();
13231 int force_tprint();
13232 +#ifdef ENABLE_MULTIBYTE
13233 + node_type get_node_type();
13234 +#endif
13235 };
13236
13237 class kern_pair_node : public node {
13238 @@ -5225,6 +5303,55 @@
13239 return 0;
13240 }
13241
13242 +#ifdef ENABLE_MULTIBYTE
13243 +kword_space_node::kword_space_node(color *c, node *x) : word_space_node(0, c, new width_list(0, 0), x)
13244 +{}
13245 +
13246 +node *kword_space_node::copy()
13247 +{
13248 + return new kword_space_node(col);
13249 +}
13250 +newline_space_node::newline_space_node(hunits d, color *c, node *x) : word_space_node(d, c, new width_list(0, 0), x)
13251 +{}
13252 +
13253 +node *newline_space_node::copy()
13254 +{
13255 + return new newline_space_node(n, col);
13256 +}
13257 +
13258 +const char *kword_space_node::type()
13259 +{
13260 + return "kword_space_node";
13261 +}
13262 +const char *newline_space_node::type()
13263 +{
13264 + return "newline_space_node";
13265 +}
13266 +
13267 +node_type node::get_node_type()
13268 +{
13269 + return NODE_ANOTHER;
13270 +}
13271 +node_type glyph_node::get_node_type()
13272 +{
13273 + return NODE_GLYPH;
13274 +}
13275 +
13276 +node_type ligature_node::get_node_type()
13277 +{
13278 + return NODE_ANOTHER;
13279 +}
13280 +
13281 +node_type kword_space_node::get_node_type()
13282 +{
13283 + return NODE_KWORD_SPACE;
13284 +}
13285 +node_type newline_space_node::get_node_type()
13286 +{
13287 + return NODE_NEWLINE_SPACE;
13288 +}
13289 +#endif
13290 +
13291 int unbreakable_space_node::same(node *nd)
13292 {
13293 return n == ((unbreakable_space_node *)nd)->n
13294 @@ -5625,6 +5752,28 @@
13295 return 0;
13296 }
13297
13298 +#ifdef ENABLE_MULTIBYTE
13299 +int get_fontset_fontno(int n, wchar wc)
13300 +{
13301 + if (n >= 0 && n < font_table_size && font_table[n] != 0) {
13302 + /* XXX: external_name should be used? */
13303 + int fn = font::get_fontset_font(font_table[n]->get_name().contents(), wc);
13304 + if (fn >= 0) {
13305 + symbol nm(font::font_name_table[fn]);
13306 + int nn = symbol_fontno(nm);
13307 + if (nn < 0) {
13308 + nn = next_available_font_position();
13309 + if (!mount_font(nn, nm)) {
13310 + return -1; /* XXX */
13311 + }
13312 + }
13313 + return nn;
13314 + }
13315 + }
13316 + return n;
13317 +}
13318 +#endif
13319 +
13320 hunits env_digit_width(environment *env)
13321 {
13322 node *n = make_glyph_node(charset_table['0'], env);
13323 diff -Naur groff-1.18.1.4.orig/src/roff/troff/node.h groff-1.18.1.4/src/roff/troff/node.h
13324 --- groff-1.18.1.4.orig/src/roff/troff/node.h 2002-10-02 14:23:28.000000000 +0000
13325 +++ groff-1.18.1.4/src/roff/troff/node.h 2006-10-18 18:54:44.000000000 +0000
13326 @@ -20,6 +20,8 @@
13327 Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
13328
13329
13330 +#include "config.h"
13331 +
13332 struct hyphen_list {
13333 unsigned char hyphen;
13334 unsigned char breakable;
13335 @@ -31,6 +33,9 @@
13336 void hyphenate(hyphen_list *, unsigned);
13337
13338 enum hyphenation_type { HYPHEN_MIDDLE, HYPHEN_BOUNDARY, HYPHEN_INHIBIT };
13339 +#ifdef ENABLE_MULTIBYTE
13340 +enum node_type {NODE_GLYPH, NODE_KWORD_SPACE, NODE_NEWLINE_SPACE, NODE_ANOTHER};
13341 +#endif
13342
13343 class ascii_output_file;
13344
13345 @@ -106,6 +111,9 @@
13346
13347 virtual int same(node *) = 0;
13348 virtual const char *type() = 0;
13349 +#ifdef ENABLE_MULTIBYTE
13350 + virtual node_type get_node_type();
13351 +#endif
13352 };
13353
13354 inline node::node()
13355 @@ -212,6 +220,24 @@
13356 int force_tprint();
13357 };
13358
13359 +#ifdef ENABLE_MULTIBYTE
13360 +class kword_space_node : public word_space_node {
13361 +public:
13362 + kword_space_node(color *, node * = 0);
13363 + node *copy();
13364 + const char *type();
13365 + node_type get_node_type();
13366 +};
13367 +
13368 +class newline_space_node : public word_space_node {
13369 +public:
13370 + newline_space_node(hunits, color *, node * = 0);
13371 + node *copy();
13372 + const char *type();
13373 + node_type get_node_type();
13374 +};
13375 +#endif
13376 +
13377 class unbreakable_space_node : public word_space_node {
13378 unbreakable_space_node(hunits, int, color *, node * = 0);
13379 public:
13380 @@ -538,6 +564,9 @@
13381 node *copy_node_list(node *);
13382
13383 int get_bold_fontno(int f);
13384 +#ifdef ENABLE_MULTIBYTE
13385 +int get_fontset_fontno(int f, wchar wc);
13386 +#endif
13387
13388 inline hyphen_list::hyphen_list(unsigned char code, hyphen_list *p)
13389 : hyphen(0), breakable(0), hyphenation_code(code), next(p)
13390 @@ -595,3 +624,4 @@
13391
13392 font_family *lookup_family(symbol);
13393 symbol get_font_name(int, environment *);
13394 +
13395 diff -Naur groff-1.18.1.4.orig/src/roff/troff/token.h groff-1.18.1.4/src/roff/troff/token.h
13396 --- groff-1.18.1.4.orig/src/roff/troff/token.h 2002-06-22 21:31:41.000000000 +0000
13397 +++ groff-1.18.1.4/src/roff/troff/token.h 2006-10-18 18:54:44.000000000 +0000
13398 @@ -28,12 +28,18 @@
13399 symbol nm;
13400 node *nd;
13401 unsigned char c;
13402 +#ifdef ENABLE_MULTIBYTE
13403 + wchar wc;
13404 +#endif
13405 int val;
13406 units dim;
13407 enum token_type {
13408 TOKEN_BACKSPACE,
13409 TOKEN_BEGIN_TRAP,
13410 TOKEN_CHAR, // a normal printing character
13411 +#ifdef ENABLE_MULTIBYTE
13412 + TOKEN_WCHAR, // a multibyte character
13413 +#endif
13414 TOKEN_DUMMY, // \&
13415 TOKEN_EMPTY, // this is the initial value
13416 TOKEN_END_TRAP,
13417 diff -Naur groff-1.18.1.4.orig/src/roff/troff/troff.h groff-1.18.1.4/src/roff/troff/troff.h
13418 --- groff-1.18.1.4.orig/src/roff/troff/troff.h 2002-06-19 13:20:18.000000000 +0000
13419 +++ groff-1.18.1.4/src/roff/troff/troff.h 2006-10-18 18:54:44.000000000 +0000
13420 @@ -28,6 +28,7 @@
13421 #include <stdlib.h>
13422 #include <errno.h>
13423
13424 +#include "encoding.h"
13425 #include "assert.h"
13426 #include "color.h"
13427 #include "device.h"
13428 diff -Naur groff-1.18.1.4.orig/src/roff/troff/troff.man groff-1.18.1.4/src/roff/troff/troff.man
13429 --- groff-1.18.1.4.orig/src/roff/troff/troff.man 2002-09-16 08:42:45.000000000 +0000
13430 +++ groff-1.18.1.4/src/roff/troff/troff.man 2006-10-18 18:54:44.000000000 +0000
13431 @@ -22,6 +22,10 @@
13432 A copy of the Free Documentation License is included as a file called
13433 FDL in the main directory of the groff source package.
13434 ..
13435 +.ig
13436 +A copy of the GNU Free Documentation License is also available in this
13437 +Debian package as /usr/share/doc/groff-base/copyright.
13438 +..
13439 .
13440 .
13441 .\" --------------------------------------------------------------------
13442 diff -Naur groff-1.18.1.4.orig/src/utils/tfmtodit/tfmtodit.cc groff-1.18.1.4/src/utils/tfmtodit/tfmtodit.cc
13443 --- groff-1.18.1.4.orig/src/utils/tfmtodit/tfmtodit.cc 2001-08-19 21:32:41.000000000 +0000
13444 +++ groff-1.18.1.4/src/utils/tfmtodit/tfmtodit.cc 2006-10-18 18:54:44.000000000 +0000
13445 @@ -650,7 +650,7 @@
13446 gives the groff name of the character, `i' gives its index in
13447 the encoding, which is filled in later (-1 if it does not appear). */
13448
13449 -struct {
13450 +struct S {
13451 const char *ch;
13452 int i;
13453 } lig_chars[] = {
13454 @@ -670,7 +670,7 @@
13455
13456 // Each possible ligature appears in this table.
13457
13458 -struct {
13459 +struct S2 {
13460 unsigned char c1, c2, res;
13461 const char *ch;
13462 } lig_table[] = {
13463 diff -Naur groff-1.18.1.4.orig/src/xditview/Dvi.c groff-1.18.1.4/src/xditview/Dvi.c
13464 --- groff-1.18.1.4.orig/src/xditview/Dvi.c 2000-03-01 13:50:49.000000000 +0000
13465 +++ groff-1.18.1.4/src/xditview/Dvi.c 2006-10-18 18:54:44.000000000 +0000
13466 @@ -4,6 +4,8 @@
13467 #endif /* lint */
13468 #endif /* SABER */
13469
13470 +#include "config.h"
13471 +
13472 /*
13473 * Dvi.c - Dvi display widget
13474 *
13475 @@ -49,6 +51,8 @@
13476 NBI -adobe-new century schoolbook-bold-i-normal--*-100-*-*-*-*-iso8859-1\n\
13477 S -adobe-symbol-medium-r-normal--*-100-*-*-*-*-adobe-fontspecific\n\
13478 SS -adobe-symbol-medium-r-normal--*-100-*-*-*-*-adobe-fontspecific\n\
13479 +M -misc-fixed-medium-r-normal--*-100-*-*-*-*-jisx0208.1983-0\n\
13480 +G -misc-fixed-medium-r-normal--*-100-*-*-*-*-jisx0208.1983-0\
13481 ";
13482
13483 #define offset(field) XtOffset(DviWidget, field)
13484 @@ -94,6 +98,20 @@
13485
13486 static void SaveToFile ();
13487
13488 +/* font.c */
13489 +extern void ParseFontMap();
13490 +extern void DestroyFontMap();
13491 +extern void ForgetFonts();
13492 +
13493 +/* page.c */
13494 +extern void DestroyFileMap();
13495 +extern int SearchPagePosition();
13496 +extern void FileSeek();
13497 +extern void ForgetPagePositions();
13498 +
13499 +/* parse.c */
13500 +extern int ParseInput();
13501 +
13502 DviClassRec dviClassRec = {
13503 {
13504 &widgetClassRec, /* superclass */
13505 @@ -406,6 +424,7 @@
13506 return ret;
13507 }
13508
13509 +void
13510 SetDevice (dw, name)
13511 DviWidget dw;
13512 char *name;
13513 @@ -559,6 +578,9 @@
13514 DviWidgetClass super = (DviWidgetClass) wc->core_class.superclass;
13515 if (wc->command_class.save == InheritSaveToFile)
13516 wc->command_class.save = super->command_class.save;
13517 +#ifdef ENABLE_MULTIBYTE
13518 + DviInitLocale();
13519 +#endif
13520 }
13521
13522 /*
13523 diff -Naur groff-1.18.1.4.orig/src/xditview/DviChar.c groff-1.18.1.4/src/xditview/DviChar.c
13524 --- groff-1.18.1.4.orig/src/xditview/DviChar.c 2002-04-07 04:48:51.000000000 +0000
13525 +++ groff-1.18.1.4/src/xditview/DviChar.c 2006-10-18 18:54:44.000000000 +0000
13526 @@ -5,7 +5,10 @@
13527 * font indexes and back
13528 */
13529
13530 -#include "DviChar.h"
13531 +#include <stdlib.h>
13532 +#include "config.h"
13533 +#include "DviChar.h"
13534 +#include "encoding.h"
13535
13536 extern char *xmalloc();
13537
13538 @@ -21,7 +24,7 @@
13539 static int standard_maps_loaded = 0;
13540 static void load_standard_maps ();
13541 static int hash_name ();
13542 -static dispose_hash(), compute_hash();
13543 +static void dispose_hash(), compute_hash();
13544
13545 DviCharNameMap *
13546 DviFindMap (encoding)
13547 @@ -58,7 +61,7 @@
13548 compute_hash (map);
13549 }
13550
13551 -static
13552 +static void
13553 dispose_hash (map)
13554 DviCharNameMap *map;
13555 {
13556 @@ -88,7 +91,7 @@
13557 return i;
13558 }
13559
13560 -static
13561 +static void
13562 compute_hash (map)
13563 DviCharNameMap *map;
13564 {
13565 @@ -120,7 +123,10 @@
13566 {
13567 int i;
13568 DviCharNameHash *h;
13569 -
13570 +#ifdef ENABLE_MULTIBYTE
13571 + if (map->char_index)
13572 + return (*map->char_index)(map, name);
13573 +#endif
13574 i = hash_name (name) % DVI_HASH_SIZE;
13575 for (h = map->buckets[i]; h; h=h->next)
13576 if (!strcmp (h->name, name))
13577 @@ -128,9 +134,47 @@
13578 return -1;
13579 }
13580
13581 +#ifdef ENABLE_MULTIBYTE
13582 +#include <X11/Xlib.h>
13583 +void
13584 +DviChar2XChar2b(int c, XChar2b *xc)
13585 +{
13586 + /* XXX: can we assume 'c' is EUC-JP ? */
13587 + xc->byte1 = (c >> 8) & 0x7f;
13588 + xc->byte2 = (c) &0x7f;
13589 + return;
13590 +}
13591 +
13592 +int
13593 +DviCharIndexJISX0208_1983(map, name)
13594 + DviCharNameMap *map;
13595 + char *name;
13596 +{
13597 + /* XXX: can we assume name points EUC-JP chars? */
13598 + unsigned char ub = *name, lb = *(name + 1);
13599 + int wc;
13600 + wc = (name[0] & 0xff) << 8;
13601 + wc |= (name[1] & 0xff);
13602 + return(wc);
13603 +}
13604 +
13605 +static DviCharNameMap JISX0208_1983_0_map = {
13606 + "jisx0208.1983-0",
13607 + 0,
13608 + DviChar2XChar2b,
13609 + DviCharIndexJISX0208_1983,
13610 +{
13611 +{ "DummyEntry", /* 0 */},
13612 +}};
13613 +#endif
13614 +
13615 static DviCharNameMap ISO8859_1_map = {
13616 "iso8859-1",
13617 0,
13618 +#ifdef ENABLE_MULTIBYTE
13619 + 0,
13620 + 0,
13621 +#endif
13622 {
13623 { 0, /* 0 */},
13624 { 0, /* 1 */},
13625 @@ -393,6 +437,10 @@
13626 static DviCharNameMap Adobe_Symbol_map = {
13627 "adobe-fontspecific",
13628 1,
13629 +#ifdef ENABLE_MULTIBYTE
13630 + 0,
13631 + 0,
13632 +#endif
13633 {
13634 { 0, /* 0 */},
13635 { 0, /* 1 */},
13636 @@ -659,4 +707,7 @@
13637 standard_maps_loaded = 1;
13638 DviRegisterMap (&ISO8859_1_map);
13639 DviRegisterMap (&Adobe_Symbol_map);
13640 +#ifdef ENABLE_MULTIBYTE
13641 + DviRegisterMap (&JISX0208_1983_0_map);
13642 +#endif
13643 }
13644 diff -Naur groff-1.18.1.4.orig/src/xditview/DviChar.h groff-1.18.1.4/src/xditview/DviChar.h
13645 --- groff-1.18.1.4.orig/src/xditview/DviChar.h 2000-02-06 09:38:57.000000000 +0000
13646 +++ groff-1.18.1.4/src/xditview/DviChar.h 2006-10-18 18:54:44.000000000 +0000
13647 @@ -10,6 +10,8 @@
13648 * CharSetRegistry from the CharSetEncoding
13649 */
13650
13651 +#include "config.h"
13652 +
13653 # define DVI_MAX_SYNONYMS 10
13654 # define DVI_MAP_SIZE 256
13655 # define DVI_HASH_SIZE 256
13656 @@ -23,6 +25,10 @@
13657 typedef struct _dviCharNameMap {
13658 char *encoding;
13659 int special;
13660 +#ifdef ENABLE_MULTIBYTE
13661 + void (*char2XChar2b)(/* int c, XChar2b *xc */);
13662 + int (*char_index)(/* struct _dviCharNameMap *map, char *name */);
13663 +#endif
13664 char *dvi_names[DVI_MAP_SIZE][DVI_MAX_SYNONYMS];
13665 DviCharNameHash *buckets[DVI_HASH_SIZE];
13666 } DviCharNameMap;
13667 diff -Naur groff-1.18.1.4.orig/src/xditview/DviP.h groff-1.18.1.4/src/xditview/DviP.h
13668 --- groff-1.18.1.4.orig/src/xditview/DviP.h 2000-02-06 09:38:57.000000000 +0000
13669 +++ groff-1.18.1.4/src/xditview/DviP.h 2006-10-18 18:54:44.000000000 +0000
13670 @@ -8,6 +8,7 @@
13671
13672 #ifndef _XtDviP_h
13673 #define _XtDviP_h
13674 +#include "config.h"
13675
13676 #include "Dvi.h"
13677 #include "DviChar.h"
13678 @@ -89,9 +90,17 @@
13679 #define DVI_CHAR_CACHE_SIZE 1024
13680
13681 typedef struct _dviCharCache {
13682 +#ifdef ENABLE_MULTIBYTE
13683 + XTextItem16 cache[DVI_TEXT_CACHE_SIZE];
13684 +#else
13685 XTextItem cache[DVI_TEXT_CACHE_SIZE];
13686 +#endif
13687 char adjustable[DVI_TEXT_CACHE_SIZE];
13688 +#ifdef ENABLE_MULTIBYTE
13689 + XChar2b char_cache[DVI_CHAR_CACHE_SIZE];
13690 +#else
13691 char char_cache[DVI_CHAR_CACHE_SIZE];
13692 +#endif
13693 int index;
13694 int max;
13695 int char_index;
13696 @@ -182,6 +191,7 @@
13697 int word_flag;
13698 } DviPart;
13699
13700 +extern int DviGetAndPut();
13701 #define DviGetIn(dw,cp)\
13702 (dw->dvi.tmpFile ? (\
13703 DviGetAndPut (dw, cp) \
13704 @@ -228,6 +238,11 @@
13705 extern DeviceFont *QueryDeviceFont ();
13706
13707 extern char *GetWord(), *GetLine();
13708 +
13709 +#ifdef ENABLE_MULTIBYTE
13710 +extern void DviInitLocale();
13711 +extern int DviGEtCharacter();
13712 +#endif
13713 #endif /* _XtDviP_h */
13714
13715
13716 diff -Naur groff-1.18.1.4.orig/src/xditview/FontMap.jisx0208 groff-1.18.1.4/src/xditview/FontMap.jisx0208
13717 --- groff-1.18.1.4.orig/src/xditview/FontMap.jisx0208 1970-01-01 00:00:00.000000000 +0000
13718 +++ groff-1.18.1.4/src/xditview/FontMap.jisx0208 2006-10-18 18:54:44.000000000 +0000
13719 @@ -0,0 +1,2 @@
13720 +M -misc-fixed-medium-r-normal--*-100-*-*-*-*-jisx0208.1983-0
13721 +G -misc-fixed-medium-r-normal--*-100-*-*-*-*-jisx0208.1983-0
13722 diff -Naur groff-1.18.1.4.orig/src/xditview/GXditview-ad.h groff-1.18.1.4/src/xditview/GXditview-ad.h
13723 --- groff-1.18.1.4.orig/src/xditview/GXditview-ad.h 2000-02-06 09:39:04.000000000 +0000
13724 +++ groff-1.18.1.4/src/xditview/GXditview-ad.h 2006-10-18 18:54:44.000000000 +0000
13725 @@ -50,3 +50,24 @@
13726 "GXditview.promptShell.promptDialog.cancel.label: Cancel",
13727 "GXditview.promptShell.promptDialog.cancel.translations: #override \
13728 <BtnUp>: Cancel() unset()",
13729 +"GXditview*fontMap: \
13730 +TR -adobe-times-medium-r-normal--*-100-*-*-*-*-iso8859-1\\n\
13731 +TI -adobe-times-medium-i-normal--*-100-*-*-*-*-iso8859-1\\n\
13732 +TB -adobe-times-bold-r-normal--*-100-*-*-*-*-iso8859-1\\n\
13733 +TBI -adobe-times-bold-i-normal--*-100-*-*-*-*-iso8859-1\\n\
13734 +CR -adobe-courier-medium-r-normal--*-100-*-*-*-*-iso8859-1\\n\
13735 +CI -adobe-courier-medium-o-normal--*-100-*-*-*-*-iso8859-1\\n\
13736 +CB -adobe-courier-bold-r-normal--*-100-*-*-*-*-iso8859-1\\n\
13737 +CBI -adobe-courier-bold-o-normal--*-100-*-*-*-*-iso8859-1\\n\
13738 +HR -adobe-helvetica-medium-r-normal--*-100-*-*-*-*-iso8859-1\\n\
13739 +HI -adobe-helvetica-medium-o-normal--*-100-*-*-*-*-iso8859-1\\n\
13740 +HB -adobe-helvetica-bold-r-normal--*-100-*-*-*-*-iso8859-1\\n\
13741 +HBI -adobe-helvetica-bold-o-normal--*-100-*-*-*-*-iso8859-1\\n\
13742 +NR -adobe-new century schoolbook-medium-r-normal--*-100-*-*-*-*-iso8859-1\\n\
13743 +NI -adobe-new century schoolbook-medium-i-normal--*-100-*-*-*-*-iso8859-1\\n\
13744 +NB -adobe-new century schoolbook-bold-r-normal--*-100-*-*-*-*-iso8859-1\\n\
13745 +NBI -adobe-new century schoolbook-bold-i-normal--*-100-*-*-*-*-iso8859-1\\n\
13746 +S -adobe-symbol-medium-r-normal--*-100-*-*-*-*-adobe-fontspecific\\n\
13747 +SS -adobe-symbol-medium-r-normal--*-100-*-*-*-*-adobe-fontspecific\\n\
13748 +M -misc-fixed-medium-r-normal--*-100-*-*-*-*-jisx0208.1983-0\\n\
13749 +G -misc-fixed-medium-r-normal--*-100-*-*-*-*-jisx0208.1983-0",
13750 diff -Naur groff-1.18.1.4.orig/src/xditview/GXditview.ad groff-1.18.1.4/src/xditview/GXditview.ad
13751 --- groff-1.18.1.4.orig/src/xditview/GXditview.ad 2000-02-06 09:38:57.000000000 +0000
13752 +++ groff-1.18.1.4/src/xditview/GXditview.ad 2006-10-18 18:54:44.000000000 +0000
13753 @@ -55,3 +55,25 @@
13754 GXditview.promptShell.promptDialog.cancel.label: Cancel
13755 GXditview.promptShell.promptDialog.cancel.translations: #override \
13756 <BtnUp>: Cancel() unset()
13757 +
13758 +GXditview*fontMap: \
13759 +TR -adobe-times-medium-r-normal--*-100-*-*-*-*-iso8859-1\n\
13760 +TI -adobe-times-medium-i-normal--*-100-*-*-*-*-iso8859-1\n\
13761 +TB -adobe-times-bold-r-normal--*-100-*-*-*-*-iso8859-1\n\
13762 +TBI -adobe-times-bold-i-normal--*-100-*-*-*-*-iso8859-1\n\
13763 +CR -adobe-courier-medium-r-normal--*-100-*-*-*-*-iso8859-1\n\
13764 +CI -adobe-courier-medium-o-normal--*-100-*-*-*-*-iso8859-1\n\
13765 +CB -adobe-courier-bold-r-normal--*-100-*-*-*-*-iso8859-1\n\
13766 +CBI -adobe-courier-bold-o-normal--*-100-*-*-*-*-iso8859-1\n\
13767 +HR -adobe-helvetica-medium-r-normal--*-100-*-*-*-*-iso8859-1\n\
13768 +HI -adobe-helvetica-medium-o-normal--*-100-*-*-*-*-iso8859-1\n\
13769 +HB -adobe-helvetica-bold-r-normal--*-100-*-*-*-*-iso8859-1\n\
13770 +HBI -adobe-helvetica-bold-o-normal--*-100-*-*-*-*-iso8859-1\n\
13771 +NR -adobe-new century schoolbook-medium-r-normal--*-100-*-*-*-*-iso8859-1\n\
13772 +NI -adobe-new century schoolbook-medium-i-normal--*-100-*-*-*-*-iso8859-1\n\
13773 +NB -adobe-new century schoolbook-bold-r-normal--*-100-*-*-*-*-iso8859-1\n\
13774 +NBI -adobe-new century schoolbook-bold-i-normal--*-100-*-*-*-*-iso8859-1\n\
13775 +S -adobe-symbol-medium-r-normal--*-100-*-*-*-*-adobe-fontspecific\n\
13776 +SS -adobe-symbol-medium-r-normal--*-100-*-*-*-*-adobe-fontspecific\n\
13777 +M -misc-fixed-medium-r-normal--*-100-*-*-*-*-jisx0208.1983-0\n\
13778 +G -misc-fixed-medium-r-normal--*-100-*-*-*-*-jisx0208.1983-0
13779 diff -Naur groff-1.18.1.4.orig/src/xditview/XFontName.c groff-1.18.1.4/src/xditview/XFontName.c
13780 --- groff-1.18.1.4.orig/src/xditview/XFontName.c 2000-02-06 09:38:58.000000000 +0000
13781 +++ groff-1.18.1.4/src/xditview/XFontName.c 2006-10-18 18:54:44.000000000 +0000
13782 @@ -225,6 +225,7 @@
13783 return True;
13784 }
13785
13786 +Bool
13787 XCopyFontName (name1, name2, fontNameAttributes)
13788 XFontName *name1, *name2;
13789 unsigned int fontNameAttributes;
13790 diff -Naur groff-1.18.1.4.orig/src/xditview/config.h groff-1.18.1.4/src/xditview/config.h
13791 --- groff-1.18.1.4.orig/src/xditview/config.h 1970-01-01 00:00:00.000000000 +0000
13792 +++ groff-1.18.1.4/src/xditview/config.h 2006-10-18 18:54:44.000000000 +0000
13793 @@ -0,0 +1,4 @@
13794 +#ifndef _config_h
13795 +#include "../include/config.h"
13796 +#define _config_h
13797 +#endif
13798 diff -Naur groff-1.18.1.4.orig/src/xditview/device.c groff-1.18.1.4/src/xditview/device.c
13799 --- groff-1.18.1.4.orig/src/xditview/device.c 2000-12-02 21:12:53.000000000 +0000
13800 +++ groff-1.18.1.4/src/xditview/device.c 2006-10-18 18:54:44.000000000 +0000
13801 @@ -2,10 +2,12 @@
13802
13803 #include <stdio.h>
13804 #include <ctype.h>
13805 +#include <stdlib.h>
13806
13807 #include <X11/Xos.h>
13808 #include <X11/Intrinsic.h>
13809
13810 +#include "config.h"
13811 #include "device.h"
13812
13813 #ifndef FONTPATH
13814 @@ -48,6 +50,9 @@
13815 Device *dev;
13816 struct charinfo *char_table[CHAR_TABLE_SIZE];
13817 struct charinfo *code_table[256];
13818 +#ifdef ENABLE_MULTIBYTE
13819 + struct charrange *range;
13820 +#endif
13821 };
13822
13823 struct charinfo {
13824 @@ -71,6 +76,15 @@
13825 static struct charinfo *add_char();
13826 static int read_charset_section();
13827 static char *canonicalize_name();
13828 +#ifdef ENABLE_MULTIBYTE
13829 +struct charrange {
13830 + struct charrange *next;
13831 + int width;
13832 + int start_code;
13833 + int end_code;
13834 +};
13835 +static void add_charrange();
13836 +#endif
13837
13838 static
13839 Device *new_device(name)
13840 @@ -256,6 +270,9 @@
13841 f->char_table[i] = 0;
13842 for (i = 0; i < 256; i++)
13843 f->code_table[i] = 0;
13844 +#ifdef ENABLE_MULTIBYTE
13845 + f->range = 0;
13846 +#endif
13847 return f;
13848 }
13849
13850 @@ -267,6 +284,15 @@
13851
13852 if (!f)
13853 return;
13854 +#ifdef ENABLE_MULTIBYTE
13855 + {
13856 + struct charrange *cp, *cp2;
13857 + for (cp = f->range; cp != NULL; cp = cp2) {
13858 + cp2 = cp->next;
13859 + XtFree((char *)cp);
13860 + }
13861 + }
13862 +#endif
13863 XtFree(f->name);
13864 for (i = 0; i < CHAR_TABLE_SIZE; i++) {
13865 struct charinfo *ptr = f->char_table[i];
13866 @@ -342,6 +368,20 @@
13867 {
13868 struct charinfo *p;
13869
13870 +#ifdef ENABLE_MULTIBYTE
13871 + int wc;
13872 + extern DviWCharP();
13873 + if (DviWCharP(name, &wc)) {
13874 + struct charrange *rp;
13875 + for (rp = f->range; rp != NULL; rp = rp->next) {
13876 + if (rp->start_code <= wc && wc <= rp->end_code) {
13877 + *widthp = scale_round(rp->width, ps,
13878 + f->dev->unitwidth);
13879 + return 1;
13880 + }
13881 + }
13882 + }
13883 +#endif
13884 name = canonicalize_name(name);
13885 for (p = f->char_table[hash_name(name) % CHAR_TABLE_SIZE];; p = p->next) {
13886 if (!p)
13887 @@ -424,6 +464,22 @@
13888 return ci;
13889 }
13890
13891 +#ifdef ENABLE_MULTIBYTE
13892 +static void
13893 +add_charrange(f, width, start_code, end_code)
13894 + DeviceFont *f;
13895 + int width, start_code, end_code;
13896 +{
13897 + struct charrange *ci;
13898 + ci = (struct charrange *)XtMalloc(sizeof(struct charrange));
13899 + ci->start_code = start_code;
13900 + ci->end_code = end_code;
13901 + ci->width = width;
13902 + ci->next = f->range;
13903 + f->range = ci;
13904 +}
13905 +#endif
13906 +
13907 /* Return non-zero for success. */
13908
13909 static
13910 @@ -439,11 +495,31 @@
13911 int width;
13912 int code;
13913 char *p;
13914 +#ifdef ENABLE_MULTIBYTE
13915 + int scode, ecode;
13916 +#endif
13917
13918 current_lineno++;
13919 name = strtok(buf, WS);
13920 if (!name)
13921 continue; /* ignore blank lines */
13922 +#ifdef ENABLE_MULTIBYTE
13923 + if (sscanf(name, "u%X..u%X", &scode, &ecode) == 2) {
13924 + p = strtok((char *)0, WS);
13925 + if (!p)
13926 + break;
13927 + if (sscanf(p, "%d", &width) != 1) {
13928 + error("bad width field");
13929 + return 0;
13930 + }
13931 + p = strtok((char *)0, WS);
13932 + if (!p) {
13933 + error("missing type field");
13934 + return 0;
13935 + }
13936 + add_charrange(f, width, scode, ecode);
13937 + } else {
13938 +#endif
13939 p = strtok((char *)0, WS);
13940 if (!p) /* end of charset section */
13941 break;
13942 @@ -479,6 +555,9 @@
13943 }
13944 last_charinfo = add_char(f, name, width, code);
13945 }
13946 +#ifdef ENABLE_MULTIBYTE
13947 + }
13948 +#endif
13949 }
13950 return 1;
13951 }
13952 @@ -559,7 +638,7 @@
13953 FILE *open_device_file(device_name, file_name, result)
13954 char *device_name, *file_name, **result;
13955 {
13956 - char *buf, *path;
13957 + char *buf;
13958 FILE *fp;
13959
13960 buf = XtMalloc(3 + strlen(device_name) + 1 + strlen(file_name) + 1);
13961 diff -Naur groff-1.18.1.4.orig/src/xditview/draw.c groff-1.18.1.4/src/xditview/draw.c
13962 --- groff-1.18.1.4.orig/src/xditview/draw.c 2000-02-06 09:39:00.000000000 +0000
13963 +++ groff-1.18.1.4/src/xditview/draw.c 2006-10-18 18:54:44.000000000 +0000
13964 @@ -10,6 +10,7 @@
13965 #include <stdio.h>
13966 #include <ctype.h>
13967 #include <math.h>
13968 +#include "config.h"
13969
13970 /* math.h on a Sequent doesn't define M_PI, apparently */
13971 #ifndef M_PI
13972 @@ -17,6 +18,7 @@
13973 #endif
13974
13975 #include "DviP.h"
13976 +#include "encoding.h" /* XXX */
13977
13978 #define DeviceToX(dw, n) ((int)((n) * (dw)->dvi.scale_factor + .5))
13979 #define XPos(dw) (DeviceToX((dw), (dw)->dvi.state->x - \
13980 @@ -25,6 +27,10 @@
13981
13982 static int FakeCharacter();
13983
13984 +/* font.c */
13985 +extern int MaxFontPosition();
13986 +
13987 +void
13988 HorizontalMove(dw, delta)
13989 DviWidget dw;
13990 int delta;
13991 @@ -32,6 +38,7 @@
13992 dw->dvi.state->x += delta;
13993 }
13994
13995 +void
13996 HorizontalGoto(dw, NewPosition)
13997 DviWidget dw;
13998 int NewPosition;
13999 @@ -39,6 +46,7 @@
14000 dw->dvi.state->x = NewPosition;
14001 }
14002
14003 +void
14004 VerticalMove(dw, delta)
14005 DviWidget dw;
14006 int delta;
14007 @@ -46,6 +54,7 @@
14008 dw->dvi.state->y += delta;
14009 }
14010
14011 +void
14012 VerticalGoto(dw, NewPosition)
14013 DviWidget dw;
14014 int NewPosition;
14015 @@ -53,6 +62,7 @@
14016 dw->dvi.state->y = NewPosition;
14017 }
14018
14019 +void
14020 AdjustCacheDeltas (dw)
14021 DviWidget dw;
14022 {
14023 @@ -94,14 +104,21 @@
14024 }
14025 }
14026
14027 +void
14028 FlushCharCache (dw)
14029 DviWidget dw;
14030 {
14031 if (dw->dvi.cache.char_index != 0) {
14032 AdjustCacheDeltas (dw);
14033 +#ifdef ENABLE_MULTIBYTE
14034 + XDrawText16 (XtDisplay (dw), XtWindow (dw), dw->dvi.normal_GC,
14035 + dw->dvi.cache.start_x, dw->dvi.cache.start_y,
14036 + dw->dvi.cache.cache, dw->dvi.cache.index + 1);
14037 +#else
14038 XDrawText (XtDisplay (dw), XtWindow (dw), dw->dvi.normal_GC,
14039 dw->dvi.cache.start_x, dw->dvi.cache.start_y,
14040 dw->dvi.cache.cache, dw->dvi.cache.index + 1);
14041 +#endif
14042 }
14043 dw->dvi.cache.index = 0;
14044 dw->dvi.cache.max = DVI_TEXT_CACHE_SIZE;
14045 @@ -115,6 +132,7 @@
14046 dw->dvi.cache.start_y = dw->dvi.cache.y = YPos (dw);
14047 }
14048
14049 +void
14050 Newline (dw)
14051 DviWidget dw;
14052 {
14053 @@ -123,6 +141,7 @@
14054 dw->dvi.word_flag = 0;
14055 }
14056
14057 +void
14058 Word (dw)
14059 DviWidget dw;
14060 {
14061 @@ -135,7 +154,6 @@
14062 :\
14063 (fi)->max_bounds.width\
14064 )
14065 -
14066
14067 static
14068 int charExists (fi, c)
14069 @@ -152,14 +170,25 @@
14070 || p->ascent != 0 || p->descent != 0 || p->attributes != 0);
14071 }
14072
14073 -static
14074 +static void
14075 +#ifdef ENABLE_MULTIBYTE
14076 +DoCharacter (dw, c, wid, char2xchar2b)
14077 +#else
14078 DoCharacter (dw, c, wid)
14079 +#endif
14080 DviWidget dw;
14081 int c;
14082 int wid; /* width in device units */
14083 +#ifdef ENABLE_MULTIBYTE
14084 + void (*char2xchar2b)();
14085 +#endif
14086 {
14087 register XFontStruct *font;
14088 +#ifdef ENABLE_MULTIBYTE
14089 + register XTextItem16 *text;
14090 +#else
14091 register XTextItem *text;
14092 +#endif
14093 int x, y;
14094
14095 x = XPos(dw);
14096 @@ -225,9 +254,25 @@
14097 text->font = None;
14098 dw->dvi.cache.x += text->delta;
14099 }
14100 +#ifdef ENABLE_MULTIBYTE
14101 + if (charExists(font, c) || char2xchar2b) {
14102 +#else
14103 if (charExists(font, c)) {
14104 +#endif
14105 int w;
14106 +#ifdef ENABLE_MULTIBYTE
14107 + if (char2xchar2b) {
14108 + (*char2xchar2b)(c,
14109 + &dw->dvi.cache.char_cache[dw->dvi.cache.char_index++]);
14110 + } else {
14111 + dw->dvi.cache.char_cache[dw->dvi.cache.char_index].
14112 + byte1 = (unsigned char)'\0';
14113 + dw->dvi.cache.char_cache[dw->dvi.cache.char_index++].
14114 + byte2 = (unsigned char)c;
14115 + }
14116 +#else
14117 dw->dvi.cache.char_cache[dw->dvi.cache.char_index++] = (char) c;
14118 +#endif
14119 ++text->nchars;
14120 w = charWidth(font, c);
14121 dw->dvi.cache.x += w;
14122 @@ -291,7 +336,11 @@
14123 if (map)
14124 c = DviCharIndex (map, buf);
14125 if (c >= 0)
14126 +#ifdef ENABLE_MULTIBYTE
14127 + DoCharacter (dw, c, wid, map->char2XChar2b);
14128 +#else
14129 DoCharacter (dw, c, wid);
14130 +#endif
14131 else
14132 (void) FakeCharacter (dw, buf, wid);
14133 dw->dvi.state->font_number = prevFont;
14134 @@ -345,6 +394,7 @@
14135 return 1;
14136 }
14137
14138 +void
14139 PutNumberedCharacter (dw, c)
14140 DviWidget dw;
14141 int c;
14142 @@ -368,7 +418,11 @@
14143 dw->dvi.state->font_size, c, &wid))
14144 return;
14145 if (dw->dvi.native) {
14146 +#ifdef ENABLE_MULTIBYTE
14147 + DoCharacter (dw, c, wid, NULL);
14148 +#else
14149 DoCharacter (dw, c, wid);
14150 +#endif
14151 return;
14152 }
14153 map = QueryFontMap (dw, dw->dvi.state->font_number);
14154 @@ -379,7 +433,11 @@
14155 name = device_name_for_code ((DeviceFont *)0, c)) {
14156 int code = DviCharIndex (map, name);
14157 if (code >= 0) {
14158 +#ifdef ENABLE_MULTIBYTE
14159 + DoCharacter (dw, code, wid, map->char2XChar2b);
14160 +#else
14161 DoCharacter (dw, code, wid);
14162 +#endif
14163 break;
14164 }
14165 if (FakeCharacter (dw, name, wid))
14166 @@ -387,13 +445,14 @@
14167 }
14168 }
14169
14170 +void
14171 ClearPage (dw)
14172 DviWidget dw;
14173 {
14174 XClearWindow (XtDisplay (dw), XtWindow (dw));
14175 }
14176
14177 -static
14178 +static void
14179 setGC (dw)
14180 DviWidget dw;
14181 {
14182 @@ -417,7 +476,7 @@
14183 }
14184 }
14185
14186 -static
14187 +static void
14188 setFillGC (dw)
14189 DviWidget dw;
14190 {
14191 @@ -444,6 +503,7 @@
14192 }
14193 }
14194
14195 +void
14196 DrawLine (dw, x, y)
14197 DviWidget dw;
14198 int x, y;
14199 @@ -459,6 +519,7 @@
14200 xp + DeviceToX (dw, x), yp + DeviceToX (dw, y));
14201 }
14202
14203 +void
14204 DrawCircle (dw, diam)
14205 DviWidget dw;
14206 int diam;
14207 @@ -473,6 +534,7 @@
14208 d, d, 0, 64*360);
14209 }
14210
14211 +void
14212 DrawFilledCircle (dw, diam)
14213 DviWidget dw;
14214 int diam;
14215 @@ -490,6 +552,7 @@
14216 d, d, 0, 64*360);
14217 }
14218
14219 +void
14220 DrawEllipse (dw, a, b)
14221 DviWidget dw;
14222 int a, b;
14223 @@ -501,6 +564,7 @@
14224 DeviceToX (dw, a), DeviceToX (dw, b), 0, 64*360);
14225 }
14226
14227 +void
14228 DrawFilledEllipse (dw, a, b)
14229 DviWidget dw;
14230 int a, b;
14231 @@ -515,6 +579,7 @@
14232 DeviceToX (dw, a), DeviceToX (dw, b), 0, 64*360);
14233 }
14234
14235 +void
14236 DrawArc (dw, x0, y0, x1, y1)
14237 DviWidget dw;
14238 int x0, y0, x1, y1;
14239 @@ -541,6 +606,7 @@
14240 rad*2, rad*2, angle1, angle2);
14241 }
14242
14243 +void
14244 DrawPolygon (dw, v, n)
14245 DviWidget dw;
14246 int *v;
14247 @@ -572,7 +638,7 @@
14248 XtFree((char *)p);
14249 }
14250
14251 -
14252 +void
14253 DrawFilledPolygon (dw, v, n)
14254 DviWidget dw;
14255 int *v;
14256 @@ -608,7 +674,7 @@
14257
14258 #define POINTS_MAX 10000
14259
14260 -static
14261 +static void
14262 appendPoint(points, pointi, x, y)
14263 XPoint *points;
14264 int *pointi;
14265 @@ -623,7 +689,7 @@
14266
14267 #define FLATNESS 1
14268
14269 -static
14270 +static void
14271 flattenCurve(points, pointi, x2, y2, x3, y3, x4, y4)
14272 XPoint *points;
14273 int *pointi;
14274 @@ -659,7 +725,7 @@
14275 }
14276 }
14277
14278 -
14279 +void
14280 DrawSpline (dw, v, n)
14281 DviWidget dw;
14282 int *v;
14283 diff -Naur groff-1.18.1.4.orig/src/xditview/encoding.h groff-1.18.1.4/src/xditview/encoding.h
14284 --- groff-1.18.1.4.orig/src/xditview/encoding.h 1970-01-01 00:00:00.000000000 +0000
14285 +++ groff-1.18.1.4/src/xditview/encoding.h 2006-10-18 18:54:44.000000000 +0000
14286 @@ -0,0 +1,31 @@
14287 +// -*- C++ -*-
14288 +/* Copyright (c) 2001 Fumitoshi UKAI <ukai@debian.or.jp>
14289 +
14290 +This file is part of groff.
14291 +
14292 +groff is free software; you can redistribute it and/or modify it under
14293 +the terms of the GNU General Public License as published by the Free
14294 +Software Foundation; either version 2, or (at your option) any later
14295 +version.
14296 +
14297 +groff is distributed in the hope that it will be useful, but WITHOUT ANY
14298 +WARRANTY; without even the implied warranty of MERCHANTABILITY or
14299 +FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
14300 +for more details.
14301 +
14302 +You should have received a copy of the GNU General Public License
14303 +along with this program; if not, write to the Free Software
14304 +Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */
14305 +
14306 +#ifndef ENCODING_H
14307 +#define ENCODING_H
14308 +
14309 +#include "config.h"
14310 +
14311 +#ifdef ENABLE_MULTIBYTE
14312 +typedef unsigned int wchar;
14313 +#else
14314 +typedef char wchar;
14315 +#endif
14316 +
14317 +#endif
14318 diff -Naur groff-1.18.1.4.orig/src/xditview/font.c groff-1.18.1.4/src/xditview/font.c
14319 --- groff-1.18.1.4.orig/src/xditview/font.c 2000-02-06 09:39:01.000000000 +0000
14320 +++ groff-1.18.1.4/src/xditview/font.c 2006-10-18 18:54:44.000000000 +0000
14321 @@ -9,10 +9,16 @@
14322 #include <X11/StringDefs.h>
14323 #include <stdio.h>
14324 #include <ctype.h>
14325 +#include <stdlib.h>
14326 #include "DviP.h"
14327 #include "XFontName.h"
14328
14329 -static DisposeFontSizes();
14330 +static void DisposeFontSizes();
14331 +void DestroyFontMap();
14332 +
14333 +/* XFontName.c */
14334 +extern Bool XParseFontName();
14335 +extern Bool XFormatFontName();
14336
14337 static char *
14338 savestr (s)
14339 @@ -115,7 +121,7 @@
14340 # define SizePosition 8
14341 # define EncodingPosition 13
14342
14343 -static
14344 +static int
14345 ConvertFontNameToSize (n)
14346 char *n;
14347 {
14348 @@ -191,7 +197,7 @@
14349 return sizes;
14350 }
14351
14352 -static
14353 +static void
14354 DisposeFontSizes (dw, fs)
14355 DviWidget dw;
14356 DviFontSizeList *fs;
14357 @@ -263,6 +269,7 @@
14358 return f;
14359 }
14360
14361 +void
14362 ForgetFonts (dw)
14363 DviWidget dw;
14364 {
14365 @@ -322,6 +329,7 @@
14366 }
14367 #endif
14368
14369 +void
14370 ParseFontMap (dw)
14371 DviWidget dw;
14372 {
14373 @@ -357,6 +365,7 @@
14374 dw->dvi.font_map = fm;
14375 }
14376
14377 +void
14378 DestroyFontMap (font_map)
14379 DviFontMap *font_map;
14380 {
14381 @@ -374,6 +383,7 @@
14382
14383 /* ARGSUSED */
14384
14385 +void
14386 SetFontPosition (dw, position, dvi_name, extra)
14387 DviWidget dw;
14388 int position;
14389 diff -Naur groff-1.18.1.4.orig/src/xditview/lex.c groff-1.18.1.4/src/xditview/lex.c
14390 --- groff-1.18.1.4.orig/src/xditview/lex.c 2000-02-06 09:39:02.000000000 +0000
14391 +++ groff-1.18.1.4/src/xditview/lex.c 2006-10-18 18:54:44.000000000 +0000
14392 @@ -2,8 +2,10 @@
14393 #include <X11/IntrinsicP.h>
14394 #include <X11/StringDefs.h>
14395 #include <stdio.h>
14396 +#include "config.h"
14397 #include "DviP.h"
14398
14399 +int
14400 DviGetAndPut(dw, cp)
14401 DviWidget dw;
14402 int *cp;
14403 @@ -67,6 +69,7 @@
14404 return Buffer;
14405 }
14406
14407 +int
14408 GetNumber(dw)
14409 DviWidget dw;
14410 {
14411 @@ -90,6 +93,98 @@
14412 DviUngetC(dw, c);
14413 return i;
14414 }
14415 +
14416 +#ifdef ENABLE_MULTIBYTE
14417 +#include <locale.h>
14418 +#include <langinfo.h>
14419 +#include <iconv.h>
14420 +#include <errno.h>
14421 +
14422 +static iconv_t icd;
14423 +void
14424 +DviInitLocale()
14425 +{
14426 + char *enc;
14427 + setlocale(LC_ALL, "");
14428 + enc = nl_langinfo(CODESET);
14429 + icd = iconv_open("UCS-2BE", enc);
14430 +}
14431 +
14432 +int
14433 +DviGetCharacter(dw, cp)
14434 + DviWidget dw;
14435 + char *cp;
14436 +{
14437 + char inbuf[8];
14438 + char outbuf[8];
14439 + char *inp, *outp;
14440 + size_t inbytesleft, outbytesleft = 8;
14441 + int i = 0;
14442 + int j;
14443 + int wc = 0;
14444 + int c;
14445 + size_t r;
14446 +
14447 + while (wc == 0) {
14448 + DviGetC(dw, &c);
14449 + if (c == EOF)
14450 + return EOF;
14451 + inbuf[i++] = c;
14452 + inbytesleft = i;
14453 + outbytesleft = BUFSIZ;
14454 + inp = inbuf;
14455 + outp = outbuf;
14456 + r = iconv(icd, &inp, &inbytesleft, &outp, &outbytesleft);
14457 + if (r == (size_t)-1) {
14458 + if (errno == EILSEQ) {
14459 + /* illegal sequence */
14460 + } else if (errno == EINVAL) {
14461 + /* incomplete sequence */
14462 + continue;
14463 + } else if (errno == E2BIG) {
14464 + /* no room to output? */
14465 +
14466 + }
14467 + DviUngetC(dw, c);
14468 + }
14469 + /* ok - pass inbuf to cp */
14470 + for (j = 0; j < i; j++) {
14471 + cp[j] = inbuf[j];
14472 + }
14473 + cp[j] = '\0';
14474 + return i;
14475 + }
14476 + /* NOT REACHED */
14477 +}
14478 +
14479 +int
14480 +DviWCharP(char *name, int *wc)
14481 +{
14482 + char outbuf[BUFSIZ];
14483 + char *inp, *outp;
14484 + int inbytesleft, outbytesleft;
14485 + size_t r;
14486 + *wc = 0;
14487 + inp = name;
14488 + inbytesleft = strlen(name);
14489 + outp = outbuf;
14490 + outbytesleft = sizeof(outbuf)-1;
14491 + r = iconv(icd, &inp, &inbytesleft, &outp, &outbytesleft);
14492 + if (r < 0) {
14493 + return 0;
14494 + }
14495 + /* UCS-2 check */
14496 + if (outbuf + 2 != outp) {
14497 + return 0;
14498 + }
14499 + for (inp = outbuf; inp < outp; inp++) {
14500 + *wc <<= 8;
14501 + *wc |= (*inp) & 0x0ff;
14502 + }
14503 + return 1;
14504 +}
14505 +
14506 +#endif
14507
14508 /*
14509 Local Variables:
14510 diff -Naur groff-1.18.1.4.orig/src/xditview/page.c groff-1.18.1.4/src/xditview/page.c
14511 --- groff-1.18.1.4.orig/src/xditview/page.c 2000-02-06 09:39:02.000000000 +0000
14512 +++ groff-1.18.1.4/src/xditview/page.c 2006-10-18 18:54:44.000000000 +0000
14513 @@ -28,6 +28,7 @@
14514 return m;
14515 }
14516
14517 +void
14518 DestroyFileMap (m)
14519 DviFileMap *m;
14520 {
14521 @@ -39,6 +40,7 @@
14522 }
14523 }
14524
14525 +void
14526 ForgetPagePositions (dw)
14527 DviWidget dw;
14528 {
14529 @@ -46,6 +48,7 @@
14530 dw->dvi.file_map = 0;
14531 }
14532
14533 +void
14534 RememberPagePosition(dw, number)
14535 DviWidget dw;
14536 int number;
14537 @@ -64,6 +67,7 @@
14538 m->position = ftell (dw->dvi.file);
14539 }
14540
14541 +int
14542 SearchPagePosition (dw, number)
14543 DviWidget dw;
14544 int number;
14545 @@ -75,6 +79,7 @@
14546 return m->position;
14547 }
14548
14549 +void
14550 FileSeek(dw, position)
14551 DviWidget dw;
14552 long position;
14553 diff -Naur groff-1.18.1.4.orig/src/xditview/parse.c groff-1.18.1.4/src/xditview/parse.c
14554 --- groff-1.18.1.4.orig/src/xditview/parse.c 2002-04-07 04:48:51.000000000 +0000
14555 +++ groff-1.18.1.4/src/xditview/parse.c 2006-10-18 18:54:44.000000000 +0000
14556 @@ -9,15 +9,49 @@
14557 #include <X11/StringDefs.h>
14558 #include <stdio.h>
14559 #include <ctype.h>
14560 +#include "config.h"
14561 #include "DviP.h"
14562 +#include "encoding.h"
14563
14564 static int StopSeen = 0;
14565 -static ParseDrawFunction(), ParseDeviceControl();
14566 -static push_env(), pop_env();
14567 +static void ParseDrawFunction(), ParseDeviceControl();
14568 +static void push_env(), pop_env();
14569 +
14570 +/* draw.c */
14571 +extern int PutCharacter();
14572 +extern int PutNumberedCharacter();
14573 +extern void HorizontalGoto();
14574 +extern void Word();
14575 +extern void VerticalGoto();
14576 +extern void VerticalMove();
14577 +extern void FlushCharCache();
14578 +extern void Newline();
14579 +extern void DrawLine();
14580 +extern void DrawCircle();
14581 +extern void DrawFilledCircle();
14582 +extern void DrawEllipse();
14583 +extern void DrawFilledEllipse();
14584 +extern void DrawArc();
14585 +extern void DrawPolygon();
14586 +extern void DrawFilledPolygon();
14587 +extern void DrawSpline();
14588 +
14589 +/* Dvi.c */
14590 +extern void SetDevice();
14591 +
14592 +/* page.c */
14593 +extern void RememberPagePosition();
14594 +
14595 +/* font.c */
14596 +extern void SetFontPosition();
14597 +
14598 +/* lex.c */
14599 +extern int GetNumber();
14600
14601 #define HorizontalMove(dw, delta) ((dw)->dvi.state->x += (delta))
14602
14603
14604 +int
14605 ParseInput(dw)
14606 register DviWidget dw;
14607 {
14608 @@ -57,11 +91,17 @@
14609 DviGetC(dw,&otherc)-'0');
14610 /* fall through */
14611 case 'c': /* single ascii character */
14612 +#ifdef ENABLE_MULTIBYTE
14613 + DviGetCharacter(dw, Buffer);
14614 + if (Buffer[0] == ' ')
14615 + break;
14616 +#else
14617 DviGetC(dw,&c);
14618 if (c == ' ')
14619 break;
14620 Buffer[0] = c;
14621 Buffer[1] = '\0';
14622 +#endif
14623 (void) PutCharacter (dw, Buffer);
14624 break;
14625 case 'C':
14626 @@ -69,10 +109,15 @@
14627 (void) PutCharacter (dw, Buffer);
14628 break;
14629 case 't':
14630 +#ifdef ENABLE_MULTIBYTE
14631 + while (DviGetCharacter(dw, Buffer) != EOF
14632 + && Buffer[0] != ' ' && Buffer[0] != '\n') {
14633 +#else
14634 Buffer[1] = '\0';
14635 while (DviGetC (dw, &c) != EOF
14636 && c != ' ' && c != '\n') {
14637 Buffer[0] = c;
14638 +#endif
14639 HorizontalMove (dw, PutCharacter (dw, Buffer));
14640 }
14641 break;
14642 @@ -158,7 +203,7 @@
14643 }
14644 }
14645
14646 -static
14647 +static void
14648 push_env(dw)
14649 DviWidget dw;
14650 {
14651 @@ -177,7 +222,7 @@
14652 dw->dvi.state = new;
14653 }
14654
14655 -static
14656 +static void
14657 pop_env(dw)
14658 DviWidget dw;
14659 {
14660 @@ -188,7 +233,7 @@
14661 XtFree ((char *) old);
14662 }
14663
14664 -static
14665 +static void
14666 InitTypesetter (dw)
14667 DviWidget dw;
14668 {
14669 @@ -200,7 +245,7 @@
14670
14671 #define DRAW_ARGS_MAX 128
14672
14673 -static
14674 +static void
14675 ParseDrawFunction(dw, buf)
14676 DviWidget dw;
14677 char *buf;
14678 @@ -284,13 +329,12 @@
14679 }
14680 }
14681
14682 -static
14683 +static void
14684 ParseDeviceControl(dw) /* Parse the x commands */
14685 DviWidget dw;
14686 {
14687 char str[20], str1[50];
14688 int c, n;
14689 - extern int LastPage, CurrentPage;
14690
14691 GetWord (dw, str, 20);
14692 switch (str[0]) { /* crude for now */
14693 diff -Naur groff-1.18.1.4.orig/src/xditview/xditview.c groff-1.18.1.4/src/xditview/xditview.c
14694 --- groff-1.18.1.4.orig/src/xditview/xditview.c 2002-06-23 14:11:55.000000000 +0000
14695 +++ groff-1.18.1.4/src/xditview/xditview.c 2006-10-18 18:54:44.000000000 +0000
14696 @@ -46,6 +46,7 @@
14697 #include <X11/Xaw/SimpleMenu.h>
14698 #include <X11/Xaw/SmeBSB.h>
14699
14700 +#include <stdlib.h>
14701 #include <signal.h>
14702
14703 #include "Dvi.h"
14704 @@ -101,7 +102,7 @@
14705 * Report the syntax for calling xditview.
14706 */
14707
14708 -static
14709 +static void
14710 Syntax(call)
14711 char *call;
14712 {
14713 @@ -126,12 +127,12 @@
14714 char *name;
14715 void (*function)();
14716 } menuEntries[] = {
14717 - "nextPage", NextPage,
14718 - "previousPage", PreviousPage,
14719 - "selectPage", SelectPage,
14720 - "print", Print,
14721 - "openFile", OpenFile,
14722 - "quit", Quit,
14723 + {"nextPage", NextPage},
14724 + {"previousPage",PreviousPage},
14725 + {"selectPage", SelectPage},
14726 + {"print", Print},
14727 + {"openFile", OpenFile},
14728 + {"quit", Quit},
14729 };
14730
14731 static void NextPageAction(), PreviousPageAction(), SelectPageAction();
14732 @@ -139,17 +140,18 @@
14733 static void AcceptAction(), CancelAction();
14734 static void PrintAction();
14735 static void RerasterizeAction();
14736 +static void MakePrompt();
14737
14738 XtActionsRec xditview_actions[] = {
14739 - "NextPage", NextPageAction,
14740 - "PreviousPage", PreviousPageAction,
14741 - "SelectPage", SelectPageAction,
14742 - "Print", PrintAction,
14743 - "OpenFile", OpenFileAction,
14744 - "Rerasterize", RerasterizeAction,
14745 - "Quit", QuitAction,
14746 - "Accept", AcceptAction,
14747 - "Cancel", CancelAction,
14748 + {"NextPage", NextPageAction},
14749 + {"PreviousPage", PreviousPageAction},
14750 + {"SelectPage", SelectPageAction},
14751 + {"Print", PrintAction},
14752 + {"OpenFile", OpenFileAction},
14753 + {"Rerasterize", RerasterizeAction},
14754 + {"Quit", QuitAction},
14755 + {"Accept", AcceptAction},
14756 + {"Cancel", CancelAction},
14757 };
14758
14759 #define MenuNextPage 0
14760 @@ -318,6 +320,7 @@
14761
14762 static char fileBuf[1024];
14763
14764 +static void
14765 ResetMenuEntry (entry)
14766 Widget entry;
14767 {
14768 @@ -516,6 +519,7 @@
14769 CancelAction (widget, event, params, num_params);
14770 }
14771
14772 +static void
14773 MakePrompt(centerw, prompt, func, def)
14774 Widget centerw;
14775 char *prompt;
14776 diff -Naur groff-1.18.1.4.orig/src/xditview/xtotroff.c groff-1.18.1.4/src/xditview/xtotroff.c
14777 --- groff-1.18.1.4.orig/src/xditview/xtotroff.c 2000-03-01 13:50:49.000000000 +0000
14778 +++ groff-1.18.1.4/src/xditview/xtotroff.c 2006-10-18 18:54:44.000000000 +0000
14779 @@ -2,6 +2,7 @@
14780 * xtotroff
14781 *
14782 * convert X font metrics into troff font metrics
14783 + * XXX: ENABLE_MULTIBYTE may not work yet
14784 */
14785
14786 #include <X11/Xlib.h>
14787 @@ -10,6 +11,7 @@
14788 #include <unistd.h>
14789 #include <stdlib.h>
14790 #include <fcntl.h>
14791 +#include "config.h"
14792 #include "XFontName.h"
14793 #include "DviChar.h"
14794
14795 @@ -171,6 +173,47 @@
14796 fprintf (out, "spacewidth %d\n", w);
14797 }
14798 fprintf (out, "charset\n");
14799 +#if 0 /* def ENABLE_MULTIBYTE */
14800 + if (fi->min_byte1 != 0 || fi->max_byte1 != 0) {
14801 + /*
14802 + * 2 byte code font.
14803 + */
14804 + int N;
14805 + int D = fi->max_char_or_byte2 - fi->min_char_or_byte2 + 1;
14806 + int max = (fi->max_byte1 - fi->min_byte1 + 1) *
14807 + (fi->max_char_or_byte2 - fi->min_char_or_byte2 + 1);
14808 + unsigned byte1;
14809 + unsigned byte2;
14810 + unsigned int euc_code;
14811 +
14812 + for (N = 0; N < max; N++) {
14813 + byte1 = N / D + fi->min_byte1;
14814 + byte2 = N % D + fi->min_char_or_byte2;
14815 + euc_code = ((byte1 << 8) | byte2) & 0xffff | 0x8080;
14816 + wid = fi->max_bounds.width;
14817 + fputc(byte1 & 0xff | 0x80, out);/* output EUC code */
14818 + fputc(byte2 & 0xff | 0x80, out);/* output EUC code */
14819 + fprintf (out, "\t%d", wid);
14820 + if (groff_flag) {
14821 + int param[5];
14822 + param[0] = fi->max_bounds.ascent;
14823 + param[1] = fi->max_bounds.descent;
14824 + param[2] = 0 /* charRBearing (fi, c) - wid */;
14825 + param[3] = 0 /* charLBearing (fi, c) */;
14826 + param[4] = 0; /* XXX */
14827 + for (j = 0; j < 5; j++)
14828 + if (param[j] < 0)
14829 + param[j] = 0;
14830 + for (j = 4; j >= 0; j--)
14831 + if (param[j] != 0)
14832 + break;
14833 + for (k = 0; k <= j; k++)
14834 + fprintf (out, ",%d", param[k]);
14835 + }
14836 + fprintf (out, "\t0\t%#x\n", euc_code);
14837 + }
14838 + } else
14839 +#endif /* ENABLE_MULTIBYTE */
14840 for (c = fi->min_char_or_byte2; c <= fi->max_char_or_byte2; c++) {
14841 char *name = DviCharName (char_map,c,0);
14842 if (charExists (fi, c) && (groff_flag || name)) {
14843 diff -Naur groff-1.18.1.4.orig/stamp-h groff-1.18.1.4/stamp-h
14844 --- groff-1.18.1.4.orig/stamp-h 1970-01-01 00:00:00.000000000 +0000
14845 +++ groff-1.18.1.4/stamp-h 2006-10-18 18:54:44.000000000 +0000
14846 @@ -0,0 +1 @@
14847 +timestamp
14848 diff -Naur groff-1.18.1.4.orig/tmac/Makefile.sub groff-1.18.1.4/tmac/Makefile.sub
14849 --- groff-1.18.1.4.orig/tmac/Makefile.sub 2002-07-13 20:41:16.000000000 +0000
14850 +++ groff-1.18.1.4/tmac/Makefile.sub 2006-10-18 18:54:44.000000000 +0000
14851 @@ -25,15 +25,19 @@
14852 html.tmac www.tmac \
14853 eqnrc \
14854 troffrc troffrc-end \
14855 - hyphen.us
14856 + hyphen.us \
14857 + andocj.tmac \
14858 + euc-jp.tmac \
14859 + gb.tmac big5.tmac
14860 SPECIALFILES=an.tmac man.tmac s.tmac ms.tmac
14861 -STRIPFILES=e.tmac doc.tmac doc-old.tmac
14862 -MDOCFILES=doc-common doc-ditroff doc-nroff doc-syms
14863 +STRIPFILES=e.tmac doc.tmac doc-old.tmac docj.tmac
14864 +MDOCFILES=doc-common doc-ditroff doc-nroff doc-syms docj-ditroff docj-nroff
14865 mdocdir=$(tmacdir)/mdoc
14866 CLEANADD=\
14867 stamp-wrap stamp-sed *-wrap man.tmac-sed ms.tmac-sed \
14868 stamp-strip e.tmac-s doc.tmac-s doc-old.tmac-s \
14869 - doc-common-s doc-ditroff-s doc-nroff-s doc-syms-s mdoc.local-s
14870 + doc-common-s doc-ditroff-s doc-nroff-s doc-syms-s mdoc.local-s \
14871 + docj.tmac-s docj-ditroff-s docj-nroff-s
14872 tmac_s_prefix=
14873 tmac_an_prefix=
14874 tmac_wrap=
14875 diff -Naur groff-1.18.1.4.orig/tmac/andocj.tmac groff-1.18.1.4/tmac/andocj.tmac
14876 --- groff-1.18.1.4.orig/tmac/andocj.tmac 1970-01-01 00:00:00.000000000 +0000
14877 +++ groff-1.18.1.4/tmac/andocj.tmac 2006-10-18 18:54:44.000000000 +0000
14878 @@ -0,0 +1,12 @@
14879 +.\" Load either tmac.an or tmac.doc.
14880 +.if !\n(.g .ab These macros require groff.
14881 +.de Dd
14882 +.rm Dd
14883 +.do mso tmac.docj
14884 +\\*(Dd\\
14885 +..
14886 +.de TH
14887 +.rm TH
14888 +.do mso tmac.an
14889 +\\*(TH\\
14890 +..
14891 diff -Naur groff-1.18.1.4.orig/tmac/big5.tmac groff-1.18.1.4/tmac/big5.tmac
14892 --- groff-1.18.1.4.orig/tmac/big5.tmac 1970-01-01 00:00:00.000000000 +0000
14893 +++ groff-1.18.1.4/tmac/big5.tmac 2006-10-18 18:54:44.000000000 +0000
14894 @@ -0,0 +1,15 @@
14895 +.\" Kinsoku table for the BIG5 encoding of Chinese, recoded from
14896 +.\" kinsoku.el in Emacs 22.0.50.
14897 +.\" Needs review by native zh_TW speaker.
14898 +.\"
14899 +.cflags 256 ¡B¡C¡A¡D¡G¡F¡H¡I¡Ã¡Ä
14900 +.cflags 256 ¡²Éi¡X¡þ¡U¡L¡¦¡¨¡^
14901 +.cflags 256 ¡f¡b¡r¡n¡v¡z¡j¡Ñ¡×¡Õ¡Ø¡Û¡ñ¢X
14902 +.cflags 256 ¡½¡µ¡¶¡¾¡¿¡°¢E¡÷¡ö¡ô¡ã
14903 +.cflags 512 ¡Ö¡Ù¡ï¡ð¢X¢C¡ì
14904 +.cflags 512 ÛÖ¶yÅV¡D¡¶¡ù£H¢}
14905 +.\"
14906 +.\" http://tcl.apache.org/sources/tcl/tools/encoding/big5.txt lists U+FF0D
14907 +.\" as FULLWIDTH HYPHEN-MINUS. Is this correct?
14908 +.\"
14909 +.hc ¡Ð
14910 diff -Naur groff-1.18.1.4.orig/tmac/docj-ditroff groff-1.18.1.4/tmac/docj-ditroff
14911 --- groff-1.18.1.4.orig/tmac/docj-ditroff 1970-01-01 00:00:00.000000000 +0000
14912 +++ groff-1.18.1.4/tmac/docj-ditroff 2006-10-18 18:54:44.000000000 +0000
14913 @@ -0,0 +1,305 @@
14914 +.\" Copyright (c) 1991 The Regents of the University of California.
14915 +.\" All rights reserved.
14916 +.\"
14917 +.\" Redistribution and use in source and binary forms, with or without
14918 +.\" modification, are permitted provided that the following conditions
14919 +.\" are met:
14920 +.\" 1. Redistributions of source code must retain the above copyright
14921 +.\" notice, this list of conditions and the following disclaimer.
14922 +.\" 2. Redistributions in binary form must reproduce the above copyright
14923 +.\" notice, this list of conditions and the following disclaimer in the
14924 +.\" documentation and/or other materials provided with the distribution.
14925 +.\" 3. All advertising materials mentioning features or use of this software
14926 +.\" must display the following acknowledgement:
14927 +.\" This product includes software developed by the University of
14928 +.\" California, Berkeley and its contributors.
14929 +.\" 4. Neither the name of the University nor the names of its contributors
14930 +.\" may be used to endorse or promote products derived from this software
14931 +.\" without specific prior written permission.
14932 +.\"
14933 +.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
14934 +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
14935 +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
14936 +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
14937 +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
14938 +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
14939 +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
14940 +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
14941 +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
14942 +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
14943 +.\" SUCH DAMAGE.
14944 +.\"
14945 +.\" @(#)doc-ditroff 5.8 (Berkeley) 8/5/91
14946 +.\"
14947 +.\" tmac.mdoc-ditroff
14948 +.if \n(.g .if !rC .nr C 0
14949 +.ds aD \fI\s10
14950 +.ds aR \f(CO\s10
14951 +.ds cM \f(CB\s10
14952 +.ds dF \fR\s10
14953 +.ds eM \fI\s10
14954 +.ds eR \fC\s10
14955 +.ds eV \fC\s10
14956 +.ds fA \f(CO\s10
14957 +.ds fD \f(CB\s10
14958 +.ds fL \f(CB\s10
14959 +.ds fN \f(CB\s10
14960 +.ds fP \fP\s0
14961 +.ds fS \s0
14962 +.ds fT \f(CO\s10
14963 +.ds Hs \fR\s10
14964 +.ds iC \f(CB\s10
14965 +.ds lI \fC
14966 +.ds lP \fR\|(\|\fP\s10
14967 +.ds lp \fR(\fP\s10
14968 +.ds rP \fR\|)\|\fP\s10
14969 +.ds rp \fR)\fP\s10
14970 +.ds lB \fR\^[\^\fP\s10
14971 +.ds rB \fR\^]\fP\s10
14972 +.ds mL \fB\s10
14973 +.ds nM \f(CB\s10
14974 +.ds nO \fR\s10
14975 +.ds nT \s0
14976 +.ds pA \fC\s10
14977 +.ds Pu \fR{\ .\ ,\ :\ ;\ (\ )\ [\ ]\ \fR}
14978 +.ds rA \fR\s10
14979 +.ds rT \f(CO\s10
14980 +.ds sH \fB\s10
14981 +.ds sP \s0
14982 +.ds sY \fB\s10
14983 +.ds sX \fR\s10
14984 +.ds tF \fR
14985 +.ds tN \s9
14986 +.ds vA \fI\s10
14987 +.ds Vs \fR\s10
14988 +.ds vT \f(CB\s10
14989 +.ds xR \fC\s10
14990 +.tr *\(**
14991 +.nr sI \w\a\fC,\au*5
14992 +.nr Ti \n(sIu
14993 +.nr Pp .5v
14994 +.ds lS \0
14995 +.nr lS \w'\0'u
14996 +.nr dI 6n
14997 +.de pL
14998 +.nr Hm .5i
14999 +.nr Fm .5i
15000 +.nr ll 6.5i
15001 +.ll 6.5i
15002 +.nr lt 6.5i
15003 +.lt 6.5i
15004 +.nr po 1i
15005 +.po 1.i
15006 +.nr dV .5v
15007 +..
15008 +.ds <= \(<=
15009 +.ds >= \(>=
15010 +.ie \n(.g \{\
15011 +. ds Lq \(lq
15012 +. ds Rq \(rq
15013 +.\}
15014 +.el \{\
15015 +. ds Lq \&``
15016 +. ds Rq \&''
15017 +.\}
15018 +.ds ua \(ua
15019 +.ds aa \(aa
15020 +.ds ga \(ga
15021 +.ds sR \&'
15022 +.ds sL \&`
15023 +.ds q \&"
15024 +.ds Pi \(*p
15025 +.ds Ne \(!=
15026 +.ds Le \(<=
15027 +.ds Ge \(>=
15028 +.ds Lt <
15029 +.ds Gt >
15030 +.ds Pm \(+-
15031 +.ds If \(if
15032 +.ds Na \fINaN\fP
15033 +.ds Ba \fR\&|\fP
15034 +.nr gX 0
15035 +.de hK
15036 +.ds hT \\*(dT
15037 +.if !"\\*(cH"Null" \{\
15038 +. ie !"\\*(gP"Null" .as hT \|(\|\\*(cH\\*(gP\|)
15039 +. el .as hT \\|(\\|\\*(cH\\|)
15040 +.\}
15041 +.if "\\*(cH"Null" \{\
15042 +. if !"\\*(gP"Null" .as hT \&\|(\|\\*(gP\|)
15043 +.\}
15044 +.wh 0 hM
15045 +.wh -1.25i fM
15046 +.nr nL \\n(nl
15047 +.ie \\n(gX==1 \{\
15048 +. rm n1
15049 +. bp
15050 +.\}
15051 +.el \{\
15052 +' bp
15053 +.\}
15054 +.if \\n(nL>0 \{\
15055 +. if !\\nC \{\
15056 +. nr % 1
15057 +. \}
15058 +.\}
15059 +.nr gX 0
15060 +.em lM
15061 +..
15062 +.nr fW \w\a\fC0\a
15063 +.de sW
15064 +.nr sW \w\a\fC\\$1\a
15065 +.ie \\n(sW>=\\n(fW \{\
15066 +. ie \\n(sW%\\n(fW .nr sW (\\n(sW/\\n(fW)+1
15067 +. el .nr sW \\n(sW/\\n(fW
15068 +.\}
15069 +.el \{\
15070 +. ie \\n(sW>0 .nr sW 1
15071 +. el .nr sW 0
15072 +.\}
15073 +..
15074 +.de aW
15075 +.nr sW \w\a\fC\\*(A\\$1\a
15076 +.ie \\n(sW>=\\n(fW \{\
15077 +. ie \\n(sW%\\n(fW .nr sW (\\n(sW/\\n(fW)+1
15078 +. el .nr sW \\n(sW/\\n(fW
15079 +.\}
15080 +.el \{\
15081 +. ie \\n(sW>0 .nr sW 1
15082 +. el .nr sW 0
15083 +.\}
15084 +..
15085 +.de Ql
15086 +.if \\n(aC==0 \{\
15087 +. ds mN Ql
15088 +. ds A1 \\$1
15089 +. ds A2 \\$2
15090 +. ds A3 \\$3
15091 +. ds A4 \\$4
15092 +. ds A5 \\$5
15093 +. ds A6 \\$6
15094 +. ds A7 \\$7
15095 +. ds A8 \\$8
15096 +. nr fV \\n(.$
15097 +. fV
15098 +.\}
15099 +.nr aP \\n(aP+1
15100 +.aW \\n(aP
15101 +.nr aP \\n(aP-1
15102 +.if \\n(sW>2 .Li
15103 +.if \\n(sW<=2 \{\
15104 +. if (\\n(aP>0) \{\
15105 +. ds A\\n(aP Li
15106 +. nr aP \\n(aP -1
15107 +. \}
15108 +. if (\\n(aP==0) \{\
15109 +. rm C0 C1 C2 C3 C4 C5 C6 C7 C8 C9
15110 +. rm S1 S2 S3 S4 S5 S6 S7 S8 S9
15111 +. rn A8 A9
15112 +. rn A7 A8
15113 +. rn A6 A7
15114 +. rn A5 A6
15115 +. rn A4 A5
15116 +. rn A3 A4
15117 +. rn A2 A3
15118 +. rn A1 A2
15119 +. ds A1 Li
15120 +. nr fV \\n(aC+1
15121 +. nr aC 0
15122 +. fV
15123 +. \}
15124 +. ds qL \&\\*(sL
15125 +. ds qR \&\\*(sR
15126 +. En
15127 +.\}
15128 +..
15129 +.de Sh
15130 +.nr nS 0
15131 +.nr sE 0
15132 +.nr iS 0
15133 +'ad
15134 +.ie "\\$1"NAME" \{\
15135 +. hK
15136 +' in 0
15137 +.\}
15138 +.el \{\
15139 +. ie "\\$1"̾Á°" \{\
15140 +. hK
15141 +' in 0
15142 +. \}
15143 +. el \{\
15144 +. ie "\\$1"̾¾Î" \{\
15145 +. hK
15146 +' in 0
15147 +. \}
15148 +. el \{\
15149 +. nr nS 0
15150 +. nr nA 0
15151 +. nr nF 0
15152 +. nr nT 0
15153 +. nr nY 0
15154 +. nr oT 0
15155 +. if "\\$1"SYNOPSIS" \{\
15156 +. na
15157 +. nr nS 1
15158 +. \}
15159 +. if "\\$1"½ñ¼°" \{\
15160 +. na
15161 +. nr nS 1
15162 +. \}
15163 +. if "\\$1"DESCRIPTION" \{\
15164 +. nr fY 0
15165 +. nr fZ 0
15166 +. nr fB 0
15167 +. nr Fb 0
15168 +. ds Fb
15169 +. \}
15170 +. if "\\$1"ÀâÌÀ" \{\
15171 +. nr fY 0
15172 +. nr fZ 0
15173 +. nr fB 0
15174 +. nr Fb 0
15175 +. ds Fb
15176 +. \}
15177 +. if "\\$1"²òÀâ" \{\
15178 +. nr fY 0
15179 +. nr fZ 0
15180 +. nr fB 0
15181 +. nr Fb 0
15182 +. ds Fb
15183 +. \}
15184 +. if "\\$1"SEE" \{\
15185 +. nr nA 1
15186 +. na
15187 +. \}
15188 +. if "\\$1"´ØÏ¢¹àÌÜ" \{\
15189 +. nr nA 1
15190 +. na
15191 +. \}
15192 +. if "\\$1"FILES" .nr nF 1
15193 +. if "\\$1"¥Õ¥¡¥¤¥ë" .nr nF 1
15194 +. if "\\$1"´ØÏ¢¥Õ¥¡¥¤¥ë" .nr nF 1
15195 +. if "\\$1"STANDARDS" .nr nT 1
15196 +. if "\\$1"½àµò" .nr nT 1
15197 +. if "\\$1"µ¬³Ê" .nr nT 1
15198 +. if "\\$1"AUTHORS" .nr nY 1
15199 +. if "\\$1"Ãø¼Ô" .nr nY 1
15200 +. if "\\$1"ºî¼Ô" .nr nY 1
15201 +. if "\\$1"SEE" .nr sE 1
15202 +. if "\\$1"´ØÏ¢¹àÌÜ" .nr sE 1
15203 +. in 0
15204 +. nr aN 0
15205 +. \}
15206 +. \}
15207 +.\}
15208 +.pL
15209 +'sp
15210 +.ns
15211 +.ta .5i 1i 1.5i 2i 2.5i 3i 3.5i 4i 4.5i 5i 5.5i 6i 6.5i
15212 +.if !\\n(cR .ne 3
15213 +'fi
15214 +\&\\*(sH\\$1 \|\\$2 \|\\$3 \|\\$4 \|\\$5 \|\\$6 \|\\$7 \|\\$8 \|\\$9
15215 +\&\fP\s0\&
15216 +.in \\n(.iu+\\n(Tiu
15217 +.ns
15218 +..
15219 diff -Naur groff-1.18.1.4.orig/tmac/docj-nroff groff-1.18.1.4/tmac/docj-nroff
15220 --- groff-1.18.1.4.orig/tmac/docj-nroff 1970-01-01 00:00:00.000000000 +0000
15221 +++ groff-1.18.1.4/tmac/docj-nroff 2006-10-18 18:54:44.000000000 +0000
15222 @@ -0,0 +1,247 @@
15223 +.\" Copyright (c) 1991 The Regents of the University of California.
15224 +.\" All rights reserved.
15225 +.\"
15226 +.\" Redistribution and use in source and binary forms, with or without
15227 +.\" modification, are permitted provided that the following conditions
15228 +.\" are met:
15229 +.\" 1. Redistributions of source code must retain the above copyright
15230 +.\" notice, this list of conditions and the following disclaimer.
15231 +.\" 2. Redistributions in binary form must reproduce the above copyright
15232 +.\" notice, this list of conditions and the following disclaimer in the
15233 +.\" documentation and/or other materials provided with the distribution.
15234 +.\" 3. All advertising materials mentioning features or use of this software
15235 +.\" must display the following acknowledgement:
15236 +.\" This product includes software developed by the University of
15237 +.\" California, Berkeley and its contributors.
15238 +.\" 4. Neither the name of the University nor the names of its contributors
15239 +.\" may be used to endorse or promote products derived from this software
15240 +.\" without specific prior written permission.
15241 +.\"
15242 +.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
15243 +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
15244 +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
15245 +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
15246 +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
15247 +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
15248 +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
15249 +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
15250 +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
15251 +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
15252 +.\" SUCH DAMAGE.
15253 +.\"
15254 +.\" @(#)doc-nroff 5.6 (Berkeley) 8/5/91
15255 +.\"
15256 +.\" tmac.mdoc-nroff
15257 +.ds aD \fI
15258 +.ds aR \fI
15259 +.ds cM \fB
15260 +.ds dF \fR
15261 +.ds eM \fI
15262 +.ds eR \fR
15263 +.ds eV \fR
15264 +.ds fA \fI
15265 +.ds fD \fB
15266 +.ds fL \fB
15267 +.ds fN \fB
15268 +.ds fP \fP
15269 +.ds fS
15270 +.ds fT \fI
15271 +.ds Hs \fR
15272 +.ds iC \fB
15273 +.ds lI \fR
15274 +.ds lP \fR\|(\fP
15275 +.ds rP \fR\|)\fP
15276 +.ds lp \fR\|(\fP
15277 +.ds rp \fR\|)\fP
15278 +.ds lB \fR\|[\|\fP
15279 +.ds rB \fR\|]\fP
15280 +.ds mL \fB
15281 +.ds nM \fB
15282 +.ds nO \fR
15283 +.ds pA \fI
15284 +.ds Pu {\ .\ ,\ ;\ :\ (\ )\ [\ ]}
15285 +.ds rA \fR
15286 +.ds rT \fI
15287 +.ds sH \fB
15288 +.ds sP
15289 +.ds sY \fB
15290 +.ds sX \fI
15291 +.ds tF \fR
15292 +.ds tN
15293 +.ds vA \fI
15294 +.ds Vs \fR
15295 +.ds vT \fB
15296 +.ds xR \fR
15297 +.nr sI .5i
15298 +.nr Ti .5i
15299 +.nr cR 1
15300 +.nr Pp 1v
15301 +.ds lS \0\0
15302 +.nr lS \w'\0\0'u
15303 +.nr dI 6n
15304 +.de pL
15305 +.ie \\n(cR .nr Hm 0
15306 +.el .nr Hm .5i
15307 +.nr Fm .5i
15308 +.nr ll 78n
15309 +.ll 78n
15310 +.nr lt 78n
15311 +.lt 78n
15312 +.nr po 0i
15313 +.po 0i
15314 +.nr dV 1v
15315 +.ad l
15316 +.na
15317 +..
15318 +.ds <= \&<\&=
15319 +.ds >= \&>\&=
15320 +.ds Rq ''
15321 +.ds Lq ``
15322 +.ds ua ^
15323 +.ds aa \'
15324 +.ds ga \`
15325 +.ds sL `
15326 +.ds sR '
15327 +.ds q \&"
15328 +.ds Pi pi
15329 +.ds Ne !=
15330 +.ds Le <=
15331 +.ds Ge >=
15332 +.ds Lt <
15333 +.ds Gt >
15334 +.ds Pm +-
15335 +.ds If infinity
15336 +.ds Na \fINaN\fP
15337 +.ds Ba \fR\&|\fP
15338 +
15339 +.de hK
15340 +.nr % 1
15341 +.ds hT \\*(dT
15342 +.if !"\\*(cH"Null" \{\
15343 +. ie !"\\*(gP"Null" .as hT \|(\|\\*(cH\\*(gP\|)
15344 +. el .as hT \\|(\\|\\*(cH\\|)
15345 +.\}
15346 +.if "\\*(cH"Null" .if !"\\*(gP"Null" .as hT \&\|(\|\\*(gP\|)
15347 +.ie \\n(cR \{\
15348 +. hM
15349 +. wh -1v fM
15350 +.\}
15351 +.el \{\
15352 +. wh 0 hM
15353 +. wh -1.167i fM
15354 +.\}
15355 +.if \\n(nl==0:\\n(nl==-1 'bp
15356 +.em lM
15357 +..
15358 +.nr fW \w'0'
15359 +.de sW
15360 +.nr sW \w\a\\$1\a
15361 +.ie \\n(sW>=\\n(fW \{\
15362 +. ie \\n(sW%\\n(fW .nr sW (\\n(sW/\\n(fW)+1
15363 +. el .nr sW \\n(sW/\\n(fW
15364 +.\}
15365 +.el .nr sW 0
15366 +..
15367 +.de aW
15368 +.nr sW \w\a\\*(A\\$1\a
15369 +.ie \\n(sW>=\\n(fW \{\
15370 +. ie \\n(sW%\\n(fW .nr sW (\\n(sW/\\n(fW)+1
15371 +. el .nr sW \\n(sW/\\n(fW
15372 +.\}
15373 +.el .nr sW 0
15374 +..
15375 +.de Ql
15376 +.if \\n(aC==0 \{\
15377 +. ds mN Ql
15378 +. ds A1 \\$1
15379 +. ds A2 \\$2
15380 +. ds A3 \\$3
15381 +. ds A4 \\$4
15382 +. ds A5 \\$5
15383 +. ds A6 \\$6
15384 +. ds A7 \\$7
15385 +. ds A8 \\$8
15386 +. ds A9 \\$9
15387 +. nr fV \\n(.$
15388 +. fV
15389 +.\}
15390 +.ds qL \&\\*(sL
15391 +.ds qR \&\\*(sR
15392 +.En \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
15393 +..
15394 +.de Sh
15395 +.nr nS 0
15396 +.nr sE 0
15397 +.nr iS 0
15398 +.ie "\\$1"NAME" \{\
15399 +. hK
15400 +' in 0
15401 +.\}
15402 +.el \{\
15403 +. ie "\\$1"̾Á°" \{\
15404 +. hK
15405 +' in 0
15406 +. \}
15407 +. el \{\
15408 +. ie "\\$1"̾¾Î" \{\
15409 +. hK
15410 +' in 0
15411 +. \}
15412 +. el \{\
15413 +. nr nS 0
15414 +. nr nA 0
15415 +. nr nF 0
15416 +. nr nT 0
15417 +. nr nY 0
15418 +. nr aN 0
15419 +. nr oT 0
15420 +. if "\\$1"SEE" .nr nA 1
15421 +. if "\\$1"´ØÏ¢¹àÌÜ" .nr nA 1
15422 +. if "\\$1"FILES" .nr nF 1
15423 +. if "\\$1"¥Õ¥¡¥¤¥ë" .nr nF 1
15424 +. if "\\$1"´ØÏ¢¥Õ¥¡¥¤¥ë" .nr nF 1
15425 +. if "\\$1"STANDARDS" .nr nT 1
15426 +. if "\\$1"½àµò" .nr nT 1
15427 +. if "\\$1"µ¬³Ê" .nr nT 1
15428 +. if "\\$1"SYNOPSIS" .nr nS 1
15429 +. if "\\$1"½ñ¼°" .nr nS 1
15430 +. if "\\$1"DESCRIPTION" \{\
15431 +. rr fB
15432 +. rr Fb
15433 +. ds Fb
15434 +. nr fY 0
15435 +. nr fZ 0
15436 +. \}
15437 +. if "\\$1"ÀâÌÀ" \{\
15438 +. rr fB
15439 +. rr Fb
15440 +. ds Fb
15441 +. nr fY 0
15442 +. nr fZ 0
15443 +. \}
15444 +. if "\\$1"²òÀâ" \{\
15445 +. rr fB
15446 +. rr Fb
15447 +. ds Fb
15448 +. nr fY 0
15449 +. nr fZ 0
15450 +. \}
15451 +. if "\\$1"AUTHORS" .nr nY 1
15452 +. if "\\$1"Ãø¼Ô" .nr nY 1
15453 +. if "\\$1"ºî¼Ô" .nr nY 1
15454 +. in 0
15455 +. \}
15456 +. \}
15457 +.\}
15458 +.pL
15459 +'sp
15460 +.ns
15461 +.ta .5i 1i 1.5i 2i 2.5i 3i 3.5i 4i 4.5i 5i 5.5i 6i 6.5i
15462 +.if !\\n(cR .ne 3
15463 +'fi
15464 +\&\\*(sH\\$1 \|\\$2 \|\\$3 \|\\$4 \|\\$5 \|\\$6 \|\\$7 \|\\$8 \|\\$9
15465 +\&\fP\s0\&
15466 +.in \\n(.iu+\\n(Tiu
15467 +.if "\\$1"SEE" .nr sE 1
15468 +.ns
15469 +..
15470 diff -Naur groff-1.18.1.4.orig/tmac/docj.tmac groff-1.18.1.4/tmac/docj.tmac
15471 --- groff-1.18.1.4.orig/tmac/docj.tmac 1970-01-01 00:00:00.000000000 +0000
15472 +++ groff-1.18.1.4/tmac/docj.tmac 2006-10-18 18:54:44.000000000 +0000
15473 @@ -0,0 +1,3427 @@
15474 +.\" Copyright (c) 1991 The Regents of the University of California.
15475 +.\" All rights reserved.
15476 +.\"
15477 +.\" Redistribution and use in source and binary forms, with or without
15478 +.\" modification, are permitted provided that the following conditions
15479 +.\" are met:
15480 +.\" 1. Redistributions of source code must retain the above copyright
15481 +.\" notice, this list of conditions and the following disclaimer.
15482 +.\" 2. Redistributions in binary form must reproduce the above copyright
15483 +.\" notice, this list of conditions and the following disclaimer in the
15484 +.\" documentation and/or other materials provided with the distribution.
15485 +.\" 3. All advertising materials mentioning features or use of this software
15486 +.\" must display the following acknowledgement:
15487 +.\" This product includes software developed by the University of
15488 +.\" California, Berkeley and its contributors.
15489 +.\" 4. Neither the name of the University nor the names of its contributors
15490 +.\" may be used to endorse or promote products derived from this software
15491 +.\" without specific prior written permission.
15492 +.\"
15493 +.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
15494 +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
15495 +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
15496 +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
15497 +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
15498 +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
15499 +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
15500 +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
15501 +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
15502 +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
15503 +.\" SUCH DAMAGE.
15504 +.\"
15505 +.\" @(#)doc 5.8 (Berkeley) 8/5/91
15506 +.\" Modified by jjc@jclark.com as follows: the doc-* files are assumed to be
15507 +.\" installed as mdoc/doc-* rather than tmac.doc-* (the filename
15508 +.\" `tmac.doc-common' would be too long); when using groff, the doc-* files
15509 +.\" are loaded using the `mso' request.
15510 +.\"
15511 +.\" .mdoc-parse - attempt to parse troff request arguments
15512 +.\" %beginstrip%
15513 +.if \n(.g \{\
15514 +.cp 0
15515 +.ftr C CR
15516 +.\}
15517 +.if \n(.g .ig
15518 +.de sO
15519 +.so /usr/share/tmac/\\$1
15520 +..
15521 +.if !\n(.g .ig
15522 +.de sO
15523 +.mso mdoc/\\$1
15524 +..
15525 +.if t \{\
15526 +. sO docj-ditroff
15527 +.\}
15528 +.if n \{\
15529 +. sO docj-nroff
15530 +.\}
15531 +.sO doc-common
15532 +.sO doc-syms
15533 +.\" NS Db macro - start/stop DEBUG MODE
15534 +.\" NS Db register DEBUG MODE
15535 +.\" NS iN register DEBUG MODE (inline if 1, to stderr if 0 (default))
15536 +.nr Db 0
15537 +.de Db
15538 +.ie \\n(.$==0 \{\
15539 +. ie \\n(Db==0 \{\
15540 +.tm DEBUGGING ON
15541 +. nr Db 1
15542 +. \}
15543 +. el \{\
15544 +.tm DEBUGGING OFF
15545 +. nr Db 0
15546 +. \}
15547 +.\}
15548 +.el \{\
15549 +. if "\\$1"on" \{\
15550 +.tm DEBUGGING ON
15551 +. nr Db 1
15552 +. \}
15553 +. if "\\$1"off" \{\
15554 +.tm DEBUGGING OFF
15555 +. nr Db 0
15556 +. \}
15557 +.\}
15558 +..
15559 +.\" NS aV macro - parse argument vector (recursive) (.aV arg ... )
15560 +.\" NS fV macro - parse argument vector (recursive) (.fV)
15561 +.\" NS aC register argument counter (aV/fV)
15562 +.\" NS fV register argument counter (must set to \\n(.$ prior to reuqest) (fV)
15563 +.\" NS A[0-9] argument vector (aV/fV)
15564 +.\" NS C[0-9] reg. arg type(1=macro, 2=arg, 3=punct-suf, 4=punct-pre) (aV/fV)
15565 +.\" NS S[0-9] space vector (sV)
15566 +.\" NS aP register argument pointer (aV)
15567 +.\" NS yU local string used for debugging
15568 +.\" NS iI local register (indent for inline debug mode)
15569 +.\" NS mN name of calling request (set in each user requestable macro)
15570 +.de aV
15571 +.nr aC \\n(aC+1
15572 +.ie "\\$1"|" \{\
15573 +. if "\\*(mN"Op" .ds A\\n(aC \fR\\$1\fP
15574 +. if "\\*(mN"Ar" .ds A\\n(aC \fR\\$1\fP
15575 +. if "\\*(mN"Fl" .ds A\\n(aC \fR\\$1\fP
15576 +. if "\\*(mN"Cm" .ds A\\n(aC \fR\\$1\fP
15577 +. if "\\*(mN"It" .ds A\\n(aC \fR\\$1\fP
15578 +.\}
15579 +.el .ds A\\n(aC \\$1
15580 +.aU \\n(aC
15581 +.nr C\\n(aC \\n(aT
15582 +.s\\n(aT
15583 +.if \\n(Db \{\
15584 +. if \\n(aT==1 .ds yU Executable
15585 +. if \\n(aT==2 .ds yU String
15586 +. if \\n(aT==3 .ds yU Closing Punctuation or suffix
15587 +. if \\n(aT==4 .ds yU Opening Punctuation or prefix
15588 +. if \\n(iN==1 \{\
15589 +. br
15590 +. nr iI \\n(.iu
15591 +. in -\\n(iIu
15592 +. if \\n(aC==1 \{\
15593 +\&\fBDEBUG(argv) MACRO:\fP `.\\*(mN' \fBLine #:\fP \\n(.c
15594 +. \}
15595 +\&\t\fBArgc:\fP \\n(aC \fBArgv:\fP `\\*(A\\n(aC' \fBLength:\fP \\n(sW
15596 +\&\t\fBSpace:\fP `\\*(S\\n(aC' \fBClass:\fP \\*(yU
15597 +. \}
15598 +. if \\n(iN==0 \{\
15599 +. if \\n(aC==1 \{\
15600 +. tm DEBUG(argv) MACRO: `.\\*(mN' Line #: \\n(.c
15601 +. \}
15602 +. tm \tArgc: \\n(aC Argv: `\\*(A\\n(aC' Length: \\n(sW
15603 +. tm \tSpace: `\\*(S\\n(aC' Class: \\*(yU
15604 +. \}
15605 +.\}
15606 +.ie \\n(.$==1 \{\
15607 +. nr aP 0
15608 +. ie \\n(dZ==1 \{\
15609 +. if \\n(oM>1 .as b1 \\*(S0
15610 +. \}
15611 +. el \{\
15612 +. if \\n(oM>0 \{\
15613 +. if \\n(fC==0 .as b1 \\*(S0
15614 +. \}
15615 +. \}
15616 +. ds S0 \\*(S\\n(aC
15617 +. if \\n(Db \{\
15618 +. if \\n(iN==1 \{\
15619 +\&MACRO REQUEST: \t.\\*(mN \\*(A1 \\*(A2 \\*(A3 \\*(A4 \\*(A5 \\*(A6 \\*(A7 \\*(A8 \\*(A9
15620 +. br
15621 +. in \\n(iIu
15622 +. \}
15623 +. if \\n(iN==0 \{\
15624 +.tm \tMACRO REQUEST: .\\*(mN \\*(A1 \\*(A2 \\*(A3 \\*(A4 \\*(A5 \\*(A6 \\*(A7 \\*(A8 \\*(A9
15625 +. \}
15626 +. \}
15627 +.\}
15628 +.el .aV \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
15629 +..
15630 +.de fV
15631 +.nr aC \\n(aC+1
15632 +.if "\\*(A\\n(aC"|" \{\
15633 +. if "\\*(mN"Op" .ds A\\n(aC \fR\\*(A\\n(aC\fP
15634 +. if "\\*(mN"Ar" .ds A\\n(aC \fR\\*(A\\n(aC\fP
15635 +. if "\\*(mN"Fl" .ds A\\n(aC \fR\&\\*(A\\n(aC\fP
15636 +. if "\\*(mN"Cm" .ds A\\n(aC \fR\\*(A\\n(aC\fP
15637 +. if "\\*(mN"It" .ds A\\n(aC \fR\\*(A\\n(aC\fP
15638 +.\}
15639 +.aU \\n(aC
15640 +.nr C\\n(aC \\n(aT
15641 +.s\\n(aT
15642 +.if \\n(Db \{\
15643 +. if \\n(aT==1 .ds yU Executable
15644 +. if \\n(aT==2 .ds yU String
15645 +. if \\n(aT==3 .ds yU Closing Punctuation or suffix
15646 +. if \\n(aT==4 .ds yU Opening Punctuation or prefix
15647 +. if \\n(iN==1 \{\
15648 +. br
15649 +. nr iI \\n(.iu
15650 +. in -\\n(iIu
15651 +. if \\n(aC==1 \{\
15652 +\&\fBDEBUG(fargv) MACRO:\fP `.\\*(mN' \fBLine #:\fP \\n(.c
15653 +. \}
15654 +\&\t\fBArgc:\fP \\n(aC \fBArgv:\fP `\\*(A\\n(aC' \fBLength:\fP \\n(sW
15655 +\&\t\fBSpace:\fP `\\*(S\\n(aC' \fBClass:\fP \\*(yU
15656 +. \}
15657 +. if \\n(iN==0 \{\
15658 +. if \\n(aC==1 \{\
15659 +. tm DEBUG(fargv) MACRO: `.\\*(mN' Line #: \\n(.c
15660 +. \}
15661 +. tm \tArgc: \\n(aC Argv: `\\*(A\\n(aC' Length: \\n(sW
15662 +. tm \tSpace: `\\*(S\\n(aC' Class: \\*(yU
15663 +. \}
15664 +.\}
15665 +.ie \\n(fV==1 \{\
15666 +. nr aP 0
15667 +. ie \\n(dZ==1 \{\
15668 +. if \\n(oM>1 .as b1 \\*(S0
15669 +. \}
15670 +. el \{\
15671 +. if \\n(oM>0 \{\
15672 +. if \\n(fC==0 .as b1 \\*(S0
15673 +. \}
15674 +. \}
15675 +. ds S0 \\*(S\\n(aC
15676 +. nr fV 0
15677 +. if \\n(Db \{\
15678 +. ie \\n(iN \{\
15679 +\&\tMACRO REQUEST: .\\*(mN \\*(A1 \\*(A2 \\*(A3 \\*(A4 \\*(A5 \\*(A6 \\*(A7 \\*(A8 \\*(A9
15680 +. br
15681 +. in \\n(iIu
15682 +. \}
15683 +. el \{\
15684 +.tm \tMACRO REQUEST: .\\*(mN \\*(A1 \\*(A2 \\*(A3 \\*(A4 \\*(A5 \\*(A6 \\*(A7 \\*(A8 \\*(A9
15685 +. \}
15686 +. \}
15687 +.\}
15688 +.el \{\
15689 +. nr fV \\n(fV-1
15690 +. fV
15691 +.\}
15692 +..
15693 +.\" NS aX macro - stuff saved strings into `b1' (used by -diag list)
15694 +.de aX
15695 +.nr aP \\n(aP+1
15696 +.as b1 \&\\*(A\\n(aP
15697 +.ie \\n(fV==1 \{\
15698 +. nr aP 0
15699 +. nr fV 0
15700 +.\}
15701 +.el \{\
15702 +. as b1 \&\\*(sV
15703 +. nr fV \\n(fV-1
15704 +. aX
15705 +.\}
15706 +..
15707 +.\" NS aI macro - append arg to arg vector: .aI [arg] [type] (used by .En only)
15708 +.de aI
15709 +.ie \\n(aC<9 \{\
15710 +. nr aC \\n(aC+1
15711 +. ds A\\n(aC \\$1
15712 +. nr C\\n(aC \\$2
15713 +. s\\$2
15714 +. ds xV S\\n(aC
15715 +.\}
15716 +.el \{\
15717 +. tm Usage: Too many arguments (maximum of 8 accepted) (#\\n(.c)
15718 +. tm \\*(A1 \\*(A2 \\*(A3 \\*(A4 \\*(A5 \\*(A6 \\*(A7 \\*(A8 \\*(A9
15719 +.\}
15720 +..
15721 +.\"
15722 +.\" NS aZ macro - print buffer (pB) and clean up arg vectors (aY)
15723 +.de aZ
15724 +.pB
15725 +.aY
15726 +..
15727 +.\" NS aY macro - clean up arg vector
15728 +.de aY
15729 +.rm C0 C1 C2 C3 C4 C5 C6 C7 C8 C9
15730 +.rm A0 A1 A2 A3 A4 A5 A6 A7 A8 A9
15731 +.rm S1 S2 S3 S4 S5 S6 S7 S8 S9
15732 +.nr aC 0
15733 +.nr aP 0
15734 +..
15735 +.\" NS pB macro - test for end of vector (eol) (print b1 buffer or divert)
15736 +.de pB
15737 +.ie \\n(dZ==1 \{\
15738 +. if \\n(oM==1 \{\&\\*(b1
15739 +. rm S0
15740 +. ds b1
15741 +. \}
15742 +. if \\n(oM==0 \{\
15743 +. x2
15744 +. \}
15745 +.\}
15746 +.el \{\
15747 +. ie \\n(oM==0 \{\&\\*(b1
15748 +. rm S0
15749 +. ds b1
15750 +. \}
15751 +. el \{\
15752 +. if ((\\n(sM==1)&(\\n(tP==0)) \{\
15753 +. x1
15754 +. \}
15755 +. \}
15756 +.\}
15757 +.hy
15758 +..
15759 +.\" NS x1 macro - save buffer and divert if tP flag set
15760 +.\" NS eB diversion string
15761 +.\" NS b2 string save of buffer
15762 +.\" NS lK register count of lines read from input file
15763 +.de x1
15764 +.nr dZ \\n(dZ+1
15765 +.ds b2 \\*(b1
15766 +.ds b1
15767 +.nr lK \\n(.c
15768 +.ev 2
15769 +.fi
15770 +.di eB
15771 +..
15772 +.\"
15773 +.\" NS x2 macro - end diversion and print
15774 +.\" NS b0 string local temporary
15775 +.de x2
15776 +.br
15777 +.di
15778 +.ev
15779 +.ie (\\n(.c-\\n(lK>1) \{\
15780 +. ds b0 \&\\*(eB\\
15781 +. ds b1 \\*(b2\\*(b0\\*(b1
15782 +.\}
15783 +.el .ds b1 \\*(b2\\*(b1
15784 +\&\\*(b1
15785 +.rm eB b2 b0 b1
15786 +.nr dZ \\n(dZ-1
15787 +..
15788 +.\" NS Fl macro - flags (appends - and prints flags)
15789 +.\" NS cF register save current font
15790 +.\" NS cZ register save current font size
15791 +.de Fl
15792 +.as b1 \&\\*(fL
15793 +.if \\n(aC==0 \{\
15794 +. ie \\n(.$==0 \{\
15795 +. as b1 \&\|\-\|\fP\s0
15796 +. pB
15797 +. \}
15798 +. el \{\
15799 +. ds mN Fl
15800 +. aV \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
15801 +. \}
15802 +.\}
15803 +.if \\n(aC>0 \{\
15804 +. ie (\\n(aC-\\n(aP)==0 \{\
15805 +. as b1 \&\|\-\fP\s0
15806 +. aZ
15807 +. \}
15808 +. el \{\
15809 +. nr aP \\n(aP+1
15810 +. ie \\n(C\\n(aP==1 \{\
15811 +. as b1 \&\|\-\fP\s0
15812 +. \\*(A\\n(aP
15813 +. \}
15814 +. el \{\
15815 +. nr cF \\n(.f
15816 +. nr cZ \\n(.s
15817 +. if \\n(C\\n(aP==3 \{\
15818 +. as b1 \&\|\-\|
15819 +. \}
15820 +. fR
15821 +. \}
15822 +. \}
15823 +.\}
15824 +..
15825 +.\"
15826 +.\" NS fR macro - Fl flag recursion routine (special handling)
15827 +.\" NS jM local register
15828 +.\" NS jN local register
15829 +.\"
15830 +.de fR
15831 +.hy 0
15832 +.nr jM \\n(C\\n(aP
15833 +.ie \\n(jM==1 \{\
15834 +. as b1 \&\fP\s0
15835 +. \\*(A\\n(aP
15836 +.\}
15837 +.el \{\
15838 +. nr jN \\n(aP
15839 +. ie \\n(jM==2 \{\
15840 +. ie !"\\*(A\\n(aP"\\*(Ba" \{\
15841 +. ie !"\\*(A\\n(aP"\fR|\fP" \{\
15842 +. ie "\\*(A\\n(aP"-" .as b1 \&\|\-\^\-\|
15843 +. el .as b1 \&\|\-\\*(A\\n(aP
15844 +. \}
15845 +. el .as b1 \&\\*(A\\n(aP
15846 +. \}
15847 +. el .as b1 \&\\*(A\\n(aP
15848 +. \}
15849 +. el .as b1 \&\f\\n(cF\s\\n(cZ\\*(A\\n(aP\fP\s0
15850 +. ie \\n(aC==\\n(aP \{\
15851 +. if \\n(jM==4 .as b1 \&\|\-
15852 +. as b1 \&\fP\s0
15853 +. aZ
15854 +. \}
15855 +. el \{\
15856 +. nr aP \\n(aP+1
15857 +. ie ((\\n(C\\n(aP==3)&(\\n(C\\n(jN==4)) .as b1 \&\|\-
15858 +. el .as b1 \&\\*(S\\n(jN
15859 +. fR \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
15860 +. \}
15861 +.\}
15862 +.rr jM jN
15863 +..
15864 +.\"
15865 +.\" NS nR macro - general name recursion routine
15866 +.\" NS jM local register
15867 +.\" NS jN local register
15868 +.de nR
15869 +.hy 0
15870 +.nr jM \\n(C\\n(aP
15871 +.ie \\n(jM==1 \{\
15872 +. as b1 \&\f\\n(cF\s\\n(cZ
15873 +. \\*(A\\n(aP
15874 +.\}
15875 +.el \{\
15876 +. nr jN \\n(aP
15877 +. ie \\n(jM==2 .as b1 \&\\*(A\\n(aP
15878 +. el .as b1 \&\f\\n(cF\s\\n(cZ\\*(A\\n(aP\fP\s0
15879 +. ie \\n(aC==\\n(aP \{\
15880 +. as b1 \&\f\\n(cF\s\\n(cZ
15881 +. aZ
15882 +. \}
15883 +. el \{\
15884 +. nr aP \\n(aP+1
15885 +. as b1 \&\\*(S\\n(jN
15886 +. nR
15887 +. \}
15888 +.\}
15889 +.rr jM jN
15890 +..
15891 +.\" NS Ar macro - command line `argument' macro
15892 +.\"
15893 +.de Ar
15894 +.as b1 \\*(aR
15895 +.if \\n(aC==0 \{\
15896 +. ie \\n(.$==0 \{\
15897 +. as b1 file\ ...\fP\s0
15898 +. pB
15899 +. \}
15900 +. el \{\
15901 +. ds mN Ar
15902 +. aV \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
15903 +. \}
15904 +.\}
15905 +.if \\n(aC>0 \{\
15906 +. ie (\\n(aC-\\n(aP)==0 \{\
15907 +. as b1 \&file\ ...\fP\s0
15908 +. aZ
15909 +. \}
15910 +. el \{\
15911 +. nr aP \\n(aP+1
15912 +. ie \\n(C\\n(aP==1 \{\
15913 +. as b1 \&file\ ...\fP\s0
15914 +. \\*(A\\n(aP
15915 +. \}
15916 +. el \{\
15917 +. nr cF \\n(.f
15918 +. nr cZ \\n(.s
15919 +. if \\n(C\\n(aP==3 \{\
15920 +. as b1 \&file\ ...
15921 +. \}
15922 +. nR
15923 +. \}
15924 +. \}
15925 +.\}
15926 +..
15927 +.\" NS Ad macro - Addresses
15928 +.de Ad
15929 +.if \\n(aC==0 \{\
15930 +. ie \\n(.$==0 .tm Usage: .Ad address ... \\*(Pu (#\\n(.c)
15931 +. el \{\
15932 +. ds mN Ad
15933 +. aV \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
15934 +. \}
15935 +.\}
15936 +.if \\n(aC>\\n(aP \{\
15937 +. as b1 \\*(aD
15938 +. nr aP \\n(aP+1
15939 +. nr cF \\n(.f
15940 +. nr cZ \\n(.s
15941 +. nR
15942 +.\}
15943 +..
15944 +.\" NS Cd macro - Config declaration (for section 4 SYNOPSIS) (not callable)
15945 +.\" needs work - not very translatable
15946 +.de Cd
15947 +.if \\n(aC==0 \{\
15948 +. ie \\n(.$==0 .tm Usage: .Cd Configuration file declaration (#\\n(.c)
15949 +. el \{\
15950 +. ds mN Cd
15951 +. ds A1 \\$1
15952 +. ds A2 \\$2
15953 +. ds A3 \\$3
15954 +. ds A4 \\$4
15955 +. ds A5 \\$5
15956 +. ds A6 \\$6
15957 +. ds A7 \\$7
15958 +. ds A8 \\$8
15959 +. ds A9 \\$9
15960 +. nr fV \\n(.$
15961 +. fV
15962 +. \}
15963 +.\}
15964 +.br
15965 +.if \\n(aC>\\n(aP \{\
15966 +. as b1 \\*(nM
15967 +. nr aP \\n(aP+1
15968 +. nr cF \\n(.f
15969 +. nr cZ \\n(.s
15970 +. ie \\n(nS \{\
15971 +. if "\\*(mN"Cd" \{\
15972 +. rs
15973 +. ie \\n(nS>1 .br
15974 +. el \{\
15975 +. if \\n(iS==0 .nr iS \\n(Dsu
15976 +. \}
15977 +. in +\\n(iSu
15978 +. ti -\\n(iSu
15979 +. nr nS \\n(nS+1
15980 +. \}
15981 +. nR
15982 +. in -\\n(iSu
15983 +. \}
15984 +. el .nR
15985 +.\}
15986 +..
15987 +.\" NS Cm macro - Interactive command modifier (flag)
15988 +.de Cm
15989 +.if \\n(aC==0 \{\
15990 +. ie \\n(.$==0 .tm Usage: .Cm Interactive command modifier ... \\*(Pu (#\\n(.c)
15991 +. el \{\
15992 +. ds mN Cm
15993 +. ds A1 \\$1
15994 +. ds A2 \\$2
15995 +. ds A3 \\$3
15996 +. ds A4 \\$4
15997 +. ds A5 \\$5
15998 +. ds A6 \\$6
15999 +. ds A7 \\$7
16000 +. ds A8 \\$8
16001 +. ds A9 \\$9
16002 +. nr fV \\n(.$
16003 +. fV
16004 +. \}
16005 +.\}
16006 +.if \\n(aC>\\n(aP \{\
16007 +. as b1 \\*(cM
16008 +. nr aP \\n(aP+1
16009 +. nr cF \\n(.f
16010 +. nr cZ \\n(.s
16011 +. nR
16012 +.\}
16013 +..
16014 +.\" NS Dv macro - define variable
16015 +.de Dv
16016 +.if \\n(aC==0 \{\
16017 +. ie \\n(.$==0 .tm Usage: .Dv define_variable ... \\*(Pu (#\\n(.c)
16018 +. el \{\
16019 +. ds mN Dv
16020 +. aV \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
16021 +. \}
16022 +.\}
16023 +.if \\n(aC>\\n(aP \{\
16024 +. as b1 \\*(eR
16025 +. nr aP \\n(aP+1
16026 +. nr cF \\n(.f
16027 +. nr cZ \\n(.s
16028 +. nR
16029 +.\}
16030 +..
16031 +.\" NS Em macro - Emphasis
16032 +.de Em
16033 +.if \\n(aC==0 \{\
16034 +. ie \\n(.$==0 \{\
16035 +. tm Usage: .Em text ... \\*(Pu (#\\n(.c)
16036 +. \}
16037 +. el \{\
16038 +. ds mN Em
16039 +. ds A1 \\$1
16040 +. ds A2 \\$2
16041 +. ds A3 \\$3
16042 +. ds A4 \\$4
16043 +. ds A5 \\$5
16044 +. ds A6 \\$6
16045 +. ds A7 \\$7
16046 +. ds A8 \\$8
16047 +. ds A9 \\$9
16048 +. nr fV \\n(.$
16049 +. fV
16050 +. \}
16051 +.\}
16052 +.if \\n(aC>\\n(aP \{\
16053 +. as b1 \\*(eM
16054 +. nr aP \\n(aP+1
16055 +. nr cF \\n(.f
16056 +. nr cZ \\n(.s
16057 +. nR
16058 +.\}
16059 +..
16060 +.\" NS Er macro - Errnotype
16061 +.de Er
16062 +.if \\n(aC==0 \{\
16063 +. ie \\n(.$==0 .tm Usage: .Er ERRNOTYPE ... \\*(Pu (#\\n(.c)
16064 +. el \{\
16065 +. ds mN Er
16066 +. aV \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
16067 +. \}
16068 +.\}
16069 +.if \\n(aC>\\n(aP \{\
16070 +. as b1 \\*(eR
16071 +. nr aP \\n(aP+1
16072 +. nr cF \\n(.f
16073 +. nr cZ \\n(.s
16074 +. nR
16075 +.\}
16076 +..
16077 +.\" NS Ev macro - Environment variable
16078 +.de Ev
16079 +.if \\n(aC==0 \{\
16080 +. ie \\n(.$==0 .tm Usage: .Ev ENVIRONMENT_VARIABLE ... \\*(Pu (#\\n(.c)
16081 +. el \{\
16082 +. ds mN Ev
16083 +. aV \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
16084 +. \}
16085 +.\}
16086 +.if \\n(aC>\\n(aP \{\
16087 +. as b1 \\*(eV
16088 +. nr aP \\n(aP+1
16089 +. nr cF \\n(.f
16090 +. nr cZ \\n(.s
16091 +. nR
16092 +.\}
16093 +..
16094 +.\" NS Fd macro - function declaration - not callable (& no err check)
16095 +.\" NS fD register subroutine test (in synopsis only)
16096 +.\" NS fY register subroutine count (in synopsis only) (fortran only)
16097 +.\" NS fZ register also subroutine count (in synopsis only)
16098 +.de Fd
16099 +.ds mN Fd
16100 +.if \\n(nS>0 \{\
16101 +.\" if a variable type was the last thing given, want vertical space
16102 +. if \\n(fX>0 \{\
16103 +. Pp
16104 +. nr fX 0
16105 +. \}
16106 +.\" if a subroutine was the last thing given, want vertical space
16107 +. if \\n(fZ>0 \{\
16108 +. ie \\n(fD==0 \{\
16109 +. Pp
16110 +. rs
16111 +. \}
16112 +. el .br
16113 +. \}
16114 +. nr fD \\n(fD+1
16115 +.\}
16116 +.nr cF \\n(.f
16117 +.nr cZ \\n(.s
16118 +\&\\*(fD\\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
16119 +.br
16120 +.ft \\n(cF
16121 +.fs \\n(cZ
16122 +..
16123 +.\" NS Fr macro - function return value - not callable (at the moment)
16124 +.de Fr
16125 +.if \\n(aC==0 \{\
16126 +. ie \\n(.$==0 .tm Usage: .Fr Function_return_value... \\*(Pu (#\\n(.c)
16127 +. el \{\
16128 +. ds mN Fr
16129 +. aV \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
16130 +. \}
16131 +.\}
16132 +.if \\n(aC>\\n(aP \{\
16133 +. as b1 \\*(aR
16134 +. nr aP \\n(aP+1
16135 +. nr cF \\n(.f
16136 +. nr cZ \\n(.s
16137 +. nR
16138 +.\}
16139 +..
16140 +.\" NS Ic macro - Interactive command
16141 +.de Ic
16142 +.if \\n(aC==0 \{\
16143 +. ie \\n(.$==0 .tm Usage: .Ic Interactive command ... \\*(Pu (#\\n(.c)
16144 +. el \{\
16145 +. ds mN Ic
16146 +. aV \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
16147 +. \}
16148 +.\}
16149 +.if \\n(aC>\\n(aP \{\
16150 +. as b1 \\*(iC
16151 +. nr aP \\n(aP+1
16152 +. nr cF \\n(.f
16153 +. nr cZ \\n(.s
16154 +. nR
16155 +.\}
16156 +..
16157 +.\" NS Li macro - literals
16158 +.de Li
16159 +.if \\n(aC==0 \{\
16160 +. ie \\n(.$==0 .tm Usage .Li argument ... \\*(Pu (#\\n(.c)
16161 +. el \{\
16162 +. ds mN Li
16163 +. ds A1 \\$1
16164 +. ds A2 \\$2
16165 +. ds A3 \\$3
16166 +. ds A4 \\$4
16167 +. ds A5 \\$5
16168 +. ds A6 \\$6
16169 +. ds A7 \\$7
16170 +. ds A8 \\$8
16171 +. ds A9 \\$9
16172 +. nr fV \\n(.$
16173 +. fV
16174 +. \}
16175 +.\}
16176 +.if \\n(aC>\\n(aP \{\
16177 +. as b1 \\*(lI
16178 +. nr aP \\n(aP+1
16179 +. nr cF \\n(.f
16180 +. nr cZ \\n(.s
16181 +. nR
16182 +.\}
16183 +..
16184 +.\" NS Or macro - Pipe symbol (OR)
16185 +.de Or
16186 +.if \\n(aC==0 \{\
16187 +. ie \\n(.$==0 .tm Usage: .Or ... \\*(Pu (#\\n(.c)
16188 +. el \{\
16189 +. ds mN Or
16190 +. aV \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
16191 +. \}
16192 +.\}
16193 +.if \\n(aC>\\n(aP \{\
16194 +. as b1 \\*(iC
16195 +. nr aP \\n(aP+1
16196 +. nr cF \\n(.f
16197 +. nr cZ \\n(.s
16198 +. nR
16199 +.\}
16200 +..
16201 +.\" NS Ms macro - Math symbol
16202 +.de Ms
16203 +.if \\n(aC==0 \{\
16204 +. ie \\n(.$==0 .tm Usage: .Ms Math symbol ... \\*(Pu (#\\n(.c)
16205 +. el \{\
16206 +. ds mN Ms
16207 +. aV \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
16208 +. \}
16209 +.\}
16210 +.if \\n(aC>\\n(aP \{\
16211 +. as b1 \\*(sY
16212 +. nr aP \\n(aP+1
16213 +. nr cF \\n(.f
16214 +. nr cZ \\n(.s
16215 +. nR
16216 +.\}
16217 +..
16218 +.\" NS Nm macro - Name of command or page topic
16219 +.\" NS n1 string - save first invocation of .Nm
16220 +.\" NS iS register - indent second command line in a synopsis
16221 +.de Nm
16222 +.if \\n(aC==0 \{\
16223 +. ie \\n(.$==0 \{\
16224 +. ie "\\*(n1"" .tm Usage: .Nm Name(s) ... \\*(Pu (#\\n(.c)
16225 +. el \&\\*(nM\\*(n1\fP\s0
16226 +. \}
16227 +. el \{\
16228 +. ds mN Nm
16229 +. ds A1 \\$1
16230 +. ds A2 \\$2
16231 +. ds A3 \\$3
16232 +. ds A4 \\$4
16233 +. ds A5 \\$5
16234 +. ds A6 \\$6
16235 +. ds A7 \\$7
16236 +. ds A8 \\$8
16237 +. ds A9 \\$9
16238 +. nr fV \\n(.$
16239 +. fV
16240 +. \}
16241 +.\}
16242 +.if \\n(aC>0 \{\
16243 +. ie \\n(aC==\\n(aP \{\
16244 +. as b1 \&\\*(nM\\*(n1\fP\s0
16245 +. aZ
16246 +. \}
16247 +. el \{\
16248 +. as b1 \\*(nM
16249 +. nr aP \\n(aP+1
16250 +. ie \\n(C\\n(aP==1 \{\
16251 +. as b1 \&\\*(n1\fP\s0
16252 +. \\*(A\\n(aP
16253 +. \}
16254 +. el \{\
16255 +. nr cF \\n(.f
16256 +. nr cZ \\n(.s
16257 +. if \\n(nS \{\
16258 +. if "\\*(mN"Nm" \{\
16259 +. rs
16260 +. in -\\n(iSu
16261 +. ie \\n(nS>1 .br
16262 +. el \{\
16263 +. if \\n(iS==0 \{\
16264 +. sw \\$1
16265 +. nr iS ((\\n(sWu+1)*\\n(fW)u
16266 +. \}
16267 +. \}
16268 +. in +\\n(iSu
16269 +. ti -\\n(iSu
16270 +. nr nS \\n(nS+1
16271 +. \}
16272 +. \}
16273 +. if "\\*(n1"" .ds n1 \\*(A\\n(aP
16274 +. nR
16275 +. \}
16276 +. \}
16277 +.\}
16278 +..
16279 +.\" NS Pa macro - Pathname
16280 +.de Pa
16281 +.if \\n(aC==0 \{\
16282 +. ie \\n(.$==0 \&\\*(pA~\fP\s0
16283 +. el \{\
16284 +. ds mN Pa
16285 +. aV \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
16286 +. \}
16287 +.\}
16288 +.if \\n(aC>\\n(aP \{\
16289 +. as b1 \\*(pA
16290 +. nr aP \\n(aP+1
16291 +. nr cF \\n(.f
16292 +. nr cZ \\n(.s
16293 +. nR
16294 +.\}
16295 +..
16296 +.\" NS Sy macro - Symbolics
16297 +.de Sy
16298 +.if \\n(aC==0 \{\
16299 +. ie \\n(.$==0 .tm Usage: .Sy symbolic_text ... \\*(Pu (#\\n(.c)
16300 +. el \{\
16301 +. ds mN Sy
16302 +. ds A1 \\$1
16303 +. ds A2 \\$2
16304 +. ds A3 \\$3
16305 +. ds A4 \\$4
16306 +. ds A5 \\$5
16307 +. ds A6 \\$6
16308 +. ds A7 \\$7
16309 +. ds A8 \\$8
16310 +. ds A9 \\$9
16311 +. nr fV \\n(.$
16312 +. fV
16313 +. \}
16314 +.\}
16315 +.if \\n(aC>\\n(aP \{\
16316 +. as b1 \\*(sY
16317 +. nr aP \\n(aP+1
16318 +. nr cF \\n(.f
16319 +. nr cZ \\n(.s
16320 +. nR
16321 +.\}
16322 +..
16323 +.\" NS Tn macro - Trade Name Macro
16324 +.de Tn
16325 +.if \\n(aC==0 \{\
16326 +. ie \\n(.$==0 .tm Usage: .Tn Trade_name(s) ... \\*(Pu (#\\n(.c)
16327 +. el \{\
16328 +. ds mN Tn
16329 +. aV \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
16330 +. \}
16331 +.\}
16332 +.if \\n(aC>\\n(aP \{\
16333 +. as b1 \\*(tN\\*(tF
16334 +. nr aP \\n(aP+1
16335 +. nr cF \\n(.f
16336 +. nr cZ \\n(.s
16337 +. nR
16338 +.\}
16339 +..
16340 +.\" NS nN macro - Trade Name Macro for inside of reference
16341 +.de nN
16342 +.if \\n(aC==0 \{\
16343 +. ie \\n(.$==0 .tm Usage: .Tn Trade_name(s) ... \\*(Pu (#\\n(.c)
16344 +. el \{\
16345 +. ds mN Tn
16346 +. aV \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
16347 +. \}
16348 +.\}
16349 +.if \\n(aC>\\n(aP \{\
16350 +. as b1 \\*(tN
16351 +. nr aP \\n(aP+1
16352 +. nr cF \\n(.f
16353 +. nr cZ \\n(.s
16354 +. rR
16355 +.\}
16356 +..
16357 +.\" NS Va macro - variable name macro
16358 +.de Va
16359 +.if \\n(aC==0 \{\
16360 +. ie \\n(.$==0 .tm Usage: .Va variable_name(s) ... \\*(Pu (#\\n(.c)
16361 +. el \{\
16362 +. ds mN Va
16363 +. aV \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
16364 +. \}
16365 +.\}
16366 +.if \\n(aC>\\n(aP \{\
16367 +. as b1 \\*(vA
16368 +. nr aP \\n(aP+1
16369 +. nr cF \\n(.f
16370 +. nr cZ \\n(.s
16371 +. nR
16372 +.\}
16373 +..
16374 +.\"
16375 +.\" NS No macro - Normal text macro (default text style if mess up)
16376 +.de No
16377 +.as b1 \\*(nO
16378 +.if \\n(aC==0 \{\
16379 +. ie \\n(.$==0 .tm Usage: .No must be called with arguments (#\\n(.c)
16380 +. el \{\
16381 +. ds mN No
16382 +. aV \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
16383 +. \}
16384 +.\}
16385 +.if \\n(aC>\\n(aP \{\
16386 +. nr aP \\n(aP+1
16387 +. ie \\n(C\\n(aP==1 \{\
16388 +. \\*(A\\n(aP
16389 +. \}
16390 +. el \{\
16391 +. nr cF \\n(.f
16392 +. nr cZ \\n(.s
16393 +. nR
16394 +. \}
16395 +.\}
16396 +..
16397 +.\"------------------------------------------------------------------------
16398 +.\" NS Op macro - Option Expression
16399 +.de Op
16400 +.if \\n(aC==0 \{\
16401 +. ds mN Op
16402 +.\}
16403 +.\" .ds qL \&\\*(lO
16404 +.\" .ds qR \&\\*(rO
16405 +.ds qL \&\\*(lB
16406 +.ds qR \&\\*(rB
16407 +.En \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8
16408 +..
16409 +.\" NS Aq macro - Enclose string in angle brackets
16410 +.de Aq
16411 +.if \\n(aC==0 .ds mN Aq
16412 +.ds qL \&<
16413 +.ds qR \&>
16414 +.En \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
16415 +..
16416 +.\" NS Bq macro - Enclose string in square brackets
16417 +.de Bq
16418 +.if \\n(aC==0 .ds mN Bq
16419 +.ds qL \&\\*(lB
16420 +.ds qR \&\\*(rB
16421 +.En \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
16422 +..
16423 +.\" NS Dq macro - Enclose string in double quotes
16424 +.de Dq
16425 +.if \\n(aC==0 .ds mN Dq
16426 +.ds qL \&\\*(Lq
16427 +.ds qR \&\\*(Rq
16428 +.En \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
16429 +..
16430 +.\" NS Eq macro - Enclose string in double quotes
16431 +.de Eq
16432 +.if \\n(aC==0 .ds mN Eq
16433 +.ds qL \\$1
16434 +.ds qR \\$2
16435 +.En \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
16436 +..
16437 +.\" NS Pq macro - Enclose string in parenthesis
16438 +.de Pq
16439 +.if \\n(aC==0 .ds mN Pq
16440 +.ds qL \&\\*(lP
16441 +.ds qR \&\\*(rP
16442 +.En \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
16443 +..
16444 +.\" NS Ql macro - Quoted literal is in file mdocj-[dit|n|g]roff (too large
16445 +.\" an if-else to carry along recursively for `if n ...')
16446 +.\"
16447 +.\" NS Sq macro - Enclose string in single quotes
16448 +.de Qq
16449 +.if \\n(aC==0 .ds mN Qq
16450 +.ds qL \&\\*q
16451 +.ds qR \&\\*q
16452 +.En \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
16453 +..
16454 +.\" NS Sq macro - Enclose string in single quotes
16455 +.de Sq
16456 +.if \\n(aC==0 .ds mN Sq
16457 +.ds qL \&\\*(sL
16458 +.ds qR \&\\*(sR
16459 +.En \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
16460 +..
16461 +.\"
16462 +.\" NS Es macro - Set up strings for .En call
16463 +.de Es
16464 +.if \\n(aC==0 \{\
16465 +. ie \\n(.$>2 .aV \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
16466 +. el \{\
16467 +. ds qL \\$1
16468 +. ds qR \\$2
16469 +. \}
16470 +.\}
16471 +.if \\n(aC>\\n(aP \{\
16472 +. nr aP \\n(aP+1
16473 +. ds qL \\*(A\\n(aP
16474 +. nr aP \\n(aP+1
16475 +. ds qR \\*(A\\n(aP
16476 +. ie \\n(aC>\\n(aP .c\\n(C\\n(aP
16477 +. el .aZ
16478 +.\}
16479 +..
16480 +.\" .tm En beg arg(A[\\n(aP])==\\*(A\\n(aP;
16481 +.\" .tm En oM==\\n(oM; dZ==\\n(dZ; Xt==\\n(Xt; aC==\\n(aC
16482 +.\" NS En macro - Enclose string with given args (eg [ and ] etc)
16483 +.\" NS qL string variable set by calling macro
16484 +.\" NS qR string variable set by calling macro
16485 +.\" NS aJ register (for vR)
16486 +.de En
16487 +.ie \\n(aC==0 \{\
16488 +. ie \\n(.$==0 \{\
16489 +. as b1 \&\\*(qL\\*(qR
16490 +. pB
16491 +. \}
16492 +. el \{\
16493 +.\". as mN (En)
16494 +. aV \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
16495 +. as b1 \&\\*(qL
16496 +. \}
16497 +.\}
16498 +.el \{\
16499 +. as b1 \&\\*(qL
16500 +.\}
16501 +.if \\n(aC>0 \{\
16502 +. ie (\\n(aC-\\n(aP)==0 \{\
16503 +. as b1 \&\\*(qR
16504 +. aZ
16505 +. \}
16506 +. el \{\
16507 +. ie \\n(C\\n(aC==3 \{\
16508 +. nr aJ \\n(aC-1
16509 +. vR
16510 +. nr aJ \\n(aJ+1
16511 +. ds A\\n(aJ \&\\*(qR\\*(A\\n(aJ
16512 +. nr aJ 0
16513 +. \}
16514 +. el .aI \&\\*(qR 3
16515 +. nr aP \\n(aP+1
16516 +. if \\n(C\\n(aP==1 .\\*(A\\n(aP
16517 +. if \\n(C\\n(aP>1 \{\
16518 +. nr aP \\n(aP-1
16519 +. No
16520 +. \}
16521 +. \}
16522 +.\}
16523 +..
16524 +.\" NS vR macro - vector routine (for En, trace backwards past trail punct)
16525 +.de vR
16526 +.if \\n(C\\n(aJ==3 \{\
16527 +. nr aJ \\n(aJ-1
16528 +. vR
16529 +.\}
16530 +..
16531 +.\"------------------------------------------------------------------------
16532 +.\" NS Ao macro - Angle open
16533 +.de Ao
16534 +.if \\n(aC==0 .ds mN Ao
16535 +.ds qL \&<
16536 +.eO \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
16537 +..
16538 +.\" NS Ac macro - Angle close
16539 +.de Ac
16540 +.if \\n(aC==0 .ds mN Ac
16541 +.ds qR \&>
16542 +.eC \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
16543 +..
16544 +.\" NS Bo macro - Bracket open
16545 +.de Bo
16546 +.if \\n(aC==0 .ds mN Bo
16547 +.ds qL \&[
16548 +.eO \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
16549 +..
16550 +.\" NS Bc macro - Bracket close
16551 +.de Bc
16552 +.if \\n(aC==0 .ds mN Bc
16553 +.ds qR \&]
16554 +.eC \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
16555 +..
16556 +.\" NS Do macro - Double Quote open
16557 +.de Do
16558 +.if \\n(aC==0 .ds mN Do
16559 +.ds qL \&\\*(Lq
16560 +.eO \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
16561 +..
16562 +.\" NS Dc macro - Double Quote close
16563 +.de Dc
16564 +.if \\n(aC==0 .ds mN Dc
16565 +.ds qR \&\\*(Rq
16566 +.eC \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
16567 +..
16568 +.\" NS Eo macro - Enclose open
16569 +.de Eo
16570 +.if \\n(aC==0 .ds mN Eo
16571 +.ds qL \\$1
16572 +.eO \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
16573 +..
16574 +.\" NS Ec macro - Enclose close
16575 +.de Ec
16576 +.if \\n(aC==0 .ds mN Ec
16577 +.ds qR \\$1
16578 +.eC \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
16579 +..
16580 +.\" NS Oo macro - Option open
16581 +.de Oo
16582 +.if \\n(aC==0 .ds mN Oo
16583 +.ds qL \&[
16584 +.eO \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
16585 +..
16586 +.\" NS Oc macro - Option close
16587 +.de Oc
16588 +.if \\n(aC==0 .ds mN Oc
16589 +.ds qR \&]
16590 +.eC \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
16591 +..
16592 +.\" NS Po macro - Parenthesis open
16593 +.de Po
16594 +.if \\n(aC==0 .ds mN Po
16595 +.ds qL \&(
16596 +.eO \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
16597 +..
16598 +.\" NS Pc macro - Parenthesis close
16599 +.de Pc
16600 +.if \\n(aC==0 .ds mN Pc
16601 +.ds qR \&)
16602 +.eC \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
16603 +..
16604 +.\" NS Qo macro - Straight Double Quote open
16605 +.de Qo
16606 +.if \\n(aC==0 .ds mN Qo
16607 +.ds qL \&\\*q
16608 +.eO \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
16609 +..
16610 +.\" NS Qc macro - Straight Double Quote close
16611 +.de Qc
16612 +.if \\n(aC==0 .ds mN Qc
16613 +.ds qR \&\\*q
16614 +.eC \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
16615 +..
16616 +.\" NS So macro - Single Quote open
16617 +.de So
16618 +.if \\n(aC==0 .ds mN So
16619 +.ds qL \&\\*(sL
16620 +.eO \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
16621 +..
16622 +.\" NS Sc macro - Single Quote close
16623 +.de Sc
16624 +.if \\n(aC==0 .ds mN Sc
16625 +.ds qR \&\\*(sR
16626 +.eC \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
16627 +..
16628 +.\" NS Xo macro - Extend open (continue)
16629 +.de Xo
16630 +.if \\n(aC==0 .ds mN Xo
16631 +.\" .nr mN 1
16632 +.ds qL
16633 +.eO \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
16634 +..
16635 +.\" NS Xe macro - Extend close (end)
16636 +.de Xc
16637 +.\" .nr mN 0
16638 +.if \\n(aC==0 .ds mN Xc
16639 +.ds qR
16640 +.eC \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
16641 +..
16642 +.\" NS eO macro - enclose string open
16643 +.\" NS oM register (extension possible)
16644 +.de eO
16645 +.nr oM \\n(oM+1
16646 +.\" .tm eO last arg==A[\\n(aC]==\\*(A\\n(aC; aP==\\n(aP; oM==\\n(oM; dZ==\\n(dZ;
16647 +.ie \\n(aC==0 \{\
16648 +. ie \\n(.$>0 \{\
16649 +. aV \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
16650 +. as b1 \\*(qL
16651 +. \}
16652 +. el \{\
16653 +. as b1 \\*(qL
16654 +. if (\\n(dZ==0)&(\\n(sM==1) \{\
16655 +. nr dZ \\n(dZ+1
16656 +. ds b2 \\*(b1
16657 +. ds b1
16658 +. nr lK \\n(.c
16659 +. ev 2
16660 +. fi
16661 +. di eB
16662 +. \}
16663 +. \}
16664 +.\}
16665 +.el \{\
16666 +. as b1 \\*(qL
16667 +.\}
16668 +.ie \\n(aC>0 \{\
16669 +. if \\n(aC>\\n(aP \{\
16670 +. nr aP \\n(aP+1
16671 +. ie \\n(C\\n(aP==1 .\\*(A\\n(aP
16672 +. el \{\
16673 +. nr aP \\n(aP-1
16674 +. No
16675 +. \}
16676 +. \}
16677 +. if \\n(aC==\\n(aP \{\
16678 +. if \\n(tP==1 \{\
16679 +.\" .tm SETTING Xt!!!
16680 +. nr Xt 1
16681 +. \}
16682 +.\".\" . ds S0
16683 +.\"CHANGED ds S0 \\*(iV
16684 +. aY
16685 +. \}
16686 +.\}
16687 +.el \{\
16688 +. if \\n(oM>1 .as b1 \\*(sV
16689 +.\}
16690 +..
16691 +.\"
16692 +.\" NS eC macro - enclose string close
16693 +.\" NS aa local register
16694 +.de eC
16695 +.nr oM \\n(oM-1
16696 +.\" tm eC last arg==A[\\n(aC]==\\*(A\\n(aC; aP==\\n(aP; oM==\\n(oM; dZ==\\n(dZ;
16697 +.as b1 \\*(qR
16698 +.if \\n(aC==0 \{\
16699 +. ie \\n(.$>0 \{\
16700 +. aV \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
16701 +. \}
16702 +. el \{\
16703 +. ie "\\*(xB"" \{\
16704 +. pB
16705 +. \}
16706 +. el \{\
16707 +. pB
16708 +.\\*(L\\n(lC
16709 +. nr Xt 0
16710 +. ds xB
16711 +. \}
16712 +. \}
16713 +.\}
16714 +.if \\n(aC>0 \{\
16715 +. ie \\n(aC==\\n(aP \{\
16716 +. ie \\n(oM==0 \{\
16717 +. aZ
16718 +. \}
16719 +. el .aY
16720 +. \}
16721 +. el \{\
16722 +. nr aa \\n(aP+1
16723 +. if \\n(C\\n(aa==2 .as b1 \\*(S\\n(aC
16724 +.\" tm CURRENT arg (aP==\\*(A\\n(aP and ap+1==\\*(A\\n(aa) tP==\\n(tP Xt==\\n(Xt
16725 +. rr aa
16726 +. if \\n(tP>0 \{\
16727 +.\" tm UNSETTING Xt==\\n(Xt!!!!
16728 +. if \\n(Xt>0 .nr Xt \\n(Xt-1
16729 +.\" tm NOW Xt==\\n(Xt!!!!
16730 +. \}
16731 +. No
16732 +. \}
16733 +.\}
16734 +..
16735 +.\"------------------------------------------------------------------------
16736 +.\" NS Pf macro - Prefix (calls .pF)
16737 +.de Pf
16738 +.if \\n(aC==0 .ds mN Pf
16739 +.ds qL \&\\$1
16740 +.pF \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
16741 +..
16742 +.\" NS pF macro - Prefix (for prefixing open quotes, brackets etc)
16743 +.de pF
16744 +.ie \\n(aC==0 \{\
16745 +. as b1 \&\\*(qL
16746 +. ie \\n(.$<2 \{\
16747 +. tm Warning: Missing arguments - prefix .Pf)
16748 +. pB
16749 +. \}
16750 +. el .aV \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
16751 +.\}
16752 +.el \{\
16753 +. ie (\\n(aC-\\n(aP)>1 \{\
16754 +. nr aP \\n(aP+1
16755 +. as b1 \&\\*(A\\n(aP
16756 +. \}
16757 +. el .tm Warning: .Pf: trailing prefix (#\\n(.c)
16758 +.\}
16759 +.if \\n(aC>0 \{\
16760 +. ie (\\n(aC-\\n(aP)==0 .aZ
16761 +. el \{\
16762 +. nr aP \\n(aP+1
16763 +. c\\n(C\\n(aP
16764 +. \}
16765 +.\}
16766 +..
16767 +.\" NS Ns macro - remove space (space remove done by .aV or .fV)
16768 +.de Ns
16769 +.if \\n(aC==0 \{\
16770 +. ds mN Ns
16771 +. ie \\n(.$>0 .aV \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
16772 +. el .tm Usage: .Ns must be called with arguments (#\\n(.c)
16773 +.\}
16774 +.No
16775 +..
16776 +.de Ap
16777 +.if \\n(aC==0 \{\
16778 +. ds mN Ap
16779 +. tm Usage: Ap "cannot be first request on a line (no .Ap)" (#\\n(.c)
16780 +.\}
16781 +.as b1 \&'
16782 +.No
16783 +..
16784 +.\" NS Hv macro - Hard (unpaddable) Space vector
16785 +.\" NS iV string inter-vector space
16786 +.\" NS sV string inter-argument space
16787 +.de Hv
16788 +.ds iV \\*(sV
16789 +.ds sV \\*(hV
16790 +..
16791 +.\" NS Sv macro - Soft Space vector (troff limitation)
16792 +.de Sv
16793 +.ds sV \\*(iV
16794 +..
16795 +.\" NS Tv macro - Tab Space vector
16796 +.de Tv
16797 +.ds sV \\*(tV
16798 +..
16799 +.\" NS Sm macro - Space mode
16800 +.\" NS sM register - default is one (space mode on)
16801 +.nr sM 1
16802 +.de Sm
16803 +.if \\n(aC==0 \{\
16804 +. ie \\n(.$==0 .tm "Usage: .Sm [off | on]" (#\\n(.c)
16805 +. el \{\
16806 +. ds mN Sm
16807 +. aV \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
16808 +. \}
16809 +.\}
16810 +.if \\n(aC>0 \{\
16811 +. nr aP \\n(aP+1
16812 +. if "\\*(A\\n(aP"on" \{\
16813 +. ds sV \\*(iV
16814 +. nr sM 1
16815 +. \}
16816 +. if "\\*(A\\n(aP"off" \{\
16817 +. ds sV
16818 +. rm S0 S1 S2 S3 S4 S5 S6 S7 S8 S9
16819 +. nr sM 0
16820 +. \}
16821 +. ie \\n(aC>\\n(aP \{\
16822 +. No
16823 +. \}
16824 +. el .aY
16825 +.\}
16826 +..
16827 +.\"------------------------------------------------------------------------
16828 +.\" Size and Argument type macros
16829 +.\" NS aT macro - argument type
16830 +.\" NS aU macro - argument type (same as .aT but uses A[1-9] strings
16831 +.\" NS aT register argument type
16832 +.if \n(.g \{\
16833 +.de aT
16834 +.nr aT 0
16835 +.ie \\n(sW>2:(\A'\\$1'==0) \{\
16836 +. nr aT 2
16837 +.\}
16838 +.el \{\
16839 +. if \\n(sW==1 \{\
16840 +. ie \\n(z\\$1>2 \{\
16841 +. nr aT \\n(z\\$1
16842 +. \}
16843 +. el .nr aT 2
16844 +. \}
16845 +. if \\n(sW==2 \{\
16846 +. ie \\n(\\$1 \{\
16847 +. nr aT 1
16848 +. \}
16849 +. el .nr aT 2
16850 +. \}
16851 +.\}
16852 +..
16853 +.de aU
16854 +.nr aT 0
16855 +.aW \\$1
16856 +.ie \\n(sW>2:(\A'\\*(A\\$1'==0) .nr aT 2
16857 +.el \{\
16858 +. if \\n(sW==1 \{\
16859 +. ie \\n(z\\*(A\\$1>2 \{\
16860 +. nr aT \\n(z\\*(A\\$1
16861 +. \}
16862 +. el .nr aT 2
16863 +. \}
16864 +. if \\n(sW==2 \{\
16865 +. ie (\\n(\\*(A\\$1) \{\
16866 +. nr aT 1
16867 +. \}
16868 +. el .nr aT 2
16869 +. \}
16870 +.\}
16871 +..
16872 +.\}
16873 +.if !\n(.g \{\
16874 +.de aT
16875 +.nr aT 0
16876 +.ie \\n(sW>2 \{\
16877 +. nr aT 2
16878 +.\}
16879 +.el \{\
16880 +. if \\n(sW==1 \{\
16881 +. ie \\n(z\\$1>2 \{\
16882 +. nr aT \\n(z\\$1
16883 +. \}
16884 +. el .nr aT 2
16885 +. \}
16886 +. if \\n(sW==2 \{\
16887 +. ie \\n(\\$1 \{\
16888 +. nr aT 1
16889 +. \}
16890 +. el .nr aT 2
16891 +. \}
16892 +.\}
16893 +..
16894 +.de aU
16895 +.nr aT 0
16896 +.aW \\$1
16897 +.ie \\n(sW>2 .nr aT 2
16898 +.el \{\
16899 +. if \\n(sW==1 \{\
16900 +. ie \\n(z\\*(A\\$1>2 \{\
16901 +. nr aT \\n(z\\*(A\\$1
16902 +. \}
16903 +. el .nr aT 2
16904 +. \}
16905 +. if \\n(sW==2 \{\
16906 +. ie (\\n(\\*(A\\$1) \{\
16907 +. nr aT 1
16908 +. \}
16909 +. el .nr aT 2
16910 +. \}
16911 +.\}
16912 +..
16913 +.\}
16914 +.\" NS s1 macro - set spacing for class type 1
16915 +.\" NS s2 macro - set spacing for class type 2
16916 +.\" NS s3 macro - set spacing for class type 3
16917 +.\" NS s1 macro - set spacing for class type 1
16918 +.\" NS s2 macro - set spacing for class type 2
16919 +.\" NS s3 macro - set spacing for class type 3
16920 +.\" NS s4 macro - set spacing for class type 4
16921 +.\" NS S[0-9] string spacing
16922 +.\" NS xX local register
16923 +.\" NS aa local register
16924 +.de s0
16925 +.tm MDOC-ERROR: bogus type 0 (can't set space '\\*(A\\n(aC') (#\\n(.c)
16926 +..
16927 +.de s1
16928 +.if \\n(\\*(A\\n(aC==3 \{\
16929 +. nr xX \\n(aC-1
16930 +. rm S\\n(xX
16931 +. ds S\\n(aC \\*(sV
16932 +.\}
16933 +.if \\n(\\*(A\\n(aC==2 \{\
16934 +. nr xX \\n(aC-1
16935 +.\" this kludge can probably go away, but need to double check first
16936 +. ie "\\*(A\\n(aC"Nb" .ds S\\n(xX \\*(hV
16937 +. el .rm S\\n(xX
16938 +.\}
16939 +..
16940 +.de s2
16941 +.ds S\\n(aC \\*(sV
16942 +..
16943 +.de s3
16944 +.if \\n(aC>1 \{\
16945 +. nr xX \\n(aC-1
16946 +. rm S\\n(xX
16947 +.\}
16948 +.ds S\\n(aC \\*(sV
16949 +..
16950 +.de s4
16951 +.nr aa 0
16952 +..
16953 +.\" Class switches (on current argument aP)
16954 +.\" NS c0 macro - catch errors (non-existent class type 0)
16955 +.\" NS c1 macro - call request if type 1
16956 +.\" NS c2 macro - call .No if type 2
16957 +.\" NS c3 macro - call .No if type 3
16958 +.\" NS c4 macro - call .No if type 4
16959 +.de c0
16960 +.tm MDOC-ERROR: bogus class 0 (can't determine '\\*(A\\n(aC') (#\\n(.c)
16961 +..
16962 +.de c1
16963 +.\\*(A\\n(aP
16964 +..
16965 +.de c2
16966 +.nr aP \\n(aP-1
16967 +.No
16968 +..
16969 +.de c3
16970 +.nr aP \\n(aP-1
16971 +.No
16972 +..
16973 +.de c4
16974 +.nr aP \\n(aP-1
16975 +.No
16976 +..
16977 +.\" NS y1 macro - ignore if class 1
16978 +.\" NS y2 macro - ignore if class 2
16979 +.\" NS y3 macro - append if type 3
16980 +.\" NS y4 macro - append if type 4
16981 +.de y1
16982 +.nr aa 1
16983 +..
16984 +.de y2
16985 +.nr aa 1
16986 +..
16987 +.de y3
16988 +.as b1 \\*(A\\n(aP
16989 +.nr aP \\n(aP+1
16990 +.n\\C\\n(aP
16991 +..
16992 +.de y4
16993 +.as b1 \\*(A\\n(aP
16994 +.nr aP \\n(aP+1
16995 +.n\\C\\n(aP
16996 +..
16997 +.\"--------------------------------------------------------------------------
16998 +.\" Ns Bf macro - Begin Font Mode (will be begin-mode/end-mode in groff & TeX)
16999 +.\" Ns Ef macro - End Font Mode
17000 +.de Bf
17001 +.ds mN Bf
17002 +.ie \\n(.$>0 \{\
17003 +. nr bF \\n(.f
17004 +. nr bZ \\n(.s
17005 +. if "\\$1"Em" \&\\*(eM\c
17006 +. if "\\$1"Li" \&\\*(lI\c
17007 +. if "\\$1"Sy" \&\\*(sY\c
17008 +. if "\\$1"-emphasis" \&\\*(eM\c
17009 +. if "\\$1"-literal" \&\\*(lI\c
17010 +. if "\\$1"-symbolic" \&\\*(sY\c
17011 +.\}
17012 +.el .tm Usage .Bf [Em | emphasis | Li | literal | Sy | symbolic] (#\\n(.c)
17013 +..
17014 +.de Ef
17015 +.ds mN Ef
17016 +.ie \\n(.$>0 .tm Usage .Ef (does not take arguments) (#\\n(.c)
17017 +.el \&\f\\n(bF\s\\n(bZ
17018 +..
17019 +.\" Ns Bk macro - Begin Keep
17020 +.\" Ns Ek macro - End Keep
17021 +.\" Ns kS string - keep type
17022 +.de Bk
17023 +.ds mN Bk
17024 +.ie \\n(.$==0 \{\
17025 +.tm Usage: .Bk [-lines | -words] (#\\n(.c)
17026 +.\}
17027 +.el \{\
17028 +. if !"\\*(kS"" .tm .Bk: nesting keeps not implemented yet. (#\\n(.c)
17029 +. if "\\$1"-lines" .tm .Bd -lines: Not implemented yet. (#\\n(.c)
17030 +. if "\\$1"-words" .Hv
17031 +. ds kS \\$1
17032 +.\}
17033 +..
17034 +.de Ek
17035 +.ds mN Ek
17036 +.ie \\n(.$>0 .tm Usage .Ek (does not take arguments) (#\\n(.c)
17037 +.el \{\
17038 +. if "\\*(kS"-lines" .tm .Bd -lines: Not implemented yet. (#\\n(.c)
17039 +. if "\\*(kS"-words" .Sv
17040 +. rm kS
17041 +.\}
17042 +..
17043 +.\" NS Bd macro - Begin Display display-type [offset string]
17044 +.\" NS Ed macro - end Display
17045 +.\" NS O[0-9] registers - stack of indent
17046 +.\" NS d[0-9] registers - display-type stack
17047 +.de Bd
17048 +.ds mN Bd
17049 +.ie \\n(.$==0 \{\
17050 +.tm Usage: .Bd [-literal | -filled | -ragged | -unfilled] [-offset [string]] [-compact] (#\\n(.c)
17051 +.\}
17052 +.el \{\
17053 +. ds aa
17054 +. nr bV 0
17055 +. nr iD 0
17056 +. nr dP \\n(dP+1
17057 +. if "\\$1"-literal" \{\
17058 +. nr iD \\n(iD+1
17059 +. ds d\\n(dP dL
17060 +. nr cF \\n(.f
17061 +. nr cZ \\n(.s
17062 +. ie t \{\&\\*(lI
17063 +' ta 9n 18n 27n 36n 45n 54n 63n 72n
17064 +. \}
17065 +. el \{\
17066 +' ta 8n 16n 24n 32n 40n 48n 56n 64n 72n
17067 +. \}
17068 +. nf
17069 +. \}
17070 +. if "\\$1"-filled" \{\
17071 +. nr iD \\n(iD+1
17072 +. ds d\\n(dP dF
17073 +. br
17074 +. \}
17075 +. if "\\$1"-ragged" \{\
17076 +. nr iD \\n(iD+1
17077 +. ds d\\n(dP dR
17078 +. na
17079 +. \}
17080 +. if "\\$1"-unfilled" \{\
17081 +. nr iD \\n(iD+1
17082 +. ds d\\n(dP dU
17083 +. nf
17084 +. \}
17085 +.\" .tm Here is argc: \\n(.$ and here is iD \\n(iD
17086 +. if ((\\n(iD>=1)&(\\n(.$>\\n(iD)) \{\
17087 +. bV \\$2 \\$3 \\$4
17088 +. \}
17089 +. if \\n(O\\n(dP>0 'in \\n(.iu+\\n(O\\n(dPu
17090 +. if (\\n(bV==0) \{\
17091 +. if (\\n(nS==0) \{\
17092 +. ie "\\*(d\\n(dP"dR" .sp \\n(dVu
17093 +. el 'sp \\n(dVu
17094 +. \}
17095 +. \}
17096 +. if \\n(cR==0 .ne 2v
17097 +. nr bV 0
17098 +. nr iD 0
17099 +.\}
17100 +..
17101 +.\" NS bV macro - resolve remaining .Bd arguments
17102 +.de bV
17103 +.\" .tm in bV with args: \\$1 \\$2 \\$3
17104 +.nr iD 1
17105 +.ds bY
17106 +.if "\\$1"-offset" \{\
17107 +. ds bY \\$2
17108 +. if "\\*(bY"left" \{\
17109 +. nr iD \\n(iD+1
17110 +. nr O\\n(dP 0
17111 +. \}
17112 +. if "\\*(bY"right" \{\
17113 +. nr iD \\n(iD+1
17114 +. nr O\\n(dP (\\n(.l/3)u
17115 +. \}
17116 +. if "\\*(bY"center" \{\
17117 +. nr iD \\n(iD+1
17118 +. nr O\\n(dP (\\n(.l-\\n(.i)/4u
17119 +. \}
17120 +. if "\\*(bY"indent" \{\
17121 +. nr iD \\n(iD+1
17122 +. nr O\\n(dP \\n(dIu
17123 +. \}
17124 +. if "\\*(bY"indent-two" \{\
17125 +. nr iD \\n(iD+1
17126 +. nr O\\n(dP \\n(dIu+\\n(dIu
17127 +. \}
17128 +. if \\n(iD==1 \{\
17129 +. nr iD \\n(iD+1
17130 +. sW "\\*(bY"
17131 +. ie \\n(sW>2 \{\
17132 +. ie ((\\*(bY>9n)&(\\*(bY<100n)) \{\
17133 +. nr O\\n(dP \\*(bY
17134 +. \}
17135 +. el .nr O\\n(dP (\\n(sW)*\\n(fWu
17136 +. \}
17137 +. el \{\
17138 +. if \\n(sW==2 .aT \\*(bY
17139 +. ie \\n(aT==1 \{\
17140 +. nr O\\n(dP \\n(\\*(bY
17141 +. \}
17142 +. el .nr O\\n(dP \\*(bY
17143 +. \}
17144 +. \}
17145 +.\}
17146 +.if "\\$1"-compact" \{\
17147 +. nr bV 1
17148 +.\}
17149 +.if \\n(iD<\\n(.$ \{\
17150 +. ie "\\*(bY"" \{\
17151 +. bV \\$2 \\$3
17152 +. \}
17153 +. el \{\
17154 +. bV \\$3
17155 +. \}
17156 +.\}
17157 +..
17158 +.\" NS Ed macro - end display
17159 +.de Ed
17160 +.ds mN Ed
17161 +.br
17162 +.if \\n(dP==0 .tm mdoc: Extraneous .Ed
17163 +.if "\\*(d\\n(dP"dL" \{\
17164 +. ft \\n(cF
17165 +. fz \\n(cZ
17166 +.\}
17167 +.in \\n(.iu-\\n(O\\n(dPu
17168 +.rr O\\n(dP
17169 +.rm d\\n(dP
17170 +.nr dP \\n(dP-1
17171 +.fi
17172 +.if t .ad
17173 +..
17174 +.\"--------------------------------------------------------------------------
17175 +.\" NS Bl macro - begin list (.Bl list-type)
17176 +.\" NS L[0-9] registers - stack of list types
17177 +.de Bl
17178 +.ie \\n(.$==0 \{\
17179 +.tm Usage: .Bl [[-hang | -tag] [-width]] [ -item | -enum | -bullet | -diag] (#\\n(.c)
17180 +.\}
17181 +.el \{\
17182 +. ds mN Bl
17183 +. nr aP 0
17184 +. nr lC \\n(lC+1
17185 +. ds A1 \\$2
17186 +. ds A2 \\$3
17187 +. ds A3 \\$4
17188 +. ds A4 \\$5
17189 +. ds A5 \\$6
17190 +. ds A6 \\$7
17191 +. ds A7 \\$8
17192 +. ds A8 \\$9
17193 +. nr fV \\n(.$-1
17194 +. if "\\$1"-hang" \{\
17195 +. nr aP \\n(aP+1
17196 +. ds L\\n(lC hL
17197 +. nr w\\n(lC 6n
17198 +. nr tC 1
17199 +. \}
17200 +. if "\\$1"-tag" \{\
17201 +. nr aP \\n(aP+1
17202 +. ds L\\n(lC tL
17203 +. nr tC 1
17204 +. \}
17205 +. if "\\$1"-item" \{\
17206 +. nr aP \\n(aP+1
17207 +. ds L\\n(lC iT
17208 +. nr tC 1
17209 +. \}
17210 +. if "\\$1"-enum" \{\
17211 +. nr aP \\n(aP+1
17212 +. ds L\\n(lC nU
17213 +. nr w\\n(lC 3n
17214 +. nr tC 1
17215 +. \}
17216 +. if "\\$1"-bullet" \{\
17217 +. nr aP \\n(aP+1
17218 +. ds L\\n(lC bU
17219 +. nr w\\n(lC 2n
17220 +. nr tC 1
17221 +. \}
17222 +. if "\\$1"-dash" \{\
17223 +. nr aP \\n(aP+1
17224 +. ds L\\n(lC hU
17225 +. nr w\\n(lC 2n
17226 +. nr tC 1
17227 +. \}
17228 +. if "\\$1"-hyphen" \{\
17229 +. nr aP \\n(aP+1
17230 +. ds L\\n(lC hU
17231 +. nr w\\n(lC 2n
17232 +. nr tC 1
17233 +. \}
17234 +. if "\\$1"-inset" \{\
17235 +. nr aP \\n(aP+1
17236 +. ds L\\n(lC lL
17237 +. nr tC 1
17238 +. \}
17239 +. if "\\$1"-diag" \{\
17240 +. nr aP \\n(aP+1
17241 +. ds L\\n(lC mL
17242 +. nr mL 1
17243 +. \}
17244 +. if "\\$1"-ohang" \{\
17245 +. nr aP \\n(aP+1
17246 +. ds L\\n(lC oL
17247 +. nr tC 1
17248 +. \}
17249 +. if "\\$1"-column" \{\
17250 +. nr aP \\n(aP+1
17251 +. ds L\\n(lC cL
17252 +. \}
17253 +. ie \\n(aP==0 \{\
17254 +. tm \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
17255 +. tm Usage: .Bl [[-inset|-tag] -width] [-item|-enum|-bullet|-diag] (#\\n(.c)
17256 +. \}
17257 +. el \{\
17258 +. tY
17259 +. if (\\n(aP==1)&(\\n(aP<\\n(.$) \{\
17260 +. nr aP 0
17261 +. lV
17262 +. if "\\*(L\\n(lC"cL" \{\
17263 +. W\\n(wV
17264 +. nr w\\n(lC 0
17265 +' in -\\n(eWu
17266 +. ie \\n(v\\n(lC==1 \{\
17267 +. nr aa 0
17268 +. \}
17269 +. el \{\
17270 +. sp \\n(dVu
17271 +. \}
17272 +. nf
17273 +. nr wV 0
17274 +. \}
17275 +. \}
17276 +. \}
17277 +. nr aP 0
17278 +.\" . ds b1
17279 +. aY
17280 +.\" .tm Here is L[\\n(lC]==\\*(L\\n(lC
17281 +.\}
17282 +..
17283 +.if \n(.g \{\
17284 +. nr i 10
17285 +. while \ni<100 \{\
17286 +. nr num!\nin 1
17287 +. nr i +1
17288 +. \}
17289 +.\}
17290 +.\" NS lV macro - resolve remaining .Bl arguments
17291 +.de lV
17292 +.nr aP \\n(aP+1
17293 +.if \\n(fV>=\\n(aP \{\
17294 +. nr iD 0
17295 +. if "\\*(A\\n(aP"-compact" \{\
17296 +. nr iD 1
17297 +. nr v\\n(lC 1
17298 +. \}
17299 +. if "\\*(A\\n(aP"-width" \{\
17300 +. nr iD 1
17301 +. nr aP \\n(aP+1
17302 +. nr tW 1
17303 +. ds t\\n(lC TagwidtH
17304 +. ds tS \\*(A\\n(aP
17305 +. aW \\n(aP
17306 +. ie \\n(sW>2 \{\
17307 +. nr w\\n(lC (\\n(sW)*\\n(fWu
17308 +. if \\n(sW==3 \{\
17309 +. ie \\n(.g \{\
17310 +. if \A'\\*(tS' .if r num!\\*(tS \{\
17311 +. nr w\\n(lC \\*(tS
17312 +. \}
17313 +. \}
17314 +. el \{\
17315 +. if (\\*(tS>9n)&(\\*(tS<99n) \{\
17316 +. nr w\\n(lC \\*(tSu
17317 +. \}
17318 +. \}
17319 +. \}
17320 +. \}
17321 +. el \{\
17322 +. aT \\*(tS
17323 +. ie \\n(aT==1 \{\
17324 +. nr w\\n(lC \\n(\\*(tS
17325 +. \}
17326 +. el \{\
17327 +. nr w\\n(lC \\*(tSu
17328 +. \}
17329 +. \}
17330 +. \}
17331 +. if "\\*(A\\n(aP"-offset" \{\
17332 +. nr iD 1
17333 +. nr aP \\n(aP+1
17334 +. ie "\\*(A\\n(aP"indent" \{\
17335 +. nr o\\n(lC \\n(Dsu
17336 +. \}
17337 +. el \{\
17338 +. ds tS \\*(A\\n(aP
17339 +. aW \\n(aP
17340 +. ie \\n(sW>2 \{\
17341 +. nr o\\n(lC (\\n(sW)*\\n(fWu
17342 +. ie \\n(.g \{\
17343 +. if \A'\\*(tS' .if r num!\\*(tS \{\
17344 +. nr o\\n(lC \\*(tS
17345 +. \}
17346 +. \}
17347 +. el \{\
17348 +. if (\\*(tS>9n)&(\\*(tS<100n) \{\
17349 +. nr o\\n(lC \\*(tS
17350 +. \}
17351 +. \}
17352 +. \}
17353 +. el \{\
17354 +. ie \\n(C\\n(aP==1 .nr o\\n(lC \\n(\\*(tS
17355 +. el .nr o\\n(lC \\*(tS
17356 +. \}
17357 +. \}
17358 +. \}
17359 +. if \\n(iD==0 \{\
17360 +. if "\\*(L\\n(lC"cL" \{\
17361 +. nr wV \\n(wV+1
17362 +. ds A\\n(wV \\*(A\\n(aP
17363 +. \}
17364 +. \}
17365 +. if \\n(fV>\\n(aP .lV
17366 +.\}
17367 +..
17368 +.\" NS El macro - end list
17369 +.\" NS iD local register
17370 +.de El
17371 +.ie \\n(.$>0 \{\
17372 +. tm Usage: .El (#\\n(.c)
17373 +.\}
17374 +.el \{\
17375 +. ds mN El
17376 +. nr iD 0
17377 +. if "\\*(L\\n(lC"cL" \{\
17378 +. nr iD 1
17379 +. cC
17380 +. \}
17381 +. if "\\*(L\\n(lC"nU" \{\
17382 +. nr nU 0
17383 +. \}
17384 +. if \\n(mL>0 \{\
17385 +. nr iD 1
17386 +. nr mL 0
17387 +. tZ
17388 +. nr lC \\n(lC-1
17389 +. tY
17390 +. \}
17391 +. if "\\*(L\\n(lC"iT" \{\
17392 +' in \\n(.iu-\\n(o\\n(lCu
17393 +. tZ
17394 +. nr lC \\n(lC-1
17395 +. tY
17396 +. nr iD 1
17397 +. \}
17398 +. if "\\*(L\\n(lC"oL" \{\
17399 +' in \\n(.iu-\\n(o\\n(lCu
17400 +. tZ
17401 +. nr lC \\n(lC-1
17402 +. tY
17403 +. nr iD 1
17404 +. \}
17405 +. if "\\*(L\\n(lC"lL" \{\
17406 +' in \\n(.iu-\\n(o\\n(lCu
17407 +. tZ
17408 +. nr lC \\n(lC-1
17409 +. tY
17410 +. nr iD 1
17411 +. \}
17412 +. if \\n(iD==0 \{\
17413 +. lE
17414 +. \}
17415 +. br
17416 +. nr iD 0
17417 +.\}
17418 +..
17419 +.\" NS It macro - list item
17420 +.\" NS iD local register
17421 +.\" NS aA save pA font string for section FILES (no underline if nroff)
17422 +.de It
17423 +.if "\\*(L\\n(lC"" \{\
17424 +. tm Usage .Bl -list-type [-width [string] | -compact | -offset [string]] (#\\n(.c)
17425 +. tm .It \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8
17426 +.\}
17427 +.\" .tm Here is L[\\n(lC]==\\*(L\\n(lC
17428 +.ne 3v
17429 +.ie \\n(.$>0 \{\
17430 +. ds mN It
17431 +. ds b1
17432 +. nr iD 0
17433 +. ds A1 \\$1
17434 +. ds A2 \\$2
17435 +. ds A3 \\$3
17436 +. ds A4 \\$4
17437 +. ds A5 \\$5
17438 +. ds A6 \\$6
17439 +. ds A7 \\$7
17440 +. ds A8 \\$8
17441 +. ds A9 \\$9
17442 +. nr fV \\n(.$
17443 +. if "\\*(L\\n(lC"mL" \{\
17444 +. nr iD 1
17445 +. nr aP 0
17446 +. aX
17447 +. \\*(L\\n(lC
17448 +. \}
17449 +. if "\\*(L\\n(lC"cL" \{\
17450 +. ds b1
17451 +. nr aP 0
17452 +. nr iD 1
17453 +. \\*(L\\n(lC
17454 +. \}
17455 +. if "\\*(L\\n(lC"iT" \{\
17456 +. nr aP 0
17457 +. nr iD 1
17458 +. \\*(L\\n(lC
17459 +. \}
17460 +. if \\n(iD==0 \{\
17461 +. fV
17462 +.\" tm ------------------------------------------------------------------------
17463 +.\" tm It list-type==\\*(L\\n(lC, aP==\\n(aP
17464 +.\" tm It beg arg(A[1])==\\*(A1; oM==\\n(oM; dZ==\\n(dZ; Xt==\\n(Xt; aC==\\n(aC
17465 +. nr oM \\n(oM+1
17466 +. nr tP 1
17467 +. nr aP \\n(aP+1
17468 +. nr tX \\n(C\\n(aP
17469 +. ds tX \\*(A\\n(aP
17470 +. if \\n(nF==1 \{\
17471 +. ds aA \\*(pA
17472 +. if n .ds pA \\*(nO
17473 +. \}
17474 +. ie \\n(C\\n(aP==1 \{\
17475 +. \\*(A\\n(aP
17476 +. \}
17477 +. el \{\
17478 +. nr aP \\n(aP-1
17479 +. No
17480 +. \}
17481 +.\" tm in It here is b1==\\*(b1
17482 +.\" tm It mid arg(A[1])==\\*(A1; oM==\\n(oM; dZ==\\n(dZ; Xt==\\n(Xt; aC==\\n(aC
17483 +. ie \\n(Xt==1 .ds xB \&\\*(L\\n(lC
17484 +. el .\\*(L\\n(lC
17485 +. \}
17486 +. nr iD 0
17487 +.\}
17488 +.el .\\*(L\\n(lC
17489 +..
17490 +.\" NS lL macro - .It item of list-type inset
17491 +.de lL
17492 +.lY
17493 +.br
17494 +\&\\*(b1
17495 +.nr oM \\n(oM-1
17496 +.nr tP 0
17497 +.ds b1
17498 +.aY
17499 +'fi
17500 +..
17501 +.\" NS hL macro - .It item of list-type hanging label (as opposed to tagged)
17502 +.de hL
17503 +.lX
17504 +.nr bb \\n(w\\n(lCu+\\n(lSu
17505 +.ti -\\n(bbu
17506 +.ie \w\a\\*(b1\au>=(\\n(w\\n(lCu) \&\\*(b1
17507 +.el \&\\*(b1\h'|\\n(bbu'\c
17508 +.nr oM \\n(oM-1
17509 +.ds b1
17510 +.nr tP 0
17511 +.aY
17512 +'fi
17513 +..
17514 +.\" NS oL macro - .It item of list-type overhanging label
17515 +.de oL
17516 +.lY
17517 +\&\\*(b1
17518 +.br
17519 +.nr oM \\n(oM-1
17520 +.ds b1
17521 +.nr tP 0
17522 +.aY
17523 +'fi
17524 +..
17525 +.\" NS iT macro - .It item of list-type [empty label]
17526 +.de iT
17527 +.lY
17528 +.br
17529 +.\" .ds b1
17530 +.aY
17531 +'fi
17532 +..
17533 +.\" NS nU macro - Enumerated list
17534 +.\" NS nU register count
17535 +.\" NS hU macro - Hyphen paragraph list (sub bullet list)
17536 +.\" NS bU macro - Bullet paragraph list
17537 +.de nU
17538 +.nr oM \\n(oM+1
17539 +.nr nU \\n(nU+1
17540 +.ds b1 \&\\n(nU.
17541 +.uL
17542 +..
17543 +.de bU
17544 +.nr oM \\n(oM+1
17545 +.nr bU \\n(bU+1
17546 +.ds b1 \&\\*(sY\&\(bu\fP
17547 +.uL
17548 +..
17549 +.de hU
17550 +.nr oM \\n(oM+1
17551 +.nr bU \\n(bU+1
17552 +.ds b1 \&\\*(sY\&\-\fP
17553 +.uL
17554 +..
17555 +.\" NS uL macro - .It item of list-type enum/bullet/hyphen
17556 +.de uL
17557 +.lX
17558 +.nr bb \\n(w\\n(lCu+\\n(lSu
17559 +.ti -\\n(bbu
17560 +.ie \w\a\\*(b1\au>=(\\n(w\\n(lCu) \&\\*(b1
17561 +.el \&\\*(b1\h'|\\n(bbu'\c
17562 +.nr oM \\n(oM-1
17563 +.\" .nr dZ \\n(dZ+1
17564 +.ds b1
17565 +.nr tP 0
17566 +.aY
17567 +'fi
17568 +..
17569 +.\" NS mL macro - .It item of list-type diagnostic-message
17570 +.de mL
17571 +.nr cF \\n(.f
17572 +.nr cZ \\n(.s
17573 +.ie \\n(mL==1 \{\
17574 +. nr zB \\n(.c
17575 +. ie (\\n(zB-\\n(zA)>1 .Pp
17576 +. el .br
17577 +. nr zA \\n(zB
17578 +. nr zB 0
17579 +.\}
17580 +.el \{\
17581 +. nr zA \\n(.c
17582 +. br
17583 +.\}
17584 +\&\\*(sY\\*(b1\f\\n(cF\s\\n(cZ\\*(lS\c
17585 +.aY
17586 +.ds b1
17587 +'fi
17588 +..
17589 +.\" NS tL macro - .It item of list-type "tag"
17590 +.de tL
17591 +.\" tm in tL here is b1==\\*(b1
17592 +.if \\n(tW==0 .lW
17593 +.lX
17594 +.nr bb \\n(w\\n(lCu+\\n(lSu
17595 +.ti -\\n(bbu
17596 +.ie (\w\a\\*(b1\au)>(\\n(w\\n(lCu) \{\&\\*(b1
17597 +. br
17598 +.\}
17599 +.el \&\\*(b1\h'|\\n(bbu'\c
17600 +.if \\n(nF==1 \{\
17601 +. if n .ds pA \\*(aA
17602 +.\}
17603 +.nr oM \\n(oM-1
17604 +.nr tP 0
17605 +.\" .nr dZ \\n(dZ+1
17606 +.ds b1
17607 +.aY
17608 +'fi
17609 +..
17610 +.\" NS lW macro - resolve unknown label/tag width (if .Bl [inset | tag] only)
17611 +.de lW
17612 +.if !"TagwidtH"\\*(t\\n(lC" \{\
17613 +. ie \\n(tX==1 \{\
17614 +. ds t\\n(lN \\*(tX
17615 +. nr w\\n(lN \\n(\\*(tX
17616 +. \}
17617 +. el \{\
17618 +. ds t\\n(lN No
17619 +. nr w\\n(lN \\n(No
17620 +. \}
17621 +. if !"\\*(t\\n(lC"\\*(t\\n(lN" .nr tC 1
17622 +.\}
17623 +..
17624 +.\" NS lX macro - set up vertical spacing (if compact) and offset+indent (all)
17625 +.de lX
17626 +.ie \\n(tC \{\
17627 +. nr tC 0
17628 +. nr tW 0
17629 +. if \\n(v\\n(lC==0 .sp \\n(dVu
17630 +. in \\n(.iu+\\n(w\\n(lCu+\\n(o\\n(lCu+\\n(lSu
17631 +.\}
17632 +.el \{\
17633 +. ie \\n(v\\n(lC==1 \{\
17634 +. nr aa 0
17635 +. \}
17636 +. el \{\
17637 +. sp \\n(dVu
17638 +. \}
17639 +.\}
17640 +.if !\\n(cR .ne 2v
17641 +..
17642 +.\" NS lY macro - set up vertical spacing (if compact) and offset+indent (all)
17643 +.de lY
17644 +.ie \\n(tC \{\
17645 +. nr tC 0
17646 +. nr tW 0
17647 +. if \\n(v\\n(lC==0 .sp \\n(dVu
17648 +. in \\n(.iu+\\n(o\\n(lCu
17649 +.\}
17650 +.el \{\
17651 +. ie \\n(v\\n(lC==1 \{\
17652 +. nr aa 0
17653 +. \}
17654 +. el \{\
17655 +. sp \\n(dVu
17656 +. \}
17657 +.\}
17658 +.if !\\n(cR .ne 2v
17659 +..
17660 +.\" NS tS temporary string
17661 +.\" NS hL macro - hanging list function
17662 +.\" NS tS temporary string
17663 +.\" NS hL macro - hanging list function
17664 +.\" NS lT macro - tagged list function
17665 +.\" NS lE macro - list end function
17666 +.\" NS tX string (initial string)
17667 +.\" NS tX register (initial class)
17668 +.\" NS tC parameter change flag
17669 +.\" NS Xt save current list-type flag
17670 +.\" NS lC register - list type stack counter
17671 +.\" NS tP register tag flag (for diversions)
17672 +.\" NS w[0-9] register tag stack (nested tags)
17673 +.\" NS t[0-9] register tag string stack (nested tags)
17674 +.\" NS o[0-9] register offset stack (nested tags)
17675 +.\" NS v[0-9] register vertical tag break stack
17676 +.\" NS h[0-9] register horizontal tag stack (continuous if 1, break if 0)
17677 +.nr lC 0
17678 +.nr wV 0
17679 +.nr w1 0
17680 +.nr o1 0
17681 +.nr v1 0
17682 +.nr h1 0
17683 +.ds t\n(lC
17684 +.de lE
17685 +.\" IN lC o[\\n(lC]==\\n(o\\n(lC, w[\\n(lC]==\\n(w\\n(lC,
17686 +.ie \\n(o\\n(lC>0 \{\
17687 +' in \\n(.iu-(\\n(w\\n(lCu)-(\\n(o\\n(lCu)-\\n(lSu
17688 +. rr o\\n(lC
17689 +.\}
17690 +.el 'in \\n(.iu-\\n(w\\n(lCu-\\n(lSu
17691 +.if \\n(lC<=0 .tm Extraneous .El call (#\\n(.c)
17692 +.tZ
17693 +.nr lC \\n(lC-1
17694 +.tY
17695 +..
17696 +.\" NS tY macro - set up next block for list
17697 +.\" NS tZ macro - decrement stack
17698 +.\" NS tY register (next possible lC value)
17699 +.de tY
17700 +.nr tY (\\n(lC+1)
17701 +.nr w\\n(tY 0
17702 +.nr h\\n(tY 0
17703 +.nr o\\n(tY 0
17704 +.ds t\\n(tY \\*(t\\n(lC
17705 +.ds L\\n(tY
17706 +.nr v\\n(tY 0
17707 +..
17708 +.de tZ
17709 +.rm L\\n(tY
17710 +.rr w\\n(tY
17711 +.rr h\\n(tY
17712 +.rr o\\n(tY
17713 +.rm t\\n(tY
17714 +.rr v\\n(tY
17715 +.nr tY \\n(tY-1
17716 +..
17717 +.\" initial values
17718 +.nr w1 0
17719 +.nr o1 0
17720 +.nr h1 0
17721 +.ds t1
17722 +.nr v1 0
17723 +.nr tY 1
17724 +.\" NS Xr macro - cross reference (man page only)
17725 +.de Xr
17726 +.if \\n(aC==0 \{\
17727 +. ie \\n(.$==0 .tm Usage: .Xr manpage_name [section#] \\*(Pu (#\\n(.c)
17728 +. el \{\
17729 +. ds mN Xr
17730 +. aV \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
17731 +. \}
17732 +.\}
17733 +.if \\n(aC>\\n(aP \{\
17734 +. nr aP \\n(aP+1
17735 +. ie \\n(C\\n(aP==1 .tm Usage: .Xr manpage_name [section#] \\*(Pu (#\\n(.c)
17736 +. el \{\
17737 +. ie \\n(C\\n(aP>2 .y\\n(C\\n(aP
17738 +. el \{\
17739 +. as b1 \&\\*(xR\\*(A\\n(aP\fP\s0
17740 +. if \\n(aC>\\n(aP \{\
17741 +. nr aP \\n(aP+1
17742 +. if \\n(C\\n(aP==2 \{\
17743 +. as b1 \&(\\*(A\\n(aP)
17744 +. nr aP \\n(aP+1
17745 +. \}
17746 +. if \\n(aC>=\\n(aP \{\
17747 +. c\\n(C\\n(aP
17748 +. \}
17749 +. \}
17750 +. \}
17751 +. aZ
17752 +. \}
17753 +.\}
17754 +..
17755 +.\" NS Sx macro - cross section reference
17756 +.de Sx
17757 +.if \\n(aC==0 \{\
17758 +. ie \\n(.$==0 .tm Sx Usage: .Sx Section Header \\*(Pu (#\\n(.c)
17759 +. el \{\
17760 +. ds mN Sx
17761 +. aV \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
17762 +. \}
17763 +.\}
17764 +.\}
17765 +.if \\n(aC>\\n(aP \{\
17766 +. nr aP \\n(aP+1
17767 +. as b1 \\*(sX
17768 +. nr cF \\n(.f
17769 +. nr cZ \\n(.s
17770 +. nR
17771 +.\}
17772 +..
17773 +.\" NS cC macro - column-list end-list
17774 +.\" NS eW macro - column indent width
17775 +.\" NS cI register - column indent width
17776 +.\" NS W[1-5] macro - establish tabs for list-type column
17777 +.de cC
17778 +'in \\n(.iu-\\n(o\\n(lCu-\\n(w\\n(lCu
17779 +.ta .5i 1i 1.5i 2i 2.5i 3i 3.5i 4i 4.5i 5i 5.5i 6i 6.5i
17780 +.fi
17781 +.tZ
17782 +.nr lC \\n(lC-1
17783 +.tY
17784 +..
17785 +.de W1
17786 +.ta \w\a\\*(A1 \au
17787 +.nr eW \w\a\\*(A1 \au
17788 +'in \\n(.iu+\\n(eWu+\\n(o\\n(lCu
17789 +..
17790 +.de W2
17791 +.ta \w\a\\*(A1 \au +\w\a\\*(A2 \au
17792 +.nr eW \w\a\\*(A1 \au+\w\a\\*(A2 \au
17793 +'in \\n(.iu+\\n(eWu+\\n(o\\n(lCu
17794 +..
17795 +.de W3
17796 +.ta \w\a\\*(A1 \au +\w\a\\*(A2 \au +\w\a\\*(A3 \au
17797 +.nr eW \w\a\\*(A1 \au+\w\a\\*(A2 \au+\w\a\\*(A3 \au
17798 +'in \\n(.iu+\\n(eWu+\\n(o\\n(lCu
17799 +..
17800 +.de W4
17801 +.ta \w\a\\*(A1 \au +\w\a\\*(A2 \au +\w\a\\*(A3 \au +\w\a\\*(A4 \au
17802 +.nr eW \w\a\\*(A1 \au+\w\a\\*(A2 \au +\w\a\\*(A3 \au +\w\a\\*(A4 \au
17803 +'in \\n(.iu+\\n(eWu+\\n(o\\n(lCu
17804 +..
17805 +.de W5
17806 +.ta \w\a\\*(A1 \au +\w\a\\*(A2 \au +\w\a\\*(A3 \au +\w\a\\*(A4 \au +\w\a\\*(A5 \au
17807 +.nr eW \w\a\\*(A1 \au +\w\a\\*(A2 \au +\w\a\\*(A3 \au +\w\a\\*(A4 \au +\w\a\\*(A5 \au
17808 +' in \\n(.iu+\\n(eWu+\\n(o\\n(lCu
17809 +..
17810 +.\" This is packed abnormally close, intercol width should be an option
17811 +.de W6
17812 +.ta \w\a\\*(A1 \au +\w\a\\*(A2 \au +\w\a\\*(A3 \au +\w\a\\*(A4 \au +\w\a\\*(A5 \au +\w\a\\*(A6
17813 +.nr eW \w\a\\*(A1 \au +\w\a\\*(A2 \au +\w\a\\*(A3 \au +\w\a\\*(A4 \au +\w\a\\*(A5 \au +\w\a\\*(A6
17814 +' in \\n(.iu+\\n(eWu+\\n(o\\n(lCu
17815 +..
17816 +.\" NS cL macro - column items
17817 +.de cL
17818 +.if \\n(w\\n(lC==0 .nr w\\n(lC \\n(eWu
17819 +.if \\n(.u==0 \{\
17820 +. fi
17821 +' in \\n(.iu+\\n(eWu
17822 +.\}
17823 +.ti -\\n(eWu
17824 +.fV
17825 +.nr aP \\n(aP+1
17826 +.ie \\n(aC>=\\n(aP \{\
17827 +. if "\\*(A\\n(aP"Ta" \{\
17828 +. nr jJ \\n(aP-1
17829 +. rm S\\n(jJ
17830 +. rr jJ
17831 +. \}
17832 +. c\\n(C\\n(aP
17833 +.\}
17834 +.el .tm Usage: .It column_string [Ta [column_string ...] ] (#\\n(.c)
17835 +..
17836 +.\" NS Ta macro - append tab (\t)
17837 +.de Ta
17838 +.ie \\n(aC>0 \{\
17839 +. nr aP \\n(aP+1
17840 +. ie \\n(aC>=\\n(aP \{\
17841 +. if "\\*(A\\n(aP"Ta" \{\
17842 +. nr jJ \\n(aP-1
17843 +. rm S\\n(jJ
17844 +. rr jJ
17845 +. \}
17846 +. as b1 \\t
17847 +. c\\n(C\\n(aP
17848 +. \}
17849 +. el \{\
17850 +. as b1 \\t\\c
17851 +. rm S\\n(aP
17852 +. pB
17853 +. aY
17854 +.\" . ds b1
17855 +. \}
17856 +.\}
17857 +.el \{\
17858 +. tm Usage: Ta must follow column entry: e.g. (#\\n(.c)
17859 +. tm .It column_string [Ta [column_string ...] ]
17860 +.\}
17861 +..
17862 +.\"
17863 +.\" NS Dl macro - display (one line) literal
17864 +.de Dl
17865 +'ta .5i 1i 1.5i 2i 2.5i 3i 3.5i 4i 4.5i 5i 5.5i 6i 6.5i
17866 +.in \\n(.iu+\\n(Dsu
17867 +.ie \\n(aC==0 \{\
17868 +. ie \\n(.$==0 \{\
17869 +. tm Usage: .Dl argument ... (#\\n(.c)
17870 +. \}
17871 +. el \{\
17872 +. ds mN Dl
17873 +. ds A1 \\$1
17874 +. ds A2 \\$2
17875 +. ds A3 \\$3
17876 +. ds A4 \\$4
17877 +. ds A5 \\$5
17878 +. ds A6 \\$6
17879 +. ds A7 \\$7
17880 +. ds A8 \\$8
17881 +. ds A9 \\$9
17882 +. nr fV \\n(.$
17883 +. fV
17884 +. Li
17885 +. \}
17886 +.\}
17887 +.el \{\
17888 +. tm Usage: .Dl not callable by other macros (#\\n(.c)
17889 +.\}
17890 +.in \\n(.iu-\\n(Dsu
17891 +..
17892 +.\"
17893 +.\" NS D1 macro - display (one line)
17894 +.de D1
17895 +'ta .5i 1i 1.5i 2i 2.5i 3i 3.5i 4i 4.5i 5i 5.5i 6i 6.5i
17896 +.in \\n(.iu+\\n(Dsu
17897 +.ie \\n(aC==0 \{\
17898 +. ie \\n(.$==0 \{\
17899 +. tm Usage: .D1 argument ... (#\\n(.c)
17900 +. \}
17901 +. el \{\
17902 +. ds mN D1
17903 +. ds A1 \\$1
17904 +. ds A2 \\$2
17905 +. ds A3 \\$3
17906 +. ds A4 \\$4
17907 +. ds A5 \\$5
17908 +. ds A6 \\$6
17909 +. ds A7 \\$7
17910 +. ds A8 \\$8
17911 +. ds A9 \\$9
17912 +. nr fV \\n(.$
17913 +. fV
17914 +. nr aP \\n(aP+1
17915 +. ie \\n(C\\n(aP==1 .\\*(A\\n(aP
17916 +. el .No
17917 +. \}
17918 +.\}
17919 +.el \{\
17920 +. tm Usage: .D1 not callable by other macros (#\\n(.c)
17921 +.\}
17922 +.in \\n(.iu-\\n(Dsu
17923 +..
17924 +.\" NS Ex macro - DEFUNCT
17925 +.de Ex
17926 +.tm Ex defunct, Use .D1: \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
17927 +..
17928 +.\"
17929 +.\" NS Ex macro - DEFUNCT
17930 +.de Ex
17931 +.tm Ex defunct, Use .D1: \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
17932 +..
17933 +.\"
17934 +.\" NS Vt macro - Variable type (for forcing old style variable declarations)
17935 +.\" this is not done in the same manner as .Ot for fortrash - clean up later
17936 +.de Vt
17937 +.\" if a function declaration was the last thing given, want vertical space
17938 +.if \\n(fD>0 \{\
17939 +. Pp
17940 +. nr fD 0
17941 +.\}
17942 +.\" if a subroutine was the last thing given, want vertical space
17943 +.if \\n(fZ>0 \{\
17944 +. ie \\n(fX==0 \{\
17945 +. Pp
17946 +. rs
17947 +. \}
17948 +. el .br
17949 +.\}
17950 +.nr fX \\n(fX+1
17951 +.nr cF \\n(.f
17952 +.nr cZ \\n(.s
17953 +\\*(fT\&\\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
17954 +.ie \\n(oT==0 .br
17955 +.el \&\ \&
17956 +.ft \\n(cF
17957 +.fs \\n(cZ
17958 +..
17959 +.\"
17960 +.\" NS Ft macro - Function type
17961 +.nr fZ 0
17962 +.de Ft
17963 +.if \\n(nS>0 \{\
17964 +. if \\n(fZ>0 \{\
17965 +. Pp
17966 +. nr fD 0
17967 +. nr fX 0
17968 +. \}
17969 +. if \\n(fD>0 \{\
17970 +. Pp
17971 +. nr fD 0
17972 +. nr fX 0
17973 +. \}
17974 +. if \\n(fX>0 \{\
17975 +. Pp
17976 +. nr fX 0
17977 +. \}
17978 +. nr fY 1
17979 +.\}
17980 +.nr cF \\n(.f
17981 +.nr cZ \\n(.s
17982 +\&\\*(fT\\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
17983 +.ft \\n(cF
17984 +.fs \\n(cZ
17985 +.\" .br
17986 +..
17987 +.\"
17988 +.\" NS Ot macro - Old Function type (fortran - no newline)
17989 +.\" Ns oT register
17990 +.nr oT 0
17991 +.de Ot
17992 +.nr oT 1
17993 +.if \\n(nS>0 \{\
17994 +. if \\n(fZ>0 \{\
17995 +. Pp
17996 +. nr fD 0
17997 +. nr fX 0
17998 +. \}
17999 +. if \\n(fD>0 \{\
18000 +. Pp
18001 +. nr fD 0
18002 +. nr fX 0
18003 +. \}
18004 +. if \\n(fX>0 \{\
18005 +. Pp
18006 +. nr fX 0
18007 +. \}
18008 +. nr fY 1
18009 +.\}
18010 +.if \\n(.$==4 .as b1 \&\\*(fT\&\\$1 \\$2 \\$3 \\$4
18011 +.if \\n(.$==3 .as b1 \&\\*(fT\&\\$1 \\$2 \\$3
18012 +.if \\n(.$==2 .as b1 \&\\*(fT\&\\$1 \\$2
18013 +.if \\n(.$==1 .as b1 \&\\*(fT\&\\$1
18014 +.as b1 \&\ \fP
18015 +..
18016 +.\"
18017 +.\" NS Fa macro - Function arguments
18018 +.de Fa
18019 +.if \\n(aC==0 \{\
18020 +. ie \\n(.$==0 .tm Usage: .Fa Function Arguments ... \\*(Pu (#\\n(.c)
18021 +. el \{\
18022 +. ds mN Fa
18023 +. ds A1 \\$1
18024 +. ds A2 \\$2
18025 +. ds A3 \\$3
18026 +. ds A4 \\$4
18027 +. ds A5 \\$5
18028 +. ds A6 \\$6
18029 +. ds A7 \\$7
18030 +. ds A8 \\$8
18031 +. ds A9 \\$9
18032 +. nr fV \\n(.$
18033 +. fV
18034 +. \}
18035 +.\}
18036 +.ie \\n(fC>0 \{\
18037 +. fC
18038 +.\}
18039 +.el \{\
18040 +. if \\n(aC>\\n(aP \{\
18041 +. as b1 \\*(fA
18042 +. nr aP \\n(aP+1
18043 +. nr cF \\n(.f
18044 +. nr cZ \\n(.s
18045 +. nR
18046 +. if \\n(nS>0 \{\
18047 +. if \\n(fZ>0 .br
18048 +. \}
18049 +. \}
18050 +.\}
18051 +..
18052 +.\" NS fC macro - interal .Fa for .FO and .Fc
18053 +.de fC
18054 +.ie \\n(aC>\\n(aP \{\
18055 +. nr aP \\n(aP+1
18056 +.\" . nr aa \\n(aP
18057 +.\" . if \\n(nS>0 \{\
18058 +. ds Fb
18059 +. nr fB 0
18060 +. nr Fb 0
18061 +. fB \\*(A\\n(aP
18062 +. if \\n(fB>1 \{\
18063 +. rm A\\n(aP
18064 +. rn Fb A\\n(aP
18065 +. \}
18066 +.\" . \}
18067 +. if \\n(fC>1 \{\
18068 +. as b1 \&\f\\n(cF\s\\n(cZ,\\*(S\\n(aP\\*(fA\\*(A\\n(aP\fP\s0
18069 +.\" . as b1 \&\\,\\*(S\\n(aP\fP\s0\\*(fA\\*(A\\n(aP\fP\s0
18070 +. \}
18071 +. if \\n(fC==1 \{\
18072 +. as b1 \&\|\\*(fA\\*(A\\n(aP\fP\s0
18073 +. \}
18074 +. nr fC \\n(fC+1
18075 +. fC
18076 +.\}
18077 +.el \{\
18078 +. aY
18079 +.\}
18080 +..
18081 +.\" NS Fn macro - functions
18082 +.\" NS fY register - dick with old style function declarations (fortran)
18083 +.\" NS fZ register - break a line when more than one function in a synopsis
18084 +.\"
18085 +.de Fn
18086 +.if \\n(aC==0 \{\
18087 +. ie \\n(.$==0 .tm Usage: .Fn function_name function_arg(s) ... \\*(Pu (#\\n(.c)
18088 +. el \{\
18089 +. ds mN Fn
18090 +. ds A1 \\$1
18091 +. ds A2 \\$2
18092 +. ds A3 \\$3
18093 +. ds A4 \\$4
18094 +. ds A5 \\$5
18095 +. ds A6 \\$6
18096 +. ds A7 \\$7
18097 +. ds A8 \\$8
18098 +. ds A9 \\$9
18099 +. nr fV \\n(.$
18100 +. fV
18101 +. \}
18102 +.\}
18103 +.if \\n(nS>0 \{\
18104 +.\" if there is/has been more than one subroutine declaration
18105 +. if \\n(fY==0 \{\
18106 +. if \\n(fZ>0 \{\
18107 +. Pp
18108 +. nr fX 0
18109 +. nr fD 0
18110 +. \}
18111 +. \}
18112 +. if \\n(fY==1 \{\
18113 +. br
18114 +. nr fX 0
18115 +. nr fD 0
18116 +. nr fY 0
18117 +. \}
18118 +. if \\n(fD>0 \{\
18119 +. Pp
18120 +. nr fX 0
18121 +. \}
18122 +. if \\n(fX>0 \{\
18123 +. Pp
18124 +. nr fD 0
18125 +. \}
18126 +. nr fZ \\n(fZ+1
18127 +. nr fY 0
18128 +. rs
18129 +. ie \\n(nS>1 .br
18130 +. el \{\
18131 +. if \\n(iS==0 \{\
18132 +. nr iS ((8)*\\n(fW)u
18133 +. \}
18134 +. \}
18135 +. in +\\n(iSu
18136 +. ti -\\n(iSu
18137 +. nr nS \\n(nS+1
18138 +.\}
18139 +.if \\n(aC>\\n(aP \{\
18140 +. nr aP \\n(aP+1
18141 +. nr cF \\n(.f
18142 +. nr cZ \\n(.s
18143 +. as b1 \\*(fN\\*(A\\n(aP\fP\s0\\*(lp
18144 +. ie \\n(aC>\\n(aP \{\
18145 +. as b1 \\*(fA
18146 +. nr aP \\n(aP+1
18147 +. f\\n(C\\n(aP
18148 +. \}
18149 +. el \{\
18150 +. as b1 \|\\*(rp
18151 +. aZ
18152 +. \}
18153 +. if \\n(nS>0 \{\
18154 +. in -\\n(iSu
18155 +. \}
18156 +.\}
18157 +..
18158 +.\"
18159 +.\" NS f1 macro - class switch
18160 +.\" NS f2 macro - handle function arguments
18161 +.\" NS f3 macro - punctuation
18162 +.\" NS f4 macro - write out function
18163 +.de f1
18164 +.as b1 \\*(rp\f\\n(cF\s\\n(cZ
18165 +.\\*(A\\n(aP
18166 +..
18167 +.de f2
18168 +.if \\n(nS>0 \{\
18169 +. ds Fb
18170 +. nr fB 0
18171 +. nr Fb 0
18172 +. fB \\*(A\\n(aP
18173 +. if \\n(fB>1 \{\
18174 +. rm A\\n(aP
18175 +. rn Fb A\\n(aP
18176 +. \}
18177 +.\}
18178 +.as b1 \\*(A\\n(aP
18179 +.ie \\n(aC>\\n(aP \{\
18180 +. nr aa \\n(aP
18181 +. nr aP \\n(aP+1
18182 +. if \\n(C\\n(aP==2 \{\
18183 +. as b1 \&\|\f\\n(cF\s\\n(cZ,\\*(S\\n(aa\fP\s0\|
18184 +. \}
18185 +. f\\n(C\\n(aP
18186 +.\}
18187 +.el \{\
18188 +. as b1 \\*(rp\f\\n(cF\s\\n(cZ
18189 +. aZ
18190 +.\}
18191 +..
18192 +.de f3
18193 +.as b1 \\*(rp\f\\n(cF\s\\n(cZ\\*(A\\n(aP
18194 +.ie \\n(aC>\\n(aP \{\
18195 +. No
18196 +.\}
18197 +.el .aZ
18198 +..
18199 +.de f4
18200 +.as b1 \\*(rp\f\\n(cF\s\\n(cZ\\*(S\\n(aP\\*(A\\n(aP
18201 +.ie \\n(aC>\\n(aP \{\
18202 +. nr aP \\n(aP+1
18203 +. No
18204 +.\}
18205 +.el .aZ
18206 +..
18207 +.de Fo
18208 +.hy 0
18209 +.if \\n(aC==0 \{\
18210 +. ie \\n(.$==0 .tm Usage: .Fo function_name
18211 +. el \{\
18212 +. ds mN Fo
18213 +. ds A1 \\$1
18214 +. ds A2 \\$2
18215 +. ds A3 \\$3
18216 +. ds A4 \\$4
18217 +. ds A5 \\$5
18218 +. ds A6 \\$6
18219 +. ds A7 \\$7
18220 +. ds A8 \\$8
18221 +. ds A9 \\$9
18222 +. nr fV \\n(.$
18223 +. fV
18224 +. \}
18225 +.\}
18226 +.if \\n(nS>0 \{\
18227 +.\" if there is/has been more than one subroutine declaration
18228 +. if \\n(fY==0 \{\
18229 +. if \\n(fZ>0 \{\
18230 +. Pp
18231 +. nr fX 0
18232 +. nr fD 0
18233 +. \}
18234 +. \}
18235 +. if \\n(fY==1 \{\
18236 +. br
18237 +. nr fX 0
18238 +. nr fD 0
18239 +. nr fY 0
18240 +. \}
18241 +. if \\n(fD>0 \{\
18242 +. Pp
18243 +. nr fX 0
18244 +. \}
18245 +. if \\n(fX>0 \{\
18246 +. Pp
18247 +. nr fD 0
18248 +. \}
18249 +. nr fZ \\n(fZ+1
18250 +. nr fY 0
18251 +. rs
18252 +. ie \\n(nS>1 .br
18253 +. el \{\
18254 +. if \\n(iS==0 \{\
18255 +. nr iS ((8)*\\n(fW)u
18256 +. \}
18257 +. \}
18258 +. in +\\n(iSu
18259 +. ti -\\n(iSu
18260 +. nr nS \\n(nS+1
18261 +.\}
18262 +.if \\n(aC>\\n(aP \{\
18263 +. nr oM \\n(oM+1
18264 +. nr fC 1
18265 +. nr aP \\n(aP+1
18266 +. nr cF \\n(.f
18267 +. nr cZ \\n(.s
18268 +. as b1 \\*(fN\\*(A\\n(aP\fP\s0\\*(lp
18269 +. aY
18270 +.\}
18271 +..
18272 +.de Fc
18273 +.if \\n(aC==0 \{\
18274 +. if \\n(.$>0 \{\
18275 +. ds mN Fo
18276 +. ds A1 \\$1
18277 +. ds A2 \\$2
18278 +. ds A3 \\$3
18279 +. ds A4 \\$4
18280 +. ds A5 \\$5
18281 +. ds A6 \\$6
18282 +. ds A7 \\$7
18283 +. ds A8 \\$8
18284 +. ds A9 \\$9
18285 +. nr fV \\n(.$
18286 +. fV
18287 +. \}
18288 +.\}
18289 +.nr fC 0
18290 +.nr oM \\n(oM-1
18291 +.as b1 \|\\*(rp
18292 +.ie \\n(aC>\\n(aP \{\
18293 +. nr aP \\n(aP+1
18294 +. \\*(A\\n(aP
18295 +.\}
18296 +.el \{\
18297 +. aZ
18298 +.\}
18299 +.if \\n(nS>0 \{\
18300 +. in -\\n(iSu
18301 +.\}
18302 +.hy
18303 +..
18304 +.\" NS fb macro - if SYNOPSIS, set hard space inbetween function args
18305 +.\" NS fb register - count of words in a function argument
18306 +.\" NS Fb register - counter
18307 +.\" NS Fb string - temporary string
18308 +.de fB
18309 +.\" .tm fB==\\n(fB, Fb==\\n(Fb, 1==\\$1 2==\\$2 3==\\$3 4==\\$4 5==\\$5 6==\\$6
18310 +.if \\n(fB==0 \{\
18311 +. nr fB \\n(.$
18312 +. nr Fb 0
18313 +. ds Fb
18314 +.\}
18315 +.nr Fb \\n(Fb+1
18316 +.as Fb \&\\$1
18317 +.if \\n(Fb<\\n(fB \{\
18318 +. as Fb \&\\*(hV
18319 +. fB \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
18320 +.\}
18321 +..
18322 +.\" NS Fc - Function close - not implemented yet
18323 +.\" NS Fo - Function open - not implemented yet
18324 +.\"
18325 +.\" Very crude references, stash all reference info into strings (usual
18326 +.\" use of b1 buffer, then b1 contents copied to string of retrievable
18327 +.\" naming convention), print out reference on .Re request and clean up.
18328 +.\" Ordering very limited, no fancy citations, but can do articles, journals
18329 +.\" and books - need to add several missing options (like city etc).
18330 +.\" should be able to grab a refer entry, massage it a wee bit (prefix
18331 +.\" a `.' to the %[A-Z]) and not worry (ha!)
18332 +.\"
18333 +.\" NS Rs macro - Reference Start
18334 +.\" NS rS register - Reference Start flag
18335 +.\" NS rS string - Reference Start buffer name for next save (of b1 buffer)
18336 +.de Rs
18337 +.nr rS 1
18338 +.rC
18339 +.if \\n(nA==1 .Pp
18340 +.nr Kl 0
18341 +..
18342 +.\" NS Re macro - Reference End
18343 +.de Re
18344 +.rZ
18345 +.rC
18346 +.nr rS 0
18347 +..
18348 +.\" NS rC macro - reference cleanup
18349 +.de rC
18350 +.nr uK 0
18351 +.nr jK 0
18352 +.nr nK 0
18353 +.nr oK 0
18354 +.nr qK 0
18355 +.nr rK 0
18356 +.nr tK 0
18357 +.nr vK 0
18358 +.nr dK 0
18359 +.nr pK 0
18360 +.nr bK 0
18361 +.ds rS
18362 +.rm U1 U2 U3 U4 U5 U6 U7 U8
18363 +.rm uK jK nK oK rK qK tK vK dK pK bK
18364 +..
18365 +.\" NS rZ macro - reference print
18366 +.de rZ
18367 +.if \\n(uK \{\&\\*(U1,
18368 +. nr aK 1
18369 +. if (\\n(uK>1 \{\
18370 +. aK
18371 +. \}
18372 +. nr Kl -\\n(uK
18373 +.\}
18374 +.if \\n(tK \{\
18375 +. nr Kl \\n(Kl-1
18376 +. if \\n(Kl==0 \{\
18377 +. ie (\\n(jK==1):(\\n(bK==1) \{\&\\*q\\*(tK\\*q.
18378 +. \}
18379 +. el \{\&\\*(eM\\*(tK\\*(nO.
18380 +. \}
18381 +. \}
18382 +. if \\n(Kl>0 \{\
18383 +. ie (\\n(jK==1):(\\n(bK==1) \{\&\\*q\\*(tK\\*q,
18384 +. \}
18385 +. el \{\&\\*(eM\\*(tK\\*(nO,
18386 +. \}
18387 +. \}
18388 +.\}
18389 +.if \\n(bK \{\
18390 +. nr Kl \\n(Kl-1
18391 +. if \\n(Kl==0 \&\\*(eM\\*(bK\\*(nO.
18392 +. if \\n(Kl>0 \&\\*(eM\\*(bK\\*(nO,
18393 +.\}
18394 +.if \\n(jK \{\
18395 +. nr Kl \\n(Kl-1
18396 +. if \\n(Kl==0 \&\\*(eM\\*(jK\\*(nO.
18397 +. if \\n(Kl>0 \&\\*(eM\\*(jK\\*(nO,
18398 +.\}
18399 +.if \\n(rK \{\
18400 +. nr Kl \\n(Kl-1
18401 +. if \\n(Kl==0 \&\\*(rK.
18402 +. if \\n(Kl>0 \&\\*(rK,
18403 +.\}
18404 +.if \\n(nK \{\
18405 +. nr Kl \\n(Kl-1
18406 +. if \\n(Kl==0 \&\\*(nK.
18407 +. if \\n(Kl>0 \&\\*(nK,
18408 +.\}
18409 +.if \\n(vK \{\
18410 +. nr Kl \\n(Kl-1
18411 +. if \\n(Kl==0 \&\\*(vK.
18412 +. if \\n(Kl>0 \&\\*(vK,
18413 +.\}
18414 +.if \\n(pK \{\
18415 +. nr Kl \\n(Kl-1
18416 +. if \\n(Kl==0 \&\\*(pK.
18417 +. if \\n(Kl>0 \&\\*(pK,
18418 +.\}
18419 +.if \\n(qK \{\
18420 +. nr Kl \\n(Kl-1
18421 +. if \\n(Kl==0 \&\\*(qK.
18422 +. if \\n(Kl>0 \&\\*(qK,
18423 +.\}
18424 +.if \\n(dK \{\
18425 +. nr Kl \\n(Kl-1
18426 +. if \\n(Kl==0 \&\\*(dK.
18427 +. if \\n(Kl>0 \&\\*(dK,
18428 +.\}
18429 +.if \\n(oK \{\
18430 +. nr Kl \\n(Kl-1
18431 +. if \\n(Kl==0 \&\\*(oK.
18432 +. if \\n(Kl>0 \&\\*(oK,
18433 +.\}
18434 +.if \\n(Kl>0 .tm unresolved reference problem
18435 +..
18436 +.\" NS aK macro - print out reference authors
18437 +.de aK
18438 +.nr aK \\n(aK+1
18439 +.ie (\\n(uK-\\n(aK)==0 \{\&and \\*(U\\n(aK,
18440 +.\}
18441 +.el \{\&\\*(U\\n(aK,
18442 +. aK
18443 +.\}
18444 +..
18445 +.\" NS %A macro - reference author(s)
18446 +.\" NS uK register - reference author(s) counter
18447 +.\" NS U[1-9] strings - reference author(s) names
18448 +.de %A
18449 +.if \\n(aC==0 \{\
18450 +. ie \\n(.$==0 .tm Usage: .%A Author_name (#\\n(.c)
18451 +. el \{\
18452 +. nr uK \\n(uK+1
18453 +. nr Kl \\n(Kl+1
18454 +. ds rS U\\n(uK
18455 +. ds mN %A
18456 +. aV \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
18457 +. \}
18458 +.\}
18459 +.if \\n(aC>\\n(aP \{\
18460 +. nr aP \\n(aP+1
18461 +. nr cF \\n(.f
18462 +. nr cZ \\n(.s
18463 +. rR
18464 +.\}
18465 +..
18466 +.\" NS %B macro - [reference] Book Name
18467 +.\" NS bK string - Book Name
18468 +.\" NS bK register - Book Name flag
18469 +.de %B
18470 +.if \\n(aC==0 \{\
18471 +. ie \\n(.$==0 .tm Usage: .%B Book Name (#\\n(.c)
18472 +. el \{\
18473 +. ds mN %B
18474 +. if \\n(rS>0 \{\
18475 +. nr bK \\n(bK+1
18476 +. nr Kl \\n(Kl+1
18477 +. ds rS bK
18478 +. \}
18479 +. ds A1 \\$1
18480 +. ds A2 \\$2
18481 +. ds A3 \\$3
18482 +. ds A4 \\$4
18483 +. ds A5 \\$5
18484 +. ds A6 \\$6
18485 +. ds A7 \\$7
18486 +. ds A8 \\$8
18487 +. ds A9 \\$9
18488 +. nr fV \\n(.$
18489 +. fV
18490 +. \}
18491 +.\}
18492 +.if \\n(aC>\\n(aP \{\
18493 +. nr aP \\n(aP+1
18494 +. nr cF \\n(.f
18495 +. nr cZ \\n(.s
18496 +. ie \\n(rS==0 \{\
18497 +. as b1 \&\\*(eM
18498 +. nR
18499 +. \}
18500 +. el .rR
18501 +.\}
18502 +..
18503 +.\" NS %D macro - [reference] Date
18504 +.\" NS dK string - Date String
18505 +.\" NS dK register - Date flag
18506 +.de %D
18507 +.if \\n(aC==0 \{\
18508 +. ie \\n(.$==0 .tm Usage: .%D Date (#\\n(.c)
18509 +. el \{\
18510 +. ds mN %D
18511 +. nr dK \\n(dK+1
18512 +. nr Kl \\n(Kl+1
18513 +. ds rS dK
18514 +. ds A1 \\$1
18515 +. ds A2 \\$2
18516 +. ds A3 \\$3
18517 +. ds A4 \\$4
18518 +. ds A5 \\$5
18519 +. ds A6 \\$6
18520 +. ds A7 \\$7
18521 +. ds A8 \\$8
18522 +. ds A9 \\$9
18523 +. nr fV \\n(.$
18524 +. fV
18525 +. \}
18526 +.\}
18527 +.if \\n(aC>\\n(aP \{\
18528 +. nr aP \\n(aP+1
18529 +. nr cF \\n(.f
18530 +. nr cZ \\n(.s
18531 +. rR
18532 +.\}
18533 +..
18534 +.\" NS %J macro - [reference] Journal Name
18535 +.\" NS jK register - [reference] Journal Name flag
18536 +.\" NS jK string - [reference] Journal Name
18537 +.de %J
18538 +.if \\n(aC==0 \{\
18539 +. ie \\n(.$==0 .tm Usage: .%J Journal Name (#\\n(.c)
18540 +. el \{\
18541 +. ds mN %J
18542 +. nr jK \\n(jK+1
18543 +. ds rS jK
18544 +. nr Kl \\n(Kl+1
18545 +. ds A1 \\$1
18546 +. ds A2 \\$2
18547 +. ds A3 \\$3
18548 +. ds A4 \\$4
18549 +. ds A5 \\$5
18550 +. ds A6 \\$6
18551 +. ds A7 \\$7
18552 +. ds A8 \\$8
18553 +. ds A9 \\$9
18554 +. nr fV \\n(.$
18555 +. fV
18556 +. \}
18557 +.\}
18558 +.if \\n(aC>\\n(aP \{\
18559 +. nr aP \\n(aP+1
18560 +. nr cF \\n(.f
18561 +. nr cZ \\n(.s
18562 +. rR
18563 +.\}
18564 +..
18565 +.\" NS %N macro - [reference] issue number
18566 +.\" NS nK register - [reference] issue number flag
18567 +.\" NS nK string - [reference] issue number
18568 +.de %N
18569 +.if \\n(aC==0 \{\
18570 +. ie \\n(.$==0 .tm Usage: .%N issue number (#\\n(.c)
18571 +. el \{\
18572 +. nr nK \\n(nK+1
18573 +. nr Kl \\n(Kl+1
18574 +. ds rS nK
18575 +. ds mN %N
18576 +. aV \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
18577 +. \}
18578 +.\}
18579 +.if \\n(aC>\\n(aP \{\
18580 +. nr aP \\n(aP+1
18581 +. nr cF \\n(.f
18582 +. nr cZ \\n(.s
18583 +. rR
18584 +.\}
18585 +..
18586 +.\" NS %O macro - [reference] optional information
18587 +.\" NS oK register - [reference] optional information flag
18588 +.\" NS oK string - [reference] optional information
18589 +.de %O
18590 +.if \\n(aC==0 \{\
18591 +. ie \\n(.$==0 .tm Usage: .%O optional information ... \\*(Pu (#\\n(.c)
18592 +. el \{\
18593 +. ds mN %O
18594 +. nr oK \\n(oK+1
18595 +. nr Kl \\n(Kl+1
18596 +. ds rS oK
18597 +. ds A1 \\$1
18598 +. ds A2 \\$2
18599 +. ds A3 \\$3
18600 +. ds A4 \\$4
18601 +. ds A5 \\$5
18602 +. ds A6 \\$6
18603 +. ds A7 \\$7
18604 +. ds A8 \\$8
18605 +. ds A9 \\$9
18606 +. nr fV \\n(.$
18607 +. fV
18608 +. \}
18609 +.\}
18610 +.if \\n(aC>\\n(aP \{\
18611 +. nr aP \\n(aP+1
18612 +. nr cF \\n(.f
18613 +. nr cZ \\n(.s
18614 +. rR
18615 +.\}
18616 +..
18617 +.\" NS %P macro - [reference] page numbers
18618 +.\" NS pK register - [reference] page number flag
18619 +.\" NS pK string - [reference] page number
18620 +.de %P
18621 +.if \\n(aC==0 \{\
18622 +. ie \\n(.$==0 .tm Usage: .%P page numbers ... \\*(Pu (#\\n(.c)
18623 +. el \{\
18624 +. ds mN %P
18625 +. nr pK \\n(pK+1
18626 +. nr Kl \\n(Kl+1
18627 +. ds rS pK
18628 +. ds A1 \\$1
18629 +. ds A2 \\$2
18630 +. ds A3 \\$3
18631 +. ds A4 \\$4
18632 +. ds A5 \\$5
18633 +. ds A6 \\$6
18634 +. ds A7 \\$7
18635 +. ds A8 \\$8
18636 +. ds A9 \\$9
18637 +. nr fV \\n(.$
18638 +. fV
18639 +. \}
18640 +.\}
18641 +.if \\n(aC>\\n(aP \{\
18642 +. nr aP \\n(aP+1
18643 +. nr cF \\n(.f
18644 +. nr cZ \\n(.s
18645 +. rR
18646 +.\}
18647 +..
18648 +.\" NS %Q macro - Corporate or Foreign Author
18649 +.\" NS qK string - Corporate or Foreign Author
18650 +.\" NS qK register - Corporate or Foreign Author flag
18651 +.de %Q
18652 +.if \\n(aC==0 \{\
18653 +. ie \\n(.$==0 .tm Usage: .%Q Corporate or Foreign Author (#\\n(.c)
18654 +. el \{\
18655 +. ds mN %Q
18656 +. nr qK \\n(qK+1
18657 +. nr Kl \\n(Kl+1
18658 +. ds rS qK
18659 +. ds A1 \\$1
18660 +. ds A2 \\$2
18661 +. ds A3 \\$3
18662 +. ds A4 \\$4
18663 +. ds A5 \\$5
18664 +. ds A6 \\$6
18665 +. ds A7 \\$7
18666 +. ds A8 \\$8
18667 +. ds A9 \\$9
18668 +. nr fV \\n(.$
18669 +. fV
18670 +. \}
18671 +.\}
18672 +.if \\n(aC>\\n(aP \{\
18673 +. nr aP \\n(aP+1
18674 +. nr cF \\n(.f
18675 +. nr cZ \\n(.s
18676 +. rR
18677 +.\}
18678 +..
18679 +.\" NS %R macro - [reference] report name
18680 +.\" NS rK string - [reference] report name
18681 +.\" NS rK register - [reference] report flag
18682 +.de %R
18683 +.if \\n(aC==0 \{\
18684 +. ie \\n(.$==0 .tm Usage: .%R reference report (#\\n(.c)
18685 +. el \{\
18686 +. ds mN %R
18687 +. nr rK \\n(rK+1
18688 +. nr Kl \\n(Kl+1
18689 +. ds rS rK
18690 +. ds A1 \\$1
18691 +. ds A2 \\$2
18692 +. ds A3 \\$3
18693 +. ds A4 \\$4
18694 +. ds A5 \\$5
18695 +. ds A6 \\$6
18696 +. ds A7 \\$7
18697 +. ds A8 \\$8
18698 +. ds A9 \\$9
18699 +. nr fV \\n(.$
18700 +. fV
18701 +. \}
18702 +.\}
18703 +.if \\n(aC>\\n(aP \{\
18704 +. nr aP \\n(aP+1
18705 +. nr cF \\n(.f
18706 +. nr cZ \\n(.s
18707 +. rR
18708 +.\}
18709 +..
18710 +.\" NS %T macro - reference title
18711 +.\" NS tK string - reference title
18712 +.\" NS tK register - reference title flag
18713 +.de %T
18714 +.if \\n(aC==0 \{\
18715 +. ie \\n(.$==0 .tm Usage: .%T (#\\n(.c)
18716 +. el \{\
18717 +. ds mN %T
18718 +. if \\n(rS>0 \{\
18719 +. nr tK \\n(tK+1
18720 +. nr Kl \\n(Kl+1
18721 +. ds rS tK
18722 +. \}
18723 +. ds A1 \\$1
18724 +. ds A2 \\$2
18725 +. ds A3 \\$3
18726 +. ds A4 \\$4
18727 +. ds A5 \\$5
18728 +. ds A6 \\$6
18729 +. ds A7 \\$7
18730 +. ds A8 \\$8
18731 +. ds A9 \\$9
18732 +. nr fV \\n(.$
18733 +. fV
18734 +. \}
18735 +.\}
18736 +.if \\n(aC>\\n(aP \{\
18737 +.\" . ie \\n(jS==1 \{\
18738 +.\" . nr cF \\n(.f
18739 +.\" . nr cZ \\n(.s
18740 +.\" . ds qL \&\\*(Lq\\*(rA
18741 +.\" . ds qR \&\\*(Rq\f\\n(cF\s\\n(cZ
18742 +.\" . En \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
18743 +.\" . \}
18744 +.\" . el \{\
18745 +. nr aP \\n(aP+1
18746 +. nr cF \\n(.f
18747 +. nr cZ \\n(.s
18748 +. ie \\n(rS==0 \{\
18749 +. as b1 \&\\*(eM
18750 +. nR
18751 +. \}
18752 +. el .rR
18753 +.\" . \}
18754 +.\}
18755 +..
18756 +.\" NS %V macro - reference volume
18757 +.\" NS vK string - reference volume
18758 +.\" NS vK register - reference volume flag
18759 +.de %V
18760 +.if \\n(aC==0 \{\
18761 +. ie \\n(.$==0 .tm Usage: .%V Volume , ... \\*(Pu (#\\n(.c)
18762 +. el \{\
18763 +. ds mN %V
18764 +. nr vK \\n(vK+1
18765 +. nr Kl \\n(Kl+1
18766 +. ds rS vK
18767 +. aV \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
18768 +. \}
18769 +.\}
18770 +.if \\n(aC>\\n(aP \{\
18771 +. nr aP \\n(aP+1
18772 +. nr cF \\n(.f
18773 +. nr cZ \\n(.s
18774 +. rR
18775 +.\}
18776 +..
18777 +.\" NS rR macro - reference recursion routine
18778 +.\" NS jM local register
18779 +.\" NS jN local register
18780 +.de rR
18781 +.hy 0
18782 +.nr jM \\n(C\\n(aP
18783 +.ie \\n(jM==1 \{\
18784 +.\" . as b1 \&\f\\n(cF\s\\n(cZ
18785 +. ie "\\*(A\\n(aP"Tn" \{\
18786 +. nN
18787 +. \}
18788 +. el \{\
18789 +. if \\n(aC>8 .tm Usage: \\*(mN - maximum 8 arguments (#\\n(.c)
18790 +. aI rR 1
18791 +. \\*(A\\n(aP
18792 +. \}
18793 +.\}
18794 +.el \{\
18795 +. nr jN \\n(aP
18796 +. ie \\n(jM==2 .as b1 \&\\*(A\\n(aP
18797 +. el .as b1 \&\\*(A\\n(aP
18798 +.\" . el .as b1 \&\f\\n(cF\s\\n(cZ\\*(A\\n(aP\fP\s0
18799 +. ie \\n(aC==\\n(aP \{\
18800 +.\" . as b1 \&\f\\n(cF\s\\n(cZ
18801 +. rD
18802 +. \}
18803 +. el \{\
18804 +. nr aP \\n(aP+1
18805 +. as b1 \&\\*(S\\n(jN
18806 +. rR
18807 +. \}
18808 +.\}
18809 +.rr jM jN
18810 +..
18811 +.\" NS rD macro - save b1 buffer in to appropriate name
18812 +.de rD
18813 +.as \\*(rS \\*(b1
18814 +.ds b1
18815 +.ds rS
18816 +.aY
18817 +..
18818 +.\" NS Hf macro - source include header files.
18819 +.de Hf
18820 +.Pp
18821 +File:
18822 +.Pa \\$1
18823 +.Pp
18824 +.nr cF \\n(.f
18825 +.nr cZ \\n(.s
18826 +.ie t \{\
18827 +\&\\*(lI
18828 +.br
18829 +.ta +9n 18n 27n 36n 45n 54n 63n 72n
18830 +.\}
18831 +.el \{\
18832 +.ta +8n 16n 24n 32n 40n 48n 56n 64n 72n
18833 +.\}
18834 +.nf
18835 +.so \\$1
18836 +.fi
18837 +.ft \\n(cF
18838 +.fz \\n(cZ
18839 +.Pp
18840 +..
18841 +.\" NS An macro - author name
18842 +.\" NS aN register
18843 +.nr aN 0
18844 +.de An
18845 +.if \\n(nY==1 \{\
18846 +. ie \\n(aN==1 \{\
18847 +. br
18848 +. \}
18849 +. el \{\
18850 +. nr aN 1
18851 +. \}
18852 +.\}
18853 +.if \\n(aC==0 \{\
18854 +. ie \\n(.$==0 .tm Usage: .An author_name ... \\*(Pu (#\\n(.c)
18855 +. el \{\
18856 +. ds mN An
18857 +. aV \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
18858 +. \}
18859 +.\}
18860 +.if \\n(aC>\\n(aP \{\
18861 +. nr aP \\n(aP+1
18862 +. nr cF \\n(.f
18863 +. nr cZ \\n(.s
18864 +. nR
18865 +.\}
18866 +..
18867 +.\" NS Sf macro -defunct
18868 +.de Sf
18869 +.tm .Sf defunct, use prefix or Ns
18870 +..
18871 +.ds rV "function returns the value 0 if successful; otherwise the value -1 is returned and the global variable \\*(vAerrno\fP is set to indicate the error.
18872 +.\" Ns Rv macro - return values
18873 +.\" Ns rV string - standard return message
18874 +.de Rv
18875 +.ie \\n(.$==0 \{\
18876 +.tm Usage: .Rv [-std] (#\\n(.c)
18877 +.\}
18878 +.el \{\
18879 +. ds mN Rv
18880 +.\" . nr aP 0
18881 +.\" . nr lR \\n(lR+1
18882 +.\" . ds A1 \\$2
18883 +.\" . ds A2 \\$3
18884 +.\" . ds A3 \\$4
18885 +.\" . ds A4 \\$5
18886 +.\" . ds A5 \\$6
18887 +.\" . ds A6 \\$7
18888 +.\" . ds A7 \\$8
18889 +.\" . ds A8 \\$9
18890 +.\" . nr fV \\n(.$-1
18891 +. if "\\$1"-std" \{\
18892 +. nr cH \\*(cH
18893 +. if (\\n(cH<2):(\\n(cH>3) .tm Usage: .Rv -std sections 2 and 3 only
18894 +. br
18895 +\&The
18896 +.Fn \\$2
18897 +\&\\*(rV
18898 +. \}
18899 +.\}
18900 +..
18901 diff -Naur groff-1.18.1.4.orig/tmac/euc-jp.tmac groff-1.18.1.4/tmac/euc-jp.tmac
18902 --- groff-1.18.1.4.orig/tmac/euc-jp.tmac 1970-01-01 00:00:00.000000000 +0000
18903 +++ groff-1.18.1.4/tmac/euc-jp.tmac 2006-10-18 18:54:44.000000000 +0000
18904 @@ -0,0 +1,7 @@
18905 +.\" euc-jp.tmac
18906 +.\"
18907 +.cflags 256 ,:;>}
18908 +.cflags 256 ¡¢¡£¡¤¡¥¡¦¡§¡¨¡©¡ª¡Ë¡Í¡Ï¡Ñ¡×¡Ù¡Û¤¡¤£¤¥¤§¤©¤Ã¤ã¤å¤ç¡¼
18909 +.cflags 256 ¥¡¥£¥¥¥§¥©¥Ã¥ã¥å¥ç
18910 +.cflags 512 ¡Ê¡Ì¡Î¡Ð¡Ö¡Ø¡Ú
18911 +.hc ¡¾
18912 diff -Naur groff-1.18.1.4.orig/tmac/gb.tmac groff-1.18.1.4/tmac/gb.tmac
18913 --- groff-1.18.1.4.orig/tmac/gb.tmac 1970-01-01 00:00:00.000000000 +0000
18914 +++ groff-1.18.1.4/tmac/gb.tmac 2006-10-18 18:54:44.000000000 +0000
18915 @@ -0,0 +1,15 @@
18916 +.\" Kinsoku table for the GB2312 encoding of Chinese, recoded from
18917 +.\" kinsoku.el in Emacs 22.0.50.
18918 +.\" Checked by Simon Law, who reckons this is "mostly right". That will
18919 +.\" probably do for now ...
18920 +.\"
18921 +.cflags 256 ¡¢¡££®£¬¡¤¡¥¡¦¡§¡¨¡©¡ª¡«¡¬¡­¡¯¡±£©¡³¡µ¡·¡¹¡»¡½
18922 +.cflags 256 ¡¿£»£º£¿£¡¡À¡Á¡Â¡Ã¡ã¡ä¡å¡æ£¯£Ü£¢£ß£þ£ü¨å
18923 +.cflags 512 ¨Å¨Æ¨Ç¨È¨É¨Ê¨Ë¨Ì¨Í¨Î¨Ï¨Ð¨Ñ¨Ò¨Ó¨Ô¨Õ¨Ö¨×¨Ø¨Ù¨è
18924 +.\" Simon Law supplied these.
18925 +.cflags 512 £¨¡®¡°¡²¡´¡¶¡¸¡º¡¼¡¾
18926 +.\"
18927 +.\" http://tcl.apache.org/sources/tcl/tools/encoding/gb2312.txt lists U+FF0D
18928 +.\" as FULLWIDTH HYPHEN-MINUS. Is this correct?
18929 +.\"
18930 +.hc £­
18931 diff -Naur groff-1.18.1.4.orig/tmac/groff_trace.man groff-1.18.1.4/tmac/groff_trace.man
18932 --- groff-1.18.1.4.orig/tmac/groff_trace.man 2002-07-13 20:52:47.000000000 +0000
18933 +++ groff-1.18.1.4/tmac/groff_trace.man 2006-10-18 18:54:44.000000000 +0000
18934 @@ -31,6 +31,10 @@
18935 A copy of the Free Documentation License is included as a file called
18936 FDL in the main directory of the groff source package.
18937 ..
18938 +.ig
18939 +A copy of the GNU Free Documentation License is also available in this
18940 +Debian package as /usr/share/doc/groff/copyright.
18941 +..
18942 .
18943 .\" --------------------------------------------------------------------
18944 .\" Setup
18945 diff -Naur groff-1.18.1.4.orig/tmac/troffrc groff-1.18.1.4/tmac/troffrc
18946 --- groff-1.18.1.4.orig/tmac/troffrc 2002-03-02 16:30:46.000000000 +0000
18947 +++ groff-1.18.1.4/tmac/troffrc 2006-10-18 18:54:44.000000000 +0000
18948 @@ -13,7 +13,9 @@
18949 .do ds troffrc!X100 X.tmac
18950 .do ds troffrc!X100-12 X.tmac
18951 .do ds troffrc!ascii tty.tmac
18952 +.do ds troffrc!ascii8 tty.tmac
18953 .do ds troffrc!latin1 tty.tmac
18954 +.do ds troffrc!nippon tty.tmac
18955 .do ds troffrc!utf8 tty.tmac
18956 .do ds troffrc!cp1047 tty.tmac
18957 .do ds troffrc!lj4 lj4.tmac
18958 @@ -36,4 +38,13 @@
18959 .\" Load hyphenation patterns from `hyphen.us' (in the tmac directory).
18960 .do hpf hyphen.us
18961 .
18962 +.\" For CJK hack. The hardcoded list of locales is especially nasty, but
18963 +.\" getting the locale charmap requires a troff extension.
18964 +.ie "\V[LANG]"ja_JP.eucJP" .do mso euc-jp.tmac
18965 +.el .ie "\V[LANG]"zh_CN" .do mso gb.tmac
18966 +.el .ie "\V[LANG]"zh_CN.GBK" .do mso gb.tmac
18967 +.el .ie "\V[LANG]"zh_SG" .do mso gb.tmac
18968 +.el .ie "\V[LANG]"zh_SG.GBK" .do mso gb.tmac
18969 +.el .if "\V[LANG]"zh_TW" .do mso big5.tmac
18970 +.
18971 .\" Don't let blank lines creep in here.
18972 diff -Naur groff-1.18.1.4.orig/tmac/tty.tmac groff-1.18.1.4/tmac/tty.tmac
18973 --- groff-1.18.1.4.orig/tmac/tty.tmac 2002-04-20 14:51:11.000000000 +0000
18974 +++ groff-1.18.1.4/tmac/tty.tmac 2006-10-18 18:54:44.000000000 +0000
18975 @@ -68,7 +68,7 @@
18976 .ie '\*(.T'cp1047' \
18977 . do mso cp1047.tmac
18978 .el \
18979 -. if '\*(.T'latin1' \
18980 +. if !'\*(.T'ascii' \
18981 . do mso latin1.tmac
18982 .
18983 .\" If you want the character definitions in tty-char.tmac to be loaded