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
BUGS: Merge locale support with utf8-only bug, add horizontal scrolling
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
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
Reintroduce foreach_view and use it to fix background loading
Like the main view, when you after start-up switches to the
tree view.
Also spreads some more asserts to verify guard that no view other than
those being displayed updates their screen.
Like the main view, when you after start-up switches to the
tree view.
Also spreads some more asserts to verify guard that no view other than
those being displayed updates their screen.
Rename foreach_view to foreach_displayed_view
Add support for tree and blob view
No command line options have been added to directly enter the tree/blob
views, since that would require a much more complex option parsing because
it would no longer be possible to rely on git's option parsing.
Default keybindings are:
't' show tree view
'b' show blob view
No command line options have been added to directly enter the tree/blob
views, since that would require a much more complex option parsing because
it would no longer be possible to rely on git's option parsing.
Default keybindings are:
't' show tree view
'b' show blob view
tig(1): Do not differentiate between git (show|log|diff) options
... they all basically use the same option parser, so ...
... they all basically use the same option parser, so ...
Reformat the state variable list (opt_*)
Add support for searching using regex
For commits the title, author, and displayed date string is searchable.
Search text is not highlighted, the current line is simply used to jump
around and show which line matched.
Default keybindings:
'/' search forward
'?' search backward
'n' find next
'N' find previous
Note, this means that '?' no longer displays the help view, just use 'h'.
For commits the title, author, and displayed date string is searchable.
Search text is not highlighted, the current line is simply used to jump
around and show which line matched.
Default keybindings:
'/' search forward
'?' search backward
'n' find next
'N' find previous
Note, this means that '?' no longer displays the help view, just use 'h'.
Replace screen-update action with noop action named "none"
Promote it as a way to unbind built-in default key bindings.
Promote it as a way to unbind built-in default key bindings.
read_prompt: return static allocated buffer; move out exec mode setup
read_prompt: take prompt 'name' as arg
SIZEOF_STR: introduced and use instead of 1024, also replaces SIZEOF_CMD
Add poor man's "show most recent tag" by using git-describe
In the diff view, the "Refs:" lines will now sport the output of
git-describe by appending it as the last reference to the line.
Now, it should probably be optional and I mostly added it because I wanted
to do a little tig hacking. Anyway, let's hope it will be useful.
In the diff view, the "Refs:" lines will now sport the output of
git-describe by appending it as the last reference to the line.
Now, it should probably be optional and I mostly added it because I wanted
to do a little tig hacking. Anyway, let's hope it will be useful.
add_pager_refs: rename local line data pointer to commit_id
Add .gitignore file
prompt: make ':show <id>' use the diff view
Being able to have the same diff open twice is not very useful.
Being able to have the same diff open twice is not very useful.
Add support for converting from git encoding to locale encoding
Pass --root to git-show so the diff command will show the initial commit
Silence stderr for all view commands
When quickly scrolling through commits with the split diff view, they was
spewing 'Broken pipe' messages onto the screen.
When quickly scrolling through commits with the split diff view, they was
spewing 'Broken pipe' messages onto the screen.
Improve handling of 'bogus' author lines
If no author name is in the ident line fall-back to use the author email.
Set to "Unknown" if neither is found.
If no author name is in the ident line fall-back to use the author email.
Set to "Unknown" if neither is found.
Create directories during make install
"In install there should be also mkdir -p $(DESTDIR)$(bindir)." --witekfl.
"In install there should be also mkdir -p $(DESTDIR)$(bindir)." --witekfl.
Check the value returned by fopen() during display initialization
12:12 < kahmalo> Opening /dev/tty may fail; what does newterm do then?
20:15 < Miciah> fonseca: You always gotta check the return value of fopen. Silly head.
12:12 < kahmalo> Opening /dev/tty may fail; what does newterm do then?
20:15 < Miciah> fonseca: You always gotta check the return value of fopen. Silly head.
No need to use --stat for the default TIG_MAIN_CMD
My plans to use it to add special categorization/highlighting to commits
never became interesting. Now the complete history of the grafted ELinks'
repo loads in 4 seconds instead of some 240 seconds.
My plans to use it to add special categorization/highlighting to commits
never became interesting. Now the complete history of the grafted ELinks'
repo loads in 4 seconds instead of some 240 seconds.
tig-0.4.git
A little late updating of the VERSION symbol.
A little late updating of the VERSION symbol.
Merge with ssh://brok.diku.dk/~/tig
tigrc(5): Fix keybinding headers
Use docbook to build manual.pdf; clean *.xml files
Add sync-docs rule to update docs in the release branch
Manual: fix page up keys
Add manual link to SITES; improve/fix SEE ALSO sections
CSS fix: s/monospaced/monospace/
Use tables for the listing of default keybindings
Documentation update
Brings tigrc(5) into sync. A small fix in INSTALL.
Brings tigrc(5) into sync. A small fix in INSTALL.
Add "Hash" key name mapped to "#"; Don't use ";" as a comment character
Allow strings to be enclosed in either ' or "
So now you can use both:
set commit-encoding = "UTF-8"
set commit-encoding = 'UTF-8'
set commit-encoding = UTF-8
So now you can use both:
set commit-encoding = "UTF-8"
set commit-encoding = 'UTF-8'
set commit-encoding = UTF-8
Make prompt use internal user input reader
This allows it to be used while loading. Also, it will make it possible to
support more advanced editing facilities like history, completion etc.
needed for future search support at least.
It's still very primitive ...
This allows it to be used while loading. Also, it will make it possible to
support more advanced editing facilities like history, completion etc.
needed for future search support at least.
It's still very primitive ...
Merge with ssh://diku/~/tig
Config: improve error reporting and do a few cleanups and simplifications
Rename "encoding" option to "commit-encoding"
Install HTML files into $(prefix)/share/doc/tig
Add ToC to the tig manual
Misc doc improvements
Add support for keybindings
The syntax is
bind <keymap> <key> <request>
Keybindings are resolved by first looking in the keymap of the active view,
then in the generic keymap, and finally in the built-in default keybindings.
Examples to put in ~/.tigrc:
bind main w scroll-line-up
bind main s scroll-line-down
bind diff a previous
bind diff d next
bind diff b move-first-line
bind generic g view-next
The syntax is
bind <keymap> <key> <request>
Keybindings are resolved by first looking in the keymap of the active view,
then in the generic keymap, and finally in the built-in default keybindings.
Examples to put in ~/.tigrc:
bind main w scroll-line-up
bind main s scroll-line-down
bind diff a previous
bind diff d next
bind diff b move-first-line
bind generic g view-next
Rename keymap to keybinding, get_request to get_keybinding
Add default configuration file
Add special string comparer for gracefully parsing ~/.tigrc identifiers
Establish "Open view" section
Rename load_help_page to open_help_view and move it up
Also use view->ops->read() instead of pager_read().
Also use view->ops->read() instead of pager_read().
Move keybinding stuff up after line stuff
Support set command in ~/.tigrc; allows a few options to be configured
Simplify the option value tokenization by doing it one place
Factor out set_option_color from set_option
Make declaration of die() specify the __NORETURN attribute
Avoids warnings with gcc 3.3.5.
Avoids warnings with gcc 3.3.5.
Improve error reporting for unknown options
It will now also show usage help.
It will now also show usage help.
Add feature request for showing nearest branch heads or tags for a commit
Requested by Junio.
Requested by Junio.
Makefile: make customization of installation locations easier
Signed-off-by: Junio C Hamano <junkio@cox.net>
Signed-off-by: Jonas F Madsen <fonseca@diku.dk>
Signed-off-by: Junio C Hamano <junkio@cox.net>
Signed-off-by: Jonas F Madsen <fonseca@diku.dk>
Make the view title show percentage shown like less
The cursor position is already summoned up as "line x of X".
The cursor position is already summoned up as "line x of X".
Implement the basic controlling of revision graph visualization
It is toggleable via 'g', on by default, and restricted to max being 19
chars wide. Note, it still only shows just the left tee.
It is toggleable via 'g', on by default, and restricted to max being 19
chars wide. Note, it still only shows just the left tee.
Add strip rule
Don't begin any update for the built-in help page
More color and attribute maps closer to the users
Simplify detection of tag commits via ^{}
Minor tidyup
Generalize the option parsing
Move tig(1) material to tig.1.txt