this post was submitted on 09 Apr 2025
30 points (87.5% liked)
Linux
53087 readers
605 users here now
From Wikipedia, the free encyclopedia
Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).
Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.
Rules
- Posts must be relevant to operating systems running the Linux kernel. GNU/Linux or otherwise.
- No misinformation
- No NSFW content
- No hate speech, bigotry, etc
Related Communities
Community icon by Alpár-Etele Méder, licensed under CC BY 3.0
founded 5 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
This almost certainly doesn't help you, but I do this kind of interactive-computing-in-a-consistent-interface with Emacs.
Emacs has modes (think, extensions) to do all those things and more.
It can also be a global application (/arbitrary function) launcher as demonstrated in this post.
The only problem is you have to give Emacs your heart, or it won't work.
I've done lots of searching and Reddit comments about what makes Emacs so appealing. I think Emacs users like the specific ecosystem and things it offers and they put in the work to tailor it for them. Consistently is one thing I hear. Tell me ur thoughts.
I don't find anything appealing about it over Neovim + TUIs and keyboard navigation in GUI apps, including hints: https://github.com/AlfredoSequeida/hints.
Well, I started using Emacs because I was feeling limited by my Vim+Tmux-based workflow. Like you've heard from others, what convinced me was the consistency in interface, and the composability that enables.
Everything is a text buffer. When the text is drawn to screen, it might be resized, colored, hidden, replaced with images, etc, but it's all still just text. Because of that consistency of medium, all your interactions boil down to manipulations of that text.
What's important isn't the verbatim text, but what the text represents. It could be code (symbol, function, library, in any language, literately), prose (word, sentence, paragraph, or whole book), a file or directory, a button, a list, a foldable outline, a process, a container, a game tile, a typo, a secret, a git object, a pull request, the string you're looking for, a definition, a chat message, an RSS feed/item, a web page, etc...
Each of those has a mode (or modes) that makes interacting with those objects in a semantically meaningful way both efficient and composable (to varying degrees).
That's why Emacs devotees try to do everything in Emacs. Leaving Emacs means leaving that consistency and semantic expressiveness behind. In a CLI shell, yes everything is text, but it's comparatively raw. The best you can do is define variables and color it. TUIs bridge the semantic-meaning gap, but aren't composable with each other. (Same with GUIs, but because of administering remote systems I avoided them when possible.) You can't add functionality to htop without recompiling the whole thing. You can't pipe ncdu's results to rsync. Emacs is a live Lisp machine. You can redefine (or advise) any function on a whim, without restarting.
That's not even getting into how everything you do to improve interacting with text improves your experience with all those text-encoded objects. Completions can be filtered and ranked by different algorithms, lines can be "narrowed" to, it has an interactive regex builder, you can autofill with simple, intelligent predictions (like, what's under your cursor, or a prefix-matching word up-buffer), you can deeply integrate LLMs, reflow and pretty print, follow externally-edited files, transparently access remote resources...
I don't know. Obviously it's not for everyone, but using Emacs makes me feel liberated; in control of my software. I love it.
Thanks for giving me a soapbox and the opportunity to put my thoughts together.
This has gotta be the best explanation of Emacs' appeal I've seen yet, out of many.
emacs is truly magical. it's also one of those things that you don't know until you know. there is no equivalent