emacs-devel
[Top][All Lists]
Advanced

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

Re: Windows' "split status"


From: monnier
Subject: Re: Windows' "split status"
Date: Tue, 10 Jan 2012 14:05:22 -0000
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.0.91 (gnu/linux)

>> But I think this result is just a consequence of the implementation
>> rather than actual intention.  My impression is that window-nest is
>> trying to solve a problem which can't be solved with a user-config: it's
>> trying to provide some kind of way for elisp packages to use parent
>> windows as a form of "very lightweight sub-frame", without touching much
>> of their code (e.g. without making their code use parent windows
>> explicitly).
>> IIUC the use of window-nest for that purpose only works if the
>> application limits itself to using 2 windows within that "sub-frame",

> What makes you think that?

Are you saying that my description of the intention behind window-nest
is wrong?  Or are you only saying that the "at most 2" limitation is not
really true. while everything else is right?

I don't actually know what was the intention behind window-nest, so
confirmation would be welcome.

> You can let-bind `window-nest' to t around a
> split and get an extra parent around the resulting two windows.  After
> that you can split those windows any which way you want and can get an
> arbitrary number of windows within a "sub-frame".  The manual explicitly
> uses the term "always" in the sentence

That sounds like a rather round-about way to do things (because you have
let-bind the var around some parts of he code, but not all): wouldn't it
be easier to start with "create a parent window" (which would start
containing only the selected window) an then proceed to split it the
usual way.  That would save you from using let-binding.

> `window-nest' is aimed at providing a safe low-level mechanism to
> construct and preserve parent windows.  Everything else can be easily
> built in Elisp on top of that, like atomic or side windows.

If it's a low-level mechanism, why is it a defcustom, then?
If it's aimed at "construct and preserve", why is it a variable, rather
than a function?


        Stefan



reply via email to

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