Add M-< and M-> for scroll to top and bottom

Mirrored by S-Home and S-End but I guess I'm not documenting those...
weechat-hashes
C. McEnroe 2020-04-07 14:09:29 -04:00
parent 7d62762609
commit 9bc52d7238
2 changed files with 11 additions and 0 deletions

View File

@ -449,6 +449,10 @@ Scroll down a page.
Toggle visibility of filtered messages. Toggle visibility of filtered messages.
.It Ic M-/ .It Ic M-/
Switch to previously selected window. Switch to previously selected window.
.It Ic M-<
Scroll to top.
.It Ic M->
Scroll to bottom.
.It Ic M-a .It Ic M-a
Cycle through unread windows. Cycle through unread windows.
.It Ic M-l .It Ic M-l

7
ui.c
View File

@ -215,6 +215,8 @@ static short colorPair(short fg, short bg) {
X(KeyMetaU, "\33u", NULL) \ X(KeyMetaU, "\33u", NULL) \
X(KeyMetaV, "\33v", NULL) \ X(KeyMetaV, "\33v", NULL) \
X(KeyMetaEnter, "\33\r", "\33\n") \ X(KeyMetaEnter, "\33\r", "\33\n") \
X(KeyMetaGt, "\33>", "\33.") \
X(KeyMetaLt, "\33<", "\33,") \
X(KeyMetaMinus, "\33-", "\33_") \ X(KeyMetaMinus, "\33-", "\33_") \
X(KeyMetaSlash, "\33/", NULL) \ X(KeyMetaSlash, "\33/", NULL) \
X(KeyFocusIn, "\33[I", NULL) \ X(KeyFocusIn, "\33[I", NULL) \
@ -904,6 +906,9 @@ static void keyCode(int code) {
break; case KeyMetaMinus: window->ignore ^= true; reflow(window); break; case KeyMetaMinus: window->ignore ^= true; reflow(window);
break; case KeyMetaSlash: windowShow(windows.swap); break; case KeyMetaSlash: windowShow(windows.swap);
break; case KeyMetaGt: windowScroll(window, -WindowLines);
break; case KeyMetaLt: windowScroll(window, +WindowLines);
break; case KeyMeta0 ... KeyMeta9: uiShowNum(code - KeyMeta0); break; case KeyMeta0 ... KeyMeta9: uiShowNum(code - KeyMeta0);
break; case KeyMetaA: showAuto(); break; case KeyMetaA: showAuto();
break; case KeyMetaB: edit(id, EditPrevWord, 0); break; case KeyMetaB: edit(id, EditPrevWord, 0);
@ -925,6 +930,8 @@ static void keyCode(int code) {
break; case KEY_NPAGE: windowScroll(window, -(PAGE_LINES - 2)); break; case KEY_NPAGE: windowScroll(window, -(PAGE_LINES - 2));
break; case KEY_PPAGE: windowScroll(window, +(PAGE_LINES - 2)); break; case KEY_PPAGE: windowScroll(window, +(PAGE_LINES - 2));
break; case KEY_RIGHT: edit(id, EditNext, 0); break; case KEY_RIGHT: edit(id, EditNext, 0);
break; case KEY_SEND: windowScroll(window, -WindowLines);
break; case KEY_SHOME: windowScroll(window, +WindowLines);
break; case KEY_UP: windowScroll(window, +1); break; case KEY_UP: windowScroll(window, +1);
} }
} }