[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
This chapter describes how to customize ECB for your personal taste. The first chapter gives an overview of the most important options and the second one lists all options of ECB.
5.1 The most important options of ECB Which option you must know 5.2 All customizable options of ECB
ATTENTION: The best way you customize all the options of ECB
is via the customize-feature of (X)Emacs, i.e. means calling the
commands customize-option
or customize-group
etc. This
is also the strongly recommended way!
But of course you can also use setq
or some elisp-code to
change the values of many but not all of the options. The values of
the following options MUST NOT be changed via setq
or
elisp-code but only with the customize-feature!
ecb-source-path
ecb-tree-RET-selects-edit-window
ecb-font-lock-tokens
ecb-bucket-token-display
ecb-token-display-function
ecb-type-token-display
ecb-show-tokens
ecb-exclude-parents-regexp
ecb-highlight-token-with-point-delay
ecb-window-sync-delay
ecb-show-node-info-in-minibuffer
ecb-key-map
ecb-layout-nr
ecb-compile-window-height
ecb-compile-window-temporally-enlarge
ecb-windows-width
ecb-windows-height
ecb-advice-window-functions
ecb-layout-window-sizes
ecb-mode-line-prefixes
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
Here are the most important options (it is recommended to check at least the following options before working with ECB):
ecb-source-path
ecb-show-help-format
ecb-auto-activate
ecb-major-modes-activate
ecb-major-modes-deactivate
ecb-key-map
ecb-new-ecb-frame
ecb-primary-secondary-mouse-buttons
ecb-primary-mouse-jump-destination
ecb-tree-expand-symbol-before
ecb-tree-indent
ecb-source-file-regexps
ecb-show-node-info-in-minibuffer
ecb-layout-nr
ecb-token-display-function
ecb-type-token-display
ecb-show-tokens
But to make ECB working best for you it is also recommened to have a look at 5.2 All customizable options of ECB!
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
All customization of ECB is divided into the following "customize groups". You can highly customize all the ECB behavior/layout so just go to these groups and you will see all well documented ECB-options.
5.2.1 Group ecb-general General customizing ECB 5.2.2 Group ecb-directories Customizing the ECB-directories 5.2.3 Group ecb-sources Customizing the ECB-sources 5.2.4 Group ecb-methods Customizing the ECB-methods 5.2.5 Group ecb-history Customizing the ECB-history 5.2.6 Group ecb-layout Customizing the ECB-layout 5.2.7 Group ecb-face-options Customizing options for faces 5.2.8 Group ecb-faces Customizing the faces 5.2.9 Group ecb-download Customizing how to download ECB 5.2.10 Group ecb-help Customizing the online help of ECB
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
This group contains the following options:
ecb-activate
. This hooks are run after all the internal setup
process but directly before(!) drawing the layout specified in
ecb-layout
(means before dividing the frame into several
windows).
A senseful using of this hook can be maximizing the Emacs-frame for
example, because this should be done before the layout is drawn
because ECB computes the size of the ECB-windows with the current
frame size! If you need a hook-option for the real end of the
activating process (i.e. after the layout-drawing) look at
ecb-activate-hook
.
ecb-activate
. This hooks are run at the real end of the
activating process, means after the layout has been drawn!. If you
need hooks which are run direct before the layout-drawing look at
ecb-activate-before-layout-draw-hook
.
ecb-activate
.
ecb-upgrade-options
and
ecb-display-upgraded-options
. If this option is off then the
user can perform the check and reset manually with
ecb-upgrade-options
.
See section 7.2 Automatic upgrading of options.
ecb-current-buffer-sync
.
ecb-deactivate
.
ecb-submit-problem-report
) after getting the
error again!
'(<common-prefix-flag> <keysequence> <function>) where |
<common-prefix-flag>
<keysequence>
<function>:
It is highly recommended to use one of the standard keys C-c or C-x as first key of your common-prefixkey!
You MUST change this option via customize to take effect!
All keysequences must be inserted as a string and must follow the
syntax needed by read-kbd-macro
or kbd
. This means you
can insert the key in the same manner C-h k displays keysequences.
Here is the summary of the syntax:
Text is divided into "words" separated by whitespace. Except for the words described below, the characters of each word go directly as characters of the keysequence. The whitespace that separates words is ignored. Whitespace in the macro must be written explicitly, as in C-c SPC.
^
notation for control characters also works: ^M = C-m.
ecb-auto-activate
. The latter one is
for activating ECB after Emacs-startup (even without opening a buffer)
and this one is for defining for which major-modes ECB should be
activated if the mode goes active!
The behaviour is like follows: If a mode is contained in this option ECB is activated after activating this mode (if ECB was deactivated before) or the ECB-windows are shown if ECB was already active but its windows were hidden. In every case ECB is activated with visible ECB-windows afterwards!
For every major mode there can be specified an ecb-layout-nr
:
default
:
The value customized with ecb-layout-nr
is choosen.
ecb-layout-nr
but only for current emacs-session! But the
layout is only changed if ECB was activated, if just the ECB-windows
were shown, the current layout is used!
There are two additional options:
none
:
No major-modes should activate ECB automatically.
ecb-major-modes-deactivate
activate ECB except the symbol-name
of major-mode
matches this regexp. If this option is set then
the default regexp excludes all Info- and customize-buffers because
this buffers should not change anything in the ECB-activation state.
Any auto. activation is only done if the current-frame is unsplitted to avoid changing unnecessarily or unintentionally the frame-layout if the user just jumps between different windows.
hide
:
ECB just hides all the ECB windows like with ecb-hide-ecb-windows
.
deactivate
:
ECB is completely deactivated after activating the major-mode.
There are two additional options:
none
:
No major-modes should deactivate/hide ECB automatically.
ecb-major-modes-activate
". The car of this cons can be:
hide-all-except-activated
:
All major-modes which are not listed in
ecb-major-modes-activate
hide the ECB-windows.
deactivate-all-except-activated
:
All major-modes which are not listed in
ecb-major-modes-activate
deactivate ECB.
The cdr of this cons is a regexp: This means all major-modes which are
not listed in ecb-major-modes-activate
deactivate/hide ECB
except the symbol-name of major-mode
matches this regexp. If
this option is set then the default regexp excludes all Info- and
customize-buffers because this buffers should not change anything in
the ECB-activation state.
If a major-mode is listed in ecb-major-modes-activate
as well
as in ecb-major-modes-deactivate
then ECB is activated!
Any auto. deactivation/hiding is only done if the edit-window of ECB is unsplitted and point is in the edit-window to avoid changing unnecessarily or unintentionally the frame-layout if the user just jumps between different edit-windows, the tree-windows and the compile-window of ECB.
ecb-primary-secondary-mouse-buttons
) in an ECB-window, if you
click onto a source or method or variable. Defines in which
edit-window (if splitted) ECB does the "right" action (opening the
source, jumping to a method/variable). There are two possible choices:
left-top
:
Does the "right" action always in the left/topmost edit-window.
last-point
:
Does the "right" action always in that edit-window which had the point
before.
If the edit-window is not splitted this setting doesn't matter.
Note: A click with the secondary mouse-button (see again
ecb-primary-secondary-mouse-buttons
does the "right" action
always in the "other" window related to the setting in this option.
ecb-primary-mouse-jump-destination
.
ecb-primary-mouse-jump-destination
.
A click with the primary mouse-button while the SHIFT-key is pressed
only displays the complete clicked node in the minibuffer. This is
useful if the node is longer as the window-width of the ECB-window and
ecb-truncate-lines
is not nil.
The secondary mouse-button is for opening (jumping to) the file in the
other window (see the documentation
ecb-primary-mouse-jump-destination
).
The following combinations are possible:
If you change this during ECB is activated you must deactivate and activate ECB again to take effect
ecb-show-help
shows its online help. Allowed values
are 'info (for the Info format) and 'html (for HTML format). If the
value is 'html then browse-url-browser-function
says which
browser is used.
For every tree-buffer you can define "when" node info should be displayed:
always
:
Node info is displayed by moving with the mouse over a node.
if-too-long
:
Node info is only displayed by moving with the mouse over a node does
not fit into the window-width of the tree-buffer window. In the ECB
directories buffer this means also if a node is shortend or if the
node has an alias (see ecb-source-path
).
shift-click
:
Node info is only displayed after a shift click with the primary mouse
button onto the node.
never
:
Node info is never displayed.
For every tree-buffer you can define what info should be displayed:
name
: Only the full node-name is displayed.
path
: The full-path of the node is displayed.
name
: Only the full node-name is displayed.
file-info
: File infos for this file are displayed.
file-info-full
: Fill infos incl. full path for this file are
displayed.
name
: Only the full node name is displayed.
name+type
: The full name + the type of the node (function, class,
variable) is displayed.
Do NOT set this option directly via setq but use always customize!
A special remark for the ecb-directories-buffer-name
: Of course
here the edit-window is only selected if
ecb-show-sources-in-directories-buffer
is not nil (otherwise
this would not make any sense)!
The setting in this option is only the default for each tree-buffer.
With ecb-toggle-RET-selects-edit-window
the behavior of RET can
be changed fast and easy in a tree-buffer without customizing this
option, but of course not for future Emacs sessions!
If this option is changed the new value takes first effect after deactivating ECB and then activating it again!
nil
ECB checks at start-time if the required versions of
semantic and eieio are installed and loaded into Emacs. It is strongly
recommended to set this option to not nil
!
always
then the synchronization takes place always a buffer
changes in the edit window, if nil
then never. If a list of
major-modes then only if the major-mode
of the new buffer
belongs NOT to this list.
But in every case the synchronization takes only place if the
current-buffer in the edit-window has a relation to files or
directories. Examples for the former one are all
programming-language-modes, Info-mode
too, an example for the
latter one is dired-mode
. For all major-modes related to
non-file/directory-buffers like help-mode
,
customize-mode
and others never a synchronization will be done!
It's recommended to exclude at least Info-mode
because it makes
no sense to synchronize the ECB-windows after calling the Info help.
Per default also dired-mode
is excluded but it can also making
sense to synchronize the ECB-directories/sources windows with the
current directory in the dired-buffer.
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
This group contains the following options:
ecb-source-path
if not already contained.
This is done during the auto. windows synchronization which happens if
a file is opened not via the file/directory-browser of ECB. In such a
situation ECB adds the path of the new file auto. to
ecb-source-path
at least temporally for the current Emacs
session. This option defines two things:
ecb-source-path
or the whole directory-part?
The value of this option is a cons-cell where the car is a boolean for 1. and the cdr is a boolean for 2.
A value of not nil for the car (1.) is reasonably if a user often
opens files not via the ECB-browser which are not located in any of
the paths of ecb-source-path
because then only one path for
each drive (windows) or the root-path (unix) is added to the directory
buffer of ECB.
best
: Expand the best-matching source-path
first
: Expand the first matching source-path
nil
: Do not automatically expand the directory tree.
This can be useful if ecb-source-path
contains directories with
many files and subdirs, especially if these directories are mounted
net-drives ("many" means here something > 1000, dependend of the speed
of the net-connection and the machine). For these directories
actualizing the sources- and/or directories- buffer of ECB (if
displayed in current layout!) can slow down dramatically so a caching
increases speed a lot.
The value of this option is a list where each element looks like:
(<dir-regexp> <filenumber threshold> <cache clearing> with |
<dir-regexp>:
<filenumber threshold>:
<cache clearing>:
demand
:
Cache will only be cleared on user demand. See
ecb-clear-directory-cache
.
auto
:
Cache will be cleared if the contents of the directory have been
changed. ECB can detect this automatically. This works for Unix- but
probably not for Windows-systems, because Windows offers no way to
detect when the contents of a directory have been changed.
<number>
:
First selection of directories matching the regexp after <number>
seconds after last caching time will rescan the directory.
A directory will we only be cached if and only if the directory-name matches one rexexp of this option and it's content-number exceeds the related threshold.
Example: A value of ("~/bigdir*" 1000 3600)
means the
contents of every subdirectory of the home-directory with name
beginning with "bigdir" will be cached if the directory contains more
than 1000 entries. One hour after the last caching time of such a
directory the next selection (clicking onto it in the
directories-window, changing buffers so the directory becomes current
in the directories-window, etc...) will rescan the directory and
update the cache.
Attention: Currently the <cache clearing> part is ignored.
Currently the cache can only be cleared on demand and only the whole
cache can be cleared, see ecb-clear-directory-cache
. This will
change in a future version.
If it is necessary for you you can get emacs-lisp access to the buffer-object of
the ECB-directory-buffer by this name, e.g. by a call of set-buffer
.
Changes for this option at runtime will take affect only after deactivating and then activating ECB again!
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
This group contains the following options:
In addition to these predefined values a custom exclude and include combination can be defined.
If it is necessary for you you can get emacs-lisp access to the
buffer-object of the ECB-sources-buffer by this name, e.g. by a call
of set-buffer
.
Changes for this option at runtime will take affect only after deactivating and then activating ECB again!
name
:
Sorting by name.
extension
:
Sorting first by name and then by extension.
nil
:
No sorting, means source files are displayed in the sequence returned
by directory-files
(called without sorting).
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
This group contains the following options:
The default are empty prefix/suffix-strings and
'ecb-bucket-token-face'. But an alternative can be for example ("["
"]" nil)
which means no special face and a display like "[+]
[<bucket-name>]".
ecb-show-parents
). If nil then all parents will be
shown if ecb-show-parents
is not nil.
ecb-token-header-face
is used.
highlight-scroll
:
Always scroll the method buffer, so the current method of the
edit-window is highlighted in the method-window.
highlight
:
Only highlight the current method of the edit window in the
method window if the method is visible in the method-window.
nil
:
No highlighting is done.
See also ecb-highlight-token-with-point-delay
.
widen
C-x n w.
If it is necessary for you you can get emacs-lisp access to the
buffer-object of the ECB-methods-buffer by this name, e.g. by a call
of set-buffer
.
Changes for this option at runtime will take affect only after deactivating and then activating ECB again!
semantic-bovinate-toplevel
) for a
buffer in this major-mode. Such a function is called with current
semantic tokenlist of current buffer and must return a valid tokenlist
again.
For oo-programming languages where the methods of a class can be
defined outside the class-definition (e.g. C++, Eieio) the function
ecb-group-function-tokens-with-parents
can be used to get a
much better method-display in the methods-window of ECB, because all
method implementations of a class are grouped together.
defclass
form which are only displayed
if this option is nil. Displaying such nodes can be sensefull even if
they can not be jumped.
(<token type> <display type> <sort method>) |
The tokens in the methods buffer are displayed in the order as they appear in this list.
<token type>
t
: All token types not specified anywhere else in the list.
parent
: The parents of a type.
<display type>
expanded
: The tokens are shown in an expanded node.
collapsed
: The tokens are shown in a collapsed node.
flattened
: The tokens are added to the parent node.
hidden
: The tokens are not shown.
<sort method>
name
:
Sort by the token name.
access
:
Sort by token access (public, protected, private) and then by name.
nil
:
Don't sort tokens. They appear in the same order as in the source
buffer.
Every function is called with 3 arguments:
ecb-font-lock-tokens
.
Every function must return the display of the token as string, colorized if the third argument is not nil.
The following functions are predefined:
semantic-token->text-functions
.
semantic-token->text-functions
with name
"semantic-XYZ" a function with name "ecb-XYC" is predefined. The
differences between the semantic- and the ECB-version are:
ecb-type-token-display
. This is useful for better recognizing
different classes, structs etc. in the ECB-method window.
For all tokens which are not types the display of the ECB-version is
identical to the semantic version. Example: For semantic-name-nonterminal
the pendant is ecb-name-nonterminal
.
This functionality also allows the user to display tokens as UML. To
enable this functionality set the function for a major-mode (e.g.
jde-mode
) to semantic-uml-concise-prototype-nonterminal
,
semantic-uml-prototype-nonterminal
, or
semantic-uml-abbreviate-nonterminal
or the ECB-versions of
these functions.
If the value is nil
, i.e. neither a function for a major-mode
is defined nor the special 'default, then
semantic-prototype-nonterminal
is used for displaying the
tokens.
widen
(C-x n w).
semantic-face-alist
and the semantic
display-function (e.g. one from
semantic-token->text-functions
). But sometimes a finer
distinction in displaying the different type specifiers of type-tokens
can be usefull. For a description when this option is evaluated look
at ecb-token-display-function
!
This functionality is set on a major-mode base, i.e. for every major-mode a different setting can be used. The value of this option is a list of cons-cells:
ecb-post-process-semantic-tokenlist
and
ecb-group-function-tokens-with-parents
). Any arbitrary
specifier can be set here but if it is not "group" or not known by
semantic it will be useless.
ecb-type-token-class-face
,
ecb-type-token-struct-face
, ecb-type-token-typedef-face
,
ecb-type-token-enum-face
and ecb-type-token-group-face
)
but any arbitrary face can be set here. This face is merged with the
faces semantic already uses to display a token,
i.e. the result is a display where all face-attributes of the ECB-face
take effect plus all face-attributes of the semantic-faces which are not
set in the ECB-face (with XEmacs this merge doesn't work so here the
ECB-face replaces the semantic-faces; this may be fixed in future
versions).
The default value is nil means there is no special ECB-displaying of type-tokens in addition to the displaying and colorizing semantic does. But a value like the following could be a usefull setting:
((default ("class" t ecb-type-token-class-face) ("group" nil ecb-type-token-group-face)) (c-mode ("struct" nil ecb-type-token-struct-face) ("typedef" nil ecb-type-token-typedef-face))) |
This means that in c-mode
only "struct"s and "typedef"s are
displayed with special faces (the specifiers itself are not removed)
and in all other modes "class"es and grouping-tokens (see
ecb-token-display-function
,
ecb-group-function-tokens-with-parents
) have special faces and
the "class" specifier-string is removed from the display.
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
This group contains the following options:
ecb-clear-history
is called. Three options are available:
not-existing-buffers
:
All entries which represent a buffername not existing
anymore in the bufferlist will be cleared. Probably the most senseful value.
existing-buffers
:
The opposite of 'not-existing-buffers.
all
:
The whole history will be cleared.
If it is necessary for you you can get emacs-lisp access to the
buffer-object of the ECB-history-buffer by this name, e.g. by a call
of set-buffer
.
Changes for this option at runtime will take affect only after deactivating and then activating ECB again!
kill-buffer
should also clear the history. There are
three options:
auto
:
Removes automatically the corresponding history-entry after the buffer
has been killed.
ask
:
Asks, if the history-entry should be removed after the kill.
nil
:
kill-buffer
does not affect the history (this is the default).
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
This group contains the following options:
ecb-new-ecb-frame
is not nil (otherwise this hook is not
evaluated).
other-window
For this one see also the option ecb-other-window-jump-behavior
!
delete-window
delete-other-windows
delete-windows-on
split-window-horizontally
split-window-vertically
switch-to-buffer
switch-to-buffer-other-window
other-window-for-scrolling
If this advice is enabled then the following functions scroll always
the first edit-window if the edit-window is splitted, point stays in
the "other" edit-window and there is no durable compilation-window
(see ecb-compile-window-height
):
scroll-other-window
scroll-other-window-down
beginning-of-buffer-other-window
end-of-buffer-other-window
This advice is per default not enabled.
For working most conveniantly with ECB it is the best to advice all these functions, because then all the standard shortcuts of these functions are also usable with ECB without doing anything else. Also other packages can interact best with ECB if these functions are all adviced. If these adviced functions are called in another frame than the ECB-frame they behave all exactly like the not adviced versions!
But please read also the following:
Normally all packages should work correct with ECB and itīs adviced functions but if there occur problems with a package cause of some of these adviced functions ECB offers the following fall-back solution:
ecb-advice-window-functions
all the
adviced-functions which make problems with other packages.
ecb-activate-hook
the standard-shortcut of
<adv-func> to "ecb-ecb-deactivate-hook
to <adv-func>.
Here is an example: Suppose you must deactivating the advice for
switch-to-buffer-other-window
. Then you deactivate this
function with this option and you can use
ecb-switch-to-buffer-other-window
instead. Bind the shortcut
you normally use for switch-to-buffer-other-window
to
ecb-switch-to-buffer-other-window
(use ecb-activate-hook
for this) and rebind it to the original function in the
ecb-deactivate-hook
.
ecb-compile-window
auto. enlarges it and
deselecting (means selecting another window after point was in
ecb-compile-window
) auto. shrinks it. Enlarging and shrinking
the ecb-compile-window
is done with
ecb-toggle-enlarged-compilation-window
. See also the
documentation of this function!
ecb-redraw-layout
then the
compilation window (if any) has the heigth you set here. If the number
is less than 1.0 the height is a fraction of the frame height.
If you do not set a durable compilation window then doing a compilation splits temporally the edit window vertically if the edit window is not splitted already or uses the "other" edit window temporally for comilation output if the edit window is already splitted. This is the recommended value for this option!
Beware: If you set a durable compilation window then ECB can not guarantee always behaving like a standard Emacs concerning displaying temp-buffers and compilation-buffers. It should work in most cases but maybe not in all. Just try it out.
See also the option ecb-compile-window-temporally-enlarge
and
also the function ecb-toggle-enlarged-compilation-window
!
See section 4.4 Temp- and compile-buffers display in ECB.
Regardless of the settings you define here: If you have destroyed or
changed the ECB-screen-layout by any action you can always go back to
this layout with ecb-redraw-layout
This option has only an effect if ecb-compile-window-height
is
not nil!
The following values are possible:
after-compilation
:
After finishing the compilation-output and during jumping to the
errors ECB let temporally enlarge all compilation-buffers in
ecb-compile-window
(e.g. compile- and grep-buffers) to
compilation-window-height
. But be aware this setting is
currently not meaningful for temporary buffers like help-buffers
because these buffers currently enlarge always to
temp-buffer-max-height
.
after-selection
:
Selecting the ecb-compile-window
auto. enlarges it and
deselecting (means leaving ecb-compile-window
) auto. shrinks
it. Enlarging and shrinking the ecb-compile-window
is done with
ecb-toggle-enlarged-compilation-window
. See also the
documentation of this function! This is possible for all buffers in
ecb-compile-window
not only for compilation-buffers!
both
:
The combination of 'after-compilation and 'after-selection.
nil
:
ECB tries to fix always the height of the ecb-compile-window
at
the value of ecb-compile-window-height
. But for all temporary
buffers (e.g. help-buffers) this is currently not possible.
To restore the ECB-layout after such a buffer-enlarge just call
ecb-toggle-enlarged-compilation-window
or
ecb-redraw-layout
.
ecb-toggle-ecb-windows
or ecb-hide-ecb-windows
.
ecb-advice-window-functions
), we will select the
ecb-edit-window
first. This is useful if you have any functions
that use such functions and you don't want them to just error with a
method complaining that the current buffer can not be split, or
something similar.
Because this may not be desirable in all situations and all adviced
functions this can be enabled separately for every advisable function
(see also ecb-advice-window-functions
). If the symbol of an
adviced function is contained in the value of this option, then the
edit-window is first selected otherwise either an error is reported or
some other special reaction; see the documentation of the adviced
functions for this.
For other-window
and other-window-for-scrolling
this
makes no sense, therefore you can not enable this for both of them.
Per default this is enabled for delete-window
,
delete-other-windows
, switch-to-buffer
and
switch-to-buffer-other-window
.
ecb-layout-function-9
.
Currently available layouts (see the doc-string for a picture ot the layout):
ecb-layout-function-0
ecb-layout-function-1
ecb-layout-function-2
ecb-layout-function-3
ecb-layout-function-4
ecb-layout-function-5
ecb-layout-function-6
ecb-layout-function-7
ecb-layout-function-8
ecb-layout-function-9
ecb-layout-function-10
ecb-layout-function-11
ecb-layout-function-12
ecb-layout-function-13
ecb-layout-function-14
ecb-layout-function-15
ecb-layout-function-16
Regardless of the settings you define here: If you have destroyed or
changed the ECB-screen-layout by any action you can always go back to
this layout with ecb-redraw-layout
ecb-compile-window
. If
the buffer argument of switch-to-buffer
or
switch-to-buffer-other-window
is an compilation buffer as
defined with ecb-compilation-buffer-p
we will select the
ecb-compile-window
first. This is useful if you always want
your compilation buffers within the compilation window and now within
the edit window.
Note the difference between
ecb-layout-always-operate-in-edit-window
and this option: If a
switch-to-buffer...-function is contained in the former one, then we
always jump first into the edit-window regardless of the destination
buffer. If also contained in this option then ECB checks the
destination buffer and then selects the ecb-compile-window
if
it is a compilation-buffer in the meaning of
ecb-compilation-buffer-p
!
Per default this is only enabled for switch-to-buffer
. We
provide the option for switch-to-buffer-other-window
too but
the assumption is that when a user asks for a buffer in another window
it should always be presented in another window.
ecb-store-window-sizes
function. Next time the
layout is redrawn the values stored in this option will be used.
But be aware: These values are only suitable for the frame-size the
ecb-frame had at the time you store the values by calling
ecb-store-window-sizes
. Therefore ensure always before calling
ecb-store-window-sizes
that the ecb-frame has the size it has
normally during your work with ECB!.
other-window
, an intelligent replacement for the Emacs standard
version of other-window
. The following settings are possible:
all
:
ECB will cycle through all windows of ECB, means it behaves like the
original other-window
.
only-edit
:
ECB will only cycle through the (max. 2) edit-windows of ECB.
edit-and-compile
:
Like 'only-edit plus the compile window if any.
ecb-redraw-layout
.
ecb-redraw-layout
.
ecb-toggle-ecb-windows
or ecb-show-ecb-windows
.
ecb-toggle-layout
.
Every element of this list has to be a valid layout-number (see option
ecb-layout-nr
).
You can add here as many layouts as you want but to use this option
most effective you should not add more than 2 or 3 layouts so every
layout can be accessed very fast by toggling with
ecb-toggle-layout
. It is also senseful to add layouts which
have the same principal outline, i.e. all their tree-buffers are on
the same side of the frame and the tree-buffer-"column" (or
-"row") has identical size for the layouts.
Recommended values are for example:
This option makes only sense if the value is a list with more than 1 element!
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
This group contains the following options:
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
This group contains the following faces:
ecb-bucket-token-face:
ecb-default-general-face:
In GNU Emacs 21.X all faces (even the face
ecb-default-highlight-face
) used in the ECB tree-buffers inherit
from this face. Therefore the default attributes like font etc. of a
face used in a tree-buffer can be very easily changed with face
ecb-default-general-face
.
With XEmacs and GNU Emacs 20.X there is no inheritance-feature but the
options ecb-directories-general-face
,
ecb-sources-general-face
, ecb-methods-general-face
and
ecb-history-general-face
offer the choice to use the face
ecb-default-general-face
so also with XEmacs and GNU Emacs 20.X
the basic face-settings can be easily changed just by customizing the
face ecb-default-general-face
!
ecb-default-highlight-face:
In GNU Emacs 21.X all highlighting faces in the ECB tree-buffers
inherit from this face. Therefore the default attributes like font
etc. of a face used in a tree-buffer for highlighting the current
token can be very easily changed with face
ecb-default-highlight-face
.
With XEmacs and GNU Emacs 20.X there is no inheritance-feature but the
options ecb-directory-face
, ecb-source-face
,
ecb-method-face
and ecb-history-face
offer the choice to
use the face ecb-default-highlight-face
so also with XEmacs and
GNU Emacs 20.X the basic face-settings can be easily changed just by
customizing the face ecb-default-highlight-face
!
ecb-directories-general-face:
ecb-directory-face:
ecb-history-face:
ecb-history-general-face:
ecb-method-face:
ecb-methods-general-face:
ecb-source-face:
ecb-source-in-directories-buffer-face:
ecb-sources-general-face:
ecb-token-header-face:
ecb-type-token-class-face:
ecb-type-token-display
.
ecb-type-token-enum-face:
ecb-type-token-display
.
ecb-type-token-group-face:
ecb-type-token-display
.
ecb-type-token-interface-face:
ecb-type-token-display
.
ecb-type-token-struct-face:
ecb-type-token-display
.
ecb-type-token-typedef-face:
ecb-type-token-display
.
Just call customize-face <face-name>
to customize these faces
for your personal taste. Or customize the related option in the group
5.2.7 Group ecb-face-options.
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
This group contains the following options:
only-after-success
:
Archive is only deleted after successfull installation
but not if a failure occurs during the installation process.
always
:
Archive is also deleted if an error occurs.
nil
:
Archive will never be deleted.
ecb-download-ecb
will try to download this archive.
Note: Normally this URL should never change but who knows...
ecb-download-ecb
.
Valid values are either the string "latest" or a version number like
"1.70". ECB creates automatically the correct URL for download, see
ecb-download-ecb
(see section 4.10 Interactive ECB commands).
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
This group contains the following options:
The path can either be an absolute path or a path relativ to the directory where the elisp files of ECB are.
Normally there should be no need to change this option!
The path can either be an absolute path or a path relativ to the directory where the elisp files of ECB are.
Normally there should be no need to change this option!
ecb-show-help
shows its online help. Allowed values
are 'info (for the Info format) and 'html (for HTML format). If the
value is 'html then browse-url-browser-function
says which
browser is used.
[ << ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |