On 03/03, Eric Abrahamsen wrote:
> One note, which might be close to a bug report. My interpretation of my
> last issue (where there was a horizontal split I couldn't get rid of) is
> this: in horiz/vert split situations, an empty split will disappear --
> as the video notes, that's how you "get rid of" split levels. What I
> think I was seeing, though, was that if the layout was in tabbed mode,
> the empty split didn't actually disappear. It only disappeared when I
> hit mod-e to change the layout to horiz/vert.

If I'm understanding you correctly (I may not be :P ), what you're seeing isn't
really an "empty split:" when an existing tab in a container container is split
into a new layout, a new container is nested within it. That container is the
child of the tabbed container it rests in, and is the parent of any windows you
open within it. That nested container remains where it is until you take some
action that removes it, such as changing the layout of the nested container's
parent or moving the only open window in the nested container to a different
container or just plain closing the window. i3 layouts adapt in different ways
depending on the series of actions the *user* takes on individual windows and
groups of windows; you'd have to have taken some action to do away with that
nested container.

My advice for getting a grasp on how i3 works is to use nested containers as
rarely as possible, at least from the start. This keeps things managable---it
avoids situations in which you end up with windows nested so deeply in a layout
that doing anything to one window has effects on all of them. I tend to work
using two or three top-level containers per workspace, and set those containers'
internal layouts based on my needs.  For example, as I write this I'm taking a
break from a research project, and my layout looks like this:

1) One stacked container on the left half of the screen, containing a web 
browser and
PDF reader

2) One container on the right half, containing only a Vim session with my notes
and taking up about 70% vertical space

3) One tabbed container on the right half below the Vim window, containing a
shell instance, file manager and music player, taking up the remaining ~30% of
vertical space

Arranged in that way, with six windows spread across three top-level containers,
I can move, resize or close any one window, and while the parent containers
would change size with the windows, the container properties would otherwise be
unchanged. I could acheive the same thing by creating a series of splits, but I
don't like mucking around with branch after branch in a complex data tree. I 
simply
prefer to work at the container level, but I think if you wade into the shallow 
end
of basic container management like this you can get a feel for how i3 handles
windows before heading into the deep end. ;)

-- 
"A common mistake that people make when trying to design something completely
foolproof is to underestimate the ingenuity of complete fools." - Douglas Adams

Reply via email to