annotate man/ebrowse.texi @ 29661:77d760375c60

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