summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRoland Walker <walker@pobox.com>2017-07-03 16:15:29 -0400
committerJonas Fonseca <jonas.fonseca@gmail.com>2017-07-04 00:11:45 -0400
commit0c4c0daa11cd51ca7618750959aa8be952f4b4fa (patch)
treed4e7ed34f076750b54daf843376046f96d9cadce
parentd10d970d8e82d9727be47d935770a7e8298c5b3b (diff)
enable Fn keys thru 19, and 6 shifted special keys
-rw-r--r--doc/tigrc.5.adoc7
-rw-r--r--src/keys.c15
2 files changed, 21 insertions, 1 deletions
diff --git a/doc/tigrc.5.adoc b/doc/tigrc.5.adoc
index 48a652c4..9b69f7dd 100644
--- a/doc/tigrc.5.adoc
+++ b/doc/tigrc.5.adoc
@@ -569,7 +569,8 @@ bind to the `<` key.
*<Right>*, *<Up>*, *<Down>*, *<Insert>* or *<Ins>*, *<Delete>* or *<Del>*,
*<Hash>*, *<LessThan>* or *<LT>*, *<Home>*, *<End>*, *<PageUp>* or *<PgUp>*,
*<PageDown>* or *<PgDown>*, *<ScrollBack>* or *<SBack>*, *<ScrollFwd>* or
-*<SFwd>*, *<F1>* ... *<F12>*
+*<SFwd>*, *<ShiftTab>* or *<BackTab>*, *<ShiftLeft>*, *<ShiftRight>*,
+*<ShiftDelete>* or *<ShiftDel>*, *<ShiftHome>*, *<ShiftEnd>*, *<F1>* ... *<F19>*
To define key mappings with the `Ctrl` key, use `<Ctrl-key>`. In addition, key
combos consisting of an initial `Escape` key followed by a normal key value can
@@ -582,6 +583,7 @@ bind main R refresh
bind main <Down> next
bind main <Ctrl-f> scroll-page-down
bind main <Esc>o options
+bind main <ShiftTab> parent
--------------------------------------------------------------------------
Notes
@@ -598,6 +600,9 @@ Notes
- `Ctrl-<Space>` is typically translated to `Ctrl-@`, which is available for
binding.
+- Only some subset of special symbolic keys such as `<ShiftTab>` will be
+ available in any given terminal emulator.
+
- `Ctrl-z` is automatically used for process control and will suspend Tig and
open a subshell (use `fg` to reenter Tig).
diff --git a/src/keys.c b/src/keys.c
index e405320b..f48bdf86 100644
--- a/src/keys.c
+++ b/src/keys.c
@@ -224,10 +224,25 @@ static const struct key_mapping key_mappings[] = {
{ "F10", KEY_F(10) },
{ "F11", KEY_F(11) },
{ "F12", KEY_F(12) },
+ { "F13", KEY_F(13) },
+ { "F14", KEY_F(14) },
+ { "F15", KEY_F(15) },
+ { "F16", KEY_F(16) },
+ { "F17", KEY_F(17) },
+ { "F18", KEY_F(18) },
+ { "F19", KEY_F(19) },
{ "ScrollBack", KEY_SR },
{ "SBack", KEY_SR },
{ "ScrollFwd", KEY_SF },
{ "SFwd", KEY_SF },
+ { "BackTab", KEY_BTAB },
+ { "ShiftTab", KEY_BTAB },
+ { "ShiftLeft", KEY_SLEFT },
+ { "ShiftRight", KEY_SRIGHT },
+ { "ShiftDelete", KEY_SDC },
+ { "ShiftDel", KEY_SDC },
+ { "ShiftHome", KEY_SHOME },
+ { "ShiftEnd", KEY_SEND },
};
static const struct key_mapping *