Is there a good way to manage multiple windows in a large frame?
I usually have one large frame, split into many windows, and I find that when I (or some command) visits a buffer, the choice of window that will display the buffer is somewhat random. Sometimes it chooses a window that I'd like to keep its current buffer, sometimes it makes a new window, etc. All reasonable behaviours, but a bit annoying.
The only resources I've found are display-buffer-alist
and set-window-dedicated-p
, but they are not very convenient. For example, if I make a window dedicated, then I can't make it show a different buffer without undedicating it by hand.
On the other hand, I can use display-buffer-alist
to decide whether a buffer should make a new window/frame, or reuse or split some window, but it's difficult to control which window it uses. It mostly seems the use the least recently used window, but that's not a meaningful heuristic for my setup because I can easily have multiple important windows that I look at, but don't interact with.
Any suggestions?
ido
for quick switching), the switched-to buffer appears in the same window from where I initiateC-x b
. Also, I didn't understand what you mean by "Sometimes it chooses a window that I'd like to keep its current buffer, sometimes it makes a new window, etc.". You can tryace-window
if you want to jump to a particular window.magit-status
is especially common, also trace output, backtrace, compilation output), and those buffers have to go in some window somewhere,C-x b
is not the only way to switch to a new buffer. I don't understand what's unclear about the second quoted sentence: it reuses an existing window that I would not like to see reused.C-x b
. Are you sure you are switching buffers and not creating new buffers?magit
buffers that was bothering me when being created.