Slavic volume, version 1.0 - by Robin LaPasha -------------------------- Font conversion - Prof. M.J. Connolly and David V. Moffat contributed Mac fonts. I used the Mac Font Converter by Rico Mariani and John O'Neill, available on Fish 138. Richard Sexton sent me some fonts used for the Latin half of the bilingual fonts. I did quite a bit of tweaking, combining, kerning, and adding new sizes. To see the fonts immediately, use a view or show program to look at example1.pic and example2.pic. 1. I remapped some of the fonts to different ASCII values. Font Directories: bilingual - ISOLC fonts are mapped to the "approved" ISO standard for combined "Latin/Cyrillic" use. It's not bad for designing sorting techniques (almost alphabetical for each language/half,) but there's not a proper accent mark. ISOLCserif - 15 pt. ISOLCsans - 11, 13, 15 pt. KOI8 fonts are mapped to (one of) the common Soviet standards. Mostly it's useful if you're on the Listening Comprehension Exercise Network for Russian language exercises. KOI8serif - 15 pt. KOI8sans - 11, 13, 15 pt. cyrillic - Lower 128 - are mapped to directly follow the AATSEEL phonetic/student keyboard layout standards. (i.e. A(65) = A, B = Be, but C = TSe, then D = D etc.) Full Slavic character set fonts: Novgorod - 13, 25 pt. A sans serif font. Suzdal - 16, 32 pt. A thick sans serif font; classy. The upper 128 ASCII values for Suzdal and Novgorod are mapped to EITHER the best phonetic approximation OR where I could find space! I believe that all modern Slavic Cyrillic characters and many Old Church Slavonic characters are represented. Modern Russian character set fonts: Kursk - 15, 28 pt. A cursive font. Moskva - 11, 15, 22, 30 pt. A sans serif font. Poltava - 15, 30 pt. A serif font. The upper 128 ASCII values for Kursk, Moskva, and Poltava are mapped to get accented vowels, plus a few other linguistic/grammatical symbols. latin - Latin - 12, 18, 24 pt. The upper 128 ASCII values for this font were put where I could find space. (The characters diverged from the Latin ISO standard too much for that to be useful.) You can use this font for Latin-based Slavic languages (i.e. Croatian, Polish, Czech, etc.); all "library"-type overstrikes and other odd symbols are available. The overstrikes are set for both lower and upper case. Example: you get "ch" by typing c, then alt-z; "CH" via C, then alt-Z. [That's c-hachek, or, like, "c" with a little bird over it...] Notice that accents FOLLOW the letter. big.cyrillic - kirilica - 160 pt. klasantikva - 105 pt. (less than 128 chars.) Kirilica is based on an Old Church Slavonic manuscript, and klasantikva is short for "klassisticheska antikva" [i.e. classical antique...] Both are cleaned and edited from digitized Bulgarian fonts (if you were wondering where certain other Cyrillic letters were in klasantikva, well, Bulgarian doesn't have some of them.) Again, both are phonetically (or thereabouts) mapped; kirilica uses the upper 128. They could use some cleaning up (not all the same size; an artifact of the digitizing, I suppose,) but make sure to use a font editor that won't damage them. Anyway, they look pretty good in a paint program, printed at 25% of full size (on my printer.) 2. Keymaps are a BIG part of this system. Why? They are nearly all 255 character (or so) fonts. Now, I could have mapped the ASCII values of Kursk, Moskva, and Poltava so that some of the upper values would be available via the dead keys of regular keymaps. However, a.) I still would not get stressed vowels "ja", "ju", or "eh" (reversed). They're vowels too, but there aren't spaces on a regular keyboard mapping. (Try hitting one of the dead keys, then "q" or "[", with usa1. You can get something with alt-q instead of dead-q, but nothing happens for either dead-[ or alt-[.) b.) I could not effectively use the rest of the fonts. 1.) If you think about it, the dead keys in usa1 allow you five overstrikes on six vowels (i.e. if you type alt-f, then "a" you get an acute-accented "a" in usa1, but you can't get an acute-accented "z" that way.) I prefer to be able to use overstrikes above any character, by typing an alt-something after the character. Kursk, Moskva, and Poltava have some built-in "overstricken" (?) characters by typing those characters together with the alt keys, but the other method is available. 2.) I also need to put characters in places used by usa1's dead keys. Suzdal and Novgorod in particular have characters in the upper 128 that map (most logically) to nearly all of the dead keys. [I understand the keymap usa1 well enough to use it as an example; however, I don't intend to exclude other international keymaps.] So, I designed what amounts to a "generic" keymap. [Kodiak Burns has informed me that I've re-invented usa0, the old pre-SetMap keymap.] If you hit the "alt" key and another key at the same time, the ASCII value obtained is the high-bit equivalent of the character key (you add 128 to the character's ASCII value.) The Cyrillic, big.cyrillic, and Latin fonts use this "generic" keymap, and the ASCII values of the fonts are set accordingly. The bilingual fonts, however, use their particular standards for "ASCII" mapping of characters to a certain order within the font. (Actually, it's ISO and KOI mapping, as it turns out.) So, I had to design keymaps to get at the Cyrillic and the Latin letters. I went whole hog, in a sense. The keymap: KOI8 - gives you Latin "on bottom," Russian via alt-key characters. KOI8_russ - gives you Russian on bottom and Latin via alt-keys. [use these with the KOI8 fonts] (There's worse yet! - ) ISO - gives you Latin on bottom and Russian via alt-keys. ISO_cyr - gives you Russian on bottom, characters of the other modern Slavic languages via alt-keys, and Latin on the unused alt-keys (and across the alt'ed numbers...) ISO_russ - gives you Russian on bottom, Latin via alt-keys, and other Slavic characters across the alt'ed numbers. [use these with the ISO fonts] One big warning on these "flip-style" keymaps: do be careful if you're popping in and out of CLI. All of a sudden it can be hard to find the right letters to type in "setmap" again! I may try one other option in the future - some folks have set up bilingual keymaps with the toggle set to the caps lock key. English is unshifted and alt'ed, while the Other language is caps-locked and alt-shifted (or something like that.) (Before KeyMapEd - mentioned below - there were no keymap editors which could define capsable keys.) All of the keymaps - and the fonts, in the case of those using the "generic" keymap - use the phonetic/student keyboard layout rather than the Soviet layout (i.e. based on a Soviet typewriter, or perhaps computer.) [I used to be able to touch-type on a Soviet typewriter, but, it's not like there's a demand for it. Besides, the Yugoslav Cyrillic typewriter keyboard is phonetic-equivalent (mostly) to American. (I don't know how keyboards are in Europe otherwise.)] I could have done things ONE other way - map the fonts' ASCII values alphabetically in their original languages (i.e. Russian A(65) = A, B = B, C = V, D = G) and work up a phonetic keymap for that. But that would still mean using a separate keymap. In addition, deciding where to put the non-Russian Cyrillic characters, plus the archaic characters, plus the accented vowels, and overstrikes, in one or two "alphabetical" ASCII-type layouts could be a nasty chore. If you dare to be different - SetKey 2.0 by Charles Carter is what I used to make the keymaps. The version I used was later than the demo on Fish 70; besides being "real," he has released it to PD. Other folks have reported problems or limitations using it with Amiga 500s or 2000s, though. I tried Edimap by Gilles Gamesh (now on Fish 182) and I'm eagerly awaiting a better chance to test KeyMapEd by Tim Friest (on Fish 193.) I edited these fonts in Calligrapher; you can try touching things up in Fed (on the Extras disk) but don't bother with the large fonts (if over 25 pt., they die nastily.) Tim Robinson's FontEditor on Fish 30 worked the last time I tried it. At least fonts and keymaps can - at least should - be interchangeable. I've tried to arrange mine so that you can always get at the non-alted keys, and you can switch keymaps for the high-bit goodies from an extra CLI shell. Well-behaved programs can handle this. Naughty programs that don't read the upper 128 values of keymaps properly (or fully) don't deserve to be purchased - check that while trying out word processors. (Although, as I mentioned in the font example picture, DPaintII did not obey keymaps, apparently DPaint III does. Progress continues...) Do be careful when copying and using these; keep in mind the programs FixFonts (for moving and copying fonts,) SetMap (for changing the keymaps,) and Assign (for telling your programs where to look for fonts; use it BEFORE running a program.) Have fun with these. I'd like to get connected with others working on the Amiga with Slavic languages projects. Send me your comments on this collection, and any news of your use of it. If you're building a set of Slavic fonts differently, let's swap. (If you're building a set of Postscript Cyrillic fonts for use on the Amiga, I'll beg publicly... and I might whimper for a really good TeX set.) I know darn well that fonts aren't copyrightable stuff (keep in mind that their NAMES are, though,) but I'd like: - to be known as the editor/author/collector of this set; and - to ask that the fonts remain together as a set WITH the keymaps and this file. Thanks to all of the netters who have not only put up with my font obsession, but have contributed programs and advice for building these. Robin LaPasha 3002 Burton Road Durham NC 27704 ruslan@ecsvax.uncecs.edu