annotate doc/gutentags.txt @ 235:def58b9d22c6

Exclude cscope from default file list command With default setup gutentags generate file list for cscope using simple `find -type f` command in update_scopedb.sh. Subsequent invocations of this script causes unbounded growth of cscope database because cscope indexes itself every time. This change excludes cscope database file from default file list command for cscope database generation so it will work properly by default. Another option is to use custom file list command like `ag -l` that will generate files known to source control, that is without cscope database file.
author Alex Dzyoba <alex@dzyoba.com>
date Tue, 18 Dec 2018 23:32:20 +0300
parents 39df368aaf2a
children 62e21302c221
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
22
4e1b0253f71a Renamed project to "Gutentags" (thanks Sylvain!).
Ludovic Chabant <ludovic@chabant.com>
parents: 20
diff changeset
1 *gutentags.txt* Automatic ctags management for VIM
188
676fe2ea919f Move T's in the ASCII art up a bit.
Toni Kunic <tkunic@rocketmail.com>
parents: 182
diff changeset
2 ___ ___ ___ ___ ___
676fe2ea919f Move T's in the ASCII art up a bit.
Toni Kunic <tkunic@rocketmail.com>
parents: 182
diff changeset
3 /\__\ /\ \ /\__\ /\__\ /\ \
676fe2ea919f Move T's in the ASCII art up a bit.
Toni Kunic <tkunic@rocketmail.com>
parents: 182
diff changeset
4 /:/ _/_ \:\ \ /:/ / /:/ _/_ \:\ \
676fe2ea919f Move T's in the ASCII art up a bit.
Toni Kunic <tkunic@rocketmail.com>
parents: 182
diff changeset
5 /:/ /\ \ \:\ \ /:/__/ /:/ /\__\ \:\ \
676fe2ea919f Move T's in the ASCII art up a bit.
Toni Kunic <tkunic@rocketmail.com>
parents: 182
diff changeset
6 /:/ /::\ \ ___ \:\ \ /::\ \ /:/ /:/ _/_ _____\:\ \
676fe2ea919f Move T's in the ASCII art up a bit.
Toni Kunic <tkunic@rocketmail.com>
parents: 182
diff changeset
7 /:/__\/\:\__\ /\ \ \:\__\ /:/\:\ \ /:/_/:/ /\__\ /::::::::\__\
676fe2ea919f Move T's in the ASCII art up a bit.
Toni Kunic <tkunic@rocketmail.com>
parents: 182
diff changeset
8 \:\ \ /:/ / \:\ \ /:/ / \/__\:\ \ \:\/:/ /:/ / \:\~~\~~\/__/
676fe2ea919f Move T's in the ASCII art up a bit.
Toni Kunic <tkunic@rocketmail.com>
parents: 182
diff changeset
9 \:\ /:/ / \:\ /:/ / \:\__\ \::/_/:/ / \:\ \
676fe2ea919f Move T's in the ASCII art up a bit.
Toni Kunic <tkunic@rocketmail.com>
parents: 182
diff changeset
10 \:\/:/ / \:\/:/ / \/__/ \:\/:/ / \:\ \
676fe2ea919f Move T's in the ASCII art up a bit.
Toni Kunic <tkunic@rocketmail.com>
parents: 182
diff changeset
11 \::/ / \::/ / \::/ / \:\__\
676fe2ea919f Move T's in the ASCII art up a bit.
Toni Kunic <tkunic@rocketmail.com>
parents: 182
diff changeset
12 \/__/ \/__/ \/__/ \/__/
676fe2ea919f Move T's in the ASCII art up a bit.
Toni Kunic <tkunic@rocketmail.com>
parents: 182
diff changeset
13 ___ ___ ___ ___
676fe2ea919f Move T's in the ASCII art up a bit.
Toni Kunic <tkunic@rocketmail.com>
parents: 182
diff changeset
14 /\__\ /\ \ /\__\ /\__\
676fe2ea919f Move T's in the ASCII art up a bit.
Toni Kunic <tkunic@rocketmail.com>
parents: 182
diff changeset
15 /:/ / /::\ \ /:/ _/_ /:/ _/_
676fe2ea919f Move T's in the ASCII art up a bit.
Toni Kunic <tkunic@rocketmail.com>
parents: 182
diff changeset
16 /:/__/ /:/\:\ \ /:/ /\ \ /:/ /\ \
676fe2ea919f Move T's in the ASCII art up a bit.
Toni Kunic <tkunic@rocketmail.com>
parents: 182
diff changeset
17 /::\ \ /:/ /::\ \ /:/ /::\ \ /:/ /::\ \
676fe2ea919f Move T's in the ASCII art up a bit.
Toni Kunic <tkunic@rocketmail.com>
parents: 182
diff changeset
18 /:/\:\ \ /:/_/:/\:\__\ /:/__\/\:\__\ /:/_/:/\:\__\
676fe2ea919f Move T's in the ASCII art up a bit.
Toni Kunic <tkunic@rocketmail.com>
parents: 182
diff changeset
19 \/__\:\ \ \:\/:/ \/__/ \:\ \ /:/ / \:\/:/ /:/ /
676fe2ea919f Move T's in the ASCII art up a bit.
Toni Kunic <tkunic@rocketmail.com>
parents: 182
diff changeset
20 \:\__\ \::/__/ \:\ /:/ / \::/ /:/ /
676fe2ea919f Move T's in the ASCII art up a bit.
Toni Kunic <tkunic@rocketmail.com>
parents: 182
diff changeset
21 \/__/ \:\ \ \:\/:/ / \/_/:/ /
676fe2ea919f Move T's in the ASCII art up a bit.
Toni Kunic <tkunic@rocketmail.com>
parents: 182
diff changeset
22 \:\__\ \::/ / /:/ /
676fe2ea919f Move T's in the ASCII art up a bit.
Toni Kunic <tkunic@rocketmail.com>
parents: 182
diff changeset
23 \/__/ \/__/ \/__/
4
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
24
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
25
24
bab5f37faa1e More renaming.
Ludovic Chabant <ludovic@chabant.com>
parents: 22
diff changeset
26 GUTENTAGS REFERENCE MANUAL
4
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
27 by Ludovic Chabant
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
28
22
4e1b0253f71a Renamed project to "Gutentags" (thanks Sylvain!).
Ludovic Chabant <ludovic@chabant.com>
parents: 20
diff changeset
29 *gutentags*
4
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
30
22
4e1b0253f71a Renamed project to "Gutentags" (thanks Sylvain!).
Ludovic Chabant <ludovic@chabant.com>
parents: 20
diff changeset
31 1. Introduction |gutentags-intro|
4e1b0253f71a Renamed project to "Gutentags" (thanks Sylvain!).
Ludovic Chabant <ludovic@chabant.com>
parents: 20
diff changeset
32 2. Commands |gutentags-commands|
4e1b0253f71a Renamed project to "Gutentags" (thanks Sylvain!).
Ludovic Chabant <ludovic@chabant.com>
parents: 20
diff changeset
33 3. Status Line |gutentags-status-line|
4e1b0253f71a Renamed project to "Gutentags" (thanks Sylvain!).
Ludovic Chabant <ludovic@chabant.com>
parents: 20
diff changeset
34 4. Global Settings |gutentags-settings|
49
70423c2202c5 Ctags options files changes
Ludovic Chabant <ludovic@chabant.com>
parents: 47
diff changeset
35 5. Project Settings |gutentags-project-settings|
4
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
36
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
37 =============================================================================
22
4e1b0253f71a Renamed project to "Gutentags" (thanks Sylvain!).
Ludovic Chabant <ludovic@chabant.com>
parents: 20
diff changeset
38 1. Introduction *gutentags-intro*
4
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
39
22
4e1b0253f71a Renamed project to "Gutentags" (thanks Sylvain!).
Ludovic Chabant <ludovic@chabant.com>
parents: 20
diff changeset
40 Gutentags is a plugin that takes care of the much needed management of tags
7
49e3cb99ab27 Small edits.
Ludovic Chabant <ludovic@chabant.com>
parents: 4
diff changeset
41 files in Vim. It will (re)generate tag files as you work while staying
4
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
42 completely out of your way. It will even do its best to keep those tag files
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
43 out of your way too. It has no dependencies and just works.
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
44
22
4e1b0253f71a Renamed project to "Gutentags" (thanks Sylvain!).
Ludovic Chabant <ludovic@chabant.com>
parents: 20
diff changeset
45 In order to generate tag files, Gutentags will have to figure out what's in
4
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
46 your project. To do this, it will locate well-known project root markers like
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
47 SCM folders (.git, .hg, etc.), any custom tags you define (with
22
4e1b0253f71a Renamed project to "Gutentags" (thanks Sylvain!).
Ludovic Chabant <ludovic@chabant.com>
parents: 20
diff changeset
48 |gutentags_project_root|), and even things you may have defined already with
4
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
49 other plugins, like CtrlP.
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
50
22
4e1b0253f71a Renamed project to "Gutentags" (thanks Sylvain!).
Ludovic Chabant <ludovic@chabant.com>
parents: 20
diff changeset
51 If the current file you're editing is found to be in such a project, Gutentags
4
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
52 will make sure the tag file for that project is up to date. Then, as you work
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
53 in files in that project, it will partially re-generate the tag file. Every
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
54 time you save, it will silently, in the background, update the tags for that
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
55 file.
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
56
129
48045d81f25a Fix some typos in the docs.
Ludovic Chabant <ludovic@chabant.com>
parents: 128
diff changeset
57 Usually, `ctags` can only append tags to an existing tag file, so Gutentags
4
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
58 removes the tags for the current file first, to make sure the tag file is
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
59 always consistent with the source code.
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
60
22
4e1b0253f71a Renamed project to "Gutentags" (thanks Sylvain!).
Ludovic Chabant <ludovic@chabant.com>
parents: 20
diff changeset
61 Also, Gutentags is clever enough to not stumble upon itself by triggering
139
ed43e3a87ffd Add `ctags` executable requirements to the documentation page.
Ludovic Chabant <ludovic@chabant.com>
parents: 138
diff changeset
62 multiple ctags processes if you save files too fast, or if your project is
ed43e3a87ffd Add `ctags` executable requirements to the documentation page.
Ludovic Chabant <ludovic@chabant.com>
parents: 138
diff changeset
63 really big.
ed43e3a87ffd Add `ctags` executable requirements to the documentation page.
Ludovic Chabant <ludovic@chabant.com>
parents: 138
diff changeset
64
ed43e3a87ffd Add `ctags` executable requirements to the documentation page.
Ludovic Chabant <ludovic@chabant.com>
parents: 138
diff changeset
65
ed43e3a87ffd Add `ctags` executable requirements to the documentation page.
Ludovic Chabant <ludovic@chabant.com>
parents: 138
diff changeset
66 1.1 Requirements
140
95092f4fbc4b Add some cross-referencing to the help file.
Ludovic Chabant <ludovic@chabant.com>
parents: 139
diff changeset
67 *gutentags-ctags-requirements*
139
ed43e3a87ffd Add `ctags` executable requirements to the documentation page.
Ludovic Chabant <ludovic@chabant.com>
parents: 138
diff changeset
68
ed43e3a87ffd Add `ctags` executable requirements to the documentation page.
Ludovic Chabant <ludovic@chabant.com>
parents: 138
diff changeset
69 If you're using the `ctags` modules (which is the default and only working one
ed43e3a87ffd Add `ctags` executable requirements to the documentation page.
Ludovic Chabant <ludovic@chabant.com>
parents: 138
diff changeset
70 at this point, really), you will need a `tags` generator that supports the
ed43e3a87ffd Add `ctags` executable requirements to the documentation page.
Ludovic Chabant <ludovic@chabant.com>
parents: 138
diff changeset
71 following arguments:
ed43e3a87ffd Add `ctags` executable requirements to the documentation page.
Ludovic Chabant <ludovic@chabant.com>
parents: 138
diff changeset
72
ed43e3a87ffd Add `ctags` executable requirements to the documentation page.
Ludovic Chabant <ludovic@chabant.com>
parents: 138
diff changeset
73 * `-f` (to specify the output file)
ed43e3a87ffd Add `ctags` executable requirements to the documentation page.
Ludovic Chabant <ludovic@chabant.com>
parents: 138
diff changeset
74 * `--append` (to append to an existing file while keeping it sorted)
ed43e3a87ffd Add `ctags` executable requirements to the documentation page.
Ludovic Chabant <ludovic@chabant.com>
parents: 138
diff changeset
75 * `--exclude` (to exclude file patterns)
ed43e3a87ffd Add `ctags` executable requirements to the documentation page.
Ludovic Chabant <ludovic@chabant.com>
parents: 138
diff changeset
76 * `--options` (to specify an options file)
ed43e3a87ffd Add `ctags` executable requirements to the documentation page.
Ludovic Chabant <ludovic@chabant.com>
parents: 138
diff changeset
77
190
6dc4bb6c53ba minor typos
minusf <minusf@gmail.com>
parents: 188
diff changeset
78 This means you probably want Exuberant Ctags or Universal Ctags. The basic
139
ed43e3a87ffd Add `ctags` executable requirements to the documentation page.
Ludovic Chabant <ludovic@chabant.com>
parents: 138
diff changeset
79 old BSD Ctags WON'T WORK. Other language-specific versions may or may not
ed43e3a87ffd Add `ctags` executable requirements to the documentation page.
Ludovic Chabant <ludovic@chabant.com>
parents: 138
diff changeset
80 work. Check with their help or man page.
ed43e3a87ffd Add `ctags` executable requirements to the documentation page.
Ludovic Chabant <ludovic@chabant.com>
parents: 138
diff changeset
81
ed43e3a87ffd Add `ctags` executable requirements to the documentation page.
Ludovic Chabant <ludovic@chabant.com>
parents: 138
diff changeset
82
ed43e3a87ffd Add `ctags` executable requirements to the documentation page.
Ludovic Chabant <ludovic@chabant.com>
parents: 138
diff changeset
83 1.2 Similar Plugins
140
95092f4fbc4b Add some cross-referencing to the help file.
Ludovic Chabant <ludovic@chabant.com>
parents: 139
diff changeset
84 *gutentags-similar-plugins*
4
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
85
7
49e3cb99ab27 Small edits.
Ludovic Chabant <ludovic@chabant.com>
parents: 4
diff changeset
86 There are some similar Vim plugins out there ("vim-tags", "vim-autotag",
4
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
87 "vim-automatic-ctags", etc.). They all fail on one or more of the requirements
22
4e1b0253f71a Renamed project to "Gutentags" (thanks Sylvain!).
Ludovic Chabant <ludovic@chabant.com>
parents: 20
diff changeset
88 I set for myself with Gutentags:
4
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
89
7
49e3cb99ab27 Small edits.
Ludovic Chabant <ludovic@chabant.com>
parents: 4
diff changeset
90 * No other dependency than running Vim: no Python, Ruby, or whatever.
4
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
91 * Cross-platform: should work on at least Mac and Windows.
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
92 * Incremental tags generation: don't re-generate the whole project all the
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
93 time. This may be fine for small projects, but it doesn't scale.
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
94 * External process management: if the ctags process is taking a long time,
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
95 don't run another one because I saved the file again.
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
96 * Keep the tag file consistent: don't just append the current file's tags to
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
97 the tag file, otherwise you will still "see" tags for deleted or renamed
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
98 classes and functions.
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
99 * Automatically create the tag file: you open something from a freshly forked
129
48045d81f25a Fix some typos in the docs.
Ludovic Chabant <ludovic@chabant.com>
parents: 128
diff changeset
100 project, it should start indexing it automatically, just like in Sublime Text
48045d81f25a Fix some typos in the docs.
Ludovic Chabant <ludovic@chabant.com>
parents: 128
diff changeset
101 or Visual Studio or any other IDE.
4
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
102
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
103
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
104 =============================================================================
22
4e1b0253f71a Renamed project to "Gutentags" (thanks Sylvain!).
Ludovic Chabant <ludovic@chabant.com>
parents: 20
diff changeset
105 2. Commands *gutentags-commands*
4
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
106
22
4e1b0253f71a Renamed project to "Gutentags" (thanks Sylvain!).
Ludovic Chabant <ludovic@chabant.com>
parents: 20
diff changeset
107 *gutentags-project-commands*
4
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
108 The following commands are only available in buffers that have been found to
22
4e1b0253f71a Renamed project to "Gutentags" (thanks Sylvain!).
Ludovic Chabant <ludovic@chabant.com>
parents: 20
diff changeset
109 belong to a project that should be managed by Gutentags. See
4e1b0253f71a Renamed project to "Gutentags" (thanks Sylvain!).
Ludovic Chabant <ludovic@chabant.com>
parents: 20
diff changeset
110 |gutentags_project_root| for how Gutentags figures out the project a file
142
nblock <nblock@users.noreply.github.com>
parents: 140
diff changeset
111 belongs to. When no project is found (i.e. the file is not under any of the
22
4e1b0253f71a Renamed project to "Gutentags" (thanks Sylvain!).
Ludovic Chabant <ludovic@chabant.com>
parents: 20
diff changeset
112 known project markers), Gutentags is disabled for that buffer, and the
4
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
113 following commands and remarks don't apply.
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
114
47
7b419abf7fba Add ability to disable Gutentags if a `.notags` file is at the root.
Ludovic Chabant <ludovic@chabant.com>
parents: 46
diff changeset
115 If you want to force-disable Gutentags for a given project even though it does
7b419abf7fba Add ability to disable Gutentags if a `.notags` file is at the root.
Ludovic Chabant <ludovic@chabant.com>
parents: 46
diff changeset
116 match one of the items in |gutentags_project_root|, create a file named
7b419abf7fba Add ability to disable Gutentags if a `.notags` file is at the root.
Ludovic Chabant <ludovic@chabant.com>
parents: 46
diff changeset
117 "`.notags`" at the root of the project.
7b419abf7fba Add ability to disable Gutentags if a `.notags` file is at the root.
Ludovic Chabant <ludovic@chabant.com>
parents: 46
diff changeset
118
22
4e1b0253f71a Renamed project to "Gutentags" (thanks Sylvain!).
Ludovic Chabant <ludovic@chabant.com>
parents: 20
diff changeset
119 The tag file that Gutentags creates and manages will be named after
165
cbc1ebe23ef1 Rename all ctags-related options to have "ctags" in their name.
Ludovic Chabant <ludovic@chabant.com>
parents: 149
diff changeset
120 |gutentags_ctags_tagfile|, relative to the project's root directory. When
cbc1ebe23ef1 Rename all ctags-related options to have "ctags" in their name.
Ludovic Chabant <ludovic@chabant.com>
parents: 149
diff changeset
121 Gutentags finds a valid project root, it will prepend the tag file's path to
cbc1ebe23ef1 Rename all ctags-related options to have "ctags" in their name.
Ludovic Chabant <ludovic@chabant.com>
parents: 149
diff changeset
122 'tags', unless |gutentags_ctags_auto_set_tags| is set to 0. This is to make
cbc1ebe23ef1 Rename all ctags-related options to have "ctags" in their name.
Ludovic Chabant <ludovic@chabant.com>
parents: 149
diff changeset
123 sure Vim will use that file first.
4
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
124
22
4e1b0253f71a Renamed project to "Gutentags" (thanks Sylvain!).
Ludovic Chabant <ludovic@chabant.com>
parents: 20
diff changeset
125 If a file managed by Gutentags is opened and no tag file already exists,
4e1b0253f71a Renamed project to "Gutentags" (thanks Sylvain!).
Ludovic Chabant <ludovic@chabant.com>
parents: 20
diff changeset
126 Gutentags will start generating it right away in the background, unless
4e1b0253f71a Renamed project to "Gutentags" (thanks Sylvain!).
Ludovic Chabant <ludovic@chabant.com>
parents: 20
diff changeset
127 |gutentags_generate_on_missing| is set to 0. If you have a large project, you
4e1b0253f71a Renamed project to "Gutentags" (thanks Sylvain!).
Ludovic Chabant <ludovic@chabant.com>
parents: 20
diff changeset
128 may want to know when Gutentags is generating tags: see
4e1b0253f71a Renamed project to "Gutentags" (thanks Sylvain!).
Ludovic Chabant <ludovic@chabant.com>
parents: 20
diff changeset
129 |gutentags-status-line| to display an indicator in your status line.
4
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
130
22
4e1b0253f71a Renamed project to "Gutentags" (thanks Sylvain!).
Ludovic Chabant <ludovic@chabant.com>
parents: 20
diff changeset
131 When a file managed by Gutentags is saved, the tag file will be incrementally
4
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
132 updated, i.e. references to the recently saved file are removed, and that file
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
133 is re-parsed for tags, with the result being merged into the tag file. This
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
134 makes the tag file 100% consistent with the latest changes. This doesn't
22
4e1b0253f71a Renamed project to "Gutentags" (thanks Sylvain!).
Ludovic Chabant <ludovic@chabant.com>
parents: 20
diff changeset
135 happen however if |gutentags_generate_on_write| is set to 0, in which case you
4e1b0253f71a Renamed project to "Gutentags" (thanks Sylvain!).
Ludovic Chabant <ludovic@chabant.com>
parents: 20
diff changeset
136 have to run |GutentagsUpdate| manually.
4
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
137
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
138
22
4e1b0253f71a Renamed project to "Gutentags" (thanks Sylvain!).
Ludovic Chabant <ludovic@chabant.com>
parents: 20
diff changeset
139 *:GutentagsUpdate*
4e1b0253f71a Renamed project to "Gutentags" (thanks Sylvain!).
Ludovic Chabant <ludovic@chabant.com>
parents: 20
diff changeset
140 :GutentagsUpdate
4
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
141 Forces an update of the current tag file with the
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
142 current buffer. If tags are already being generated,
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
143 you will be notified and the command will abort.
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
144
22
4e1b0253f71a Renamed project to "Gutentags" (thanks Sylvain!).
Ludovic Chabant <ludovic@chabant.com>
parents: 20
diff changeset
145 :GutentagsUpdate!
4e1b0253f71a Renamed project to "Gutentags" (thanks Sylvain!).
Ludovic Chabant <ludovic@chabant.com>
parents: 20
diff changeset
146 Like |GutentagsUpdate|, but updates the current tags
4
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
147 file with the whole project instead of just the
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
148 current buffer.
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
149
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
150
46
c0f56e4d52bd Make a bunch of advanced commands opt-in only.
Ludovic Chabant <ludovic@chabant.com>
parents: 43
diff changeset
151 Some debugging/troubleshooting commands are also available if the
c0f56e4d52bd Make a bunch of advanced commands opt-in only.
Ludovic Chabant <ludovic@chabant.com>
parents: 43
diff changeset
152 |gutentags_define_advanced_commands| global setting is set to 1.
4
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
153
22
4e1b0253f71a Renamed project to "Gutentags" (thanks Sylvain!).
Ludovic Chabant <ludovic@chabant.com>
parents: 20
diff changeset
154 *:GutentagsToggleEnabled*
4e1b0253f71a Renamed project to "Gutentags" (thanks Sylvain!).
Ludovic Chabant <ludovic@chabant.com>
parents: 20
diff changeset
155 :GutentagsToggleEnabled
4e1b0253f71a Renamed project to "Gutentags" (thanks Sylvain!).
Ludovic Chabant <ludovic@chabant.com>
parents: 20
diff changeset
156 Disables and re-enables Gutentags.
4e1b0253f71a Renamed project to "Gutentags" (thanks Sylvain!).
Ludovic Chabant <ludovic@chabant.com>
parents: 20
diff changeset
157 When Gutentags is disabled, it won't update your tag
4
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
158 file when you save a buffer. It will however still
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
159 look for project markers as you open new buffers so
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
160 that they can start working again when you re-enable
22
4e1b0253f71a Renamed project to "Gutentags" (thanks Sylvain!).
Ludovic Chabant <ludovic@chabant.com>
parents: 20
diff changeset
161 Gutentags.
4
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
162
223
a746af898281 Add documentation comment about availability of advanced commands.
Ludovic Chabant <ludovic@chabant.com>
parents: 222
diff changeset
163 {only available when
a746af898281 Add documentation comment about availability of advanced commands.
Ludovic Chabant <ludovic@chabant.com>
parents: 222
diff changeset
164 |gutentags_define_advanced_commands| is set}
a746af898281 Add documentation comment about availability of advanced commands.
Ludovic Chabant <ludovic@chabant.com>
parents: 222
diff changeset
165
22
4e1b0253f71a Renamed project to "Gutentags" (thanks Sylvain!).
Ludovic Chabant <ludovic@chabant.com>
parents: 20
diff changeset
166 *GutentagsToggleTrace*
4e1b0253f71a Renamed project to "Gutentags" (thanks Sylvain!).
Ludovic Chabant <ludovic@chabant.com>
parents: 20
diff changeset
167 :GutentagsToggleTrace
4e1b0253f71a Renamed project to "Gutentags" (thanks Sylvain!).
Ludovic Chabant <ludovic@chabant.com>
parents: 20
diff changeset
168 If you want to keep an eye on what Gutentags is doing,
4
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
169 you can enable tracing. This will show messages every
22
4e1b0253f71a Renamed project to "Gutentags" (thanks Sylvain!).
Ludovic Chabant <ludovic@chabant.com>
parents: 20
diff changeset
170 time Gutentags does something. It can get annoying
4
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
171 quickly, since it will require you to press a key to
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
172 dismiss those messages, but it can be useful to
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
173 troubleshoot a problem.
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
174 In addition to messages in Vim, it will also make
22
4e1b0253f71a Renamed project to "Gutentags" (thanks Sylvain!).
Ludovic Chabant <ludovic@chabant.com>
parents: 20
diff changeset
175 Gutentags redirect the output of the tag generation
4
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
176 script to a `.log` file in the project root.
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
177
223
a746af898281 Add documentation comment about availability of advanced commands.
Ludovic Chabant <ludovic@chabant.com>
parents: 222
diff changeset
178 {only available when
a746af898281 Add documentation comment about availability of advanced commands.
Ludovic Chabant <ludovic@chabant.com>
parents: 222
diff changeset
179 |gutentags_define_advanced_commands| is set}
a746af898281 Add documentation comment about availability of advanced commands.
Ludovic Chabant <ludovic@chabant.com>
parents: 222
diff changeset
180
49
70423c2202c5 Ctags options files changes
Ludovic Chabant <ludovic@chabant.com>
parents: 47
diff changeset
181
191
22cd3334cf43 Add documentation on the `GutentagsUpdated` auto-command.
Ludovic Chabant <ludovic@chabant.com>
parents: 190
diff changeset
182 Gutentags also has some user auto-commands (see |User| and |:doautocmd|):
22cd3334cf43 Add documentation on the `GutentagsUpdated` auto-command.
Ludovic Chabant <ludovic@chabant.com>
parents: 190
diff changeset
183
202
b50b6d0f82dd Refactor for Vim8/Neovim job support.
Ludovic Chabant <ludovic@chabant.com>
parents: 191
diff changeset
184 *GutentagsUpdating*
b50b6d0f82dd Refactor for Vim8/Neovim job support.
Ludovic Chabant <ludovic@chabant.com>
parents: 191
diff changeset
185 GutentagsUpdating
b50b6d0f82dd Refactor for Vim8/Neovim job support.
Ludovic Chabant <ludovic@chabant.com>
parents: 191
diff changeset
186 This auto-command is triggered when a background
b50b6d0f82dd Refactor for Vim8/Neovim job support.
Ludovic Chabant <ludovic@chabant.com>
parents: 191
diff changeset
187 update job has started.
b50b6d0f82dd Refactor for Vim8/Neovim job support.
Ludovic Chabant <ludovic@chabant.com>
parents: 191
diff changeset
188
191
22cd3334cf43 Add documentation on the `GutentagsUpdated` auto-command.
Ludovic Chabant <ludovic@chabant.com>
parents: 190
diff changeset
189 *GutentagsUpdated*
22cd3334cf43 Add documentation on the `GutentagsUpdated` auto-command.
Ludovic Chabant <ludovic@chabant.com>
parents: 190
diff changeset
190 GutentagsUpdated
22cd3334cf43 Add documentation on the `GutentagsUpdated` auto-command.
Ludovic Chabant <ludovic@chabant.com>
parents: 190
diff changeset
191 This auto-command is triggered when a background
202
b50b6d0f82dd Refactor for Vim8/Neovim job support.
Ludovic Chabant <ludovic@chabant.com>
parents: 191
diff changeset
192 update job has finished.
191
22cd3334cf43 Add documentation on the `GutentagsUpdated` auto-command.
Ludovic Chabant <ludovic@chabant.com>
parents: 190
diff changeset
193
22cd3334cf43 Add documentation on the `GutentagsUpdated` auto-command.
Ludovic Chabant <ludovic@chabant.com>
parents: 190
diff changeset
194
4
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
195 =============================================================================
22
4e1b0253f71a Renamed project to "Gutentags" (thanks Sylvain!).
Ludovic Chabant <ludovic@chabant.com>
parents: 20
diff changeset
196 3. Status Line *gutentags-status-line*
4
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
197
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
198 Tag file generation can take a while if you're working on a project big
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
199 enough. In that case, you may want to know when `ctags` is running, so you
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
200 have a heads up if some of the tags aren't recognized yet.
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
201
22
4e1b0253f71a Renamed project to "Gutentags" (thanks Sylvain!).
Ludovic Chabant <ludovic@chabant.com>
parents: 20
diff changeset
202 *gutentags#statusline()*
207
20bfab5b054f Status-line improvements.
Ludovic Chabant <ludovic@chabant.com>
parents: 204
diff changeset
203 You can display an indicator of tag generation progress in your |status-line|
4
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
204 with the following function: >
22
4e1b0253f71a Renamed project to "Gutentags" (thanks Sylvain!).
Ludovic Chabant <ludovic@chabant.com>
parents: 20
diff changeset
205 :set statusline+=%{gutentags#statusline()}
4
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
206
207
20bfab5b054f Status-line improvements.
Ludovic Chabant <ludovic@chabant.com>
parents: 204
diff changeset
207 The function will, by default, print a list of modules in the status line. So
20bfab5b054f Status-line improvements.
Ludovic Chabant <ludovic@chabant.com>
parents: 204
diff changeset
208 if the `ctags` module (see |g:gutentags_modules|) is currently generating
20bfab5b054f Status-line improvements.
Ludovic Chabant <ludovic@chabant.com>
parents: 204
diff changeset
209 a tags file, you will see "ctags" printed in the status line. If nothing is
20bfab5b054f Status-line improvements.
Ludovic Chabant <ludovic@chabant.com>
parents: 204
diff changeset
210 happening, nothing will be printed in the status line.
20bfab5b054f Status-line improvements.
Ludovic Chabant <ludovic@chabant.com>
parents: 204
diff changeset
211
20bfab5b054f Status-line improvements.
Ludovic Chabant <ludovic@chabant.com>
parents: 204
diff changeset
212 You can pass some parameters to customize this:
20bfab5b054f Status-line improvements.
Ludovic Chabant <ludovic@chabant.com>
parents: 204
diff changeset
213
20bfab5b054f Status-line improvements.
Ludovic Chabant <ludovic@chabant.com>
parents: 204
diff changeset
214 1. A prefix string (defaults to `""`).
20bfab5b054f Status-line improvements.
Ludovic Chabant <ludovic@chabant.com>
parents: 204
diff changeset
215 2. A suffix string (defaults to `""`).
20bfab5b054f Status-line improvements.
Ludovic Chabant <ludovic@chabant.com>
parents: 204
diff changeset
216 3. The text to print (defaults to the names of modules currently generating
20bfab5b054f Status-line improvements.
Ludovic Chabant <ludovic@chabant.com>
parents: 204
diff changeset
217 something).
20bfab5b054f Status-line improvements.
Ludovic Chabant <ludovic@chabant.com>
parents: 204
diff changeset
218
20bfab5b054f Status-line improvements.
Ludovic Chabant <ludovic@chabant.com>
parents: 204
diff changeset
219 So using `gutentags#statusline('[', ']')` would print `"[ctags]"` instead of
20bfab5b054f Status-line improvements.
Ludovic Chabant <ludovic@chabant.com>
parents: 204
diff changeset
220 `"ctags"`.
20bfab5b054f Status-line improvements.
Ludovic Chabant <ludovic@chabant.com>
parents: 204
diff changeset
221
202
b50b6d0f82dd Refactor for Vim8/Neovim job support.
Ludovic Chabant <ludovic@chabant.com>
parents: 191
diff changeset
222 Because Gutentags runs the tag generation in the background, the statusline
b50b6d0f82dd Refactor for Vim8/Neovim job support.
Ludovic Chabant <ludovic@chabant.com>
parents: 191
diff changeset
223 indicator might stay there even after the background process has ended. It
b50b6d0f82dd Refactor for Vim8/Neovim job support.
Ludovic Chabant <ludovic@chabant.com>
parents: 191
diff changeset
224 would only go away when Vim decides to refresh the statusline. You can force
b50b6d0f82dd Refactor for Vim8/Neovim job support.
Ludovic Chabant <ludovic@chabant.com>
parents: 191
diff changeset
225 refresh it in a callback on |GutentagsUpdating| and |GutentagsUpdated|.
4
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
226
202
b50b6d0f82dd Refactor for Vim8/Neovim job support.
Ludovic Chabant <ludovic@chabant.com>
parents: 191
diff changeset
227 For instance, with the `lightline` plugin:
4
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
228
202
b50b6d0f82dd Refactor for Vim8/Neovim job support.
Ludovic Chabant <ludovic@chabant.com>
parents: 191
diff changeset
229 augroup MyGutentagsStatusLineRefresher
b50b6d0f82dd Refactor for Vim8/Neovim job support.
Ludovic Chabant <ludovic@chabant.com>
parents: 191
diff changeset
230 autocmd!
b50b6d0f82dd Refactor for Vim8/Neovim job support.
Ludovic Chabant <ludovic@chabant.com>
parents: 191
diff changeset
231 autocmd User GutentagsUpdating call lightline#update()
b50b6d0f82dd Refactor for Vim8/Neovim job support.
Ludovic Chabant <ludovic@chabant.com>
parents: 191
diff changeset
232 autocmd User GutentagsUpdated call lightline#update()
b50b6d0f82dd Refactor for Vim8/Neovim job support.
Ludovic Chabant <ludovic@chabant.com>
parents: 191
diff changeset
233 augroup END
4
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
234
207
20bfab5b054f Status-line improvements.
Ludovic Chabant <ludovic@chabant.com>
parents: 204
diff changeset
235 *gutentags#statusline_cb*
20bfab5b054f Status-line improvements.
Ludovic Chabant <ludovic@chabant.com>
parents: 204
diff changeset
236 As an alternative to the previous function, `gutentags#statusline_cb` takes
20bfab5b054f Status-line improvements.
Ludovic Chabant <ludovic@chabant.com>
parents: 204
diff changeset
237 a single parameter which should be a |Funcref| or a function name. This
20bfab5b054f Status-line improvements.
Ludovic Chabant <ludovic@chabant.com>
parents: 204
diff changeset
238 function should take a list of active module names, and return a string. This
20bfab5b054f Status-line improvements.
Ludovic Chabant <ludovic@chabant.com>
parents: 204
diff changeset
239 lets you completely control what the status line will print.
20bfab5b054f Status-line improvements.
Ludovic Chabant <ludovic@chabant.com>
parents: 204
diff changeset
240
20bfab5b054f Status-line improvements.
Ludovic Chabant <ludovic@chabant.com>
parents: 204
diff changeset
241 For instance:
20bfab5b054f Status-line improvements.
Ludovic Chabant <ludovic@chabant.com>
parents: 204
diff changeset
242 function! s:get_gutentags_status(mods) abort
20bfab5b054f Status-line improvements.
Ludovic Chabant <ludovic@chabant.com>
parents: 204
diff changeset
243 let l:msg = ''
217
fcb0415dceac fixed status callback in docs
Vitaly Kushner <vitalyk@gmail.com>
parents: 207
diff changeset
244 if index(a:mods, 'ctags') >= 0
207
20bfab5b054f Status-line improvements.
Ludovic Chabant <ludovic@chabant.com>
parents: 204
diff changeset
245 let l:msg .= '♨'
20bfab5b054f Status-line improvements.
Ludovic Chabant <ludovic@chabant.com>
parents: 204
diff changeset
246 endif
217
fcb0415dceac fixed status callback in docs
Vitaly Kushner <vitalyk@gmail.com>
parents: 207
diff changeset
247 if index(a:mods, 'cscope') >= 0
207
20bfab5b054f Status-line improvements.
Ludovic Chabant <ludovic@chabant.com>
parents: 204
diff changeset
248 let l:msg .= '♺'
20bfab5b054f Status-line improvements.
Ludovic Chabant <ludovic@chabant.com>
parents: 204
diff changeset
249 endif
20bfab5b054f Status-line improvements.
Ludovic Chabant <ludovic@chabant.com>
parents: 204
diff changeset
250 return l:msg
20bfab5b054f Status-line improvements.
Ludovic Chabant <ludovic@chabant.com>
parents: 204
diff changeset
251 endfunction
20bfab5b054f Status-line improvements.
Ludovic Chabant <ludovic@chabant.com>
parents: 204
diff changeset
252
20bfab5b054f Status-line improvements.
Ludovic Chabant <ludovic@chabant.com>
parents: 204
diff changeset
253 :set statusline+=%{gutentags#statusline_cb(
20bfab5b054f Status-line improvements.
Ludovic Chabant <ludovic@chabant.com>
parents: 204
diff changeset
254 \function('<SID>get_gutentags_status'))}
20bfab5b054f Status-line improvements.
Ludovic Chabant <ludovic@chabant.com>
parents: 204
diff changeset
255
20bfab5b054f Status-line improvements.
Ludovic Chabant <ludovic@chabant.com>
parents: 204
diff changeset
256 By default, the callback function doesn't get called if no tags generation is
20bfab5b054f Status-line improvements.
Ludovic Chabant <ludovic@chabant.com>
parents: 204
diff changeset
257 currently happening. You can pass `1` as a second argument so that the
20bfab5b054f Status-line improvements.
Ludovic Chabant <ludovic@chabant.com>
parents: 204
diff changeset
258 callback function is always called.
20bfab5b054f Status-line improvements.
Ludovic Chabant <ludovic@chabant.com>
parents: 204
diff changeset
259
4
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
260
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
261 =============================================================================
22
4e1b0253f71a Renamed project to "Gutentags" (thanks Sylvain!).
Ludovic Chabant <ludovic@chabant.com>
parents: 20
diff changeset
262 4. Global Settings *gutentags-settings*
4
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
263
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
264 The following settings can be defined in your |vimrc| to change the default
22
4e1b0253f71a Renamed project to "Gutentags" (thanks Sylvain!).
Ludovic Chabant <ludovic@chabant.com>
parents: 20
diff changeset
265 behaviour of Gutentags.
4
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
266
22
4e1b0253f71a Renamed project to "Gutentags" (thanks Sylvain!).
Ludovic Chabant <ludovic@chabant.com>
parents: 20
diff changeset
267 *gutentags_enabled*
4e1b0253f71a Renamed project to "Gutentags" (thanks Sylvain!).
Ludovic Chabant <ludovic@chabant.com>
parents: 20
diff changeset
268 g:gutentags_enabled
4e1b0253f71a Renamed project to "Gutentags" (thanks Sylvain!).
Ludovic Chabant <ludovic@chabant.com>
parents: 20
diff changeset
269 Defines whether Gutentags should be enabled. When
4e1b0253f71a Renamed project to "Gutentags" (thanks Sylvain!).
Ludovic Chabant <ludovic@chabant.com>
parents: 20
diff changeset
270 disabled, Gutentags will still scan for project root
4
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
271 markers when opening buffers. This is so that when you
22
4e1b0253f71a Renamed project to "Gutentags" (thanks Sylvain!).
Ludovic Chabant <ludovic@chabant.com>
parents: 20
diff changeset
272 re-enable Gutentags, you won't have some buffers
4
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
273 mysteriously working while others (those open last)
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
274 don't.
222
34aa86c552db Add documentation about `gutentags_trace`.
Ludovic Chabant <ludovic@chabant.com>
parents: 218
diff changeset
275 Defaults to `1`.
34aa86c552db Add documentation about `gutentags_trace`.
Ludovic Chabant <ludovic@chabant.com>
parents: 218
diff changeset
276
34aa86c552db Add documentation about `gutentags_trace`.
Ludovic Chabant <ludovic@chabant.com>
parents: 218
diff changeset
277 *gutentags_trace*
34aa86c552db Add documentation about `gutentags_trace`.
Ludovic Chabant <ludovic@chabant.com>
parents: 218
diff changeset
278 g:gutentags_trace
34aa86c552db Add documentation about `gutentags_trace`.
Ludovic Chabant <ludovic@chabant.com>
parents: 218
diff changeset
279 When true, Gutentags will spit out debugging
34aa86c552db Add documentation about `gutentags_trace`.
Ludovic Chabant <ludovic@chabant.com>
parents: 218
diff changeset
280 information as Vim messages (which you can later read
34aa86c552db Add documentation about `gutentags_trace`.
Ludovic Chabant <ludovic@chabant.com>
parents: 218
diff changeset
281 with |:messages|). It also runs its background scripts
34aa86c552db Add documentation about `gutentags_trace`.
Ludovic Chabant <ludovic@chabant.com>
parents: 218
diff changeset
282 with extra parameters to log activity to a `tags.log`
34aa86c552db Add documentation about `gutentags_trace`.
Ludovic Chabant <ludovic@chabant.com>
parents: 218
diff changeset
283 file that you can also inspect for more information.
34aa86c552db Add documentation about `gutentags_trace`.
Ludovic Chabant <ludovic@chabant.com>
parents: 218
diff changeset
284
34aa86c552db Add documentation about `gutentags_trace`.
Ludovic Chabant <ludovic@chabant.com>
parents: 218
diff changeset
285 Note: you can run `:verbose GutentagsUpdate` to
34aa86c552db Add documentation about `gutentags_trace`.
Ludovic Chabant <ludovic@chabant.com>
parents: 218
diff changeset
286 temporarily set |g:gutentags_trace| to `1` for that
34aa86c552db Add documentation about `gutentags_trace`.
Ludovic Chabant <ludovic@chabant.com>
parents: 218
diff changeset
287 update only.
34aa86c552db Add documentation about `gutentags_trace`.
Ludovic Chabant <ludovic@chabant.com>
parents: 218
diff changeset
288
34aa86c552db Add documentation about `gutentags_trace`.
Ludovic Chabant <ludovic@chabant.com>
parents: 218
diff changeset
289 Defaults to `0`.
4
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
290
149
f915393ff68d Add `g:gutentags_dont_load` setting.
Ludovic Chabant <ludovic@chabant.com>
parents: 145
diff changeset
291 *gutentags_dont_load*
f915393ff68d Add `g:gutentags_dont_load` setting.
Ludovic Chabant <ludovic@chabant.com>
parents: 145
diff changeset
292 g:gutentags_dont_load
f915393ff68d Add `g:gutentags_dont_load` setting.
Ludovic Chabant <ludovic@chabant.com>
parents: 145
diff changeset
293 Prevents Gutentags from loading at all on Vim startup.
f915393ff68d Add `g:gutentags_dont_load` setting.
Ludovic Chabant <ludovic@chabant.com>
parents: 145
diff changeset
294
f915393ff68d Add `g:gutentags_dont_load` setting.
Ludovic Chabant <ludovic@chabant.com>
parents: 145
diff changeset
295 The difference between this and |gutentags_enabled| is
f915393ff68d Add `g:gutentags_dont_load` setting.
Ludovic Chabant <ludovic@chabant.com>
parents: 145
diff changeset
296 that |gutentags_enabled| can be turned on and off in
f915393ff68d Add `g:gutentags_dont_load` setting.
Ludovic Chabant <ludovic@chabant.com>
parents: 145
diff changeset
297 the same Vim session -- Gutentags as a plugin stays
f915393ff68d Add `g:gutentags_dont_load` setting.
Ludovic Chabant <ludovic@chabant.com>
parents: 145
diff changeset
298 loaded and will keep track of what happened while it
f915393ff68d Add `g:gutentags_dont_load` setting.
Ludovic Chabant <ludovic@chabant.com>
parents: 145
diff changeset
299 was disabled. However, |gutentags_dont_load| only
f915393ff68d Add `g:gutentags_dont_load` setting.
Ludovic Chabant <ludovic@chabant.com>
parents: 145
diff changeset
300 works on Vim startup and will prevent Gutentags from
f915393ff68d Add `g:gutentags_dont_load` setting.
Ludovic Chabant <ludovic@chabant.com>
parents: 145
diff changeset
301 loading at all, as if it wasn't there.
f915393ff68d Add `g:gutentags_dont_load` setting.
Ludovic Chabant <ludovic@chabant.com>
parents: 145
diff changeset
302
204
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
303 *gutentags_modules*
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
304 g:gutentags_modules
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
305 A list of modules to load with Gutentags. Each module
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
306 is responsible for generating a specific type of tags
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
307 file.
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
308 Valid values are:
4
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
309
204
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
310 - `ctags`: generates a `tags` file using
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
311 a `ctags`-compatible program like Exhuberant Ctags
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
312 or Universal Ctags.
68
ca61487b3215 Add docs about ctags executable per filetype
marc <marc@lamarciana.com>
parents: 60
diff changeset
313
204
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
314 - `cscope`: generates a code database file using
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
315 `cscope`.
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
316
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
317 - `gtags_cscope`: same as `cscope` but uses GNU's
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
318 `gtags` executable and database.
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
319
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
320 Defaults to `[ctags]`.
4
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
321
22
4e1b0253f71a Renamed project to "Gutentags" (thanks Sylvain!).
Ludovic Chabant <ludovic@chabant.com>
parents: 20
diff changeset
322 *gutentags_project_root*
4e1b0253f71a Renamed project to "Gutentags" (thanks Sylvain!).
Ludovic Chabant <ludovic@chabant.com>
parents: 20
diff changeset
323 g:gutentags_project_root
4e1b0253f71a Renamed project to "Gutentags" (thanks Sylvain!).
Ludovic Chabant <ludovic@chabant.com>
parents: 20
diff changeset
324 When a buffer is loaded, Gutentags will figure out if
4
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
325 it's part of a project that should have tags managed
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
326 automatically. To do this, it looks for "root markers"
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
327 in the current file's directory and its parent
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
328 directories. If it finds any of those markers,
22
4e1b0253f71a Renamed project to "Gutentags" (thanks Sylvain!).
Ludovic Chabant <ludovic@chabant.com>
parents: 20
diff changeset
329 Gutentags will be enabled for the project, and a tags
165
cbc1ebe23ef1 Rename all ctags-related options to have "ctags" in their name.
Ludovic Chabant <ludovic@chabant.com>
parents: 149
diff changeset
330 file named after |gutentags_ctags_tagfile| will be
cbc1ebe23ef1 Rename all ctags-related options to have "ctags" in their name.
Ludovic Chabant <ludovic@chabant.com>
parents: 149
diff changeset
331 created at the project root.
4
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
332 Defaults to `[]` (an empty |List|).
128
e673026faa56 Add option to not append the default project root markers.
Ludovic Chabant <ludovic@chabant.com>
parents: 124
diff changeset
333 A list of default markers will be appended to the
e673026faa56 Add option to not append the default project root markers.
Ludovic Chabant <ludovic@chabant.com>
parents: 124
diff changeset
334 user-defined ones unless
e673026faa56 Add option to not append the default project root markers.
Ludovic Chabant <ludovic@chabant.com>
parents: 124
diff changeset
335 |gutentags_add_default_project_roots| is set to 0.
232
39df368aaf2a Improve docs concerning gtags_cscope module
janEbert <jebert@techfak.uni-bielefeld.de>
parents: 229
diff changeset
336
128
e673026faa56 Add option to not append the default project root markers.
Ludovic Chabant <ludovic@chabant.com>
parents: 124
diff changeset
337 *gutentags_add_default_project_roots*
e673026faa56 Add option to not append the default project root markers.
Ludovic Chabant <ludovic@chabant.com>
parents: 124
diff changeset
338 g:gutentags_add_default_project_roots
e673026faa56 Add option to not append the default project root markers.
Ludovic Chabant <ludovic@chabant.com>
parents: 124
diff changeset
339 Defines whether Gutentags should always define some
e673026faa56 Add option to not append the default project root markers.
Ludovic Chabant <ludovic@chabant.com>
parents: 124
diff changeset
340 default project roots (see |gutentags_project_root|).
e673026faa56 Add option to not append the default project root markers.
Ludovic Chabant <ludovic@chabant.com>
parents: 124
diff changeset
341 This can be useful to prevent unnecessary disk access
e673026faa56 Add option to not append the default project root markers.
Ludovic Chabant <ludovic@chabant.com>
parents: 124
diff changeset
342 when Gutentags searches for a project root.
e673026faa56 Add option to not append the default project root markers.
Ludovic Chabant <ludovic@chabant.com>
parents: 124
diff changeset
343 The default markers are:
e673026faa56 Add option to not append the default project root markers.
Ludovic Chabant <ludovic@chabant.com>
parents: 124
diff changeset
344 `['.git', '.hg', '.bzr', '_darcs', '_darcs', '_FOSSIL_', '.fslckout']`
4
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
345
229
34bee0477b51 Add `g:gutentags_exclude_filetypes` setting.
Ludovic Chabant <ludovic@chabant.com>
parents: 223
diff changeset
346 *gutentags_exclude_filetypes*
34bee0477b51 Add `g:gutentags_exclude_filetypes` setting.
Ludovic Chabant <ludovic@chabant.com>
parents: 223
diff changeset
347 g:gutentags_exclude_filetypes
34bee0477b51 Add `g:gutentags_exclude_filetypes` setting.
Ludovic Chabant <ludovic@chabant.com>
parents: 223
diff changeset
348 A |List| of file types (see |'filetype'|) that Gutentags
34bee0477b51 Add `g:gutentags_exclude_filetypes` setting.
Ludovic Chabant <ludovic@chabant.com>
parents: 223
diff changeset
349 should ignore. When a buffer is opened, if its
34bee0477b51 Add `g:gutentags_exclude_filetypes` setting.
Ludovic Chabant <ludovic@chabant.com>
parents: 223
diff changeset
350 'filetype' is found in this list, Gutentags features
34bee0477b51 Add `g:gutentags_exclude_filetypes` setting.
Ludovic Chabant <ludovic@chabant.com>
parents: 223
diff changeset
351 won't be available for this buffer.
34bee0477b51 Add `g:gutentags_exclude_filetypes` setting.
Ludovic Chabant <ludovic@chabant.com>
parents: 223
diff changeset
352 Defaults to an empty list (`[]`).
34bee0477b51 Add `g:gutentags_exclude_filetypes` setting.
Ludovic Chabant <ludovic@chabant.com>
parents: 223
diff changeset
353
118
2838af9ff980 Add `g:gutentags_exclude_project_root`.
Ludovic Chabant <ludovic@chabant.com>
parents: 98
diff changeset
354 *gutentags_exclude_project_root*
2838af9ff980 Add `g:gutentags_exclude_project_root`.
Ludovic Chabant <ludovic@chabant.com>
parents: 98
diff changeset
355 g:gutentags_exclude_project_root
2838af9ff980 Add `g:gutentags_exclude_project_root`.
Ludovic Chabant <ludovic@chabant.com>
parents: 98
diff changeset
356 A list of project roots to generally ignore. If a file
2838af9ff980 Add `g:gutentags_exclude_project_root`.
Ludovic Chabant <ludovic@chabant.com>
parents: 98
diff changeset
357 is opened inside one of those projects, Gutentags
2838af9ff980 Add `g:gutentags_exclude_project_root`.
Ludovic Chabant <ludovic@chabant.com>
parents: 98
diff changeset
358 won't be activated. This is similar to placing
2838af9ff980 Add `g:gutentags_exclude_project_root`.
Ludovic Chabant <ludovic@chabant.com>
parents: 98
diff changeset
359 a `.notags` file in the root of those projects, but
2838af9ff980 Add `g:gutentags_exclude_project_root`.
Ludovic Chabant <ludovic@chabant.com>
parents: 98
diff changeset
360 can be useful when you don't want to, or can't, place
2838af9ff980 Add `g:gutentags_exclude_project_root`.
Ludovic Chabant <ludovic@chabant.com>
parents: 98
diff changeset
361 such a file there.
132
a6ef1c860d07 Add support for custom root finders like `vim-projectroot`.
Ludovic Chabant <ludovic@chabant.com>
parents: 129
diff changeset
362 Defaults to `['/usr/local']`, which is the folder where
118
2838af9ff980 Add `g:gutentags_exclude_project_root`.
Ludovic Chabant <ludovic@chabant.com>
parents: 98
diff changeset
363 Homebrew is known to create a Git directory by default
2838af9ff980 Add `g:gutentags_exclude_project_root`.
Ludovic Chabant <ludovic@chabant.com>
parents: 98
diff changeset
364 on MacOS.
2838af9ff980 Add `g:gutentags_exclude_project_root`.
Ludovic Chabant <ludovic@chabant.com>
parents: 98
diff changeset
365
132
a6ef1c860d07 Add support for custom root finders like `vim-projectroot`.
Ludovic Chabant <ludovic@chabant.com>
parents: 129
diff changeset
366 *gutentags_project_root_finder*
a6ef1c860d07 Add support for custom root finders like `vim-projectroot`.
Ludovic Chabant <ludovic@chabant.com>
parents: 129
diff changeset
367 g:gutentags_project_root_finder
a6ef1c860d07 Add support for custom root finders like `vim-projectroot`.
Ludovic Chabant <ludovic@chabant.com>
parents: 129
diff changeset
368 When a buffer is loaded, Gutentags uses a default
a6ef1c860d07 Add support for custom root finders like `vim-projectroot`.
Ludovic Chabant <ludovic@chabant.com>
parents: 129
diff changeset
369 (internal) implementation to find that file's
a6ef1c860d07 Add support for custom root finders like `vim-projectroot`.
Ludovic Chabant <ludovic@chabant.com>
parents: 129
diff changeset
370 project's root directory, using settings like
a6ef1c860d07 Add support for custom root finders like `vim-projectroot`.
Ludovic Chabant <ludovic@chabant.com>
parents: 129
diff changeset
371 |g:gutentags_project_root|. When you specify
a6ef1c860d07 Add support for custom root finders like `vim-projectroot`.
Ludovic Chabant <ludovic@chabant.com>
parents: 129
diff changeset
372 |g:gutentags_project_root_finder|, you can tell
a6ef1c860d07 Add support for custom root finders like `vim-projectroot`.
Ludovic Chabant <ludovic@chabant.com>
parents: 129
diff changeset
373 Gutentags to use a custom implementation, such as
a6ef1c860d07 Add support for custom root finders like `vim-projectroot`.
Ludovic Chabant <ludovic@chabant.com>
parents: 129
diff changeset
374 `vim-projectroot`. The value of this setting must be
a6ef1c860d07 Add support for custom root finders like `vim-projectroot`.
Ludovic Chabant <ludovic@chabant.com>
parents: 129
diff changeset
375 the name of a function that takes a single string
a6ef1c860d07 Add support for custom root finders like `vim-projectroot`.
Ludovic Chabant <ludovic@chabant.com>
parents: 129
diff changeset
376 argument (the path to the current buffer's file) and
a6ef1c860d07 Add support for custom root finders like `vim-projectroot`.
Ludovic Chabant <ludovic@chabant.com>
parents: 129
diff changeset
377 returns a string value (the project's root directory).
a6ef1c860d07 Add support for custom root finders like `vim-projectroot`.
Ludovic Chabant <ludovic@chabant.com>
parents: 129
diff changeset
378 Defaults to `''`.
a6ef1c860d07 Add support for custom root finders like `vim-projectroot`.
Ludovic Chabant <ludovic@chabant.com>
parents: 129
diff changeset
379 Note: when set, the called implementation will most
a6ef1c860d07 Add support for custom root finders like `vim-projectroot`.
Ludovic Chabant <ludovic@chabant.com>
parents: 129
diff changeset
380 likely ignore |g:gutentags_project_root|.
a6ef1c860d07 Add support for custom root finders like `vim-projectroot`.
Ludovic Chabant <ludovic@chabant.com>
parents: 129
diff changeset
381
22
4e1b0253f71a Renamed project to "Gutentags" (thanks Sylvain!).
Ludovic Chabant <ludovic@chabant.com>
parents: 20
diff changeset
382 *gutentags_generate_on_missing*
4e1b0253f71a Renamed project to "Gutentags" (thanks Sylvain!).
Ludovic Chabant <ludovic@chabant.com>
parents: 20
diff changeset
383 g:gutentags_generate_on_missing
4e1b0253f71a Renamed project to "Gutentags" (thanks Sylvain!).
Ludovic Chabant <ludovic@chabant.com>
parents: 20
diff changeset
384 If set to 1, Gutentags will start generating an initial
4
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
385 tag file if a file is open in a project where no tags
22
4e1b0253f71a Renamed project to "Gutentags" (thanks Sylvain!).
Ludovic Chabant <ludovic@chabant.com>
parents: 20
diff changeset
386 file is found. See |gutentags_project_root| for how
4e1b0253f71a Renamed project to "Gutentags" (thanks Sylvain!).
Ludovic Chabant <ludovic@chabant.com>
parents: 20
diff changeset
387 Gutentags locates the project.
4e1b0253f71a Renamed project to "Gutentags" (thanks Sylvain!).
Ludovic Chabant <ludovic@chabant.com>
parents: 20
diff changeset
388 When set to 0, Gutentags will only generate the first
4
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
389 time the file is saved (if
22
4e1b0253f71a Renamed project to "Gutentags" (thanks Sylvain!).
Ludovic Chabant <ludovic@chabant.com>
parents: 20
diff changeset
390 |gutentags_generate_on_write| is set to 1), or when
4e1b0253f71a Renamed project to "Gutentags" (thanks Sylvain!).
Ludovic Chabant <ludovic@chabant.com>
parents: 20
diff changeset
391 |GutentagsUpdate| or |GutentagsGenerate| is run.
4
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
392 Defaults to 1.
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
393
61
735fce322ae4 Add documentation for `g:gutentags_generate_on_new`.
Ludovic Chabant <ludovic@chabant.com>
parents: 60
diff changeset
394 *gutentags_generate_on_new*
735fce322ae4 Add documentation for `g:gutentags_generate_on_new`.
Ludovic Chabant <ludovic@chabant.com>
parents: 60
diff changeset
395 g:gutentags_generate_on_new
735fce322ae4 Add documentation for `g:gutentags_generate_on_new`.
Ludovic Chabant <ludovic@chabant.com>
parents: 60
diff changeset
396 If set to 1, Gutentags will start generating the tag
735fce322ae4 Add documentation for `g:gutentags_generate_on_new`.
Ludovic Chabant <ludovic@chabant.com>
parents: 60
diff changeset
397 file when a new project is open. A new project is
735fce322ae4 Add documentation for `g:gutentags_generate_on_new`.
Ludovic Chabant <ludovic@chabant.com>
parents: 60
diff changeset
398 considered open when a buffer is created for a file
735fce322ae4 Add documentation for `g:gutentags_generate_on_new`.
Ludovic Chabant <ludovic@chabant.com>
parents: 60
diff changeset
399 whose corresponding tag file has not been "seen" yet
735fce322ae4 Add documentation for `g:gutentags_generate_on_new`.
Ludovic Chabant <ludovic@chabant.com>
parents: 60
diff changeset
400 in the current Vim session -- which pretty much means
735fce322ae4 Add documentation for `g:gutentags_generate_on_new`.
Ludovic Chabant <ludovic@chabant.com>
parents: 60
diff changeset
401 when you open the first file in a given source control
735fce322ae4 Add documentation for `g:gutentags_generate_on_new`.
Ludovic Chabant <ludovic@chabant.com>
parents: 60
diff changeset
402 repository.
735fce322ae4 Add documentation for `g:gutentags_generate_on_new`.
Ludovic Chabant <ludovic@chabant.com>
parents: 60
diff changeset
403 When set to 0, Gutentags won't do anything special.
735fce322ae4 Add documentation for `g:gutentags_generate_on_new`.
Ludovic Chabant <ludovic@chabant.com>
parents: 60
diff changeset
404 See also |gutentags_generate_on_missing| and
735fce322ae4 Add documentation for `g:gutentags_generate_on_new`.
Ludovic Chabant <ludovic@chabant.com>
parents: 60
diff changeset
405 |gutentags_generate_on_write|.
735fce322ae4 Add documentation for `g:gutentags_generate_on_new`.
Ludovic Chabant <ludovic@chabant.com>
parents: 60
diff changeset
406 Defaults to 1.
735fce322ae4 Add documentation for `g:gutentags_generate_on_new`.
Ludovic Chabant <ludovic@chabant.com>
parents: 60
diff changeset
407
22
4e1b0253f71a Renamed project to "Gutentags" (thanks Sylvain!).
Ludovic Chabant <ludovic@chabant.com>
parents: 20
diff changeset
408 *gutentags_generate_on_write*
4e1b0253f71a Renamed project to "Gutentags" (thanks Sylvain!).
Ludovic Chabant <ludovic@chabant.com>
parents: 20
diff changeset
409 g:gutentags_generate_on_write
4e1b0253f71a Renamed project to "Gutentags" (thanks Sylvain!).
Ludovic Chabant <ludovic@chabant.com>
parents: 20
diff changeset
410 If set to 1, Gutentags will update the current
4
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
411 project's tag file when a file inside that project is
22
4e1b0253f71a Renamed project to "Gutentags" (thanks Sylvain!).
Ludovic Chabant <ludovic@chabant.com>
parents: 20
diff changeset
412 saved. See |gutentags_project_root| for how Gutentags
4
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
413 locates the project.
22
4e1b0253f71a Renamed project to "Gutentags" (thanks Sylvain!).
Ludovic Chabant <ludovic@chabant.com>
parents: 20
diff changeset
414 When set to 0, Gutentags won't do anything on save.
4
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
415 This means that the project's tag file won't reflect
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
416 the latest changes, and you will have to run
22
4e1b0253f71a Renamed project to "Gutentags" (thanks Sylvain!).
Ludovic Chabant <ludovic@chabant.com>
parents: 20
diff changeset
417 |GutentagsUpdate| manually.
4
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
418 Defaults to 1.
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
419
182
2489b4b54d5c Add `g:gutentags_generate_on_empty_buffer` setting.
Ludovic Chabant <ludovic@chabant.com>
parents: 165
diff changeset
420 *gutentags_generate_on_empty_buffer*
2489b4b54d5c Add `g:gutentags_generate_on_empty_buffer` setting.
Ludovic Chabant <ludovic@chabant.com>
parents: 165
diff changeset
421 g:gutentags_generate_on_empty_buffer
2489b4b54d5c Add `g:gutentags_generate_on_empty_buffer` setting.
Ludovic Chabant <ludovic@chabant.com>
parents: 165
diff changeset
422 If set to 1, Gutentags will start generating the tag
2489b4b54d5c Add `g:gutentags_generate_on_empty_buffer` setting.
Ludovic Chabant <ludovic@chabant.com>
parents: 165
diff changeset
423 file even if there's no buffer currently open, as long
2489b4b54d5c Add `g:gutentags_generate_on_empty_buffer` setting.
Ludovic Chabant <ludovic@chabant.com>
parents: 165
diff changeset
424 as the current working directory (as returned by
2489b4b54d5c Add `g:gutentags_generate_on_empty_buffer` setting.
Ludovic Chabant <ludovic@chabant.com>
parents: 165
diff changeset
425 |:cd|) is inside a known project.
2489b4b54d5c Add `g:gutentags_generate_on_empty_buffer` setting.
Ludovic Chabant <ludovic@chabant.com>
parents: 165
diff changeset
426 This is useful if you want Gutentags to generate the
2489b4b54d5c Add `g:gutentags_generate_on_empty_buffer` setting.
Ludovic Chabant <ludovic@chabant.com>
parents: 165
diff changeset
427 tag file right after opening Vim.
2489b4b54d5c Add `g:gutentags_generate_on_empty_buffer` setting.
Ludovic Chabant <ludovic@chabant.com>
parents: 165
diff changeset
428 Defaults to 0.
2489b4b54d5c Add `g:gutentags_generate_on_empty_buffer` setting.
Ludovic Chabant <ludovic@chabant.com>
parents: 165
diff changeset
429
22
4e1b0253f71a Renamed project to "Gutentags" (thanks Sylvain!).
Ludovic Chabant <ludovic@chabant.com>
parents: 20
diff changeset
430 *gutentags_background_update*
4e1b0253f71a Renamed project to "Gutentags" (thanks Sylvain!).
Ludovic Chabant <ludovic@chabant.com>
parents: 20
diff changeset
431 g:gutentags_background_update
4
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
432 Specifies whether the process that updates the tags
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
433 file should be run in the background or in the
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
434 foreground. If run in the foreground, Vim will block
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
435 until the process is complete.
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
436 Defaults to 1.
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
437
22
4e1b0253f71a Renamed project to "Gutentags" (thanks Sylvain!).
Ludovic Chabant <ludovic@chabant.com>
parents: 20
diff changeset
438 *gutentags_cache_dir*
4e1b0253f71a Renamed project to "Gutentags" (thanks Sylvain!).
Ludovic Chabant <ludovic@chabant.com>
parents: 20
diff changeset
439 g:gutentags_cache_dir
20
bd136cb41034 Update documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 17
diff changeset
440 Specifies a directory in which to create all the tags
bd136cb41034 Update documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 17
diff changeset
441 files, instead of writing them at the root of each
bd136cb41034 Update documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 17
diff changeset
442 project. This is handy to keep tags files from
bd136cb41034 Update documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 17
diff changeset
443 polluting many directories all across your computer.
4
512eaa56c7db First pass at documentation.
Ludovic Chabant <ludovic@chabant.com>
parents: 0
diff changeset
444
85
0424970d81f8 Add a `g:gutentags_resolve_symlinks` option to resolve symlinks at setup time.
Ludovic Chabant <ludovic@chabant.com>
parents: 74
diff changeset
445 *gutentags_resolve_symlinks*
0424970d81f8 Add a `g:gutentags_resolve_symlinks` option to resolve symlinks at setup time.
Ludovic Chabant <ludovic@chabant.com>
parents: 74
diff changeset
446 g:gutentags_resolve_symlinks
0424970d81f8 Add a `g:gutentags_resolve_symlinks` option to resolve symlinks at setup time.
Ludovic Chabant <ludovic@chabant.com>
parents: 74
diff changeset
447 When set to 1, Gutentags will resolve any symlinks in
0424970d81f8 Add a `g:gutentags_resolve_symlinks` option to resolve symlinks at setup time.
Ludovic Chabant <ludovic@chabant.com>
parents: 74
diff changeset
448 the current buffer's path in order to find the project
0424970d81f8 Add a `g:gutentags_resolve_symlinks` option to resolve symlinks at setup time.
Ludovic Chabant <ludovic@chabant.com>
parents: 74
diff changeset
449 it belongs to. This is what you want if you're editing
0424970d81f8 Add a `g:gutentags_resolve_symlinks` option to resolve symlinks at setup time.
Ludovic Chabant <ludovic@chabant.com>
parents: 74
diff changeset
450 a symlink located outside of the project, and it
0424970d81f8 Add a `g:gutentags_resolve_symlinks` option to resolve symlinks at setup time.
Ludovic Chabant <ludovic@chabant.com>
parents: 74
diff changeset
451 points to a file inside the project. However, this is
0424970d81f8 Add a `g:gutentags_resolve_symlinks` option to resolve symlinks at setup time.
Ludovic Chabant <ludovic@chabant.com>
parents: 74
diff changeset
452 maybe not what you want if the symlink itself is
0424970d81f8 Add a `g:gutentags_resolve_symlinks` option to resolve symlinks at setup time.
Ludovic Chabant <ludovic@chabant.com>
parents: 74
diff changeset
453 part of the project.
0424970d81f8 Add a `g:gutentags_resolve_symlinks` option to resolve symlinks at setup time.
Ludovic Chabant <ludovic@chabant.com>
parents: 74
diff changeset
454 Defaults to 0.
88
073e63cc0456 Add `gutentags_enabled_user_func` callback.
Ludovic Chabant <ludovic@chabant.com>
parents: 85
diff changeset
455
141
7bc4df0225d1 Add support for specifying buffer-specific tagfiles.
Ludovic Chabant <ludovic@chabant.com>
parents: 140
diff changeset
456 *gutentags_init_user_func*
7bc4df0225d1 Add support for specifying buffer-specific tagfiles.
Ludovic Chabant <ludovic@chabant.com>
parents: 140
diff changeset
457 g:gutentags_init_user_func
88
073e63cc0456 Add `gutentags_enabled_user_func` callback.
Ludovic Chabant <ludovic@chabant.com>
parents: 85
diff changeset
458 When set to a non-empty string, it is expected to be
073e63cc0456 Add `gutentags_enabled_user_func` callback.
Ludovic Chabant <ludovic@chabant.com>
parents: 85
diff changeset
459 the name of a function that will be called when a file
123
76a4822aab76 Use existing b:gutentags_root
Daniel Hahler <git@thequod.de>
parents: 98
diff changeset
460 is opened in a project. The function gets passed the
88
073e63cc0456 Add `gutentags_enabled_user_func` callback.
Ludovic Chabant <ludovic@chabant.com>
parents: 85
diff changeset
461 path of the file and if it returns 0, Gutentags won't
073e63cc0456 Add `gutentags_enabled_user_func` callback.
Ludovic Chabant <ludovic@chabant.com>
parents: 85
diff changeset
462 be enabled for that file.
141
7bc4df0225d1 Add support for specifying buffer-specific tagfiles.
Ludovic Chabant <ludovic@chabant.com>
parents: 140
diff changeset
463
7bc4df0225d1 Add support for specifying buffer-specific tagfiles.
Ludovic Chabant <ludovic@chabant.com>
parents: 140
diff changeset
464 You can use this to manually set buffer-local
7bc4df0225d1 Add support for specifying buffer-specific tagfiles.
Ludovic Chabant <ludovic@chabant.com>
parents: 140
diff changeset
465 settings:
7bc4df0225d1 Add support for specifying buffer-specific tagfiles.
Ludovic Chabant <ludovic@chabant.com>
parents: 140
diff changeset
466
165
cbc1ebe23ef1 Rename all ctags-related options to have "ctags" in their name.
Ludovic Chabant <ludovic@chabant.com>
parents: 149
diff changeset
467 * `b:gutentags_ctags_tagfile` (see |gutentags_ctags_tagfile|).
141
7bc4df0225d1 Add support for specifying buffer-specific tagfiles.
Ludovic Chabant <ludovic@chabant.com>
parents: 140
diff changeset
468
7bc4df0225d1 Add support for specifying buffer-specific tagfiles.
Ludovic Chabant <ludovic@chabant.com>
parents: 140
diff changeset
469 This setting was previously called
7bc4df0225d1 Add support for specifying buffer-specific tagfiles.
Ludovic Chabant <ludovic@chabant.com>
parents: 140
diff changeset
470 `gutentags_enabled_user_func`. The old setting is
7bc4df0225d1 Add support for specifying buffer-specific tagfiles.
Ludovic Chabant <ludovic@chabant.com>
parents: 140
diff changeset
471 still used as a fallback.
7bc4df0225d1 Add support for specifying buffer-specific tagfiles.
Ludovic Chabant <ludovic@chabant.com>
parents: 140
diff changeset
472
88
073e63cc0456 Add `gutentags_enabled_user_func` callback.
Ludovic Chabant <ludovic@chabant.com>
parents: 85
diff changeset
473 Defaults to "".
85
0424970d81f8 Add a `g:gutentags_resolve_symlinks` option to resolve symlinks at setup time.
Ludovic Chabant <ludovic@chabant.com>
parents: 74
diff changeset
474
46
c0f56e4d52bd Make a bunch of advanced commands opt-in only.
Ludovic Chabant <ludovic@chabant.com>
parents: 43
diff changeset
475 *gutentags_define_advanced_commands*
c0f56e4d52bd Make a bunch of advanced commands opt-in only.
Ludovic Chabant <ludovic@chabant.com>
parents: 43
diff changeset
476 g:gutentags_define_advanced_commands
c0f56e4d52bd Make a bunch of advanced commands opt-in only.
Ludovic Chabant <ludovic@chabant.com>
parents: 43
diff changeset
477 Defines some advanced commands like
c0f56e4d52bd Make a bunch of advanced commands opt-in only.
Ludovic Chabant <ludovic@chabant.com>
parents: 43
diff changeset
478 |GutentagsToggleEnabled| and |GutentagsUnlock|.
c0f56e4d52bd Make a bunch of advanced commands opt-in only.
Ludovic Chabant <ludovic@chabant.com>
parents: 43
diff changeset
479
89
8bf96f9f649c Add support for project types.
Ludovic Chabant <ludovic@chabant.com>
parents: 88
diff changeset
480 *gutentags_project_info*
8bf96f9f649c Add support for project types.
Ludovic Chabant <ludovic@chabant.com>
parents: 88
diff changeset
481 g:gutentags_project_info
8bf96f9f649c Add support for project types.
Ludovic Chabant <ludovic@chabant.com>
parents: 88
diff changeset
482 Defines ways for Gutentags to figure out what kind of
8bf96f9f649c Add support for project types.
Ludovic Chabant <ludovic@chabant.com>
parents: 88
diff changeset
483 project any given file belongs to. This should be
8bf96f9f649c Add support for project types.
Ludovic Chabant <ludovic@chabant.com>
parents: 88
diff changeset
484 a list of dictionaries:
8bf96f9f649c Add support for project types.
Ludovic Chabant <ludovic@chabant.com>
parents: 88
diff changeset
485
8bf96f9f649c Add support for project types.
Ludovic Chabant <ludovic@chabant.com>
parents: 88
diff changeset
486 let g:gutentags_project_info = []
8bf96f9f649c Add support for project types.
Ludovic Chabant <ludovic@chabant.com>
parents: 88
diff changeset
487 call add(g:gutentags_project_info, {...})
8bf96f9f649c Add support for project types.
Ludovic Chabant <ludovic@chabant.com>
parents: 88
diff changeset
488
8bf96f9f649c Add support for project types.
Ludovic Chabant <ludovic@chabant.com>
parents: 88
diff changeset
489 Each dictionary item must contain at least a `type`
8bf96f9f649c Add support for project types.
Ludovic Chabant <ludovic@chabant.com>
parents: 88
diff changeset
490 key, indicating the type of project:
8bf96f9f649c Add support for project types.
Ludovic Chabant <ludovic@chabant.com>
parents: 88
diff changeset
491
8bf96f9f649c Add support for project types.
Ludovic Chabant <ludovic@chabant.com>
parents: 88
diff changeset
492 {"type": "python"}
8bf96f9f649c Add support for project types.
Ludovic Chabant <ludovic@chabant.com>
parents: 88
diff changeset
493
8bf96f9f649c Add support for project types.
Ludovic Chabant <ludovic@chabant.com>
parents: 88
diff changeset
494 Other items will be used to figure out if a project is
8bf96f9f649c Add support for project types.
Ludovic Chabant <ludovic@chabant.com>
parents: 88
diff changeset
495 of the given type.
8bf96f9f649c Add support for project types.
Ludovic Chabant <ludovic@chabant.com>
parents: 88
diff changeset
496
8bf96f9f649c Add support for project types.
Ludovic Chabant <ludovic@chabant.com>
parents: 88
diff changeset
497 "file": any existing file with this path (relative to
8bf96f9f649c Add support for project types.
Ludovic Chabant <ludovic@chabant.com>
parents: 88
diff changeset
498 the project root) will make the current project match
8bf96f9f649c Add support for project types.
Ludovic Chabant <ludovic@chabant.com>
parents: 88
diff changeset
499 the given info.
8bf96f9f649c Add support for project types.
Ludovic Chabant <ludovic@chabant.com>
parents: 88
diff changeset
500
8bf96f9f649c Add support for project types.
Ludovic Chabant <ludovic@chabant.com>
parents: 88
diff changeset
501 "glob": any result found with this glob pattern
8bf96f9f649c Add support for project types.
Ludovic Chabant <ludovic@chabant.com>
parents: 88
diff changeset
502 (relative to the project root) will make the current
8bf96f9f649c Add support for project types.
Ludovic Chabant <ludovic@chabant.com>
parents: 88
diff changeset
503 project match the given info. See |glob()| for more
8bf96f9f649c Add support for project types.
Ludovic Chabant <ludovic@chabant.com>
parents: 88
diff changeset
504 information.
8bf96f9f649c Add support for project types.
Ludovic Chabant <ludovic@chabant.com>
parents: 88
diff changeset
505
8bf96f9f649c Add support for project types.
Ludovic Chabant <ludovic@chabant.com>
parents: 88
diff changeset
506 Gutentags adds by default the following definitions:
8bf96f9f649c Add support for project types.
Ludovic Chabant <ludovic@chabant.com>
parents: 88
diff changeset
507
8bf96f9f649c Add support for project types.
Ludovic Chabant <ludovic@chabant.com>
parents: 88
diff changeset
508 call add(g:gutentags_project_info, {'type': 'python', 'file': 'setup.py'})
8bf96f9f649c Add support for project types.
Ludovic Chabant <ludovic@chabant.com>
parents: 88
diff changeset
509 call add(g:gutentags_project_info, {'type': 'ruby', 'file': 'Gemfile'})
8bf96f9f649c Add support for project types.
Ludovic Chabant <ludovic@chabant.com>
parents: 88
diff changeset
510
8bf96f9f649c Add support for project types.
Ludovic Chabant <ludovic@chabant.com>
parents: 88
diff changeset
511 This means, for example, that you can use
8bf96f9f649c Add support for project types.
Ludovic Chabant <ludovic@chabant.com>
parents: 88
diff changeset
512 `g:gutentags_ctags_executable_ruby` out of the box.
8bf96f9f649c Add support for project types.
Ludovic Chabant <ludovic@chabant.com>
parents: 88
diff changeset
513 See |gutentags_ctags_executable_{filetype}| for more
8bf96f9f649c Add support for project types.
Ludovic Chabant <ludovic@chabant.com>
parents: 88
diff changeset
514 information.
8bf96f9f649c Add support for project types.
Ludovic Chabant <ludovic@chabant.com>
parents: 88
diff changeset
515
136
286e5b3095d0 Allow restricting tag generation to files listed by custom commands
Stephen Kent <smkent@smkent.net>
parents: 132
diff changeset
516 *gutentags_file_list_command*
286e5b3095d0 Allow restricting tag generation to files listed by custom commands
Stephen Kent <smkent@smkent.net>
parents: 132
diff changeset
517 g:gutentags_file_list_command
286e5b3095d0 Allow restricting tag generation to files listed by custom commands
Stephen Kent <smkent@smkent.net>
parents: 132
diff changeset
518 Specifies command(s) to use to list files for which
286e5b3095d0 Allow restricting tag generation to files listed by custom commands
Stephen Kent <smkent@smkent.net>
parents: 132
diff changeset
519 tags should be generated, instead of recursively
286e5b3095d0 Allow restricting tag generation to files listed by custom commands
Stephen Kent <smkent@smkent.net>
parents: 132
diff changeset
520 examining all files within the project root. When
286e5b3095d0 Allow restricting tag generation to files listed by custom commands
Stephen Kent <smkent@smkent.net>
parents: 132
diff changeset
521 invoked, file list commands will execute in the
286e5b3095d0 Allow restricting tag generation to files listed by custom commands
Stephen Kent <smkent@smkent.net>
parents: 132
diff changeset
522 project root directory.
286e5b3095d0 Allow restricting tag generation to files listed by custom commands
Stephen Kent <smkent@smkent.net>
parents: 132
diff changeset
523
286e5b3095d0 Allow restricting tag generation to files listed by custom commands
Stephen Kent <smkent@smkent.net>
parents: 132
diff changeset
524 This setting is useful in projects using source
286e5b3095d0 Allow restricting tag generation to files listed by custom commands
Stephen Kent <smkent@smkent.net>
parents: 132
diff changeset
525 control to restrict tag generation to only files
286e5b3095d0 Allow restricting tag generation to files listed by custom commands
Stephen Kent <smkent@smkent.net>
parents: 132
diff changeset
526 tracked in the repository.
286e5b3095d0 Allow restricting tag generation to files listed by custom commands
Stephen Kent <smkent@smkent.net>
parents: 132
diff changeset
527
286e5b3095d0 Allow restricting tag generation to files listed by custom commands
Stephen Kent <smkent@smkent.net>
parents: 132
diff changeset
528 This variable may be set in one of two ways. If
286e5b3095d0 Allow restricting tag generation to files listed by custom commands
Stephen Kent <smkent@smkent.net>
parents: 132
diff changeset
529 set as a |String|, the specified command will be used to
286e5b3095d0 Allow restricting tag generation to files listed by custom commands
Stephen Kent <smkent@smkent.net>
parents: 132
diff changeset
530 list files for all projects. For example: >
286e5b3095d0 Allow restricting tag generation to files listed by custom commands
Stephen Kent <smkent@smkent.net>
parents: 132
diff changeset
531
286e5b3095d0 Allow restricting tag generation to files listed by custom commands
Stephen Kent <smkent@smkent.net>
parents: 132
diff changeset
532 let g:gutentags_file_list_command = 'find . -type f'
286e5b3095d0 Allow restricting tag generation to files listed by custom commands
Stephen Kent <smkent@smkent.net>
parents: 132
diff changeset
533 <
286e5b3095d0 Allow restricting tag generation to files listed by custom commands
Stephen Kent <smkent@smkent.net>
parents: 132
diff changeset
534 If set as a |Dictionary|, this variable should be set
286e5b3095d0 Allow restricting tag generation to files listed by custom commands
Stephen Kent <smkent@smkent.net>
parents: 132
diff changeset
535 as a mapping of project root markers to the desired
286e5b3095d0 Allow restricting tag generation to files listed by custom commands
Stephen Kent <smkent@smkent.net>
parents: 132
diff changeset
536 file list command for that root marker. (See
286e5b3095d0 Allow restricting tag generation to files listed by custom commands
Stephen Kent <smkent@smkent.net>
parents: 132
diff changeset
537 |gutentags_project_root| for how Gutentags uses root
190
6dc4bb6c53ba minor typos
minusf <minusf@gmail.com>
parents: 188
diff changeset
538 markers to locate the project.) For example: >
136
286e5b3095d0 Allow restricting tag generation to files listed by custom commands
Stephen Kent <smkent@smkent.net>
parents: 132
diff changeset
539
286e5b3095d0 Allow restricting tag generation to files listed by custom commands
Stephen Kent <smkent@smkent.net>
parents: 132
diff changeset
540 let g:gutentags_file_list_command = {
286e5b3095d0 Allow restricting tag generation to files listed by custom commands
Stephen Kent <smkent@smkent.net>
parents: 132
diff changeset
541 \ 'markers': {
286e5b3095d0 Allow restricting tag generation to files listed by custom commands
Stephen Kent <smkent@smkent.net>
parents: 132
diff changeset
542 \ '.git': 'git ls-files',
138
851aec42057d Use `hg files` in the example (`locate` is deprecated).
Ludovic Chabant <ludovic@chabant.com>
parents: 136
diff changeset
543 \ '.hg': 'hg files',
136
286e5b3095d0 Allow restricting tag generation to files listed by custom commands
Stephen Kent <smkent@smkent.net>
parents: 132
diff changeset
544 \ },
286e5b3095d0 Allow restricting tag generation to files listed by custom commands
Stephen Kent <smkent@smkent.net>
parents: 132
diff changeset
545 \ }
286e5b3095d0 Allow restricting tag generation to files listed by custom commands
Stephen Kent <smkent@smkent.net>
parents: 132
diff changeset
546 <
286e5b3095d0 Allow restricting tag generation to files listed by custom commands
Stephen Kent <smkent@smkent.net>
parents: 132
diff changeset
547 Note: If a custom ctags executable is specified, it
286e5b3095d0 Allow restricting tag generation to files listed by custom commands
Stephen Kent <smkent@smkent.net>
parents: 132
diff changeset
548 must support the '-L' command line option in order to
286e5b3095d0 Allow restricting tag generation to files listed by custom commands
Stephen Kent <smkent@smkent.net>
parents: 132
diff changeset
549 read the list of files to be examined.
0
a3a37124558b Initial commit.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
550
204
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
551
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
552 The following settings are valid for the `ctags` module.
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
553
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
554 *gutentags_ctags_executable*
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
555 g:gutentags_ctags_executable
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
556 Specifies the ctags executable to launch.
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
557 Defaults to `ctags`.
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
558
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
559 *gutentags_ctags_executable_{filetype}*
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
560 g:gutentags_ctags_executable_{type}
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
561 Specifies the ctags executable to launch for a project
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
562 of type {type}. See |gutentags_project_info| for more
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
563 information.
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
564 IMPORTANT: please see |gutentags-ctags-requirements|.
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
565 Example: >
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
566 let g:gutentags_ctags_executable_ruby = 'foobar'
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
567 <
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
568
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
569 *gutentags_ctags_tagfile*
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
570 g:gutentags_ctags_tagfile
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
571 Specifies the name of the tag file to create. This
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
572 will be appended to the project's root. See
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
573 |gutentags_project_root| for how Gutentags locates the
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
574 project.
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
575 Defaults to `tags`.
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
576
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
577 *gutentags_ctags_exclude*
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
578 g:gutentags_ctags_exclude
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
579 A list of file patterns to pass to the
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
580 |gutentags_ctags_executable| so that they will be
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
581 excluded from parsing for the tags generation.
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
582 See also |gutentags_ctags_exclude_wildignore|.
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
583 Defaults to `[]` (an empty |List|).
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
584
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
585 *gutentags_ctags_exclude_wildignore*
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
586 g:gutentags_ctags_exclude_wildignore
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
587 When 1, Gutentags will automatically pass your
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
588 'wildignore' file patterns to the
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
589 |gutentags_ctags_executable| so that they are ignored.
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
590 Set also |gutentags_ctags_exclude| to pass custom
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
591 patterns.
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
592 Defaults to 1.
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
593
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
594 *gutentags_ctags_auto_set_tags*
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
595 g:gutentags_ctags_auto_set_tags
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
596 If set to 1, Gutentags will automatically prepend
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
597 'tags' with the exact path to the tag file for the
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
598 current project. See |gutentags_project_root| for how
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
599 Gutentags locates the project.
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
600 When set to 0, Gutentags doesn't change 'tags', and
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
601 this means that whatever tag file it generates may
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
602 not be picked up by Vim. See |tagfiles()| to know what
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
603 tag files Vim knows about.
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
604 Defaults to 1.
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
605
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
606 *gutentags_ctags_extra_args*
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
607 g:gutentags_ctags_extra_args
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
608 A list of arguments to pass to `ctags`.
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
609 Defaults to `[]`.
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
610
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
611 *gutentags_ctags_post_process_cmd*
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
612 g:gutentags_ctags_post_process_cmd
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
613 If defined, the tags generation script will run the
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
614 command with an argument that points to a temporary
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
615 copy of the tags file. If the post-process step is
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
616 modifying the tags file, it needs to do so in-place.
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
617 This is useful for cleaning up a tags file that may
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
618 contain tags with non-ASCII names that somehow upsets
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
619 Vim.
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
620 Defaults to `""` (an empty |String|).
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
621
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
622
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
623 The following settings are valid for the `cscope` module.
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
624
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
625 *gutentags_cscope_executable*
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
626 g:gutentags_cscope_executable
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
627 Specifies the name or path of the `cscope` executable
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
628 to use to generate the code database.
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
629 Defaults to `"cscope"`.
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
630
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
631 *gutentags_auto_add_cscope*
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
632 g:gutentags_auto_add_cscope
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
633 If set to 1, Gutentags will automatically add the
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
634 generated code database to Vim by running `:cs add`
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
635 (see |:cscope|).
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
636 Defaults to 1.
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
637
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
638
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
639 The following settings are valid for the `gtags_cscope` module.
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
640
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
641 *gutentags_gtags_executable*
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
642 g:gutentags_gtags_executable
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
643 Specifies the name or path of the `gtags` executable
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
644 to use to generate the code database.
232
39df368aaf2a Improve docs concerning gtags_cscope module
janEbert <jebert@techfak.uni-bielefeld.de>
parents: 229
diff changeset
645 Defaults to `"gtags"`.
39df368aaf2a Improve docs concerning gtags_cscope module
janEbert <jebert@techfak.uni-bielefeld.de>
parents: 229
diff changeset
646
39df368aaf2a Improve docs concerning gtags_cscope module
janEbert <jebert@techfak.uni-bielefeld.de>
parents: 229
diff changeset
647 *gutentags_gtags_cscope_executable*
39df368aaf2a Improve docs concerning gtags_cscope module
janEbert <jebert@techfak.uni-bielefeld.de>
parents: 229
diff changeset
648 g:gutentags_gtags_cscope_executable
39df368aaf2a Improve docs concerning gtags_cscope module
janEbert <jebert@techfak.uni-bielefeld.de>
parents: 229
diff changeset
649 Specifies the name or path of the `gtags-cscope`
39df368aaf2a Improve docs concerning gtags_cscope module
janEbert <jebert@techfak.uni-bielefeld.de>
parents: 229
diff changeset
650 executable to use to generate the code database.
39df368aaf2a Improve docs concerning gtags_cscope module
janEbert <jebert@techfak.uni-bielefeld.de>
parents: 229
diff changeset
651 Defaults to `"gtags-cscope"`.
39df368aaf2a Improve docs concerning gtags_cscope module
janEbert <jebert@techfak.uni-bielefeld.de>
parents: 229
diff changeset
652
39df368aaf2a Improve docs concerning gtags_cscope module
janEbert <jebert@techfak.uni-bielefeld.de>
parents: 229
diff changeset
653 *gutentags_gtags_dbpath*
39df368aaf2a Improve docs concerning gtags_cscope module
janEbert <jebert@techfak.uni-bielefeld.de>
parents: 229
diff changeset
654 g:gutentags_gtags_dbpath
39df368aaf2a Improve docs concerning gtags_cscope module
janEbert <jebert@techfak.uni-bielefeld.de>
parents: 229
diff changeset
655 Path from the cache directory (|gutentags_cache_dir|
39df368aaf2a Improve docs concerning gtags_cscope module
janEbert <jebert@techfak.uni-bielefeld.de>
parents: 229
diff changeset
656 or project root) to the folder containing the
39df368aaf2a Improve docs concerning gtags_cscope module
janEbert <jebert@techfak.uni-bielefeld.de>
parents: 229
diff changeset
657 definition database file (usually called `GTAGS`).
39df368aaf2a Improve docs concerning gtags_cscope module
janEbert <jebert@techfak.uni-bielefeld.de>
parents: 229
diff changeset
658 Defaults to `""`.
204
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
659
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
660 *gutentags_gtags_options_file*
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
661 g:gutentags_gtags_options_file
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
662 The name of a file that will be looked for in
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
663 a project root directory. The file is expected to
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
664 contain `gtags` options (one per line).
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
665 Defaults to `".gutgtags"`.
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
666
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
667 *gutentags_auto_add_gtags_cscope*
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
668 g:gutentags_auto_add_gtags_cscope
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
669 If set to 1, Gutentags will automatically add the
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
670 generated code database to Vim by running `:cs add`
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
671 (see |:cscope|).
30ac3583c902 Re-arrange documentation of settings per module. Add missing settings.
Ludovic Chabant <ludovic@chabant.com>
parents: 202
diff changeset
672 Defaults to 1.
210
39547ffc8867 Add mention of `gutentags_plus` for Cscope users.
Ludovic Chabant <ludovic@chabant.com>
parents: 207
diff changeset
673
39547ffc8867 Add mention of `gutentags_plus` for Cscope users.
Ludovic Chabant <ludovic@chabant.com>
parents: 207
diff changeset
674 People using `cscope` or `gtags_cscope` across multiple projects in the same
39547ffc8867 Add mention of `gutentags_plus` for Cscope users.
Ludovic Chabant <ludovic@chabant.com>
parents: 207
diff changeset
675 Vim instance might be interested in the `gutentags_plus` plugin, which handles
232
39df368aaf2a Improve docs concerning gtags_cscope module
janEbert <jebert@techfak.uni-bielefeld.de>
parents: 229
diff changeset
676 switching databases automatically before performing a query.
210
39547ffc8867 Add mention of `gutentags_plus` for Cscope users.
Ludovic Chabant <ludovic@chabant.com>
parents: 207
diff changeset
677 See https://github.com/skywind3000/gutentags_plus.
232
39df368aaf2a Improve docs concerning gtags_cscope module
janEbert <jebert@techfak.uni-bielefeld.de>
parents: 229
diff changeset
678
49
70423c2202c5 Ctags options files changes
Ludovic Chabant <ludovic@chabant.com>
parents: 47
diff changeset
679 =============================================================================
70423c2202c5 Ctags options files changes
Ludovic Chabant <ludovic@chabant.com>
parents: 47
diff changeset
680 5. Project Settings *gutentags-project-settings*
70423c2202c5 Ctags options files changes
Ludovic Chabant <ludovic@chabant.com>
parents: 47
diff changeset
681
70423c2202c5 Ctags options files changes
Ludovic Chabant <ludovic@chabant.com>
parents: 47
diff changeset
682 Gutentags can be customized to some extent on a per-project basis with the
70423c2202c5 Ctags options files changes
Ludovic Chabant <ludovic@chabant.com>
parents: 47
diff changeset
683 following files present in the project root directory:
70423c2202c5 Ctags options files changes
Ludovic Chabant <ludovic@chabant.com>
parents: 47
diff changeset
684
74
cb1cf815052e Fix the documentation about the project settings file.
Ludovic Chabant <ludovic@chabant.com>
parents: 69
diff changeset
685 *gutentags-.gutctags*
cb1cf815052e Fix the documentation about the project settings file.
Ludovic Chabant <ludovic@chabant.com>
parents: 69
diff changeset
686 `.gutctags`: if this file exists, Ctags will be told to load additional
49
70423c2202c5 Ctags options files changes
Ludovic Chabant <ludovic@chabant.com>
parents: 47
diff changeset
687 command-line parameters by reading it line by line (see the Ctags
70423c2202c5 Ctags options files changes
Ludovic Chabant <ludovic@chabant.com>
parents: 47
diff changeset
688 documentation for more information).
70423c2202c5 Ctags options files changes
Ludovic Chabant <ludovic@chabant.com>
parents: 47
diff changeset
689
74
cb1cf815052e Fix the documentation about the project settings file.
Ludovic Chabant <ludovic@chabant.com>
parents: 69
diff changeset
690 Note that for complex reasons, Gutentags can't run `ctags` from the project
cb1cf815052e Fix the documentation about the project settings file.
Ludovic Chabant <ludovic@chabant.com>
parents: 69
diff changeset
691 root if you're using |gutentags_cache_dir|, so if the `.gutctags` file exists,
cb1cf815052e Fix the documentation about the project settings file.
Ludovic Chabant <ludovic@chabant.com>
parents: 69
diff changeset
692 it will be pre-processed in order to make all `--exclude=` clauses into
cb1cf815052e Fix the documentation about the project settings file.
Ludovic Chabant <ludovic@chabant.com>
parents: 69
diff changeset
693 absolute paths (by prepending the project root). The resulting file will be
cb1cf815052e Fix the documentation about the project settings file.
Ludovic Chabant <ludovic@chabant.com>
parents: 69
diff changeset
694 saved into the cache directory, and passed to `ctags` via the `--options=`
cb1cf815052e Fix the documentation about the project settings file.
Ludovic Chabant <ludovic@chabant.com>
parents: 69
diff changeset
695 parameter. If you're _not_ using |gutentags_cache_dir|, the `.gutctags` file
cb1cf815052e Fix the documentation about the project settings file.
Ludovic Chabant <ludovic@chabant.com>
parents: 69
diff changeset
696 is _not_ pre-processed, and is passed as-is via the `--options=` parameter.
49
70423c2202c5 Ctags options files changes
Ludovic Chabant <ludovic@chabant.com>
parents: 47
diff changeset
697
70423c2202c5 Ctags options files changes
Ludovic Chabant <ludovic@chabant.com>
parents: 47
diff changeset
698 *gutentags-.notags*
70423c2202c5 Ctags options files changes
Ludovic Chabant <ludovic@chabant.com>
parents: 47
diff changeset
699 `.notags`: if this file exists, Gutentags will be disabled completely for that
70423c2202c5 Ctags options files changes
Ludovic Chabant <ludovic@chabant.com>
parents: 47
diff changeset
700 project.
70423c2202c5 Ctags options files changes
Ludovic Chabant <ludovic@chabant.com>
parents: 47
diff changeset
701
70423c2202c5 Ctags options files changes
Ludovic Chabant <ludovic@chabant.com>
parents: 47
diff changeset
702
0
a3a37124558b Initial commit.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
703 vim:tw=78:et:ft=help:norl: