Files
konsole/data/keyboard-layouts/README-KeyTab
Ahmad Samir 1ec394b9e7 Tweak README-KeyTab and README.keyboard a bit
Summary:
Rename README.KeyTab to README-KeyTab to prevent Konsole from trying to
load it as a keyboard translator file, and fix references to that file
name in other files.

Flesh out README-KeyTab and README.keyboard and reformat them.

Also copy the the original README-KeyTab to README-KeyTab-original,
just in case there's some concept that I misinterpretted/misunderstood.

Reviewers: #konsole, hindenburg

Reviewed By: #konsole, hindenburg

Subscribers: #konsole

Tags: #konsole

Differential Revision: https://phabricator.kde.org/D12032
2018-04-13 08:44:01 -04:00

79 lines
2.9 KiB
Plaintext

[README-KeyTab]
The keytabs shown in the Edit Profile dialog -> Keyboard tab are taken from
*.keytab configuration files located in the system-wide location (typically
/usr/share/applications/konsole on Linux) or the writable location in the
user's home directory (typically ~/.local/share/applications/konsole on Linux).
Keytabs allow users to configure the behavior of konsole on keyboard events,
especially functions keys. Have a look at doc/user/README.keyboard.
The syntax of each entry/rule follows the pattern:
"key" Keyname { ("+"|"-") Modename } ":" (String|Operation)
Key names are those defined in <qnamespace.h> with the "Qt::Key_" prefix
removed. For a list of key names check the Qt::Key enum at:
https://doc.qt.io/qt-5/qt.html#Key-enum
Mode names are:
- Shift : Shift Key pressed
- Alt : Alt Key pressed
- Control : Control Key pressed
( The VT100 emulation has modes that can affect the sequences emitted
by certain keys. Those modes are under control of the client program.
- Newline : affects Return and Enter keys, when set makes them send
both \r and \n control characters; when reset makes them
send \r only.
- Application : affects applications that use the Alternate Screen buffer.
- Ansi : send ANSI escape and control sequences (v.s. sending VT52
escape and control sequences).
Since sending a state to a program that has set the state itself is
positivly wrong and obsolete design, better forget about this nasty
detail. I may well remove this "feature" in a future clean up round. )
A "+" preceding a Modename means the Key/mode is pressed/active respectively.
A "-" preceding a Modename means the Key/mode isn't pressed/active respectively.
If a mode isn't present in a key combination, its state is ignored.
Note that the combination of Key and Modes (set/reset) has to be unique.
This means, that
key A + Shift : "A"
key A : "a"
will not accept the small letter "a" rule as you'd exepct, you'll have
to add a "- Shift" to the latter rule to make it work.
Use the stdout/stderr dianostics of konsole when modifying keytabs to
find problems like these.
Supported operations are
- scrollUpLine : scroll up one line in the history log
- scrollUpPage : scroll up one page in the history log
- scrollDownLine : scroll down one line in the history log
- scrollDownPage : scroll down one page in the history log
- scrollUpToTop : scroll up to the begining of the history log
- scrollDownToBottom : scroll down to the end of the history log
Strings have the syntax of C strings,
one may use the following escapes:
- \E - Escape
- \\ - Backslash
- \" - Double quote
- \t - Tab
- \r - Carriage Return
- \n - New Line
- \b - Backspace
- \xHH - where HH are two hex digits (e.g. \x00 (the NUL character))