help-gnu-emacs
[Top][All Lists]
Advanced

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

Re: pop-up bottom window for temporary buffers


From: martin rudalics
Subject: Re: pop-up bottom window for temporary buffers
Date: Wed, 23 Feb 2011 08:21:49 +0100
User-agent: Thunderbird 2.0.0.21 (Windows/20090302)

> I would like to have a pop-up bottom window for temporary buffers like
> compilation, Completions, etc. It should split-vertically the whole
> frame even if root window was split horizontally.
> For example: Before M-x compile:
>
> +------+------+
> |      |      |
> |      |      |
> |      |      |
> +------+------+
> After:
>
> +------+------+
> |      |      |
> +------+------+
> |             |
> +------+------+
>
> I.e. it should be something like ecb-compilation-window, but without
> ECB because I don't want to use ECB and CEDET. Actually I see two ways
> to make described behavior but both have their drawbacks.
>
> 1) Use split-root.el or popwin-el modules.
> Drawback: they use delete-other-windows function and then rebuild
> previous windows tree after root window is split as required. They
> invalidate all references to existed earlier windows in your code(or
> code of any module).

In fact these also break overlays with a window property.

> For example it's hard to make elscreen module to work with
> them(because elscreen saves current-window-configuration and then
> creates another one).
>
> 2) Set window-min-height variable to its minimal possible value(1) and
> call split-window-vertically during emacs startup minimizing window
> height after it's created. Then use this window for temporary buffers
> setting its height as required.
> Drawbacks: Small annoying window with annoying modeline on the bottom
> of the frame, doesn't work with emacs --daemon.

You can get rid of the modeline but you can't get rid of the one-line
window because Emacs doesn't allow zero height windows.

> Are there more elegant ways to do that without drawbacks?

If you have bazaar installed try doing something like

bzr branch bzr://bzr.savannah.gnu.org/emacs/window-pub window-pub

Then you can pop up an arbitrary number of windows on any side of a
frame.

martin



reply via email to

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