emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: patch for optional inhibit of delete-other-windows(IDE feature)


From: klaus.berndl
Subject: RE: patch for optional inhibit of delete-other-windows(IDE feature)
Date: Tue, 29 Apr 2008 14:13:53 +0200

address@hidden wrote:
> Heres a new version of the patch. New stuff:
> 
> - The interface is now an alist tied to the window.
> I think Stefan prefered this.
> 
> acessors:
> set-window-parameter
> window-parameter
> 
> - set "pin" to t, and the window will not go away on
> delete-other-winows 
> - set "group" to something, and all windows with the same value will
> be considered in the same window group, which affects other-window for
> instance.
> 
> - I also have some hackish elisp code to show how the interface works.
> 
> This is all only lightly tested, but looks IMHO promising.
> 
> Issues:
> 
> - I didn't adress Klaus concern with switch-to-buffer yet, I'm not
> sure how to proceed there.

maybe by an `switch-to-buffer-function' but i'm not sure...
I wrote in another posting that switch-to-buffer was one of the most
important advices in ECB; this is not correct - the advice of `display-buffer'
is at least equally important because it is needed to display all
stuff like help-buffers etc. automatically in the compile-window.

Here is small comment from ecb-layout.el:

;; This advice is the heart of the mechanism which displays all buffer in the
;; compile-window if they are are "compilation-buffers" in the sense of
;; `ecb-compilation-buffer-p'!
;; We do not use `display-buffer-function' but we just handle it within the
;; advice, because otherwise we would have to implement all window-choosing
;; for ourself and with our advice we just "restrict" the windows
;; `display-buffer' can use (by setting the not choosable windows temporarly
;; dedicated) but the real choosing-task is done by the function
;; itself - this is much better and smarter than implementing the whole stuff.

So displaying some buffers in certain windows automatically is very important
for a tool like ECB...of course there are hooks like `display-buffer-function'
which could be used instead of an advice but as described above (see the 
comment)
this implies to reimplement all standard window-choosing-stuff again which
is a bad idea and superfluous...

So what i'm still missing in the core-functionality of Emacs is a good
and smart concept to 'redirect' displaying certain buffer to certain windows.

> 
> - I broke an optimization, marked as FIXME in windows.c. It doesnt
>   look especially important so I wont not spend time on it until
>   everything works properly.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]