1
1

bindings: hard-bind the zap function to M-Del (Alt+Delete)

So that the function is available in a default setup.

Signed-off-by: Brand Huntsman <alpha@qzx.com>
Этот коммит содержится в:
Brand Huntsman 2018-10-24 03:17:28 -06:00 коммит произвёл Benno Schulenberg
родитель ae3ec1784d
Коммит 252f14796e
7 изменённых файлов: 16 добавлений и 1 удалений

Просмотреть файл

@ -1161,6 +1161,7 @@ current cursor position.
@item zap @item zap
Throw away the current line (or the marked region). Throw away the current line (or the marked region).
(This function is bound by default to <Meta+Delete>.)
@item cutwordleft @item cutwordleft
Cuts from the cursor position to the beginning of the preceding word. Cuts from the cursor position to the beginning of the preceding word.

Просмотреть файл

@ -512,6 +512,7 @@ current cursor position.
.TP .TP
.B zap .B zap
Throw away the current line (or the marked region). Throw away the current line (or the marked region).
(This function is bound by default to <Meta+Delete>.)
.TP .TP
.B cutwordleft .B cutwordleft
Cuts from the cursor position to the beginning of the preceding word. Cuts from the cursor position to the beginning of the preceding word.

Просмотреть файл

@ -76,6 +76,7 @@ int shiftleft, shiftright, shiftup, shiftdown;
int shiftcontrolleft, shiftcontrolright, shiftcontrolup, shiftcontroldown; int shiftcontrolleft, shiftcontrolright, shiftcontrolup, shiftcontroldown;
int shiftcontrolhome, shiftcontrolend; int shiftcontrolhome, shiftcontrolend;
int altleft, altright, altup, altdown; int altleft, altright, altup, altdown;
int altdelete;
int shiftaltleft, shiftaltright, shiftaltup, shiftaltdown; int shiftaltleft, shiftaltright, shiftaltup, shiftaltdown;
#endif #endif
@ -1156,6 +1157,7 @@ void shortcut_init(void)
add_to_sclist(MMAIN, "M-E", 0, do_redo, 0); add_to_sclist(MMAIN, "M-E", 0, do_redo, 0);
add_to_sclist(MMAIN, "Sh-^Del", CONTROL_SHIFT_DELETE, do_cut_prev_word, 0); add_to_sclist(MMAIN, "Sh-^Del", CONTROL_SHIFT_DELETE, do_cut_prev_word, 0);
add_to_sclist(MMAIN, "^Del", CONTROL_DELETE, do_cut_next_word, 0); add_to_sclist(MMAIN, "^Del", CONTROL_DELETE, do_cut_next_word, 0);
add_to_sclist(MMAIN, "M-Del", ALT_DELETE, zap_text, 0);
#endif #endif
#ifdef ENABLE_WORDCOMPLETION #ifdef ENABLE_WORDCOMPLETION
add_to_sclist(MMAIN, "^]", 0, complete_a_word, 0); add_to_sclist(MMAIN, "^]", 0, complete_a_word, 0);

Просмотреть файл

@ -2596,6 +2596,7 @@ int main(int argc, char **argv)
altright = get_keycode("kRIT3", ALT_RIGHT); altright = get_keycode("kRIT3", ALT_RIGHT);
altup = get_keycode("kUP3", ALT_UP); altup = get_keycode("kUP3", ALT_UP);
altdown = get_keycode("kDN3", ALT_DOWN); altdown = get_keycode("kDN3", ALT_DOWN);
altdelete = get_keycode("kDC3", ALT_DELETE);
shiftaltleft = get_keycode("kLFT4", SHIFT_ALT_LEFT); shiftaltleft = get_keycode("kLFT4", SHIFT_ALT_LEFT);
shiftaltright = get_keycode("kRIT4", SHIFT_ALT_RIGHT); shiftaltright = get_keycode("kRIT4", SHIFT_ALT_RIGHT);

Просмотреть файл

@ -594,6 +594,7 @@ enum
#define ALT_RIGHT 0x422 #define ALT_RIGHT 0x422
#define ALT_UP 0x423 #define ALT_UP 0x423
#define ALT_DOWN 0x424 #define ALT_DOWN 0x424
#define ALT_DELETE 0x427
#define SHIFT_ALT_LEFT 0x431 #define SHIFT_ALT_LEFT 0x431
#define SHIFT_ALT_RIGHT 0x432 #define SHIFT_ALT_RIGHT 0x432
#define SHIFT_ALT_UP 0x433 #define SHIFT_ALT_UP 0x433

Просмотреть файл

@ -67,6 +67,7 @@ extern int shiftcontrolup, shiftcontroldown;
extern int shiftcontrolhome, shiftcontrolend; extern int shiftcontrolhome, shiftcontrolend;
extern int altleft, altright; extern int altleft, altright;
extern int altup, altdown; extern int altup, altdown;
extern int altdelete;
extern int shiftaltleft, shiftaltright; extern int shiftaltleft, shiftaltright;
extern int shiftaltup, shiftaltdown; extern int shiftaltup, shiftaltdown;
#endif #endif

Просмотреть файл

@ -576,7 +576,10 @@ int parse_kbinput(WINDOW *win)
return ALT_UP; return ALT_UP;
else if (retval == altdown) else if (retval == altdown)
return ALT_DOWN; return ALT_DOWN;
else if (retval == shiftaltleft) { else if (retval == altdelete) {
meta_key = TRUE;
return ALT_DELETE;
} else if (retval == shiftaltleft) {
shift_held = TRUE; shift_held = TRUE;
return KEY_HOME; return KEY_HOME;
} else if (retval == shiftaltright) { } else if (retval == shiftaltright) {
@ -609,6 +612,11 @@ int parse_kbinput(WINDOW *win)
/* Are both Shift and Ctrl being held while Delete is pressed? */ /* Are both Shift and Ctrl being held while Delete is pressed? */
if ((modifiers & 0x05) == 0x05 && retval == KEY_DC) if ((modifiers & 0x05) == 0x05 && retval == KEY_DC)
return CONTROL_SHIFT_DELETE; return CONTROL_SHIFT_DELETE;
/* Is Meta being held while Delete is pressed? */
if (modifiers == 0x08 && retval == KEY_DC) {
meta_key = TRUE;
return ALT_DELETE;
}
#endif #endif
/* Is Ctrl being held? */ /* Is Ctrl being held? */
if (modifiers & 0x04) { if (modifiers & 0x04) {