emacs-devel
[Top][All Lists]
Advanced

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

Re: Add function to rotate/transpose all windows


From: martin rudalics
Subject: Re: Add function to rotate/transpose all windows
Date: Sun, 29 Sep 2024 16:48:15 +0200
User-agent: Mozilla Thunderbird

> This is definetly a big hack.  The reason why this is needed is
> because the parent window might not actually be a window, it might also
> be another split, so it would have to recursivly descent find the first
> window.

Hmm... I seem to understand.  TransposeFrame uses the buffer of the
window it splits so there you have a lot of windows showing the frame's
selected window initially and eventually see them set to their original
buffers.  We want to set a window's final buffer immediately at the time
of splitting.

> The only real alternative I can see is that if toggle-window-split
> returns a list of spltis to do, and then they are mapped over and done
> by toggle-window-split one level higher.
>
> I'll look into how transpose-frame.el deals with this.

Note that TransposeFrame also may revert the cdr of the list it deals
with.  Back then the 'above and 'left values for SIDE were not known
yet.

>>>                                        (prog1 (cons e (window-edges e))
>>
>> On my maximized frame calling 'transpose-frame' repeatedly shrinks the
>> right/bottom windows until they cannot be shrunk any more.
>
> Hmm, show your window-tree (or the sequence of splits you did), I tested
> with a lot of splits and didn't find this problem.

I'll attach a capture of the "initial" split and the "final" split after
a couple of invocations of 'transpose-frame'.

martin

Attachment: initial.png
Description: PNG image

Attachment: final.png
Description: PNG image


reply via email to

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