Simplify subcommand option parsing by moving it out of the loop
[tig] / tigrc.5.txt
index f62a007..bed3116 100644 (file)
@@ -10,9 +10,9 @@ SYNOPSIS
 --------
 [verse]
 .............................................................................
 --------
 [verse]
 .............................................................................
-*set*   variable *=* value
-*bind*  keymap key action
-*color* area fgcolor bgcolor [attributes]
+*set*   'variable' *=* 'value'
+*bind*  'keymap' 'key' 'action'
+*color* 'area' 'fgcolor' 'bgcolor' '[attributes]'
 .............................................................................
 
 
 .............................................................................
 
 
@@ -36,16 +36,20 @@ is:
 
 [verse]
 ..............................................................................
 
 [verse]
 ..............................................................................
-       *set* variables *=* value
+*set* variables *=* value
 ..............................................................................
 
 Examples:
 
 --------------------------------------------------------------------------
 ..............................................................................
 
 Examples:
 
 --------------------------------------------------------------------------
-       set show-rev-graph = yes        # Show revision graph?
-       set line-number-interval = 5    # Interval between line numbers
-       set tab-size = 8                # Number of spaces per tab
-       set encoding = "UTF-8"          # Commit encoding
+set show-author = yes          # Show author?
+set show-date = yes            # Show commit date?
+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
 --------------------------------------------------------------------------
 
 The type of variables are either bool, int, and string.
 --------------------------------------------------------------------------
 
 The type of variables are either bool, int, and string.
@@ -68,10 +72,14 @@ Variables
 
 The following variables can be set:
 
 
 The following variables can be set:
 
+'show-author' (bool)::
+'show-date' (bool)::
 'show-rev-graph' (bool)::
 'show-rev-graph' (bool)::
+'show-refs' (bool)::
 
 
-       Show revision graph in the main view on start-up. Can be toggled with
-       'g'.
+       Whether to show author, date, revision graph, and references
+       (branches, tags, and remotes) in the main view on start-up. Can all be
+       toggled.
 
 'line-number-interval' (int)::
 
 
 'line-number-interval' (int)::
 
@@ -97,25 +105,25 @@ key map. The syntax is:
 
 [verse]
 ..............................................................................
 
 [verse]
 ..............................................................................
-       *bind* 'keymap' 'key' 'action'
+*bind* 'keymap' 'key' 'action'
 ..............................................................................
 
 Examples:
 
 --------------------------------------------------------------------------
 ..............................................................................
 
 Examples:
 
 --------------------------------------------------------------------------
-       # A few keybindings
-       bind main w scroll-line-up
-       bind main s scroll-line-down
-       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)
+# A few keybindings
+bind main w scroll-line-up
+bind main s scroll-line-down
+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)
 --------------------------------------------------------------------------
 
 Keys are mapped by first searching the keybindings for the current view, then
 --------------------------------------------------------------------------
 
 Keys are mapped by first searching the keybindings for the current view, then
@@ -243,7 +251,10 @@ screen-resize              Resize the screen
 show-version           Show version information
 stop-loading           Stop all loading views
 toggle-lineno          Toggle line numbers
 show-version           Show version information
 stop-loading           Stop all loading views
 toggle-lineno          Toggle line numbers
+toggle-date            Toggle date display
+toggle-author          Toggle author display
 toggle-rev-graph       Toggle revision graph visualization
 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
 status-update          Update file status
 status-merge           Resolve unmerged file
 tree-parent            Switch to parent directory in tree view
@@ -256,26 +267,28 @@ Color command
 
 Color commands control highlighting and the user interface styles. If your
 terminal supports color, these commands can be used to assign foreground and
 
 Color commands control highlighting and the user interface styles. If your
 terminal supports color, these commands can be used to assign foreground and
-background combinations to certain areas. Optionally, an attribute can be given
-as the last parameter. The syntax is:
+background combinations to certain areas. Optionally, an attribute can be
+given as the last parameter. The syntax is:
 
 [verse]
 ..............................................................................
 
 [verse]
 ..............................................................................
-       *color* 'area' 'fgcolor' 'bgcolor' '[attributes]'
+*color* 'area' 'fgcolor' 'bgcolor' '[attributes]'
 ..............................................................................
 
 Examples:
 
 ------------------------------------------------------------------------------
 ..............................................................................
 
 Examples:
 
 ------------------------------------------------------------------------------
-       # Diff colors
-       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
+# Overwrite the default terminal colors to white on black.
+color default          white   black
+# Diff colors
+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
 ------------------------------------------------------------------------------
 
 Area names::
 ------------------------------------------------------------------------------
 
 Area names::
@@ -296,12 +309,21 @@ Attribute names::
        *standout*, and *underline*. Note, not all attributes may be supported
        by the terminal.
 
        *standout*, and *underline*. Note, not all attributes may be supported
        by the terminal.
 
-
 UI colors
 ~~~~~~~~~
 
 --
 
 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 window colors::
 
 Appearance of the bottom window showing info messages.
@@ -325,16 +347,13 @@ Appearance of the various columns in the main view, including the '~' used for
 delimiting long author names and labels for tag and branch references.
 
 *main-date*, *main-author*, *main-commit*, *main-delim*, *main-tag*,
 delimiting long author names and labels for tag and branch references.
 
 *main-date*, *main-author*, *main-commit*, *main-delim*, *main-tag*,
-*main-ref*, *main-remote*, *main-revgraph*
+*main-local-tag*, *main-ref*, *main-remote*, *main-revgraph*
 
 --
 
 Highlighting
 ~~~~~~~~~~~~
 
 
 --
 
 Highlighting
 ~~~~~~~~~~~~
 
-The colors and attributes for text that is not highlighted can be controlled
-by changing the *default* color option.
-
 --
 
 Diff markup::
 --
 
 Diff markup::