fc.rme version 1.4b of 1-JUN-2004 (c) Copyright 1992--2004 by J"org Knappen This is the documentation of the fc-Fonts for African languages Contents: I) Introduction II) About the FC-Scheme a) The language base b) Technical points c) Copiing conditions III) How to generate the fonts with METAFONT IV) How to use the FC-Fonts with LaTeX2e V) Availability VI) Acknowledgements Appendix A) The FC encoding scheme (codes 128 -- 255) Appendix B) Removed -- see file fc.bug Appendix C) Shortcomings and known bugs of the first release Appendix D) T4-to-UCS correspondence I. Introduction TeX is a typesetting system for high quality typesetting. It is available free due to the generosity of its developper, Prof D. E. Knuth. It is available for many different platforms, from microcomputers (PC, Atari, Mac) to mainframes and even supercomputers. TeX files can be interchanged between different systems and will produce identical output. TeX is well documented in D. E. Knuth, Computers and typesetting, Vol. A -- The Texbook. The release of TeX Version 3 stimulated lots of work in the area of adapting TeX to the needs of other languages than english. One outstanding project was the creation of a font encoding scheme with 256 characters for international use. It soon turned out, that with 256 code points only the needs of european languages could be satisfied (the EC scheme proceeds this way), and there had to be other fonts for non-european languages. The FC (aFrican Computer) scheme fits the needs of african languages with latin writing. This scheme comes together with an implementation of the fonts in METAFONT. The fonts created by METAFONT can also be used by other system than TeX. II. About the FC-Scheme a) The language base There is a great diversity of languages spoken in africa, and it was impossible to check all of them for their alphabets. This work is based on the examination of the ``critical languages'' according to a definition of the US department of education in 1985. They include all those languages with more than 1 mio speakers. Only orthographical writing is considered. Transscription systems devolopped by linguists are outside the scope of this work. Obsolete orthographies are also not included (for example the obsolete uppercase form of hooktop B in Xhosa and Zulu or the obsolete (catholic) orthography of \d{I}gb\d{o}). Even these constraints showed the lack of code space. Therefore some accented letters did not enter the fc scheme. Generally, accented letters were omitted, if the accent denotes a tonal mark. This is in consistency with the current trend in orthography to suppress tonal marks, except if ambiguities occur. Also omitted are consonants with tilde to denote nasalisation. The mentioned letters can be created in TeX by the use of macros (e.g. \~y). The following languages are supported: Akan, Bamileke, Basa (Kru), Bemba, Ciokwe, Dinka, Dholuo (Luo), Efik, Ewe-Fon, Fulani (Fulful), G\~a, Gbaya, Hausa, Igbo, Kanuri, Kikuyu, Kikongo, Kpelle, Krio, Luba, Mandekan (Bambara), Mende, More, Ngala, Nyanja, Oromo, Rundi, Kinya Rwanda, Sango, Serer, Shona, Somali, Songhai, Sotho (two different writing systems), Suaheli, Tiv, Yao, Yoruba, Xhosa and Zulu. I decided to support two european languages, which are not covered by the EC-scheme, namely Maltese and Sami. Currency symbols (Like Naira and Cedi) aren't part of the fc fonts. They are available from the tc (Text companion symbols) fonts distributed together with the ec (European Computer Modern) fonts. b) Technical points The fc encoding scheme will not be changed anymore. Every font, which begins with the two characters fc should be encoded according to the fc scheme. The fonts named fcr etc. contain what you expect from TeX naming conventions. They are currently maintained by the author. The code points are choosen from scratch, according to the following rules: * The lower 128 codes are identical to the Cork (ec) scheme * A glyph also occurring in the Cork scheme is placed on the same code point as in the Cork scheme * Each letter from TeX's original cm-fonts is saved. Thus, you can print polish L, skandinavian crossed O and some other letters with the fc fonts. * The difference between uppercase and corresponding lowercase letter is a constant. c) Copying conditions The fc fonts are copyrighted but free according to the conditions of the GNU licence, version 2. You should receive a copy of the file licence.gnu containing this licence. If not, complain to the person from which you received these fonts. Read the licence carefully. III) How to generate the fonts with METAFONT Besides the files of the fc package, you need the following: * plain.mf (or a METAFONT with plain preloaded) * cmbase.mf (or a METAFONT with cmbase preloaded) * The files romand.mf, itald.mf, and olddig.mf (the original digits from the cm fonts) * The Sauter tools. These are a bunch of files, named like c-cmr.mf and so on. They are available from the CTAN archive sites and their mirros. The CTAN sites are ftp.dante.de and ftp.tex.ac.uk. The Sauter tools are located there under tex-archive/fonts/cm/sauter. Make sure, that all files are in appropriate directories, where METAFONT finds them. Now you are ready to create the fc fonts at any size you want, for example to create the font fcr10 do the following: mf "\mode=localfont; design_size:=10; input b-fcr" gftopk b-fcr.300gf fcr10.pk rename b-fcr.tfm fcr10.tfm and move the .pk and .tfm-files to their directories. The exact form of the calls depends a little on your operating system. You might find it helpful to make yourself little mf-files of the type % fcr10.mf design_size:=10; input b-fcr; endinput; % end of fcr10.mf These files are especially usefull, if you have an automagic procedure invoking METAFONT. Note, that for the sizes 11pt and >12pt, the design_size is not identical to the last digits of the fontname. It is fcr11 design_size:=10.95; fcr14 design_size:=14.4; fcr17 design_size:=17.28; fcr20 design_size:=20.74; fcr24 design_size:=24.88; Note that there is only one fc italic font, called fci. It is not planned to add fc math fonts to the distribution. Use the cm math fonts (or the not yet released ec math fonts). IV) How to use the FC-Fonts with LaTeX2e The LaTeX3 team has assigned the encoding T4 to fc encoded fonts. So you can use the fc fonts in LaTeX2e simply by saying \usepackage[T4]{fontenc} This call loads the following files, which must be located in the search path of LaTeX2e: t4enc.def, t4cmr.fd, t4cmss.fd, t4cmtt.fd. There is another option which aemulates the behaviour of the previous LaTeX209 with NFSS1 implementation. It gives you easy access to the sans serif typerwriter font included in this package by simply typing \ss\tt or \tt\ss. This option is called by \usepackage{fclfont} and requires the four abovementioned file plus fclfont.sty and t4fcr.fd. The files fclfont.sty_old and fontdef.fc_old from the previous release are obsolete and now frozen. They have been renamed to make this notion clear. fcuse.sty shows you how to make the input easy by employing active characters. It is an example rather than a standard package. Its use is only recomended, if you want to use the complete fc character set. Usually you only want to typeset text in one or two languages, and a language specific style option will be more appropriate. Look into existing language dependent style options (e.g. german.sty) or into the babel system by J. Braams to figure out how to create a new one. V) Availability The fc package is available per anonymous ftp or e-mail from the DANTE-server at Heidelberg, which is the primary site of its distribution. Since the main TeX archives cooperate, it will be available from other sites, too. The address of the DANTE-Server is: (ftp:) ftp.dante.de (e-mail:) mailserver@rusinfo.rus.uni-stuttgart.de Update notices are distributed via the mailing list CTAN-Ann@shsu.edu. VI) Acknowledgements Without the work of other authors on META-fonts, these fonts would surely never have come out. I took deliberately from all available free metafont sources ideas, macros, and even whole characters. All bugs and mistakes in this code are mine, noone of the acknowledged authors should be blamed for them. The first acknoledgement goes to Donald E. Knuth, the author of the TeX and METAFONT programs and also of the computer modern (cm) family of fonts. His work is the base of this one. I also want to acknowledge the following persons: Julian Bradfield, who made the cmoe old english font. Malcolm Clark, editor of the newsletter TeXline. Nana Glonti and Aleksander Samarin, who made the cmcyr cyrillic fonts. Yannis Haralambous, who created of the 128-char greek fonts (and many others) Emma Pease, who made the cmph phonetic fonts (Her work is used in the Hausa--English dictionary by Rosanna Ma Newman) J"orgen Pind, who made icelandic TeX and fonts for it. Tom Ridgeway of the University of Washington, who made the wncyr cyrillic fonts and experiments with a new ipa font. Norbert Schwarz, who made the dc-fonts, a first implementation of the ec- (Cork-) scheme. Janene Winter, who made the wsuipa international phonetic fonts, from which I learned much. For help in the africanist part of the work, I want to thank Prof. Norbert Ciffer, Institut f"ur Ethnologie und Afrikastudien Mainz, for pointing me to the critical languages and help in finding references. I thank Prof. Fiona McLaughlin, University of Kansas, Lawrence, Kansas, for good references on Serer and Prof Michael MacMahon, University of Glasgow for sending samples of african letters. Appendix A: The fc encoding scheme (octal 200 -- 377) octal code description input 200 uppercase hooktop B \m B 201 uppercase hooktop D \m D 202 uppercase open E (\varepsilon-like) \m E 203 uppercase reversed E (like \exists) \M E 204 uppercase long F \m F 205 uppercase E with ha\v{c}ek \v E 206 uppercase ipa Gamma \m G 207 uppercase double barred H \B H 210 uppercase hooktop K \m K 211 uppercase Enj \m J 212 uppercase open O (revesed C) \m O 213 uppercase N with acute \'N 214 uppercase Esh \m S 215 uppercase Eng \m N 216 uppercase variant U (\upsilon-like) \m U or \m V 217 uppercase hooktop Y \m Y 220 uppercase hooktop C \m C 221 uppercase hooktop P \m P 222 uppercase S with ha\v{c}ek \v S 223 uppercase N with dot above \.N 224 uppercase N with line below \b N 225 uppercase S with dot below \d S 226 uppercase Ezh \m Z 227 uppercase crossed T \B T 230 uppercase E with dot above \.E 231 uppercase E with dot below \d E 232 uppercase hooktop T \m T 233 uppercase T with tail \M T 234 ligature t-esh \tsh 235 ligature fj fj 236 lowercase crossed d \B d 237 double grave accent \G 240 lowercase hooktop b \m b 241 lowercase hooktop d \m d 242 lowercase open e \m e 243 lowercase inverted e \M e 244 lowercase long f \m f 245 lowercase e with ha\v{c]ek \v e 246 lowercase ipa gamma \m g 247 lowercase crossed h \B h 250 lowercase hooktop k \m k 251 lowercase enj \m j 252 lowercase open o \m o 253 lowercase n with acute \'n 254 lowercase esh \m s 255 lowercase eng \m n 256 lowercase variant u \m u or \m v 257 lowercase hooktop y \m y 260 lowercase hooktop c \m c 261 lowercase hooktop p \m p 262 lowercase s with ha\v{c}ek \v s 263 lowercase n with dot above \.n 264 lowercase n with line below \b n 265 lowercase s with dot below \d s 266 lowercase ezh \m z 267 lowercase crossed t \B t 270 lowercase e with dot above \.e 271 lowercase e with dot below \d e 272 lowercase hooktop t \m t 273 lowercase t with tail \M t 274 double universal accent \U 275 inverted exclamation mark !` 276 inverted question mark ?` 277 unversal accent \I 300 uppercase latin Iota \m I 301 uppercase I with dot below \d I 302 uppercase open E with tilde \T E 303 uppercase A with tilde \~A 304 uppercase M with acute \'M 305 uppercase Open O with tilde \T O 306 uppercase ligature AE \AE 307 uppercase C with cedilla \c C 310 uppercase E with grave \`E 311 uppercase E with acute \'E 312 uppercase E with circumflex \^E 313 uppercase E with diaresis \"E 314 uppercase E with line below \b E 315 uppercase E with macron \=E 316 uppercase E with tilde \~E 317 uppercase I with tilde \~I 320 uppercase crossed D \B D uppercase D with tail \M D uppercase Edh \DH 321 uppercase N with tilde \~N 322 uppercase O with grave \`O 323 uppercase O with dot above \.O 324 uppercase O with circumflex \^O 325 uppercase O with tilde \~O 326 uppercase O with diaresis \"O 327 uppercase ligature OE \OE 330 uppercase crossed O (skandinavian) \O 331 uppercase O with dot below \d O 332 uppercase O with line below \b O 333 uppercase O with macron \= O 334 uppercase O with ha\v{c}ek \v O 335 uppercase U with dot below \d U 336 uppercase U with tilde \~U 337 cross piece for polish L and l \char'337 Macro uppercase polish L with crossbar \L Macro lowercase polish l with crossbar \l 340 lowercase latin iota \m i 341 lowercase i with dot below \d i 342 lowercase open e with tilde \T e 343 lowercase a with tilde \~a 344 lowercase m with acute \'m 345 lowercase open o with tilde \T o 346 lowercase ligature ae \ae 347 lowercase c with cedilla \c c 350 lowercase e with grave \`e 351 lowercase e with acute \'e 352 lowercase e with circumflex \^e 353 lowercase e with diaresis \"e 354 lowercase e with line below \b e 355 lowercase e with macron \=e 356 lowercase e with tilde \~e 357 lowercase i with tilde \~i 360 lowercase d with tail (note: not edh!) \M d 361 lowercase n with tilde \~n 362 lowercase o with grave \`o 363 lowercase o with dot above \.o 364 lowercase o with circumflex \^o 365 lowercase o with tilde \~o 366 lowercase o with diaresis \"o 367 lowercase ligature oe \oe 370 lowercase crossed o (skandinavian) \o 371 lowercase o with dot below \d o 372 lowercase o with line below \b o 373 lowercase o with macron \= o 374 lowercase o with ha\v{c}ek \v o 375 lowercase u with dot below \d u 376 lowercase u with tilde \~u 377 lowercase scharfes s \ss Macro Copyleft sign (circled open o) \copyleft Appendix B: List of files Please find the list of files together with the current version number and date in fc.bug. Appendix C: Bugs Unfortunately, one has to expect bugs (sigh!) in this package, allthough I'm trying to get rid of them. For a list of already known (and maybe fixed) bugs, see the file fc.bug. The fonts were developped on a 300dpi write white device, and probably even a bit optimised to it. They are also tested on a 300dpi write black engine and a 600dpi write black engine. Some times strange path error messages occurred, but they did not seem to cause visible harm. There might be visible errors, too, which I did not discover. If you find an bug or mistake, send it to me, including the following information: Which parameters caused the error/bug? (e.g. design_size=6; b-fctt) Which mode did you use? (Please don't say ``localfont', this tells nothing to me... e.g. lowres from cmbase, ricoh from Karl Berry's modes.mf) Which character contains the bug? (e.g. [162] open_e) Is the damage visible in the printout? What does it look like? (e.g. Nothing at all is printed, or some part of the letter is missing) Send bug reports to: J\"org Knappen Dieselstra\ss{}e 13 66123 Saarbr\"ucken R.F.A. e-mail joerg.knappen@uni-mainz.de. P.S if you know a fix, it is greatly appreciated... Appendix D: T4-to-UCS correspondence This appendix contains a correspondence between the characters encoded in the T4 encoding and the Universal Character Set (UCS) as defined in the ISO Standard ISO-10646. The UCS is also popularly known as UNicode. The following characters are not part of the UCS: latin small ligature fj latin [small|capital] letter e with line below latin [small|capital] letter o with line below latin [small|capital] letter open e with tilde latin [small|capital] letter open o with tilde The ligature character of the fj ligature is ignored here and it is mapped to the two characters f j. The remaining 8 characters are coded using combining diacritics. There are two digraphs added at the end of the list for the polish l with stroke. T4 Unicode latex2e macro 128 0x0181 \m B 129 0x018a \m D 130 0x0190 \m E 131 0x018e \M E 132 0x0191 \m F 133 0x011a \v E 134 0x0194 \m G 135 0x0126 \B H 136 0x0198 \m K 137 0x019d \m J 138 0x0186 \m O 139 0x0134 \'N 140 0x01a9 \m S 141 0x014a \NG{} 142 0x01b2 \m U 143 0x01b3 \m Y 144 0x0187 \m C 145 0x01a4 \m P 146 0x0160 \v S 147 0x1e44 \.N 148 0x1e48 \b N 149 0x1e62 \d S 150 0x0167 \m Z 151 0x0166 \B T 152 0x0166 \.E 153 0x1eb8 \d E 154 0x01ac \m T 155 0x01ae \M T 156 0x02a7 \tsh{} 157 0x0066,0x0069 fj 158 0x0111 \dj{} 159 0x030f \G{} 160 0x0253 \m b 161 0x0257 \m d 162 0x0258 \m e 163 0x01dd \M e 164 0x0192 \m f 165 0x011b \v e 166 0x0263 \m g 167 0x0127 \B h 168 0x0199 \m k 169 0x0272 \m j 170 0x0254 \m o 171 0x0144 \'n 172 0x03a3 \m s 173 0x028b \ng{} 174 0x014b \m u 175 0x01b4 \m y 176 0x0188 \m c 177 0x01a5 \m p 178 0x0161 \v s 179 0x1e45 \.n 180 0x1e49 \b n 181 0x1e63 \d s 182 0x0292 \m z 183 0x0167 \B t 184 0x0117 \.e 185 0x1eb9 \d e 186 0x01ad \m t 187 0x0288 \M t 188 0x030e \U{} 189 0x00a1 \textexclamdown{} 190 0x00bf \textquestiondown{} 191 0x030d \I{} 192 0x0196 \m I 193 0x1eca \d I 194 0x0190,0x0303 \~{\m E} 195 0x00c3 \~A 196 0x1e3e \'M 197 0x0186,0x0303 \~{\m O} 198 0x00c6 \AE{} 199 0x00c7 \c C 200 0x00c8 \^E 201 0x00c9 \'E 202 0x00ca \^E 203 0x00cb \"E 204 0x0045,0x0331 \b E 205 0x0112 \=E 206 0x1ebc \~E 207 0x0128 \~I 208 0x0189 \M D 209 0x00d1 \~N 210 0x00d2 \NG{} 211 0x022e \.O 212 0x00d4 \^O 213 0x00d5 \~O 214 0x00d6 \"O 215 0x0152 \OE{} 216 0x00d8 \O{} 217 0x1ecc \d O 218 0x004f,0x0331 \b O 219 0x014c \=O 220 0x01d1 \v O 221 0x1ee4 \d U 222 0x0168 \~U 223 0x0337 {\fontencoding[T4]\selectfont \char223 } 224 0x0269 \m i 225 0x1ecb \d i 226 0x0258,0x0303 \~{\m e} 227 0x00e3 \~a 228 0x1e3f \'m 229 0x0254,0x0303 \~{\m o} 230 0x00e6 \ae{} 231 0x00e7 \c c 232 0x00e8 \^e 233 0x00e9 \'e 234 0x00ea \^e 235 0x00eb \"e 236 0x0065,0x0331 \b e 237 0x0113 \=e 238 0x1ebd \~e 239 0x0129 \~\i 240 0x0256 \M d 241 0x00f1 \~n 242 0x00f2 \ng{} 243 0x022f \.o 244 0x00f4 \^o 245 0x00f5 \~o 246 0x00f6 \"o 247 0x0153 \oe{} 248 0x00f8 \o{} 249 0x1ecd \d o 250 0x006f,0x0331 \b o 251 0x014d \=o 252 0x01d2 \v o 253 0x1ee5 \.u 254 0x0169 \~u 255 0x00df \ss{} T4 digraph Unicode latex2e macro 223,76 0x0141 \L{} 223,108 0x0142 \l{} [The End]