The K Desktop Environment

Next Previous Table of Contents

9. Creating a new National Keyboard

All system-wide keyboard files are stored in $KDEDIR/share/apps/kikbd and all personal keyboard files in $HOME/.kde/share/apps/kikbd. Each is identified by its file name excluding the .kimap extension. A personal keyboard file hides a system keyboard file having the same file name (not label).

For creating a new keyboard map you should use one of the existing .kimap files as a template. Each keyboard file has two major sections.

  1. International Keyboard
    In this section the following items can be defined:
    • Authors:a list of authors, separated by commas, in the format "name last_name < email address>";
    • Comment**: a descriptive comment phrase for this keyboard;
    • Language**: the language this keyboard is for;
    • Charset: the charset this keyboard is for;
    • Locale: the locale this keyboard is for;
    • Label*: the label used by kikbd to identify this keyboard.
    * - required
    ** - can be translated to other languages

  2. KeyboardMap
    This section contains mapping from default symbols to two, three or four new symbols in the form:
        keysym<num> = <default sym>,<sym1>,<sym2>,<sym3>,<sym4>,
      
    
    and mapping from key codes to symbols:
        keycode<num> = <key code>,<sym1>,<sym2>,<sym3>,<sym4>,
      
    
    Where num means any unique number, sym means symbol in the form of a hexadecimal number or a form interpreted by X11, keycode means the decimal code, and default sym means the default symbol for this key (before starting kikbd). The first two symbols sym1, sym2 define the national symbols while sym3, sym4 define alternate symbols. It is preferrable to use only keysym definitions.

    Additionally, in this section, you can also specify CapsSymbols as a list of Latin symbols, separated by commas. which kikbd should process during Caps Lock emulation.

After you create and test a new keyboard map, you could submit it to the KDE developer team, or directly to the author or maintainer of kikbd.

Next Previous Table of Contents