3
<title>ECB - the Emacs Code Browser</title>
4
<meta http-equiv="Content-Type" content="text/html">
5
<meta name=description content="ECB - the Emacs Code Browser">
6
<meta name=generator content="makeinfo 4.2">
7
<link href="http://www.gnu.org/software/texinfo/" rel=generator-home>
10
<h1>ECB - the Emacs Code Browser</h1>
12
Node:<a name="Top">Top</a>,
13
Next:<a rel=next accesskey=n href="Install-and-first-steps.html#Install%20and%20first%20steps">Install and first steps</a>,
14
Previous:<a rel=previous accesskey=p href="../ecb.html#dir">(dir)</a>,
15
Up:<a rel=up accesskey=u href="../ecb.html#dir">(dir)</a>
18
<p>This is the user manual for ECB version 2.21.
20
<p>ECB stands for "Emacs Code Browser" and is a source-code-browser for
21
(X)Emacs. It is a global minor-mode which offers a
22
language-independent and complete IDE (Integrated Development
23
Environment) within one Emacs-frame. It displays a couple of windows
24
that can be used to browse directories, files and file-contents like
25
methods and variables. It supports source-code parsing for
26
semantic-supported languages like Java, C, C++, Elisp and Scheme as
27
well as for source-types supported "only" by imenu or etags (e.g.
28
perl, TeX, LaTeX etc.). In addition it offers (optional) a durable
29
"compile-window" at the bottom of the frame which is used to display
30
all help-, grep-, compile- and etc.-output. The rest of the frame is
31
called the "edit-area" which can be divided in several (no limit)
32
edit-windows which are used for editing of sources. Deleting some of
33
the edit-windows does neither destroy the compile-window nor the
36
<p><strong>Please note</strong>: Experienced ECB users find a complete
37
alphabetical list of all commands and user-options in <a href="Interactive-ECB-commands.html#Interactive%20ECB%20commands">Interactive ECB commands</a> and <a href="Customizable-options.html#Customizable%20options">Customizable options</a>.
39
<p>The latest version of ECB can always be found at
40
<a href="http://ecb.sourceforge.net">http://ecb.sourceforge.net</a>
42
<p>To send bug reports, or participate in discussions about ECB, use the
43
mailing list <a href="mailto:ecb-list@lists.sourceforge.net">ecb-list@lists.sourceforge.net</a> via
44
<a href="http://lists.sourceforge.net/lists/listinfo/ecb-list">http://lists.sourceforge.net/lists/listinfo/ecb-list</a>
47
<li><a accesskey=1 href="Install-and-first-steps.html#Install%20and%20first%20steps">Install and first steps</a>: Installing ECB and first steps
48
<li><a accesskey=2 href="Overview.html#Overview">Overview</a>: Introduce basic concepts
49
<li><a accesskey=3 href="Activation-and-Deactivation.html#Activation%20and%20Deactivation">Activation and Deactivation</a>: How to start and end ECB
50
<li><a accesskey=4 href="Usage-of-ECB.html#Usage%20of%20ECB">Usage of ECB</a>: How to use ECB
51
<li><a accesskey=5 href="Customizing.html#Customizing">Customizing</a>: How to customize ECB
52
<li><a accesskey=6 href="Submitting-problem-report.html#Submitting%20problem%20report">Submitting problem report</a>: What to do when problems occur
53
<li><a accesskey=7 href="Upgrading.html#Upgrading">Upgrading</a>: Upgrading and downloading packages
54
<li><a accesskey=8 href="Tips-and-tricks.html#Tips%20and%20tricks">Tips and tricks</a>: Useful hints and tips
55
<li><a accesskey=9 href="Elisp-programming.html#Elisp%20programming">Elisp programming</a>: Entry points for Elisp programmers
56
<li><a href="Conflicts-and-bugs.html#Conflicts%20and%20bugs">Conflicts and bugs</a>: Known Conflicts with other packages and bugs
57
<li><a href="FAQ.html#FAQ">FAQ</a>: Frequently asked questions
58
<li><a href="Command-Index.html#Command%20Index">Command Index</a>: Index for interactive commands
59
<li><a href="Option-Index.html#Option%20Index">Option Index</a>: Index for user options
60
<li><a href="Concept-Index.html#Concept%20Index">Concept Index</a>: Index for concepts and terms
62
<p>--- The Detailed Node Listing ---
64
<p>Installation and first steps of ECB
66
</p><li><a href="Installation.html#Installation">Installation</a>: Installation of ECB
67
<li><a href="Setting-up-Emacs.html#Setting%20up%20Emacs">Setting up Emacs</a>: How to set up Emacs for file parsing with ECB
68
<li><a href="First-steps.html#First%20steps">First steps</a>: First steps after activating ECB first time
70
<p>Installation of ECB
72
</p><li><a href="XEmacs-Installation.html#XEmacs%20Installation">XEmacs Installation</a>: Installation of ECB for XEmacs users
73
<li><a href="GNU-Emacs-Installation.html#GNU%20Emacs%20Installation">GNU Emacs Installation</a>: Installation of ECB for GNU Emacs users
75
<p>How to set up Emacs for file parsing with ECB
77
</p><li><a href="General-hints.html#General%20hints">General hints</a>: General hints for a correct setup
78
<li><a href="Setting-up-semantic.html#Setting%20up%20semantic">Setting up semantic</a>: How to setup semantic correctly
79
<li><a href="Non-semantic-files.html#Non-semantic%20files">Non-semantic files</a>: Setup for file types not supported by semantic
83
</p><li><a href="ECB-Directories-buffer.html#ECB%20Directories-buffer">ECB Directories-buffer</a>: Contents of the ECB Directories-buffer
84
<li><a href="ECB-Sources-buffer.html#ECB%20Sources-buffer">ECB Sources-buffer</a>: Contents of the ECB Sources/history-buffer
85
<li><a href="ECB-Methods-buffer.html#ECB%20Methods-buffer">ECB Methods-buffer</a>: Contents of the ECB Methods-buffer
87
<p>Activation and Deactivation
89
</p><li><a href="Standard-activation.html#Standard%20activation">Standard activation</a>: How to manually (de)activate ECB
90
<li><a href="Automatic-activation.html#Automatic%20activation">Automatic activation</a>: Automatically (de)activating ECB
94
</p><li><a href="Using-the-mouse.html#Using%20the%20mouse">Using the mouse</a>: Working with the mouse
95
<li><a href="Using-the-keyboard.html#Using%20the%20keyboard">Using the keyboard</a>: Working with the keyboard
96
<li><a href="The-edit-area.html#The%20edit-area">The edit-area</a>: How to use the edit-area
97
<li><a href="Temp--and-compile-buffers.html#Temp-%20and%20compile-buffers">Temp- and compile-buffers</a>: Displaying temp- and compilation-buffers
98
<li><a href="The-other-window.html#The%20other%20window">The other window</a>: How the ``other window'' is determined
99
<li><a href="The-Methods-buffer.html#The%20Methods%20buffer">The Methods buffer</a>: Using and customizing he Methods-buffer
100
<li><a href="The-ECB-layout.html#The%20ECB-layout">The ECB-layout</a>: Changing, customizing, redrawing, creating
101
<li><a href="Hiding-the-ECB-windows.html#Hiding%20the%20ECB%20windows">Hiding the ECB windows</a>: Hiding/Showing the ECB-windows
102
<li><a href="Maximizing-the-ECB-windows.html#Maximizing%20the%20ECB%20windows">Maximizing the ECB windows</a>: Maximizing the ECB-windows
103
<li><a href="Back-forward-navigation.html#Back%2fforward%20navigation">Back/forward navigation</a>: Back- and forward navigation like a browser
104
<li><a href="ECB-window-synchronizing.html#ECB-window%20synchronizing">ECB-window synchronizing</a>: Auto./manual synchronizing the ECB-windows
105
<li><a href="Interactive-ECB-commands.html#Interactive%20ECB%20commands">Interactive ECB commands</a>: All interactive user-commands of ECB
107
<p>Working with the keyboard in the ECB-windows
109
</p><li><a href="Navigation-Selection.html#Navigation%2fSelection">Navigation/Selection</a>: Keyboard navigation/selection in a tree-buffer
110
<li><a href="Incremental-search.html#Incremental%20search">Incremental search</a>: Find nodes as fast as possible
111
<li><a href="Personal-keybindings.html#Personal%20keybindings">Personal keybindings</a>: Adding personal keybindings to a tree-buffer
112
<li><a href="Using-popup-menus.html#Using%20popup-menus">Using popup-menus</a>: Using the popup-menus from keyboard.
114
<p>Using and customizing the ECB-Methods buffer
116
</p><li><a href="Visiting-tags.html#Visiting%20tags">Visiting tags</a>: Possible actions after visiting a tag
117
<li><a href="Expanding.html#Expanding">Expanding</a>: Explicit and automatic expanding
118
<li><a href="Customizing-the-display.html#Customizing%20the%20display">Customizing the display</a>: How to customize the Methods-buffer display
119
<li><a href="Rebuilding-the-Methods.html#Rebuilding%20the%20Methods">Rebuilding the Methods</a>: When to rebuild the Methods-buffer
121
<p>Changing, customizing, redrawing and creating layouts
123
</p><li><a href="Changing-the-ECB-layout.html#Changing%20the%20ECB-layout">Changing the ECB-layout</a>: How to change and customize the layout
124
<li><a href="Redrawing-the-ECB-layout.html#Redrawing%20the%20ECB-layout">Redrawing the ECB-layout</a>: How and when redrawing the layout
125
<li><a href="Changing-window-sizes.html#Changing%20window%20sizes">Changing window sizes</a>: Changing sizes of the ECB-windows
126
<li><a href="Fixing-window-sizes.html#Fixing%20window%20sizes">Fixing window sizes</a>: Fixing sizes of the ECB-windows
127
<li><a href="Creating-a-new-ECB-layout.html#Creating%20a%20new%20ECB-layout">Creating a new ECB-layout</a>: Interactively creating new layouts
131
</p><li><a href="General-aspects.html#General%20aspects">General aspects</a>: General aspects for customizing ECB
132
<li><a href="Most-important-options.html#Most%20important%20options">Most important options</a>: Which option you must know
133
<li><a href="Customizable-options.html#Customizable%20options">Customizable options</a>: All customizable options of ECB
135
<p>General aspects for customizing ECB
137
</p><li><a href="setq-or-customize.html#setq%20or%20customize">setq or customize</a>: Should i use setq or customize?
138
<li><a href="Site-wide-customizing.html#Site-wide%20customizing">Site-wide customizing</a>: Site-wide customizing of ECB
140
<p>All customizable options of ECB
142
</p><li><a href="ecb-general.html#ecb-general">ecb-general</a>: General customizing ECB
143
<li><a href="ecb-tree-buffer.html#ecb-tree-buffer">ecb-tree-buffer</a>: Customizing the general tree layout
144
<li><a href="ecb-directories.html#ecb-directories">ecb-directories</a>: Customizing the ECB-directories-tree
145
<li><a href="ecb-sources.html#ecb-sources">ecb-sources</a>: Customizing the ECB-sources-tree
146
<li><a href="ecb-methods.html#ecb-methods">ecb-methods</a>: Customizing the ECB-methods-tree
147
<li><a href="ecb-history.html#ecb-history">ecb-history</a>: Customizing the ECB-history-tree
148
<li><a href="ecb-layout.html#ecb-layout">ecb-layout</a>: Customizing the ECB-layout
149
<li><a href="ecb-compilation.html#ecb-compilation">ecb-compilation</a>: Customizing the compile-window
150
<li><a href="ecb-create-layout.html#ecb-create-layout">ecb-create-layout</a>: Customizing options for creating layouts
151
<li><a href="ecb-face-options.html#ecb-face-options">ecb-face-options</a>: Customizing options for faces
152
<li><a href="ecb-faces.html#ecb-faces">ecb-faces</a>: Customizing the faces
153
<li><a href="ecb-download.html#ecb-download">ecb-download</a>: Customizing how to download ECB
154
<li><a href="ecb-help.html#ecb-help">ecb-help</a>: Customizing the online help of ECB
155
<li><a href="ecb-eshell.html#ecb-eshell">ecb-eshell</a>: Customizing the eshell-integration
156
<li><a href="ecb-non-semantic.html#ecb-non-semantic">ecb-non-semantic</a>: Customizing parsing non-semantic sources
157
<li><a href="ecb-winman.html#ecb-winman">ecb-winman</a>: Customizing window-manager support
158
<li><a href="ecb-mode-line.html#ecb-mode-line">ecb-mode-line</a>: Customizing the tree-buffer-modelines
160
<p>Upgrading and downloading packages
162
</p><li><a href="Downloading-new-versions.html#Downloading%20new%20versions">Downloading new versions</a>: How to download newer versions of packages
163
<li><a href="Auto.-option-upgrading.html#Auto.%20option-upgrading">Auto. option-upgrading</a>: ECB can auto. upgrade your options
165
<p>Automatic upgrading of options
167
</p><li><a href="User-interface.html#User%20interface">User interface</a>: Options and commands you should know
168
<li><a href="Background-information.html#Background%20information">Background information</a>: Maybe some interesting informations
172
</p><li><a href="Changing-faces.html#Changing%20faces">Changing faces</a>: Changing faces in the ECB tree-buffers
173
<li><a href="Small-screens.html#Small%20screens">Small screens</a>: Working with small screens
174
<li><a href="Big-screens.html#Big%20screens">Big screens</a>: Working with big screens
175
<li><a href="Simulating-speedbar.html#Simulating%20speedbar">Simulating speedbar</a>: Simulating speedbar without an extra frame
176
<li><a href="Integrating-speedbar.html#Integrating%20speedbar">Integrating speedbar</a>: Integrating speedbar in the ECB-frame
177
<li><a href="Optimize-scrolling.html#Optimize%20scrolling">Optimize scrolling</a>: Optimize scrolling in the edit-window
178
<li><a href="Large-directories.html#Large%20directories">Large directories</a>: Working with large directories
179
<li><a href="Using-eshell.html#Using%20eshell">Using eshell</a>: Optimal using of eshell in ECB
180
<li><a href="Grepping-directories.html#Grepping%20directories">Grepping directories</a>: Grepping directories with ECB
181
<li><a href="Working-with-JDEE.html#Working%20with%20JDEE">Working with JDEE</a>: Working best with ECB and JDEE
182
<li><a href="Compile-window-on-demand.html#Compile-window%20on%20demand">Compile-window on demand</a>: Displaying the compile-window on demand
183
<li><a href="Non-semantic-sources.html#Non-semantic%20sources">Non-semantic sources</a>: Parsing and displaying non-semantic sources
184
<li><a href="Hide-show.html#Hide-show">Hide-show</a>: Using hide-show from the methods-buffer-menu
185
<li><a href="Window-managers-and-ECB.html#Window-managers%20and%20ECB">Window-managers and ECB</a>: Support of several Emacs-window-managers
186
<li><a href="Tree-buffer-styles.html#Tree-buffer%20styles">Tree-buffer styles</a>: Displaying the trees with different styles
187
<li><a href="Using-semanticdb.html#Using%20semanticdb">Using semanticdb</a>: Using semanticdb for going to external nodes
189
<p>Displaying the trees of the ECB-windows with different styles
191
</p><li><a href="Style-basics.html#Style%20basics">Style basics</a>: Basic knowledge about the styles
192
<li><a href="Ascii-based-styles.html#Ascii-based%20styles">Ascii-based styles</a>: How to customize the ascii-styles
193
<li><a href="Tree-buffers-with-images.html#Tree-buffers%20with%20images">Tree-buffers with images</a>: Which images are used for the tree
195
<p>Entry points for Elisp programmers
197
</p><li><a href="List-of-variables.html#List%20of%20variables">List of variables</a>: Which variables an Elisp-program can use
198
<li><a href="List-of-hooks.html#List%20of%20hooks">List of hooks</a>: All available hooks
199
<li><a href="tree-buffer.html#tree-buffer">tree-buffer</a>: Some words to the tree-buffer-library
200
<li><a href="Adviced-functions.html#Adviced%20functions">Adviced functions</a>: How to deal with the adviced functions
201
<li><a href="The-layout-engine.html#The%20layout-engine">The layout-engine</a>: Programming new layouts and special windows
203
<p>How to program new layouts and new special windows
205
</p><li><a href="Programming-a-new-layout.html#Programming%20a%20new%20layout">Programming a new layout</a>: How to program a new layout
206
<li><a href="Programming-special-windows.html#Programming%20special%20windows">Programming special windows</a>: Aspects of programming special windows
207
<li><a href="Possible-layout-outlines.html#Possible%20layout-outlines">Possible layout-outlines</a>: The wide range of possible layouts
208
<li><a href="The-layout-engine-API.html#The%20layout-engine%20API">The layout-engine API</a>: The complete layout-engine API
210
<p>Conflicts and bugs of ECB
212
</p><li><a href="Conflicts.html#Conflicts">Conflicts</a>: Conflicts with other packages
213
<li><a href="Bugs.html#Bugs">Bugs</a>: Known bugs