Skip to content

Commit 1fed978

Browse files
committed
main: enable TAG_{KIND,EXTRA,FIELD,ROLE}_DESCRIPTION pseudo tags
Close #3552 Signed-off-by: Masatake YAMATO <[email protected]>
1 parent 72ca31a commit 1fed978

File tree

9 files changed

+157
-9
lines changed

9 files changed

+157
-9
lines changed
Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,58 @@
11
# option: --format=1
2+
!_TAG_EXTRA_DESCRIPTION pseudo /Include pseudo tags/
3+
!_TAG_FIELD_DESCRIPTION extras /Extra tag type information/
4+
!_TAG_FIELD_DESCRIPTION input /input file/
5+
!_TAG_FIELD_DESCRIPTION name /tag name/
6+
!_TAG_FIELD_DESCRIPTION pattern /pattern/
27
!_TAG_FILE_FORMAT 1 /original ctags format/
38
!_TAG_FILE_SORTED 1 /0=unsorted, 1=sorted, 2=foldcase/
9+
!_TAG_KIND_DESCRIPTION!C d,macro /macro definitions/
10+
!_TAG_KIND_DESCRIPTION!C e,enumerator /enumerators (values inside an enumeration)/
11+
!_TAG_KIND_DESCRIPTION!C f,function /function definitions/
12+
!_TAG_KIND_DESCRIPTION!C g,enum /enumeration names/
13+
!_TAG_KIND_DESCRIPTION!C h,header /included header files/
14+
!_TAG_KIND_DESCRIPTION!C m,member /struct, and union members/
15+
!_TAG_KIND_DESCRIPTION!C s,struct /structure names/
16+
!_TAG_KIND_DESCRIPTION!C t,typedef /typedefs/
17+
!_TAG_KIND_DESCRIPTION!C u,union /union names/
18+
!_TAG_KIND_DESCRIPTION!C v,variable /variable definitions/
419
!_TAG_OUTPUT_EXCMD mixed /number, pattern, mixed, or combineV2/
520
!_TAG_OUTPUT_FILESEP slash /slash or backslash/
621
!_TAG_OUTPUT_MODE u-ctags /u-ctags or e-ctags/
722
!_TAG_PATTERN_LENGTH_LIMIT 96 /0 for no limit/
823
!_TAG_PROGRAM_AUTHOR Universal Ctags Team //
924
!_TAG_PROGRAM_NAME Universal Ctags /Derived from Exuberant Ctags/
1025
!_TAG_PROGRAM_URL https://ctags.io/ /official site/
26+
!_TAG_ROLE_DESCRIPTION!C!header local /local header/
27+
!_TAG_ROLE_DESCRIPTION!C!header system /system header/
28+
!_TAG_ROLE_DESCRIPTION!C!macro undef /undefined/
1129
main input.c /^int main (void) { return 0; }$/
1230
# option: --format=2
31+
!_TAG_EXTRA_DESCRIPTION pseudo /Include pseudo tags/;" extras:pseudo
32+
!_TAG_FIELD_DESCRIPTION extras /Extra tag type information/;" extras:pseudo
33+
!_TAG_FIELD_DESCRIPTION input /input file/;" extras:pseudo
34+
!_TAG_FIELD_DESCRIPTION name /tag name/;" extras:pseudo
35+
!_TAG_FIELD_DESCRIPTION pattern /pattern/;" extras:pseudo
1336
!_TAG_FILE_FORMAT 2 /extended format; --format=1 will not append ;" to lines/;" extras:pseudo
1437
!_TAG_FILE_SORTED 1 /0=unsorted, 1=sorted, 2=foldcase/;" extras:pseudo
38+
!_TAG_KIND_DESCRIPTION!C d,macro /macro definitions/;" extras:pseudo
39+
!_TAG_KIND_DESCRIPTION!C e,enumerator /enumerators (values inside an enumeration)/;" extras:pseudo
40+
!_TAG_KIND_DESCRIPTION!C f,function /function definitions/;" extras:pseudo
41+
!_TAG_KIND_DESCRIPTION!C g,enum /enumeration names/;" extras:pseudo
42+
!_TAG_KIND_DESCRIPTION!C h,header /included header files/;" extras:pseudo
43+
!_TAG_KIND_DESCRIPTION!C m,member /struct, and union members/;" extras:pseudo
44+
!_TAG_KIND_DESCRIPTION!C s,struct /structure names/;" extras:pseudo
45+
!_TAG_KIND_DESCRIPTION!C t,typedef /typedefs/;" extras:pseudo
46+
!_TAG_KIND_DESCRIPTION!C u,union /union names/;" extras:pseudo
47+
!_TAG_KIND_DESCRIPTION!C v,variable /variable definitions/;" extras:pseudo
1548
!_TAG_OUTPUT_EXCMD mixed /number, pattern, mixed, or combineV2/;" extras:pseudo
1649
!_TAG_OUTPUT_FILESEP slash /slash or backslash/;" extras:pseudo
1750
!_TAG_OUTPUT_MODE u-ctags /u-ctags or e-ctags/;" extras:pseudo
1851
!_TAG_PATTERN_LENGTH_LIMIT 96 /0 for no limit/;" extras:pseudo
1952
!_TAG_PROGRAM_AUTHOR Universal Ctags Team //;" extras:pseudo
2053
!_TAG_PROGRAM_NAME Universal Ctags /Derived from Exuberant Ctags/;" extras:pseudo
2154
!_TAG_PROGRAM_URL https://ctags.io/ /official site/;" extras:pseudo
55+
!_TAG_ROLE_DESCRIPTION!C!header local /local header/;" extras:pseudo
56+
!_TAG_ROLE_DESCRIPTION!C!header system /system header/;" extras:pseudo
57+
!_TAG_ROLE_DESCRIPTION!C!macro undef /undefined/;" extras:pseudo
2258
main input.c /^int main (void) { return 0; }$/

Tmain/input-encoding-option.d/run.sh

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,11 @@ if ${CTAGS} --quiet --options=NONE --list-features | grep -q iconv; then
1313
check_encoding euc-jp
1414
check_encoding utf-8
1515
if ${CTAGS} --quiet --options=NONE \
16-
--pseudo-tags=-TAG_PROC_CWD \
16+
--pseudo-tags=-TAG_PROC_CWD \
17+
--pseudo-tags=-TAG_KIND_DESCRIPTION \
18+
--pseudo-tags=-TAG_EXTRA_DESCRIPTION \
19+
--pseudo-tags=-TAG_FIELD_DESCRIPTION \
20+
--pseudo-tags=-TAG_ROLE_DESCRIPTION \
1721
--input-encoding=utf-8 --input-encoding-java=shift_jis --input-encoding-javascript=euc-jp \
1822
-o ${BUILDDIR}/tags \
1923
input.js input.java ; then

Tmain/json-output-format.d/stdout-expected.txt

Lines changed: 74 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,12 +16,86 @@
1616
{"_type": "tag", "name": "main", "path": "input.go", "pattern": "/^package main$/", "language": "Go", "line": 1, "kind": "package", "roles": "def"}
1717
# json --languages=+man --fields=*-T --extras=*
1818
{"_type": "ptag", "name": "JSON_OUTPUT_VERSION", "path": "0.0", "pattern": "in development"}
19+
{"_type": "ptag", "name": "TAG_EXTRA_DESCRIPTION", "path": "anonymous", "pattern": "Include tags for non-named objects like lambda"}
20+
{"_type": "ptag", "name": "TAG_EXTRA_DESCRIPTION", "path": "fileScope", "pattern": "Include tags of file scope"}
21+
{"_type": "ptag", "name": "TAG_EXTRA_DESCRIPTION", "path": "guest", "pattern": "Include tags generated by guest parsers"}
22+
{"_type": "ptag", "name": "TAG_EXTRA_DESCRIPTION", "path": "inputFile", "pattern": "Include an entry for the base file name of every input file"}
23+
{"_type": "ptag", "name": "TAG_EXTRA_DESCRIPTION", "path": "pseudo", "pattern": "Include pseudo tags"}
24+
{"_type": "ptag", "name": "TAG_EXTRA_DESCRIPTION", "path": "qualified", "pattern": "Include an extra class-qualified tag entry for each tag"}
25+
{"_type": "ptag", "name": "TAG_EXTRA_DESCRIPTION", "path": "reference", "pattern": "Include reference tags"}
26+
{"_type": "ptag", "name": "TAG_EXTRA_DESCRIPTION", "path": "subparser", "pattern": "Include tags generated by subparsers"}
27+
{"_type": "ptag", "name": "TAG_FIELD_DESCRIPTION", "parserName": "Go", "path": "package", "pattern": "the real package specified by the package name"}
28+
{"_type": "ptag", "name": "TAG_FIELD_DESCRIPTION", "parserName": "Go", "path": "packageName", "pattern": "the name for referring the package"}
29+
{"_type": "ptag", "name": "TAG_FIELD_DESCRIPTION", "parserName": "Python", "path": "nameref", "pattern": "the original name for the tag"}
30+
{"_type": "ptag", "name": "TAG_FIELD_DESCRIPTION", "path": "access", "pattern": "Access (or export) of class members"}
31+
{"_type": "ptag", "name": "TAG_FIELD_DESCRIPTION", "path": "compact", "pattern": "compact input line (used only in xref output)"}
32+
{"_type": "ptag", "name": "TAG_FIELD_DESCRIPTION", "path": "end", "pattern": "end lines of various items"}
33+
{"_type": "ptag", "name": "TAG_FIELD_DESCRIPTION", "path": "extras", "pattern": "Extra tag type information"}
34+
{"_type": "ptag", "name": "TAG_FIELD_DESCRIPTION", "path": "file", "pattern": "File-restricted scoping"}
35+
{"_type": "ptag", "name": "TAG_FIELD_DESCRIPTION", "path": "implementation", "pattern": "Implementation information"}
36+
{"_type": "ptag", "name": "TAG_FIELD_DESCRIPTION", "path": "inherits", "pattern": "Inheritance information"}
37+
{"_type": "ptag", "name": "TAG_FIELD_DESCRIPTION", "path": "input", "pattern": "input file"}
38+
{"_type": "ptag", "name": "TAG_FIELD_DESCRIPTION", "path": "kind", "pattern": "[tags output] prepend \"kind:\" to k\\/ (or K\\/) field output, [xref and json output] kind in long-name form"}
39+
{"_type": "ptag", "name": "TAG_FIELD_DESCRIPTION", "path": "language", "pattern": "Language of input file containing tag"}
40+
{"_type": "ptag", "name": "TAG_FIELD_DESCRIPTION", "path": "line", "pattern": "Line number of tag definition"}
41+
{"_type": "ptag", "name": "TAG_FIELD_DESCRIPTION", "path": "name", "pattern": "tag name"}
42+
{"_type": "ptag", "name": "TAG_FIELD_DESCRIPTION", "path": "nth", "pattern": "the order in the parent scope"}
43+
{"_type": "ptag", "name": "TAG_FIELD_DESCRIPTION", "path": "pattern", "pattern": "pattern"}
44+
{"_type": "ptag", "name": "TAG_FIELD_DESCRIPTION", "path": "roles", "pattern": "Roles"}
45+
{"_type": "ptag", "name": "TAG_FIELD_DESCRIPTION", "path": "scope", "pattern": "[tags output] prepend \"scope:\" key to s\\/scope field output, [xref and json output] the same as s\\/ field"}
46+
{"_type": "ptag", "name": "TAG_FIELD_DESCRIPTION", "path": "scopeKind", "pattern": "[tags output] no effect, [xref and json output] kind of scope in long-name form"}
47+
{"_type": "ptag", "name": "TAG_FIELD_DESCRIPTION", "path": "signature", "pattern": "Signature of routine (e.g. prototype or parameter list)"}
48+
{"_type": "ptag", "name": "TAG_FIELD_DESCRIPTION", "path": "typeref", "pattern": "Type and name of a variable or typedef"}
49+
{"_type": "ptag", "name": "TAG_FIELD_DESCRIPTION", "path": "xpath", "pattern": "xpath for the tag"}
1950
{"_type": "ptag", "name": "TAG_FILE_SORTED", "path": "1", "pattern": "0=unsorted, 1=sorted, 2=foldcase"}
51+
{"_type": "ptag", "name": "TAG_KIND_DESCRIPTION", "parserName": "C", "path": "d,macro", "pattern": "macro definitions"}
52+
{"_type": "ptag", "name": "TAG_KIND_DESCRIPTION", "parserName": "C", "path": "e,enumerator", "pattern": "enumerators (values inside an enumeration)"}
53+
{"_type": "ptag", "name": "TAG_KIND_DESCRIPTION", "parserName": "C", "path": "f,function", "pattern": "function definitions"}
54+
{"_type": "ptag", "name": "TAG_KIND_DESCRIPTION", "parserName": "C", "path": "g,enum", "pattern": "enumeration names"}
55+
{"_type": "ptag", "name": "TAG_KIND_DESCRIPTION", "parserName": "C", "path": "h,header", "pattern": "included header files"}
56+
{"_type": "ptag", "name": "TAG_KIND_DESCRIPTION", "parserName": "C", "path": "m,member", "pattern": "struct, and union members"}
57+
{"_type": "ptag", "name": "TAG_KIND_DESCRIPTION", "parserName": "C", "path": "s,struct", "pattern": "structure names"}
58+
{"_type": "ptag", "name": "TAG_KIND_DESCRIPTION", "parserName": "C", "path": "t,typedef", "pattern": "typedefs"}
59+
{"_type": "ptag", "name": "TAG_KIND_DESCRIPTION", "parserName": "C", "path": "u,union", "pattern": "union names"}
60+
{"_type": "ptag", "name": "TAG_KIND_DESCRIPTION", "parserName": "C", "path": "v,variable", "pattern": "variable definitions"}
61+
{"_type": "ptag", "name": "TAG_KIND_DESCRIPTION", "parserName": "Go", "path": "M,anonMember", "pattern": "struct anonymous members"}
62+
{"_type": "ptag", "name": "TAG_KIND_DESCRIPTION", "parserName": "Go", "path": "P,packageName", "pattern": "name for specifying imported package"}
63+
{"_type": "ptag", "name": "TAG_KIND_DESCRIPTION", "parserName": "Go", "path": "a,talias", "pattern": "type aliases"}
64+
{"_type": "ptag", "name": "TAG_KIND_DESCRIPTION", "parserName": "Go", "path": "c,const", "pattern": "constants"}
65+
{"_type": "ptag", "name": "TAG_KIND_DESCRIPTION", "parserName": "Go", "path": "f,func", "pattern": "functions"}
66+
{"_type": "ptag", "name": "TAG_KIND_DESCRIPTION", "parserName": "Go", "path": "i,interface", "pattern": "interfaces"}
67+
{"_type": "ptag", "name": "TAG_KIND_DESCRIPTION", "parserName": "Go", "path": "m,member", "pattern": "struct members"}
68+
{"_type": "ptag", "name": "TAG_KIND_DESCRIPTION", "parserName": "Go", "path": "n,methodSpec", "pattern": "interface method specification"}
69+
{"_type": "ptag", "name": "TAG_KIND_DESCRIPTION", "parserName": "Go", "path": "p,package", "pattern": "packages"}
70+
{"_type": "ptag", "name": "TAG_KIND_DESCRIPTION", "parserName": "Go", "path": "s,struct", "pattern": "structs"}
71+
{"_type": "ptag", "name": "TAG_KIND_DESCRIPTION", "parserName": "Go", "path": "t,type", "pattern": "types"}
72+
{"_type": "ptag", "name": "TAG_KIND_DESCRIPTION", "parserName": "Go", "path": "u,unknown", "pattern": "unknown"}
73+
{"_type": "ptag", "name": "TAG_KIND_DESCRIPTION", "parserName": "Go", "path": "v,var", "pattern": "variables"}
74+
{"_type": "ptag", "name": "TAG_KIND_DESCRIPTION", "parserName": "Man", "path": "S,subsection", "pattern": "sub sections"}
75+
{"_type": "ptag", "name": "TAG_KIND_DESCRIPTION", "parserName": "Man", "path": "s,section", "pattern": "sections"}
76+
{"_type": "ptag", "name": "TAG_KIND_DESCRIPTION", "parserName": "Man", "path": "t,title", "pattern": "titles"}
77+
{"_type": "ptag", "name": "TAG_KIND_DESCRIPTION", "parserName": "Python", "path": "I,namespace", "pattern": "name referring a module defined in other file"}
78+
{"_type": "ptag", "name": "TAG_KIND_DESCRIPTION", "parserName": "Python", "path": "c,class", "pattern": "classes"}
79+
{"_type": "ptag", "name": "TAG_KIND_DESCRIPTION", "parserName": "Python", "path": "f,function", "pattern": "functions"}
80+
{"_type": "ptag", "name": "TAG_KIND_DESCRIPTION", "parserName": "Python", "path": "i,module", "pattern": "modules"}
81+
{"_type": "ptag", "name": "TAG_KIND_DESCRIPTION", "parserName": "Python", "path": "m,member", "pattern": "class members"}
82+
{"_type": "ptag", "name": "TAG_KIND_DESCRIPTION", "parserName": "Python", "path": "v,variable", "pattern": "variables"}
83+
{"_type": "ptag", "name": "TAG_KIND_DESCRIPTION", "parserName": "Python", "path": "x,unknown", "pattern": "name referring a class\\/variable\\/function\\/module defined in other module"}
2084
{"_type": "ptag", "name": "TAG_OUTPUT_EXCMD", "path": "mixed", "pattern": "number, pattern, mixed, or combineV2"}
2185
{"_type": "ptag", "name": "TAG_PATTERN_LENGTH_LIMIT", "path": "96", "pattern": "0 for no limit"}
2286
{"_type": "ptag", "name": "TAG_PROGRAM_AUTHOR", "path": "Universal Ctags Team", "pattern": ""}
2387
{"_type": "ptag", "name": "TAG_PROGRAM_NAME", "path": "Universal Ctags", "pattern": "Derived from Exuberant Ctags"}
2488
{"_type": "ptag", "name": "TAG_PROGRAM_URL", "path": "https://ctags.io/", "pattern": "official site"}
89+
{"_type": "ptag", "name": "TAG_ROLE_DESCRIPTION", "parserName": "C!header", "path": "local", "pattern": "local header"}
90+
{"_type": "ptag", "name": "TAG_ROLE_DESCRIPTION", "parserName": "C!header", "path": "system", "pattern": "system header"}
91+
{"_type": "ptag", "name": "TAG_ROLE_DESCRIPTION", "parserName": "C!macro", "path": "undef", "pattern": "undefined"}
92+
{"_type": "ptag", "name": "TAG_ROLE_DESCRIPTION", "parserName": "Go!package", "path": "imported", "pattern": "imported package"}
93+
{"_type": "ptag", "name": "TAG_ROLE_DESCRIPTION", "parserName": "Go!unknown", "path": "receiverType", "pattern": "receiver type"}
94+
{"_type": "ptag", "name": "TAG_ROLE_DESCRIPTION", "parserName": "Python!module", "path": "imported", "pattern": "imported modules"}
95+
{"_type": "ptag", "name": "TAG_ROLE_DESCRIPTION", "parserName": "Python!module", "path": "indirectlyImported", "pattern": "module imported in alternative name"}
96+
{"_type": "ptag", "name": "TAG_ROLE_DESCRIPTION", "parserName": "Python!module", "path": "namespace", "pattern": "namespace from where classes\\/variables\\/functions are imported"}
97+
{"_type": "ptag", "name": "TAG_ROLE_DESCRIPTION", "parserName": "Python!unknown", "path": "imported", "pattern": "imported from the other module"}
98+
{"_type": "ptag", "name": "TAG_ROLE_DESCRIPTION", "parserName": "Python!unknown", "path": "indirectlyImported", "pattern": "classes\\/variables\\/functions\\/modules imported in alternative name"}
2599
{"_type": "tag", "name": "Foo", "path": "input.py", "pattern": "/^class Foo:$/", "language": "Python", "line": 1, "kind": "class", "inherits": false, "access": "public", "roles": "def", "end": 3}
26100
{"_type": "tag", "name": "Foo.doIt", "path": "input.py", "pattern": "/^ def doIt():$/", "language": "Python", "line": 2, "kind": "member", "access": "public", "signature": "()", "scope": "Foo", "scopeKind": "class", "roles": "def", "extras": "qualified", "end": 3}
27101
{"_type": "tag", "name": "N\tA\tM\tE", "path": "input.1", "pattern": "/^.SH \"\tN\tA\tM\tE\t\"$/", "language": "Man", "line": 1, "kind": "section", "roles": "def", "end": 1}
Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
#NAME ENABLED DESCRIPTION
22
JSON_OUTPUT_VERSION off the version of json output stream format
3-
TAG_EXTRA_DESCRIPTION off the names and descriptions of enabled extras
4-
TAG_FIELD_DESCRIPTION off the names and descriptions of enabled fields
3+
TAG_EXTRA_DESCRIPTION on the names and descriptions of enabled extras
4+
TAG_FIELD_DESCRIPTION on the names and descriptions of enabled fields
55
TAG_FILE_FORMAT on the version of tags file format
66
TAG_FILE_SORTED on how tags are sorted
7-
TAG_KIND_DESCRIPTION off the letters, names and descriptions of enabled kinds in the language
7+
TAG_KIND_DESCRIPTION on the letters, names and descriptions of enabled kinds in the language
88
TAG_KIND_SEPARATOR off the separators used in kinds
99
TAG_OUTPUT_EXCMD on the excmd: number, pattern, mixed, or combine
1010
TAG_OUTPUT_FILESEP on the separator used in file name (slash or backslash)
@@ -15,4 +15,4 @@ TAG_PROGRAM_AUTHOR on the author of this ctags implementation
1515
TAG_PROGRAM_NAME on the name of this ctags implementation
1616
TAG_PROGRAM_URL on the official site URL of this ctags implementation
1717
TAG_PROGRAM_VERSION on the version of this ctags implementation
18-
TAG_ROLE_DESCRIPTION off the names and descriptions of enabled roles
18+
TAG_ROLE_DESCRIPTION on the names and descriptions of enabled roles

Tmain/output-encoding-option.d/run.sh

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,10 @@ if ${CTAGS} --quiet --options=NONE --list-features | grep -q iconv; then
1313
check_encoding euc-jp
1414
if ${CTAGS} --quiet --options=NONE \
1515
--pseudo-tags=-TAG_PROC_CWD \
16+
--pseudo-tags=-TAG_KIND_DESCRIPTION \
17+
--pseudo-tags=-TAG_FIELD_DESCRIPTION \
18+
--pseudo-tags=-TAG_EXTRA_DESCRIPTION \
19+
--pseudo-tags=-TAG_ROLE_DESCRIPTION \
1620
--output-encoding=shift_jis --input-encoding=utf-8 --input-encoding-javascript=euc-jp \
1721
-o ${BUILDDIR}/tags \
1822
input.js input.java ; then

Tmain/ptag-kind-sep.d/run.sh

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,4 +13,8 @@ ${CTAGS} --quiet --options=NONE -o - \
1313
--pseudo-tags=+TAG_KIND_SEPARATOR \
1414
--pseudo-tags=-TAG_PROGRAM_VERSION \
1515
--pseudo-tags=-TAG_PROC_CWD \
16+
--pseudo-tags=-TAG_KIND_DESCRIPTION \
17+
--pseudo-tags=-TAG_FIELD_DESCRIPTION \
18+
--pseudo-tags=-TAG_EXTRA_DESCRIPTION \
19+
--pseudo-tags=-TAG_ROLE_DESCRIPTION \
1620
input.php

docs/man/ctags-client-tools.7.rst

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -142,6 +142,8 @@ for using notable ones.
142142
A client tool can know "{anonymous}", "{fileScope}", "{pseudo}",
143143
and "{subparser}" extras are enabled from the output.
144144

145+
Universal Ctags version 6.0 will turn on this pseudo tag by default.
146+
145147
``TAG_FIELD_DESCRIPTION`` (new in Universal Ctags)
146148
Indicates the names and descriptions of enabled fields::
147149

@@ -169,6 +171,8 @@ for using notable ones.
169171
The fields are common in languages. In addition to the common fields,
170172
the tool can known "{macrodef}" field of C language is also enabled.
171173

174+
Universal Ctags version 6.0 will turn on this pseudo tag by default.
175+
172176
``TAG_FILE_ENCODING`` (new in Universal Ctags)
173177
TBW
174178

@@ -202,6 +206,8 @@ for using notable ones.
202206
A client tool can know "{function}", "{member}", and "{variable}"
203207
kinds of C language are enabled from the output.
204208

209+
Universal Ctags version 6.0 will turn on this pseudo tag by default.
210+
205211
``TAG_KIND_SEPARATOR`` (new in Universal Ctags)
206212
TBW
207213

@@ -540,6 +546,13 @@ used in a field of JSON.
540546

541547
For an example, the value for ``pattern`` field of ctags takes a string or a boolean value.
542548

549+
CHANGES
550+
-----------
551+
552+
Version 6.0
553+
~~~~~~~~~~~
554+
* ctags enables TAG_{KIND,EXTRA,FIELD,ROLE}_DESCRIPTION pseudo tags by default.
555+
543556
SEE ALSO
544557
--------
545558
:ref:`ctags(1) <ctags(1)>`, :ref:`ctags-lang-python(7) <ctags-lang-python(7)>`, :ref:`ctags-incompatibilities(7) <ctags-incompatibilities(7)>`, :ref:`tags(5) <tags(5)>`, :ref:`readtags(1) <readtags(1)>`

main/ptag.c

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -170,19 +170,19 @@ static ptagDesc ptagDescs [] = {
170170
"the separators used in kinds",
171171
ptagMakeKindSeparators,
172172
PTAGF_PARSER },
173-
{ false, "TAG_KIND_DESCRIPTION",
173+
{ true, "TAG_KIND_DESCRIPTION",
174174
"the letters, names and descriptions of enabled kinds in the language",
175175
ptagMakeKindDescriptions,
176176
PTAGF_PARSER },
177-
{ false, "TAG_FIELD_DESCRIPTION",
177+
{ true, "TAG_FIELD_DESCRIPTION",
178178
"the names and descriptions of enabled fields",
179179
ptagMakeFieldDescriptions,
180180
PTAGF_COMMON|PTAGF_PARSER },
181-
{ false, "TAG_EXTRA_DESCRIPTION",
181+
{ true, "TAG_EXTRA_DESCRIPTION",
182182
"the names and descriptions of enabled extras",
183183
ptagMakeExtraDescriptions,
184184
PTAGF_COMMON|PTAGF_PARSER },
185-
{ false, "TAG_ROLE_DESCRIPTION",
185+
{ true, "TAG_ROLE_DESCRIPTION",
186186
"the names and descriptions of enabled roles",
187187
ptagMakeRoleDescriptions,
188188
PTAGF_PARSER },

0 commit comments

Comments
 (0)