Commits
- Commit:
7483826edb3332b2f49e9dfa9515a2a097f61d60
- From:
- Mark Jamsek <mark@jamsek.dev>
- Date:
release tog_io regress mock term resources in main()
ok stsp@
- Commit:
098596c5bf9520ed39f9a34e4733b6256d2ab453
- From:
- Stefan Sperling <stsp@stsp.name>
- Date:
make tog regress run with pledge active
ok jamsek
- Commit:
af21bb7e28a5a337eb50bfd364a1e1640c6f97b1
- From:
- Mark Jamsek <mark@jamsek.dev>
- Date:
tog: implement automated test harness
Add framework for scripting tog tests by capturing screen dumps to compare
with expected output. Includes some preliminary log view tests but lots more
tests are needed to cover diff, blame, tree, ref, and help views.
ok stsp@
- Commit:
8c28a2abbc4aeeb588826ad0010267d507e71ff8
- From:
- Mikhail <mp39590@gmail.com>
- Via:
- Mark Jamsek <mark@jamsek.dev>
- Date:
tog: resume blame and diff search from the first line
In diff and blame views, if the user scrolls up during a search, resume
search from the first displayed line--not the current match. This makes
sense in these views as the "cursor" or current line is the first line.
Patch by Mikhail.
ok op@
- Commit:
5822e79e39a8777984e08b5d89a8c55d6aa0356d
- From:
- Omar Polo <op@omarpolo.com>
- Date:
include sha2.h too where sha1.h is included
In preparation for wide sha256 support; stsp@ agrees. Change done
mechanically with
find . -iname \*.[cy] -exec sam {} +
X ,x/<sha1\.h>/i/\n#include <sha2.h>
- Commit:
5afebbd1b6bcfecf69d25e367e95c9906245fcf5
- From:
- Stefan Sperling <stsp@stsp.name>
- Via:
- Mark Jamsek <mark@jamsek.dev>
- Date:
fix tog diff between arbitrary commits
Don't assume commit info is always written. This is only true when diffing a
commit against (one of) its direct parent(s). Otherwise we perform an invalid
read on a tmp got_diff_line array and end up passing bogus offsets to fseeko().
Bug found and fixed by stsp with a minor tweak by me.
ok jamsek for stsp's initial diff
ok stsp@
- Commit:
1fa0d17d767f8e443af3b4493f3f2af0e759dda9
- From:
- Omar Polo <op@omarpolo.com>
- Date:
got/tog/gotadmin: pledge earlier
In the case of tog move setlocale(3) before pledge(2), as suggested by
stsp.
ok stsp@
- Commit:
602eda794f1d6ffa7bf52408686191499e971da3
- From:
- Mark Jamsek <mark@jamsek.dev>
- Date:
tog: reset 1 second refresh rate after starting search
This fixes an issue reported by Mikhail where CPU usage continuously
increases if search is started after the refresh rate has dropped from
100ms to 1s by resetting the 1s refresh rate if search is started after
fast initialisation has finished. This is not needed in limit_log_view()
because the 1s refresh rate is reset in draw_commits() once the screen
is redrawn (i.e., commits_needed == 0).
Tested by and based on initial patch from Mikhail.
ok stsp@
- Commit:
d627976f5ceada12169aa74630bbc0fd9ce071b7
- From:
- Mark Jamsek <mark@jamsek.dev>
- Date:
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@
- Commit:
0ed6bc9021ade98ba6b1574847e83aec980a398e
- From:
- Mark Jamsek <mark@jamsek.dev>
- Date:
tog: add horizontal scroll support to the ref view
ok op@ and stsp@
- Commit:
b637f33f3da5508384cbe4b360c8ef37ce0c1811
- From:
- Mark Jamsek <mark@jamsek.dev>
- Date:
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@
- Commit:
dc2c33447cc70129447c35401081e46c06e66d38
- From:
- Mark Jamsek <mark@jamsek.dev>
- Date:
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@
- Commit:
3f6c66148db9beccfaaa0138fcff4b84cb99ec5a
- From:
- Mark Jamsek <mark@jamsek.dev>
- Date:
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@
- Commit:
388b24d60f37266ab8fbe53238f25ec75935b324
- From:
- Mark Jamsek <mark@jamsek.dev>
- Date:
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@
- Commit:
1f3405c91dec0b4eb48df5156751b5ef6add3f37
- From:
- Mark Jamsek <mark@jamsek.dev>
- Date:
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@
- Commit:
65dedee0a2cddb92e5184e594424e1d42420e8b0
- From:
- Mark Jamsek <mark@jamsek.dev>
- Date:
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@
- Commit:
2e6043e87514d1a49e1c8a037d7c4e20869b07ad
- From:
- Mark Jamsek <mark@jamsek.dev>
- Date:
tog: fix {first,last}_displayed_line dead store
Both are already assigned just above in open_diff_view()
ok op@
- Commit:
d0407b8677a44f0789c2f4cd238db49b3a28d6b1
- From:
- Mark Jamsek <mark@jamsek.dev>
- Date:
typo: zap double semi-colon
- Commit:
d8bacb933720b8819f0c4e76b004775aa1885b9b
- From:
- Mark Jamsek <mark@jamsek.dev>
- Date:
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@
- Commit:
a76e88e58fb716d5dded83442b153b60687283cb
- From:
- Mark Jamsek <mark@jamsek.dev>
- Date:
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@
- Commit:
0b3f028dffa4ecc7aa72dc9132d53e9d056cc36f
- From:
- Mikhail <mp39590@gmail.com>
- Via:
- Mark Jamsek <mark@jamsek.dev>
- Date:
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@
- Commit:
1a99e0b4097b26cac736de07239a3be7589a48f7
- From:
- Stefan Sperling <stsp@stsp.name>
- Date:
show from: and via: headers on consecutive lines in 'got log' and 'tog log'
ok jamsek
- Commit:
5191b70b5b2e123aadd88aeafe2e2cfc0958c327
- From:
- Mark Jamsek <mark@jamsek.dev>
- Date:
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@
- Commit:
3bf00f2542ea6e7825f52c155e5f3f5fecb136e3
- From:
- Stefan Sperling <stsp@stsp.name>
- Date:
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@
- Commit:
9d0feb8b5d4a20276efaf3f29df59ade82cd38aa
- From:
- Mark Jamsek <mark@jamsek.dev>
- Date:
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@