Download raw body.
u/ctrl-u/d/ctrl-d bindings for scrolling in tog
On 22-06-16 10:29pm, Stefan Sperling wrote: > On Thu, Jun 16, 2022 at 10:18:09PM +0200, Christian Weisgerber wrote: > > Stefan Sperling: > > > > > I have committed this. And I hope everyone is happy now :) > > > > If ^D/^U have aliases d/u for compatibility with less, then ^F/^B > > should also have f/b aliases. (I just realized I actually use 'b' > > in less.) That would also imply that the blame view's 'b' needs > > to move to a different key. > > Sure. It looks like 'c' (commit) would be available to replace 'b'? > > There are also 'B' shortcuts (Shift+b); do any of these need to change? > I don't think the 'B' key maps need to change, but if we want to alias 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. diff 95d136acd37c706e1f4874b6606e5b70917a0d79 /home/mark/src/git/got-current blob - 31dd5084aea96d44619fbb6cccdbd3f12ca27915 file + tog/tog.1 --- 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 @@ -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 - 36dceb28705dddb875b725d732b6dea27d63158d file + tog/tog.c --- tog/tog.c +++ tog/tog.c @@ -958,7 +958,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; @@ -1263,7 +1263,7 @@ expand_tab(char **ptr, const char *src) return NULL; } -/* +/* * Skip leading nscroll columns of a wide character string. * Returns the index to the first character of the scrolled string. */ @@ -2639,6 +2639,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) @@ -2691,7 +2692,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) @@ -3193,7 +3195,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) */ @@ -4062,6 +4064,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; @@ -4080,6 +4083,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; @@ -5004,6 +5008,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; @@ -5024,7 +5029,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, @@ -5160,6 +5165,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, @@ -5960,6 +5966,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) @@ -5989,6 +5996,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 */ @@ -6831,6 +6839,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)); @@ -6853,6 +6862,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 <fnc.bsdbox.org> GPG: F2FF 13DE 6A06 C471 CA80 E6E2 2930 DC66 86EE CF68
u/ctrl-u/d/ctrl-d bindings for scrolling in tog