annotate etc/etags.1 @ 37363:856784dec69a

Put under GFDL.
author Eli Zaretskii <eliz@gnu.org>
date Tue, 17 Apr 2001 12:15:38 +0000
parents 446514f572dd
children 12ff16bf66ed
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
37332
446514f572dd Fix copyright year, update date, and the markup.
Eli Zaretskii <eliz@gnu.org>
parents: 26339
diff changeset
1 .\" Copyright (c) 1992, 2001 Free Software Foundation
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
2 .\" See section COPYING for conditions for redistribution
37332
446514f572dd Fix copyright year, update date, and the markup.
Eli Zaretskii <eliz@gnu.org>
parents: 26339
diff changeset
3 .TH etags 1 "08apr2001" "GNU Tools" "GNU Tools"
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
4 .de BP
Dave Love <fx@gnu.org>
parents:
diff changeset
5 .sp
Dave Love <fx@gnu.org>
parents:
diff changeset
6 .ti -.2i
Dave Love <fx@gnu.org>
parents:
diff changeset
7 \(**
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 .SH NAME
Dave Love <fx@gnu.org>
parents:
diff changeset
11 etags, ctags \- generate tag file for Emacs, vi
Dave Love <fx@gnu.org>
parents:
diff changeset
12 .SH SYNOPSIS
Dave Love <fx@gnu.org>
parents:
diff changeset
13 .hy 0
Dave Love <fx@gnu.org>
parents:
diff changeset
14 .na
26292
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
15 .B etags [\|\-aCDGImRVh\|] [\|\-i \fIfile\fP\|] [\|\-l \fIlanguage\fP\|]
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
16 .if n .br
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
17 .B [\|\-o \fItagfile\fP\|] [\|\-r \fIregexp\fP\|]
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
18 .br
26292
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
19 [\|\-\-append\|] [\|\-\-c++\|] [\|\-\-no\-defines\|]
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
20 [\|\-\-no\-globals\|] [\|\-\-include=\fIfile\fP\|]
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
21 [\|\-\-ignore\-indentation\|] [\|\-\-language=\fIlanguage\fP\|]
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
22 [\|\-\-members\|] [\|\-\-output=\fItagfile\fP\|]
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
23 [\|\-\-regex=\fIregexp\fP\|] [\|\-\-no\-regex\|]
26339
91bc9f283495 Added wording for the regex files and the --ignore-case-regex option.
Francesco Potortì <pot@gnu.org>
parents: 26292
diff changeset
24 [\|\-\-ignore\-case\-regex=\fIregexp\fP\|]
26292
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
25 [\|\-\-help\|] [\|\-\-version\|]
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
26 \fIfile\fP .\|.\|.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
27
26292
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
28 .B ctags [\|\-aCdgImRVh\|] [\|\-BtTuvwx\|] [\|\-l \fIlanguage\fP\|]
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
29 .if n .br
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
30 .B [\|\-o \fItagfile\fP\|] [\|\-r \fIregexp\fP\|]
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
31 .br
26292
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
32 [\|\-\-append\|] [\|\-\-backward\-search\|] [\|\-\-c++\|]
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
33 [\|\-\-cxref\|] [\|\-\-defines\|] [\|\-\-forward\-search\|]
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
34 [\|\-\-globals\|] [\|\-\-ignore\-indentation\|]
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
35 [\|\-\-language=\fIlanguage\fP\|] [\|\-\-members\|]
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
36 [\|\-\-output=\fItagfile\fP\|] [\|\-\-regex=\fIregexp\fP\|]
26339
91bc9f283495 Added wording for the regex files and the --ignore-case-regex option.
Francesco Potortì <pot@gnu.org>
parents: 26292
diff changeset
37 [\|\-\-ignore\-case\-regex=\fIregexp\fP\|]
26292
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
38 [\|\-\-typedefs\|] [\|\-\-typedefs\-and\-c++\|]
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
39 [\|\-\-update\|] [\|\-\-no\-warn\|]
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
40 [\|\-\-help\|] [\|\-\-version\|]
26292
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
41 \fIfile\fP .\|.\|.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
42 .ad b
Dave Love <fx@gnu.org>
parents:
diff changeset
43 .hy 1
Dave Love <fx@gnu.org>
parents:
diff changeset
44 .SH DESCRIPTION
37332
446514f572dd Fix copyright year, update date, and the markup.
Eli Zaretskii <eliz@gnu.org>
parents: 26339
diff changeset
45 The \|\fBetags\fP\| program is used to create a tag table file, in a format
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
46 understood by
Dave Love <fx@gnu.org>
parents:
diff changeset
47 .BR emacs ( 1 )\c
37332
446514f572dd Fix copyright year, update date, and the markup.
Eli Zaretskii <eliz@gnu.org>
parents: 26339
diff changeset
48 \&; the \|\fBctags\fP\| program is used to create a similar table in a
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
49 format understood by
Dave Love <fx@gnu.org>
parents:
diff changeset
50 .BR vi ( 1 )\c
Dave Love <fx@gnu.org>
parents:
diff changeset
51 \&. Both forms of the program understand
26292
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
52 the syntax of C, Objective C, C++, Java, Fortran, Pascal, Cobol, Ada, Perl,
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
53 LaTeX, Scheme, Emacs Lisp/Common Lisp, Postscript, Erlang, Python, Prolog and
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
54 most assembler\-like syntaxes.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
55 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
56 table (defaults: \fBTAGS\fP for \fBetags\fP, \fBtags\fP for
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
57 \fBctags\fP) in the current working directory.
Dave Love <fx@gnu.org>
parents:
diff changeset
58 Files specified with relative file names will be recorded in the tag
Dave Love <fx@gnu.org>
parents:
diff changeset
59 table with file names relative to the directory where the tag table
Dave Love <fx@gnu.org>
parents:
diff changeset
60 resides. Files specified with absolute file names will be recorded
Dave Love <fx@gnu.org>
parents:
diff changeset
61 with absolute file names.
Dave Love <fx@gnu.org>
parents:
diff changeset
62 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
63 file name and contents. The \fB\-\-language\fP switch can be used to force
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
64 parsing of the file names following the switch according to the given
Dave Love <fx@gnu.org>
parents:
diff changeset
65 language, overriding guesses based on filename extensions.
Dave Love <fx@gnu.org>
parents:
diff changeset
66 .SH OPTIONS
Dave Love <fx@gnu.org>
parents:
diff changeset
67 Some options make sense only for the \fBvi\fP style tag files produced
Dave Love <fx@gnu.org>
parents:
diff changeset
68 by ctags;
Dave Love <fx@gnu.org>
parents:
diff changeset
69 \fBetags\fP does not recognize them.
Dave Love <fx@gnu.org>
parents:
diff changeset
70 The programs accept unambiguous abbreviations for long option names.
Dave Love <fx@gnu.org>
parents:
diff changeset
71 .TP
Dave Love <fx@gnu.org>
parents:
diff changeset
72 .B \-a, \-\-append
37332
446514f572dd Fix copyright year, update date, and the markup.
Eli Zaretskii <eliz@gnu.org>
parents: 26339
diff changeset
73 Append to existing tag file. (For \fBvi\fP-format tag files, see also
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
74 \fB\-\-update\fP.)
Dave Love <fx@gnu.org>
parents:
diff changeset
75 .TP
Dave Love <fx@gnu.org>
parents:
diff changeset
76 .B \-B, \-\-backward\-search
Dave Love <fx@gnu.org>
parents:
diff changeset
77 Tag files written in the format expected by \fBvi\fP contain regular
Dave Love <fx@gnu.org>
parents:
diff changeset
78 expression search instructions; the \fB\-B\fP option writes them using
Dave Love <fx@gnu.org>
parents:
diff changeset
79 the delimiter `\|\fB?\fP\|', to search \fIbackwards\fP through files.
Dave Love <fx@gnu.org>
parents:
diff changeset
80 The default is to use the delimiter `\|\fB/\fP\|', to search \fIforwards\fP
Dave Love <fx@gnu.org>
parents:
diff changeset
81 through files.
Dave Love <fx@gnu.org>
parents:
diff changeset
82 Only \fBctags\fP accepts this option.
Dave Love <fx@gnu.org>
parents:
diff changeset
83 .TP
Dave Love <fx@gnu.org>
parents:
diff changeset
84 .B \-C, \-\-c++
Dave Love <fx@gnu.org>
parents:
diff changeset
85 Treat files with `\|.c\|' and `\|.h\|' extensions as C++ code, not C
Dave Love <fx@gnu.org>
parents:
diff changeset
86 code. Files with `\|.C\|', `\|.H\|', `\|.cxx\|', `\|.hxx\|', or
Dave Love <fx@gnu.org>
parents:
diff changeset
87 `\|.cc\|' extensions are always assumed to be C++ code.
Dave Love <fx@gnu.org>
parents:
diff changeset
88 .TP
26292
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
89 .B \-\-declarations
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
90 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
91 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
92 .TP
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
93 .B \-d, \-\-defines
26292
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
94 Create tag entries for C preprocessor constant definitions
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
95 and enum constants, too. This is the
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
96 default behavior for \fBetags\fP.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
97 .TP
Dave Love <fx@gnu.org>
parents:
diff changeset
98 .B \-D, \-\-no\-defines
26292
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
99 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
100 and enum constants.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
101 This may make the tags file much smaller if many header files are tagged.
26292
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
102 This is the default behavior for \fBctags\fP.
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
103 .TP
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
104 .B \-g, \-\-globals
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
105 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
106 and Perl.
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
107 This is the default behavior for \fBetags\fP.
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
108 .TP
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
109 .B \-G, \-\-no\-globals
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
110 Do not tag global variables. Typically this reduces the file size by
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
111 one fourth. This is the default behavior for \fBctags\fP.
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
112 .TP
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
113 \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
114 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
115 tag, one should also consult the tags file \fIfile\fP after checking the
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
116 current file. This options is only accepted by \fBetags\fP.
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
117 .TP
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
118 .B \-I, \-\-ignore\-indentation
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
119 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
120 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
121 final brace of a function or structure definition in C and C++.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
122 .TP
Dave Love <fx@gnu.org>
parents:
diff changeset
123 \fB\-l\fP \fIlanguage\fP, \fB\-\-language=\fIlanguage\fP
Dave Love <fx@gnu.org>
parents:
diff changeset
124 Parse the following files according to the given language. More than
Dave Love <fx@gnu.org>
parents:
diff changeset
125 one such options may be intermixed with filenames. Use \fB\-\-help\fP
Dave Love <fx@gnu.org>
parents:
diff changeset
126 to get a list of the available languages and their default filename
Dave Love <fx@gnu.org>
parents:
diff changeset
127 extensions. The `auto' language can be used to restore automatic
Dave Love <fx@gnu.org>
parents:
diff changeset
128 detection of language based on filename extension. The `none'
Dave Love <fx@gnu.org>
parents:
diff changeset
129 language may be used to disable language parsing altogether; only
Dave Love <fx@gnu.org>
parents:
diff changeset
130 regexp matching is done in this case (see the \fB\-\-regex\fP option).
Dave Love <fx@gnu.org>
parents:
diff changeset
131 .TP
26292
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
132 .B \-m, \-\-members
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
133 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
134 constructs in C++, Objective C, Java.
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
135 .TP
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
136 .B \-M, \-\-no\-members
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
137 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
138 .TP
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
139 .B \-\-packages\-only
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
140 Only tag packages in Ada files.
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
141 .TP
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
142 \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
143 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
144 \fBtags\fP. (But ignored with \fB\-v\fP or \fB\-x\fP.)
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
145 .TP
Dave Love <fx@gnu.org>
parents:
diff changeset
146 \fB\-r\fP \fIregexp\fP, \fB\-\-regex=\fIregexp\fP
37332
446514f572dd Fix copyright year, update date, and the markup.
Eli Zaretskii <eliz@gnu.org>
parents: 26339
diff changeset
147 .TP
446514f572dd Fix copyright year, update date, and the markup.
Eli Zaretskii <eliz@gnu.org>
parents: 26339
diff changeset
148 \fB\-\-ignore\-case\-regex=\fIregexp\fP
446514f572dd Fix copyright year, update date, and the markup.
Eli Zaretskii <eliz@gnu.org>
parents: 26339
diff changeset
149 Make tags based on regexp matching for each line of the files
446514f572dd Fix copyright year, update date, and the markup.
Eli Zaretskii <eliz@gnu.org>
parents: 26339
diff changeset
150 following this option, in addition to the tags made with the standard
446514f572dd Fix copyright year, update date, and the markup.
Eli Zaretskii <eliz@gnu.org>
parents: 26339
diff changeset
151 parsing based on language. When using \fB\-\-regex\fP, case is
446514f572dd Fix copyright year, update date, and the markup.
Eli Zaretskii <eliz@gnu.org>
parents: 26339
diff changeset
152 significant, while it is not with \fB\-\-ignore\-case\-regex\fP. May
446514f572dd Fix copyright year, update date, and the markup.
Eli Zaretskii <eliz@gnu.org>
parents: 26339
diff changeset
153 be freely intermixed with filenames and the \fB\-R\fP option. The
446514f572dd Fix copyright year, update date, and the markup.
Eli Zaretskii <eliz@gnu.org>
parents: 26339
diff changeset
154 regexps are cumulative, i.e. each option will add to the previous
446514f572dd Fix copyright year, update date, and the markup.
Eli Zaretskii <eliz@gnu.org>
parents: 26339
diff changeset
155 ones. The regexps are of the form:
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
156 .br
26339
91bc9f283495 Added wording for the regex files and the --ignore-case-regex option.
Francesco Potortì <pot@gnu.org>
parents: 26292
diff changeset
157 \fB/\fP\fItagregexp\fP[\fB/\fP\fInameregexp\fP]\fB/\fP
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
158 .br
Dave Love <fx@gnu.org>
parents:
diff changeset
159
Dave Love <fx@gnu.org>
parents:
diff changeset
160 where \fItagregexp\fP is used to match the lines that must be tagged.
Dave Love <fx@gnu.org>
parents:
diff changeset
161 It should not match useless characters. If the match is
Dave Love <fx@gnu.org>
parents:
diff changeset
162 such that more characters than needed are unavoidably matched by
Dave Love <fx@gnu.org>
parents:
diff changeset
163 \fItagregexp\fP, it may be useful to add a \fInameregexp\fP, to
Dave Love <fx@gnu.org>
parents:
diff changeset
164 narrow down the tag scope. \fBctags\fP ignores regexps without a
26292
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
165 \fInameregexp\fP. The syntax of regexps is the same as in emacs,
37332
446514f572dd Fix copyright year, update date, and the markup.
Eli Zaretskii <eliz@gnu.org>
parents: 26339
diff changeset
166 augmented with intervals of the form \\{m,n\\}, as in \fBed\fP or
446514f572dd Fix copyright year, update date, and the markup.
Eli Zaretskii <eliz@gnu.org>
parents: 26339
diff changeset
167 \fBgrep\fP.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
168 .br
Dave Love <fx@gnu.org>
parents:
diff changeset
169 Here are some examples. All the regexps are quoted to protect them
Dave Love <fx@gnu.org>
parents:
diff changeset
170 from shell interpretation.
Dave Love <fx@gnu.org>
parents:
diff changeset
171 .br
Dave Love <fx@gnu.org>
parents:
diff changeset
172
Dave Love <fx@gnu.org>
parents:
diff changeset
173 Tag the DEFVAR macros in the emacs source files:
Dave Love <fx@gnu.org>
parents:
diff changeset
174 .br
Dave Love <fx@gnu.org>
parents:
diff changeset
175 \fI\-\-regex\='/[ \\t]*DEFVAR_[A-Z_ \\t(]+"\\([^"]+\\)"\/'\fP
Dave Love <fx@gnu.org>
parents:
diff changeset
176 .br
Dave Love <fx@gnu.org>
parents:
diff changeset
177
Dave Love <fx@gnu.org>
parents:
diff changeset
178 Tag VHDL files (this example is a single long line, broken here for
Dave Love <fx@gnu.org>
parents:
diff changeset
179 formatting reasons):
Dave Love <fx@gnu.org>
parents:
diff changeset
180 .br
Dave Love <fx@gnu.org>
parents:
diff changeset
181 \fI\-\-language\=none\ \-\-regex='/[\ \\t]*\\(ARCHITECTURE\\|\\
Dave Love <fx@gnu.org>
parents:
diff changeset
182 CONFIGURATION\\)\ +[^\ ]*\ +OF/'\ \-\-regex\='/[\ \\t]*\\
Dave Love <fx@gnu.org>
parents:
diff changeset
183 \\(ATTRIBUTE\\|ENTITY\\|FUNCTION\\|PACKAGE\\(\ BODY\\)?\\
Dave Love <fx@gnu.org>
parents:
diff changeset
184 \\|PROCEDURE\\|PROCESS\\|TYPE\\)[\ \\t]+\\([^\ \\t(]+\\)/\\3/'\fP
Dave Love <fx@gnu.org>
parents:
diff changeset
185 .br
Dave Love <fx@gnu.org>
parents:
diff changeset
186
Dave Love <fx@gnu.org>
parents:
diff changeset
187 Tag TCL files (this last example shows the usage of a \fItagregexp\fP):
Dave Love <fx@gnu.org>
parents:
diff changeset
188 .br
Dave Love <fx@gnu.org>
parents:
diff changeset
189 \fI\-\-lang\=none \-\-regex\='/proc[\ \\t]+\\([^\ \\t]+\\)/\\1/'\fP
Dave Love <fx@gnu.org>
parents:
diff changeset
190
26339
91bc9f283495 Added wording for the regex files and the --ignore-case-regex option.
Francesco Potortì <pot@gnu.org>
parents: 26292
diff changeset
191 .br
37332
446514f572dd Fix copyright year, update date, and the markup.
Eli Zaretskii <eliz@gnu.org>
parents: 26339
diff changeset
192 A regexp can be preceded by {\fIlang\fP}, thus restriciting it to match
446514f572dd Fix copyright year, update date, and the markup.
Eli Zaretskii <eliz@gnu.org>
parents: 26339
diff changeset
193 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
194 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
195 \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
196 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
197 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
198 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
199 .br
91bc9f283495 Added wording for the regex files and the --ignore-case-regex option.
Francesco Potortì <pot@gnu.org>
parents: 26292
diff changeset
200 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
201 .br
37332
446514f572dd Fix copyright year, update date, and the markup.
Eli Zaretskii <eliz@gnu.org>
parents: 26339
diff changeset
202 \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
203 .br
91bc9f283495 Added wording for the regex files and the --ignore-case-regex option.
Francesco Potortì <pot@gnu.org>
parents: 26292
diff changeset
204 reads the regexes contained in the file regex.file.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
205 .TP
Dave Love <fx@gnu.org>
parents:
diff changeset
206 .B \-R, \-\-no\-regex
Dave Love <fx@gnu.org>
parents:
diff changeset
207 Don't do any more regexp matching on the following files. May be
Dave Love <fx@gnu.org>
parents:
diff changeset
208 freely intermixed with filenames and the \fB\-\-regex\fP option.
Dave Love <fx@gnu.org>
parents:
diff changeset
209 .TP
Dave Love <fx@gnu.org>
parents:
diff changeset
210 .B \-t, \-\-typedefs
Dave Love <fx@gnu.org>
parents:
diff changeset
211 Record typedefs in C code as tags. Since this is the default behaviour
Dave Love <fx@gnu.org>
parents:
diff changeset
212 of \fBetags\fP, only \fBctags\fP accepts this option.
Dave Love <fx@gnu.org>
parents:
diff changeset
213 .TP
Dave Love <fx@gnu.org>
parents:
diff changeset
214 .B \-T, \-\-typedefs\-and\-c++
Dave Love <fx@gnu.org>
parents:
diff changeset
215 Generate tag entries for typedefs, struct, enum, and union tags, and
Dave Love <fx@gnu.org>
parents:
diff changeset
216 C++ member functions. Since this is the default behaviour
Dave Love <fx@gnu.org>
parents:
diff changeset
217 of \fBetags\fP, only \fBctags\fP accepts this option.
Dave Love <fx@gnu.org>
parents:
diff changeset
218 .TP
Dave Love <fx@gnu.org>
parents:
diff changeset
219 .B \-u, \-\-update
Dave Love <fx@gnu.org>
parents:
diff changeset
220 Update tag entries for \fIfiles\fP specified on command line, leaving
Dave Love <fx@gnu.org>
parents:
diff changeset
221 tag entries for other files in place. Currently, this is implemented
Dave Love <fx@gnu.org>
parents:
diff changeset
222 by deleting the existing entries for the given files and then
Dave Love <fx@gnu.org>
parents:
diff changeset
223 rewriting the new entries at the end of the tags file. It is often
Dave Love <fx@gnu.org>
parents:
diff changeset
224 faster to simply rebuild the entire tag file than to use this.
Dave Love <fx@gnu.org>
parents:
diff changeset
225 Only \fBctags\fP accepts this option.
Dave Love <fx@gnu.org>
parents:
diff changeset
226 .TP
Dave Love <fx@gnu.org>
parents:
diff changeset
227 .B \-v, \-\-vgrind
Dave Love <fx@gnu.org>
parents:
diff changeset
228 Instead of generating a tag file, write index (in \fBvgrind\fP format)
Dave Love <fx@gnu.org>
parents:
diff changeset
229 to standard output. Only \fBctags\fP accepts this option.
Dave Love <fx@gnu.org>
parents:
diff changeset
230 .TP
Dave Love <fx@gnu.org>
parents:
diff changeset
231 .B \-w, \-\-no\-warn
Dave Love <fx@gnu.org>
parents:
diff changeset
232 Suppress warning messages about duplicate entries. The \fBetags\fP
Dave Love <fx@gnu.org>
parents:
diff changeset
233 program does not check for duplicate entries, so this option is not
Dave Love <fx@gnu.org>
parents:
diff changeset
234 allowed with it.
Dave Love <fx@gnu.org>
parents:
diff changeset
235 .TP
Dave Love <fx@gnu.org>
parents:
diff changeset
236 .B \-x, \-\-cxref
Dave Love <fx@gnu.org>
parents:
diff changeset
237 Instead of generating a tag file, write a cross reference (in
Dave Love <fx@gnu.org>
parents:
diff changeset
238 \fBcxref\fP format) to standard output. Only \fBctags\fP accepts this option.
Dave Love <fx@gnu.org>
parents:
diff changeset
239 .TP
26292
81cd0c225dd9 Last changes for etags (I hope).
Francesco Potortì <pot@gnu.org>
parents: 25853
diff changeset
240 .B \-h, \-H, \-\-help
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
241 Print usage information.
Dave Love <fx@gnu.org>
parents:
diff changeset
242 .TP
Dave Love <fx@gnu.org>
parents:
diff changeset
243 .B \-V, \-\-version
Dave Love <fx@gnu.org>
parents:
diff changeset
244 Print the current version of the program (same as the version of the
Dave Love <fx@gnu.org>
parents:
diff changeset
245 emacs \fBetags\fP is shipped with).
Dave Love <fx@gnu.org>
parents:
diff changeset
246
Dave Love <fx@gnu.org>
parents:
diff changeset
247 .SH "SEE ALSO"
Dave Love <fx@gnu.org>
parents:
diff changeset
248 `\|\fBemacs\fP\|' entry in \fBinfo\fP; \fIGNU Emacs Manual\fP, Richard
Dave Love <fx@gnu.org>
parents:
diff changeset
249 Stallman.
Dave Love <fx@gnu.org>
parents:
diff changeset
250 .br
Dave Love <fx@gnu.org>
parents:
diff changeset
251 .BR cxref ( 1 ),
Dave Love <fx@gnu.org>
parents:
diff changeset
252 .BR emacs ( 1 ),
Dave Love <fx@gnu.org>
parents:
diff changeset
253 .BR vgrind ( 1 ),
Dave Love <fx@gnu.org>
parents:
diff changeset
254 .BR vi ( 1 ).
Dave Love <fx@gnu.org>
parents:
diff changeset
255
Dave Love <fx@gnu.org>
parents:
diff changeset
256 .SH COPYING
37363
856784dec69a Put under GFDL.
Eli Zaretskii <eliz@gnu.org>
parents: 37332
diff changeset
257 Copyright
856784dec69a Put under GFDL.
Eli Zaretskii <eliz@gnu.org>
parents: 37332
diff changeset
258 .if t \(co
856784dec69a Put under GFDL.
Eli Zaretskii <eliz@gnu.org>
parents: 37332
diff changeset
259 .if n (c)
856784dec69a Put under GFDL.
Eli Zaretskii <eliz@gnu.org>
parents: 37332
diff changeset
260 1999, 2001 Free Software Foundation, Inc.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
261 .PP
37363
856784dec69a Put under GFDL.
Eli Zaretskii <eliz@gnu.org>
parents: 37332
diff changeset
262 Permission is granted to copy, distribute and/or modify this document
856784dec69a Put under GFDL.
Eli Zaretskii <eliz@gnu.org>
parents: 37332
diff changeset
263 under the terms of the GNU Free Documentation License, Version 1.1
856784dec69a Put under GFDL.
Eli Zaretskii <eliz@gnu.org>
parents: 37332
diff changeset
264 or any later version published by the Free Software Foundation;
856784dec69a Put under GFDL.
Eli Zaretskii <eliz@gnu.org>
parents: 37332
diff changeset
265 with no Invariant Sections, with no Front-Cover Texts, and no
856784dec69a Put under GFDL.
Eli Zaretskii <eliz@gnu.org>
parents: 37332
diff changeset
266 Back-Cover Texts.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
267 .PP
37363
856784dec69a Put under GFDL.
Eli Zaretskii <eliz@gnu.org>
parents: 37332
diff changeset
268 A copy of the license is included in the Emacs manual in the section
856784dec69a Put under GFDL.
Eli Zaretskii <eliz@gnu.org>
parents: 37332
diff changeset
269 entitled "GNU Free Documentation License".