1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
|
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]
|