diff --git a/data/keyboard-layouts/README-KeyTab b/data/keyboard-layouts/README-KeyTab new file mode 100644 --- /dev/null +++ b/data/keyboard-layouts/README-KeyTab @@ -0,0 +1,78 @@ +[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 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)) diff --git a/data/keyboard-layouts/README.KeyTab b/data/keyboard-layouts/README-KeyTab-original rename from data/keyboard-layouts/README.KeyTab rename to data/keyboard-layouts/README-KeyTab-original diff --git a/data/keyboard-layouts/README.KeyTab b/data/keyboard-layouts/README.KeyTab-original copy from data/keyboard-layouts/README.KeyTab copy to data/keyboard-layouts/README.KeyTab-original diff --git a/data/keyboard-layouts/default.keytab b/data/keyboard-layouts/default.keytab --- a/data/keyboard-layouts/default.keytab +++ b/data/keyboard-layouts/default.keytab @@ -1,8 +1,9 @@ # [README.default.Keytab] Default Keyboard Table # -# To customize your keyboard, copy this file to something -# ending with .keytab and change it to meet you needs. -# Please read the README.KeyTab and the README.keyboard +# To customize your keyboard, copy this file to something ending with +# .keytab and change it to meet you needs. +# +# Please read the README-KeyTab and the doc/user/README.keyboard files # in this case. # # -------------------------------------------------------------- diff --git a/doc/user/README.keyboard b/doc/user/README.keyboard --- a/doc/user/README.keyboard +++ b/doc/user/README.keyboard @@ -1,16 +1,17 @@ [README.keyboard] -The *.keytab files (located in $KDEDIR/share/apps/konsole) allow -to configure the keyboard due to your specific environment. +The *.keytab files (located in /usr/share/applications/konsole and +~/.local/share/applications/konsole) allow you to configure the keyboard +to suit your specific environment/requirements. -Beside that you can use them to make the keyboard emit virtually -any escape sequence you want, here a probe of more typical problems -related to keyboards, that can be coped with this way: +Beside that you can use them to make the keyboard emit virtually any +escape sequence you want, here are some notes about the more typical +problems related to keyboards, that can be coped with this way: - BS Hack - While one would expect, that the Backspace key send ASCII - Backspace, this is not the case in many Linux installations. + While one would expect, that the Backspace key send ASCII Backspace, + this is not the case in many Linux installations. The idea behind this hack is to preserve the CTRL-H. @@ -36,9 +37,8 @@ Note that your system is not unlikely to have other keyboard databases which have to be in sync, too (e.g. /etc/inputrc for readline(3)). -If you want to adjust things to your needs, copy one of the -*.keytab files and edit it. When restarted, konsole offers -you this new entry on it's menu. +If you want to adjust things to your needs you can copy one of the *.keytab +files and edit it. The changes will take effect after restarting konsole. -In case your new keytab is likely to suit common needs, -please contribute to konsole by sending me the file. +In case your new keytab is likely to suit common needs, please contribute +to konsole by sending us the file.