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

7.3.4 Group ecb-sources

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

— User Option: read-only-check-exclude-regexps

Which directories should be excluded from the sources-read-only-check. If a directory matches any of the regexps of this option their sources will not be checked if they are writable - This option takes only effect if ecb-sources-perform-read-only-check is not nil.

— User Option: show-source-file-extension

Show the file extension of source files.

— User Option: source-file-regexps

Specifies which files are shown as source files.

This is done on directory-base, which means for each directory-regexp the files to display can be specified. If more than one directory-regexp matches the current selected directory then always the first one (and its related file-exclude/include-regexps) is used! If no directory-regexp matches then all files are displayed for the currently selected directory.

Important note: It is recommended that the *LAST* element of this list should contain an always matching directory-regexp (".*")!

So the value of this option is a list of cons-cells where the car is a directory regexp and the cdr is a 2 element list where the first element is a list of exclude regexps and the second element is a list of include regexps. A file is displayed in the source-buffer of ECB iff: The file does not match any of the exclude regexps OR the file matches at least one of the include regexps.

But regardless of the value of this option a file F is never displayed in the sources-buffer if the directory matches ecb-sources-exclude-cvsignore and the directory contains a file .cvsignore which contains F as an entry!

There are three predefined and useful combinations of an exclude and include regexp:

In addition to these predefined values a custom exclude and include combination can be defined.

Tips for the directory- and file-rexexps: "$^" matches no files/directories, ".*" matches all files/directories.

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

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

— User Option: sources-buffer-name

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

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!

— User Option: sources-exclude-cvsignore

Specify if files contained in a .cvsignore should be excluded.

Value is a list of regular expressions or nil. If you want to exclude files listed in a .cvsignore-file from being displayed in the ecb-sources-buffer then specify a regexp for such a directory.

If you want to exclude the contents of .cvsignore-files for every directory then you should add one regexp “.*” which matches every directory.

If you never want to exclude the contents of .cvsignore-files then set this option to nil.

— User Option: sources-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-sources-menu-user-extension and the built-in-menu ecb-sources-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: sources-menu-user-extension

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

The node-argument of a menu-function contains as data the source for which the popup-menu has been opened. 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.

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

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

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

If no dynamically evaluated menu-extensions should be added to the sources-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-sources-menu-user-extension but the whole menu can be re-arranged with ecb-sources-menu-sorter.

— User Option: sources-perform-read-only-check

Check if source-items in the tree-buffers are read-only. If a sourcefile is read-only then it will be displayed with that face set in the option ecb-source-read-only-face.

Because this check can be take some time if files are used via a mounted net-drive ECB performs this check stealthily (see ecb-stealthy-tasks-delay) so normally the user should not see a performance-decrease or additional waiting-time. But to get sure this option offers three choices: t, unless-remote and nil. See ecb-prescan-directories-for-emptyness for an explanation for these three choices.

The option ecb-read-only-check-exclude-regexps offers are more fine granularity to exclude the sources of certain directories from the read-only state-check.

— User Option: sources-show-node-info

When to display which node-info in the sources-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 sources-buffer.

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

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

— User Option: sources-sort-ignore-case

Ignore case for sorting the source-files of the Sources-buffer. See also ecb-sources-sort-method.

— User Option: sources-sort-method

Defines how the source files are sorted.

See also ecb-sources-sort-ignore-case