martin rudalics writes: >> Ok, so cycle-windows is like other-window, expect you stay where you >> are, and the windows move for you. > > So is it essentially 'window-swap-states' for N windows? Yeah, kinda >> So say if yuo had window A selected in the first scinario, window C >> would be selected in the second. > > Wouldn't that be confusing? I type into window A, cycle windows, and > continue typing into window C? That's the point. Imagine if buffers B and C contain long lines of code, and sometimes you need to edit them, and other times you need to look at a tiny section of theirs while editing A. With this function, instead of other-window, you bring B to the big window where A is at, for more convinent editing. >>> This is 'window--atom-check' at work while the window structure is yet >>> incomplete. An atomic window must contain at least two windows. Please >>> try with adding the below two forms >> >> I don't understand how this is going to fix it. The source of the error >> was that the window-atom parametor was not getting transferred >> proeprlty. > > The parameter was reset by 'window--atom-check' because it found only > one atomic window which doesn't make sense. Did you try what I said? > Ok, I see what happen. I found a simpler way to fix it: If we already have list of previously atomic root windows, why not just make them atomic again? I also fixed some of the cycle-windows code, when it wasn't properly working under C-u in which it only rotated subtree. Right now, I feel the code is in a pretty complete state.