Commits


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@


tog: add horizontal scroll support to the ref view ok op@ and stsp@


fix OB1 in tog ref and tree views causing wrapped lines While here, draw to the last column in tog help. ok op@ and stsp@


don't print empty line when exiting tog Reported and tested by dv: rather than print a new line to avoid clobbering the shell prompt when exiting tog with the alternate screen buffer disabled^, adopt naddy's vi(1) solution by looping through visible views to delete the topmost line, which inserts an empty line at the bottom so we don't need to print an empty line to ensure a clean prompt. ^: xterm -xrm 'XTerm*titeInhibit: 1' or run tog in the console ok naddy@


tog: display action report on user toggleable event If the diff algorithm, ignore whitespace-only changes, force ASCII text diff, show committer/author, or reference sort order keymaps are toggled, report action to the bottom left of screen. Based on initial patch by Mikhail. ok + tweaks op@


tog: fix typo that makes condition always false In view_loop(), we initialise at a refresh rate of one tenth per second before dropping to one second updates; the reduction was never hit due to the typo. Reviewed as part of the following diff adding action reports to user events. ok op@


refactor got log -d and tog diffstat to compute diff once This eliminates the previous performance cost by making 'got log -d' and tog diff view compute the diffstat while building the diff in a temp file like we do with 'got diff -d'. Also, keep the current 'got log -d' UI as per stsp's suggestion. ok stsp@


don't use plural noun after 1 in diffstat total Use singular form when appropriate; for example, turn the top into the bottom: 1 file changed, 1 insertions(+), 1 deletions(-) 1 file changed, 1 insertion(+), 1 deletion(-) ok op@


tog: fix {first,last}_displayed_line dead store Both are already assigned just above in open_diff_view() ok op@


typo: zap double semi-colon


got: minor refactor of got_pathlist_free() API Accept flag parameter to optionally specify which pointers to free. This saves callers looping through the list to free pointers. ok + fix stsp@


got: expand diffstat -d option to 'got diff' Like got log -d, add the switch to 'got diff' to display a diffstat of changes; as per stsp's suggestion, we always include diff output with the diffstat. Disabled in gotwebd (for now :) Includes tweaks from op@ ok stsp@


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@


show from: and via: headers on consecutive lines in 'got log' and 'tog log' ok jamsek


got: implement diffstat for got log and tog diff view Add new got_diff_blob_cb() implementation to compute added/removed line metrics for a given diff. This enables displaying a diffstat with 'got log -d'. As per suggestion from stsp, change tog diff view to display the diffstat by default. ok stsp@


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@


tog: always echo input prompt to bottom left of screen Irrespective of the active view, always echo to the bottom left of the parent view. ok op@


tog: fix typo that breaks log search when in hsplit Ironically, the typo "blocks" log search when in hsplit because we block input on the wrong view! Pass the proper "v" view to nodelay() calls. ok op@


cope with deleted references when reloading the tog log view ok op jamsek


avoid printing harmless errors that can occur when tog exits due to Ctrl-C ok jamsek


fix detection of SIGTERM in tog; this signal was accidentally being ignored ok jamsek


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@


backout Make & command in tog's log view display "searching..." The limit feature is more than just a search operation, tog's man page has been updated accordingly.


tweak view name display in the help screen for clarity


Make & command in tog's log view display "searching..." while loading commits. This command acts like a search operation, and the display should reflect that.