←back to thread

Bare Metal (The Emacs Essay)

(waxbanks.wordpress.com)
197 points hpaone | 3 comments | | HN request time: 0.632s | source
Show context
frou_dh ◴[] No.45654853[source]
To me the charming thing about Emacs is how introspective a program it is. This goes beyond all the documentation being built-in, and being able to redefine things on the fly. For instance, it's easy to define a keybinding that does "Take me to the source code of the command that's bound to the next keybinding I type". When you use that and land at a destination, it will probably be Elisp code, but in some cases will even be C code - it works either way.
replies(2): >>45657115 #>>45667121 #
skeezyjefferson ◴[] No.45667121[source]
I have never once thought Visual Studio needs some way to edit its own source code on the fly... whats the actual use case?
replies(2): >>45668958 #>>45669918 #
1. iLemming ◴[] No.45669918[source]
Yeah, before Emacs, it never occurred to me to even think of trying to control my browser from my editor.

I never thought that I can type just about any text, not in the input box of some app, but in my editor - with Emacs, if I need to type anything longer that three words - in Slack app, Zoom chat, browser window, etc., I'll do it in my editor, why have I never thought about this before?

Emacs has no business of taking screenshots, yet I use it to do just that - I'd insert a screenshot while taking notes, OCRing the text out of image when desired.

Before Emacs, I never thought of playing and controlling videos from my editor or driving my WM from it - I simply never thought how advantageous could that even be.

I can't really use anything else without feeling constrained specifically because [mostly] nothing else allows me to type some Lisp in just about any buffer, evaluate it in place and immediately affect not only my editor but any computational aspect on a local or remote machine.

In essence, Emacs is a mindset. Non-Emacs folk often don't see the "actual use cases" because their minds operate on a different plane. And for some, once they crack open that door of possibilities, there's really no turning back.

replies(1): >>45681862 #
2. skeezyjefferson ◴[] No.45681862[source]
> Non-Emacs folk often don't see the "actual use cases" because their minds operate on a different plane.

youve just listed a bunch of scripts launched from emacs. with your logic, you can take the lisp interpreter out of emacs, stick it into say mspaint, and have an equally powerful program.

replies(1): >>45682554 #
3. iLemming ◴[] No.45682554[source]
Yes, it may sound like that to someone unacquainted with it. But have you ever thought about the reasons why Emacs remains relevant and triumphant even half a century later?

Here's really fascinating stuff: I can start a fresh new instance of plain, vanilla, clean-slate instance of Emacs; then open a scratch buffer and piece-by-piece rebuild my entire configuration, consisting of a dozen thousand lines of customizations; install third-party packages that bring hundreds of thousands of their own code; I can do that by evaling every expression one-by-one without not only having to restart Emacs even once, but even not needing to save that code anywhere. How many applications can you name that are capable of pulling a trick like that?

Sure, that may sound impractical, let me give you another, real-life example: I needed to change how Google Translate [extension] works - I wanted it to translate year denominations (to learn exactly how they spelled in a foreign language). Did I have to dig through the Google API docs? Nope. Did I have to write my own custom extension? Nope. Did I even have to re-implement the function that sends the payload? Once again, nope. I just had to precisely advise a single function and convert digits to words before sending the payload, something like eleven lines of code. And it took me no longer than fifteen minutes. Good luck trying something like that in pretty much any other editor.

So, yeah, getting exposed to that kind of power does change your mindset.