Commit Briefs

Mark Jamsek

tog: make patience the default diff algorithm

As discussed on IRC. It makes nicer diffs and the performance hit should only be noticeable with the odd large diff. It might also be a motivator in trying to speed up the patience implementation. ok stsp@


Mark Jamsek

tog: show work tree base commit marker in log view

If tog is invoked in a work tree, prefix the base commit log message summary line with a '*' if the work tree is up-to-date, and with a '~' if the base commit is not up-to-date with respect to the branch tip or it contains mixed commits. While here, plug a couple worktree leaks in cmd_ref() and cmd_tree(). ok stsp@


Mark Jamsek

tog: add support for commit keywords

Allow keywords as arguments to options and operands for the blame, diff, log, and tree commands. Also, return 1 when exiting tog with error rather than 0 so regress can discern success from failure. ok stsp@


Mark Jamsek

tog: add horizontal scroll support to the tree view

Suggested by op. tog now supports hscroll in all views so move corresponding keymap docs in tog(1) to global space (this was already the case in tog runtime help). While here, remove some copypasta with a new subroutine to handle hscroll input. ok op@ and stsp@


Omar Polo

sort ENVIRONMENT entries in got.1 and tog.1

ok jamsek


Mark Jamsek

tog: add mutt-like =/* keymaps as home/end aliases

Also, separate g/G from home/end in the manual and runtime help text as only the former accept a prefixed count modifier. Based on initial diff from Mikhail. ok stsp@


Stefan Sperling

make 'tog log' display the committer handle by default, '@' switches to author

People coming from CVS might not expect names of patch contributers to show up in commit history listings, so make things easy for them. discussed with op@



Omar Polo

sync usage with reality

The -h and -V/--version flags must be given before the command; with those flags the command is actually optional, but don't over-complicate the usage string with these nitpicks. ok/improvements stsp@



Mark Jamsek

tog: implement runtime help accessible via H,F1 keymaps

Original idea inspired from discussion with tb, tobhe, and stsp at g2k22: display view-specific help, with option to toggle display of full key map reference when {H,F1} is pressed again inside the help view. Includes improvements suggested by stsp. ok stsp@


Mark Jamsek

tog: add new log view limit feature to filter commits

Use the & key map to enter a pattern with which to limit the displayed commits to those matching the provided pattern; similar to less(1) and mutt's limit feature. Includes various tweaks from op. ok plus fixes from op@


Omar Polo

use Xo/Xc in the man pages

Patch by Josiah Frentsos; ok kn@


Stefan Sperling

Group options in accordance with style(9)

patch by Josiah Frentsos


Mark Jamsek

tog: keymaps to jump to next/prev file/hunk in the diff

Add () and {} key maps to navigate to the previous and next file or hunk in the diff. This required changing Got's diff API to collect line type metadata in addition to the line offsets already produced as prompted by stsp. ok stsp@