|xBase and Clipper language compatible compiler|
|Prev||Chapter 8. Terminals, keyboard, mouse, localization||Next|
CLIP applications have two keyboard drivers: ANSI-mode and scan-mode.
In the ANSI-mode ansi-codes of the keys are accepted from terminal, and two modificators - Ctrl-J, Ctrl-K are used for extended possibilities.
Modificator change key code for CLIP application. For example: pushing key 1 yield code 49, pushing Ctrl-J,1 yield code 376, pushing Ctrl-K,1 also yield code 376. Modificator Ctrl-J works the same as ALT, and modificator Ctrl-K works the same as CTRL but not with all keys.
More advanced keyboard mode is scan-mode. In this mode terminal passes to the host scan-codes of pushed and released keys. All key combinations are available in the case of correct keymap description. There is even possibility to enlist code of symbol using "Alt+enlisted_at_digital_keyboard_code"! In this case description of used console layout (/usr/share/keymaps/*) is used.
In order for CLIP application to be able to use scan-mode it is necessary to generate keyboard description for desired keymap using $CLIPROOT/keymaps/genmap.sh utility; to put this description in $CLIPROOT/keymaps and to register CLIP_KEYMAP in the file with used terminal description in $CLIPROOT/term directory (see above about terminals).
As terminal with scan-mode capability one may use linux-console or our terminal emulator STelnel (download at ftp://ftp.itk.ru/pub/telnet)
In order to use capabilities of "advanced" terminal run stelnet as follows:
stelnet -s -t linux-stelnet host_name
and launch CLIP application as follows:
export TERM=linux-stelnet my_clip_app export TERM=linux