Closed Joe23232 closed 4 years ago
IMO the main difference between i3wm and bspwm is how you control/configure them. Also as far as I understand i3 also has a hotkey daemon. Were as bspwm does not (I'm using sxhkd for that).
In bspwm you can change everything (al least everything that can be changed) on the fly with the bspc
command (the syntax takes some getting used to). That includes border gaps and moving windows etc. As long as your programming language can execute normal console commands you can control bspwm. As far as I understand the socket is only used to print events (e.g. when creating a new window).
You can also use any executable as external rules. This script is then called every time a new window is created and you can output e.g. if it should be floating. I just have a shell script for external rules but you could use any language for that.
@Lythenas THanks for that mate :)
bspwm has less bloat. No menu of any sort stands out as a main advantage. Sadly, this project hasn’t been active recently, and it fails to build with gcc10. There are even pull requests made to patch it for gcc10, but the author won’t merge them.
If you decide to go with bspwm, you should check out spectrwm. I’ve since moved on to using spectrwm and I like it very much. i3 has way too bloat IMO.
spectrwm
comes with bloat though, for example it comes with a taskbar though? And also with spectrwm
am I able to script it using any language that I like?
spectrwm has substantially less bloat than i3. You can disable the menu / taskbar by tweaking these settings the spectrwm config file.
# To disable validation of the above, free the respective binding(s):
bind[] = MOD+Shift+Delete # disable lock
# bind[] = MOD+Shift+Return # disable term
bind[] = MOD+p # disable menu
Once doing that, it’s identical in terms of minimalism as bspwm is. I’m not sure about your language options, but I’m sure you can configure it to your liking someway or another.
@shoober420 with spectrwm
would you happen to know by any chance if I can add this blue line at the top of the window?
It seems possible, but it’s hacky. https://www.google.com/amp/s/amp.reddit.com/r/unixporn/comments/2rmoiw/titlebars_in_bspwm_or_any_titlebarless_wm_is_it/
Keep it mind, bspwm and spectrwm are minimalist window managers. They are designed for users who DON’T want window decorations, in favor for more screen space. For example, I don’t need window decorations to close windows, I have keyboard binds for that. I do use a 1 pixel border for windows to help organize my terminals though.
If you find yourself wanting titlebars and window decorations, bspwm and spectrwm are not the best choice, and are geared toward true minimalism in favor of screen space.
What is the difference between
bspwm
andi3wm
as I am looking for the right tiling Window Manager?I also believe that
bspwm
does support sockets so I can use any programming language to modify its behaviour. If I feel the need to use a programming language to customise it even further, am I able to for example the border gap using the programming language in a high level manner?