Improve managment of view->ref and the title line
This removes a blob view specific hack needed for keeping the title line
synchronized with the current blob ID. It further also changes the pager
view to show the actual command that was run, regardless of whether
a commit line has been hovered.
This removes a blob view specific hack needed for keeping the title line
synchronized with the current blob ID. It further also changes the pager
view to show the actual command that was run, regardless of whether
a commit line has been hovered.
Be more paranoid about paths when updating the tree view
Shell quote the path always.
Shell quote the path always.
move_view: fix view->offset overflow bug
Reproducable by opening the tree view, then maximizing the blob view,
move up, and then closing the blob view, causing the view->offset to
have "wrapped around" and nothing to be displayed in the tree view.
The invalid update of view->offset only happend when moving
non-displayed views. Instead use the checked scroll_steps variable
instead of the steps variable. Add a guarding assert after the update.
Reproducable by opening the tree view, then maximizing the blob view,
move up, and then closing the blob view, causing the view->offset to
have "wrapped around" and nothing to be displayed in the tree view.
The invalid update of view->offset only happend when moving
non-displayed views. Instead use the checked scroll_steps variable
instead of the steps variable. Add a guarding assert after the update.
Introduce add_line_text to simplify pager based rendering
Fix revision graph visualization during incremental updating
This caused certain commit lines in the main view to not have have a
visual revision graph.
The reason is that revision graph visualization requires knowledge about
the parent commit. This causes a further one-off needed to be redrawn
for incremental updates.
This caused certain commit lines in the main view to not have have a
visual revision graph.
The reason is that revision graph visualization requires knowledge about
the parent commit. This causes a further one-off needed to be redrawn
for incremental updates.
Add TODO item about diff chunk staging/unstaging
Requested by Pasky.
Requested by Pasky.
Make it possible to install man pages and html files separately
[ Fixed typo and finally corrected the manual.html dependency on
manual.toc. --jonas ]
[ Fixed typo and finally corrected the manual.html dependency on
manual.toc. --jonas ]
tig-0.6.git
Bump the version number to 0.6
Oops, remove -liconv from LDFLAGS
Disable show-rev-graph by default
It can be enabled by adding
set show-rev-graph = yes
to ~/.tigrc or toggled by pressing 'g' when in the main viewer.
It can be enabled by adding
set show-rev-graph = yes
to ~/.tigrc or toggled by pressing 'g' when in the main viewer.
Merge with master
Improve handling of remotes
Hightlight remotes similar to how tags are highlighted.
Colors are configurable via main-remote.
Hightlight remotes similar to how tags are highlighted.
Colors are configurable via main-remote.
TODO: use autoconf to detect newer git and git-config availability
Make tig handle GIT_DIR better
The problem was caused by load_refs() calling "git-ls-remote ." completely
ignoring GIT_DIR. This is fixed by using git-rev-parse --git-dir to extract
the path to the requested git repository.
The problem was caused by load_refs() calling "git-ls-remote ." completely
ignoring GIT_DIR. This is fixed by using git-rev-parse --git-dir to extract
the path to the requested git repository.
Drop --stat usage from the main command assembled during option parsing
This is a follow up to commit fa187d6c87100b0c5d626eceb4369eef79176138
which removes one more useless use of --stat, which is very costly
especially for the main view.
A big thanks to Miciah for reporting this.
This is a follow up to commit fa187d6c87100b0c5d626eceb4369eef79176138
which removes one more useless use of --stat, which is very costly
especially for the main view.
A big thanks to Miciah for reporting this.
Add note about using autoconf to detect iconv(3) presence in libc
... and other build dependencies.
... and other build dependencies.
Fix parameter warning for iconv(3)
[ This reverts commit d9c49e6ec76ac311bbe9a1d0d3699ff4be79e64f that tried
to fix compile warning on Mac OS X. ]
Signed-off-by: Horst H. von Brand <vonbrand@inf.utfsm.cl>
Signed-off-by: Jonas Fonseca <fonseca@diku.dk>
[ This reverts commit d9c49e6ec76ac311bbe9a1d0d3699ff4be79e64f that tried
to fix compile warning on Mac OS X. ]
Signed-off-by: Horst H. von Brand <vonbrand@inf.utfsm.cl>
Signed-off-by: Jonas Fonseca <fonseca@diku.dk>
Fix SITES URLs; promote git://repo.or.cz/tig.git mirror more
Discard error messages from git-describe
Fix commit author line parsing for when the name is empty
This is also a nice cleanup so the code uses chomp_string() instead of
"custom" removal of spaces.
This is also a nice cleanup so the code uses chomp_string() instead of
"custom" removal of spaces.
Merge with master
Never split the tree view when opening another tree view
The resulting bogus display[] state ment that the blob view was not
initialized causing segmentation faults in the redrawing code.
Reported by Alexey Tourbin <at@altlinux.ru>
The resulting bogus display[] state ment that the blob view was not
initialized causing segmentation faults in the redrawing code.
Reported by Alexey Tourbin <at@altlinux.ru>
Cast second arg to iconv to remove warning
main_read: handle titles that start with whitespace
Increase commit.title size from 75 to 128
Courtesy of Dmitry Levin, my current aterm session has COLUMNS=141
(1280x1024 with standard 9x15 font). So in the main view I can see
some commit headlines truncated. Changing hedline size from 75 to 128
characters seems to be reasonable.
Courtesy of Dmitry Levin, my current aterm session has COLUMNS=141
(1280x1024 with standard 9x15 font). So in the main view I can see
some commit headlines truncated. Changing hedline size from 75 to 128
characters seems to be reasonable.
Hardwire ERR to mean REQ_NONE in the main loop
add_keybinding: always allocate the new keybinding
Fixes infinite loop repoted by Miciah. Also simply continue when wgetch
returns ERR (-1) instead of calling get_keybinding() etc.
Fixes infinite loop repoted by Miciah. Also simply continue when wgetch
returns ERR (-1) instead of calling get_keybinding() etc.
tig-0.5.git
Crap, forgot to update the VERSION string again.
Crap, forgot to update the VERSION string again.
SITES: Point to pasky's git proxy repo.or.cz
INSTALL: mention possible iconv problems and workarounds
manual: document the tree/blob environment variables
Always clear the status window after prompting
Use wclrtoeol instead of werase
Fix clearing of the status window after prompting
parse_option: check for '-' first and break if it is not an option
Improve the "input mode" so the cursor is correctly positioned
add_keybinding: plug memory leak
TODO: repository status view, better text-input support
tigrc(5): mention tree/blob view actions; use dash in favour of underscore
Run the documentation through aspell
push_rev_graph: iterate all graph revs when looking for duplicates
Now atleast there will not be unconnected lines at the end of the graph.
Now atleast there will not be unconnected lines at the end of the graph.
BUGS: Merge locale support with utf8-only bug, add horizontal scrolling
Merge with master
Abbreviate the view reference in the view title for small widths
update_view_title: format load seconds as part of the state string
update_view_title: use string_format_from instead of wprintw
A simple fix of the bad wrapping bugs
This was surprisingly simple to fix by just turning off scrolling in
draw_view_line. From the BUGS file:
- If the screen width is very small the main view can draw outside the
current view causing bad wrapping. Same goes for title and status
windows.
- The cursor can wrap-around on the last line and cause the window to
scroll.
This was surprisingly simple to fix by just turning off scrolling in
draw_view_line. From the BUGS file:
- If the screen width is very small the main view can draw outside the
current view causing bad wrapping. Same goes for title and status
windows.
- The cursor can wrap-around on the last line and cause the window to
scroll.
update_display_cursor: take view as arg
Make the rev graph visualization have a one rev look-ahead
update_rev_graph: move code to prepare_rev_graph
Allow view readers to 'finalize' by calling with NULL line before closing
append_to_rev_graph: use local variable
Always draw the space between end of rev graph and start of commit title
The rev graph may have been increased so the old title should be
overwritten.
The rev graph may have been increased so the old title should be
overwritten.
Refactor (separator, line) chtype management to use 'fillers'
More graph_parent_is_merge usage
draw_rev_graph: refactor stuff to get_rev_graph_symbol
Improve comments
Use 'graph' instead of 'stack' in the rev graph code
Move rev graph code to own section
Move stuff to reset_rev_graph and rename it to done_rev_graph
Simplify the update_rev_graph end-game
Add graph_parent_is_merge
Now it actually starts looking like something
Refactor graph drawing
Remove fprintf stuff
More cleanups
Refector stuff into draw_rev_graph
Some more refactoring and cleanups
Cracking
Minor cleanups
Version 1
SIZEOF_REV introduced: 41 bytes of pure madness!
Minor cleanups
Oops, always update the tree view ref
Fix updating of the blob ref and the blob view ref
So now pressing 'f' on a tree link won't open a blank blob view. Also, the
blob reference shown in the title bar is always up to date.
So now pressing 'f' on a tree link won't open a blank blob view. Also, the
blob reference shown in the title bar is always up to date.
Also color Acked-by lines
Fix redrawing of old current line
Hopefully the last of all this sloppy bug fixing of the recent cleanups.
Hopefully the last of all this sloppy bug fixing of the recent cleanups.
Only split the tree view when the tree view is visible
move_view: drop redraw arg and handle backgrounded moves
do_scroll_view: drop redraw arg
This redraw thing should be fixed in move_view since this is not relevant
for scroll_view.
This redraw thing should be fixed in move_view since this is not relevant
for scroll_view.
do_scroll_view: minor refactoring of the current line updating
search_view: use opt_search directly instead of through an argument
Remove some old cruft that was clearing hidden lines at the end
This was used for the first attempt at fixing the bug where the cursor
wraps around on the last line and causes the window to scroll.
This was used for the first attempt at fixing the bug where the cursor
wraps around on the last line and causes the window to scroll.
Introduce selected flag and use it for refacter wclrtoeol usage
This is used when clearing the old current line.
This is used when clearing the old current line.
Add selected arg to the view draw operation
Refactor current line activation to new select view operation
Fix tree viewing again; introduced by string safety patch
Make view->regex into a pointer
Fix git-describe reference adding when there are no tags and thus no output
Improve string buffer copy safety
Hrmpf, fix one more default keybinding clash, this time the blob view
By default, it is now bound to 'f'.
By default, it is now bound to 'f'.
Review all string_format users and use string_format instead of snprintf
Move the current line to the first entry in the tree view
Use ICONV_NONE instead of (iconv_t) -1
Remove redundant ending ';'
manual: mention the tree/blob views
Fix default keybinding clash for 'n' between find-next and toggle-lineno
The toggle-lineno is now bound to '.' by default.
The toggle-lineno is now bound to '.' by default.
Use size_t instead of int for string_* functions