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
Correct error checking
Fixes: cc2d13642a837163fb0e35d87a51ff96b7bf3cb0
Fixes: cc2d13642a837163fb0e35d87a51ff96b7bf3cb0
Remove prev arg to view->ops->read()
Wrap all snprintf usage to simplify error handling
Add support for showing tags and other repo refs in the diff and log view
Refactor view->line reallocation
Make 'h' and '?' show built-in key binding quick reference
Rename documentation build rules using s/docs/doc/; more like git
Add COPYING file
Fix segfault where current_view would become >= sizeof(display)
Hard code current_view indexes for split screen setup.
Reported-by: Dennis (dst_) on #git
Hard code current_view indexes for split screen setup.
Reported-by: Dennis (dst_) on #git
Remove SITES title so it is more adaptive to where it is included
Split out manual material to separate file
List SITES in tig(1)
Move stuff to SITES and INSTALL files
Move stuff to BUGS and TODO files; only show BUGS in tig(1)
Move ~/.tigrc documentation into it's own man page, tigrc(5)
Use ~/.tigrc for user configuration rather than ~/.tig
Add TODO about keybinding cheat sheet
Requested by gitster on IRC.
Requested by gitster on IRC.
Emit more informative error messages when loading ~/.tig
Only touch the option strings if necessary
Improve color documentation
Add support for setting color options in the ~/.tig user configuration file
Now you can put stuff like this in ~/.tig:
# Diff colors
color diff-header yellow default
color diff-index blue default
color diff-chunk magenta default
# UI colors
color title-blur white blue
color title-focus white blue bold
Now you can put stuff like this in ~/.tig:
# Diff colors
color diff-header yellow default
color diff-index blue default
color diff-chunk magenta default
# UI colors
color title-blur white blue
color title-focus white blue bold
Make read_properties take several separator characters; chomp name & value
This concludes the fundation for using read_properties to read options from
a config file.
This concludes the fundation for using read_properties to read options from
a config file.
Oops, fix short help wrt tab size short option
Rename repo config loaders using s/config/repo_config/
load_config -> load_repo_config
read_config_option -> read_repo_config_option
load_config -> load_repo_config
read_config_option -> read_repo_config_option
Make read_properties() take FILE *pipe instead of command line
Document the loading time displayed in the title window after 3 seconds
Make the stop all loading request stop all loading
Notify that the prompt is unusable while loading
List it as a bug.
List it as a bug.
Tab size short option changes from -t to -b
Minor usability fix: when closing never switch to an already closed view
"View commands" section becomes "History commands".
License revisited: it's GPLv2 or later
Fix off by one error; makes tags visible again
Fixes: d0cea5f929be563d049bc5205fb8de08fd080c32
Fixes: d0cea5f929be563d049bc5205fb8de08fd080c32
When updating the title window, move the cursor to the end of line
This way the cursor (hopefully) won't feel so jumpy.
This way the cursor (hopefully) won't feel so jumpy.
Factor out cursor moving
Make window switching smother; fix blurring of previous view when switching
Don't refresh after a resize, since it causes the previous content to be
shortly displayed. We now simply resize and clear and waits for the first
read to start displaying the new content.
Don't refresh after a resize, since it causes the previous content to be
shortly displayed. We now simply resize and clear and waits for the first
read to start displaying the new content.
Never close backgrounded loads; only clear window when starting to update
Before windows was cleared each time open_view maximized for example the
main view when it was still loading.
Before windows was cleared each time open_view maximized for example the
main view when it was still loading.
Only pass on properies with non-zero length names
Refactor reading of properties from pipes