Workspaces are being put on the wrong monitors
I have my workspaces set up like this,
bspc monitor DisplayPort-1 -d 1 2 3 4
bspc monitor HDMI-A-0 -d 5 6 7
bspc monitor HDMI-A-1 -d 8 9 10
Which works, except HDMI-A-0 is getting workspaces 1 2 3, and DisplayPort-1 is getting 4 5 6 7. Adding bspc monitor DisplayPort-1 -s HDMI-A-0 to my bspwm config fixes it temporarily, until i turn off both monitors, and then turn them back on. after that, its broken again, and either what i explain prior happens, or, after running bspc monitor DisplayPort-1 -s HDMI-A-0 again, all workspaces are put on DisplayPort-1.
Does changing the order of your monitors fix the problem?
bspc wm -O DisplayPort-1 HDMI-A-0 HDMI-A-1
Does changing the order of your monitors fix the problem?
bspc wm -O DisplayPort-1 HDMI-A-0 HDMI-A-1
Yes, it does! however, it breaks when i turn the monitors off, and i have to re-run it once they are all back on. What does the order actually signify/do?
I think bspc monitor <mon> -d 1 2 3 4 only gives names (to use in polybar for instance), but the actual order is defined by bspwm wm -O <mons>, to use with bspc commands like sending a window to a certain desktop. This is probably because you can give whatever name you want to desktops, like roman numerals.
As for it breaking when you turn the monitors off, I have no idea why that would happen. One fix I can think of is to use some kind of script to detect when a monitor is turned on, and to then run the bspc wm command when that happens. I think it can be done with udev rules or acpi events.
Hi @ShaunTheQuietGamer, did you find a good working solution? I'm experiencing exactly the same issue as you, and apart from all kinds of xrandr contortions and bspc wm commands launched manually, which gives (to me) wholly unpredictable results, I am completely in the dark as to how to automate the procedure...
Sorry, way late responding to this, I suspect you'll have found a solution by now. Unfortunately, if this is still an issue, the only solution I have is a "just use windows" kind of answer; I've switched to using https://github.com/swaywm/sway now.
As this hasn't had any activity in over 2 years and it's irrelevant to my setup, I'm going to close this issue. Feel free to re-open it if needed.