aboutsummaryrefslogtreecommitdiff
path: root/config.def.h
diff options
context:
space:
mode:
authorRoberto E. Vargas Caballero <k0ga@shike2.com>2012-11-25 09:23:02 +0100
committerRoberto E. Vargas Caballero <k0ga@shike2.com>2012-11-25 09:23:02 +0100
commit172f65436ce14a52842d67b862fdc45f8ff3ada3 (patch)
treec68972acb67be790fc29816359eb814e42bef2ab /config.def.h
parentb26df1d0d3f7791504150820e7c105b20c6b1c3b (diff)
downloadst-172f65436ce14a52842d67b862fdc45f8ff3ada3.tar.gz
st-172f65436ce14a52842d67b862fdc45f8ff3ada3.zip
Add key for toogling numlock handling
Keypad will generate keycodes when keypad application mode is enabled. It can cause problems with some programs like vi, which operates in such mode. This patch change by default don't generate the keycodes never, but this behaviour can be changed using the combination Alt + NumLock. --- config.def.h | 34 ++++++++++++++++++---------------- st.c | 17 +++++++++++++++-- 2 files changed, 33 insertions(+), 18 deletions(-)
Diffstat (limited to 'config.def.h')
-rw-r--r--config.def.h34
1 files changed, 18 insertions, 16 deletions
diff --git a/config.def.h b/config.def.h
index 8543ea2..7c55ef2 100644
--- a/config.def.h
+++ b/config.def.h
@@ -62,6 +62,7 @@ static Shortcut shortcuts[] = {
62 { MODKEY|ShiftMask, XK_Prior, xzoom, {.i = +1} }, 62 { MODKEY|ShiftMask, XK_Prior, xzoom, {.i = +1} },
63 { MODKEY|ShiftMask, XK_Next, xzoom, {.i = -1} }, 63 { MODKEY|ShiftMask, XK_Next, xzoom, {.i = -1} },
64 { ShiftMask, XK_Insert, selpaste, {.i = 0} }, 64 { ShiftMask, XK_Insert, selpaste, {.i = 0} },
65 { MODKEY, XK_Num_Lock, numlock, {.i = 0} },
65}; 66};
66 67
67/* 68/*
@@ -73,6 +74,7 @@ static Shortcut shortcuts[] = {
73 * keypad value: 74 * keypad value:
74 * * 0: no value 75 * * 0: no value
75 * * > 0: keypad application mode enabled 76 * * > 0: keypad application mode enabled
77 * * = 2: term.numlock = 1
76 * * < 0: keypad application mode disabled 78 * * < 0: keypad application mode disabled
77 * cursor value: 79 * cursor value:
78 * * 0: no value 80 * * 0: no value
@@ -123,24 +125,24 @@ static Key key[] = {
123 { XK_KP_Insert, XK_ANY_MOD, "\033[2~", 0, 0, 0}, 125 { XK_KP_Insert, XK_ANY_MOD, "\033[2~", 0, 0, 0},
124 { XK_KP_Delete, ShiftMask, "\033[3;2~", 0, 0, 0}, 126 { XK_KP_Delete, ShiftMask, "\033[3;2~", 0, 0, 0},
125 { XK_KP_Delete, XK_ANY_MOD, "\033[3~", 0, 0, 0}, 127 { XK_KP_Delete, XK_ANY_MOD, "\033[3~", 0, 0, 0},
126 { XK_KP_Multiply, XK_ANY_MOD, "\033Oj", +1, 0, 0}, 128 { XK_KP_Multiply, XK_ANY_MOD, "\033Oj", +2, 0, 0},
127 { XK_KP_Add, XK_ANY_MOD, "\033Ok", +1, 0, 0}, 129 { XK_KP_Add, XK_ANY_MOD, "\033Ok", +2, 0, 0},
128 { XK_KP_Enter, XK_ANY_MOD, "\033OM", +1, 0, 0}, 130 { XK_KP_Enter, XK_ANY_MOD, "\033OM", +2, 0, 0},
129 { XK_KP_Enter, XK_ANY_MOD, "\r", -1, 0, -1}, 131 { XK_KP_Enter, XK_ANY_MOD, "\r", -1, 0, -1},
130 { XK_KP_Enter, XK_ANY_MOD, "\r\n", -1, 0, +1}, 132 { XK_KP_Enter, XK_ANY_MOD, "\r\n", -1, 0, +1},
131 { XK_KP_Subtract, XK_ANY_MOD, "\033Om", +1, 0, 0}, 133 { XK_KP_Subtract, XK_ANY_MOD, "\033Om", +2, 0, 0},
132 { XK_KP_Decimal, XK_ANY_MOD, "\033On", +1, 0, 0}, 134 { XK_KP_Decimal, XK_ANY_MOD, "\033On", +2, 0, 0},
133 { XK_KP_Divide, XK_ANY_MOD, "\033Oo", +1, 0, 0}, 135 { XK_KP_Divide, XK_ANY_MOD, "\033Oo", +2, 0, 0},
134 { XK_KP_0, XK_ANY_MOD, "\033Op", +1, 0, 0}, 136 { XK_KP_0, XK_ANY_MOD, "\033Op", +2, 0, 0},
135 { XK_KP_1, XK_ANY_MOD, "\033Oq", +1, 0, 0}, 137 { XK_KP_1, XK_ANY_MOD, "\033Oq", +2, 0, 0},
136 { XK_KP_2, XK_ANY_MOD, "\033Or", +1, 0, 0}, 138 { XK_KP_2, XK_ANY_MOD, "\033Or", +2, 0, 0},
137 { XK_KP_3, XK_ANY_MOD, "\033Os", +1, 0, 0}, 139 { XK_KP_3, XK_ANY_MOD, "\033Os", +2, 0, 0},
138 { XK_KP_4, XK_ANY_MOD, "\033Ot", +1, 0, 0}, 140 { XK_KP_4, XK_ANY_MOD, "\033Ot", +2, 0, 0},
139 { XK_KP_5, XK_ANY_MOD, "\033Ou", +1, 0, 0}, 141 { XK_KP_5, XK_ANY_MOD, "\033Ou", +2, 0, 0},
140 { XK_KP_6, XK_ANY_MOD, "\033Ov", +1, 0, 0}, 142 { XK_KP_6, XK_ANY_MOD, "\033Ov", +2, 0, 0},
141 { XK_KP_7, XK_ANY_MOD, "\033Ow", +1, 0, 0}, 143 { XK_KP_7, XK_ANY_MOD, "\033Ow", +2, 0, 0},
142 { XK_KP_8, XK_ANY_MOD, "\033Ox", +1, 0, 0}, 144 { XK_KP_8, XK_ANY_MOD, "\033Ox", +2, 0, 0},
143 { XK_KP_9, XK_ANY_MOD, "\033Oy", +1, 0, 0}, 145 { XK_KP_9, XK_ANY_MOD, "\033Oy", +2, 0, 0},
144 { XK_BackSpace, XK_NO_MOD, "\177", 0, 0, 0}, 146 { XK_BackSpace, XK_NO_MOD, "\177", 0, 0, 0},
145 { XK_Up, ShiftMask, "\033[1;2A", 0, 0, 0}, 147 { XK_Up, ShiftMask, "\033[1;2A", 0, 0, 0},
146 { XK_Up, ControlMask, "\033[1;5A", 0, 0, 0}, 148 { XK_Up, ControlMask, "\033[1;5A", 0, 0, 0},