| I used EXWM for a pretty long while, and I liked it OK, but had similar experiences to you. Eventually moved over to i3wm, and will eventually move over to Sway whenever the chip shortage lets up and I can get a better graphics card. What I found out: - i3's config system is pretty extensible, and I was able to port over the majority of the shortcuts I wanted without too much trouble. - I thought it would be annoying to have configs in two places, but because my Emacs config changes very rarely, and because my i3 config is the same and also changes pretty irregularly, it turns out it's actually not that big of a problem to duplicate setups when I want to add something. Once a setup is stable, optimizing for keeping it in a particular form can sometimes be a lot of work for very little payoff, because you don't spend a lot of time updating it or debugging it in the first place. - EXWM's keyboard interception (particularly with evil mode) turned out to be not quite as good/low-latency as I needed it to be? And that meant that a lot of the benefits of "one set of bindings/commands everywhere that just works" were a little overstated in practice during daily use. - On that note, you bump into the problem that stuff like your "save document" shortcut might not actually be very universal, because it's not enough to have your window manager recognize that, you also have to have the program recognize it. And it ends up getting kind of cumbersome to figure out the mappings/scripts you need for each piece of software you have installed (or at least it was for me). Again with the optimization question above, most of the work to keep my keybindings consistent ends up being with applications, not with the window manager. - Some just general bugginess around some stuff like floating windows that were probably at least partially the result of my config. - The single-threaded nature of Emacs was a problem, even though people told me it wouldn't be. Freezing your window manager because you run a terminal command incorrectly feels bad. It was still usable, I was able to get work done on the machine, it was fine and I liked it at the time, I wasn't unhappy. But I've noticed that I spend a lot less time doing maintenance/setup now that I'm using i3, I have far fewer freezes/crashes, and I'm finding that this setup is able to replicate most of the other stuff I care about. There are a few things I miss, but not enough to go back. |
EXWM has a few issues like freezing, buffers vanishing into thin air, applications that use multiple windows or fullscreen not being displayed properly. It's developer also vanished around a year ago, it is barely maintained. It is not perfect, but it is powerful. Mucking around in text files, C and shell scripts to replicate my setup would be painful.