Jonas Fonseca [Tue, 13 Jan 2009 22:08:01 +0000 (23:08 +0100)]
tig-0.13
Jonas Fonseca [Tue, 13 Jan 2009 17:41:37 +0000 (18:41 +0100)]
Launch mergetool from the project root directory
Fixes problem when in a subdirectory.
Jonas Fonseca [Wed, 19 Nov 2008 11:24:22 +0000 (12:24 +0100)]
Clear the view after 1 second during updates where reading takes long
Inspired by Karl Chen.
Jonas Fonseca [Sun, 9 Nov 2008 20:04:45 +0000 (21:04 +0100)]
IO API: use select(2) to check if pipe is readable when updating a view
Jonas Fonseca [Tue, 13 Jan 2009 16:16:58 +0000 (17:16 +0100)]
IO API: reindent status_run main loop after the rewrite
No code change.
Jonas Fonseca [Tue, 13 Jan 2009 14:22:11 +0000 (15:22 +0100)]
IO API: replace io_gets with helper for scanning buffers
Use in status_run() to simplify the code.
Jonas Fonseca [Sat, 10 Jan 2009 03:21:44 +0000 (22:21 -0500)]
IO API: use fork+exec
Jonas Fonseca [Fri, 9 Jan 2009 17:29:57 +0000 (12:29 -0500)]
IO API: use argv internally
Jonas Fonseca [Fri, 9 Jan 2009 17:17:38 +0000 (12:17 -0500)]
IO API: use file descriptor internally
Jonas Fonseca [Fri, 9 Jan 2009 14:11:48 +0000 (09:11 -0500)]
IO API: replace init_io_fd with io_open which calls fopen(3)
Jonas Fonseca [Mon, 12 Jan 2009 13:57:05 +0000 (14:57 +0100)]
IO API: use in the status view
Jonas Fonseca [Fri, 28 Nov 2008 10:27:21 +0000 (11:27 +0100)]
IO API: use when loading repository properties
This introduces an incompatibility regarding the format of the
TIG_LS_REMOTE environment variable.
Jonas Fonseca [Thu, 8 Jan 2009 19:49:25 +0000 (14:49 -0500)]
IO API: use in the stage view
Jonas Fonseca [Sun, 11 Jan 2009 22:15:00 +0000 (23:15 +0100)]
IO API: obsolete opt_pipe
Jonas Fonseca [Thu, 8 Jan 2009 18:20:04 +0000 (13:20 -0500)]
IO API: obsolete opt_cmd by using prepare_update in status_enter
Jonas Fonseca [Thu, 27 Nov 2008 16:31:40 +0000 (17:31 +0100)]
IO API: use prepare_update when parsing command line arguments
Jonas Fonseca [Wed, 31 Dec 2008 06:56:55 +0000 (01:56 -0500)]
IO API: use in add_describe_ref
Jonas Fonseca [Fri, 28 Nov 2008 11:15:50 +0000 (12:15 +0100)]
IO API: use in the blame view
Jonas Fonseca [Sat, 10 Jan 2009 21:51:54 +0000 (16:51 -0500)]
IO API: unify tree view and the default path in begin_update
Jonas Fonseca [Thu, 27 Nov 2008 16:45:54 +0000 (17:45 +0100)]
IO API: use for the main, log, diff, tree and blob views
This introduces an incompatibility with previous versions.
Jonas Fonseca [Thu, 27 Nov 2008 16:55:52 +0000 (17:55 +0100)]
IO API: use when preparing to run commands from the prompt
Jonas Fonseca [Mon, 5 Jan 2009 01:26:24 +0000 (20:26 -0500)]
IO API: convert status checkout/revert support
Jonas Fonseca [Sun, 28 Dec 2008 21:41:29 +0000 (16:41 -0500)]
IO API: use when running external commands
Jonas Fonseca [Thu, 27 Nov 2008 16:29:03 +0000 (17:29 +0100)]
IO API: refactor the run request command formatter
Adds support for new %(file), %(directory) and %(ref) identifiers.
Also adds infrastructure for working with argument arrays
Jonas Fonseca [Wed, 31 Dec 2008 19:17:25 +0000 (14:17 -0500)]
IO API: add small library for reading files and running programs
Jonas Fonseca [Tue, 13 Jan 2009 21:48:06 +0000 (22:48 +0100)]
Blame: do to not reload the diff view for same commits
Jonas Fonseca [Tue, 13 Jan 2009 21:45:51 +0000 (22:45 +0100)]
Blame: update blame to selected commit when pressing 'B'
Jonas Fonseca [Tue, 13 Jan 2009 21:44:19 +0000 (22:44 +0100)]
Blame: remove unused member of struct blame
Jonas Fonseca [Fri, 9 Jan 2009 18:02:02 +0000 (13:02 -0500)]
Add setup_update for initialize incremental view updates
Refactors common parts of begin_update and blame_open.
Jonas Fonseca [Wed, 7 Jan 2009 16:34:54 +0000 (11:34 -0500)]
Slightly reduce memory usage for keybindings
Jonas Fonseca [Wed, 31 Dec 2008 18:23:43 +0000 (13:23 -0500)]
Move formatting of blame --incremental command to blame_read_file
Doing it in blame_open after starting the command makes error handling
harder and the code was indeed buggy.
Jonas Fonseca [Wed, 31 Dec 2008 18:11:58 +0000 (13:11 -0500)]
Minor simplification of blame_open
Jonas Fonseca [Wed, 31 Dec 2008 17:55:33 +0000 (12:55 -0500)]
Don't use view->cmd to share state in the blame view
Jonas Fonseca [Wed, 31 Dec 2008 17:53:24 +0000 (12:53 -0500)]
Fix drawing loading views that are not displayed.
Jonas Fonseca [Sun, 28 Dec 2008 18:47:12 +0000 (13:47 -0500)]
Add support for launching the editor from the tree view
Only supported for files in the currently checked out head.
Requested by Cyril Romain.
Jonas Fonseca [Sun, 28 Dec 2008 18:29:42 +0000 (13:29 -0500)]
Replace opt_no_head with opt_head_rev in order to save the HEAD rev
Add is_initial_commit macro which replaces opt_no_head tests. Also,
update ref_head and ref_commit with the resolved HEAD revision.
Jonas Fonseca [Sun, 28 Dec 2008 17:47:28 +0000 (12:47 -0500)]
Use switch statement in tree_request
Jonas Fonseca [Sun, 28 Dec 2008 17:32:12 +0000 (12:32 -0500)]
Refuse to open blame view for all non-file entries in the tree view
Jonas Fonseca [Sun, 16 Nov 2008 20:40:17 +0000 (21:40 +0100)]
Refuse to open deleted files from the status and stage views
Jonas Fonseca [Wed, 5 Nov 2008 17:01:35 +0000 (18:01 +0100)]
tigrc(5): minor fixes and improvements from wip/run-command
Jonas Fonseca [Sat, 25 Oct 2008 19:29:51 +0000 (21:29 +0200)]
Refuse to open a directory in the status and stage view
Adds suffixcmp() used for checking if the status entry name ends
with "/". Also use it for repository reference loading.
Jonas Fonseca [Wed, 15 Oct 2008 10:07:38 +0000 (12:07 +0200)]
Fix waiting for input after executing a run request in pager mode
When in pager mode, stdin should not be touched. After executing a run
request a getc(stdin) was done to wait for the user's command to
continue, which didn't result in the expected behavior. To fix this
store the proper TTY handle in the new opt_tty variable which is set up
by init_display().
Jonas Fonseca [Wed, 15 Oct 2008 08:14:33 +0000 (10:14 +0200)]
update_view: Check the pipes and call end_update() before redrawing
This allows the main view to finish its updating of the revision graph
so that it is rendered properly for the last commit. As a bonus, it also
removes a goto.
Jonas Fonseca [Tue, 14 Oct 2008 05:55:05 +0000 (07:55 +0200)]
Use "--" to separate file argument to git-checkout
Jonas Fonseca [Sat, 11 Oct 2008 12:14:48 +0000 (14:14 +0200)]
Cleanup and fix the main loop to make view point to the current view
Jonas Fonseca [Sat, 11 Oct 2008 10:24:16 +0000 (12:24 +0200)]
Update and improve the manual
Especially the section on external commands and commands from the
environment is reworked. The section on the viewer is moved up.
Jonas Fonseca [Fri, 10 Oct 2008 19:30:16 +0000 (21:30 +0200)]
Remove documentation relicts from before the option parsing was changed
Jonas Fonseca [Fri, 10 Oct 2008 17:34:11 +0000 (19:34 +0200)]
Introduce prefixcmp macro to reduce code verbosity
Jonas Fonseca [Fri, 10 Oct 2008 12:00:47 +0000 (14:00 +0200)]
Separate blame revision and file argument by "--" to avoid problems
Jonas Fonseca [Fri, 10 Oct 2008 11:43:16 +0000 (13:43 +0200)]
Add bash completion for the blame subcommand
Jonas Fonseca [Fri, 10 Oct 2008 11:10:04 +0000 (13:10 +0200)]
Remove outdated comment
Jonas Fonseca [Thu, 9 Oct 2008 12:05:55 +0000 (14:05 +0200)]
Make more strings const
Jonas Fonseca [Thu, 9 Oct 2008 11:09:28 +0000 (13:09 +0200)]
Sort references in the order: tags, heads, tracked remotes, remotes
Jonas Fonseca [Wed, 8 Oct 2008 12:29:25 +0000 (14:29 +0200)]
tig-0.12.1
Jonas Fonseca [Tue, 7 Oct 2008 23:00:12 +0000 (01:00 +0200)]
Rename checkout to revert and support individual diff chunks reverts
Jonas Fonseca [Tue, 7 Oct 2008 18:43:24 +0000 (20:43 +0200)]
Avoid triggering assertion failure when reloading the status view
After staging a diff chunk, the stage view automatically reloads the
status view. If the staging happened while the status view is not
displayed an assertion failure is triggered by draw_view_line(). Fix it
by only conditionally redrawing the view in open_view().
Jonas Fonseca [Tue, 7 Oct 2008 18:42:23 +0000 (20:42 +0200)]
Consolidate and share view resetting via new reset_view()
Jonas Fonseca [Tue, 7 Oct 2008 18:04:26 +0000 (20:04 +0200)]
Help view: move requests from the Misc group into separate groups
Jonas Fonseca [Tue, 7 Oct 2008 17:24:28 +0000 (19:24 +0200)]
Help view: use "(no key)" instead of "'?'" to not confuse unbound actions
Jonas Fonseca [Tue, 7 Oct 2008 16:59:03 +0000 (18:59 +0200)]
Clear the status line when closing a view
Avoids confusion from stale messages.
Jonas Fonseca [Tue, 7 Oct 2008 12:18:01 +0000 (14:18 +0200)]
Fix bug introduced in commit for using --exclude-standard flag
Introduced in commit
33623c0022b49a5f2774b37a58726a95a4367447. The bug
is reproducible when running tig status in a newly created repository.
Jonas Fonseca [Tue, 7 Oct 2008 10:28:01 +0000 (12:28 +0200)]
Add support for refreshing the log view
Jonas Fonseca [Tue, 7 Oct 2008 10:23:48 +0000 (12:23 +0200)]
Make OPEN_REFRESH imply OPEN_NOMAXIMIZE
... so the main view keeps its dimension when refreshing with the diff
view open.
Jonas Fonseca [Tue, 7 Oct 2008 10:08:54 +0000 (12:08 +0200)]
Simplify view refreshing by adding new OPEN_REFRESH flag for open_view
Jonas Fonseca [Mon, 6 Oct 2008 21:27:38 +0000 (23:27 +0200)]
Show complete shortlog for small releases
Jonas Fonseca [Mon, 6 Oct 2008 20:09:42 +0000 (22:09 +0200)]
Improve checkout error reporting
Jonas Fonseca [Mon, 6 Oct 2008 19:29:20 +0000 (21:29 +0200)]
Cleanup and make option argument strings const
Jonas Fonseca [Mon, 6 Oct 2008 19:28:50 +0000 (21:28 +0200)]
Improve handling of unmatched quotes in ~/.tigrc
Jonas Fonseca [Mon, 6 Oct 2008 19:00:58 +0000 (21:00 +0200)]
Make GIT_CONFIG only contain the config subcommand
Jonas Fonseca [Mon, 6 Oct 2008 11:11:21 +0000 (13:11 +0200)]
Reload repository references when refreshing the main view
Jonas Fonseca [Wed, 1 Oct 2008 15:39:52 +0000 (17:39 +0200)]
Avoid refreshing views when checkout is canceled by user
Jonas Fonseca [Wed, 1 Oct 2008 15:30:37 +0000 (17:30 +0200)]
Also allow files to be checked out from stage view
Jonas Fonseca [Tue, 30 Sep 2008 14:57:28 +0000 (16:57 +0200)]
Cleanup exclude rule setup by using ls-files --exclude-standard flag
This makes user specific ignore rules effective in the status view.
Jonas Fonseca [Tue, 30 Sep 2008 14:21:42 +0000 (16:21 +0200)]
Main: use --topo-order when arguments are given on the command line
Jonas Fonseca [Sun, 21 Sep 2008 16:59:57 +0000 (18:59 +0200)]
main: automatically refresh after run requests
Jonas Fonseca [Sun, 21 Sep 2008 11:15:25 +0000 (13:15 +0200)]
status: add support for checking out files with unstaged changes
Jonas Fonseca [Mon, 15 Sep 2008 19:26:04 +0000 (21:26 +0200)]
TODO: support for jumping to parents' blame in the blame view
Jonas Fonseca [Mon, 15 Sep 2008 19:23:26 +0000 (21:23 +0200)]
Add script for preparing release announcements
Jonas Fonseca [Mon, 15 Sep 2008 18:39:32 +0000 (20:39 +0200)]
tig-0.12
Jonas Fonseca [Mon, 15 Sep 2008 18:35:51 +0000 (20:35 +0200)]
Do not show boundary commits by default
They can cause confusing results when combined with the --author flag.
If they should be shown the --boundary option should be passed.
Jonas Fonseca [Wed, 10 Sep 2008 13:46:51 +0000 (15:46 +0200)]
main: implement refreshing by just rerunning the original command
Also updates NEWS to mention the fix from last commit.
Jeff King [Thu, 21 Aug 2008 01:40:44 +0000 (21:40 -0400)]
Continue updates when pipe read has errno "Success"
When we are reading from a pipe and receive a signal, our
read call fails and ferror() returns true. The current
behavior is to call end_update and report failure. However,
we can detect this situation by checking that errno is set
to success and continue the reading process.
You can provoke this behavior by running a "tig blame" that
takes a few seconds and then resizing the terminal that tig
is running in (you should get an incomplete blame output and
the error "Failed to read: Success").
Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Jonas Fonseca <fonseca@diku.dk>
Jonas Fonseca [Tue, 5 Aug 2008 21:40:21 +0000 (23:40 +0200)]
Clean up incomplete commits from main view listed for --no-walk
When --no-walk is given on the command line by the user it causes
boundary commits to be output with just the commit line, i.e:
> git rev-list --pretty=raw --boundary --no-walk HEAD
commit
60e8ea56880fc2e42008075d516c356ef605bc60
tree
5b76086e4deaf62d3f7baffc6f49840f61d4e79c
parent
145194bdfc8bf0b58185bbe28bc0097ce429de4d
author Jonas Fonseca <fonseca@diku.dk>
1217797175 +0200
committer Jonas Fonseca <fonseca@diku.dk>
1217797402 +0200
Remove the global opt_request variable
commit -
145194bdfc8bf0b58185bbe28bc0097ce429de4d
Jonas Fonseca [Sun, 3 Aug 2008 20:59:35 +0000 (22:59 +0200)]
Remove the global opt_request variable
Jonas Fonseca [Sun, 3 Aug 2008 20:38:46 +0000 (22:38 +0200)]
TODO: Option for abbreviating author names using just the initials
Jonas Fonseca [Wed, 23 Jul 2008 17:23:12 +0000 (19:23 +0200)]
Gracefully ignore negative values given to options in ~/.tigrc
Rodolfo Borges [Thu, 15 May 2008 21:37:37 +0000 (18:37 -0300)]
Add option 'author-width' to consumize the width of the author column
This can be used when the first few characteres are enough to tell the
authors apart or when the default width is too narrow.
To set the width of the author column to 10 put the following in the
~/.tigrc file:
set author-width = 10
Jonas Fonseca [Fri, 2 May 2008 22:29:51 +0000 (00:29 +0200)]
INSTALL: Mention the release notes in the NEWS file
Jonas Fonseca [Fri, 2 May 2008 22:09:16 +0000 (00:09 +0200)]
Update NEWS
Jonas Fonseca [Fri, 2 May 2008 22:01:59 +0000 (00:01 +0200)]
Remove useless check in blame_read_file()
Jonas Fonseca [Mon, 28 Apr 2008 21:26:58 +0000 (23:26 +0200)]
Rename the gitlink:[] AsciiDoc macro to manpage:[]
It breaks for AsciiDoc version 8.2.3.
Jonas Fonseca [Mon, 28 Apr 2008 19:05:47 +0000 (21:05 +0200)]
Fix reopening blame view when it is already loading
Move call to end_update() if view->pipe is non-NULL from begin_update()
to open_view() so it is called also for views that defines an open()
operation.
Triggered by Jeff King's "show blame for parent" patch posted to the
git mailing list in <
20080410040213.GA29618@sigill.intra.peff.net>.
Jonas Fonseca [Sun, 27 Apr 2008 22:21:07 +0000 (00:21 +0200)]
Fix the view notification of end of reading
Move notification from update_view() to end_update() so <view>_read()
functions are also called when the user requests that loading views
are stopped. Allow ends to be forced so the extra spawning in the
blame view is closed as well.
Jonas Fonseca [Sun, 27 Apr 2008 09:03:05 +0000 (11:03 +0200)]
Makefile: remove bashism from distclean rule
Jonas Fonseca [Thu, 24 Apr 2008 08:07:34 +0000 (10:07 +0200)]
Add stage-next action to jump to next diff chunk that can be staged
By default bound to '@'. Requested by Pascal Obry.
Jonas Fonseca [Wed, 23 Apr 2008 21:49:25 +0000 (23:49 +0200)]
Make configure check for ncurses header files
First ncursesw/ncurses.h, then ncurses/ncurses.h, and finally ncurses.h.
Also include ncurses.h by default instead of curses.h. On most system
ncurses.h should be a symlink to curses.h and this will avoid the
problem of including a non-ncurses header file.
This should fix systems like Solaris who ships their own version of
/usr/include/curses.h that is incompatible with ncurses.
Reported by SungHyun Nam.
Jonas Fonseca [Wed, 23 Apr 2008 19:14:08 +0000 (21:14 +0200)]
Drop use of $(...) for popen() and system() calls
Some shells don't support it, like the jsh that is used as /bin/sh on
some Solaris boxes, which results in the following error:
sh: syntax error at line 1: `(' unexpected
Fix the only user (reading remote information via git-ls-remote) to use
a much simpler shell syntax.
Reported by SungHyun Nam.
Jonas Fonseca [Sun, 20 Apr 2008 21:51:37 +0000 (23:51 +0200)]
Add NEWS file
Jonas Fonseca [Wed, 19 Mar 2008 19:08:38 +0000 (20:08 +0100)]
Fix warnings emitted with -pedantic
Jonas Fonseca [Fri, 4 Apr 2008 17:22:58 +0000 (19:22 +0200)]
Refactor management of the current draw column and max draw width
Do it in the draw_* functions instead of all the view draw functions.