May I Recommend EWM

  • This post is written for Emacs carnival of May 2026. If you're new to this site, FYI I go by Zororg in emacs chat/universe.

Emacs along with being a text editor, is a battery included software that does more things and architecturally well designed (thus no rewrite last strong). Emacs has good (in-fact powerful) window management, everything as buffer system, self documenting, extensible (upto human brain, maybe DNA?) and every user's Personal development environment.

If you've been a proficient emacs user, you had eventually thought of using emacs to replace tools as well, coming down to only requiring [Emacs, Browser and terminal] in an OS of your choice. This has been many users experience, phrasing as "Emacs for everything" and eventually it being the OS itself.

Even as I was dealing with this experience, I really wanted an Emacs Window Manager, I had used EXWM in X11 way back and was not fully convinced on it (this was before minad took over maintaining emacs-exwm). We really needed it for wayland side, although there was a proposal and some work initiated in 2022 via emacs conf talk, there was no progress. Out of the blue the day came where ezemtsov had posted on r/emacs introducing EWM (use reddit domain if redlib does not work). Its niri inspired WM, and uses smithay library and works similarly.

After it was announced there seems to be another brain-coded emacs window manager using new river protocol (v4) called reka. I tried to compile but was discouraged as reka did not seem featureful and ewm already satisfied me a bit.

Although its pretty minimal it does not ship with every feature niri has. Eventually I made the switch and boy-o-boy it worked well and was pretty stable. I've been daily driving EWM without much issues (although I've opened some issues for enhancements), but basic functionality works, and more than all, its Emacsy!

Emacs already has next-buffer - previous-buffer and tab-next - tab-previous for tabs (workspaces in EWM) to navigate quick. Although consult-buffer is way more quicker. After using ewm I discovered consult has consult-preview-excluded-buffers, and thus I just append all side window buffer to exlude preview, but preview can be so helpful with apps to quickly scan if you've more.


Fig: EWM setup with Noctalia shell while writing this blog post. Left is org mode capture buffer, top right is glide browser showing EWM repo and bottom right is foot terminal running hugo server.
Fig: EWM setup with Noctalia shell while writing this blog post. Left is org mode capture buffer, top right is glide browser showing EWM repo and bottom right is foot terminal running hugo server.

I was using vicinae (raycast in linux) launcher as well, but since most of it can be done in emacs itself, I replaced launching apps/scripts in emacs itself by using call-process or start-process,

You might be interested in reading my EWM config to get more idea. Scroll down to see all functions, I grab firefox history via sqlite-select and show in completing-read to insert a link (Emacsy).

Thanks to emacs window management, every apps (browser, terminal) can be managed as Emacs buffer itself. All I see is emacs frame, and I work in Emacs as its my WM itself now. Now my whole session can be even more customized (embrace Elisp), Emacs (EWM) is DIY Desktop Environment or WM or simply just Emacs itself (what is emacs now?). I no longer quit/leave emacs, if I'm leaving that means I'm shutting down my machine down ;-)

May I also Recommend Glide browser for emacs keymappings

Glide browser came to lobste.rs news and showcased as firefox-fork being keyboard centric, and I was badly looking for qutebrowser enhancements with addons. And I made the switch and config was pretty easy.

Glide supports various firefox API and in browser many Web API can be used in config itself. I've remapped all keybindings to Emacs style and have extended glide with some qutebrowser & nyxt features to make it completely productive & efficient browsing experience.

Yes, I can do M-x, C-x C-s to make it work as I wanted. Swap C-c to M-w (yes possible).

Here's the discussion thread I raised for Emacs bindings.


[2026-07-29 Wed]

Ezemtsov has made a fork of emacs with pure wayland backend, with no gtk or cairo toolkit. As I was very excited on this, I immediately jumped and built it with no toolkit.

For context, initially he used Skia instead of cairo on top of PGTK and I was using it as well, the input delay and lags reduced a bit and was comparivetly faster since it used GPU compared to just Pgtk, but now with pure wayland (pwayl , (pwayl-skia-gl-enabled-p) => t), its more snappier and faster. Almost feels like native WM and not emacs.

There is no delay in anything whatsoever and ezemtsov was genuine to fix a reported issue ASAP as well. TBH it has elevated the EWM experience more folds and I might finally remove Niri and MangoWM that I had it installed and yet haven't opened it for >3 months (really!).

I must say these days I'm not tinkering anything, and just use emacs with matured config of mine and day to day has been either emacs for notes/task and glide browser for being on Internet.


This post might see update as I think of extending.

References

  1. battery included softwarekarthinks.com
  2. emacs-exwmgithub.com
  3. 2022 via emacs conf talkemacsconf.org
  4. ezemtsovcodeberg.org
  5. r/emacs introducing EWMredlib.catsarch.com
  6. new river protocolisaacfreund.com
  7. rekacodeberg.org
  8. I've opened some issuescodeberg.org
  9. vicinaegithub.com
  10. reading my EWM configgithub.com
  11. lobste.rs newslobste.rs
  12. discussion thread I raised for Emacs bindingsgithub.com
  13. fork of emacscodeberg.org
  14. pure wayland backendcodeberg.org
  15. a reported issuecodeberg.org
  16. Nirigithub.com
  17. MangoWMgithub.com

Leave a comment