The Greek Input Method (GIM) is similar to the Single-Byte Input Method (SIM), but has been extended to handle both Latin and Greek character sets. This is accomplished by providing two layers or states of keyboard mappings, which correspond to the two character sets.
The keyboard is initially in the Latin input state. However, if the left-shift key is pressed while the left-alt key is held down, the keyboard is put in the Greek input state. The keyboard can be returned to the Latin state by pressing the right-shift key, while the left-alt key is held down. These are locking shift keys, since the state is locked when they are pressed.
While in the Greek state, the input method recognizes the following diacritical characters and valid subsequent characters for diacritical composing.
Greek Composing Characters | |
Keysym | Valid Composing Characters |
Uppercase and Lowercase: | |
dead_acute | alpha, epsilon, eta, iota, omicron, upsilon, omega |
dead_diaeresis | iota, upsilon |
Lowercase Only: | |
dead_accentdiaeresis | iota, upsilon |
In the Latin state, there are no composing diacriticals, and the above keys are treated as simple graphic characters.
The Greek and Single-Byte Input Methods also differ in their handling of illegal diacritical composing sequences. In such cases, the GIM beeps and returns no characters. The SIM does not beep and returns both the diacritical character and a graphic character associated with the invalid key.
Note: The Alt-Graphic (right-alt) key can be used to generate additional characters within each keyboard state.
The GIM uses the keysyms in the XK_LATIN1, XK_GREEK, and XK_MISCELLANY groups.
The preceding keysyms are unique to the input method of this system.
ShiftMask | 0x01 |
LockMask | 0x02 |
ControlMask | 0x04 |
Mod1Mask (Left-Alt) | 0x08 |
Mod2Mask (Right-Alt) | 0x10 |
Greek Layer | 0x20 |
National Language Support Overview for Programming, Input Method Overview.