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

Next: ecb-create-layout, Previous: ecb-layout, Up: Customizable options

#### 7.3.10 Group ecb-compilation

This group contains settings for the compile window of ECB:

— User Option: compilation-buffer-names

> Additional buffer names that should be displayed in the compile-window. Buffer names can either be defined as strings or as regexps. If the buffer-name of a buffer matches one of the defined string or regexp then it will be displayed in the compile-window of ECB even if `compilation-buffer-p` says nil for this buffer.

> It is not recommended to add the eshell-buffer-names to this list because ECB already handles the eshell-integration as best as possible (see Using eshell).

> See also the options `ecb-compilation-major-modes` and `ecb-compilation-predicates`.

— User Option: compilation-major-modes

> Additional major-mode that should be displayed in the compile-window. All buffers of a major-mode contained in this list are displayed in the compile-window even if `compilation-buffer-p` says nil for such a buffer.

> It is not recommended to add `eshell-mode` to this list because ECB already handles the eshell-integration as best as possible (see Using eshell).

— User Option: compilation-predicates

> Predicates when a buffer should be treated as compilation-buffer. Every element of this list has to be a function or lambda-expression which gets as argument a buffer-object and which has to return not nil when this buffer should be treated as compilation-buffer (even if `compilation-buffer-p` says nil) and therefore be displayed in the compile-window of ECB (if there is any).

> In combination with the values of `ecb-compilation-buffer-names` and `ecb-compilation-major-modes` ECB decides when a buffer is displayed in the compile-window.

> Default value is the function `comint-check-proc` which returns not nil when the buffer is related to a living process.

— User Option: compile-window-height

> Height of the persistent compilation-window of ECB. If you want a compilation window shown at the bottom of the ECB-layout then set here the height of it (Default is a height of 5). If you redraw the current layout with `ecb-redraw-layout` then the compilation window (if any) has the height 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 persistent compilation window then doing a compilation or displaying temp-buffers (e.g. *Help*-buffers) splits temporally the edit window vertically if the edit window is not splitted already or uses another edit window temporally for compilation output if the edit window is already splitted. This is the recommended value for this option because this is the standard-behavior of Emacs.

> Beware: If you set a persistent compilation window then ECB displays all buffers for which `ecb-compilation-buffer-p` returns not nil in that persistent compilation window. If a buffer which should being displayed there is not displayed there then try to modify the options `ecb-compilation-buffer-names`, `ecb-compilation-major-modes` or `ecb-compilation-predicates` (in this sequence).

> See also the options `ecb-compile-window-temporally-enlarge` and `ecb-enlarged-compilation-window-max-height` and also the command `ecb-toggle-compile-window-height`!

> ECB offers the functionality of such a persistent compile-window regardless if the special ECB-windows are visible or not (see the command `ecb-toggle-ecb-windows`).

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

— User Option: compile-window-prevent-shrink-below-height

> Allow the compile-window to be shrunken below its height. A non nil value means ECB prevents the compile-window from being shrunken below the threshold of `ecb-compile-window-height` by displaying temp-buffers (e.g. *Help* etc.) or after running compilations or greps. But interactively it is always allowed to shrink it to every height!

> If nil then ECB does nothing to prevent being shrunken below the value of `ecb-compile-window-height`.

> Default is t.

— User Option: compile-window-temporally-enlarge

> Let Emacs temporally enlarge the compile-window of the ECB-layout. This option has only an effect if `ecb-compile-window-height` is not nil!

> The following values are possible:

> - `after-display`: After displaying a “compilation-buffer” (in the sense of `ecb-compilation-buffer-p`!) in the compile-window of ECB. For the max. height of the enlarged compile-window see the option `ecb-enlarged-compilation-window-max-height`.
> - `after-selection`: Selecting the `ecb-compile-window` auto. enlarges it and de-selecting (means leaving `ecb-compile-window`) auto. shrinks it. Enlarging and shrinking the `ecb-compile-window` is done with `ecb-toggle-compile-window-height`. See also the documentation of this function!
> - `both`: The combination of 'after-display and 'after-selection.
> - `nil`: ECB fixes always the height of the `ecb-compile-window` at the value of `ecb-compile-window-height`.

> To restore the ECB-layout after such a buffer-enlarge just call `ecb-toggle-compile-window-height` or `ecb-redraw-layout`.

— User Option: compile-window-width

> Width of the compile-window.

> Possible values are `frame` and `edit-window`. With `frame` the compile-window looks like:

>                -------------------------------------------------------
>                |              |                                      |
>                |  Directories |                                      |
>                |              |                                      |
>                |--------------|            edit-window(s)            |
>                |              |                                      |
>                |  Methods     |                                      |
>                |              |                                      |
>                -------------------------------------------------------
>                |                                                     |
>                |                    Compilation                      |
>                |                                                     |
>                -------------------------------------------------------

> With `edit-window` the compile-window looks like:

>                -------------------------------------------------------
>                |              |                                      |
>                |  Directories |                                      |
>                |              |                                      |
>                |--------------|            edit-window(s)            |
>                |              |                                      |
>                |  Methods     |                                      |
>                |              |                                      |
>                |              |---------------------------------------
>                |              |                                      |
>                |              |            Compilation               |
>                |              |                                      |
>                -------------------------------------------------------

> This option takes only effect if `ecb-compile-window-height` is not nil!

— User Option: change-layout-preserves-compwin-state

> Changing the layout preserves the state of the compile-window. This is for example useful if the user toggles between several layouts (see `ecb-toggle-layout`) and wants to preserve the hidden-state of the compile-window.

— User Option: enlarged-compilation-window-max-height

> The max height of the compile-window after enlarging it. The max height of the compilation window after enlarged by `ecb-toggle-compile-window-height`. The following values are allowed:

> `best`:

> ECB fits the height of the compile-window exactly to the size of its current contents but never shrinks below the value of `ecb-compile-window-height` or enlarges over the half of the frame-height of the ECB-frame. The values of the options `compilation-window-height` and `temp-buffer-max-height` are taken into account dependent of the current `major-mode` of the buffer in the compile-window: If `compilation-mode` then `compilation-window-height` is used otherwise `temp-buffer-max-height`.

> `half`:

> 1/2 the frame-height of the ECB-frame

> Any number:

> Max height in lines. If the number is less than 1.0 the height is a fraction of the frame height (e.g. 0.33 results in a max-height of 1/3 the frame-height).

— User Option: scroll-other-window-scrolls-compile-window

> `scroll-other-window` scrolls always the compile-window. For all details about the scroll-behavior of `scroll-other-window` see the advice documentation of `other-window-for-scrolling`.