Next: , Previous: ecb-history, Up: Customizable options


7.3.7 Group ecb-analyse

— User Option: analyse-bucket-element-face

Basic face for displaying elements of buckets in the ECB-analyse-buffer. This defines the basic face for the elements of category-buckets like Context, Prefix, Completions etc. in the ECB-analyse-buffer.

Changes take first effect after finishing and reactivating ECB!

— User Option: analyse-bucket-node-face

Basic face for displaying a bucket-node in the ECB-analyse-buffer. This defines the basic face for the bucket-nodes like Context, Prefix, Completions etc. in the ECB-analyse-buffer.

Changes take first effect after finishing and reactivating ECB!

— User Option: analyse-buffer-after-create-hook

Local hook running after the creation of the analyse-buffer. Every function of this hook is called once without arguments direct after creating the analyse-buffer of ECB and it's local key-map. So for example a function could be added which performs calls of local-set-key to define new key-bindings only for the analyse-buffer of ECB.

— User Option: analyse-buffer-name

Name of the ECB analyse buffer. Because it is not a normal buffer for editing you should enclose the name with stars, e.g. “*ECB Analyse*”.

If it is necessary for you you can get emacs-lisp access to the buffer-object of the ECB-analyse-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!

— User Option: analyse-buffer-sync

Synchronize the analyse buffer automatically with current edit buffer.

If '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.

Normally it's not necessary to exclude some major-modes because with not-semantic supported major-modes simply nothing happens. But maybe it can be helpful for certain situations...

If the special value 'basic is set then ECB uses the setting of the option ecb-basic-buffer-sync.

IMPORTANT NOTE: Every time the synchronization is done the hook ecb-analyse-buffer-sync-hook is evaluated.

— User Option: analyse-buffer-sync-delay

Time Emacs must be idle before the analyse-buffer is synchronized. Synchronizing is done with the current source displayed in the edit window. If nil then there is no delay, means synchronization takes place immediately.

CAUTION: With analysing a value not too small is strongly recommended because it can be very annoying if more or less after each typing the current context is analysed. If set to nil then *each* keyboard hit refreshes the analyse-buffer which will make ECB quite unusable!

If the special value 'basic is set then ECB uses the setting of the option ecb-basic-buffer-sync-delay

— User Option: analyse-buffer-sync-hook

ook run at the end of ecb-analyse-buffer-sync. See documentation of ecb-analyse-buffer-sync for conditions when synchronization takes place and so in turn these hooks are evaluated.

Preconditions for such a hook:

Postcondition for such a hook: Point must stay in the same edit-window as before evaluating the hook.

Important note: If the option ecb-analyse-buffer-sync is not nil the function ecb-analyse-buffer-sync is running either every time Emacs is idle or even after every command (see ecb-analyse-buffer-sync-delay). So if the anaylse-buffer is displayed in a window of the ecb-frame (see preconditions above) these hooks can be really called very often! Therefore each function of this hook should/must check in an efficient way at beginning if its task have to be really performed and then do them only if really necessary! Otherwise performance of Emacs could slow down dramatically!

— User Option: analyse-collapsed-buckets

Buckets collapsed when displaying the current semantic analysis. The semantic analyse-modul offers several categories of analysis which are called buckets here. These are for example:

Context: The current context, which is the current function/method, variable, class etc. (what exactly depends on the programming language) point is in. This means not the current function/method/variable/class-name point stand on but the current surrounding context. Example: If point stays somewhere within a defun-definition in emacs-lisp or within a java-method then this defun rsp. method is the context. In object oriented languages this can be the full hierachy, i.e. not only the current method, but the current method, the class of this method, the superclass of this class and so on!

Arguments: The arguments of the context if the context is a function/method.

Local Variables: All accessible and bound local variables visible at current point.

Prefix: The currently parsed prefix, which is mostly the current identifier point stands on.

Assignee: See the semantic user-manual

Function: Current function-name point stands on.

Argument #: When point is located within a function-call then this is the number of the argument point stands on.

Completions: All possible completions for current prefix (see above). This is probably the most helpful bucket.

If one of these categories/buckets are not needed per default then add the bucket-name (s.a.) to this option and ECB will per default collapse this bucket. So most needed buckets are better visible in the analyse-buffer.

— User Option: analyse-face

Face used for highlighting current entry in the analyse buffer. If the face ecb-default-highlight-face is used then the display of all ECB-tree-buffers can be changed by modifying only the face ecb-default-highlight-face.

Changes take first effect after finishing and reactivating ECB!

— User Option: analyse-fontified-buckets

Buckets whose elements should be fontified as in the methods-buffer. If the name of a category/bucket is contained in this option then all elements of this bucket will be displayed as in the methods-buffer - at least if an element is a semantic-tag. This means if ecb-font-lock-tags is not nil these elements will be fontified and also displayed with an appropriate icon if possible. The default value does this only for the Context-bucket because for most of the other buckets this makes not really much sense.

For available buckets see ecb-analyse-collapsed-buckets.

For the faces used to display a bucket-node itself or bucket-elements not fontified see the options ecb-analyse-bucket-node-face rsp. ecb-analyse-bucket-element-face.

— User Option: analyse-gen-tag-info-fn

Which info should be displayed for a tag of the analyse-buffer. If nil then the default information about a tag will be displayed. If a function then this function gets as argument the tag for which tag-information should be displayed. This function has to return a string which will be then display as tag-info. This string has to be fully formatted (e.g. must already include line-breaks if the tag-info should be displayed in several lines).

See ecb-analyse-show-tag-info-fn how the tag-info is displayed.

— User Option: analyse-general-face

Basic face for the ECB analyse buffer. This defines the basic face the whole history buffer should displayed with. If the face ecb-default-general-face is used then the display of all ECB-tree-buffers can be changed by modifying only the face ecb-default-general-face.

Changes take first effect after finishing and reactivating ECB!

— User Option: analyse-show-node-info

When to display which node-info in the history-buffer. Define which node info should displayed after moving the mouse over a node (or after a shift click onto the node) in the history-buffer.

You can define “when” a node-info should be displayed: See ecb-directories-show-node-info for the possible choices.

You can define what info should be displayed:

Do NOT set this option directly via setq but use always customize!

— User Option: analyse-show-tag-info-fn

How to display the tag-info for a tag of the analyse-buffer. The value of this option is a function which will be called with the info-string generated for the current tag of the analyse-buffer. This function must do all things necessary for displaying this info. When this function is called the window stored in ecb-last-edit-window-with-point is the selected window!

ECB offers two builtin ways: Display the info in the echo-area (via the function message) or in a temp-buffer in the edit-area (via the function ecb-analyse-show-tag-info-in-temp-buffer). Default is echo-area-display.

See also ecb-analyse-gen-tag-info-fn.