Live data from Hacker News

My I3-Emacs Integration

khz.ac

41–50 of 53 posts

Re: My I3-Emacs Integration

#41
post #32
post #6

I've started using ewm to get this kind of unification between emacs window management and non-emacs window management. https://codeberg.org/ezemtsov/ewm

"Writing a Wayland compositor from scratch is a staggering amount of work..." I switched to Wayland and sway about 2 years ago and it hasn't been bad, but this is the thing that makes me most sad about Wayland. X has so many different window manager options, it's like, an embarrassment of wealth. Wayland has like, 3 "finished" ones (if sway even counts).

it is sad, X11 had a suite of tools like xrandr that worked regardless of your wm/compositor but now with Wayland these tools are compositor-specific (or have to agree to a standard).

Re: My I3-Emacs Integration

#42
I have to mainly drive Windows 11 for work reasons so I use komorebi for a tiling window manager (highly recommended btw). I bet the ideas in this post can be applied in that environment too, gotta try it now, great idea

Re: My I3-Emacs Integration

#43

Side note: I am really enjoying HN today with the set of stories with personal hacks like this i3-emacs integration, someone's desk setup, someone's writer-deck laptop install, the kinda hilarious but also hecka geeky thermal ttrpg thingamabob, and the 16 byte wake up demo. Fun geeky stuff that isn't AI,and I love AI, but it ain't everything.

In my current favorite alternative HN frontend https://hcker.news, you can filter (include and/or exclude) posts by words found in the titles. There's _a lot_ of other customization options as well.

Re: My I3-Emacs Integration

#44
post #29

In case you don't understand the problem here, an emacs instance can be split into multiple "windows" and there are emacs key bindings to create and destroy these windows, move the "focus" from one window to another, resize the windows, etc. For many of us, this was our introduction to a tiling window manager experience before we'd ever heard of tiling window managers. When we switched to using a tiling window manage…

I can relate, finding myself pressing the wrong keybindings when moving between i3 and emacs windows. The idea in the post is interesting but I am not sure how I’m going to solve this. I have been thinking about trying EXWM or switch to another WM. Tried KDE but it didn’t have support for multiple workspaces in the secondary screen. And after using i3wm I found it difficult to get back to other WMs.

Re: My I3-Emacs Integration

#45
post #29

In case you don't understand the problem here, an emacs instance can be split into multiple "windows" and there are emacs key bindings to create and destroy these windows, move the "focus" from one window to another, resize the windows, etc. For many of us, this was our introduction to a tiling window manager experience before we'd ever heard of tiling window managers. When we switched to using a tiling window manage…

I'd be surprised if someone hasn't already solved this. I'm not an Emacs user myself but try searching for something like "seamless navigation site:github.com". I've seen several scripts/plugins to setup seamless navigation between i3/tmux, tmux/Vim, i3/tmux/NeoVim, i3/Zellij etc.

Recently I hacked together a Bash script for seamless navigation between i3 windows/tabs and Kitty windows/tabs using i3-msg, xdotool, jq, kitty's remote control sockets. Now if I only figured out how to add Helix windows into the mix...

Sometimes thinking outside the box helps. I've been able to unify a lot of keybindings by using a context aware remapping tool such as Keymapper (https://github.com/houmain/keymapper.

Re: My I3-Emacs Integration

#46
post #13

Ooo this is nice. I may have to try to get this working with my personal setup using Emacs and Sway. My long term vision is to make an Emacs implementation that is compatible only in philosophy. It would use Guile instead of Elisp, default to bindings that are more familiar to people coming from more modern systems, and would be built from the beginning with concurrency and graphics in mind. For now it remains a drea…

VSCode is pretty much this. But with typescript instead of Guile. After 30 years of Emacs, I switched .

Pfff... it's like my teenage daughter who's never driven a car brags to her friends how Mazda is better than Toyota, because "she switched".

"Using Emacs" means actively reading, writing, evaluating Lisp code. How many packages have you written? If not too many, I'm afraid, you're only "riding it", not "using" it, just like my daughter has been riding in one car and now in a different one.

There's a huge fundamental gap between Emacs and VSCode. In Emacs, the editor is the Lisp runtime. Every piece of the editor is a live Lisp object you can inspect, redefine, and compose at runtime. There's no boundary between "editor" and "extension" - they're all just functions and variables in the same image. VSCode doesn't offer anything remotely close to that.

Without understanding that gap, there's no understanding of what Emacs actually is. There's no "switching" between Emacs and an editor/IDE. "IDE" is a much smaller category than what Emacs actually is. You switched editors while not realizing you gave up something that isn't an editor.

Re: My I3-Emacs Integration

#47
post #29

In case you don't understand the problem here, an emacs instance can be split into multiple "windows" and there are emacs key bindings to create and destroy these windows, move the "focus" from one window to another, resize the windows, etc. For many of us, this was our introduction to a tiling window manager experience before we'd ever heard of tiling window managers. When we switched to using a tiling window manage…

Yep, I still find emacs' window management bindings more intuitive than any tiling window manager I've used. So much so that I thought naively that things like exwm would "solve" this problem for me. But in fact -- beyond being janky / single-threaded -- they don't really because you still end up with competing bindings. I think the more elegant model would be for the window manager to own all the window management k…

I got rid of the default bindings for my window manager and emacs…

So instead, I’ve made any keybinding with the Super key take ownership from the window manager, and ctrl-c * for emacs, but I’ve been thinking of binding the Hyper key to my keyboard so it’s one less level

Re: My I3-Emacs Integration

#48

Earlier quoted context omitted.

VSCode is pretty much this. But with typescript instead of Guile. After 30 years of Emacs, I switched .

Pfff... it's like my teenage daughter who's never driven a car brags to her friends how Mazda is better than Toyota, because "she switched". "Using Emacs" means actively reading, writing, evaluating Lisp code. How many packages have you written? If not too many, I'm afraid, you're only "riding it", not "using" it, just like my daughter has been riding in one car and now in a different one. There's a huge fundamental…

A bit harsh, but 100% on point. THIS is why emacs is fundamentally different to the core of what emacs is vs all other editors - you’re driving a Mazda, but you’re your own mechanics with that Toyota

Re: My I3-Emacs Integration

#49
post #35

I did the same integration with an Erlang daemon. All relevant key presses are sent to it and based on the current focused application the daemon does different things. I built an Erlang library i3_IPC to listen for events and send commands to Sway.

I'm curious; why Erlang?

Why not Erlang?

It's is great in everything which requires talking to and/or listening on a socket. It's amazing for writing and running daemons.

Re: My I3-Emacs Integration

#50

Side note: I am really enjoying HN today with the set of stories with personal hacks like this i3-emacs integration, someone's desk setup, someone's writer-deck laptop install, the kinda hilarious but also hecka geeky thermal ttrpg thingamabob, and the 16 byte wake up demo. Fun geeky stuff that isn't AI,and I love AI, but it ain't everything.

In my current favorite alternative HN frontend https://hcker.news , you can filter (include and/or exclude) posts by words found in the titles. There's _a lot_ of other customization options as well.

Dark mode? God finally

Edit: and PWA support! Woohoo!

Post reply on HN