ecb-history - ECB - the Emacs Code Browser
Description: ECB - the Emacs Code Browser

Next: ecb-analyse, Previous: ecb-methods, Up: Customizable options

#### 7.3.6 Group ecb-history

This group contains settings for the history-buffer in the ECB:

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

> Local hook running after the creation of the history-buffer. Every function of this hook is called once without arguments direct after creating the history-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 keybindings only for the history-buffer of ECB.

— User Option: history-buffer-name

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

> 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!

— User Option: history-exclude-file-regexps

> List of regexps which exclude source-files from being historized. Be aware that each always full filenames (ie. incl. full path) are matched against these regexps! Therefore be carefore with regexps beginning with ^!

— User Option: history-item-name

> The name to use for items in the history buffer.

— User Option: history-make-buckets

> Bucketize the entries of the history-buffer.

> There are several options how the bucketizing should be done:

> - 'never:

>   No bucketizing at all, ie. all entries of the history-buffer we be displayed flat.

> - 'directory:

>   All entries with related filesources residing in the same directory will be contained in a bucket named with that directory.

> - 'directory-with-source-path:

>   Same as 'directory but the best matching source-path of the directory-window (see `ecb-source-path`) substituts the matching part of the directory. For this a special face is used (see `ecb-history-bucket-node-dir-soure-path-face`).

> - 'mode:

>   All entries with related buffers have the same major-mode will be contained in a bucket named with that major-mode

> - 'extension:

>   All entries with related filesources having the same extension will be contained in a bucket named with that extension

> If the value is a list of regular expressions then all entries where the buffername matches the same regular expression will be contained in one bucket. If the value is nil then this is interpreted as an empty list of regular expressions!

> The default value is 'directory.

— User Option: history-menu-sorter

> Function which re-sorts the menu-entries of the directories buffer.

> If a function then this function is called to sort the menu-entries of the combined menu-entries of the user-menu-extensions of `ecb-history-menu-user-extension` and the built-in-menu `ecb-history-menu`. If nil then no special sorting will be done and the user-extensions are placed in front of the built-in-entries.

> For the guidelines for such a sorter-function see `ecb-directories-menu-sorter`.

— User Option: history-menu-user-extension

> Static user extensions for the popup-menu of the history buffer. For further explanations see `ecb-directories-menu-user-extension`.

> The node-argument of a menu-function contains as data a cons:

> car is the filename of the source for which the popup-menu has been opened. cdr is the related buffer-name; but be careful, because the node can point to a dead buffer (see `ecb-kill-buffer-clears-history`). Use always `ecb-source-get-*` to extract whatever you need from the node-data. E.g. use `ecb-source-get-filename` to get the full filename of the source of the node and use `ecb-source-get-buffername` or `ecb-source-get-buffer` to get the buffername rsp. the buffer-object.

> Per default the static user-extensions are added at the beginning of the built-in menu-entries of `ecb-history-menu` but the whole menu can be re-arranged with `ecb-history-menu-sorter`.

— User Option: history-menu-user-extension-function

> Dynamic user extensions for the popup-menu of the history buffer. A function which has to return a list in the same format like the option `ecb-history-menu-user-extension`. This function is called when the user opens the popup-menu for the history buffer.

> If no dynamically evaluated menu-extensions should be added to the history-buffer the function has to return nil. Therefore the default-value of this option is `ignore`.

> Per default the dynamic user-extensions are added in front of the static extensions of `ecb-history-menu-user-extension` but the whole menu can be re-arranged with `ecb-history-menu-sorter`.

— User Option: history-show-node-info

> When to display which node-info in the history-buffer. Define which node info should be 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 “which” info should be displayed:

> - name: Only the full node-name is displayed.
> - path: The full-path of the node is displayed.
> - name-path: The full node-name and the full-path is displayed.

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

— User Option: history-sort-ignore-case

> Ignore case for sorting the history-entries. See also `ecb-history-sort-method`.

— User Option: history-sort-method

> Defines how the entries in the history-buffer are sorted.

> - `name`: Sorting by name (default).
> - `extension`: Sorting first by extension and then by name.
> - `nil`: No sorting, means the most recently used buffers are on the top of the history and the seldom used buffers at the bottom.

> See also `ecb-history-sort-ignore-case`.

> If the history is bucketized (see `ecb-history-make-buckets`) then this sorting applies to the sorting within each bucket.

— User Option: history-stick-indirect-buffers-to-basebuffer

> Stick all indirect-buffers as subnodes to their base-buffer.

> If nil then indirect-buffers are treated as non-indirect-buffers and sorted into the history-buffer-sequence according to the setting of `ecb-history-sort-method`.

> If not nil then indirect-buffers are always sticked to their base-buffer, ie. the base-buffer is displayed as expandable node with all its indirect-buffers as children-nodes, so the history looks like:

>             [-] <base-buffer BB>
>              |  <indirect-buffer 1 of BB>
>              `- <indirect-buffer 2 of BB>

— User Option: kill-buffer-clears-history

> Define if `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).