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.h> in your program, and link it with the m17n
91 library by -lm17n. See @ref m17nIntro @latexonly
92 (P.\pageref{group__m17nIntro}) @endlatexonly for the detail. */
94 /***ja @section usage ÍøÍÑÊýË¡
96 <m17n.h> ¤ò¥×¥í¥°¥é¥à¤Ë include ¤·¡¢-lm17n ¤Ç m17n ¥é¥¤¥Ö¥é¥ê¤È¥ê¥ó¥¯
97 ¤·¤Æ¤¯¤À¤µ¤¤¡£ @ref m17nIntro ¤ò»²¾È¡£@latexonly
98 (P.\pageref{group__m17nIntro}) @endlatexonly */
100 /***en @section extralib External libraries and data
102 The m17n library utilizes these external libraries. They are not
103 mandatory but several functions of the m17n library depend on them.
106 <li> m17n-db -- http://www.m17n.org/m17n-lib/download/m17n-db-1.2.0.tar.gz
108 Used by @ref m17nShell and @ref m17nGUI.
110 <li> libxml2 -- http://xmlsoft.org/
112 Used by the functions mtext_serialize () and mtext_deserialize ().
113 Those functions return NULL when libxml2 is not available,
115 <li> fribidi -- http://fribidi.sourceforge.net/
117 Used for BIDI processing. If it is not available, the rendering
118 engine of the m17n library can't handle such script as Arabic and
121 <li> freetype -- http://www.freetype.org/
123 Used for handling local fonts.
125 <li> fontconfig -- http://nexp.cs.pdx.edu/fontconfig/
127 Used for handling local fonts supported by the freetype library.
129 <li> fontconfig -- http://freedesktop.org/Software/fontconfig
131 Used for finding local fonts in combination with Xft.
133 <li> xft -- http://freedesktop.org/Software/Xft
135 Used for drawing text with local fonts by X Render Extension of X
136 server in combination with fontconfig.
140 Used for rendering text with local fonts on bitmap/pixmap.
142 <li> libotf -- http://www.m17n.org/libotf/
144 Used for handling OpenTypee fonts in combination with freetype
147 <li> anthy -- http://anthy.sourceforge.jp/
149 Used for the Japanese input method ja-anthy.mim.
151 <li> wordcut -- http://thaiwordseg.sourceforge.net/
153 Used for finding Thai word boundary in the example program
159 /***ja @section extralib ³°Éô¥é¥¤¥Ö¥é¥ê¡¿¥Ç¡¼¥¿
161 m17n ¥é¥¤¥Ö¥é¥ê¤Ï°Ê²¼¤Î³°Éô¥é¥¤¥Ö¥é¥ê¤òÍøÍѤ·¤Æ¤¤¤Þ¤¹¡£É¬¿Ü¤Ç¤Ï¤¢¤ê¤Þ
162 ¤»¤ó¤¬¡¢m17n ¥é¥¤¥Ö¥é¥ê¤Î´ö¤Ä¤«¤Î´Ø¿ô¤Ï¤³¤ì¤é¤Ë°Í¸¤·¤Æ¤¤¤Þ¤¹¡£
165 <li> m17n-db -- http://www.m17n.org/m17n-lib/download/m17n-db-1.2.0.tar.gz
167 @ref m17nShell ¤È @ref m17nGUI ¤¬»È¤¤¤Þ¤¹¡£
169 <li> libxml2 -- http://xmlsoft.org/
171 ´Ø¿ô mtext_serialize () ¤È mtext_deserialize () ¤¬»È¤¤¤Þ¤¹¡£
172 libxml2 ¤¬ÍøÍѤǤ¤Ê¤¤»þ¤Ë¤Ï¡¢¤³¤ì¤é¤Î´Ø¿ô¤Ï NULL ¤òÊÖ¤·¤Þ¤¹¡£
175 <li> fribidi -- http://fribidi.sourceforge.net/
177 BIDI ½èÍý¤Ë»È¤¤¤Þ¤¹¡£ÍøÍѤǤ¤Ê¤¤»þ¤Ï¡¢m17n ¥é¥¤¥Ö¥é¥ê¤Îɽ¼¨¥¨¥ó
178 ¥¸¥ó¤Ï Arabic ¤äHebrew ¤Ê¤É¤Î¥¹¥¯¥ê¥×¥È¤òÀµ¤·¤¯½èÍý¤Ç¤¤Þ¤»¤ó¡£
180 <li> freetype -- http://www.freetype.org/
182 ¥í¡¼¥«¥ë¥Õ¥©¥ó¥È¤Î½èÍý¤Ë»È¤¤¤Þ¤¹¡£
184 <li> fontconfig -- http://nexp.cs.pdx.edu/fontconfig/
186 Xft ¤È¶¦¤Ë¡¢¥í¡¼¥«¥ë¥Õ¥©¥ó¥È¤Î¸¡º÷¤Ë»È¤¤¤Þ¤¹¡£
188 <li> xft -- http://freedesktop.org/Software/Xft
190 fontconfig ¤È¶¦¤Ë X ¥µ¡¼¥Ð¤Î XRender ³ÈÄ¥¤òÍøÍѤ·¤Æ¥Æ¥¥¹¥È¤ò¥í¡¼
191 ¥«¥ë¥Õ¥©¥ó¥È¤Çɽ¼¨¤¹¤ë¤¿¤á¤Ë»È¤¤¤Þ¤¹¡£
194 ¥Æ¥¥¹¥È¤ò¥í¡¼¥«¥ë¥Õ¥©¥ó¥È¤Ç bitmap/pixmap ¾å¤Ëɽ¼¨¤¹¤ë¤Î¤Ë»È¤¤¤Þ
197 <li> libotf -- http://www.m17n.org/libotf/
199 freetype ¤È¶¦¤Ë OpenType ¥Õ¥©¥ó¥È¤Î½èÍý¤Ë»È¤¤¤Þ¤¹¡£
201 <li> anthy -- http://anthy.sourceforge.jp/
203 ÆüËܸìÆþÎϥ᥽¥Ã¥É ja-anthy.mim ¤¬»È¤¤¤Þ¤¹¡£
205 <li> wordcut -- http://thaiwordseg.sourceforge.net/
207 ¥×¥í¥°¥é¥àÎã example/linebreak.c Ãæ¤Ç¥¿¥¤¸ì¤Î¸ì¤Î¶³¦¤ò¸«¤Ä¤±¤ë¤¿
213 /***en @section contact Contact us:
215 Global IT Security Group\n
216 National Information Technology Research Institute\n
217 Institute of Advanced Industrial Science and Technology
219 Web: http://www.m17n.org/m17n-lib/
221 Bug report: m17n-lib-bug@m17n.org
223 Mailing lists: http://www.m17n.org/m17n-lib/mailinglist.html
226 /***ja @section contact Ï¢ÍíÀè:
228 ÆÈΩ¹ÔÀ¯Ë¡¿Í »º¶Èµ»½ÑÁí¹ç¸¦µæ½ê\n
230 ¥°¥í¡¼¥Ð¥ë IT ¥»¥¥å¥ê¥Æ¥£¥°¥ë¡¼¥×
232 Web: http://www.m17n.org/m17n-lib/
234 ¥Ð¥°¥ì¥Ý¡¼¥È: m17n-lib-bug@m17n.org
236 ¥á¥¤¥ê¥ó¥°¥ê¥¹¥È: http://www.m17n.org/m17n-lib-ja/mailinglist.htm
239 /***en @section ack Acknowledgements */
240 /***ja @section ack ¼Õ¼ */
246 <li> Dimitri van Heesch <dimitri@stack.nl>
248 Author of Doxygen <http://www.stack.nl/~dimitri/doxygen/>. Without
249 this tool, it would have been impossible to create this documentation.
251 <li> Information-technology Promotion Agency (IPA), Japan
253 Writing this documentation was partially funded by
254 Information-technology Promotion Agency (IPA)
255 <http://www.ipa.go.jp/about/english/index.html> in fiscal year 2001.
263 Copyright (C) 2001 Information-technology Promotion Agency (IPA)<p>
264 Copyright (C) 2001-2004
265 National Institute of Advanced Industrial Science and Technology (AIST)<p>
267 Permission is granted to copy, distribute and/or modify this document
268 under the terms of the GNU Free Documentation License, Version 1.2 or
269 any later version published by the Free Software Foundation; with no
270 Invariant Section, Front-Cover Texts "The m17n library documentation",
271 and no Back-Cover Texts. A copy of the license is included in the
272 appendix entitled "GNU Free Documentation License".