[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