FONTS AND TYPESETTING MACROS FOR THE COPTIC LANGUAGE Version 0.2 2005/04/11 LEGAL STUFF Copyrights: METAFONT files: S. Rosmorduc 1995 and C. Beccari 2004 other files: Claudio Beccari 2004-2010 This work may be distributed and/or modified under the conditions of the LaTeX Project Public License, either version 1.3 of this license or (at your option) any later version. The latest version of this license is in http://www.latex-project.org/lppl.txt and version 1.3 or later is part of all distributions of LaTeX version 2003/12/01 or later. The METAFONT files listed below were originally prepared in 1995 by Serge Rosmorduc and were under the GNU Public Licence; they have been completely reorganized and the fonts themselves were enriched with many additional glyphs; although the work of the original author is here fully acknowledged, due to these enhancements and the different structures and names, these files are now under the LPPL licence. This work has the LPPL maintenance status "not maintained". This work consists of the following files README this file coptbase.mf METAFONT macros copto.mf driver file for Ordinary (upright) Coptic fonts copti.mf driver file for Inclined (slanted) Coptic fonts testcop.tex source LaTeX file for testing macros and for showing macro usage testcopOK.pdf output pdf file with my results coptic.sty extension LaTeX package with some useful macros copto.tfm TeX metric file for font copto copti.tfm TeX metric file for font copti lcopcoptic.fd LaTeX font definition file copto.pfb PostScript font binary file for font copto copti.pfb PostScript font binary file for font copti copthyph.tex hyphenation patterns for the Coptic language PURPOSE This bundle of source METAFONT files, PostScript fonts and LaTeX files is an experimental work for typesetting in Coptic language. Some solutions and macros derive from Cristiano Pulone. INSTALLATION The installation process is a little hacker like, but whoever uses this package is a volunteer in experimenting it. Therefore s/he must be familiar with his/her TeX system installation and directory structure. I assume you are working with a modern installation and that it is compliant with the TeX Directory System (TDS). Independent from the platform and operating system you are using, you should have at least two more-or-less identical directory structures, one platform wide and one user dependent. Generally the system wide one is rooted in some place such as /user/share/texmf or C:\texmf; the user dependent structure should be rooted in ~/texmf or in C:\localtexmf. These roots are just examples; they may vary from installation to installation, but the important point is that there is at least two roots from which spring up the two trees of TeX directories. I'd suggest you to use the local/user tree. This structure very often does not contain all the branches and leaves of the system wide tree, so it may be necessary to add directories and subdirectories by hand simply by mimicking the system wide structure. In the following I use the UNIX syntax for directories and I assume that .../ stands for whatever precedes the following directory name in the particular directory tree of your choice. Put copthyph.tex in .../tex/generic/config and be sure to have in this directory also the file language.dat. Edit the latter file by adding this line: coptic copthyph.tex (I suggest to place it in alphabetical order) Put the *.mf files in .../fonts/source/local/coptic; put the *.tfm files in .../fonts/tfm/local/coptic; put the *.pfb files in .../fonts/type1/local/coptic; put the *.sty and *.fd files, testcop.tex and testcopOK.pdf in .../tex/latex/local/coptic; if you like the idea you can save this file README in .../doc/tex/latex/local/coptic. It might be a good idea, especially for keeping at hand the mappings and ligatures for typesetting Coptic text with a Latin keyboard. At this point refresh the file name data base; the system command might be texhash or you might need to click on a Option Wizard button depending on your installation. Refresh the psfonts.map file; for this task it's possible that yopu need to locate and configure an updmap.cfg file before recreating the psfonts.map file, but this depends on your installation. Before refreshing the psfonts.map file you should add the following two lines copti TeX-copti <copti.pfb copto TeX-copto <copto.pfb to a file, be it and existing file where your local and personal postscript fonts are listed or a new file that you may name coptic.map; in the latter case you have to add this file name to the updmap.cfg file before refreshing the system wide psfonts.map file. Some TeX distributions resort to a .../fontname/special.map file where for each font name the directory and subdirectory are listed where the tfm and pk files should be moved by the local programs dedicated to the automatic creation of these files. If your system uses such special.map file I suggest you add these two lines copto local coptic copti local coptic to a local copy of special.map ("local copy" means the one that is in the local tree; if there is none, copy the one in the system wide tree to the local tree and edit the latter one). Now you need to recreate format files at least for latex and pdflatex; check your installation characteristics, because since the beginning of 2004 the official motor for TeX related material is e-TeX and its initializing versions, while modern installations dating before 2004 still use TeX. If you use MiKTeX the MiKTeX Options wizard is compatible with the inner workings and you don't have to fear any trouble. Some simpler installations might have a command-line texconfig command that does the whole work for you, others require using the command line command fmtutils with proper arguments. In any case you have to recreate the format files in order to exploit the facilities offered by the Coptic hyphenation patterns. Remember, though, that they are experimental; they probably do an acceptable job, but they are very far away from perfection. At this point you should be ready to test your installation. If you latex testcop.tex you should verify that the run is executed without errors; your dvi previewer should let you preview the output, keeping in mind that on its first run it will spend a few seconds for generating the pk files according to your system configuration. You should test also by running pdflatex on testcop.tex and preview the result with your favorite pdf document viewer; this program should let you verify if the type1 Coptic fonts have been effectively been loaded. Actually this information, should your viewer be incapable of displaying the font information, is available at the end of the textcop.log file where the loaded fonts are listed; if there appears the indication copto.pfb everything is OK; if there is copto.pk or copto.600pk, this means that the psfonts.map file has not been generated correctly; review your steps and check with your TeX installation idiosyncrasies for what concerns font maps; some modern installations that do not belong to the last generation require the listing of several map files within the configuration files of dvips, of pdftex, and of dvipdfm. In case edit these configuration files accordingly. If your dvi and pdf output is identical to the one contained in testcopOK.pdf then you probably successfully installed all the parts of this bundle. MAPPINGS AND LIGATURES I am not aware of the existence of any keyboard driver under any operating system that allows direct keying of Coptic characters. I am aware that there is a group working on the definition of a Coptic Standard Character Code (CSCC); information is available at the internet address http://www.copticchurch.net/coptic_fonts/ This group is also producing several variants in ttf format. I did not chose to follow the indications set forth by this group for several reasons: 1) I started with the fonts created by Serge Rosmorduc that were not complying with the proposed standard; 2) I decided to stick to the first 128 positions of the ANSI table, so as to minimize the TeX and LaTeX related material and as to avoid the necessity of an input encoding; 3) the main application of Rosmorduc fonts, I assumed, was for philological works, therefore I omitted the arabic numbers and many if not all punctuation marks altogether; this means that such signs, if necessary, should be typeset with regular Latin fonts. May be my choices are wrong, but let's not forget this work is at an experimental stage, possibly even a pre-alpha one; may be in a future release I might change mind. Nevertheless since it is at a usable stage, I decided to make it available to the Coptic philologists who are using LaTeX. The idea is that one should be capable of typesetting Coptic text using a Latin keyboard. As far as I know the only macro variant that is difficult to typeset with a US keyboard is \� (requested by Cristiano Pulone); it is true that the "degree" symbol appears in most European keyboards, but in case, the alias command \0 has been devised that produces the same result. The different lower and upper case Coptic glyphs are obtained with the following Latin keys; some glyphs are obtained by a sequence of two Latin keys. dec.ASCII name command code 21 "trema" \" 22 "emdash" \char22 (actually not used...) 33 "threepoints left" \trepun 34 "threepoints right" \trepuntd 35 epsi ps 36 Epsi Ps or PS 40 Thida 81 41 exi ks 42 Exi Ks or KS 43 phi p1 44 Phi P1 45 "hyphen" - 46 "period" . 47 hori h1 48 Hori H1 50 hori akh h2 51 ti tj 52 Ti Tj or TJ 53 "crux" \Crux 54 Hori akh H2 56 thida 8 57 i-trema \"i 58 "very short dash" \� or \0 59 djandja dj or d1 60 Djandja Dj or DJ or D1 61 "double sloping dash" \= 62 em (`m) \'m 64 en (`n) \'n 65 Alpha A 66 Bida, Vida B 67 Cima C 68 Dalda D 69 Ei E 70 Fei F 71 Gamma G 72 Ita H 73 Iauda I 74 Hei Hj or HJ or J 75 Kabba K 76 Laula L 77 Mi, Mei M 78 Ni, Nei N 79 O O 80 Pi, Pei P 81 Shima Q 82 Ro R 84 Tau T 85 Ue U 86 "crucicula" \crucicula or V 87 Omega W 88 Chi X 89 Shei Y 90 Zida Z 91 "open bracket" [ 93 "closed bracket" ] 96 "grave accent" \' (notice the apostrophe instead of the back tick) 97 alpha a 98 bida, vida b 99 cima c 100 dalda d 101 ei e 102 fei f 103 gamma g 104 ita h 105 iauda i 106 hei hj or j 107 kabba k 108 laula l 109 mi, mei m 110 ni, nei n 111 o o 112 pi, pei p 113 shima q 114 ro r 115 "ligatures" s 116 tau t 117 ue u 118 ue-trema \"u 119 omega w 120 chi x 121 shei y 122 zida z Notice the following: 1) \' is an accent macro; it can superimpose the grave accent over any letter. The apostrophe instead of the back tick was chosen because some keyboards miss the latter key. At the same time apparently the acute accent is not used except, perhaps, for marking the tonic accent in grammars and the like; it is possible that in the future a true acute accent and its macro will be introduced, but at this stage it is not considered essential. At the same time the sequences \'m and \'n do not behave as accent macros generally do, but produce directly the accented glyphs (where the accent is not centered but is at the left margin of the letter box) and do not block of the hyphenation mechanism 2) Several glyphs are obtained with a ligature mechanism that involves two keystrokes; there are also some alternative choices. The hyphenation patterns behave correctly in their presence, whatever ligature is chosen. 3) The hyphenation patterns were created by myself, a perfect ignorant of the Coptic language; I suppose they have to be corrected, but this will take time and the feedback from Coptic philologists; I suppose there aren't too many out there among LaTeX users; nevertheless... 4) In spite of the presence of hyphenation patterns, the frequent use of diacritical marks (especially the over line mark) produces frequent unsatisfactory results, especially overfull lines. TYPESETTING MACROS The file coptic.sty contains the necessary definitions for inputting some special glyphs. The macros are the following: 1) \H and \h replace the corresponding ligatures for Hori and hori; they are defined for compatibility with the copte.sty definitions by Rosmorduc; I immagine they are less comfortable than the corresponding ligatures also because they require at least a space after, or a couple of braces around, or a \ (\space) at the end of the word. 2) \= over lines a single letter (without braces) or a group of letters enclosed in balanced braces; \=m\=t\=r is not the same as \={mtr}; in the latter case the letters are over lined by a continuous line, while in the former each letter has its own over line with a small gap (the inter letter space) interrupting the over lines. 3) \" is the diaeresis or trema macro that superimposes a trema over any letter; with i and u it produces the accented glyph and this avoids the hyphenation interruption. 4) \' accent macro for the grave accent. 5) \� and its (intruding) alias \0 introduce a very short dash used to separate certain particles that carry a specific grammatical meaning in Coptic. It is a good point where to break a line, if necessary, and this is done in a completely automatic way. The ordinary key ":" (without quotes) produces the same short dash, but does not allow line breaking. 6) \+ introduces a double short inclined dash between two parts of a word; line breaking is not allowed at this double dash, but the macro allows line breaking in the two partial words. The same sign can be introduced with the key "=" (without quotes), but hyphenation is prohibited in both word segments. 7) \trepun and its alias \threedots introduce a magic sign made up of three dots forming an equilateral triangle; the vertex is at the left and the base lies vertically at the right; if this sign is to be typeset by itself (which I suppose is always the case) it must be written \trepun\ . 8) \trepund produces a similar glyph, but the triangle vertex is on the right. 9) \sic is a macro that receives an argument over which the tiny sized word "sic" (without quotes) is superimposed. 10) \dubbio with its English alias \dubious is a macro that receives one or more words as its argument; this string is over braced and a tiny sized question mark is centered on the top of the whole construction. Obviously the whole string cannot be hyphenated and may produce overfull (line) boxes. Since this material is quite tall, in order to maintain a decently homogeneous base line skip it is better to typeset the whole document with a \linespread value of 1.4. 10) \barretta under marks with a short vertical little bar the letter that constitutes its argument; generally it is a djandja but it can be any letter. 11) \asterisco and its English alias \Asterisk (notice the capitalization) introduce a large centered asterisk. 12) \Crux introduces a special symbol similar to a raised extra-deep ro with a bar across the descending stroke. An isolated \Crux sign must be typeset as \Crux\ . 13) \crocetta with its Latin alias \crucicula introduces a small cross that is frequently found in liturgical Coptic texts. 14) \iesus (to be written \iesus\ as an isolated symbol) is a shorthand abbreviation in liturgical Coptic texts replacing the name \textcoptic{Iecuc}. 15) \xcr (to be written \xcr\ as an isolated symbol) is a shorthand abbreviation in liturgical Coptic texts. 16) \xc (to be written \xc\ as an isolated symbol) is a shorthand abbreviation in liturgical Coptic texts replacing the name \textcoptic{Xrictoc}. 17) \djois(to be written \djois\ as an isolated symbol) is a shorthand abbreviation in liturgical Coptic texts replacing the name \textcoptic{Djois}. It is possible that in the future more abbreviations of "nomina sacra" are introduced, but this requires feedback from the Coptic philologists out there. Most important of all there are the following specific commands for shifting from Latin to Coptic script and viceversa. 1) \texcoptic typesets with Coptic fonts and coptic hyphenation its argument; the aliases \texcopte and \textcopto remain for backward compatibility 2) \textlatin typesets in Latin characters its argument; hyphenation rules are not changed; in order to use the correct Latin encoding it is necessary that the package coptic.sty is not loaded before another package that changes the default font encoding; coptic.sty memorizes the encoding in force at the moment it is loaded and that encoding is assumed to be one of the Latin encodings, such as OT1 or T1; should the whole document be typeset with the main language being Greek or Russian, \textlatin will typeset its argument respectively with the Greek or the Cyrillic alphabet if coptic.sty is loaded after a language selection such as, for example, \selectlanguage{greek}. 3) \begin{coptic} ... \end{coptic} is an environment where Coptic text may be introduced that shall be typeset with the Coptic font and hyphenation. For backward compatibility this environment may be called also copte or copto. 4) Within the scope of \textcoptic or the environment coptic commands such as \textit or \textsl keep their meaning, although both resort to the same inclined Coptic font. IMPORTANT REMARK There is no babel Coptic language definition file, at least for now. When the Coptic language is invoked only its alphabet and its hyphenation rules are used, but it is not the same as specifying a coptic option to the babel package; this means that commands such as \selectlanguage{coptic} DO NOT WORK. CONCLUSION I will not maintain the files of this bundle but I may add more glyphs to the fonts and or add more macros or new files. I do not pretend to be the only one who has the privilege of controlling the development of this bundle. There are many things that remain to be done; a non exhaustive list is the following: 1) Hyphenation patterns are complete in the sense that they include all the couples of any two letters of the Coptic alphabet, but they are far from exact; many combinations never appear in real Coptic texts, and I suppose many of the remaining meaningful ones are wrong. Feedback from the Coptic philologists is needed. 2) More magic signs and more nomina sacra are required. 3) The fonts themselves require fine tuning with proper kerning information; at the present stage this is almost totally missing. 4) Many macros for typesetting real philological marks may be borrowed from the extension package teubenr.sty, but since they are meant for typesetting of marked up Greek texts, the philological marks may not be adequate for the Coptic fonts. So, you see, there is a lot to be done, and the above list is just the beginning. Nevertheless this bundle is already usable and the brave ones who will try it might suggest some corrections and improvements. In this case write e-mail messages to claudio dot beccari at gmail dot com. Not necessarily I will acknowledge receipt of your message, but as much as I can, in my free time, I might set your suggestions on the TO-DO list, and maybe I might even release further versions of this bundle with your suggestions really implemented. If somebody wants to take over, just let me know: you are welcome. In 2010 Elie Roux, whom I thank very much, produced a coptic.sty correction for eliminating any refernece to non ASCII characters; therfore the command \� still exists, but the character � is referneced by its ANSI code. This, according to Elie, allows using the UTF8 input encoding. In any case the alias \0 is always there. Claudio Beccari