annotate man/ebrowse.texi @ 35951:c5792fd59359

Fix the @direntry format (it lacked the file name).
author Eli Zaretskii <eliz@gnu.org>
date Wed, 07 Feb 2001 05:32:15 +0000
parents b4c4371560b4
children f6ba7a00b9e1
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1 \input texinfo @c -*-texinfo-*-
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
2
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
3 @comment %**start of header
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
4 @setfilename ../info/ebrowse
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
5 @settitle A Class Browser for C++
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
6 @setchapternewpage odd
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
7 @syncodeindex fn cp
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
8 @comment %**end of header
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
9
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
10 @ifinfo
34172
b4c4371560b4 Add @dircategory.
Dave Love <fx@gnu.org>
parents: 32315
diff changeset
11 @dircategory Emacs
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
12 @direntry
35951
c5792fd59359 Fix the @direntry format (it lacked the file name).
Eli Zaretskii <eliz@gnu.org>
parents: 34172
diff changeset
13 * Ebrowse: (ebrowse). A C++ class browser for Emacs.
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
14 @end direntry
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
15
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
16 This file documents Ebrowse, a C++ class browser for GNU Emacs.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
17
32315
0da9507401c4 Convert to GFDL.
Dave Love <fx@gnu.org>
parents: 30807
diff changeset
18 Copyright @copyright{} 2000 Free Software Foundation, Inc.
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
19
32315
0da9507401c4 Convert to GFDL.
Dave Love <fx@gnu.org>
parents: 30807
diff changeset
20 Permission is granted to copy, distribute and/or modify this document
0da9507401c4 Convert to GFDL.
Dave Love <fx@gnu.org>
parents: 30807
diff changeset
21 under the terms of the GNU Free Documentation License, Version 1.1 or
0da9507401c4 Convert to GFDL.
Dave Love <fx@gnu.org>
parents: 30807
diff changeset
22 any later version published by the Free Software Foundation; with no
0da9507401c4 Convert to GFDL.
Dave Love <fx@gnu.org>
parents: 30807
diff changeset
23 Invariant Sections, with the Front-Cover texts being ``A GNU
0da9507401c4 Convert to GFDL.
Dave Love <fx@gnu.org>
parents: 30807
diff changeset
24 Manual'', and with the Back-Cover Texts as in (a) below. A copy of the
0da9507401c4 Convert to GFDL.
Dave Love <fx@gnu.org>
parents: 30807
diff changeset
25 license is included in the section entitled ``GNU Free Documentation
0da9507401c4 Convert to GFDL.
Dave Love <fx@gnu.org>
parents: 30807
diff changeset
26 License'' in the Emacs manual.
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
27
32315
0da9507401c4 Convert to GFDL.
Dave Love <fx@gnu.org>
parents: 30807
diff changeset
28 (a) The FSF's Back-Cover Text is: ``You have freedom to copy and modify
0da9507401c4 Convert to GFDL.
Dave Love <fx@gnu.org>
parents: 30807
diff changeset
29 this GNU Manual, like GNU software. Copies published by the Free
0da9507401c4 Convert to GFDL.
Dave Love <fx@gnu.org>
parents: 30807
diff changeset
30 Software Foundation raise funds for GNU development.''
0da9507401c4 Convert to GFDL.
Dave Love <fx@gnu.org>
parents: 30807
diff changeset
31
0da9507401c4 Convert to GFDL.
Dave Love <fx@gnu.org>
parents: 30807
diff changeset
32 This document is part of a collection distributed under the GNU Free
0da9507401c4 Convert to GFDL.
Dave Love <fx@gnu.org>
parents: 30807
diff changeset
33 Documentation License. If you want to distribute this document
0da9507401c4 Convert to GFDL.
Dave Love <fx@gnu.org>
parents: 30807
diff changeset
34 separately from the collection, you can do so by adding a copy of the
0da9507401c4 Convert to GFDL.
Dave Love <fx@gnu.org>
parents: 30807
diff changeset
35 license to the document, as described in section 6 of the license.
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
36 @end ifinfo
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
37
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
38 @iftex
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
39 @titlepage
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
40 @title Ebrowse User's Manual
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
41 @sp 4
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
42 @subtitle Ebrowse/Emacs 21
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
43 @sp 1
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
44 @subtitle May 2000
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
45 @sp 5
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
46 @author Gerd Moellmann
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
47 @page
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
48
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
49 @vskip 0pt plus 1filll
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
50 @noindent
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
51 Copyright @copyright{} 2000 Free Software Foundation, Inc.
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
52
32315
0da9507401c4 Convert to GFDL.
Dave Love <fx@gnu.org>
parents: 30807
diff changeset
53
0da9507401c4 Convert to GFDL.
Dave Love <fx@gnu.org>
parents: 30807
diff changeset
54 Permission is granted to copy, distribute and/or modify this document
0da9507401c4 Convert to GFDL.
Dave Love <fx@gnu.org>
parents: 30807
diff changeset
55 under the terms of the GNU Free Documentation License, Version 1.1 or
0da9507401c4 Convert to GFDL.
Dave Love <fx@gnu.org>
parents: 30807
diff changeset
56 any later version published by the Free Software Foundation; with no
0da9507401c4 Convert to GFDL.
Dave Love <fx@gnu.org>
parents: 30807
diff changeset
57 Invariant Sections, with the Front-Cover texts being ``A GNU
0da9507401c4 Convert to GFDL.
Dave Love <fx@gnu.org>
parents: 30807
diff changeset
58 Manual'', and with the Back-Cover Texts as in (a) below. A copy of the
0da9507401c4 Convert to GFDL.
Dave Love <fx@gnu.org>
parents: 30807
diff changeset
59 license is included in the section entitled ``GNU Free Documentation
0da9507401c4 Convert to GFDL.
Dave Love <fx@gnu.org>
parents: 30807
diff changeset
60 License'' in the Emacs manual.
0da9507401c4 Convert to GFDL.
Dave Love <fx@gnu.org>
parents: 30807
diff changeset
61
0da9507401c4 Convert to GFDL.
Dave Love <fx@gnu.org>
parents: 30807
diff changeset
62 (a) The FSF's Back-Cover Text is: ``You have freedom to copy and modify
0da9507401c4 Convert to GFDL.
Dave Love <fx@gnu.org>
parents: 30807
diff changeset
63 this GNU Manual, like GNU software. Copies published by the Free
0da9507401c4 Convert to GFDL.
Dave Love <fx@gnu.org>
parents: 30807
diff changeset
64 Software Foundation raise funds for GNU development.''
0da9507401c4 Convert to GFDL.
Dave Love <fx@gnu.org>
parents: 30807
diff changeset
65
0da9507401c4 Convert to GFDL.
Dave Love <fx@gnu.org>
parents: 30807
diff changeset
66 This document is part of a collection distributed under the GNU Free
0da9507401c4 Convert to GFDL.
Dave Love <fx@gnu.org>
parents: 30807
diff changeset
67 Documentation License. If you want to distribute this document
0da9507401c4 Convert to GFDL.
Dave Love <fx@gnu.org>
parents: 30807
diff changeset
68 separately from the collection, you can do so by adding a copy of the
0da9507401c4 Convert to GFDL.
Dave Love <fx@gnu.org>
parents: 30807
diff changeset
69 license to the document, as described in section 6 of the license.
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
70 @end titlepage
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
71 @page
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
72 @end iftex
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
73
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
74 @node Top, Overview, (dir), (dir)
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
75
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
76 @ifnottex
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
77 You can browse C++ class hierarchies from within Emacs by using
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
78 Ebrowse.
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
79 @end ifnottex
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
80
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
81 @menu
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
82 * Overview:: What is it and now does it work?
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
83 * Generating browser files:: How to process C++ source files
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
84 * Loading a Tree:: How to start browsing
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
85 * Tree Buffers:: Traversing class hierarchies
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
86 * Member Buffers:: Looking at member information
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
87 * Tags-like Functions:: Finding members from source files
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
88 * Concept Index:: An entry for each concept defined
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
89 @end menu
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
90
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
91
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
92
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
93
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
94 @node Overview, Generating browser files, Top, Top
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
95 @chapter Introduction
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
96
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
97 When working in software projects using C++, I frequently missed
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
98 software support for two things:
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
99
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
100 @itemize @bullet
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
101 @item
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
102 When you get a new class library, or you have to work on source code you
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
103 haven't written yourself (or written sufficiently long ago), you need a
30807
a788b278d7e6 Minor English and formatting changes.
Dave Love <fx@gnu.org>
parents: 29713
diff changeset
104 tool to let you navigate class hierarchies and investigate
a788b278d7e6 Minor English and formatting changes.
Dave Love <fx@gnu.org>
parents: 29713
diff changeset
105 features of the software. Without such a tool you often end up
a788b278d7e6 Minor English and formatting changes.
Dave Love <fx@gnu.org>
parents: 29713
diff changeset
106 @command{grep}ing through dozens or even hundreds of files.
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
107
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
108 @item
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
109 Once you are productive, it would be nice to have a tool that knows your
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
110 sources and can help you while you are editing source code. Imagine to
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
111 be able to jump to the definition of an identifier while you are
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
112 editing, or something that can complete long identifier names because it
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
113 knows what identifiers are defined in your program@dots{}.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
114 @end itemize
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
115
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
116 The design of Ebrowse reflects these two needs.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
117
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
118 How does it work?
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
119
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
120 @cindex parser for C++ sources
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
121 A fast parser written in C is used to process C++ source files.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
122 The parser generates a data base containing information about classes,
30807
a788b278d7e6 Minor English and formatting changes.
Dave Love <fx@gnu.org>
parents: 29713
diff changeset
123 members, global functions, defines, types etc.@: found in the sources.
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
124
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
125 The second part of Ebrowse is a Lisp program. This program reads
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
126 the data base generated by the parser. It displays its contents in
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
127 various forms and allows you to perform operations on it, or do
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
128 something with the help of the knowledge contained in the data base.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
129
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
130 @cindex major modes, of Ebrowse buffers
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
131 @dfn{Navigational} use of Ebrowse is centered around two
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
132 types of buffers which define their own major modes:
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
133
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
134 @cindex tree buffer
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
135 @dfn{Tree buffers} are used to view class hierarchies in tree form.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
136 They allow you to quickly find classes, find or view class declarations,
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
137 perform operations like query replace on sets of your source files, and
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
138 finally tree buffers are used to produce the second buffer form---member
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
139 buffers. @xref{Tree Buffers}.
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
140
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
141 @cindex member buffer
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
142 Members are displayed in @dfn{member buffers}. Ebrowse
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
143 distinguishes between six different types of members; each type is
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
144 displayed as a member list of its own:
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
145
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
146 @itemize @bullet
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
147 @item
30807
a788b278d7e6 Minor English and formatting changes.
Dave Love <fx@gnu.org>
parents: 29713
diff changeset
148 Instance member variables;
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
149
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
150 @item
30807
a788b278d7e6 Minor English and formatting changes.
Dave Love <fx@gnu.org>
parents: 29713
diff changeset
151 Instance member functions;
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
152
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
153 @item
30807
a788b278d7e6 Minor English and formatting changes.
Dave Love <fx@gnu.org>
parents: 29713
diff changeset
154 Static member variables;
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
155
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
156 @item
30807
a788b278d7e6 Minor English and formatting changes.
Dave Love <fx@gnu.org>
parents: 29713
diff changeset
157 Static member functions;
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
158
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
159 @item
30807
a788b278d7e6 Minor English and formatting changes.
Dave Love <fx@gnu.org>
parents: 29713
diff changeset
160 Friends/Defines. The list of defines is contained in the friends
a788b278d7e6 Minor English and formatting changes.
Dave Love <fx@gnu.org>
parents: 29713
diff changeset
161 list of the pseudo-class @samp{*Globals*};
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
162
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
163 @item
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
164 Types (@code{enum}s, and @code{typedef}s defined with class
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
165 scope).@refill
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
166 @end itemize
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
167
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
168 You can switch member buffers from one list to another, or to another
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
169 class. You can include inherited members in the display, you can set
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
170 filters that remove categories of members from the display, and most
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
171 importantly you can find or view member declarations and definitions
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
172 with a keystroke. @xref{Member Buffers}.
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
173
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
174 These two buffer types and the commands they provide support the
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
175 navigational use of the browser. The second form resembles Emacs' Tags
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
176 package for C and other procedural languages. Ebrowse's commands of
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
177 this type are not confined to special buffers; they are most often used
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
178 while you are editing your source code.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
179
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
180 To list just a subset of what you can use the Tags part of Ebrowse for:
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
181
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
182 @itemize @bullet
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
183 @item
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
184 Jump to the definition or declaration of an identifier in your source
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
185 code, with an electric position stack that lets you easily navigate
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
186 back and forth.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
187
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
188 @item
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
189 Complete identifiers in your source with a completion list containing
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
190 identifiers from your source code only.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
191
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
192 @item
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
193 Perform search and query replace operations over some or all of your
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
194 source files.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
195
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
196 @item
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
197 Show all identifiers matching a regular expression---and jump to one of
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
198 them, if you like.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
199 @end itemize
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
200
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
201
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
202
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
203
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
204 @node Generating browser files, Loading a Tree, Overview, Top
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
205 @comment node-name, next, previous, up
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
206 @chapter Processing Source Files
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
207
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
208 @cindex @command{ebrowse}, the program
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
209 @cindex class data base creation
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
210 Before you can start browsing a class hierarchy, you must run the parser
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
211 @command{ebrowse} on your source files in order to generate a Lisp data
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
212 base describing your program.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
213
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
214 @cindex command line for @command{ebrowse}
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
215 The operation of @command{ebrowse} can be tailored with command line
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
216 options. Under normal circumstances it suffices to let the parser use
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
217 its default settings. If you want to do that, call it with a command
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
218 line like:
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
219
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
220 @example
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
221 ebrowse *.h *.cc
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
222 @end example
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
223
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
224 @noindent
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
225 or, if your shell doesn't allow all the file names to be specified on
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
226 the command line,
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
227
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
228 @example
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
229 ebrowse --files=@var{file}
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
230 @end example
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
231
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
232 @noindent
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
233 where @var{file} contains the names of the files to be parsed, one
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
234 per line.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
235
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
236 @findex --help
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
237 When invoked with option @samp{--help}, @command{ebrowse} prints a list of
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
238 available command line options.@refill
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
239
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
240 @menu
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
241 * Input files:: Specifying which files to parse
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
242 * Output file:: Changing the output file name
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
243 * Structs and unions:: Omitting @code{struct}s and @code{union}s
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
244 * Matching:: Setting regular expression lengths
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
245 * Verbosity:: Getting feedback for lengthy operations
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
246 @end menu
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
247
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
248
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
249
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
250
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
251 @comment name, next, prev, up
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
252 @node Input files, Output file, Generating browser files, Generating browser files
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
253 @section Specifying Input Files
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
254
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
255 @table @samp
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
256 @cindex input files, for @command{ebrowse}
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
257 @item file
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
258 Each file name on the command line tells @command{ebrowse} to parse
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
259 that file.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
260
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
261 @cindex response files
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
262 @findex --files
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
263 @item --files=@var{file}
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
264 This command line switch specifies that @var{file} contains a list of
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
265 file names to parse. Each line in @var{file} must contain one file
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
266 name. More than one option of this kind is allowed. You might, for
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
267 instance, want to use one file for header files, and another for source
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
268 files.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
269
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
270 @cindex standard input, specifying input files
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
271 @item standard input
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
272 When @command{ebrowse} finds no file names on the command line, and no
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
273 @samp{--file} option is specified, it reads file names from standard
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
274 input. This is sometimes convenient when @command{ebrowse} is used as part
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
275 of a command pipe.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
276
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
277 @findex --search-path
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
278 @item --search-path=@var{paths}
30807
a788b278d7e6 Minor English and formatting changes.
Dave Love <fx@gnu.org>
parents: 29713
diff changeset
279 This option lets you specify search paths for your input files.
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
280 @var{paths} is a list of directory names, separated from each other by a
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
281 either a colon or a semicolon, depending on the operating system.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
282 @end table
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
283
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
284 @cindex header files
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
285 @cindex friend functions
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
286 It is generally a good idea to specify input files so that header files
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
287 are parsed before source files. This facilitates the parser's work of
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
288 properly identifying friend functions of a class.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
289
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
290
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
291
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
292 @comment name, next, prev, up
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
293 @node Output file, Structs and unions, Input files, Generating browser files
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
294 @section Changing the Output File Name
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
295
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
296 @table @samp
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
297 @cindex output file name
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
298 @findex --output-file
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
299 @cindex @file{BROWSE} file
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
300 @item --output-file=@var{file}
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
301 This option instructs @command{ebrowse} to generate a Lisp data base with
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
302 name @var{file}. By default, the data base is named @file{BROWSE}, and
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
303 is written in the directory in which @command{ebrowse} is invoked.
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
304
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
305 If you regularly use data base names different from the default, you
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
306 might want to add this to your init file:
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
307
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
308 @lisp
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
309 (add-to-list 'auto-mode-alist '(@var{NAME} . ebrowse-tree-mode))
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
310 @end lisp
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
311
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
312 @noindent
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
313 where @var{NAME} is the Lisp data base name you are using.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
314
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
315 @findex --append
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
316 @cindex appending output to class data base
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
317 @item --append
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
318 By default, each run of @command{ebrowse} erases the old contents of the
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
319 output file when writing to it. You can instruct @command{ebrowse} to
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
320 append its output to an existing file with this command line option.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
321 @end table
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
322
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
323
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
324
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
325
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
326 @comment name, next, prev, up
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
327 @node Structs and unions, Matching, Output file, Generating browser files
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
328 @section Structs and Unions
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
329 @cindex structs
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
330 @cindex unions
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
331
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
332 @table @samp
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
333 @findex --no-structs-or-unions
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
334 @item --no-structs-or-unions
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
335 This switch suppresses all classes in the data base declared as
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
336 @code{struct} or @code{union} in the output.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
337
30807
a788b278d7e6 Minor English and formatting changes.
Dave Love <fx@gnu.org>
parents: 29713
diff changeset
338 This is mainly useful when you are converting an existing
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
339 C program to C++, and do not want to see the old C structs in a class
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
340 tree.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
341 @end table
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
342
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
343
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
344
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
345
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
346 @comment name, next, prev, up
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
347 @node Matching, Verbosity, Structs and unions, Generating browser files
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
348 @section Regular Expressions
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
349
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
350 @cindex regular expressions, recording
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
351 The parser @command{ebrowse} normally writes regular expressions to its
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
352 output file that help the Lisp part of Ebrowse to find functions,
30807
a788b278d7e6 Minor English and formatting changes.
Dave Love <fx@gnu.org>
parents: 29713
diff changeset
353 variables etc.@: in their source files.
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
354
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
355 You can instruct @command{ebrowse} to omit these regular expressions by
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
356 calling it with the command line switch @samp{--no-regexps}.
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
357
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
358 When you do this, the Lisp part of Ebrowse tries to guess, from member
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
359 or class names, suitable regular expressions to locate that class or
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
360 member in source files. This works fine in most cases, but the
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
361 automatic generation of regular expressions can be too weak if unusual
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
362 coding styles are used.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
363
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
364 @table @samp
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
365 @findex --no-regexps
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
366 @item --no-regexps
30807
a788b278d7e6 Minor English and formatting changes.
Dave Love <fx@gnu.org>
parents: 29713
diff changeset
367 This option turns off regular expression recording.
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
368
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
369 @findex --min-regexp-length
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
370 @cindex minimum regexp length for recording
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
371 @item --min-regexp-length=@var{n}
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
372 The number @var{n} following this option specifies the minimum length of
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
373 the regular expressions recorded to match class and member declarations
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
374 and definitions. The default value is set at compilation time of
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
375 @command{ebrowse}.
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
376
30807
a788b278d7e6 Minor English and formatting changes.
Dave Love <fx@gnu.org>
parents: 29713
diff changeset
377 The smaller the minimum length, the higher the probability that
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
378 Ebrowse will find a wrong match. The larger the value, the
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
379 larger the output file and therefore the memory consumption once the
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
380 file is read from Emacs.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
381
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
382 @findex --max-regexp-length
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
383 @cindex maximum regexp length for recording
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
384 @item --max-regexp-length=@var{n}
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
385 The number following this option specifies the maximum length of the
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
386 regular expressions used to match class and member declarations and
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
387 definitions. The default value is set at compilation time of
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
388 @command{ebrowse}.
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
389
30807
a788b278d7e6 Minor English and formatting changes.
Dave Love <fx@gnu.org>
parents: 29713
diff changeset
390 The larger the maximum length, the higher the probability that the
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
391 browser will find a correct match, but the larger the value the larger
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
392 the output file and therefore the memory consumption once the data is
30807
a788b278d7e6 Minor English and formatting changes.
Dave Love <fx@gnu.org>
parents: 29713
diff changeset
393 read. As a second effect, the larger the regular expression, the higher
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
394 the probability that it will no longer match after editing the file.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
395 @end table
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
396
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
397
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
398
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
399
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
400 @node Verbosity, , Matching, Generating browser files
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
401 @comment node-name, next, previous, up
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
402 @section Verbose Mode
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
403 @cindex verbose operation
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
404
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
405 @table @samp
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
406 @findex --verbose
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
407 @item --verbose
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
408 When this option is specified on the command line, @command{ebrowse} prints
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
409 a period for each file parsed, and it displays a @samp{+} for each
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
410 class written to the output file.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
411
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
412 @findex --very-verbose
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
413 @item --very-verbose
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
414 This option makes @command{ebrowse} print out the names of the files and
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
415 the names of the classes seen.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
416 @end table
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
417
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
418
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
419
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
420
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
421 @node Loading a Tree, Tree Buffers, Generating browser files, Top
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
422 @comment node-name, next, previous, up
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
423 @chapter Starting to Browse
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
424 @cindex loading
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
425 @cindex browsing
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
426
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
427 You start browsing a class hierarchy parsed by @command{ebrowse} by just
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
428 finding the @file{BROWSE} file with @kbd{C-x C-f}.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
429
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
430 An example of a tree buffer display is shown below.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
431
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
432 @example
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
433 | Collection
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
434 | IndexedCollection
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
435 | Array
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
436 | FixedArray
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
437 | Set
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
438 | Dictionary
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
439 @end example
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
440
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
441 @cindex mouse highlight in tree buffers
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
442 When you run Emacs on a display which supports colors and the mouse, you
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
443 will notice that that certain areas in the tree buffer are highlighted
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
444 when you move the mouse over them. This highlight marks mouse-sensitive
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
445 regions in the buffer. Please notice the help strings in the echo area
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
446 when the mouse moves over a sensitive region.
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
447
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
448 @cindex context menu
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
449 A click with @kbd{mouse-3} on a mouse-sensitive region opens a context
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
450 menu. In addition to this, each buffer also has a buffer-specific menu
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
451 that is opened with a click with @kbd{mouse-3} somewhere in the buffer
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
452 where no highlight is displayed.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
453
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
454
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
455
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
456 @comment ****************************************************************
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
457 @comment ***
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
458 @comment *** TREE BUFFERS
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
459 @comment ***
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
460 @comment ****************************************************************
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
461
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
462 @node Tree Buffers, Member Buffers, Loading a Tree, Top
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
463 @comment node-name, next, previous, up
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
464 @chapter Tree Buffers
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
465 @cindex tree buffer mode
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
466 @cindex class trees
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
467
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
468 Class trees are displayed in @dfn{tree buffers} which install their own
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
469 major mode. Most Emacs keys work in tree buffers in the usual way,
30807
a788b278d7e6 Minor English and formatting changes.
Dave Love <fx@gnu.org>
parents: 29713
diff changeset
470 e.g.@: you can move around in the buffer with the usual @kbd{C-f},
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
471 @kbd{C-v} etc., or you can search with @kbd{C-s}.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
472
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
473 Tree-specific commands are bound to simple keystrokes, similar to
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
474 @code{Gnus}. You can take a look at the key bindings by entering
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
475 @kbd{?} which calls @code{M-x describe-mode} in both tree and member
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
476 buffers.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
477
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
478 @menu
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
479 * Source Display:: Viewing and finding a class declaration
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
480 * Member Display:: Showing members, switching to member buffers
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
481 * Go to Class:: Finding a class
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
482 * Quitting:: Discarding and burying the tree buffer
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
483 * File Name Display:: Showing file names in the tree
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
484 * Expanding and Collapsing:: Expanding and collapsing branches
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
485 * Tree Indentation:: Changing the tree indentation
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
486 * Killing Classes:: Removing class from the tree
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
487 * Saving a Tree:: Saving a modified tree
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
488 * Statistics:: Displaying class tree statistics
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
489 * Marking Classes:: Marking and unmarking classes
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
490 @end menu
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
491
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
492
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
493
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
494 @node Source Display, Member Display, Tree Buffers, Tree Buffers
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
495 @comment node-name, next, previous, up
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
496 @section Viewing and Finding Class Declarations
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
497 @cindex viewing, class
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
498 @cindex finding a class
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
499 @cindex class declaration
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
500
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
501 You can view or find a class declaration when the cursor is on a class
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
502 name.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
503
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
504 @table @kbd
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
505 @item SPC
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
506 This command views the class declaration if the database
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
507 contains informations about it. If you don't parse the entire source
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
508 you are working on, some classes will only be known to exist but the
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
509 location of their declarations and definitions will not be known.@refill
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
510
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
511 @item RET
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
512 Works like @kbd{SPC}, except that it finds the class
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
513 declaration rather than viewing it, so that it is ready for
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
514 editing.@refill
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
515 @end table
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
516
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
517 The same functionality is available from the menu opened with
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
518 @kbd{mouse-3} on the class name.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
519
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
520
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
521
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
522
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
523 @node Member Display, Go to Class, Source Display, Tree Buffers
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
524 @comment node-name, next, previous, up
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
525 @section Displaying Members
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
526 @cindex @samp{*Members*} buffer
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
527 @cindex @samp{*Globals*}
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
528 @cindex freezing a member buffer
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
529 @cindex member lists, in tree buffers
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
530
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
531 Ebrowse distinguishes six different kinds of members, each of
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
532 which is displayed as a separate @dfn{member list}: instance variables,
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
533 instance functions, static variables, static functions, friend
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
534 functions, and types.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
535
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
536 Each of these lists can be displayed in a member buffer with a command
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
537 starting with @kbd{L} when the cursor is on a class name. By default,
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
538 there is only one member buffer named @dfn{*Members*} that is reused
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
539 each time you display a member list---this has proven to be more
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
540 practical than to clutter up the buffer list with dozens of member
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
541 buffers.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
542
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
543 If you want to display more than one member list at a time you can
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
544 @dfn{freeze} its member buffer. Freezing a member buffer prevents it
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
545 from being overwritten the next time you display a member list. You can
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
546 toggle this buffer status at any time.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
547
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
548 Every member list display command in the tree buffer can be used with a
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
549 prefix argument (@kbd{C-u}). Without a prefix argument, the command will
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
550 pop to a member buffer displaying the member list. With prefix argument,
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
551 the member buffer will additionally be @dfn{frozen}.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
552
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
553 @table @kbd
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
554 @cindex instance member variables, list
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
555 @item L v
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
556 This command displays the list of instance member variables.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
557
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
558 @cindex static variables, list
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
559 @item L V
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
560 Display the list of static variables.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
561
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
562 @cindex friend functions, list
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
563 @item L d
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
564 Display the list of friend functions. This list is used for defines if
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
565 you are viewing the class @samp{*Globals*} which is a place holder for
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
566 global symbols.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
567
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
568 @cindex member functions, list
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
569 @item L f
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
570 Display the list of member functions.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
571
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
572 @cindex static member functions, list
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
573 @item L F
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
574 Display the list of static member functions.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
575
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
576 @cindex types, list
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
577 @item L t
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
578 Display a list of types.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
579 @end table
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
580
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
581 These lists are also available from the class' context menu invoked with
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
582 @kbd{mouse-3} on the class name.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
583
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
584
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
585
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
586
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
587 @node Go to Class, Quitting, Member Display, Tree Buffers
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
588 @comment node-name, next, previous, up
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
589 @section Finding a Class
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
590 @cindex locate class
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
591 @cindex expanding branches
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
592 @cindex class location
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
593
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
594 @table @kbd
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
595 @cindex search for class
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
596 @item /
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
597 This command reads a class name from the minibuffer with completion and
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
598 positions the cursor on the class in the class tree.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
599
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
600 If the branch of the class tree containing the class searched for is
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
601 currently collapsed, the class itself and all its base classes are
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
602 recursively made visible. (See also @ref{Expanding and
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
603 Collapsing}.)@refill
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
604
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
605 This function is also available from the tree buffer's context menu.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
606
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
607 @item n
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
608 Repeat the last search done with @kbd{/}. Each tree buffer has its own
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
609 local copy of the regular expression last searched in it.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
610 @end table
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
611
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
612
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
613
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
614
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
615 @node Quitting, File Name Display, Go to Class, Tree Buffers
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
616 @comment node-name, next, previous, up
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
617 @section Burying a Tree Buffer
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
618 @cindex burying tree buffer
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
619
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
620 @table @kbd
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
621 @item q
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
622 Is a synonym for @kbd{M-x bury-buffer}.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
623 @end table
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
624
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
625
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
626
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
627
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
628 @node File Name Display, Expanding and Collapsing, Quitting, Tree Buffers
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
629 @comment node-name, next, previous, up
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
630 @section Displaying File Names
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
631
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
632 @table @kbd
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
633 @cindex file names in tree buffers
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
634 @item T f
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
635 This command toggles the display of file names in a tree buffer. If
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
636 file name display is switched on, the names of the files containing the
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
637 class declaration are shown to the right of the class names. If the
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
638 file is not known, the string @samp{unknown} is displayed.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
639
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
640 This command is also provided in the tree buffer's context menu.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
641
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
642 @item s
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
643 Display file names for the current line, or for the number of lines
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
644 given by a prefix argument.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
645 @end table
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
646
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
647 Here is an example of a tree buffer with file names displayed.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
648
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
649 @example
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
650 | Collection (unknown)
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
651 | IndexedCollection (indexedcltn.h)
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
652 | Array (array.h)
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
653 | FixedArray (fixedarray.h)
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
654 | Set (set.h)
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
655 | Dictionary (dict.h)
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
656 @end example
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
657
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
658
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
659
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
660
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
661 @node Expanding and Collapsing, Tree Indentation, File Name Display, Tree Buffers
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
662 @comment node-name, next, previous, up
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
663 @section Expanding and Collapsing a Tree
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
664 @cindex expand tree branch
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
665 @cindex collapse tree branch
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
666 @cindex branches of class tree
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
667 @cindex class tree, collapse or expand
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
668
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
669 You can expand and collapse parts of a tree to reduce the complexity of
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
670 large class hierarchies. Expanding or collapsing branches of a tree has
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
671 no impact on the functionality of other commands, like @kbd{/}. (See
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
672 also @ref{Go to Class}.)@refill
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
673
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
674 Collapsed branches are indicated with an ellipsis following the class
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
675 name like in the example below.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
676
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
677 @example
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
678 | Collection
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
679 | IndexedCollection...
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
680 | Set
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
681 | Dictionary
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
682 @end example
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
683
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
684 @table @kbd
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
685 @item -
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
686 This command collapses the branch of the tree starting at the class the
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
687 cursor is on.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
688
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
689 @item +
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
690 This command expands the branch of the tree starting at the class the
30807
a788b278d7e6 Minor English and formatting changes.
Dave Love <fx@gnu.org>
parents: 29713
diff changeset
691 cursor is on. Both commands for collapsing and expanding branches are
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
692 also available from the class' object menu.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
693
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
694 @item *
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
695 This command expands all collapsed branches in the tree.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
696 @end table
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
697
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
698
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
699
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
700
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
701 @node Tree Indentation, Killing Classes, Expanding and Collapsing, Tree Buffers
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
702 @comment node-name, next, previous, up
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
703 @section Changing the Tree Indentation
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
704 @cindex tree indentation
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
705 @cindex indentation of the tree
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
706
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
707 @table @kbd
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
708 @item T w
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
709 This command reads a new indentation width from the minibuffer and
30807
a788b278d7e6 Minor English and formatting changes.
Dave Love <fx@gnu.org>
parents: 29713
diff changeset
710 redisplays the tree buffer with the new indentation It is also
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
711 available from the tree buffer's context menu.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
712 @end table
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
713
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
714
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
715
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
716
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
717 @node Killing Classes, Saving a Tree, Tree Indentation, Tree Buffers
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
718 @comment node-name, next, previous, up
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
719 @section Removing Classes from the Tree
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
720 @cindex killing classes
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
721 @cindex class, remove from tree
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
722
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
723 @table @kbd
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
724 @item C-k
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
725 This command removes the class the cursor is on and all its derived
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
726 classes from the tree. The user is asked for confirmation before the
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
727 deletion is actually performed.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
728 @end table
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
729
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
730
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
731
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
732
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
733 @node Saving a Tree, Statistics, Killing Classes, Tree Buffers
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
734 @comment node-name, next, previous, up
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
735 @comment node-name, next, previous, up
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
736 @section Saving a Tree
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
737 @cindex save tree to a file
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
738 @cindex tree, save to a file
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
739 @cindex class tree, save to a file
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
740
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
741 @table @kbd
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
742 @item C-x C-s
30807
a788b278d7e6 Minor English and formatting changes.
Dave Love <fx@gnu.org>
parents: 29713
diff changeset
743 This command writes a class tree to the file from which it was read.
a788b278d7e6 Minor English and formatting changes.
Dave Love <fx@gnu.org>
parents: 29713
diff changeset
744 This is useful after classes have been deleted from a tree.
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
745
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
746 @item C-x C-w
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
747 Writes the tree to a file whose name is read from the minibuffer.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
748 @end table
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
749
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
750
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
751
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
752
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
753 @node Statistics, Marking Classes, Saving a Tree, Tree Buffers
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
754 @comment node-name, next, previous, up
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
755 @cindex statistics for a tree
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
756 @cindex tree statistics
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
757 @cindex class statistics
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
758
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
759 @table @kbd
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
760 @item x
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
761 Display statistics for the tree, like number of classes in it, number of
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
762 member functions, etc. This command can also be found in the buffer's
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
763 context menu.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
764 @end table
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
765
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
766
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
767
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
768
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
769 @node Marking Classes, , Statistics, Tree Buffers
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
770 @comment node-name, next, previous, up
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
771 @cindex marking classes
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
772 @cindex operations on marked classes
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
773
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
774 Classes can be marked for operations similar to the standard Emacs
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
775 commands @kbd{M-x tags-search} and @kbd{M-x tags-query-replace} (see
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
776 also @xref{Tags-like Functions}.)@refill
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
777
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
778 @table @kbd
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
779 @cindex toggle mark
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
780 @item M t
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
781 Toggle the mark of the line point is in or for as many lines as given by
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
782 a prefix command. This command can also be found in the class' context
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
783 menu.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
784
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
785 @cindex unmark all
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
786 @item M a
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
787 Unmark all classes. With prefix argument @kbd{C-u}, mark all classes in
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
788 the tree. Since this command operates on the whole buffer, it can also be
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
789 found in the buffer's object menu.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
790 @end table
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
791
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
792 Marked classes are displayed with an @code{>} in column one of the tree
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
793 display, like in the following example
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
794
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
795 @example
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
796 |> Collection
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
797 | IndexedCollection...
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
798 |> Set
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
799 | Dictionary
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
800 @end example
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
801
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
802
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
803
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
804
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
805 @c ****************************************************************
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
806 @c ***
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
807 @c *** MEMBER BUFFERS
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
808 @c ***
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
809 @c ****************************************************************
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
810
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
811 @node Member Buffers, Tags-like Functions, Tree Buffers, Top
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
812 @comment node-name, next, previous, up
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
813 @chapter Member Buffers
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
814 @cindex members
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
815 @cindex member buffer mode
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
816
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
817 @cindex class members, types
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
818 @cindex types of class members
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
819 @dfn{Member buffers} are used to operate on lists of members of a class.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
820 Ebrowse distinguishes six kinds of lists:
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
821
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
822 @itemize @bullet
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
823 @item
30807
a788b278d7e6 Minor English and formatting changes.
Dave Love <fx@gnu.org>
parents: 29713
diff changeset
824 Instance variables (normal member variables);
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
825 @item
30807
a788b278d7e6 Minor English and formatting changes.
Dave Love <fx@gnu.org>
parents: 29713
diff changeset
826 Instance functions (normal member functions);
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
827 @item
30807
a788b278d7e6 Minor English and formatting changes.
Dave Love <fx@gnu.org>
parents: 29713
diff changeset
828 Static variables;
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
829 @item
30807
a788b278d7e6 Minor English and formatting changes.
Dave Love <fx@gnu.org>
parents: 29713
diff changeset
830 Static member functions;
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
831 @item
30807
a788b278d7e6 Minor English and formatting changes.
Dave Love <fx@gnu.org>
parents: 29713
diff changeset
832 Friend functions;
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
833 @item
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
834 Types (@code{enum}s and @code{typedef}s defined with class scope.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
835 Nested classes will be shown in the class tree like normal classes.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
836 @end itemize
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
837
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
838 Like tree buffers, member buffers install their own major mode. Also
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
839 like in tree buffers, menus are provided for certain areas in the
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
840 buffer: members, classes, and the buffer itself.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
841
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
842 @menu
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
843 * Switching Member Lists:: Choosing which members to display
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
844 * Finding/Viewing:: Modifying source code
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
845 * Inherited Members:: Display of Inherited Members
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
846 * Searching Members:: Finding members in member buffer
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
847 * Switching to Tree:: Going back to the tree buffer
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
848 * Filters:: Selective member display
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
849 * Attributes:: Display of @code{virtual} etc.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
850 * Long and Short Display:: Comprehensive and verbose display
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
851 * Regexp Display:: Showing matching regular expressions
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
852 * Switching Classes:: Displaying another class
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
853 * Killing/Burying:: Getting rid of the member buffer
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
854 * Column Width:: Display style
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
855 * Redisplay:: Redrawing the member list
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
856 * Getting Help:: How to get help for key bindings
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
857 @end menu
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
858
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
859
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
860
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
861
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
862 @node Switching Member Lists, Finding/Viewing, Member Buffers, Member Buffers
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
863 @comment node-name, next, previous, up
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
864 @section Switching Member Lists
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
865 @cindex member lists, in member buffers
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
866 @cindex static members
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
867 @cindex friends
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
868 @cindex types
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
869 @cindex defines
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
870
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
871 @table @kbd
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
872 @cindex next member list
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
873 @item L n
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
874 This command switches the member buffer display to the next member list.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
875
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
876 @cindex previous member list
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
877 @item L p
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
878 This command switches the member buffer display to the previous member
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
879 list.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
880
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
881 @item L f
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
882 Switch to the list of member functions.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
883
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
884 @cindex static
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
885 @item L F
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
886 Switch to the list of static member functions.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
887
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
888 @item L v
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
889 Switch to the list of member variables.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
890
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
891 @item L V
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
892 Switch to the list of static member variables.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
893
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
894 @item L d
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
895 Switch to the list of friends or defines.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
896
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
897 @item L t
30807
a788b278d7e6 Minor English and formatting changes.
Dave Love <fx@gnu.org>
parents: 29713
diff changeset
898 Switch to the list of types.
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
899 @end table
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
900
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
901 Both commands cycle through the member list.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
902
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
903 Most of the commands are also available from the member buffer's
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
904 context menu.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
905
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
906
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
907
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
908
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
909 @node Finding/Viewing, Inherited Members, Switching Member Lists, Member Buffers
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
910 @comment node-name, next, previous, up
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
911 @section Finding and Viewing Member Source
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
912 @cindex finding members, in member buffers
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
913 @cindex viewing members, in member buffers
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
914 @cindex member definitions, in member buffers
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
915 @cindex member declarations, in member buffers
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
916 @cindex definition of a member, in member buffers
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
917 @cindex declaration of a member, in member buffers
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
918
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
919 @table @kbd
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
920 @item RET
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
921 This command finds the definition of the member the cursor is on.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
922 Finding involves roughly the same as the standard Emacs tags facility
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
923 does---loading the file and searching for a regular expression matching
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
924 the member.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
925
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
926 @item f
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
927 This command finds the declaration of the member the cursor is on.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
928
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
929 @item SPC
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
930 This is the same command as @kbd{RET}, but views the member definition
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
931 instead of finding the member's source file.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
932
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
933 @item v
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
934 This is the same command as @kbd{f}, but views the member's declaration
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
935 instead of finding the file the declaration is in.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
936 @end table
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
937
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
938 You can install a hook function to perform actions after a member or
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
939 class declaration or definition has been found, or when it is not found.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
940
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
941 All the commands described above can also be found in the context menu
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
942 displayed when clicking @kbd{mouse-2} on a member name.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
943
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
944
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
945
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
946
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
947 @node Inherited Members, Searching Members, Finding/Viewing, Member Buffers
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
948 @comment node-name, next, previous, up
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
949 @section Display of Inherited Members
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
950 @cindex superclasses, members
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
951 @cindex base classes, members
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
952 @cindex inherited members
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
953
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
954 @table @kbd
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
955 @item D b
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
956 This command toggles the display of inherited members in the member
30807
a788b278d7e6 Minor English and formatting changes.
Dave Love <fx@gnu.org>
parents: 29713
diff changeset
957 buffer. This is also in the buffer's context menu.
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
958 @end table
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
959
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
960
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
961
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
962
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
963 @node Searching Members, Switching to Tree, Inherited Members, Member Buffers
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
964 @comment node-name, next, previous, up
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
965 @section Searching Members
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
966 @cindex searching members
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
967
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
968 @table @kbd
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
969 @item G v
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
970 Position the cursor on a member whose name is read from the minibuffer;
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
971 only members shown in the current member buffer appear in the completion
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
972 list.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
973
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
974 @item G m
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
975 Like the above command, but all members for the current class appear in
30807
a788b278d7e6 Minor English and formatting changes.
Dave Love <fx@gnu.org>
parents: 29713
diff changeset
976 the completion list. If necessary, the current member list is switched
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
977 to the one containing the member.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
978
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
979 With a prefix argument (@kbd{C-u}), all members in the class tree,
30807
a788b278d7e6 Minor English and formatting changes.
Dave Love <fx@gnu.org>
parents: 29713
diff changeset
980 i.e.@: all members the browser knows about appear in the completion
a788b278d7e6 Minor English and formatting changes.
Dave Love <fx@gnu.org>
parents: 29713
diff changeset
981 list. The member display will be switched to the class and member list
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
982 containing the member.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
983
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
984 @item G n
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
985 Repeat the last member search.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
986 @end table
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
987
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
988 Look into the buffer's context menu for a convenient way to do this with
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
989 a mouse.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
990
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
991
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
992
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
993 @node Switching to Tree, Filters, Searching Members, Member Buffers
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
994 @comment node-name, next, previous, up
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
995 @section Switching to Tree Buffer
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
996 @cindex tree buffer, switch to
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
997 @cindex buffer switching
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
998 @cindex switching buffers
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
999
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1000 @table @kbd
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1001 @item TAB
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1002 Pop up the tree buffer to which the member buffer belongs.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1003
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1004 @item t
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1005 Do the same as @kbd{TAB} but also position the cursor on the class
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1006 displayed in the member buffer.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1007 @end table
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1008
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1009
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1010
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1011
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1012 @node Filters, Attributes, Switching to Tree, Member Buffers
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1013 @comment node-name, next, previous, up
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1014 @section Filters
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1015 @cindex filters
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1016
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1017 @table @kbd
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
1018 @cindex @code{public} members
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1019 @item F a u
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1020 This command toggles the display of @code{public} members. The
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1021 @samp{a} stands for `access'.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1022
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
1023 @cindex @code{protected} members
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1024 @item F a o
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1025 This command toggles the display of @code{protected} members.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1026
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
1027 @cindex @code{private} members
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1028 @item F a i
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1029 This command toggles the display of @code{private} members.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1030
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
1031 @cindex @code{virtual} members
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1032 @item F v
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1033 This command toggles the display of @code{virtual} members.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1034
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
1035 @cindex @code{inline} members
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1036 @item F i
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1037 This command toggles the display of @code{inline} members.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1038
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
1039 @cindex @code{const} members
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1040 @item F c
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1041 This command toggles the display of @code{const} members.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1042
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
1043 @cindex pure virtual members
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1044 @item F p
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1045 This command toggles the display of pure virtual members.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1046
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
1047 @cindex remove filters
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1048 @item F r
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1049 This command removes all filters.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1050 @end table
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1051
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1052 These commands are also found in the buffer's context menu.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1053
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1054
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1055
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1056
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1057 @node Attributes, Long and Short Display, Filters, Member Buffers
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1058 @comment node-name, next, previous, up
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1059 @section Displaying Member Attributes
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1060 @cindex attributes
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
1061 @cindex member attribute display
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1062
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1063 @table @kbd
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1064 @item D a
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1065 Toggle the display of member attributes (default is on).
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1066
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1067 The nine member attributes Ebrowse knows about are are displayed
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1068 as a list a single-characters flags enclosed in angle brackets in front
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1069 the of the member's name. A @samp{-} at a given position means that
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1070 the attribute is false. The list of attributes from left to right is
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1071
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1072 @table @samp
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
1073 @cindex @code{template} attribute
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1074 @item T
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1075 The member is a template.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1076
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
1077 @cindex @code{extern "C"} attribute
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1078 @item C
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1079 The member is declared @code{extern "C"}.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1080
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
1081 @cindex @code{virtual} attribute
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1082 @item v
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1083 Means the member is declared @code{virtual}.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1084
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
1085 @cindex @code{inline}
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1086 @item i
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1087 The member is declared @code{inline}.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1088
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
1089 @cindex @code{const} attribute
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1090 @item c
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1091 The member is @code{const}.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1092
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
1093 @cindex pure virtual function attribute
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1094 @item 0
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1095 The member is a pure virtual function.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1096
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
1097 @cindex @code{mutable} attribute
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1098 @item m
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1099 The member is declared @code{mutable}.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1100
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
1101 @cindex @code{explicit} attribute
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1102 @item e
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1103 The member is declared @code{explicit}.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1104
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1105 @item t
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1106 The member is a function with a throw list.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1107 @end table
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1108 @end table
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1109
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1110 This command is also in the buffer's context menu.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1111
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1112
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1113
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1114 @node Long and Short Display, Regexp Display, Attributes, Member Buffers
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1115 @comment node-name, next, previous, up
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1116 @section Long and Short Member Display
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1117 @cindex display form
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1118 @cindex long display
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1119 @cindex short display
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1120
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1121 @table @kbd
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1122 @item D l
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1123 This command toggles the member buffer between short and long display
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1124 form. The short display form displays member names, only:
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1125
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1126 @example
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1127 | isEmpty contains hasMember create
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1128 | storeSize hash isEqual restoreGuts
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1129 | saveGuts
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1130 @end example
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1131
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1132 The long display shows one member per line with member name and regular
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1133 expressions matching the member (if known):
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1134
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1135 @example
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1136 | isEmpty Bool isEmpty () const...
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1137 | hash unsigned hash () const...
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1138 | isEqual int isEqual (...
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1139 @end example
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1140
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1141 Regular expressions will only be displayed when the Lisp database has
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
1142 not been produced with the @command{ebrowse} option @samp{--no-regexps}.
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
1143 @xref{Matching, --no-regexps, Regular Expressions}.
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1144 @end table
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1145
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1146
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1147
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1148
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1149 @node Regexp Display, Switching Classes, Long and Short Display, Member Buffers
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1150 @comment node-name, next, previous, up
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1151 @section Display of Regular Expressions
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1152 @cindex regular expression display
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1153
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1154 @table @kbd
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1155 @item D r
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1156 This command toggles the long display form from displaying the regular
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1157 expressions matching the member declarations to those expressions
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1158 matching member definitions.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1159 @end table
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1160
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1161 Regular expressions will only be displayed when the Lisp database has
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
1162 not been produced with the @command{ebrowse} option @samp{--no-regexps},
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
1163 see @ref{Matching, --no-regexps, Regular Expressions}.
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1164
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1165
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1166
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1167
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1168 @node Switching Classes, Killing/Burying, Regexp Display, Member Buffers
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1169 @comment node-name, next, previous, up
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1170 @section Displaying Another Class
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
1171 @cindex base class, display
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
1172 @cindex derived class, display
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
1173 @cindex superclass, display
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
1174 @cindex subclass, display
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1175 @cindex class display
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1176
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1177 @table @kbd
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1178 @item C c
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1179 This command lets you switch the member buffer to another class. It
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1180 reads the name of the new class from the minibuffer with completion.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1181
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1182 @item C b
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1183 This is the same command as @kbd{C c} but restricts the classes shown in
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1184 the completion list to immediate base classes, only. If only one base
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1185 class exists, this one is immediately shown in the minibuffer.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1186
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1187 @item C d
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1188 Same as @kbd{C b}, but for derived classes.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1189
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1190 @item C p
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1191 Switch to the previous class in the class hierarchy on the same level as
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1192 the class currently displayed.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1193
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1194 @item C n
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1195 Switch to the next sibling of the class in the class tree.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1196 @end table
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1197
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1198
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1199
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1200
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1201 @node Killing/Burying, Column Width, Switching Classes, Member Buffers
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1202 @comment node-name, next, previous, up
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1203 @section Burying a Member Buffer
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1204 @cindex burying member buffers
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1205
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1206 @table @kbd
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1207 @item q
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1208 This command is a synonym for @kbd{M-x bury-buffer}.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1209 @end table
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1210
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1211
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1212
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1213
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1214 @node Column Width, Redisplay, Killing/Burying, Member Buffers
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1215 @comment node-name, next, previous, up
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1216 @section Setting the Column Width
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1217 @cindex column width
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1218 @cindex member indentation
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1219 @cindex indentation, member
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1220
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1221 @table @kbd
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1222 @item D w
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1223 This command sets the column width depending on the display form used
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1224 (long or short display).
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1225 @end table
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1226
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1227
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1228
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1229
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1230 @node Redisplay, Getting Help, Column Width, Member Buffers
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1231 @comment node-name, next, previous, up
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1232 @section Forced Redisplay
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
1233 @cindex redisplay of member buffers
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1234
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1235 @table @kbd
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1236 @item C-l
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1237 This command forces a redisplay of the member buffer. If the width
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1238 of the window displaying the member buffer is changed this command
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1239 redraws the member list with the appropriate column widths and number of
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1240 columns.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1241 @end table
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1242
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1243
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1244
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1245
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1246 @node Getting Help, , Redisplay, Member Buffers
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1247 @comment node-name, next, previous, up
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1248 @cindex help
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1249
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1250 @table @kbd
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1251 @item ?
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1252 This key is bound to @code{describe-mode}.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1253 @end table
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1254
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1255
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1256
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1257
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1258 @comment **************************************************************
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1259 @comment *** TAGS LIKE FUNCTIONS
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1260 @comment **************************************************************
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1261
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1262 @node Tags-like Functions, Concept Index, Member Buffers, Top
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1263 @comment node-name, next, previous, up
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1264 @chapter Tags-like Functions
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1265
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1266 Ebrowse provides tags functions similar to those of the standard
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1267 Emacs Tags facility, but better suited to the needs of C++ programmers.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1268
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1269 @menu
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1270 * Finding and Viewing:: Going to a member declaration/definition
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1271 * Position Stack:: Moving to previous locations
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1272 * Search & Replace:: Searching and replacing over class tree files
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1273 * Members in Files:: Listing all members in a given file
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1274 * Apropos:: Listing members matching a regular expression
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1275 * Symbol Completion:: Completing names while editing
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1276 * Member Buffer Display:: Quickly display a member buffer for some
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1277 identifier
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1278 @end menu
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1279
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1280
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1281
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1282 @node Finding and Viewing, Position Stack, Tags-like Functions, Tags-like Functions
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1283 @comment node-name, next, previous, up
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1284 @section Finding and Viewing Members
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
1285 @cindex finding class member, in C++ source
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
1286 @cindex viewing class member, in C++ source
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1287 @cindex tags
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
1288 @cindex member definition, finding, in C++ source
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
1289 @cindex member declaration, finding, in C++ source
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
1290
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
1291 The functions in this section are similar to those described in
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
1292 @ref{Source Display}, and also in @ref{Finding/Viewing}, except that
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
1293 they work in a C++ source buffer, not in member and tree buffers created
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
1294 by Ebrowse.
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1295
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1296 @table @kbd
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1297 @item C-c b f
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1298 Find the definition of the member around point. If you invoke this
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1299 function with a prefix argument, the declaration is searched.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1300
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1301 If more than one class contains a member with the given name you can
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1302 select the class with completion. If there is a scope declaration in
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1303 front of the member name, this class name is used as initial input for
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1304 the completion.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1305
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1306 @item C-c b F
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
1307 Find the declaration of the member around point.
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1308
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1309 @item C-c b v
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1310 View the definition of the member around point.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1311
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1312 @item C-c b V
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1313 View the declaration of the member around point.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1314
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1315 @item C-c b 4 f
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1316 Find a member's definition in another window.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1317
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1318 @item C-c b 4 F
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1319 Find a member's declaration in another window.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1320
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1321 @item C-c b 4 v
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1322 View a member's definition in another window.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1323
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1324 @item C-c b 4 V
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1325 View a member's declaration in another window.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1326
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1327 @item C-c b 5 f
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1328 Find a member's definition in another frame.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1329
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1330 @item C-c b 5 F
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1331 Find a member's declaration in another frame.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1332
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1333 @item C-c b 5 v
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1334 View a member's definition in another frame.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1335
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1336 @item C-c b 5 V
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1337 View a member's declaration in another frame.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1338 @end table
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1339
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1340
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1341
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1342 @node Position Stack, Search & Replace, Finding and Viewing, Tags-like Functions
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1343 @comment node-name, next, previous, up
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1344 @section The Position Stack
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1345 @cindex position stack
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1346
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1347 When jumping to a member declaration or definition with one of
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1348 Ebrowse's commands, the position from where you performed the
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1349 jump and the position where you jumped to are recorded in a
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1350 @dfn{position stack}. There are several ways in which you can quickly
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1351 move to positions in the stack:@refill
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1352
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1353 @table @kbd
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
1354 @cindex return to original position
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1355 @item C-c b -
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1356 This command sets point to the previous position in the position stack.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1357 Directly after you performed a jump, this will put you back to the
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1358 position where you came from.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1359
30807
a788b278d7e6 Minor English and formatting changes.
Dave Love <fx@gnu.org>
parents: 29713
diff changeset
1360 The stack is not popped, i.e.@: you can always switch back and forth
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1361 between positions in the stack. To avoid letting the stack grow to
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1362 infinite size there is a maximum number of positions defined. When this
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1363 number is reached, older positions are discarded when new positions are
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1364 pushed on the stack.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1365
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1366 @item C-c b +
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1367 This command moves forward in the position stack, setting point to
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1368 the next position stored in the position stack.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1369
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1370 @item C-c b p
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1371 Displays an electric buffer showing all positions saved in the stack.
30807
a788b278d7e6 Minor English and formatting changes.
Dave Love <fx@gnu.org>
parents: 29713
diff changeset
1372 You can select a position by pressing @kbd{SPC} in a line. You can
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1373 view a position with @kbd{v}.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1374 @end table
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1375
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1376
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1377
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1378
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
1379 @node Search & Replace, Members in Files, Position Stack, Tags-like Functions
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1380 @comment node-name, next, previous, up
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1381 @section Searching and Replacing
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
1382 @cindex searching multiple C++ files
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
1383 @cindex replacing in multiple C++ files
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1384 @cindex restart tags-operation
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1385
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1386 Ebrowse allows you to perform operations on all or a subset of the files
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1387 mentioned in a class tree. When you invoke one of the following
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1388 functions and more than one class tree is loaded, you must choose a
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1389 class tree to use from an electric tree menu. If the selected tree
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1390 contains marked classes, the following commands operate on the files
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1391 mentioned in the marked classes only. Otherwise all files in the class
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1392 tree are used.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1393
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1394 @table @kbd
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1395 @item C-c b s
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1396 This function performs a regular expression search in the chosen set of
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1397 files.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1398
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1399 @item C-c b u
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1400 This command performs a search for calls of a given member which is
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1401 selected in the usual way with completion.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1402
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1403 @item C-c b %
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1404 Perform a query replace over the set of files.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1405
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1406 @item C-c b ,
30807
a788b278d7e6 Minor English and formatting changes.
Dave Love <fx@gnu.org>
parents: 29713
diff changeset
1407 All three operations above stop when finding a match. You can restart
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1408 the operation with this command.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1409
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1410 @item C-c b n
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1411 This restarts the last tags operation with the next file in the list.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1412 @end table
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1413
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1414
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1415
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1416
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1417 @node Members in Files, Apropos, Search & Replace, Tags-like Functions
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1418 @comment node-name, next, previous, up
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1419 @section Members in Files
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1420 @cindex files
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
1421 @cindex members in file, listing
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
1422 @cindex list class members in a file
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1423 @cindex file, members
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1424
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1425 The command @kbd{C-c b l}, lists all members in a given file. The file
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1426 name is read from the minibuffer with completion.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1427
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1428
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1429
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1430
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1431 @node Apropos, Symbol Completion, Members in Files, Tags-like Functions
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1432 @comment node-name, next, previous, up
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1433 @section Member Apropos
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
1434 @cindex apropos on class members
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1435 @cindex members, matching regexp
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1436
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1437 The command @kbd{C-c b a} can be used to display all members matching a
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1438 given regular expression. This command can be very useful if you
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1439 remember only part of a member name, and not its beginning.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1440
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1441 A special buffer is popped up containing all identifiers matching the
30807
a788b278d7e6 Minor English and formatting changes.
Dave Love <fx@gnu.org>
parents: 29713
diff changeset
1442 regular expression, and what kind of symbol it is (e.g.@: a member
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1443 function, or a type). You can then switch to this buffer, and use the
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1444 command @kbd{C-c b f}, for example, to jump to a specific member.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1445
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1446
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1447
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1448
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1449 @node Symbol Completion, Member Buffer Display, Apropos, Tags-like Functions
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1450 @comment node-name, next, previous, up
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1451 @section Symbol Completion
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1452 @cindex completion
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1453 @cindex symbol completion
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1454
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1455 The command @kbd{C-c b TAB} completes the symbol in front of point.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1456
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1457
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1458
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1459
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1460 @node Member Buffer Display, , Symbol Completion, Tags-like Functions
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1461 @section Quick Member Display
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28867
diff changeset
1462 @cindex member buffer, for member at point
28867
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1463
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1464 You can quickly display a member buffer containing the member the cursor
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1465 in on with the command @kbd{C-c b m}.
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1466
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1467
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1468 @node Concept Index, , Tags-like Functions, Top
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1469 @unnumbered Concept Index
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1470 @printindex cp
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1471
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1472 @contents
48daf6eb57cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1473 @bye