Node:The edit-window, Next:Temp- and compile-buffers, Previous:Using the keyboard, Up:Usage of ECB
ECB offers you all what you need to work with the edit-window as if the edit-window would be the only window of the ECB-frame.
ECB offers you to advice the following functions so they work best with ECB:
other-window
delete-window
delete-other-windows
delete-windows-on
split-window-horizontally
split-window-vertically
split-window
display-buffer
switch-to-buffer
switch-to-buffer-other-window
other-window-for-scrolling
The behavior of the adviced functions is (slightly simplified):
ecb-compilation-buffer-p
will be displayed in the
compile-window.
ATTENTION: If you want to work within the edit-window with splitting
and unsplitting the edit-window(s) it is highly recommended to use the
adviced-functions of ECB instead of the original Emacs-functions (see
above). Per default ECB advices all of the functions mentioned
above but with the option ecb-advice-window-functions
you can
customizes which functions should be adviced by ECB. Please read
carefully the documentation of this option!
Another interesting option in the context of the edit-window and these
adviced functions is ecb-layout-always-operate-in-edit-window
!
This section describes for every adviced window function (s.a.) how it
differs from the original version. Only the differences are mentioned,
so if you want the full documentation of such a function call
describe-function
or C-h f.
other-window ARG &optional ALL-FRAMES | Command |
Around-advice ecb : The ECB-version of other-window .
Works exactly like the original function with the following
ECB-adjustment: The behavior depends on
ecb-other-window-jump-behavior .
|
delete-window &optional WINDOW | Command |
Around-advice ecb : The ECB-version of delete-window .
Works exactly like the original function with the following
ECB-adjustment:
If optional argument WINDOW is nil (i.e. probably called interactively): If called in a splitted edit-window then it works like as if the two parts of the splitted edit window would be the only windows in the frame. This means the part of the splitted edit-window which contains the point will be destroyed and the other part fills the whole edit-window. If called in an unsplitted edit-window then nothing is done. If called in any other window of the current ECB-layout there are two alternatives:
If optional argument WINDOW is a live window (i.e. called from program): If WINDOW is an edit-window then this window is deleted, otherwise an error is reported. |
delete-other-windows &optional WINDOW | Command |
Around-advice ecb : The ECB-version of
delete-other-windows . Works exactly like the original function
with the following ECB-adjustment:
If optional argument WINDOW is nil (i.e. probably called interactively): If called in a splitted edit-window then it works like as if the two parts of the splitted edit window would be the only windows in the frame. This means the part of the splitted edit-window which contains the point fills the whole edit-window.
If optional argument WINDOW is a live window (i.e. called from program): If WINDOW is an edit-window then this window is maximized (i.e. the other edit-window is deleted), if WINDOW is an ecb-window then only the other ecb-windows are deleted and in all other cases an error is reported. |
delete-windows-on BUFFER &optional FRAME | Command |
Around-advice ecb : The ECB-version of delete-windows-on .
Works exactly like the original function with the following
ECB-adjustment:
An error is reported if BUFFER is an ECB-tree-buffer. These windows are not allowed to be deleted. |
split-window &optional WINDOW SIZE HORFLAG | Command |
Around-advice ecb : The ECB-version of split-window . The
meaning of WINDOW must be one of the edit-windows of ECB
otherwise an error is reported. If the edit-window is already splitted
then nothing will be done. Besides this (e.g. called for a window in
another frame than the ecb-frame ) it behaves like the original
version.
|
split-window-vertically | Command |
Around-advice ecb : The ECB-version of
split-window-vertically . Works exactly like the original
function with the following ECB-adjustment:
Called in an unsplitted edit-window then the edit window will be
splitted vertically. If called in an already splitted edit-window then
nothing is done. If called in any other window of the current
ECB-layout it stops with an error if this function is not contained in
|
split-window-horizontally | Command |
Around-advice ecb : The ECB-version of
split-window-horizontally . Works exactly like the original
function with the following ECB-adjustment:
Called in an unsplitted edit-window then the edit window will be
splitted horizontally. If called in an already splitted edit-window
then nothing is done. If called in any other window of the current
ECB-layout it stops with an error if this function is not contained in
|
display-buffer BUFFER &optional NOT-THIS-WINDOW FRAME | Command |
Around-advice ecb : Makes this function compatible with ECB if
called in or for the ecb-frame. It displays all buffers which are
"compilation-buffers" in the sense of
ecb-compilation-buffer-p in the compile-window of ECB. If the
compile-window is temporally hidden then it will be displayed first.
If there is no compile-window ( If called from outside the edit-area for a non-"compilation-buffers"
(s.a.) then it behaves as if called from within an edit-window if
If called for other frames it works like the original version. |
switch-to-buffer BUFFER &optional NORECORD | Command |
Around-advice ecb : The ECB-version of switch-to-buffer .
Works exactly like the original but with the following enhancements
for ECB:
"compilation-buffers" in the sense of
If called for non "compilation-buffers" (s.a.) from outside the
edit-area of ECB it behaves as if called from an edit-window if
|
switch-to-buffer-other-window BUFFER &optional FRAME | Command |
Around-advice ecb : The ECB-version of
switch-to-buffer-other-window . Works exactly like the original
but with some adaptions for ECB so this function works in a
"natural" way:
If called in any special ecb-window of the current ECB-layout then it goes always to the first edit-window and then goes on as if called from this edit-window. If a compile-window is used (i.e. If called from within the compile-window then "compilation-buffers" will be displayed still there and all other buffers are displayed in one of the edit-windows - if the destination-buffer is already displayed in one of the edit-windows then this one is used otherwise it behaves like the original. If called within an edit-window it behaves like the original function except for compilation-buffers (if a compile-window is used, see above). |
other-window-for-scrolling | Function |
Around-advice `ecb': This function determines the window which is
scrolled if any of the "other-window-scrolling-functions" is called
(e.g. scroll-other-window ). If edit-window is splitted, point
stays in the "other" edit-window and there is no durable
compilation-window then always the first edit-window is chosen.
|