Introduction

The purpose of this document is to provide concise and definitive information required for implimentation of two SERA derived computer keyboard input methods for Ge'ez (aka Ethiopic) script. It is also the goal of this document is to be complete and practical enough that developers can implement the described methods readily.

SERA Based IMs

SERA was was designed to be a balance between what would be easy to type and easy read in an ASCII environment. As such, SERA is not optimized for either purpose independently. Working in a true Ge'ez environment SERA looses its relavance altogether. In a partial Ge'ez environment where we might have an English keyboard and an Ge'ez editor or keyboard driver, the keyboard aspects of SERA become relevant again and we may want to consider the optimizations that we refrained from earlier. It is these optimizations that the two methods presented here are aimed at achieving.

Principles followed by both methods:
  1. Keystrokes are intuitive and follow what natural phonemic associations the user would have already made on the target keyboard.
  2. A letter appears for every keystroke.
  3. Default punctuation system is Ge'ez.
  4. Default numeral system is Western.
  5. Default space character is ASCII space (0x20). Ge'ez word space (U+1361) can be entered with SHIFT + SPACEBAR.
  6. Availability of keyboard native punctuation.

Language Considerations

Tigrigna and most other languages follow a stricter writing convention than Amharic (which has more speakers) when it comes to forming words with "a" (U+12A0) and "ha" syllables (U+1200, U+1210, U+1280). As a result U+12A0 is rarely used in Tigrigna in favor of U+12A3. This is reversed in Amharic where U+12A0 is favored over U+12A3. Both characters represent a glottal "a" in both languages and the SERA input methods map the character to the "a" key and the less prefered form maps to "A" as per the orthographic convetion of the language.

A practice in Eritrean Tigrigna is accomodated by allowing the "?" key to default to U+1367.

Tables

The notation used in the tables are meant to follow closely the conventions used in "Keyman" configuration files. In most cases the data in the "Sequence" column may be pasted directly into a Keyman 5.x configuration source file:

The table follows Unicode for syllabic series then orders characters in an ``event sequence'' ordering. That is, in the sequence that the user would experience glyph changes on the screen as s/he is keying them in.

The character entity names are derived from the traditional Ge'ez names. A full table of the characters is presented here


SHIFT-SERA

The SHIFT-SERA input method is intended for the experienced SERA user who is already comfortable composing with SERA in ASCII environments. Full SERA is supported and the user can easily switch between a Ge'ez and ASCII editor without changing their typeing behavior. A few short cuts are added to make typeing faster and to make it less strainful on the hands and wrists:

  1. Bang-bang input style for the phonetically redundant syllables.
  2. In the Hamis form "e + e" composition is allowed as a short cut for "E".

The name "Shift-SERA" borrows the "Shift-JIS" name scheme in case you were wondering.


SERA-EZ

The SERA-EZ input method does not assume any prior knowledge of SERA transliteration and offers a simpler system for someone typing in Ethiopic for the first time. In particular a fuzzy logic is applied to vowel input to allow redundant forms of intuitive entry logic. SERA-EZ also applies a few more simplifications to SHIFT-SERA: SERA-EZ is the best all-around input method for users coming from the widest range of experience levels and when only one Ethiopic input method can be made available.

  1. Vowels are case insensitive for entering the vowel component of a syllable.
  2. ` is abandoned and no longer has a special meaning.
  3. ' replaces ` for numeral entry.
  4. A double strike of lowercase "w" is an alternative to upper case "W".
  5. Vowel rotation. Continuously striking a vowel key repeated rotates through applicable character compositions as per the frequency list in the target language.
  6. "Other 'o'" logic: "o + o" is an alternative to "W + e", this stems from the common confusion between the U+12AE and U+12B0 glyphs and the U+120E and U+1310 glyphs in particular.


SERA-EZ+

The SERA-EZ+ input method is for the intermediately experience person or for someone coming from the Shift-SERA background who wants the ease of use of the SERA-EZ method without some of the over simplifications. Most notably the uppercase "E" key is not redundant for lowercase "e" and can be used to compose fith form syllables (this being the feature missed most by Shift-SERA users).

  1. "E" returns for composition of the fifth (Hamis) form vowels.
  2. "U+12A5 + a" is the sequence for composing U+12D0 instead of U+12A3.


Advanced IM Considerations

When an input system is capable of more than simple keystroke mappings there are some advanced features that users would find useful in the entry and editing process:

Decomposition:
The back space key reverses character composition while charcter is active.
 
Ge'ez Space Mode:
A function key or menu item is available to set Ge'ez Wordspace (U+1361) as the default space character.
 
Space Exchanger:
A function key or menu item to convert space characters in a highlighted region between scripts.
 
Vowel Editor:
A function key to reactivate the character beneath the cursor so that the vowel component of the syllable may be updated, decomposition ala back space is also available.
 
Ge'ez Numeral Mode:
Like the "Ge'ez Space Mode" a mode to set the Ge'ez digits as the default when the digits are entered from the keyboard.
 
"Smart Numbers":
Intelligence is used during a Ge'ez numeral composition to allow Ge'ez numerals to be entered using the more familair logic of western numerals (An article with a sample algorithm is here).

Sample Implementations

Emacs offers a sample implementation of the Shift-SERA input method. Sample implementations for both input methods is provided in the MS Windows environment with the Tavultesoft Keyman 5.0 keyboard manager. The keyboard files needed by Keyman are available with source from the links below: