The K Desktop Environment

Next Previous Table of Contents

5. 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 (not label) name.

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 comma separated list of authors in the format "name last_name < email address>";
    • Comment** - comment for this keyboard;
    • Language** - language this keyboard for;
    • Charset - charset this keyboard for;
    • Locale - locale this keyboard for;
    • Label* - 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 hex decimal number or a form interpreted by X11, key code means decimal code, and default sym means 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 comma separated Latin symbols which KiKbd should process during CapsLock emulation.

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

Next Previous Table of Contents