annotate etc/etags.1 @ 67086:7ae3d744378e

(Custom-reset-standard): Make it handle Custom group buffers correctly. (It used to throw an error in such buffers.) Make it ask for confirmation in group buffers and other Custom buffers containing more than one customization item.
author Luc Teirlinck <teirllm@auburn.edu>
date Tue, 22 Nov 2005 23:28:28 +0000
parents 53915676421c
children e8a3fb527b77 b1c1fc853d2f
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
65088
f05a048483cc Update years in copyright notice; nfc.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 57090
diff changeset
1 .\" Copyright (C) 1992, 2001, 2002, 2003, 2004,
f05a048483cc Update years in copyright notice; nfc.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 57090
diff changeset
2 .\" 2005 Free Software Foundation, Inc.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
3 .\" See section COPYING for conditions for redistribution
41397
e2c032a0aa44 Modify the distribution terms.
Eli Zaretskii <eliz@gnu.org>
parents: 39760
diff changeset
4 .TH etags 1 "23nov2001" "GNU Tools" "GNU Tools"
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
5 .de BP
Dave Love <fx@gnu.org>
parents:
diff changeset
6 .sp
Dave Love <fx@gnu.org>
parents:
diff changeset
7 .ti -.2i
Dave Love <fx@gnu.org>
parents:
diff changeset
8 \(**
Dave Love <fx@gnu.org>
parents:
diff changeset
9 ..
Dave Love <fx@gnu.org>
parents:
diff changeset
10
Dave Love <fx@gnu.org>
parents:
diff changeset
11 .SH NAME
Dave Love <fx@gnu.org>
parents:
diff changeset
12 etags, ctags \- generate tag file for Emacs, vi
Dave Love <fx@gnu.org>
parents:
diff changeset
13 .SH SYNOPSIS
Dave Love <fx@gnu.org>
parents:
diff changeset
14 .hy 0
Dave Love <fx@gnu.org>
parents:
diff changeset
15 .na
37784
b2509ef38ea1 Add the latest changes to etags behaviour.
Francesco Potortì <pot@gnu.org>
parents: 37455
diff changeset
16 \fBetags\fP [\|\-aCDGImRVh\|] [\|\-i \fIfile\fP\|] [\|\-l \fIlanguage\fP\|]
26292
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
17 .if n .br
37784
b2509ef38ea1 Add the latest changes to etags behaviour.
Francesco Potortì <pot@gnu.org>
parents: 37455
diff changeset
18 [\|\-o \fItagfile\fP\|] [\|\-r \fIregexp\fP\|]
45658
b359c7c3e1cb Document --parse-stdin=FILE.
Francesco Potortì <pot@gnu.org>
parents: 43874
diff changeset
19 [\|\-\-parse\-stdin=\fIfile\fP\|]
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
20 .br
37784
b2509ef38ea1 Add the latest changes to etags behaviour.
Francesco Potortì <pot@gnu.org>
parents: 37455
diff changeset
21 [\|\-\-append\|] [\|\-\-no\-defines\|]
26292
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
22 [\|\-\-no\-globals\|] [\|\-\-include=\fIfile\fP\|]
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
23 [\|\-\-ignore\-indentation\|] [\|\-\-language=\fIlanguage\fP\|]
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
24 [\|\-\-members\|] [\|\-\-output=\fItagfile\fP\|]
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
25 [\|\-\-regex=\fIregexp\fP\|] [\|\-\-no\-regex\|]
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
26 [\|\-\-help\|] [\|\-\-version\|]
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
27 \fIfile\fP .\|.\|.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
28
37784
b2509ef38ea1 Add the latest changes to etags behaviour.
Francesco Potortì <pot@gnu.org>
parents: 37455
diff changeset
29 \fBctags\fP [\|\-aCdgImRVh\|] [\|\-BtTuvwx\|] [\|\-l \fIlanguage\fP\|]
26292
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
30 .if n .br
37784
b2509ef38ea1 Add the latest changes to etags behaviour.
Francesco Potortì <pot@gnu.org>
parents: 37455
diff changeset
31 [\|\-o \fItagfile\fP\|] [\|\-r \fIregexp\fP\|]
45658
b359c7c3e1cb Document --parse-stdin=FILE.
Francesco Potortì <pot@gnu.org>
parents: 43874
diff changeset
32 [\|\-\-parse\-stdin=\fIfile\fP\|]
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
33 .br
37784
b2509ef38ea1 Add the latest changes to etags behaviour.
Francesco Potortì <pot@gnu.org>
parents: 37455
diff changeset
34 [\|\-\-append\|] [\|\-\-backward\-search\|]
26292
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
35 [\|\-\-cxref\|] [\|\-\-defines\|] [\|\-\-forward\-search\|]
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
36 [\|\-\-globals\|] [\|\-\-ignore\-indentation\|]
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
37 [\|\-\-language=\fIlanguage\fP\|] [\|\-\-members\|]
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
38 [\|\-\-output=\fItagfile\fP\|] [\|\-\-regex=\fIregexp\fP\|]
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
39 [\|\-\-typedefs\|] [\|\-\-typedefs\-and\-c++\|]
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
40 [\|\-\-update\|] [\|\-\-no\-warn\|]
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
41 [\|\-\-help\|] [\|\-\-version\|]
26292
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
42 \fIfile\fP .\|.\|.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
43 .ad b
Dave Love <fx@gnu.org>
parents:
diff changeset
44 .hy 1
Dave Love <fx@gnu.org>
parents:
diff changeset
45 .SH DESCRIPTION
37332
446514f572dd Fix copyright year, update date, and the markup.
Eli Zaretskii <eliz@gnu.org>
parents: 26339
diff changeset
46 The \|\fBetags\fP\| program is used to create a tag table file, in a format
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
47 understood by
Dave Love <fx@gnu.org>
parents:
diff changeset
48 .BR emacs ( 1 )\c
37332
446514f572dd Fix copyright year, update date, and the markup.
Eli Zaretskii <eliz@gnu.org>
parents: 26339
diff changeset
49 \&; the \|\fBctags\fP\| program is used to create a similar table in a
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
50 format understood by
Dave Love <fx@gnu.org>
parents:
diff changeset
51 .BR vi ( 1 )\c
Dave Love <fx@gnu.org>
parents:
diff changeset
52 \&. Both forms of the program understand
47085
a881d14145d0 etags now parses HTML.
Francesco Potortì <pot@gnu.org>
parents: 45885
diff changeset
53 the syntax of C, Objective C, C++, Java, Fortran, Ada, Cobol, Erlang, HTML,
57086
a10fd092f06f Added support for the Lua script language.
Francesco Potortì <pot@gnu.org>
parents: 57012
diff changeset
54 LaTeX, Emacs Lisp/Common Lisp, Lua, makefile, Pascal, Perl, PHP, Postscript,
37784
b2509ef38ea1 Add the latest changes to etags behaviour.
Francesco Potortì <pot@gnu.org>
parents: 37455
diff changeset
55 Python, Prolog, Scheme and
26292
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
56 most assembler\-like syntaxes.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
57 Both forms read the files specified on the command line, and write a tag
37332
446514f572dd Fix copyright year, update date, and the markup.
Eli Zaretskii <eliz@gnu.org>
parents: 26339
diff changeset
58 table (defaults: \fBTAGS\fP for \fBetags\fP, \fBtags\fP for
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
59 \fBctags\fP) in the current working directory.
Dave Love <fx@gnu.org>
parents:
diff changeset
60 Files specified with relative file names will be recorded in the tag
Dave Love <fx@gnu.org>
parents:
diff changeset
61 table with file names relative to the directory where the tag table
57090
297e3051e6ac When relative file names are given as argument,
Francesco Potortì <pot@gnu.org>
parents: 57086
diff changeset
62 resides. If the tag table is in /dev, however, the file names are made
297e3051e6ac When relative file names are given as argument,
Francesco Potortì <pot@gnu.org>
parents: 57086
diff changeset
63 relative to the working directory. Files specified with absolute file
297e3051e6ac When relative file names are given as argument,
Francesco Potortì <pot@gnu.org>
parents: 57086
diff changeset
64 names will be recorded
43874
96f84561b0ab Use Cweb as an example, not Yacc.
Francesco Potortì <pot@gnu.org>
parents: 43724
diff changeset
65 with absolute file names. Files generated from a source file\-\-like
96f84561b0ab Use Cweb as an example, not Yacc.
Francesco Potortì <pot@gnu.org>
parents: 43724
diff changeset
66 a C file generated from a source Cweb file\-\-will be recorded with
96f84561b0ab Use Cweb as an example, not Yacc.
Francesco Potortì <pot@gnu.org>
parents: 43724
diff changeset
67 the name of the source file.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
68 The programs recognize the language used in an input file based on its
37332
446514f572dd Fix copyright year, update date, and the markup.
Eli Zaretskii <eliz@gnu.org>
parents: 26339
diff changeset
69 file name and contents. The \fB\-\-language\fP switch can be used to force
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
70 parsing of the file names following the switch according to the given
Dave Love <fx@gnu.org>
parents:
diff changeset
71 language, overriding guesses based on filename extensions.
Dave Love <fx@gnu.org>
parents:
diff changeset
72 .SH OPTIONS
Dave Love <fx@gnu.org>
parents:
diff changeset
73 Some options make sense only for the \fBvi\fP style tag files produced
Dave Love <fx@gnu.org>
parents:
diff changeset
74 by ctags;
Dave Love <fx@gnu.org>
parents:
diff changeset
75 \fBetags\fP does not recognize them.
Dave Love <fx@gnu.org>
parents:
diff changeset
76 The programs accept unambiguous abbreviations for long option names.
Dave Love <fx@gnu.org>
parents:
diff changeset
77 .TP
Dave Love <fx@gnu.org>
parents:
diff changeset
78 .B \-a, \-\-append
37332
446514f572dd Fix copyright year, update date, and the markup.
Eli Zaretskii <eliz@gnu.org>
parents: 26339
diff changeset
79 Append to existing tag file. (For \fBvi\fP-format tag files, see also
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
80 \fB\-\-update\fP.)
Dave Love <fx@gnu.org>
parents:
diff changeset
81 .TP
Dave Love <fx@gnu.org>
parents:
diff changeset
82 .B \-B, \-\-backward\-search
Dave Love <fx@gnu.org>
parents:
diff changeset
83 Tag files written in the format expected by \fBvi\fP contain regular
Dave Love <fx@gnu.org>
parents:
diff changeset
84 expression search instructions; the \fB\-B\fP option writes them using
Dave Love <fx@gnu.org>
parents:
diff changeset
85 the delimiter `\|\fB?\fP\|', to search \fIbackwards\fP through files.
Dave Love <fx@gnu.org>
parents:
diff changeset
86 The default is to use the delimiter `\|\fB/\fP\|', to search \fIforwards\fP
Dave Love <fx@gnu.org>
parents:
diff changeset
87 through files.
Dave Love <fx@gnu.org>
parents:
diff changeset
88 Only \fBctags\fP accepts this option.
Dave Love <fx@gnu.org>
parents:
diff changeset
89 .TP
26292
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
90 .B \-\-declarations
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
91 In C and derived languages, create tags for function declarations,
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
92 and create tags for extern variables unless \-\-no\-globals is used.
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
93 .TP
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
94 .B \-d, \-\-defines
26292
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
95 Create tag entries for C preprocessor constant definitions
65710
53915676421c Tiny changes and clarifications by
Francesco Potortì <pot@gnu.org>
parents: 65088
diff changeset
96 and enum constants, too. Since this is the default behavior of
53915676421c Tiny changes and clarifications by
Francesco Potortì <pot@gnu.org>
parents: 65088
diff changeset
97 \fBetags\fP, only \fBctags\fP accepts this option.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
98 .TP
Dave Love <fx@gnu.org>
parents:
diff changeset
99 .B \-D, \-\-no\-defines
26292
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
100 Do not create tag entries for C preprocessor constant definitions
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
101 and enum constants.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
102 This may make the tags file much smaller if many header files are tagged.
65710
53915676421c Tiny changes and clarifications by
Francesco Potortì <pot@gnu.org>
parents: 65088
diff changeset
103 Since this is the default behavior of \fBctags\fP, only \fBetags\fP
53915676421c Tiny changes and clarifications by
Francesco Potortì <pot@gnu.org>
parents: 65088
diff changeset
104 accepts this option.
26292
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
105 .TP
65710
53915676421c Tiny changes and clarifications by
Francesco Potortì <pot@gnu.org>
parents: 65088
diff changeset
106 .B \-\-globals
26292
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
107 Create tag entries for global variables in C, C++, Objective C, Java,
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
108 and Perl.
65710
53915676421c Tiny changes and clarifications by
Francesco Potortì <pot@gnu.org>
parents: 65088
diff changeset
109 Since this is the default behavior of \fBetags\fP, only \fBctags\fP
53915676421c Tiny changes and clarifications by
Francesco Potortì <pot@gnu.org>
parents: 65088
diff changeset
110 accepts this option.
26292
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
111 .TP
65710
53915676421c Tiny changes and clarifications by
Francesco Potortì <pot@gnu.org>
parents: 65088
diff changeset
112 .B \-\-no\-globals
26292
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
113 Do not tag global variables. Typically this reduces the file size by
65710
53915676421c Tiny changes and clarifications by
Francesco Potortì <pot@gnu.org>
parents: 65088
diff changeset
114 one fourth. Since this is the default behavior of \fBctags\fP, only
53915676421c Tiny changes and clarifications by
Francesco Potortì <pot@gnu.org>
parents: 65088
diff changeset
115 \fBetags\fP accepts this option.
26292
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
116 .TP
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
117 \fB\-i\fP \fIfile\fP, \fB\-\-include=\fIfile\fP
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
118 Include a note in the tag file indicating that, when searching for a
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
119 tag, one should also consult the tags file \fIfile\fP after checking the
65710
53915676421c Tiny changes and clarifications by
Francesco Potortì <pot@gnu.org>
parents: 65088
diff changeset
120 current file. Only \fBetags\fP accepts this option.
26292
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
121 .TP
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
122 .B \-I, \-\-ignore\-indentation
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
123 Don't rely on indentation as much as we normally do. Currently, this
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
124 means not to assume that a closing brace in the first column is the
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
125 final brace of a function or structure definition in C and C++.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
126 .TP
Dave Love <fx@gnu.org>
parents:
diff changeset
127 \fB\-l\fP \fIlanguage\fP, \fB\-\-language=\fIlanguage\fP
Dave Love <fx@gnu.org>
parents:
diff changeset
128 Parse the following files according to the given language. More than
Dave Love <fx@gnu.org>
parents:
diff changeset
129 one such options may be intermixed with filenames. Use \fB\-\-help\fP
Dave Love <fx@gnu.org>
parents:
diff changeset
130 to get a list of the available languages and their default filename
Dave Love <fx@gnu.org>
parents:
diff changeset
131 extensions. The `auto' language can be used to restore automatic
37784
b2509ef38ea1 Add the latest changes to etags behaviour.
Francesco Potortì <pot@gnu.org>
parents: 37455
diff changeset
132 detection of language based on the file name. The `none'
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
133 language may be used to disable language parsing altogether; only
Dave Love <fx@gnu.org>
parents:
diff changeset
134 regexp matching is done in this case (see the \fB\-\-regex\fP option).
Dave Love <fx@gnu.org>
parents:
diff changeset
135 .TP
26292
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
136 .B \-m, \-\-members
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
137 Create tag entries for variables that are members of structure-like
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
138 constructs in C++, Objective C, Java.
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
139 .TP
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
140 .B \-M, \-\-no\-members
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
141 Do not tag member variables. This is the default behavior.
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
142 .TP
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
143 .B \-\-packages\-only
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
144 Only tag packages in Ada files.
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
145 .TP
45658
b359c7c3e1cb Document --parse-stdin=FILE.
Francesco Potortì <pot@gnu.org>
parents: 43874
diff changeset
146 \fB\-\-parse\-stdin=\fIfile\fP
b359c7c3e1cb Document --parse-stdin=FILE.
Francesco Potortì <pot@gnu.org>
parents: 43874
diff changeset
147 May be used (only once) in place of a file name on the command line.
45660
cfab79b5f578 Better English, I hope.
Francesco Potortì <pot@gnu.org>
parents: 45658
diff changeset
148 \fBetags\fP will read from standard input and mark the produced tags
45658
b359c7c3e1cb Document --parse-stdin=FILE.
Francesco Potortì <pot@gnu.org>
parents: 43874
diff changeset
149 as belonging to the file \fBFILE\fP.
b359c7c3e1cb Document --parse-stdin=FILE.
Francesco Potortì <pot@gnu.org>
parents: 43874
diff changeset
150 .TP
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
151 \fB\-o\fP \fItagfile\fP, \fB\-\-output=\fItagfile\fP
37332
446514f572dd Fix copyright year, update date, and the markup.
Eli Zaretskii <eliz@gnu.org>
parents: 26339
diff changeset
152 Explicit name of file for tag table; overrides default \fBTAGS\fP or
446514f572dd Fix copyright year, update date, and the markup.
Eli Zaretskii <eliz@gnu.org>
parents: 26339
diff changeset
153 \fBtags\fP. (But ignored with \fB\-v\fP or \fB\-x\fP.)
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
154 .TP
Dave Love <fx@gnu.org>
parents:
diff changeset
155 \fB\-r\fP \fIregexp\fP, \fB\-\-regex=\fIregexp\fP
45800
d11816fe2c59 New multi-line regexp and new regexp syntax.
Francesco Potortì <pot@gnu.org>
parents: 45666
diff changeset
156
d11816fe2c59 New multi-line regexp and new regexp syntax.
Francesco Potortì <pot@gnu.org>
parents: 45666
diff changeset
157 Make tags based on regexp matching for the files following this option,
d11816fe2c59 New multi-line regexp and new regexp syntax.
Francesco Potortì <pot@gnu.org>
parents: 45666
diff changeset
158 in addition to the tags made with the standard parsing based on
d11816fe2c59 New multi-line regexp and new regexp syntax.
Francesco Potortì <pot@gnu.org>
parents: 45666
diff changeset
159 language. May be freely intermixed with filenames and the \fB\-R\fP
d11816fe2c59 New multi-line regexp and new regexp syntax.
Francesco Potortì <pot@gnu.org>
parents: 45666
diff changeset
160 option. The regexps are cumulative, i.e. each such option will add to
45802
d4c9f3bd6dfa New {language} and @regexp features.
Francesco Potortì <pot@gnu.org>
parents: 45800
diff changeset
161 the previous ones. The regexps are of one of the forms:
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
162 .br
45802
d4c9f3bd6dfa New {language} and @regexp features.
Francesco Potortì <pot@gnu.org>
parents: 45800
diff changeset
163 [\fB{\fP\fIlanguage\fP\fB}\fP]\fB/\fP\fItagregexp/\fP[\fInameregexp\fP\fB/\fP]\fImodifiers\fP
d4c9f3bd6dfa New {language} and @regexp features.
Francesco Potortì <pot@gnu.org>
parents: 45800
diff changeset
164 .br
d4c9f3bd6dfa New {language} and @regexp features.
Francesco Potortì <pot@gnu.org>
parents: 45800
diff changeset
165 \fB@\fP\fIregexfile\fP
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
166 .br
Dave Love <fx@gnu.org>
parents:
diff changeset
167
45800
d11816fe2c59 New multi-line regexp and new regexp syntax.
Francesco Potortì <pot@gnu.org>
parents: 45666
diff changeset
168 where \fItagregexp\fP is used to match the tag. It should not match
d11816fe2c59 New multi-line regexp and new regexp syntax.
Francesco Potortì <pot@gnu.org>
parents: 45666
diff changeset
169 useless characters. If the match is such that more characters than
d11816fe2c59 New multi-line regexp and new regexp syntax.
Francesco Potortì <pot@gnu.org>
parents: 45666
diff changeset
170 needed are unavoidably matched by \fItagregexp\fP, it may be useful to
d11816fe2c59 New multi-line regexp and new regexp syntax.
Francesco Potortì <pot@gnu.org>
parents: 45666
diff changeset
171 add a \fInameregexp\fP, to narrow down the tag scope. \fBctags\fP
d11816fe2c59 New multi-line regexp and new regexp syntax.
Francesco Potortì <pot@gnu.org>
parents: 45666
diff changeset
172 ignores regexps without a \fInameregexp\fP. The syntax of regexps is
d11816fe2c59 New multi-line regexp and new regexp syntax.
Francesco Potortì <pot@gnu.org>
parents: 45666
diff changeset
173 the same as in emacs. The following character escape sequences are
d11816fe2c59 New multi-line regexp and new regexp syntax.
Francesco Potortì <pot@gnu.org>
parents: 45666
diff changeset
174 supported: \\a, \\b, \\d, \\e, \\f, \\n, \\r, \\t, \\v, which
d11816fe2c59 New multi-line regexp and new regexp syntax.
Francesco Potortì <pot@gnu.org>
parents: 45666
diff changeset
175 respectively stand for the ASCII characters BEL, BS, DEL, ESC, FF, NL,
d11816fe2c59 New multi-line regexp and new regexp syntax.
Francesco Potortì <pot@gnu.org>
parents: 45666
diff changeset
176 CR, TAB, VT.
d11816fe2c59 New multi-line regexp and new regexp syntax.
Francesco Potortì <pot@gnu.org>
parents: 45666
diff changeset
177 .br
d11816fe2c59 New multi-line regexp and new regexp syntax.
Francesco Potortì <pot@gnu.org>
parents: 45666
diff changeset
178 The \fImodifiers\fP are a sequence of 0 or more characters among
d11816fe2c59 New multi-line regexp and new regexp syntax.
Francesco Potortì <pot@gnu.org>
parents: 45666
diff changeset
179 \fIi\fP, which means to ignore case when matching; \fIm\fP, which means
d11816fe2c59 New multi-line regexp and new regexp syntax.
Francesco Potortì <pot@gnu.org>
parents: 45666
diff changeset
180 that the \fItagregexp\fP will be matched against the whole file contents
d11816fe2c59 New multi-line regexp and new regexp syntax.
Francesco Potortì <pot@gnu.org>
parents: 45666
diff changeset
181 at once, rather than line by line, and the matching sequence can match
d11816fe2c59 New multi-line regexp and new regexp syntax.
Francesco Potortì <pot@gnu.org>
parents: 45666
diff changeset
182 multiple lines; and \fIs\fP, which implies \fIm\fP and means that the
d11816fe2c59 New multi-line regexp and new regexp syntax.
Francesco Potortì <pot@gnu.org>
parents: 45666
diff changeset
183 dot character in \fItagregexp\fP matches the newline char as well.
45802
d4c9f3bd6dfa New {language} and @regexp features.
Francesco Potortì <pot@gnu.org>
parents: 45800
diff changeset
184 .br
45885
b2b7c9519909 Specify that the separator character can be different from a slash.
Francesco Potortì <pot@gnu.org>
parents: 45802
diff changeset
185 The separator, which is \fB/\fP in the examples, can be any character
b2b7c9519909 Specify that the separator character can be different from a slash.
Francesco Potortì <pot@gnu.org>
parents: 45802
diff changeset
186 different from space, tab, braces and \fB@\fP. If the separator
b2b7c9519909 Specify that the separator character can be different from a slash.
Francesco Potortì <pot@gnu.org>
parents: 45802
diff changeset
187 character is needed inside the regular expression, it must be quoted
b2b7c9519909 Specify that the separator character can be different from a slash.
Francesco Potortì <pot@gnu.org>
parents: 45802
diff changeset
188 by preceding it with \fB\\\fP.
b2b7c9519909 Specify that the separator character can be different from a slash.
Francesco Potortì <pot@gnu.org>
parents: 45802
diff changeset
189 .br
b2b7c9519909 Specify that the separator character can be different from a slash.
Francesco Potortì <pot@gnu.org>
parents: 45802
diff changeset
190 The optional \fB{\fP\fIlanguage\fP\fB}\fP prefix means that the tag
b2b7c9519909 Specify that the separator character can be different from a slash.
Francesco Potortì <pot@gnu.org>
parents: 45802
diff changeset
191 should be
45802
d4c9f3bd6dfa New {language} and @regexp features.
Francesco Potortì <pot@gnu.org>
parents: 45800
diff changeset
192 created only for files of language \fIlanguage\fP, and ignored
d4c9f3bd6dfa New {language} and @regexp features.
Francesco Potortì <pot@gnu.org>
parents: 45800
diff changeset
193 otherwise. This is particularly useful when storing many predefined
d4c9f3bd6dfa New {language} and @regexp features.
Francesco Potortì <pot@gnu.org>
parents: 45800
diff changeset
194 regexps in a file.
d4c9f3bd6dfa New {language} and @regexp features.
Francesco Potortì <pot@gnu.org>
parents: 45800
diff changeset
195 .br
45885
b2b7c9519909 Specify that the separator character can be different from a slash.
Francesco Potortì <pot@gnu.org>
parents: 45802
diff changeset
196 In its second form, \fIregexfile\fP is the name of a file that contains
b2b7c9519909 Specify that the separator character can be different from a slash.
Francesco Potortì <pot@gnu.org>
parents: 45802
diff changeset
197 a number of arguments to the \fI\-\-regex\=\fP option,
b2b7c9519909 Specify that the separator character can be different from a slash.
Francesco Potortì <pot@gnu.org>
parents: 45802
diff changeset
198 one per line. Lines beginning with a space or tab are assumed
45802
d4c9f3bd6dfa New {language} and @regexp features.
Francesco Potortì <pot@gnu.org>
parents: 45800
diff changeset
199 to be comments, and ignored.
45666
621742dde467 Document Etags regexp char escape sequences.
Francesco Potortì <pot@gnu.org>
parents: 45660
diff changeset
200
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
201 .br
Dave Love <fx@gnu.org>
parents:
diff changeset
202 Here are some examples. All the regexps are quoted to protect them
Dave Love <fx@gnu.org>
parents:
diff changeset
203 from shell interpretation.
Dave Love <fx@gnu.org>
parents:
diff changeset
204 .br
Dave Love <fx@gnu.org>
parents:
diff changeset
205
Dave Love <fx@gnu.org>
parents:
diff changeset
206 Tag the DEFVAR macros in the emacs source files:
Dave Love <fx@gnu.org>
parents:
diff changeset
207 .br
Dave Love <fx@gnu.org>
parents:
diff changeset
208 \fI\-\-regex\='/[ \\t]*DEFVAR_[A-Z_ \\t(]+"\\([^"]+\\)"\/'\fP
42043
0fe5fe39786c Etags changes for Prolog and PHP.
Francesco Potortì <pot@gnu.org>
parents: 41397
diff changeset
209 .\"" This comment is to avoid confusion to Emacs syntax highlighting
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
210 .br
Dave Love <fx@gnu.org>
parents:
diff changeset
211
Dave Love <fx@gnu.org>
parents:
diff changeset
212 Tag VHDL files (this example is a single long line, broken here for
Dave Love <fx@gnu.org>
parents:
diff changeset
213 formatting reasons):
Dave Love <fx@gnu.org>
parents:
diff changeset
214 .br
Dave Love <fx@gnu.org>
parents:
diff changeset
215 \fI\-\-language\=none\ \-\-regex='/[\ \\t]*\\(ARCHITECTURE\\|\\
Dave Love <fx@gnu.org>
parents:
diff changeset
216 CONFIGURATION\\)\ +[^\ ]*\ +OF/'\ \-\-regex\='/[\ \\t]*\\
Dave Love <fx@gnu.org>
parents:
diff changeset
217 \\(ATTRIBUTE\\|ENTITY\\|FUNCTION\\|PACKAGE\\(\ BODY\\)?\\
Dave Love <fx@gnu.org>
parents:
diff changeset
218 \\|PROCEDURE\\|PROCESS\\|TYPE\\)[\ \\t]+\\([^\ \\t(]+\\)/\\3/'\fP
Dave Love <fx@gnu.org>
parents:
diff changeset
219 .br
Dave Love <fx@gnu.org>
parents:
diff changeset
220
Dave Love <fx@gnu.org>
parents:
diff changeset
221 Tag TCL files (this last example shows the usage of a \fItagregexp\fP):
Dave Love <fx@gnu.org>
parents:
diff changeset
222 .br
Dave Love <fx@gnu.org>
parents:
diff changeset
223 \fI\-\-lang\=none \-\-regex\='/proc[\ \\t]+\\([^\ \\t]+\\)/\\1/'\fP
Dave Love <fx@gnu.org>
parents:
diff changeset
224
26339
91bc9f283495 Added wording for the regex files and the --ignore-case-regex option.
Francesco Potortì <pot@gnu.org>
parents: 26292
diff changeset
225 .br
37784
b2509ef38ea1 Add the latest changes to etags behaviour.
Francesco Potortì <pot@gnu.org>
parents: 37455
diff changeset
226 A regexp can be preceded by {\fIlang\fP}, thus restricting it to match
37332
446514f572dd Fix copyright year, update date, and the markup.
Eli Zaretskii <eliz@gnu.org>
parents: 26339
diff changeset
227 lines of files of the specified language. Use \fBetags --help\fP to obtain
446514f572dd Fix copyright year, update date, and the markup.
Eli Zaretskii <eliz@gnu.org>
parents: 26339
diff changeset
228 a list of the recognised languages. This feature is particularly useful inside
446514f572dd Fix copyright year, update date, and the markup.
Eli Zaretskii <eliz@gnu.org>
parents: 26339
diff changeset
229 \fBregex files\fP. A regex file contains one regex per line. Empty lines,
26339
91bc9f283495 Added wording for the regex files and the --ignore-case-regex option.
Francesco Potortì <pot@gnu.org>
parents: 26292
diff changeset
230 and those lines beginning with space or tab are ignored. Lines beginning
91bc9f283495 Added wording for the regex files and the --ignore-case-regex option.
Francesco Potortì <pot@gnu.org>
parents: 26292
diff changeset
231 with @ are references to regex files whose name follows the @ sign. Other
37332
446514f572dd Fix copyright year, update date, and the markup.
Eli Zaretskii <eliz@gnu.org>
parents: 26339
diff changeset
232 lines are considered regular expressions like those following \fB\-\-regex\fP.
26339
91bc9f283495 Added wording for the regex files and the --ignore-case-regex option.
Francesco Potortì <pot@gnu.org>
parents: 26292
diff changeset
233 .br
91bc9f283495 Added wording for the regex files and the --ignore-case-regex option.
Francesco Potortì <pot@gnu.org>
parents: 26292
diff changeset
234 For example, the command
91bc9f283495 Added wording for the regex files and the --ignore-case-regex option.
Francesco Potortì <pot@gnu.org>
parents: 26292
diff changeset
235 .br
37332
446514f572dd Fix copyright year, update date, and the markup.
Eli Zaretskii <eliz@gnu.org>
parents: 26339
diff changeset
236 \fIetags \-\-regex=@regex.file *.c\fP
26339
91bc9f283495 Added wording for the regex files and the --ignore-case-regex option.
Francesco Potortì <pot@gnu.org>
parents: 26292
diff changeset
237 .br
91bc9f283495 Added wording for the regex files and the --ignore-case-regex option.
Francesco Potortì <pot@gnu.org>
parents: 26292
diff changeset
238 reads the regexes contained in the file regex.file.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
239 .TP
Dave Love <fx@gnu.org>
parents:
diff changeset
240 .B \-R, \-\-no\-regex
Dave Love <fx@gnu.org>
parents:
diff changeset
241 Don't do any more regexp matching on the following files. May be
Dave Love <fx@gnu.org>
parents:
diff changeset
242 freely intermixed with filenames and the \fB\-\-regex\fP option.
Dave Love <fx@gnu.org>
parents:
diff changeset
243 .TP
Dave Love <fx@gnu.org>
parents:
diff changeset
244 .B \-t, \-\-typedefs
47106
7654c5eef71e Use American spelling of "behavior".
Richard M. Stallman <rms@gnu.org>
parents: 47085
diff changeset
245 Record typedefs in C code as tags. Since this is the default behavior
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
246 of \fBetags\fP, only \fBctags\fP accepts this option.
Dave Love <fx@gnu.org>
parents:
diff changeset
247 .TP
Dave Love <fx@gnu.org>
parents:
diff changeset
248 .B \-T, \-\-typedefs\-and\-c++
Dave Love <fx@gnu.org>
parents:
diff changeset
249 Generate tag entries for typedefs, struct, enum, and union tags, and
47106
7654c5eef71e Use American spelling of "behavior".
Richard M. Stallman <rms@gnu.org>
parents: 47085
diff changeset
250 C++ member functions. Since this is the default behavior
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
251 of \fBetags\fP, only \fBctags\fP accepts this option.
Dave Love <fx@gnu.org>
parents:
diff changeset
252 .TP
Dave Love <fx@gnu.org>
parents:
diff changeset
253 .B \-u, \-\-update
Dave Love <fx@gnu.org>
parents:
diff changeset
254 Update tag entries for \fIfiles\fP specified on command line, leaving
Dave Love <fx@gnu.org>
parents:
diff changeset
255 tag entries for other files in place. Currently, this is implemented
Dave Love <fx@gnu.org>
parents:
diff changeset
256 by deleting the existing entries for the given files and then
Dave Love <fx@gnu.org>
parents:
diff changeset
257 rewriting the new entries at the end of the tags file. It is often
Dave Love <fx@gnu.org>
parents:
diff changeset
258 faster to simply rebuild the entire tag file than to use this.
Dave Love <fx@gnu.org>
parents:
diff changeset
259 Only \fBctags\fP accepts this option.
Dave Love <fx@gnu.org>
parents:
diff changeset
260 .TP
Dave Love <fx@gnu.org>
parents:
diff changeset
261 .B \-v, \-\-vgrind
Dave Love <fx@gnu.org>
parents:
diff changeset
262 Instead of generating a tag file, write index (in \fBvgrind\fP format)
Dave Love <fx@gnu.org>
parents:
diff changeset
263 to standard output. Only \fBctags\fP accepts this option.
Dave Love <fx@gnu.org>
parents:
diff changeset
264 .TP
Dave Love <fx@gnu.org>
parents:
diff changeset
265 .B \-w, \-\-no\-warn
Dave Love <fx@gnu.org>
parents:
diff changeset
266 Suppress warning messages about duplicate entries. The \fBetags\fP
Dave Love <fx@gnu.org>
parents:
diff changeset
267 program does not check for duplicate entries, so this option is not
Dave Love <fx@gnu.org>
parents:
diff changeset
268 allowed with it.
Dave Love <fx@gnu.org>
parents:
diff changeset
269 .TP
Dave Love <fx@gnu.org>
parents:
diff changeset
270 .B \-x, \-\-cxref
Dave Love <fx@gnu.org>
parents:
diff changeset
271 Instead of generating a tag file, write a cross reference (in
Dave Love <fx@gnu.org>
parents:
diff changeset
272 \fBcxref\fP format) to standard output. Only \fBctags\fP accepts this option.
Dave Love <fx@gnu.org>
parents:
diff changeset
273 .TP
26292
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
274 .B \-h, \-H, \-\-help
57012
28b649226666 Added reference to the new `etags --help --lang=LANG' option.
Francesco Potortì <pot@gnu.org>
parents: 52401
diff changeset
275 Print usage information. Followed by one or more \-\-language=LANG
28b649226666 Added reference to the new `etags --help --lang=LANG' option.
Francesco Potortì <pot@gnu.org>
parents: 52401
diff changeset
276 prints detailed information about how tags are created for LANG.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
277 .TP
Dave Love <fx@gnu.org>
parents:
diff changeset
278 .B \-V, \-\-version
Dave Love <fx@gnu.org>
parents:
diff changeset
279 Print the current version of the program (same as the version of the
Dave Love <fx@gnu.org>
parents:
diff changeset
280 emacs \fBetags\fP is shipped with).
Dave Love <fx@gnu.org>
parents:
diff changeset
281
Dave Love <fx@gnu.org>
parents:
diff changeset
282 .SH "SEE ALSO"
Dave Love <fx@gnu.org>
parents:
diff changeset
283 `\|\fBemacs\fP\|' entry in \fBinfo\fP; \fIGNU Emacs Manual\fP, Richard
Dave Love <fx@gnu.org>
parents:
diff changeset
284 Stallman.
Dave Love <fx@gnu.org>
parents:
diff changeset
285 .br
Dave Love <fx@gnu.org>
parents:
diff changeset
286 .BR cxref ( 1 ),
Dave Love <fx@gnu.org>
parents:
diff changeset
287 .BR emacs ( 1 ),
Dave Love <fx@gnu.org>
parents:
diff changeset
288 .BR vgrind ( 1 ),
Dave Love <fx@gnu.org>
parents:
diff changeset
289 .BR vi ( 1 ).
Dave Love <fx@gnu.org>
parents:
diff changeset
290
Dave Love <fx@gnu.org>
parents:
diff changeset
291 .SH COPYING
37784
b2509ef38ea1 Add the latest changes to etags behaviour.
Francesco Potortì <pot@gnu.org>
parents: 37455
diff changeset
292 Copyright
37363
856784dec69a Put under GFDL.
Eli Zaretskii <eliz@gnu.org>
parents: 37332
diff changeset
293 .if t \(co
856784dec69a Put under GFDL.
Eli Zaretskii <eliz@gnu.org>
parents: 37332
diff changeset
294 .if n (c)
65088
f05a048483cc Update years in copyright notice; nfc.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 57090
diff changeset
295 1999, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
296 .PP
41397
e2c032a0aa44 Modify the distribution terms.
Eli Zaretskii <eliz@gnu.org>
parents: 39760
diff changeset
297 Permission is granted to make and distribute verbatim copies of this
e2c032a0aa44 Modify the distribution terms.
Eli Zaretskii <eliz@gnu.org>
parents: 39760
diff changeset
298 document provided the copyright notice and this permission notice are
e2c032a0aa44 Modify the distribution terms.
Eli Zaretskii <eliz@gnu.org>
parents: 39760
diff changeset
299 preserved on all copies.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
300 .PP
41397
e2c032a0aa44 Modify the distribution terms.
Eli Zaretskii <eliz@gnu.org>
parents: 39760
diff changeset
301 Permission is granted to copy and distribute modified versions of
e2c032a0aa44 Modify the distribution terms.
Eli Zaretskii <eliz@gnu.org>
parents: 39760
diff changeset
302 this document under the conditions for verbatim copying, provided that
e2c032a0aa44 Modify the distribution terms.
Eli Zaretskii <eliz@gnu.org>
parents: 39760
diff changeset
303 the entire resulting derived work is distributed under the terms of
e2c032a0aa44 Modify the distribution terms.
Eli Zaretskii <eliz@gnu.org>
parents: 39760
diff changeset
304 a permission notice identical to this one.
e2c032a0aa44 Modify the distribution terms.
Eli Zaretskii <eliz@gnu.org>
parents: 39760
diff changeset
305 .PP
e2c032a0aa44 Modify the distribution terms.
Eli Zaretskii <eliz@gnu.org>
parents: 39760
diff changeset
306 Permission is granted to copy and distribute translations of this
e2c032a0aa44 Modify the distribution terms.
Eli Zaretskii <eliz@gnu.org>
parents: 39760
diff changeset
307 document into another language, under the above conditions for
e2c032a0aa44 Modify the distribution terms.
Eli Zaretskii <eliz@gnu.org>
parents: 39760
diff changeset
308 modified versions, except that this permission notice may be stated
e2c032a0aa44 Modify the distribution terms.
Eli Zaretskii <eliz@gnu.org>
parents: 39760
diff changeset
309 in a translation approved by the Free Software Foundation.
52401
695cf19ef79e Add arch taglines
Miles Bader <miles@gnu.org>
parents: 47106
diff changeset
310
695cf19ef79e Add arch taglines
Miles Bader <miles@gnu.org>
parents: 47106
diff changeset
311 .\" arch-tag: 9534977f-af78-42f0-991d-1df6b6c05573