Extended Latin–Greek–Phonetic Unicode Keyboard Package

For Tavultesoft Keyman, Version 5.0

By Lukas Pietsch

(English version. German version)

This is a package of three keyboard layouts for inputting multilingual text under Windows, designed for philologists and linguists. All three keyboards are fairly heavily packed with deadkeys and AltGr-key combinations in order to make a large set of characters accessible. All three layouts are based on the standard German keyboard layout. People accustomed to keyboards other than the German one will probably find them unintuitive to use. If you prefer a keyboard based on the English layout pattern, I recommend you try the Latin Extended and Greek Polytonic keyboards by David Perry (http://members.telocity.com/~perryd), which are similar in scope to the Latin and Greek ones in this package. If you want keyboards that are compatible with some other national keyboard, I am afraid you will have to write them yourself.

System Requirements

These keyboards will run under all current versions of Windows. You need the keyboard utility “Tavultesoft Keyman” (version 5.0 or above) to use them. You may have found the end-user (“runtime”) version of Keyman already included in this package; otherwise, you can download it for free from www.tavultesoft.com. To get the full functionality, you need a 102-keys hardware keyboard (with eleven keys in the bottom row) as commonly found in Europe, not a 101-keys hardware keyboard as commonly found in the US. (However, provision has been made at least in the Phonetic keyboard to accomodate 101-keys hardware too.)

These keyboards are made for Unicode text. Unfortunately, not all current software can display and store Unicode text, and even worse, under Windows 95/98/ME not even all software that can display Unicode can also deal with Unicode keyboard input. Please find information about Unicode at www.unicode.org, and consult the Tavultesoft website about what current software supports Unicode input with Keyman. Note that MS Word 97 and MS Word 2000 under Windows 95/98/ME do support it, but you need another freely downloadable add-in from Tavultesoft for them, called “WordLink”.

The Latin and Greek keyboards in this package can also be used with non-Unicode software. With such software they will only output the subset of the characters of the Unicode versions which is contained in the Windows codepages (Western European and Greek, respectively). This is still considerably more than the characters accessible on the standard keyboards. Of course, the Greek keyboard will then be restricted to monotonic Greek.

If you find you want to modify these keyboards to adapt them to your personal needs or to a different national basic layout (which I have no objections to), you will also need your own copy of the Keyman compiler (“Keyman Developer”), which is shareware. You can download a free, fully functional trial version from the same website. The source code from which I compiled these keyboards (files with the extension .kmn) can be downloaded with these keyboard files.

This package does not include any fonts. You will need to make sure yourself that you have Unicode fonts installed which support the range of characters you want to use. Almost all current Windows fonts are Unicode fonts, but each contains only some arbitrary subrange of the huge overall character repertoire of Unicode. Most of the characters in the Latin-Extended keyboard, as well as monotonic Greek, will be found in most standard Windows fonts. Currently the best font for polytonic Greek is Palatino Linotype, which comes with Windows 2000. The best font for IPA Phonetic symbols seems to be Lucida Sans Unicode. There is also Arial Unicode, which contains almost all of Unicode and comes with several recent Microsoft products. There are also some other free or shareware Unicode fonts that support large parts of the repertoire of these keyboards, but most of them are inferior to the Microsoft fonts in terms of screen display quality, and some have certain bugs with particular characters. “Code2000” (by James Kass, shareware) and “TITUS Cyberbit Basic” currently offer the largest character repertoire. David Perry (members.telocity.com/~perryd) also offers a free large Unicode font for scholars, “Cardo”, which covers most of the repertoire of the Latin and Greek keyboards together.

Important Note About Installation

There are two ways a Keyman keyboard can be installed on your system. If you just install it with Keyman's own installation mechanism, you will be able to switch to it temporarily from your normal Windows keyboard driver, by clicking on the Keyman icon that will be shown near the bottom right corner of the Windows taskbar. Technically, your normal Windows keyboard driver will continue to run underneath it, as it were.

Alternatively, if you want to work permanently with a Keyman keyboard in all programs, you can make it the standard keyboard for a locale in Windows. The Latin and Greek keyboards in this package are suitable for this. This is done by first installing the keyboard in Keyman and then selecting it in the Windows Control Panel, under “Keyboards”–“Language”. These keyboards will show up in the list as “German Extended Unicode” and “Greek Extended Unicode” respectively. The Keyman keyboard will then be loaded automatically whenever you choose that locale as the Windows keyboard language. In this second case, owing to certain technical restrictions in the current version of Keyman (5.0), your normal Windows keyboard driver will stop working and instead a US system keyboard driver will start running underneath the Keyman keyboard.

Unfortunately, Keyman keyboards will work differently depending on what Windows system keyboard driver is active underneath while you use them. This means that in order to make sure you get the same functionality with both installation methods, I have had to provide two separate versions of each keyboard. Please install only one set of these at a time, according to the following rules:

The files LPGermanUni.kmn, LPGreekUni.kmn and LPPhoneticUni.kmn are versions designed to be used over a German system keyboard driver. Please install only these if your normal Windows keyboard driver is a German one and you only want to use them for temporary switching.

If you should decide you want to use one of these keyboards permanently as your standard keyboard for German or Greek in all programs, or if your normal Windows keyboard driver is a US English one, then please uninstall the first set of Keyman keyboards and instead install the files called LPGermanUniE.kmn, LPGreekUniE.kmn and LPPhoneticUniE.kmn. These are designed to be used over a US English system keyboard driver. The behaviour of each keyboard will be the same in both cases; either way it will emulate the basic key layout of a German keyboard.

If you use any of these keyboards in any other constellation, with a different Windows keyboard driver underneath, I cannot predict the outcome. Probably all the keys will be there, but they will be found in unexpected places. Please note that running these Keyman keyboards over a French, Spanish or whatever other system keyboard driver will not automatically cause characters to be in the place you'd expect them on a French, Spanish etcetera keyboard!

The problem of different behaviour with the two different installation methods will probably be resolved in a future release of Keyman (5.1 and above). Then, it will probably be sufficient to have only the one version for the German system driver.

Description of the Keyboards

The Latin Keyboard (LPGermanUni)

The basic layout of the Latin keyboard is exactly the same as that of the standard German keyboard. There is just one exception: The top-leftmost key, in shift state, instead of producing the degree symbol (°), acts as a deadkey that forms superscript versions of other characters, such as ¹ ² ³ ª º. It will produce the degree symbol if you press <Space> after it. Note that these superscript characters are characters of their own, they are not equivalent to choosing superscript formatting in a word processor and then typing the normal characters. You will find the same function in this place in all three keyboards. In addition, on the Unicode version of the Latin keyboard, pressing <superscript> twice and then another key will output a subscript character. Please consult the charts at the end of this document to see for which characters this and other deadkey features work.

Another point where this keyboard differs from the normal German one is that I chose to make the Capslock key behave like it does on most foreign keyboards (not as on mechanical typewriters as the usual German one does). This means that Capslock affects only alphabetic keys, not the other keys. It also means that Capslock state can be toggled off only by pressing Capslock again, not by pressing Shift.

You can access many additional characters by pressing AltGr or Shift-AltGr together with a key. These include language-specific characters such as ø, archaic letters such as Wynn or Yogh, and some special typographical characters. The characters accessible in the Non-Unicode version of the keyboard are a subset of those in the Unicode keyboard.

This keyboard also has quite a number of additional deadkeys, i.e. accent keys that you press before another key to get an accented or otherwise modified character. Apart from the normal acute, grave and circumflex deadkeys, which are also found on the standard German keyboard, and the superscript deadkey already mentioned, there are tilde, haček and diaeresis deadkeys on the top-leftmost and top-rightmost keys. AltGr-Hyphen and Shift-AltGr-Hyphen are deadkeys for breve and macron. Next to these, on the Full-stop key, there are deadkeys for dot above (ė,ċ,ŀ) and dot below (ḥ,ḍ). The dot-above deadkey pressed before i will produce the dotless ı (but ı and İ can also be produced more easily with <AltGr-i> and <Shift-AltGr-i>). Several remaining diacritics can be accessed by AltGr-Comma. Depending on the key that follows, it will produce a character with cedilla (ç,ş), with ring above (å,ů) or a stroke (ø,ł,đ). Above it on Shift-AltGr-Comma there is a deadkey for ogonek (ą,ę) and comma below (ţ,ş). Superscript + macron + letter will output a letter with underbar, and superscript + tilde + letter will output a letter with tilde below.

The Latin-Extended B block in Unicode also contains a small number of precomposed characters with two accents, such as ǖǗǘǙǚ. You can access these by pressing both deadkeys one after the other, in any order. However, I have not yet made provision for the large number of double-accent characters contained in the “Additional Latin Extended” block, which are used for Vietnamese.

Another special deadkey serves for accessing different typographical variants of quotation marks. It is located at AltGr-2, on the same key where the normal double quote (") character is. When you type AltGr-2 followed by another number key (whithout AltGr), you get one of the following quotation marks: „ “ ” ‚ ‘ ’ ‹ « » ›.

The last special deadkey is the ligature deadkey, on Shift-AltGr above the acute/grave key. When pressed between two other letters, it will unite them into one ligated character. This works for the typographical ligatures fi, fl, ff, ffl, ffi, ſt; for the digraph characters IJ, ij, DZ, Dz, dz, Æ, æ, Œ, œ (but note that the last four also have AltGr keys of their own; æ even has two of them); for the vulgar fractions ½ ⅓ ¼ ⅕ ⅙ ⅛ ⅖ ⅗ ⅘ ⅚ ⅜ ⅝ ⅞ (type the <lig> key between the two numbers, with no slash); for the combined exclamation/question marks ‼, ⁉, ⁈, ‽; for the emoticons and (type the <lig> key between colon and opening/closing bracket); and for the trademark sign ™ (type the <lig> key between <t> and <m>). Note that I'm not saying I find all of these characters equally useful and would recommend their use. The ligature deadkey has yet another special function. If you press it after a base character and before any of the accent deadkeys, it will output that accent as a combining (“floating”) diacritic, i.e. a separate character, over the preceding letter. This may be useful in exceptional cases where you need a character-diacritic combination that has no precomposed (one-character) representation in Unicode. In all other cases, the accent deadkeys will output only precomposed characters.

Some notes about special characters: AltGr-Space will produce not a normal space but a non-breaking space (nice for phrases such as “p. 12”, where you don't want the line broken after the “p.”). Shift-AltGr-Space will output a wide (“Em”) space. AltGr-m is an Em dash, AltGr-n is an En dash. AltGr-b should be a non-breaking hyphen, but this doesn't seem to be working in Word 97. The characters on Shift-AltGr-( and Shift-AltGr-) are modifier letter left/right half ring, as used in transliterations of Arabic. The character on Shift-AltGr-6 is the Tironian and sign.

The Greek Keyboard (LPGreekUni)

The layout of the basic letters of the Greek alphabet is a bit different from that on the standard Greek keyboards. However, except for Θ, I believe it corresponds to the Greek-Latin transliteration scheme of Beta Code, so I hope people will find it fairly intuitive to use. The deadkeys for monotonic Greek (tonos, diaresis, and tonos-plus-diaresis) are as on the standard Greek keyboards. All other keys are again as on the German keyboard, except that in the place of German ß you get the middle dot (άνω τελεία). The acute/grave and the circumflex keys have no deadkey functions in the Ansi version of the Greek keyboard, but the AltGr-2 key again works as a quotation mark selector and Shift-Circumflex works as a superscript deadkey just like on the Latin one.

The Unicode (polytonic) version of the Greek keyboard has the following additional keys. Acute (οξία), grave (βαρία), and circumflex (περισπωμένη) are in the same places as on the Latin keyboard. The same is true for the macron and brevis deadkeys as well as for the dot-above and dot-below deadkeys. Asper (δασία) and lenis (ψιλή) are on the Q and Ü keys, respectively. You can type the accent keys, the breathing keys and the diaeresis key in any order before a vowel and they will combine automatically. AltGr-Comma (where the cedilla is on the Latin keyboard) produces the Iota subscript. Note that unlike the other diacritics keys, this one as well as the dot-above and dot-below keys must be pressed after the base letter. Shift-AltGr-Comma has a spacing Iota Prosgegrammeni. Shift-Ü has the lower numeral sign (κεραία) and AltGr-Ü has the upper numeral sign.

Note that the circumflex key will of course produce not the Latin but the Greek circumflex, which may be realized as either a tilde or an inverted breve depending on the font used. Note also that there are separate keys for the monotonic “tonos” and the polytonic “oxia”, which actually produce different characters. This is a problematic area in Unicode: tonos and oxia letters have separate codepoints but are at the same time stated to be “canonically equivalent”. They therefore really ought to be treated the same and look the same, and in some fonts they do, but in many other fonts the two actually have different shapes (the tonos being represented by a vertical stroke). As long as this confusion persists, I strongly recommend taking great care to keep the two apart, using the “tonos” keys only for monotonic Greek and the “oxia” keys only for polytonic Greek. The iota subscript after a capital letter may be realized as either a spacing iota glyph or a diacritic iota‑subscript glyph, depending on the font you are using. If you want to force it to be shown as a spacing glyph, you can use the prosgegrammeni letter on the Shift-AltGr-Comma key (which may look like a full‑size Iota or a smaller glyph), or the normal Iota letter.

Some non-standard combinations of letters and diacritics (for instance capital letters with only a perispomeni but no breathing) have no precomposed representation in Unicode. For these, the keyboard will output two‑character combinations; either a spacing diacritic plus letter (for uppercase letters) or letter plus combining (“floating”) diacritic (for lowercase letters). Note that I have chosen this solution also for capital Rho with dasia, although this does have a precomposed character in Unicode. This is because Rho with dasia is shown incorrectly in my favorite polytonic Greek font, Palatino Linotype. The dot above and dot below will always be realized as combining diacritics in this keyboard and can be used with any letter. This is different from the Latin keyboard, which never uses precomposed characters unless you force them with the <lig> deadkey.

The AltGr keys on the Ansi version of the Greek keyboard are basically like those on the Latin keyboard. The Unicode version in addition has a number of special Greek characters such as stigma, sampi, qoppa and digamma, as well as Coptic letters, lunate sigma, and the kai ligature. Note that not all fonts may have distinct uppercase and lowercase versions of some of these. There is some confusion over this owing to recent and prospective changes in Unicode.

In Unicode there is also a letter called Greek yot. This is apparently meant to be used in Greek historical linguistics to render the palatal glide in pre-literary Greek. The reason why it has its own codepoint appears to be that some writers render this sound with the Latin letter <j> while others render it with the Latin letter <y>. The Greek yot character apparently is meant to stand for either; it can be realized as either a <j> glyph or a <y> glyph depending on the font. (I have only seen <j> glyphs so far, though.) If that is indeed true, then I feel that its use is not a very good idea at all. Most authors will probably want to stay in control over whether their readers will see the one letter or the other. That is why I haven't included the Greek yot character in this keyboard but instead put in the simple Ascii characters Latin Y and Latin J.

The Phonetic Keyboard (LPPhoneticUni)

This keyboard makes accessible almost all symbols listed in the Handbook of the International Phonetic Association (Cambridge 1999), except the special series for disordered speech and some symbols for tones. It has all the basic Ascii characters in their normal places (with the exception of <g>, see below) and the most common of the other IPA symbols in the Shift, AltGr, and Shift-AltGr rows above them. Many other keys have some function as diacritics or other modifier keys. There is one fundamental difference to the Latin and Greek keyboards: whereas in the latter you type the modifier keys before the base letter, in the phonetic keyboard you always type them after. Sorry if this causes confusion: it was firstly easier to implement, and secondly I actually found it easier to type, because this way you get immediate feedback after every key you type, whereas with a deadkey you always have to wait another keypress until you find out if you typed the correct one.

Note also that while the other two keyboards only use precomposed characters (with some exceptions), the phonetic keyboard freely uses combining-diacritics combinations, whenever it can't find a precomposed character for a given combination. The choice between precomposed and combining characters is made automatically. Also, for some diacritics the keyboard automatically chooses between placement above and placement below the letter, according to whether a letter has a descender or not. Thus, for indicating voicelessness, <g> + combining ring will come out as ɡ̊, whereas <n> + combining ring will be .

Some modifier keys do not produce diacritics but modify the shape of the letter itself in a systematic way. This goes for the <superscript> key (which is like in the Latin and Greek keyboard but works with quite a number of letters more), for the <smallcaps> key, the <implosive> key, the <retroflex> key, and the <curly> key. You will note that among the characters produced by these modifier keys, some of the more common ones also have alternative keying methods through Shift or AltGr keys.

There is a special feature to access some vowel letters and <r> variants that otherwise didn't fit anywhere. Pressing any of the letters <a, e, i, o, u, r> with a subsequent number will output a variant letter. The idea is that there is a mnemonic relation between the position of that letter in the IPA chart, and the position of the number in the numeric keypad. Again, many of these letters also have alternative keys somewhere in the Shift or AltGr ranges.

Some special notes: the <g> key produces not Ascii g but the IPA character opentail ɡ (U+0261); however, the Ascii g is alternatively accessible on <AltGr-g>.The exclamation mark key <!> is not the Ascii character but the IPA letter for the click sound (U+01C3). Likewise, the apostrophe key <'> is not the Ascii apostrophe but U+02BC (modifier letter apostrophe), to be used as a mark for ejective, and in the place of the colon there is the length mark (triangular colon). The vertical bars over the <K> and the <P> keys are the IPA letters for clicks, whereas the similar-looking vertical bars on the <> key and on AltGr-4 and AltGr-5 are the ones for intonation groups. These AltGr combinations are provided to mirror the functionality of the <> (bottom-left) key, in case somebody needs to use this keyboard with hardware that doesn't have that key. The <ü> key carries the stress marks (U+02C8 modifier letter vertical line and U+02CC modifier letter low vertical line), on the same place where the Latin keyboard has U+02B9 (modifier letter prime) and the Greek one has the Greek numeric signs, all of which are similar-looking but different characters. If you want to use the prime sign as an alternative way to mark stress, as it used to be done in some English dictionaries for instance, then you are out of luck.


The Latin Keyboard—Non-Unicode Version

Green colouring: deadkeys.

Accented characters: ÁÉÍÓÚÝáéíóúý–ÀÈÌÒÙỲàèìòùỳ–ÂÊÎÔÛŶâêîôûŷ–ÄËÏÖÜŸäëïöüÿ–ÑÃÕñãõ–Šš–Çç–Åå

The Latin Keyboard—Unicode Version

Deadkeys in the Latin Keyboard. (Blue colouring: characters accessible also in the non-Unicode version.)

Other accented characters:

The Greek Keyboard—Non-Unicode Version

The Greek Keyboard—Unicode Version

Green: deadkeys. Yellow: postmodifier key.

The Phonetic Keyboard

Yellow: postmodifier keys

Modifier Keys in the Phonetic Keyboard:

Base-Letter Plus Number Combinations in the Phonetic Keyboard:

I hope you will find these keyboards useful. If you have observations to make or suggestions for improvements, please feel free to contact me (e-mail to: lukas.pietsch (at) uni-hamburg.de)).