From: Mark Jamsek Subject: Re: u/ctrl-u/d/ctrl-d bindings for scrolling in tog To: Christian Weisgerber Cc: gameoftrees@openbsd.org Date: Sun, 19 Jun 2022 15:49:01 +1000 On 22-06-18 09:47pm, Christian Weisgerber wrote: > Mark Jamsek: > > > I don't think the 'B' key maps need to change, but if we want to alias > > Does 'B' in the blame view still make mnemonic sense? > > Previously: > b Reload the blame view with the version of the file as > found in the currently selected line's commit. > B Reload the blame view with the previously blamed commit. > > Now: > c Reload the blame view with the version of the file as > found in the currently selected line's commit. > B Reload the blame view with the previously blamed commit. > > Should that be 'C'? Yes, you're right. I think it should be changed to 'C' too. > > b/f, we need to change 'f'ullscreen. The following patch adds the b/f > > aliases for C-b/C-f, changes blame view 'b' to 'c', and changes the > > fullscreen key map to 'F'. Also removes a couple trailing whitespace. > > Right. > > > [diff] > > ok Same diff but with blame's 'B' keymap now changed to 'C': diff c662152851a8f7f0fa0ce65768cd9119ff826481 a6fc38f5c79ad408330c39ae5dce050b20afdc5c blob - 31dd5084aea96d44619fbb6cccdbd3f12ca27915 blob + ccc38d4c5d675293f415ff2696edfd596fbb3220 --- tog/tog.1 +++ tog/tog.1 @@ -64,7 +64,7 @@ Quit Quit the view which is in focus. .It Cm Tab Switch focus between views. -.It Cm f +.It Cm F Toggle fullscreen mode for a split-screen view. .Nm will automatically use split-screen views if the size of the terminal @@ -114,9 +114,9 @@ Log message moves right on the screen. Scroll log message field to the rightmost position. .It Cm 0 Scroll log message field to the leftmost position. -.It Cm Page-down, Ctrl+f +.It Cm Page-down, Ctrl+f, f Move the selection cursor down one page. -.It Cm Page-up, Ctrl+b +.It Cm Page-up, Ctrl+b, b Move the selection cursor up one page. .It Cm Ctrl+d, d Move the selection cursor down one half page. @@ -239,9 +239,9 @@ Diff output moves right on the screen. Scroll view to the rightmost position. .It Cm 0 Scroll view left to the start of the line. -.It Cm Page-down, Space, Ctrl+f +.It Cm Page-down, Space, Ctrl+f, f Scroll down one page. -.It Cm Page-up, Ctrl+b +.It Cm Page-up, Ctrl+b, b Scroll up one page. .It Cm Ctrl+d, d Scroll down one half page. @@ -320,9 +320,9 @@ File output moves right on the screen. Scroll view to the rightmost position. .It Cm 0 Scroll view left to the start of the line. -.It Cm Page-down, Space, Ctrl+f +.It Cm Page-down, Space, Ctrl+f, f Move the selection cursor down one page. -.It Cm Page-up, Ctrl+b +.It Cm Page-up, Ctrl+b, b Move the selection cursor up one page. .It Cm Ctrl+d, d Move the selection cursor down one half page. @@ -336,7 +336,7 @@ Move the selection cursor to the last line of the file Open a .Cm diff view for the currently selected line's commit. -.It Cm b +.It Cm c Reload the .Cm blame view with the version of the file as found in the currently @@ -346,7 +346,7 @@ Reload the .Cm blame view with the version of the file as found in the parent commit of the currently selected line's commit. -.It Cm B +.It Cm C Reload the .Cm blame view with the previously blamed commit. @@ -403,9 +403,9 @@ are as follows: Move the selection cursor down. .It Cm Up-arrow, k, Ctrl-p Move the selection cursor up. -.It Cm Page-down, Ctrl+f +.It Cm Page-down, Ctrl+f, f Move the selection cursor down one page. -.It Cm Page-up, Ctrl+b +.It Cm Page-up, Ctrl+b, b Move the selection cursor up one page. .It Cm Ctrl+d, d Move the selection cursor down one half page. @@ -477,9 +477,9 @@ are as follows: Move the selection cursor down. .It Cm Up-arrow, k, Ctrl-p Move the selection cursor up. -.It Cm Page-down, Ctrl+f +.It Cm Page-down, Ctrl+f, f Move the selection cursor down one page. -.It Cm Page-up, Ctrl+b +.It Cm Page-up, Ctrl+b, b Move the selection cursor up one page. .It Cm Ctrl+d, d Move the selection cursor down one half page. blob - b8935d8f4d93a4f03c1d8727adb23a6137741acf blob + d375738b1b19d5bba6c0e4fe547d3ddbf4bb8ec9 --- tog/tog.c +++ tog/tog.c @@ -965,7 +965,7 @@ view_input(struct tog_view **new, int *done, struct to case 'Q': *done = 1; break; - case 'f': + case 'F': if (view_is_parent_view(view)) { if (view->child == NULL) break; @@ -2625,6 +2625,7 @@ input_log_view(struct tog_view **new_view, struct tog_ /* FALL THROUGH */ case KEY_PPAGE: case CTRL('b'): + case 'b': if (s->first_displayed_entry == NULL) break; if (TAILQ_FIRST(&s->commits.head) == s->first_displayed_entry) @@ -2677,7 +2678,8 @@ input_log_view(struct tog_view **new_view, struct tog_ nscroll /= 2; /* FALL THROUGH */ case KEY_NPAGE: - case CTRL('f'): { + case CTRL('f'): + case 'f': { struct commit_queue_entry *first; first = s->first_displayed_entry; if (first == NULL) @@ -3187,7 +3189,7 @@ add_matched_line(int *wtotal, const char *line, int wl } if (width0 + w + width > skipcol) break; - w += width; + w += width; i++; } /* draw (visible part of) matched token (if scrolled into it) */ @@ -4057,6 +4059,7 @@ input_diff_view(struct tog_view **new_view, struct tog /* FALL THROUGH */ case KEY_PPAGE: case CTRL('b'): + case 'b': if (s->first_displayed_line == 1) break; i = 0; @@ -4075,6 +4078,7 @@ input_diff_view(struct tog_view **new_view, struct tog /* FALL THROUGH */ case KEY_NPAGE: case CTRL('f'): + case 'f': case ' ': if (s->eof) break; @@ -4999,6 +5003,7 @@ input_blame_view(struct tog_view **new_view, struct to /* FALL THROUGH */ case KEY_PPAGE: case CTRL('b'): + case 'b': if (s->first_displayed_line == 1) { s->selected_line = MAX(1, s->selected_line - nscroll); break; @@ -5019,7 +5024,7 @@ input_blame_view(struct tog_view **new_view, struct to s->blame.nlines) s->first_displayed_line++; break; - case 'b': + case 'c': case 'p': { struct got_object_id *id = NULL; id = get_selected_commit_id(s->blame.lines, s->blame.nlines, @@ -5087,7 +5092,7 @@ input_blame_view(struct tog_view **new_view, struct to break; break; } - case 'B': { + case 'C': { struct got_object_qid *first; first = STAILQ_FIRST(&s->blamed_commits); if (!got_object_id_cmp(&first->id, s->commit_id)) @@ -5157,6 +5162,7 @@ input_blame_view(struct tog_view **new_view, struct to /* FALL THROUGH */ case KEY_NPAGE: case CTRL('f'): + case 'f': case ' ': if (s->last_displayed_line >= s->blame.nlines && s->selected_line >= MIN(s->blame.nlines, @@ -5961,6 +5967,7 @@ input_tree_view(struct tog_view **new_view, struct tog /* FALL THROUGH */ case KEY_PPAGE: case CTRL('b'): + case 'b': if (s->tree == s->root) { if (got_object_tree_get_first_entry(s->tree) == s->first_displayed_entry) @@ -5990,6 +5997,7 @@ input_tree_view(struct tog_view **new_view, struct tog /* FALL THROUGH */ case KEY_NPAGE: case CTRL('f'): + case 'f': if (got_tree_entry_get_next(s->tree, s->last_displayed_entry) == NULL) { /* can't scroll any further; move cursor down */ @@ -6838,6 +6846,7 @@ input_ref_view(struct tog_view **new_view, struct tog_ /* FALL THROUGH */ case KEY_PPAGE: case CTRL('b'): + case 'b': if (s->first_displayed_entry == TAILQ_FIRST(&s->refs)) s->selected -= MIN(nscroll, s->selected); ref_scroll_up(s, MAX(0, nscroll)); @@ -6860,6 +6869,7 @@ input_ref_view(struct tog_view **new_view, struct tog_ /* FALL THROUGH */ case KEY_NPAGE: case CTRL('f'): + case 'f': if (TAILQ_NEXT(s->last_displayed_entry, entry) == NULL) { /* can't scroll any further; move cursor down */ if (s->selected < s->ndisplayed - 1) -- Mark Jamsek GPG: F2FF 13DE 6A06 C471 CA80 E6E2 2930 DC66 86EE CF68