Code

Refactor and share view maximization code from view-close handling
[tig.git] / tigrc.5.txt
index 644ebc7dba52eb46d429c4a74b035f8ac352cd27..d37b8b8e3922acae0b60fa60ba1a03d209cc8dd7 100644 (file)
@@ -3,7 +3,7 @@ tigrc(5)
 
 NAME
 ----
-tigrc - tig user configuration file
+tigrc - tig configuration file
 
 
 SYNOPSIS
@@ -27,6 +27,9 @@ The hash mark ('#') is used as a 'comment' character. All text after the
 comment character to the end of the line is ignored. You can use comments to
 annotate your initialization file.
 
+Alternatively, options can be set by putting them in one of the git
+configuration files, which are read by tig on startup. See 'git-config(1)' for
+which files to use.
 
 Set command
 -----------
@@ -48,8 +51,16 @@ set show-rev-graph = yes     # Show revision graph?
 set show-refs = yes            # Show references?
 set show-line-numbers = no     # Show line numbers?
 set line-number-interval = 5   # Interval between line numbers
-set tab-size = 8               # Number of spaces per tab
-set encoding = "UTF-8"         # Commit encoding
+--------------------------------------------------------------------------
+
+Or in the git configuration files:
+
+--------------------------------------------------------------------------
+[tig]
+       author-width = 10       # Set width of the author column
+       line-graphics = no      # Disable graphics characters
+       tab-size = 8            # Number of spaces per tab
+       encoding = "UTF-8"      # Commit encoding
 --------------------------------------------------------------------------
 
 The type of variables are either bool, int, and string.
@@ -72,10 +83,23 @@ Variables
 
 The following variables can be set:
 
+'show-author' (bool)::
+'show-date' (bool)::
 'show-rev-graph' (bool)::
+'show-refs' (bool)::
+
+       Whether to show author, date, revision graph, and references
+       (branches, tags, and remotes) in the main view on start-up. Can all be
+       toggled.
+
+'author-width' (int)::
 
-       Show revision graph in the main view on start-up. Can be toggled with
-       'g'.
+       Width of the author column. When set to 5 or below, the author name
+       will be abbreviated to the author's initials.
+
+'line-graphics' (bool)::
+
+       Whether to use graphic characters for line drawing.
 
 'line-number-interval' (int)::
 
@@ -114,12 +138,18 @@ bind main space enter
 bind diff a previous
 bind diff d next
 bind diff b move-first-line
-# 'unbind' the default quit key binding
-bind main Q none
 # An external command to update from upstream
 bind generic F !git fetch
-# Cherry-pick current commit unto current branch
-bind generic C !git cherry-pick %(commit)
+--------------------------------------------------------------------------
+
+Or in the git configuration files:
+
+--------------------------------------------------------------------------
+[tig "bind"]
+       # 'unbind' the default quit key binding
+       main = Q none
+       # Cherry-pick current commit onto current branch
+       generic = C !git cherry-pick %(commit)
 --------------------------------------------------------------------------
 
 Keys are mapped by first searching the keybindings for the current view, then
@@ -159,10 +189,25 @@ Actions
 Apart from the action names listed below, all actions starting with a '!' will
 be available as an external command. External commands can contain variable
 names that will be substituted before the command is run. Valid variable names
-are "%(head)", "%(commit)", and "%(blob)".
+are:
+
+ifdef::backend-xhtml11[]
+[frame="none"]
+`-----------------------`-----------------------------------------------------
+endif::backend-xhtml11[]
+Browsing state variables
+------------------------------------------------------------------------------
+%(head)                        The currently viewed 'head' ID. Defaults to HEAD
+%(commit)              The currently selected commit ID.
+%(blob)                        The currently selected blob ID.
+%(directory)           The current directory path in the tree view; \
+                       empty for the root directory.
+%(file)                        The currently selected file.
+%(ref)                 The reference given to blame or HEAD if undefined.
+------------------------------------------------------------------------------
 
 As an example, the following external command will save the current commit as
-a patch file: "!git format-patch %(commit)^..%(commit)".
+a patch file: "!git format-patch -1 %(commit)".
 
 ifdef::backend-xhtml11[]
 [frame="none"]
@@ -175,6 +220,7 @@ view-diff           Show diff view
 view-log               Show log view
 view-tree              Show tree view
 view-blob              Show blob view
+view-blame             Show blame view
 view-status            Show status view
 view-stage             Show stage view
 view-pager             Show pager view
@@ -190,12 +236,25 @@ View manipulation:
 enter                  Enter current line and scroll
 next                   Move to next
 previous               Move to previous
+parent                 Move to parent
 view-next              Move focus to next view
 refresh                        Reload and refresh view
+maximize               Maximize the current view
 view-close             Close the current view
 quit                   Close all views and quit
 ------------------------------------------------------------------------------
 
+ifdef::backend-xhtml11[]
+[frame="none"]
+`-----------------------`-----------------------------------------------------
+endif::backend-xhtml11[]
+View specific actions:
+------------------------------------------------------------------------------
+status-update          Update file status
+status-merge           Resolve unmerged file
+stage-next             Find next chunk to stage
+------------------------------------------------------------------------------
+
 ifdef::backend-xhtml11[]
 [frame="none"]
 `-----------------------`-----------------------------------------------------
@@ -218,8 +277,10 @@ Scrolling:
 ------------------------------------------------------------------------------
 scroll-line-up         Scroll one line up
 scroll-line-down       Scroll one line down
-scroll-page-eup                Scroll one page up
+scroll-page-up         Scroll one page up
 scroll-page-down       Scroll one page down
+scroll-left            Scroll one column left
+scroll-right           Scroll one column right
 ------------------------------------------------------------------------------
 
 ifdef::backend-xhtml11[]
@@ -240,7 +301,6 @@ ifdef::backend-xhtml11[]
 endif::backend-xhtml11[]
 Misc:
 ------------------------------------------------------------------------------
-none                   Do nothing
 prompt                 Bring up the prompt
 screen-redraw          Redraw the screen
 screen-resize          Resize the screen
@@ -251,10 +311,8 @@ toggle-date                Toggle date display
 toggle-author          Toggle author display
 toggle-rev-graph       Toggle revision graph visualization
 toggle-refs            Toggle reference display
-status-update          Update file status
-status-merge           Resolve unmerged file
-tree-parent            Switch to parent directory in tree view
 edit                   Open in editor
+none                   Do nothing
 ------------------------------------------------------------------------------
 
 
@@ -280,11 +338,17 @@ color default             white   black
 color diff-header      yellow  default
 color diff-index       blue    default
 color diff-chunk       magenta default
-# A strange looking cursor line
-color cursor           red     default underline
-# UI colors
-color title-blur       white   blue
-color title-focus      white   blue    bold
+--------------------------------------------------------------------------
+
+Or in the git configuration files:
+
+--------------------------------------------------------------------------
+[tig "color"]
+       # A strange looking cursor line
+       cursor          red     default underline
+       # UI colors
+       title-blur      white   blue
+       title-focus     white   blue    bold
 ------------------------------------------------------------------------------
 
 Area names::
@@ -297,7 +361,13 @@ Color names::
 
        Valid colors include: *white*, *black*, *green*, *magenta*, *blue*,
        *cyan*, *yellow*, *red*, *default*. Use *default* to refer to the
-       default terminal colors.
+       default terminal colors. This is recommended for background colors if
+       you are using a terminal with a transparent background.
++
+Colors can also be specified using the keywords color0, color1, ..., colorN-1
+(N being the number of colors supported by your terminal). This is useful when
+you remap the colors for your display or want to enable colors supported by
+256-color terminals.
 
 Attribute names::
 
@@ -308,44 +378,76 @@ Attribute names::
 UI colors
 ~~~~~~~~~
 
---
-
-Default terminal colors::
-
 The colors and attributes to be used for the text that is not highlighted or
 that specify the use of the default terminal colors can be controlled by
 setting the *default* color option.
 
-Use the *default* color to use the colors configured for the terminal. This is
-the default and recommended if you are using a terminal with a transparent
-background.
-
-Status window colors::
-
-Appearance of the bottom window showing info messages.
-
-*status*
-
-Title window colors::
-
-Appearance of the title windows when they are attached
-to any backgrounded windows and the current window.
-
-*title-blur*, *title-focus*
-
-Cursor line colors::
-
-*cursor*
+ifdef::backend-xhtml11[]
+[frame="none"]
+`-----------------------`-----------------------------------------------------
+endif::backend-xhtml11[]
+General:
+------------------------------------------------------------------------------
+default                        Overwrite default terminal colors (see above).
+cursor                 The cursor line.
+status                 The status window showing info messages.
+title-focus            The title window for the current view.
+title-blur             The title window of any backgrounded view.
+delimiter              Delimiter shown for truncated lines.
+line-number            Line numbers.
+date                   The commit date.
+author                 The commit author.
+mode                   The file mode holding the permissions and type.
+------------------------------------------------------------------------------
 
-Main view specific::
+ifdef::backend-xhtml11[]
+[frame="none"]
+`-----------------------`-----------------------------------------------------
+endif::backend-xhtml11[]
+Main view colors:
+------------------------------------------------------------------------------
+main-revgraph          The revision graph.
+main-commit            The commit comment.
+main-head              Label of the current branch.
+main-remote            Label of a remote.
+main-tracked           Label of the remote tracked by the current branch.
+main-tag               Label of a signed tag.
+main-local-tag         Label of a local tag.
+main-ref               Label of any other reference.
+------------------------------------------------------------------------------
 
-Appearance of the various columns in the main view, including the '~' used for
-delimiting long author names and labels for tag and branch references.
+ifdef::backend-xhtml11[]
+[frame="none"]
+`-----------------------`-----------------------------------------------------
+endif::backend-xhtml11[]
+Status view:
+------------------------------------------------------------------------------
+stat-head              The "On branch"-line.
+stat-section           Status section titles,
+stat-staged            Status flag of staged files.
+stat-unstaged          Status flag of unstaged files.
+stat-untracked         Status flag of untracked files.
+------------------------------------------------------------------------------
 
-*main-date*, *main-author*, *main-commit*, *main-delim*, *main-tag*,
-*main-local-tag*, *main-ref*, *main-remote*, *main-revgraph*
+ifdef::backend-xhtml11[]
+[frame="none"]
+`-----------------------`-----------------------------------------------------
+endif::backend-xhtml11[]
+Blame view:
+------------------------------------------------------------------------------
+blame-id               The commit ID.
+------------------------------------------------------------------------------
 
---
+ifdef::backend-xhtml11[]
+[frame="none"]
+`-----------------------`-----------------------------------------------------
+endif::backend-xhtml11[]
+Tree view:
+------------------------------------------------------------------------------
+tree-head              The "Directory /"-line
+tree-dir               The directory name.
+tree-file              The file name.
+------------------------------------------------------------------------------
 
 Highlighting
 ~~~~~~~~~~~~
@@ -395,20 +497,15 @@ Colors for information of the tree view.
 
 *tree-dir*, *tree-file*
 
-Status markup::
-
-Colors used in the status view.
-
-*stat-section*, *stat-none*, *stat-staged*, *stat-unstaged*, *stat-untracked*
-
 --
 
 COPYRIGHT
 ---------
-Copyright (c) 2006-2007 Jonas Fonseca <fonseca@diku.dk>
+Copyright (c) 2006-2009 Jonas Fonseca <fonseca@diku.dk>
 
 Licensed under the terms of the GNU General Public License.
 
 SEE ALSO
 --------
-gitlink:tig[1] and the http://jonas.nitro.dk/tig/manual.html[tig manual].
+manpage:tig[1], git-config(1),
+and the http://jonas.nitro.dk/tig/manual.html[tig manual].