Use capitalized Git and Tig when talking about the systems in general
tig-1.2.1
tigrc(5): rework the keybinding section

Rearranges the subsections for the bind command, adds the stash view and
documents the internal commands.
User-defined commands no longer need to be prefixed with '!'

The exclamation point is implied when '@', '?', or '<' are specified.
Make the prompt for user-defined commands tell when Tig will exit
Make digit counting reusable
Fix stash diff display after deleting a stash

Refer to stashes internally by their commit ID instead of their symbolic
name (i.e. stash@{%d}) so that the stash diff updates correctly after
calling `git stash drop $stash`. The issue can be reproduced by deleting
one of the first N-1 stash and pressing Enter after the reload. The bug
is caused by the commit->id, which are used in determining whether to
refresh the diff view or not, does not change when the modified stash
list is reloaded.
Rewrite the toggle menu setup macro code to fix compile error

Compiling tig version 1.2.1 on OS/2 using GCC version 4.5.4 fails with:

    tig.c: In function 'toggle_option':
    tig.c:2696:3: error: subscripted value is neither array nor pointer
    tig.c:2696:3: error: subscripted value is neither array nor pointer
    tig.c:2696:3: error: subscripted value is neither array nor pointer
    tig.c:2696:3: error: subscripted value is neither array nor pointer
    tig.c:2696:3: error: subscripted value is neither array nor pointer
    tig.c:2696:3: error: subscripted value is neither array nor pointer
    tig.c:2696:3: error: subscripted value is neither array nor pointer

Change the macro to not have logic in the macro responsible for
initializing the toggle menu in an attempt to fix the compile error.
Add auto-configuration for Cygwin

It is automatically enabled when the OS name is reported as
CYGWIN_NT-6.1 and will detect and inform the user whether the ncurses
and iconv packages need to be installed.

Tested on Windows 7 with the currently available 64-bit Cygwin version.
Load HEAD ID and symbolic name as part of the repo info

This ensures that opt_remote is populated before the git config is
loaded so that tracking information for the current branch can be used
when highlighting remote references.
Optionally load HEAD when loading references

This avoids one fork+exec and improves the start-up time on Cygwin.

References #92
Disabled colors last when passing user supplied arguments to Git

This fixes situations where colors are enabled by for example
TIG_DIFF_OPTS:

	TIG_DIFF_OPTS="--word-diff=color" tig

Fixes #191
Switch to automatically generate dependencies

Can be disabled by (un)setting DEPS_CFLAGS:

	make DEPS_CFLAGS=
Move release scripts, test programs and maintainer files to new tools directory
Pass CFLAGS to linker

It happens that people use flags in CFLAGS that do affect the linking
stage. There is not always a clear distinction which do and which don't
so it's safer to have CFLAGS in linking commands as well.

[ Reworked to make it use generic make rule ]

Signed-off-by: Jonas Fonseca <fonseca@diku.dk>
Improve option toggling to update all displayed view

Use view flags to query which views need to be reloaded. This avoids
custom logic inside toggle_option.
Add toggling for display of files in untracked directories
Use memset to clear the format buffer
Generalize and move parsing of reflog info into main_read
Simplify checking of --stdin argument