baskerville / bspwm

A tiling window manager based on binary space partitioning
BSD 2-Clause "Simplified" License
7.61k stars 420 forks source link

Window splitting issue #1457

Closed astroshift closed 12 months ago

astroshift commented 12 months ago

In the readme, and from previous usage, I know that bspwm normally should tile like this:

+-----------------------------------+
|                |                  |
|                |        2         |
|                |                  |
|      1         |------------------|
|                |                  |
|                |         3        |
|                |                  |
+-----------------------------------+

Instead, I have a problem where the first tile splits vertically twice before it decides to begin a horizontal split. How could this be? Config is completely default, also using a fresh Arch install. Issue example:

+--------------------------------------------------+
|               |               |                  |
|               |               |        3         |
|               |               |                  |
|      1        |      2        |------------------|
|               |               |                  |
|               |               |         4        |
|               |               |                  |
+--------------------------------------------------+
ortango commented 12 months ago

automatic scheme defaults to longest_side. if you have an ultrawide monitor you probably have two windows wider then taller before the second split.

astroshift commented 12 months ago

@ortango I am using a basic 1080p monitor.

emanuele6 commented 12 months ago

The default automatic_scheme has always longest_side since automatic schemes have been configurable, nothing has changed. 385f73e576d4e5fdb09e5f6e77293503e01adf88

bspwm splits on the longest side of the focused (insertion) node. If you have resided the left window, and inserted a new window while it was more wide than tall, you will get a vertical split instead of a horizontal split.

If you don't want that and you want to alternate vertical and horizontal splits, simply change the automatic_scheme setting to alternate instead of longest_side:

bspc config automatic_scheme alternate

That is also the automatic scheme I personally use.

astroshift commented 12 months ago

@emanuele6 Thank you very much for the explanation. Not sure how I couldn't find this option in the documentation, but that makes it very clear. I remember it being like this default, but that was before 2018, so that is likely where my confusion comes from. Closing issue as it is now resolved.