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

Group ecb-sources

This group contains the following options:

show-source-file-extension User Option
Show the file extension of source files.

source-file-regexps User Option
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 exclude regexp and the second element is a include regexp. A file is displayed in the source-buffer of ECB iff: The file does not match the exclude regexp OR the file matches the include regexp.

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:

  • All files
  • All, but no backup, object, lib or ini-files (except .emacs and .gnus). This means all files except those starting with ".", "#" or ending with "~", ".elc", ".obj", ".o", ".lib", ".dll", ".a", ".so". (but including .emacs and .gnus)
  • Common source file types (.c, .java etc.)

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.

sources-buffer-after-create-hook User Option
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.

sources-buffer-name User Option
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!

sources-exclude-cvsignore User Option
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.

sources-menu-sorter User Option
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.

sources-menu-user-extension User Option
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 filename of the source for which the popup-menu has been opened.

Per default the 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.

If you change this option you have to restart ECB to take effect.

sources-sort-method User Option
Defines how the source files are sorted.
  • 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).