tREADME.ORIG - plan9port - [fork] Plan 9 from user space
 (HTM) git clone git://src.adamsgaard.dk/plan9port
 (DIR) Log
 (DIR) Files
 (DIR) Refs
 (DIR) README
 (DIR) LICENSE
       ---
       tREADME.ORIG (16932B)
       ---
            1 
            2 Unicode versions of the X11 "misc-fixed-*" fonts
            3 ------------------------------------------------
            4 
            5 Markus Kuhn <http://www.cl.cam.ac.uk/~mgk25/> -- 2003-01-17
            6 
            7 
            8 This package contains the X Window System bitmap fonts
            9 
           10    -Misc-Fixed-*-*-*--*-*-*-*-C-*-ISO10646-1
           11 
           12 These are Unicode (ISO 10646-1) extensions of the classic ISO 8859-1
           13 X11 terminal fonts that are widely used with many X11 applications
           14 such as xterm, emacs, etc.
           15 
           16 COVERAGE
           17 --------
           18 
           19 None of these fonts covers Unicode completely. Complete coverage
           20 simply would not make much sense here. Unicode 3.0 contains over 49000
           21 characters, and the large majority of them are Chinese/Japanese/Korean
           22 Han ideographs (~28000) and Korean Hangul Syllables (~11000) that
           23 cannot adequately be displayed in the small pixel sizes of the fixed
           24 fonts. Similarly, Arabic characters are difficult to fit nicely
           25 together with European characters into the fixed character cells and
           26 X11 lacks the ligature substitution mechanisms required for using
           27 Indic scripts.
           28 
           29 Therefore these fonts primarily attempt to cover Unicode subsets that
           30 fit together with European scripts. This includes the Latin, Greek,
           31 Cyrillic, Armenian, Georgian, and Hebrew scripts, plus a lot of
           32 linguistic, technical and mathematical symbols. Some of the fixed
           33 fonts now also cover Arabic, Thai, Ethiopian, halfwidth Katakana, and
           34 some other non-European scripts.
           35 
           36 We have defined 3 different target character repertoires (ISO 10646-1
           37 subsets) that the various fonts were checked against for minimal
           38 guaranteed coverage:
           39 
           40   TARGET1    616 characters
           41              Covers all characters of ISO 8859 part 1-5,7-10,13-16,
           42              CEN MES-1, ISO 6937, Microsoft CP1251/CP1252, DEC VT100
           43              graphics symbols, and the replacement and default
           44              character. It is intended for small bold, italic, and
           45              proportional fonts, for which adding block graphics
           46              characters would make little sense. This repertoire
           47              covers the following ISO 10646-1:2000 collections
           48              completely: 1-3, 8, 12.
           49 
           50   TARGET2    885 characters
           51              Adds to TARGET1 the characters of the Adobe/Microsoft
           52              Windows Glyph List 4 (WGL4), plus a selected set of
           53              mathematical characters (covering most of ISO 31-11
           54              high-school level math symbols) and some combining
           55              characters. It is intended to be covered by all normal
           56              "fixed" fonts and covers all European IBM, Microsoft, and
           57              Macintosh character sets. This repertoire covers the
           58              following ISO 10646-1:2000 (including Amd 1:2002)
           59              collections completely: 1-3, 8, 12, 33, 45.
           60 
           61   TARGET3    3228 characters
           62 
           63              Adds to TARGET2 all characters of all European scripts
           64              (Latin, Greek, Cyrillic, Armenian, Georgian), all
           65              phonetic alphabet symbols, many mathematical symbols
           66              (including all those available in LaTeX), all typographic
           67              punctuation, all box-drawing characters, control code
           68              pictures, graphical shapes and some more that you would
           69              expect in a very comprehensive Unicode 3.2 font for
           70              European users. It is intended for some of the more
           71              useful and more widely used normal "fixed" fonts. This
           72              repertoire is a superset of all graphical characters in
           73              CEN MES-3A and covers the following ISO 10646-1:2000
           74              (including Amd 1:2002) collections completely: 1-12, 27,
           75              30-31, 32 (only graphical characters), 33-42, 44-47, 63,
           76              65, 70 (only graphical characters).
           77 
           78 CURRENT STATUS:
           79 
           80    6x13.bdf 8x13.bdf 9x15.bdf 9x18.bdf 10x20.bdf:
           81 
           82      Complete (TARGET3 reached and checked)
           83 
           84    5x7.bdf 5x8.bdf 6x9.bdf 6x10.bdf 6x12.bdf 7x13.bdf 7x14.bdf clR6x12.bdf:
           85 
           86      Complete (TARGET2 reached and checked)
           87 
           88    6x13B.bdf 7x13B.bdf 7x14B.bdf 8x13B.bdf 9x15B.bdf 9x18B.bdf:
           89 
           90      Complete (TARGET1 reached and checked)
           91 
           92    6x13O.bdf 7x13O.bdf 8x13O.bdf
           93 
           94      Complete (TARGET1 minus Hebrew and block graphics)
           95 
           96 The supplement package
           97 
           98   http://www.cl.cam.ac.uk/~mgk25/download/ucs-fonts-asian.tar.gz
           99 
          100 contains the following additional square fonts with Han characters for
          101 East Asian users:
          102 
          103    12x13ja.bdf:
          104 
          105      Covers TARGET2, JIS X 0208, Hangul, and a few more. This font is
          106      primarily intended to provide Japanese full-width Hiragana,
          107      Katakana, and Kanji for applications that take the remaining
          108      ("halfwidth") characters from 6x13.bdf. The Greek lowercase
          109      characters in it are still a bit ugly and will need some work.
          110 
          111   18x18ja.bdf:
          112 
          113      Covers all JIS X 0208, JIS X 0212, GB 2312-80, KS X 1001:1992,
          114      ISO 8859-1,2,3,4,5,7,9,10,15, CP437, CP850 and CP1252 characters,
          115      plus a few more, where priority was given to Japanese han style
          116      variants. This font should have everything needed to cover the
          117      full ISO-2022-JP-2 (RFC 1554) repertoire. This font is primarily
          118      intended to provide Japanese full-width Hiragana, Katakana, and
          119      Kanji for applications that take the remaining ("halfwidth")
          120      characters from 9x18.bdf.
          121 
          122   18x18ko.bdf:
          123 
          124      Covers the same repertoire as 18x18ja plus full coverage of all
          125      Hangul syllables and priority was given to Hanja glyphs in the
          126      unified CJK area as they are used for writing Korean.
          127 
          128 The 9x18 and 6x12 fonts are recommended for use with overstriking
          129 combining characters.
          130 
          131 Bug reports, suggestions for improvement, and especially contributed
          132 extensions are very welcome!
          133 
          134 INSTALLATION
          135 ------------
          136 
          137 You install the fonts under Unix roughly like this (details depending
          138 on your system of course):
          139 
          140 System-wide installation (root access required):
          141 
          142   cd submission/
          143   make
          144   su
          145   mv -b *.pcf.gz /usr/lib/X11/fonts/misc/
          146   cd /usr/lib/X11/fonts/misc/
          147   mkfontdir
          148   xset fp rehash
          149 
          150 Alternative: Installation in your private user directory:
          151 
          152   cd submission/
          153   make
          154   mkdir -p ~/local/lib/X11/fonts/
          155   mv *.pcf.gz ~/local/lib/X11/fonts/
          156   cd ~/local/lib/X11/fonts/
          157   mkfontdir
          158   xset +fp ~/local/lib/X11/fonts   (put this last line also in ~/.xinitrc)
          159 
          160 Now you can have a look at say the 6x13 font with the command
          161 
          162   xfd -fn '-misc-fixed-medium-r-semicondensed--13-120-75-75-c-60-iso10646-1'
          163 
          164 If you want to have short names for the Unicode fonts, you can also
          165 append the fonts.alias file to that in the directory where you install
          166 the fonts, call "mkfontdir" and "xset fp rehash" again, and then you
          167 can also write
          168 
          169   xfd -fn 6x13U
          170 
          171 Note: If you use an old version of xfontsel, you might notice that it
          172 treats every font that contains characters >0x00ff as a Japanese JIS
          173 font and therefore selects inappropriate sample characters for display
          174 of ISO 10646-1 fonts. An updated xfontsel version with this bug fixed
          175 comes with XFree86 4.0 or newer.
          176 
          177 If you use the Exceed X server on Microsoft Windows, then you will
          178 have to convert the BDF files into Microsoft FON files using the
          179 "Compile Fonts" function of Exceed xconfig. See the file exceed.txt
          180 for more information.
          181 
          182 There is one significant efficiency problem that X11R6 has with the
          183 sparsely populated ISO10646-1 fonts. X11 transmits and allocates 12
          184 bytes with the XFontStruct data structure for the difference between
          185 the lowest and the highest code value found in a font, no matter
          186 whether the code positions in between are used for characters or not.
          187 Even a tiny font that contains only two glyphs at positions 0x0000 and
          188 0xfffd causes 12 bytes * 65534 codes = 786 kbytes to be requested and
          189 stored by the client. Since all the ISO10646-1 BDF files provided in
          190 this package contain characters in the U+00xx (ASCII) and U+ffxx
          191 (ligatures, etc.) range, all of them would result in 786 kbyte large
          192 XCharStruct arrays in the per_char array of the corresponding
          193 XFontStruct (even for CharCell fonts!) when loaded by an X client.
          194 Until this problem is fixed by extending the X11 font protocol and
          195 implementation, non-CJK ISO10646-1 fonts that lack the (anyway not
          196 very interesting) characters above U+31FF seem to be the best
          197 compromise. The bdftruncate.pl program in this package can be used to
          198 deactivate any glyphs above a threshold code value in BDF files. This
          199 way, we get relatively memory-economic ISO10646-1 fonts that cause
          200 "only" 150 kbyte large XCharStruct arrays to be allocated. The
          201 deactivated glyphs are still present in the BDF files, but with an
          202 encoding value of -1 that causes them to be ignored.
          203 
          204 The ISO10646-1 fonts can not only be used directly by Unicode aware
          205 software, they can also be used to create any 8-bit font. The
          206 ucs2any.pl Perl script converts a ISO10646-1 BDF font into a BDF font
          207 file with some different encoding. For instance the command
          208 
          209   perl ucs2any.pl 6x13.bdf MAPPINGS/8859-7.TXT ISO8859-7
          210 
          211 will generate the file 6x13-ISO8859-7.bdf according to the 8859-7.TXT
          212 Latin/Greek mapping table, which available from
          213 <ftp://ftp.unicode.org/Public/MAPPINGS/>. [The shell script
          214 ./map_fonts automatically generates a subdirectory derived-fonts/ with
          215 many *.bdf and *.pcf.gz 8-bit versions of all the
          216 -misc-fixed-*-iso10646-1 fonts.]
          217 
          218 When you do a "make" in the submission/ subdirectory as suggested in
          219 the installation instructions above, this will generate exactly the
          220 set of fonts that have been submitted to the XFree86 project for
          221 inclusion into XFree86 4.0. These consists of all the ISO10646-1 fonts
          222 processed with "bdftruncate.pl U+3200" plus a selected set of derived
          223 8-bit fonts generated with ucs2any.pl.
          224 
          225 I recommend to play around with the UTF-8 editor Yudit. To use for
          226 example the 6x13 font with Yudit 1.5, you just have to select the
          227 settings
          228 
          229   Font=Misc Unicode
          230   Size=13
          231   Slant=Roman
          232   Spacing=CharCell
          233   Weight=Medium
          234   Add.Style=Any
          235   Avg.Width=60
          236 
          237 in the Font menu or in the ~/.yuditrc config file. Yudit is a nice
          238 text file editor with UTF-8 support, available from
          239 
          240   http://www.yudit.org/
          241   ftp://sunsite.unc.edu/pub/Linux/apps/editors/X/yudit-1.5.tar.gz
          242 
          243 You can also use these fonts with Emacs 20.6 or higher. For more
          244 information, see
          245 
          246   http://www.cs.ust.hk/faculty/otfried/Mule/
          247 
          248 Every font comes with a *.repertoire-utf8 file that lists all the
          249 characters in this font.
          250 
          251 
          252 CONTRIBUTING
          253 ------------
          254 
          255 If you want to help me in extending or improving the fonts, or if you
          256 want to start your own ISO 10646-1 font project, you will have to edit
          257 BDF font files. This is most comfortably done with the xmbdfed font
          258 editor (version 4.3 or higher), which is available from
          259 
          260     ftp://crl.nmsu.edu/CLR/multiling/General/
          261 
          262 Once you are familiar with xmbdfed, you will notice that it is no
          263 problem to design up to 100 nice characters per hour (even more if
          264 only placing accents is involved).
          265 
          266 Information about other X11 font tools and Unicode fonts for X11 in
          267 general can be found on
          268 
          269     http://www.cl.cam.ac.uk/~mgk25/ucs-fonts.html
          270 
          271 The latest version of this package is available from
          272 
          273     http://www.cl.cam.ac.uk/~mgk25/download/ucs-fonts.tar.gz
          274 
          275 If you want to contribute, then get the very latest version of this
          276 package, check which glyphs are still missing or inappropriate for
          277 your needs, and send me whatever you had the time to add and fix. Just
          278 email me the extended BDF-files back, or even better, send me a patch
          279 file of what you changed. The best way of preparing a patch file is
          280 
          281   ./touch_id newfile.bdf
          282   diff -d -u -F STARTCHAR oldfile.bdf newfile.bdf >file.diff
          283 
          284 which ensures that the patch file preserves information about which
          285 exact version you worked on and what character each "hunk" changes.
          286 
          287 I will try to update this packet on a daily basis. By sending me
          288 extensions to these fonts, you agree that the resulting improved font
          289 files will remain in the public domain for everyone's free use. Always
          290 make sure to load the very latest version of the package immediately
          291 before your start, and send me your results as soon as you are done,
          292 in order to avoid revision overlaps with other contributors.
          293 
          294 Please try to be careful with the glyphs you generate:
          295 
          296   - Always look first at existing similar characters in order to
          297     preserve a consistent look and feel for the entire font and
          298     within the font family. For block graphics characters and geometric
          299     symbols, take care of correct alignment.
          300 
          301   - Read issues.txt, which contains some design hints for certain
          302     characters.
          303 
          304   - All characters of CharCell (C) fonts must strictly fit into
          305     the pixel matrix and absolutely no out-of-box ink is allowed.
          306 
          307   - The character cells will be displayed directly next to each other,
          308     without any additional pixels in between. Therefore, always make
          309     sure that at least the rightmost pixel column remains white, as
          310     otherwise letters will stick together, except of course for
          311     characters -- like Arabic or block graphics -- that are supposed to
          312     stick together.
          313 
          314   - Place accents as low as possible on the Latin characters.
          315 
          316   - Try to keep the shape of accents consistent among each other and
          317     with the combining characters in the U+03xx range.
          318 
          319   - Use xmbdfed only to edit the BDF file directly and do not import
          320     the font that you want to edit from the X server. Use xmbdfed 4.3
          321     or higher.
          322 
          323   - The glyph names should be the Adobe names for Unicode characters
          324     <http://partners.adobe.com/asn/developer/typeforum/unicodegn.html>,
          325     as xmbdfed can set them automatically if it is configured
          326     with the location of the Adobe "glyphlist.txt" file in
          327     "adobe_name_file" in "~/.xmbdfed". For xmbdfed 4.5 and older, use
          328     <http://partners.adobe.com/asn/developer/type/glyphlist-old.txt>.
          329 
          330   - Be careful to not change the FONTBOUNDINGBOX box accidentally in
          331     a patch.
          332 
          333 You should have a copy of the ISO 10646 standard
          334 
          335   ISO/IEC 10646-1:2000, Information technology -- Universal
          336   Multiple-Octet Coded Character Set (UCS) -- Part 1: Architecture
          337   and Basic Multilingual Plane, International Organization for
          338   Standardization, Geneva, 2000.
          339   http://www.iso.ch/cate/d29819.html
          340 
          341 and/or the Unicode 3.0 book:
          342 
          343   The Unicode Consortium: The Unicode Standard, Version 3.0,
          344   Reading, MA, Addison-Wesley Developers Press, 2000,
          345   ISBN 0-201-61633-5. 
          346   http://www.amazon.com/exec/obidos/ASIN/0201616335/mgk25
          347 
          348 All these fonts are from time to time resubmitted to the XFree86
          349 project (they have been in there since XFree86 4.0), X.Org, Sun, and
          350 to other X server developers for inclusion into their normal X11
          351 distributions.
          352 
          353 Starting with XFree86 4.0, xterm has included UTF-8 support. This
          354 version is also available from
          355 
          356   http://dickey.his.com/xterm/xterm.html
          357 
          358 Please make the developer of your favourite software aware of the
          359 UTF-8 definition in RFC 2279 and of the existence of this font
          360 collection. For more information on how to use UTF-8, please check out
          361 
          362   http://www.cl.cam.ac.uk/~mgk25/unicode.html
          363   ftp://ftp.ilog.fr/pub/Users/haible/utf8/Unicode-HOWTO.html
          364 
          365 where you will also find information on joining the
          366 linux-utf8@nl.linux.org mailing list.
          367 
          368 A number of UTF-8 example text files can be found in the examples/
          369 subdirectory or on 
          370 
          371   http://www.cl.cam.ac.uk/~mgk25/ucs/examples/
          372 
          373 CONTRIBUTORS
          374 
          375 Robert Brady <rwb197@ecs.soton.ac.uk> and Birger Langkjer
          376 <birger.langkjer@image.dk> contributed thousands of glyphs and made
          377 very substantial contributions and improvements on almost all fonts.
          378 Constantine Stathopoulos <cstath@irismedia.gr> contributed all the
          379 Greek characters. Markus Kuhn <Markus.Kuhn@cl.cam.ac.uk> did most 6x13
          380 glyphs and the italic fonts and provided many more glyphs,
          381 coordination, and quality assurance for the other fonts. Mark Leisher
          382 <mleisher@crl.nmsu.edu> contributed to 6x13 Armenian, Georgian, the
          383 first version of Latin Extended Block A and some Cyrillic. Serge V.
          384 Vakulenko <vak@crox.net.kiae.su> donated the original Cyrillic glyphs
          385 from his 6x13 ISO 8859-5 font. Nozomi Ytow <nozomi@biol.tsukuba.ac.jp>
          386 contributed 6x13 halfwidth Katakana. Henning Brunzel
          387 <hbrunzel@meta-systems.de> contributed glyphs to 10x20.bdf. Theppitak
          388 Karoonboonyanan <thep@linux.thai.net> contributed Thai for 7x13,
          389 7x13B, 7x13O, 7x14, 7x14B, 8x13, 8x13B, 8x13O, 9x15, 9x15B, and 10x20.
          390 Karl Koehler <koehler@or.uni-bonn.de> contributed Arabic to 9x15,
          391 9x15B, and 10x20 and Roozbeh Pournader <roozbeh@sharif.ac.ir> and
          392 Behdad Esfahbod revised and extended Arabic in 10x20. Raphael Finkel
          393 <raphael@cs.uky.edu> revised Hebrew/Yiddish in 10x20. Jungshik Shin
          394 <jshin@pantheon.yale.edu> prepared 18x18ko.bdf. Won-kyu Park
          395 <wkpark@chem.skku.ac.kr> prepared the Hangul glyphs used in 12x13ja.
          396 Janne V. Kujala <jvk@iki.fi> contributed 4x6. Daniel Yacob
          397 <perl@geez.org> revised some Ethiopic glyphs. Ted Zlatanov
          398 <tzz@lifelogs.com> did some 7x14. Thanks also to everyone who
          399 contributed additions to the UTF-8 example texts and to Bruno Haible
          400 <haible@ilog.fr> for valuable comments.
          401 
          402 The creation of these fonts would certainly not have been possible
          403 without Mark Leisher's wonderful xmbdfed software.
          404 
          405 Markus
          406 
          407 -- 
          408 Markus G. Kuhn, Computer Laboratory, University of Cambridge, England