1 /* -*- coding: euc-jp; -*- */
2 /***en @mainpage The m17n Library Documentation */
3 /***ja @mainpage m17n ¥é¥¤¥Ö¥é¥ê */
5 /***en @section what What is the m17n library?
7 The @e m17n @e library is a multilingual text processing library for
12 <li> It is a free and open source software.
14 <li> It is for any GNU/Linux and Unix applications/libraries.
16 <li> It realizes multilingualization of many aspects of
17 applications/libraries.
21 The word "m17n" is an abbreviation of "multilingualization".
23 The m17n library provides following facilities to handle
28 <li> @e M-text: A data structure for a multilingual text. It is
29 basically a string but with attributes called text property, and
30 is designed to substitute for the C string. It is the most important
31 object of the m17n library.
33 <li> Functions for creating and processing M-texts.
35 <li> Functions for converting M-texts from/to strings encoded in
36 various existing formats.
38 <li> A huge character space, which contains all the Unicode
39 characters and more non-Unicode characters.
41 <li> @e Chartable: A data structure that contains per-character
42 information efficiently.
44 <li> Functions for inputting and displaying M-texts on a window
49 /***ja @section what m17n ¥é¥¤¥Ö¥é¥ê¤È¤Ï?
51 @e m17n¥é¥¤¥Ö¥é¥ê ¤Ï C ¸À¸ìÍѤο¸À¸ìʸ½ñ½èÍý¥é¥¤¥Ö¥é¥ê¤Ç¤¹¡£
55 <li> ¼«Í³¸ø³«¥½¥Õ¥È¥¦¥§¥¢¤Ç¤¹¡£
57 <li> GNU/Linux ¤È Unix ¤Î¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤ä¥é¥¤¥Ö¥é¥ê¤«¤éÍøÍѤǤ¤Þ¤¹¡£
59 <li> ¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤ä¥é¥¤¥Ö¥é¥ê¤Î¤µ¤Þ¤¶¤Þ¤Ê¦Ì̤ǡ¢Â¿¸À¸ì²½¤ò¼Â¸½¤·
64 "m17n" ¤È¤Ï "multilingualization" ¤Î¾Êά·Á¤Ç¤¹¡£
66 m17n ¥é¥¤¥Ö¥é¥ê¤Ï¿¸À¸ì¤ò°·¤¦¤¿¤á¡¢°Ê²¼¤Îµ¡Ç½¤òÄ󶡤·¤Þ¤¹¡£
70 <li> @e M-text: ¿¸À¸ì¥Æ¥¥¹¥ÈÍѤΥǡ¼¥¿¹½Â¤¡£´ðËÜŪ¤Ë¤Ïʸ»úÎó¤Ç¤¢¤ë¤¬¡¢
71 ¥Æ¥¥¹¥È¥×¥í¥Ñ¥Æ¥£¤È¸Æ¤Ð¤ì¤ë°À¤¬ÉÕ¤¤¤Æ¤ª¤ê¡¢C ¤Îʸ»úÎó¤ÎÂå¤ï¤ê¤Ë¤Ê¤ë
72 ¤è¤¦À߷פµ¤ì¤Æ¤¤¤ë¡£m17n ¥é¥¤¥Ö¥é¥ê¤ÇºÇ¤â½ÅÍפʥª¥Ö¥¸¥§¥¯¥È¡£
74 <li> M-text ¤òºî¤Ã¤¿¤ê¼è¤ê°·¤Ã¤¿¤ê¤¹¤ë¤¿¤á¤Î´Ø¿ô¡£
76 <li> M-text ¤È´û¸¤Î¥Õ¥©¡¼¥Þ¥Ã¥È¤Ç¥³¡¼¥É²½¤µ¤ì¤¿Ê¸»úÎó¤È¤Î´Ö¤ÎÊÑ´¹¤ò¹Ô
79 <li> µðÂç¤Êʸ»ú¶õ´Ö¡£ Unicode ʸ»ú¤¹¤Ù¤Æ¤È¤½¤ì°Ê¾å¤Î¿ô¤ÎÈó Unicode ʸ
80 »ú¤ò´Þ¤à¤³¤È¤¬¤Ç¤¤ë¡£
82 <li> @e ʸ»ú¥Æ¡¼¥Ö¥ë: ʸ»úËè¤Î¾ðÊó¤ò¸úΨŪ¤ËÊÝ»ý¤¹¤ë¥Ç¡¼¥¿¹½Â¤¡£
84 <li> M-text ¤ò¥¦¥£¥ó¥É¥¦¥·¥¹¥Æ¥à¾å¤ÇÆþÎÏ¡¿É½¼¨¤¹¤ë´Ø¿ô¡£
88 /***en @section usage How to use it?
90 Simply include <m17n<EM></EM>.h> in your program, and link it with the m17n
91 library by -lm17n. See @ref m17nIntro for the detail. */
93 /***ja @section usage ÍøÍÑÊýË¡
95 <m17n<EM></EM>.h> ¤ò¥×¥í¥°¥é¥à¤Ë include ¤·¡¢-lm17n ¤Ç m17n ¥é¥¤¥Ö¥é¥ê
96 ¤È¥ê¥ó¥¯¤·¤Æ¤¯¤À¤µ¤¤¡£ @ref m17nIntro ¤ò»²¾È¡£ */
98 /***en @section extralib External libraries and data
100 The m17n library utilizes these external libraries. They are not
101 mandatory but many functions of the m17n library depend on them.
104 <li> m17n-db -- http://www.m17n.org/m17n-lib-en/download/m17n-db-1.5.0.tar.gz
106 Provide various information to the m17n library.
108 <li> libxml2 -- http://xmlsoft.org/
110 Used by the functions mtext_serialize () and mtext_deserialize ().
111 Those functions return NULL when libxml2 is not available,
113 <li> fribidi -- http://fribidi.sourceforge.net/
115 Used for BIDI processing. If it is not available, the rendering
116 engine of the m17n library can't handle such script as Arabic and
119 <li> freetype -- http://www.freetype.org/
121 Used for handling local fonts.
123 <li> fontconfig -- http://nexp.cs.pdx.edu/fontconfig/
125 Used for handling local fonts supported by the freetype library.
127 <li> fontconfig -- http://freedesktop.org/Software/fontconfig
129 Used for finding local fonts in combination with Xft.
131 <li> xft -- http://freedesktop.org/Software/Xft
133 Used for drawing text with local fonts by X Render Extension of X
134 server in combination with fontconfig.
138 Used for rendering text with local fonts on bitmap/pixmap.
140 <li> libotf -- http://www.m17n.org/libotf/
142 Used for handling OpenTypee fonts in combination with freetype
145 <li> anthy -- http://anthy.sourceforge.jp/
147 Used for the Japanese input method ja-anthy.mim.
149 <li> wordcut -- http://thaiwordseg.sourceforge.net/
151 Used for finding Thai word boundary in the example program
157 /***ja @section extralib ³°Éô¥é¥¤¥Ö¥é¥ê¡¿¥Ç¡¼¥¿
159 m17n ¥é¥¤¥Ö¥é¥ê¤Ï°Ê²¼¤Î³°Éô¥é¥¤¥Ö¥é¥ê¤òÍøÍѤ·¤Æ¤¤¤Þ¤¹¡£É¬¿Ü¤Ç¤Ï¤¢¤ê¤Þ
160 ¤»¤ó¤¬¡¢m17n ¥é¥¤¥Ö¥é¥ê¤Î´ö¤Ä¤«¤Î´Ø¿ô¤Ï¤³¤ì¤é¤Ë°Í¸¤·¤Æ¤¤¤Þ¤¹¡£
163 <li> m17n-db -- http://www.m17n.org/m17n-lib-ja/download/m17n-db-1.5.0.tar.gz
165 m17n ¥é¥¤¥Ö¥é¥ê¤Ë¼ï¡¹¤Î¾ðÊó¤òÄ󶡤·¤Þ¤¹¡£
167 <li> libxml2 -- http://xmlsoft.org/
169 ´Ø¿ô mtext_serialize () ¤È mtext_deserialize () ¤¬»È¤¤¤Þ¤¹¡£
170 libxml2 ¤¬ÍøÍѤǤ¤Ê¤¤»þ¤Ë¤Ï¡¢¤³¤ì¤é¤Î´Ø¿ô¤Ï NULL ¤òÊÖ¤·¤Þ¤¹¡£
173 <li> fribidi -- http://fribidi.sourceforge.net/
175 BIDI ½èÍý¤Ë»È¤¤¤Þ¤¹¡£ÍøÍѤǤ¤Ê¤¤»þ¤Ï¡¢m17n ¥é¥¤¥Ö¥é¥ê¤Îɽ¼¨¥¨¥ó
176 ¥¸¥ó¤Ï Arabic ¤äHebrew ¤Ê¤É¤Î¥¹¥¯¥ê¥×¥È¤òÀµ¤·¤¯½èÍý¤Ç¤¤Þ¤»¤ó¡£
178 <li> freetype -- http://www.freetype.org/
180 ¥í¡¼¥«¥ë¥Õ¥©¥ó¥È¤Î½èÍý¤Ë»È¤¤¤Þ¤¹¡£
182 <li> fontconfig -- http://nexp.cs.pdx.edu/fontconfig/
184 Xft ¤È¶¦¤Ë¡¢¥í¡¼¥«¥ë¥Õ¥©¥ó¥È¤Î¸¡º÷¤Ë»È¤¤¤Þ¤¹¡£
186 <li> xft -- http://freedesktop.org/Software/Xft
188 fontconfig ¤È¶¦¤Ë X ¥µ¡¼¥Ð¤Î XRender ³ÈÄ¥¤òÍøÍѤ·¤Æ¥Æ¥¥¹¥È¤ò¥í¡¼
189 ¥«¥ë¥Õ¥©¥ó¥È¤Çɽ¼¨¤¹¤ë¤¿¤á¤Ë»È¤¤¤Þ¤¹¡£
192 ¥Æ¥¥¹¥È¤ò¥í¡¼¥«¥ë¥Õ¥©¥ó¥È¤Ç bitmap/pixmap ¾å¤Ëɽ¼¨¤¹¤ë¤Î¤Ë»È¤¤¤Þ
195 <li> libotf -- http://www.m17n.org/libotf/
197 freetype ¤È¶¦¤Ë OpenType ¥Õ¥©¥ó¥È¤Î½èÍý¤Ë»È¤¤¤Þ¤¹¡£
199 <li> anthy -- http://anthy.sourceforge.jp/
201 ÆüËܸìÆþÎϥ᥽¥Ã¥É ja-anthy.mim ¤¬»È¤¤¤Þ¤¹¡£
203 <li> wordcut -- http://thaiwordseg.sourceforge.net/
205 ¥×¥í¥°¥é¥àÎã example/linebreak.c Ãæ¤Ç¥¿¥¤¸ì¤Î¸ì¤Î¶³¦¤ò¸«¤Ä¤±¤ë¤¿
211 /***en @section contact Contact us:
213 Global IT Security Group\n
214 Information Technology Research Institute\n
215 National Institute of Advanced Industrial Science and Technology
217 Web: http://www.m17n.org/m17n-lib-en/
219 Bug report: m17n-lib-bug-XXXX@m17n.org (Replace XXXX with current year in 4 digits.)
221 Mailing lists: http://www.m17n.org/m17n-lib-en/mailinglist.html
224 /***ja @section contact Ï¢ÍíÀè:
226 ÆÈΩ¹ÔÀ¯Ë¡¿Í »º¶Èµ»½ÑÁí¹ç¸¦µæ½ê\n
228 ¥°¥í¡¼¥Ð¥ë IT ¥»¥¥å¥ê¥Æ¥£¥°¥ë¡¼¥×
230 Web: http://www.m17n.org/m17n-lib-ja/
232 ¥Ð¥°¥ì¥Ý¡¼¥È: m17n-lib-bug-XXXX@m17n.org (XXXX¤ÎÉôʬ¤Ë¤Ï¸½ºß¤Îǯ¡ÊÀ¾Îñ¡Ë¤ò4·å¤ÇÆþ¤ì¤Æ¤¯¤À¤µ¤¤¡£)
234 ¥á¥¤¥ê¥ó¥°¥ê¥¹¥È: http://www.m17n.org/m17n-lib-ja/mailinglist.htm
237 /***en @section ack Acknowledgements */
238 /***ja @section ack ¼Õ¼ */
244 <li> Dimitri van Heesch <dimitri@stack.nl>
246 Author of Doxygen <http://www.stack.nl/~dimitri/doxygen/>. Without
247 this tool, it would have been impossible to create this documentation.
249 <li> Information-technology Promotion Agency (IPA), Japan
251 Writing this documentation was partially funded by
252 Information-technology Promotion Agency (IPA)
253 <http://www.ipa.go.jp/about/english/index.html> in fiscal year 2001.
261 Copyright (C) 2001 Information-technology Promotion Agency (IPA)<p>
262 Copyright (C) 2001-2007
263 National Institute of Advanced Industrial Science and Technology (AIST)<p>
265 Permission is granted to copy, distribute and/or modify this document
266 under the terms of the GNU Free Documentation License, Version 1.2 or
267 any later version published by the Free Software Foundation; with no
268 Invariant Section, no Front-Cover Texts, and no Back-Cover Texts. A
269 copy of the license is included in the appendix entitled "GNU Free
270 Documentation License".