Code

Remove remains from the obsoleted toggle-date-short action
[tig.git] / tig.c
diff --git a/tig.c b/tig.c
index a501db044b3c718dac45dbffb4f8b30f02faccb9..1d6312c45f9bbd2868295f5a8f92d3455d3ec5b4 100644 (file)
--- a/tig.c
+++ b/tig.c
@@ -114,6 +114,7 @@ static void report(const char *msg, ...);
 #define S_ISGITLINK(mode) (((mode) & S_IFMT) == 0160000)
 
 /* Some ASCII-shorthands fitted into the ncurses namespace. */
+#define KEY_CTL(x)     ((x) & 0x1f) /* KEY_CTL(A) == ^A == \1 */
 #define KEY_TAB                '\t'
 #define KEY_RETURN     '\r'
 #define KEY_ESC                27
@@ -1135,6 +1136,7 @@ io_run_load(const char **argv, const char *separators,
        REQ_(MOVE_LAST_LINE,    "Move cursor to last line"), \
        \
        REQ_GROUP("Scrolling") \
+       REQ_(SCROLL_FIRST_COL,  "Scroll to the first line columns"), \
        REQ_(SCROLL_LEFT,       "Scroll two columns left"), \
        REQ_(SCROLL_RIGHT,      "Scroll two columns right"), \
        REQ_(SCROLL_LINE_UP,    "Scroll one line up"), \
@@ -1152,7 +1154,6 @@ io_run_load(const char **argv, const char *separators,
        REQ_(OPTIONS,           "Open option menu"), \
        REQ_(TOGGLE_LINENO,     "Toggle line numbers"), \
        REQ_(TOGGLE_DATE,       "Toggle date display"), \
-       REQ_(TOGGLE_DATE_SHORT, "Toggle short (date-only) dates"), \
        REQ_(TOGGLE_AUTHOR,     "Toggle author display"), \
        REQ_(TOGGLE_REV_GRAPH,  "Toggle revision graph visualization"), \
        REQ_(TOGGLE_REFS,       "Toggle reference display (tags/branches)"), \
@@ -1437,7 +1438,9 @@ static struct keybinding default_keybindings[] = {
        { KEY_TAB,      REQ_VIEW_NEXT },
        { KEY_RETURN,   REQ_ENTER },
        { KEY_UP,       REQ_PREVIOUS },
+       { KEY_CTL('P'), REQ_PREVIOUS },
        { KEY_DOWN,     REQ_NEXT },
+       { KEY_CTL('N'), REQ_NEXT },
        { 'R',          REQ_REFRESH },
        { KEY_F(5),     REQ_REFRESH },
        { 'O',          REQ_MAXIMIZE },
@@ -1448,16 +1451,21 @@ static struct keybinding default_keybindings[] = {
        { KEY_HOME,     REQ_MOVE_FIRST_LINE },
        { KEY_END,      REQ_MOVE_LAST_LINE },
        { KEY_NPAGE,    REQ_MOVE_PAGE_DOWN },
+       { KEY_CTL('D'), REQ_MOVE_PAGE_DOWN },
        { ' ',          REQ_MOVE_PAGE_DOWN },
        { KEY_PPAGE,    REQ_MOVE_PAGE_UP },
+       { KEY_CTL('U'), REQ_MOVE_PAGE_UP },
        { 'b',          REQ_MOVE_PAGE_UP },
        { '-',          REQ_MOVE_PAGE_UP },
 
        /* Scrolling */
+       { '|',          REQ_SCROLL_FIRST_COL },
        { KEY_LEFT,     REQ_SCROLL_LEFT },
        { KEY_RIGHT,    REQ_SCROLL_RIGHT },
        { KEY_IC,       REQ_SCROLL_LINE_UP },
+       { KEY_CTL('Y'), REQ_SCROLL_LINE_UP },
        { KEY_DC,       REQ_SCROLL_LINE_DOWN },
+       { KEY_CTL('E'), REQ_SCROLL_LINE_DOWN },
        { 'w',          REQ_SCROLL_PAGE_UP },
        { 's',          REQ_SCROLL_PAGE_DOWN },
 
@@ -1472,6 +1480,7 @@ static struct keybinding default_keybindings[] = {
        { 'z',          REQ_STOP_LOADING },
        { 'v',          REQ_SHOW_VERSION },
        { 'r',          REQ_SCREEN_REDRAW },
+       { KEY_CTL('L'), REQ_SCREEN_REDRAW },
        { 'o',          REQ_OPTIONS },
        { '.',          REQ_TOGGLE_LINENO },
        { 'D',          REQ_TOGGLE_DATE },
@@ -2894,6 +2903,11 @@ scroll_view(struct view *view, enum request request)
        assert(view_is_displayed(view));
 
        switch (request) {
+       case REQ_SCROLL_FIRST_COL:
+               view->yoffset = 0;
+               redraw_view_from(view, 0);
+               report("");
+               return;
        case REQ_SCROLL_LEFT:
                if (view->yoffset == 0) {
                        report("Cannot scroll beyond the first column");
@@ -3688,6 +3702,7 @@ view_driver(struct view *view, enum request request)
                move_view(view, request);
                break;
 
+       case REQ_SCROLL_FIRST_COL:
        case REQ_SCROLL_LEFT:
        case REQ_SCROLL_RIGHT:
        case REQ_SCROLL_LINE_DOWN: