| 1 | tigrc(5) |
| 2 | ======== |
| 3 | |
| 4 | NAME |
| 5 | ---- |
| 6 | tigrc - tig user configuration file |
| 7 | |
| 8 | |
| 9 | SYNOPSIS |
| 10 | -------- |
| 11 | [verse] |
| 12 | ............................................................................. |
| 13 | *set* variable *=* value |
| 14 | *bind* keymap key action |
| 15 | *color* area fgcolor bgcolor [attributes] |
| 16 | ............................................................................. |
| 17 | |
| 18 | |
| 19 | DESCRIPTION |
| 20 | ----------- |
| 21 | |
| 22 | You can permanently set an option by putting it in the `~/.tigrc` file. The |
| 23 | file consists of a series of 'commands'. Each line of the file may contain |
| 24 | only one command. |
| 25 | |
| 26 | The hash mark ('#') is used as a 'comment' character. All text after the |
| 27 | comment character to the end of the line is ignored. You can use comments to |
| 28 | annotate your initialization file. |
| 29 | |
| 30 | |
| 31 | Set command |
| 32 | ----------- |
| 33 | |
| 34 | A few selective variables can be configured via the set command. The syntax |
| 35 | is: |
| 36 | |
| 37 | [verse] |
| 38 | .............................................................................. |
| 39 | *set* variables *=* value |
| 40 | .............................................................................. |
| 41 | |
| 42 | Examples: |
| 43 | |
| 44 | -------------------------------------------------------------------------- |
| 45 | set show-rev-graph = yes # Show revision graph? |
| 46 | set line-number-interval = 5 # Interval between line numbers |
| 47 | set tab-size = 8 # Number of spaces pr tab |
| 48 | set encoding = "UTF-8" # Commit encoding |
| 49 | -------------------------------------------------------------------------- |
| 50 | |
| 51 | The type of variables are either bool, int, and string. |
| 52 | |
| 53 | Valid bool values:: |
| 54 | |
| 55 | To set a bool variable to true use either "1", "true", or "yes". |
| 56 | Any other value will set the variable to false. |
| 57 | |
| 58 | Valid int values:: |
| 59 | |
| 60 | A non-negative integer. |
| 61 | |
| 62 | Valid string values:: |
| 63 | |
| 64 | A string of characters. Optionally, use either ' or " as delimiters. |
| 65 | |
| 66 | Variables |
| 67 | ~~~~~~~~~ |
| 68 | |
| 69 | The following variables can be set: |
| 70 | |
| 71 | 'show-rev-graph' (bool):: |
| 72 | |
| 73 | Show revision graph in the main view on start-up. Can be toggled with |
| 74 | 'g'. |
| 75 | |
| 76 | 'line-number-interval' (int):: |
| 77 | |
| 78 | Interval between line numbers. Note, you have to toggle on line |
| 79 | numbering with 'n' or the `-n` command line option. The default is to |
| 80 | number every line. |
| 81 | |
| 82 | 'tab-size' (int):: |
| 83 | |
| 84 | Number of spaces per tab. The default is 8 spaces. |
| 85 | |
| 86 | 'commit-encoding' (string):: |
| 87 | |
| 88 | The encoding used for commits. The default is UTF-8. Not this option |
| 89 | is shadowed by the "i18n.commitencoding" option in `.git/config`. |
| 90 | |
| 91 | |
| 92 | Bind command |
| 93 | ------------ |
| 94 | |
| 95 | Using bind commands keys can be mapped to an action when pressed in a given |
| 96 | key map. The syntax is: |
| 97 | |
| 98 | [verse] |
| 99 | .............................................................................. |
| 100 | *bind* 'keymap' 'key' 'action' |
| 101 | .............................................................................. |
| 102 | |
| 103 | Examples: |
| 104 | |
| 105 | -------------------------------------------------------------------------- |
| 106 | # A few keybindings |
| 107 | bind main w scroll-line-up |
| 108 | bind main s scroll-line-down |
| 109 | bind main space enter |
| 110 | bind diff a previous |
| 111 | bind diff d next |
| 112 | bind diff b move-first-line |
| 113 | # 'unbind' the default quit key binding |
| 114 | bind main Q none |
| 115 | -------------------------------------------------------------------------- |
| 116 | |
| 117 | Keys are mapped by first searching the keybindings for the current view, then |
| 118 | the keybindings for the *generic* keymap, and last the default keybindings. |
| 119 | Thus, the view keybindings shadow the generic keybindings which Shadow the |
| 120 | built-in keybindings. |
| 121 | |
| 122 | -- |
| 123 | |
| 124 | Keymaps:: |
| 125 | |
| 126 | Valid keymaps are: *main*, *diff*, *log*, *help*, *pager*, *status*, and |
| 127 | *generic*. Use *generic* to set key mapping in all keymaps. |
| 128 | |
| 129 | Key values:: |
| 130 | |
| 131 | Key values should never be quoted. Use either the ASCII value or one of the |
| 132 | following symbolic key names. Symbolic key names are case insensitive, Use |
| 133 | *Hash* to bind to the `#` key, since the hash mark is used as a comment |
| 134 | character. |
| 135 | |
| 136 | *Enter*, *Space*, *Backspace*, *Tab*, *Escape*, *Left*, *Right*, *Up*, *Down*, |
| 137 | *Insert*, *Delete*, *Hash*, *Home*, *End*, *PageUp*, *PageDown*, *F1*, *F2*, *F3*, |
| 138 | *F4*, *F5*, *F6*, *F7*, *F8*, *F9*, *F10*, *F11*, *F12*. |
| 139 | |
| 140 | Action names:: |
| 141 | |
| 142 | Valid action names are described below. Note, all names are |
| 143 | case-insensitive, and you may use '-', '_', and '.' interchangeably, |
| 144 | e.g. "view-main", "View.Main", and "VIEW_MAIN" are the same. |
| 145 | |
| 146 | -- |
| 147 | |
| 148 | Actions |
| 149 | ~~~~~~~ |
| 150 | |
| 151 | ifdef::backend-xhtml11[] |
| 152 | [frame="none"] |
| 153 | `-----------------------`----------------------------------------------------- |
| 154 | endif::backend-xhtml11[] |
| 155 | View switching: |
| 156 | ------------------------------------------------------------------------------ |
| 157 | view-main Show main view |
| 158 | view-diff Show diff view |
| 159 | view-log Show log view |
| 160 | view-tree Show tree view |
| 161 | view-blob Show blob view |
| 162 | view-status Show status view |
| 163 | view-pager Show pager view |
| 164 | view-help Show help page |
| 165 | ------------------------------------------------------------------------------ |
| 166 | |
| 167 | ifdef::backend-xhtml11[] |
| 168 | [frame="none"] |
| 169 | `-----------------------`----------------------------------------------------- |
| 170 | endif::backend-xhtml11[] |
| 171 | View manipulation: |
| 172 | ------------------------------------------------------------------------------ |
| 173 | enter Enter current line and scroll |
| 174 | next Move to next |
| 175 | previous Move to previous |
| 176 | view-next Move focus to next view |
| 177 | view-close Close the current view |
| 178 | quit Close all views and quit |
| 179 | ------------------------------------------------------------------------------ |
| 180 | |
| 181 | ifdef::backend-xhtml11[] |
| 182 | [frame="none"] |
| 183 | `-----------------------`----------------------------------------------------- |
| 184 | endif::backend-xhtml11[] |
| 185 | Cursor navigation: |
| 186 | ------------------------------------------------------------------------------ |
| 187 | move-up Move cursor one line up |
| 188 | move-down Move cursor one line down |
| 189 | move-page-down Move cursor one page down |
| 190 | move-page-up Move cursor one page up |
| 191 | move-first-line Move cursor to first line |
| 192 | move-last-line Move cursor to last line |
| 193 | ------------------------------------------------------------------------------ |
| 194 | |
| 195 | ifdef::backend-xhtml11[] |
| 196 | [frame="none"] |
| 197 | `-----------------------`----------------------------------------------------- |
| 198 | endif::backend-xhtml11[] |
| 199 | Scrolling: |
| 200 | ------------------------------------------------------------------------------ |
| 201 | scroll-line-up Scroll one line up |
| 202 | scroll-line-down Scroll one line down |
| 203 | scroll-page-eup Scroll one page up |
| 204 | scroll-page-down Scroll one page down |
| 205 | ------------------------------------------------------------------------------ |
| 206 | |
| 207 | ifdef::backend-xhtml11[] |
| 208 | [frame="none"] |
| 209 | `-----------------------`----------------------------------------------------- |
| 210 | endif::backend-xhtml11[] |
| 211 | Misc: |
| 212 | ------------------------------------------------------------------------------ |
| 213 | none Do nothing |
| 214 | prompt Bring up the prompt |
| 215 | screen-redraw Redraw the screen |
| 216 | screen-resize Resize the screen |
| 217 | show-version Show version information |
| 218 | stop-loading Stop all loading views |
| 219 | toggle-lineno Toggle line numbers |
| 220 | toggle-rev-graph Toggle revision graph visualization |
| 221 | ------------------------------------------------------------------------------ |
| 222 | |
| 223 | |
| 224 | Color command |
| 225 | ------------- |
| 226 | |
| 227 | Color commands control highlighting and the user interface styles. If your |
| 228 | terminal supports color, these commands can be used to assign foreground and |
| 229 | background combinations to certain areas. Optionally, an attribute can be given |
| 230 | as the last parameter. The syntax is: |
| 231 | |
| 232 | [verse] |
| 233 | .............................................................................. |
| 234 | *color* 'area' 'fgcolor' 'bgcolor' '[attributes]' |
| 235 | .............................................................................. |
| 236 | |
| 237 | Examples: |
| 238 | |
| 239 | ------------------------------------------------------------------------------ |
| 240 | # Diff colors |
| 241 | color diff-header yellow default |
| 242 | color diff-index blue default |
| 243 | color diff-chunk magenta default |
| 244 | # A strange looking cursor line |
| 245 | color cursor red default underline |
| 246 | # UI colors |
| 247 | color title-blur white blue |
| 248 | color title-focus white blue bold |
| 249 | ------------------------------------------------------------------------------ |
| 250 | |
| 251 | Area names:: |
| 252 | |
| 253 | Valid area names are described below. Note, all names are |
| 254 | case-insensitive, and you may use '-', '_', and '.' interchangeably, |
| 255 | e.g. "Diff-Header", "DIFF_HEADER", and "diff.header" are the same. |
| 256 | |
| 257 | Color names:: |
| 258 | |
| 259 | Valid colors include: *white*, *black*, *green*, *magenta*, *blue*, |
| 260 | *cyan*, *yellow*, *red*, *default*. Use *default* to refer to the |
| 261 | default terminal colors. |
| 262 | |
| 263 | Attribute names:: |
| 264 | |
| 265 | Valid attributes include: *normal*, *blink*, *bold*, *dim*, *reverse*, |
| 266 | *standout*, and *underline*. Note, not all attributes may be supported |
| 267 | by the terminal. |
| 268 | |
| 269 | |
| 270 | UI colors |
| 271 | ~~~~~~~~~ |
| 272 | |
| 273 | -- |
| 274 | |
| 275 | Status window colors:: |
| 276 | |
| 277 | Appearance of the bottom window showing info messages. |
| 278 | |
| 279 | *status* |
| 280 | |
| 281 | Title window colors:: |
| 282 | |
| 283 | Appearance of the title windows when they are attached |
| 284 | to any backgrounded windows and the current window. |
| 285 | |
| 286 | *title-blur*, *title-focus* |
| 287 | |
| 288 | Cursor line colors:: |
| 289 | |
| 290 | *cursor* |
| 291 | |
| 292 | Main view specific:: |
| 293 | |
| 294 | Appearance of the various columns in the main view, including the '~' used for |
| 295 | delimiting long author names and labels for tag and branch references. |
| 296 | |
| 297 | *main-date*, *main-author*, *main-commit*, *main-delim*, *main-tag*, |
| 298 | *main-ref*, *main-remote* |
| 299 | |
| 300 | -- |
| 301 | |
| 302 | Highlighting |
| 303 | ~~~~~~~~~~~~ |
| 304 | |
| 305 | The colors and attributes for text that is not highlighted can be controlled |
| 306 | by changing the *default* color option. |
| 307 | |
| 308 | -- |
| 309 | |
| 310 | Diff markup:: |
| 311 | |
| 312 | Options concerning diff start, chunks and lines added and deleted. |
| 313 | |
| 314 | *diff-header*, *diff-chunk*, *diff-add*, *diff-del* |
| 315 | |
| 316 | Enhanced git diff markup:: |
| 317 | |
| 318 | Extra diff information emitted by the git diff machinery, such as mode |
| 319 | changes, rename detection, and similarity. |
| 320 | |
| 321 | *diff-oldmode*, *diff-newmode*, *diff-copy-from*, *diff-copy-to*, |
| 322 | *diff-rename-from*, *diff-rename-to*, *diff-similarity* *diff-dissimilarity* |
| 323 | *diff-tree*, *diff-index* |
| 324 | |
| 325 | Pretty print commit headers:: |
| 326 | |
| 327 | Commit diffs and the revision logs are usually formatted using pretty printed |
| 328 | headers , unless `--pretty=raw` was given. This includes lines, such as merge |
| 329 | info, commit ID, and author and committer date. |
| 330 | |
| 331 | *pp-author*, *pp-commit*, *pp-merge*, *pp-date*, *pp-adate*, *pp-cdate* |
| 332 | |
| 333 | Raw commit header:: |
| 334 | |
| 335 | Usually shown when `--pretty=raw` is given, however 'commit' is pretty much |
| 336 | omnipresent. |
| 337 | |
| 338 | *commit*, *parent*, *tree*, *author*, *committer* |
| 339 | |
| 340 | Commit message:: |
| 341 | |
| 342 | For now only `Signed-off-by` and `Acked-by` lines are colorized. |
| 343 | |
| 344 | *signoff*, *acked* |
| 345 | |
| 346 | -- |
| 347 | |
| 348 | COPYRIGHT |
| 349 | --------- |
| 350 | Copyright (c) 2006 Jonas Fonseca <fonseca@diku.dk> |
| 351 | |
| 352 | Licensed under the terms of the GNU General Public License. |
| 353 | |
| 354 | SEE ALSO |
| 355 | -------- |
| 356 | gitlink:tig[1] and the http://jonas.nitro.dk/tig/manual.html[tig manual]. |