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.
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.
KeyboardMap This section contains mapping from default symbols to two, three or four new symbols in the form:
1 keysym<num> = <default sym>,<sym1>,<sym2>,<sym3>,<sym4>, 2 |
1 keycode<num> = <key code>,<sym1>,<sym2>,<sym3>,<sym4>, 2 |
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.