[HN Gopher] Bare Metal (The Emacs Essay)
___________________________________________________________________
Bare Metal (The Emacs Essay)
Author : hpaone
Score : 162 points
Date : 2025-10-14 20:50 UTC (7 days ago)
(HTM) web link (waxbanks.wordpress.com)
(TXT) w3m dump (waxbanks.wordpress.com)
| billfruit wrote:
| While I still use emacs, I find that that despite the "batteries
| included" narrative about emacs, the things which are not
| included are causes of major frustration.
|
| Such essential functionality like grep-find and LSP servers which
| is required for out of the box auto complete are not bundled with
| emacs. Most modern IDEs/editors have these functionality baked
| in.
|
| If you install emacs for windows you find that grep-find doesn't
| work, because it depends on support from environment. A full text
| search should be built into the editor.
| internet_points wrote:
| I don't think lsp servers should be _bundled_ , they're often
| huge, and e.g. for haskell you need the one that matches your
| ghc version, so you'd need ..all of them? and they need to be
| kept up-to-date etc. There is an emacs LSP server package
| manager at https://github.com/deirn/mason.el though - maybe
| something like that could be included, and Emacs could suggest
| how to install an appropriate LSP server (and enable eglot). I
| know many of the old hackers bristle at this, but I think it
| should be possible to do some kind of helpful but non-intrusive
| hinting for new users (one can always `setq clippy nil`)
|
| They could at least change the default theme to one of the
| already-bundled modus-themes or something.
| billfruit wrote:
| Once we get a modern IDE like PyCharm or Intellij Idea, the
| auto complete is essentially built in, without needing to
| deal with installing LSP servers, clients, and their
| dependencies.
|
| Out of the box, project and context aware auto complete is an
| essential feature in a modern IDE.
| worthless-trash wrote:
| Except pycharm won't work with my erlang lsp.
| internet_points wrote:
| Last I checked, an IDE like Android Studio (based on IDEA)
| needs to download a hogshead of java before it can even
| begin to build anything. And if you switch compiler
| versions, it needs to download even more. Sure it makes
| installing java as easy as clicking a few buttons, and it'd
| be great if Emacs made it as easy, but still: it doesn't
| bundle every version. No one would have the drive space for
| that. And now consider that emacs has support for not just
| java/kotlin, but pretty much every programming language in
| existence..
| binary132 wrote:
| Emacs is not a "modern IDE" and expecting it to be one is a
| recipe for not only confusion and irritation but also for
| watering down the goodness that it really is.
| teddyh wrote:
| Why not instead blame Windows for not having the standard tools
| "grep" and "find"?
| positron26 wrote:
| The criticism makes sense when you consider that yeah, while
| posix tools are okay, needing them everywhere means you have
| something wrong in your programming ecosystem, and Elisp has
| many things wrong.
| mickeyp wrote:
| Emacs can easily work with non-posix tools. Many people use
| ag, ripgrep, or ack in lieu of grep. You change the command
| string Emacs uses for finding and grepping to your tool of
| choice.
| pjmlp wrote:
| UNIX standard tools, and not every operating system is
| supposed to be a UNIX clone.
|
| There are ways to search and grep files on Windows.
| teddyh wrote:
| Feel free to add the code to use something else by default
| on Windows: <https://cgit.git.savannah.gnu.org/cgit/emacs.g
| it/tree/lisp/p...>
| pjmlp wrote:
| Why should I bother, when I share James Gosling opinion
| regarding using Emacs on the 21st century?
|
| https://www.linuxtoday.com/developer/dont-use-emacs-says-
| jav...
|
| Given that was in 2008, I would update his remark from
| Netbeans, to any of JetBrains products, Eclipse or
| whatever.
|
| In any case, you can get those features using Windows
| Resource Toolkit on the old days, a mix of findstr and
| other similar improvements on Windows NT linage, nowadays
| Powershell will be enough.
| teddyh wrote:
| He's probabaly just salty that his commercial Emacs clone
| for Unix (with its terrible not-quite-Lisp extension
| language) never took off.
| positron26 wrote:
| WSL2. While it's a fair criticism, the underlying issue here is
| that there aren't enough Windows users who program and upstream
| things for individual users to get support. Lean on the Linux
| ecosystem and things are fine.
|
| The reason there aren't programmers targeting the large market
| is a tangent into why I'm building PrizeForge, but the answer
| now doesn't change.
| mickeyp wrote:
| What? Emacs has eglot built in. It has had native grep and find
| stuff for _decades_.
|
| https://www.gnu.org/software/emacs/manual/html_node/emacs/Gr...
|
| You can change the exec-path to point to your cross compiled
| grep tool --- or you can change the command string to your tool
| of choice.
| skydhash wrote:
| I think for grep in emacs, the only thing require is the
| interface:
|
| - result on standard output - path and line numbers on each
| line
|
| A lot of emacs reliance on other tools follow the same
| pattern. While the default is posix, it has enough options to
| twist it to fit whatever OS.
| internet_points wrote:
| parent is talking about the external dependencies, grep.exe
| and java and jdtls etc., and in particular how they need to
| be installed separately from Emacs
| pooyamo wrote:
| Do other editors and IDEs bundle-in these external language
| servers? I don't think so, unless they are specifically
| tied to the language like Eclipse or PyCharm
| kqr wrote:
| I think the mistake is looking at Emacs as an editor. It's an
| Emacs Lisp VM, and the editor that comes bundled with it is
| good, but not great. Fortunately there are many ways to improve
| it, and make it go beyond what other editors can.
| skydhash wrote:
| Emacs isn't battery-included. It's a platform for textual
| interfaces with a focus on text editing. It may not includes
| some tools, but if the tools works with text (at least on the
| standard in/out) hooking it in emacs can be done really
| quickly. More so if it's something that:
|
| - have result that can be formatted in a tabular fashion
|
| - do stuff with files then present some diagnostics (especially
| if errors and warnings are related to the files)
|
| - Have an REPL interface
|
| It's not preconfigured like VS Code, but it's much more
| versatile. Cursor having to fork VSCode is one such example. In
| Emacs, anything is just another package.
| pjmlp wrote:
| Define modern.
|
| IDEs with such capabilities were already available in the
| 1990's.
|
| I became an XEmacs user in the 1990's, because there was hardly
| anything better in UNIX systems.
|
| Remember, Emacs still lacked many niceties only available on
| XEmacs, and vim was yet to be invented.
|
| This is how old such IDE features have been available.
| bitwize wrote:
| XEmacs only came about because Lucid needed a front end to
| their IDE, Energize, which was extremely comprehensive and
| could even do "edit and continue" style development of C++ on
| Unix but, as jwz has it, the Unix community preferred its
| stone-knives-and-bearskins approach with command line tools.
| pjmlp wrote:
| Yeah, Solaris and NeXTSTEP were the only UNIXes that had an
| IDE tooling story from the vendors.
|
| Thanks to its origin, XEmacs also had for several years
| many graphical capabilities, that if I am not mistaken only
| landed on main Emacs during the late 2000's, by then I was
| back into IDE land.
| kragen wrote:
| I've never used grep-find or LSP, despite using Emacs for 32
| years. Maybe I should; is grep-find better than M-x grep?
|
| Apparently I've sometimes improvised an equivalent: "Run grep
| via find, with user-specified args COMMAND-ARGS. ... This
| command uses a special history list for its arguments, so you
| can easily repeat a find command."
|
| My out-of-the-box autocomplete is M-/, which works in
| environments where LSP doesn't, like writing English. It works
| sort of poorly in all of them, but I write production code
| slowly enough that my typing speed isn't close to being a
| bottleneck. It's more of a bottleneck when writing English, but
| even there, generally any of my good writing was good
| rewriting.
|
| Where I've found LSP-like functionality really useful in the
| past in IDEA and later Eclipse was not autocomplete, which is
| mostly an annoyance, but in automated refactoring (extract
| variable, extract method, inline method) and in rapidly
| iterating through the implementors of a method whose semantics
| I'm changing.
| PaulDavisThe1st wrote:
| To be fair, running grep from Emacs is a mistake - you should
| be using ag, or some other parallelized version of grep :)
|
| Ardour has around 800k lines of code, and ag (not even the
| fastest of the new greps) can search it all more or less
| faster than I can type.
|
| The idea of some system that analyzes/caches/indexes the code
| just isn't necessary anymore.
| kragen wrote:
| That seems reasonable, yeah. ripgrep, etc., are definitely
| faster.
|
| Somehow I never twigged that you wrote Ardour and JACK.
| Thanks for JACK! (My audio editing needs are very modest
| and so I haven't actually tried Ardour.)
| paddy_m wrote:
| I customized grep-find on my setup. I have a shell script
| so that it does the following (in typescript-mode)
|
| first search ts, tsx, js, jsx files in the current project.
| Exclude .git, node_modules...
|
| then search node_modules with the ts.. extensions, still
| exclude .git
|
| finally search the whole tree for .py files still exclude
| .git, /dist...
|
| This is coupled with consult-find-grep. I basically want to
| find a string in the most relevant file type. I never want
| a result from node_modules first in the results. It took
| some work, but the results are quite nice!
| kragen wrote:
| Oh, yeah, I wrote some Emacs Lisp that did that kind of
| project-specific thing for a Perl project I was working
| on for a couple of years in 02003 and 02004. One function
| key would search the whole project for occurrences of the
| identifier under the cursor, and another one would search
| for definitions.
| ubermonkey wrote:
| >If you install emacs for windows...
|
| ...you are a second class citizen in the emacs republic.
|
| I mean, I don't endorse this position, but it's the way things
| are.
| DonHopkins wrote:
| >If you install emacs for mac...
|
| ...you are a third class citizen in the emacs republic.
|
| In spite of the fact that you can't spell emacs without mac.
|
| Also:
|
| >If you install emacs for linux...
|
| ...you get flamed for not calling it gnu/linux.
| slowmovintarget wrote:
| Emacs for Mac is fine though?:
| https://github.com/jimeh/emacs-builds
|
| That build has native compilation, and if you go for a Doom
| install you may need to build ripgrep yourself, but...
| that's also not difficult.
| jpfromlondon wrote:
| they mean you live within the walled garden, that you are
| playing make-believe.
| ubermonkey wrote:
| That's not true, either, but I understand it's important
| for a certain sort of FOSS person to believe it anyway.
| DonHopkins wrote:
| Oh sweet summer child.
|
| http://xahlee.info/emacs/misc/emacs_macos_emoji.html
|
| Color emoji was deliberately disabled on macOS (2016):
| policy first, parity later. Emacs 25 turned off
| multicolor fonts on the Cocoa port even though they
| worked, with a NEWS note saying they'd be re-enabled
| "once it is also implemented in Emacs on free operating
| systems." This was widely read as a political parity
| requirement that penalized macOS users for years.
|
| https://www.gnu.org/prep/standards/standards.html
|
| "Prefer GNU/GNU-Linux" development time: an explicit
| guideline. GNU's own standards advise spending time on
| features "useful on GNU and GNU/Linux, rather than on
| supporting other incompatible systems." That guideline
| has often been cited in Emacs discussions to argue
| against platform-specific work that would land only on
| macOS.
|
| https://irreal.org/blog/?p=13137
|
| https://xenodium.com/emacs-send-to-aka-macos-sharing-
| merged-...
|
| macOS-only features face extra process friction, or must
| be generalized. The "send-to" (macOS Sharing) patch was
| finally merged in 2025 -- but only after a lengthy debate
| and a rework into a cross-platform framework to satisfy
| GNU policy concerns about adding features that target a
| non-free OS first. (The end result is good! -- but the
| path illustrates the extra hurdles for macOS-first work.)
|
| https://bitbucket.org/mituharu/emacs-mac
|
| Long-running reliance on mac-specific forks to get a
| polished UX. For years, many mac users have depended on
| Mitsuharu Yamamoto's Emacs Mac port (emacs-mac) or
| distributions like Aquamacs to get native scrolling,
| gestures, font/rendering tweaks, and other integrations
| that either lagged upstream or weren't accepted. The
| continued popularity and active maintenance of these
| forks reflects a gap in first-party mac attention.
|
| https://xlii.space/eng/emacs-the-macos-bug/
|
| https://news.ycombinator.com/item?id=44737676
|
| Recent high-profile macOS performance pathology
| highlighted as "non-primary platform" pain. In 2025, a
| widely-read analysis ("Emacs: The macOS Bug") traced
| severe jank/memory growth to how Emacs drives Cocoa's
| runloop (e.g., NSApp run usage inside the select/IO
| path), arguing that historical architecture -- plus macOS
| not being a primary target -- left deep issues
| unaddressed for years. Follow-on bug threads on emacs-
| devel discuss memory fragmentation and event handling.
| This is more engineering history than politics, but it
| shows practical consequences of platform de-
| prioritization.
|
| https://www.gnu.org/philosophy/applying-free-sw-criteria
|
| FSF position on non-free systems frames the culture. FSF
| materials repeatedly emphasize using and prioritizing
| free systems. Even where they explicitly say they didn't
| drop support for non-free OSes, the values signal still
| affects triage, reviews, and what maintainers feel
| comfortable merging first. This shapes outcomes like
| color emoji support and the review friction in the "send-
| to" patch.
|
| https://lists.gnu.org/r/emacs-devel/2012-07/msg00287.html
|
| https://www.gnu.org/software/emacs/manual///html_node/efa
| q/N...
|
| https://aquamacs.org/features/
|
| https://lists.nongnu.org/archive/html/emacs-
| devel/2008-03/ms...
|
| 2008-2010, the long, bumpy road to a native Mac port:
| During Emacs 23's cycle the old Carbon port was
| "completely broken ... for almost a year," and was
| ultimately removed when the new Cocoa/Nextstep port was
| merged. For years many Mac users relied on forks
| (Aquamacs, Mitsuharu's "Emacs Mac Port") for a smoother
| experience, reinforcing the "not a first-class target"
| vibe.
|
| https://www.reddit.com/r/emacs/comments/bek5b2/til_emacs_
| was...
|
| https://www.tuhs.org/pipermail/tuhs/2025-April/031758.htm
| l
|
| https://github.com/SimHacker/NeMACS/blob/main/src/config.
| h#L...
|
| RMS isn't only against Emacs on Macs and Windows. He also
| has some strong opinions about UniPress Software, who
| sold a version of Gosling's Emacs for Gosling's own NeWS
| window system, Apple Lisa, Mac, MS-DOS, Amiga, Xenix, SGI
| IRIX, Intergraph, xePIX, Northern Telecom, Cadmus, DEC
| Rainbow, VMS, VAX BSD, DECWRL Titan, TI Professional,
| Masscomp, Apollo, HP, Stride, AT&T 3B, System V, Gould,
| NBI U! ("Nifty Box"), Pyramid, Perkin-Elmer, Cray UniCos,
| and many other proprietary Unix systems.
|
| https://news.ycombinator.com/item?id=28419139
|
| >I worked at UniPress on the Emacs display driver for the
| NeWS window system (the PostScript based window system
| that James Gosling also wrote), with Mike "Emacs Hacker
| Boss" Gallaher, who was charge of Emacs development at
| UniPress. One day during the 80's Mike and I were
| wandering around an East coast science fiction
| convention, and ran into RMS, who's a regular fixture at
| such events.
|
| >Mike said: "Hello, Richard. I heard a rumor that your
| house burned down. That's terrible! Is it true?"
|
| >RMS replied right back: "Yes, it did. But where you
| work, you probably heard about it in advance."
|
| >Everybody laughed. It was a joke! Nobody's feelings were
| hurt. He's a funny guy, quick on his feet!
| ubermonkey wrote:
| Wow that's a wall of text proving pretty much nothing,
| other than that RMS is an out of touch goofball.
|
| As I and others have noted, actually using emacs on a
| Macintosh is dead easy. MacOS ships with an older
| terminal version, so you don't even have to download
| anything if you're fine with that distro. OTOH, multiple
| native build distributions exist and are a click away.
|
| I spend a good chunk of my day in a native build between
| text, scripting, and Orgmode, and, again, it's just not a
| problem. It's far easier, in fact, to use emacs on a Mac
| than on Windows precisely because MacOS is a unixy
| environment.
| DonHopkins wrote:
| It only proves nothing if you didn't bother reading it
| (which you words "wall of text" imply) and didn't check
| any of the links proving what I said. Instead of
| dismissing everything by handwaving, please tell me which
| specific points I made that you disagree with, and what
| is your evidence?
|
| How long have you been using Emacs, yourself? If you just
| got started a few years ago, then that excuses your
| ignorance of history (but not your unwillingness to
| learn), but there is a LOT of well documented history
| about Emacs on the Mac, and all those links you didn't
| bother following prove it.
|
| You can't win an argument by being ignorant of history,
| claiming tl;dr, and refusing to look at the evidence.
| That's just conceding my points by default. Can you do
| any better than that?
| slowmovintarget wrote:
| It feels like this changed roughly in the last five
| years. That's about how long I've been using Emacs on
| Mac.
|
| I'd mostly been using Sublime / Atom / Eclipse / Vim
| before that (and a long list of other IDEs and editors
| going back to Turbo Pascal 3.0 on IBM XTs). So perhaps
| I've not felt the same pain.
|
| I'm glad I can use Emacs at work (on Macs) and at home
| (on Linux). The funny thing is it's been easier to get
| Emacs up and running on Mac than on Linux. To get the
| latest stable Emacs I had to pull the source and build it
| myself (Ubuntu repos had old versions). On Mac it was
| just finding the right cask in Homebrew.
| DonHopkins wrote:
| >It feels like this changed roughly in the last five
| years.
|
| Hmm, that's about how long ago RMS got "canceled" and
| resigned from the FSF board (September 2019). Go figure!
| ubermonkey wrote:
| The point is that you came in here with a pasted wall of
| text with a whole bunch of urls claiming emacs users on
| MacOS are somehow 3rd class citizens because ... of
| things from long ago, I guess.
|
| My point, Don, is that these long-ago issues are now
| irrelevant. Your position here runs utterly counter to
| the lived experience of Mac emacs users.
|
| I don't care what RMS did in 2005. It's not relevant to
| using emacs on a Mac in 2025.
|
| I don't even need to care about the history of emacs on
| the Mac, or whatever other ill-advised chicanery the FSF
| has committed on this or any other point (and, not to put
| too fine a point on it, but at 55 I've seen plenty of
| goofy own-goals from that crowd).
|
| What matters now is "gee, how easy is it for a Mac user
| to access and use emacs productively?" That answer, for
| at least the last 8 to 10 years (which is also the answer
| to your gatekeepy question), has been "very!" You open
| terminal and type "emacs," or you download a build that
| runs as a gui from any of several maintainers. You're
| done.
|
| It's about as simple as it is to run it on a Linux box
| (which I also do), and far simpler than getting it to
| behave under Windows (and I have those scars, too).
|
| So what was your point again?
| tom_ wrote:
| My thoughts too. I've never had any real problems running
| it on Windows myself, but it doesn't feel like Mac users
| are any worse off.
|
| I've been using Mac Emacs since about 2010, so perhaps I
| dodged some of the worst stuff, and it's always felt -
| for good or for ill - very much the same as using it on
| Windows or Linux/X-Windows, both of which I've been using
| since 2005 or so.
|
| I've always used the standard GNU version rather than any
| specific Mac port. Over the years I'll have done some mix
| of downloading prebuilt binaries, building it from
| source, or getting the MacPorts version.
|
| Perhaps I have missed out on some Fancy Extra Mac Stuff,
| the sort of thing that would come as standard with any
| project that took the platform seriously, but it's never
| really felt like a problem. And indeed, I figure if I'm
| happy enough with it running on X-Windows and on Windows,
| why wouldn't I be just as happy with exactly the same
| thing on macOS too? A consistent (or near enough) cross-
| platform experience is part of why I use Emacs anyway.
| hirvi74 wrote:
| I've got another one for macOS. It's not as significant
| as what you listed, but it was extremely annoying for me.
|
| When using homebrew, the default package for emacs is
| version 30. However, that version on macOS was compiled
| with an outdated tree-sitter version (v14). If one tries
| to install a tree-sitter parser for a particular language
| it will not work with emacs 29 or 30 on macOS (or at
| least not that I could figure out). I tried the
| D12Frosted version and some of the alternatives for macOS
| (I forget the names).
|
| The current tree-sitter project is on v15+, so in order
| for it to work, one has to go through the commit
| histories for each language and find when the tree
| sitter's parser version was last compatible with v14. To
| my knowledge, this was not clearly listed in all the git
| commits in a nice clean manner.
|
| One alleged workaround was to install everything via
| RedHat OS and move the installed parsers over to macOS
| since their version of emacs and the tree-sitter parsers
| are still compatible. However, I was not interested in
| doing this.
|
| Interestingly enough, Neovim does not have this issue on
| macOS to my knowledge, but I could be wrong.
|
| Now, this is not entirely an emacs issue, but it does
| introduce an interesting issue. If emacs has to be
| compiled with a particular tree-sitter version, then it
| makes things quite difficult to maintain. The maintainers
| apparently are discussing various options on how to
| handle this going forward, but there isn't a clear way to
| work around this.
|
| Now, I do believe if one builds emacs from source, he or
| she can work around this issue to some degree, but I was
| also not interesting in doing this because one loses out
| on some of the nice features that the macOS focused emacs
| versions come with. I also did not want to install all
| the dependencies required to build from source since
| those dependencies are not something I have any other use
| for other than building emacs.
|
| So, I just gave up on the tree-sitter. Though, I think
| emacs 31 has this fixed until it happens again, but I
| also encountered a lot of other bugs when trying other
| use it since it's a prerelease version anyway.
|
| This was all months ago, so maybe things have changed. I
| haven't kept up. I can live without tree-sitter for the
| time being.
| ubermonkey wrote:
| I use emacs on a Mac and it is dead easy, so I'm not sure
| what you mean by this. I had to do nothing at all to make
| it work. It just worked.
| pton_xd wrote:
| I don't think I've ever heard emacs described as "batteries
| included" -- maybe more like "batteries available." If anything
| it has the opposite reputation, that doing anything requires
| extensive and continual config adjustments, which isn't
| accurate either.
|
| There are plenty of emacs "starter kits" that do aim to provide
| more of a batteries included experience. My favorite is doom,
| it's worth checking out and does setup all the features you
| mention.
|
| Pointing new users at those more advanced default configs as an
| option would be pretty helpful, I think.
| billfruit wrote:
| But many features, even obscure ones are packaged by default
| in modern emacs, including I think a pdf viewer.
| binary132 wrote:
| Tbh even though I got my start with Emacs Live I really do
| think at this point the simplest way to get started is to
| start vanilla and stay as vanilla as possible as you slowly
| build up your config based on simple and straightforward
| examples. The main problem is the utter lack of such examples
| in the community. I had to figure it out for myself for the
| most part. KISS!
| soupy-soup wrote:
| For most modern programming languages, LSP servers are trivial
| to install. You can usually get them through your language or
| distro's package manager in one command line invocation.
| Considering that there are sometimes multiple servers with
| their own pros and cons for a language, this can be kinda nice.
|
| The only one I've ran into that is different is Java, but
| considering how underdeveloped Java LSP servers are, you
| probably don't want to be using emacs for Java development.
| binary132 wrote:
| the total lack of "getting it" on display here is simply
| flabbergasting.
| lll-o-lll wrote:
| Umm. Is this some sort of troll article? It sucks you in with
| nerd nostalgia and slowly becomes more and more esoteric and
| insane.
|
| Here's the final two lines:
|
| > We should know better than to prematurely optimize for order
| when all of all time arrowpoints in and down to the absolute
| return 0. Words of wisdom, let it be: your world is a fine stream
| of consciousness, lacking only a decent editor.
|
| If that feels like your jam, go for it, but personally I feel in
| need of an exorcist after letting my computer load this...
| binary132 wrote:
| Author is a lapsed Catholic, it checks out (speaking as a
| former lapsed Catholic who knows lapsed Catholics)
| frou_dh wrote:
| 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.
| username223 wrote:
| That and how smooth the customization curve is, from tweaking
| settings, to recording keyboard macros, to writing small helper
| functions, to creating whole packages. Compare that to
| something like Eclipse or IntelliJ, where there's a huge gap
| between changing settings and creating plugins. It's a sweet
| spot between semi-configurable text editors and full-blown
| "living ball of mud" systems like Lisp and Smalltalk.
| kragen wrote:
| This essay is amazing and delightful, but it is rather densely
| allusive, like classical Chinese literature; ultimately it is
| more allusion than plain language. I suspect that most people
| will find it somewhat impenetrable. But if you want to see Emacs
| explained by references to Dune, Harry Potter, Gormenghast, Star
| Wars, _A Rape in Cyberspace_ , _Neuromancer_ , The Matrix,
| Crowleyian magick, and so on, this essay is for you.
|
| Ultimately such storytelling seems to be the best means that we
| as humans have to convey our subjective experiences, which purely
| objective descriptions are not very good at. (This is one of the
| weak points of the engineering mindset that I was criticizing in
| https://news.ycombinator.com/item?id=45650941.) So I sympathize
| with the project. But I wonder if it may end up preaching to the
| choir a bit: if you remember the intoxication of reading Barlow's
| _Declaration of Independence_ , probably you already have a
| settled relationship with Emacs, whether intimate or traumatic,
| or both?
| eyeundersand wrote:
| I was shocked by the reference to Navidson's house from the
| House of Leaves. The ending to your first paragraph is also
| interesting in that HoL starts with "This is not for you."
| kragen wrote:
| House of Leaves is something I've been wanting to read since
| I first saw it, but I've never had the chance. Unlike most
| books, I feel that I'd be missing out on a lot if I didn't
| read it in physical form.
|
| Emacs, too, is bigger on the inside.
| eyeundersand wrote:
| Yes, it's definitely something you want to experience in
| the physical form! It's hard to describe what reading it
| feels like towards the latter parts of the book- you feel
| like you're lost in the book like how the Navidson gets
| lost in the house.
| kragen wrote:
| See, I feel like that in Emacs sometimes, too. The
| debugger helps.
| DonHopkins wrote:
| I keep track of my Emacs with a Tractive GPS collar, and
| I have an app on my phone that shows the trails and a
| heat map of everywhere he's been. And I debug him with
| Frontline, but that doesn't prevent him from coming in
| with slugs in his fur. (Emacs is my cat's name.)
| DonHopkins wrote:
| [delayed]
| jpfromlondon wrote:
| I didn't want the post to end I didn't want to return to an
| existence where people don't share these transgressive impulses
| with me.
|
| This is a robust and comprehensive antidote to nihilism and
| anyone who has ever missed the internet of the nineties or early
| 00s as I have would be doing themselves an enormous favour by
| reading it, and then rereading it as I intend to.
|
| It lost me for a moment at Implicity and I was worried the spell
| had be broken but the profound blows didn't stop.
| anthk wrote:
| I think the same. Even if today I'm a die hard HJKL user,
| Emacs' doctor and the whole nerdiness world from M-x doctor to
| M-x fortune among M-x dunnet (and the rest of the games) opened
| a total new world instead of the damn boring Microsoft world
| with their own obscure terms making things nearly
| undiscoverable and very difficult to understand because there
| was no complete documentation for the end user.
|
| Later, in mid-2000's, the 3 DVD based Debian Sarge came with
| everything. Documentation, serious software, programming tools,
| mega nerd/geek games, the Anarchist FAQ, crazy fortune files,
| nerd lore and whatnot. You could snoop your BTTV and later DVB
| signals on the fly (even decode some channels my normal TV
| wasn't able to do), break tons of limits on cable TV sets (even
| override them)... it was magical.
| sexyman48 wrote:
| That he burned 11,000 words on his text editor tells you why
| emacs users are unemployable.
| _benj wrote:
| Since employment is apparently the highest achievement a person
| can aspire to, this post and emacs users in general, must be of
| such lesser value I guess? /s
| sexyman48 wrote:
| _employment is apparently the highest achievement a person
| can aspire to_
|
| Your words, not mine. But gene propagation is up there, and
| steady wages is a sufficient if not necessary condition for
| that to happen.
| vkazanov wrote:
| Never in my 20 years of programming, data engineering,
| engineering management of games, search engines, dating
| apps and machine learning systems I had a problem of people
| not wanting to hire me because I prefered Emacs (and
| linux).
|
| In fact, in was the opposite.
|
| So what are you even talking about?
| jsonBorn wrote:
| ==WARNING== Palantir's `blackbriar' uber-flag alert
| cycling 24/7, must include: hacker news, linux, emacs,
| mathe... and.. likely off-ed before the morrow..best sto
| dimitar wrote:
| I'm an employed emacs user and more than half of my team also
| uses emacs
| tom_ wrote:
| Now you mention it, come to think of it, I'm actually
| unemployed at the moment. We can't both be wrong!
| bitwize wrote:
| Man, I totally get this. I've been an Emacs user for 30 years and
| counting; back in the mid-90s when I started on Linux, I learned
| that the truly wizardly hackers usually used one of vim or Emacs
| and because I disliked modal editing, I chose Emacs--only to find
| myself tumbling down a deep, deep rabbithole that opened into an
| unfathomable warren network it would take me decades to begin to
| make any sense of.
|
| When I open Emacs, it's like I'm five years old again, seated at
| my VIC-20, confronted with the infinite possibilities of the
| machine, challenged to explore them. Except the possibilities are
| so much greater because computers can do so much more and Emacs--
| as the programmable way to program--puts them virtually all at my
| fingertips. It's all a bit overwhelming, and this essay does a
| good job of capturing that overwhelm and the shift in perspective
| needed to cope.
|
| That said, it's likely to send most people screaming back whence
| they came, clinging ever more firmly to their Visual Studio Codes
| and IntelliJs, if they be programmers at all and if not, it may
| turn them off programming altogether. Because that perspective
| shift looks like utter madness from the outside. I don't think we
| as a species are ready for computers yet. The possibilities, the
| implications.
| alyandon wrote:
| They say there's no Emacs -- only your Emacs.
|
| This hit home for me. I spent about 6 months working exclusively
| with emacs to get past the "this is weird/hard because it is
| unfamiliar to me" stage. At the end of the experiment, I went
| back to using vim and IDEs.
|
| My take personal takeaways from the experience:
|
| 1) capslock/ctrl switching is helpful in so many other areas - so
| I kept that
|
| 2) emacs is something you want to "live in" (e.g. learning to
| rely on eshell) if you want to really become proficient with it
|
| 3) emacs is something you have to be willing to tweak/adjust via
| elisp to suite your personal preferences if you want to really
| really really be proficient with it
|
| I didn't hate emacs but it also wasn't for me.
| michaelcampbell wrote:
| > e.g. learning to rely on eshell
|
| Or vterm if you don't want to be proficient with eshell.
| eduction wrote:
| I've been using emacs for over 20 years and had no idea about
| `M-x tetris`. Worth reading just for that!
| tinkelenberg wrote:
| I struggled with a complex manuscript for years and tried all
| sorts of tools from Word to Scrivener in the process with no
| luck.
|
| Emacs w/org mode was the only program that helped me make sense
| of the mess and finish the darn thing. I have never seen a
| program so elegant and yet so powerful, and I am forever grateful
| it exists if only as a counterweight to the modern tech paradigm.
| DonHopkins wrote:
| https://news.ycombinator.com/item?id=36621699
|
| The original terminal emulator terminal.el in gnu emacs, written
| by mly (Richard Mlynarik), was particularly salty. I finally
| tracked down a copy, but it looks like somebody complained and in
| 1990 it was begrudgingly cleaned up a bit, so some of the worst
| stuff was moved out into a separate file called term-nasty.el for
| posterity (you, here, now), so as not to give "in to the pressure
| to censor obscenity that currently threatens freedom of speech
| and of the press in the US" (oh, Richard <3 ):
|
| [original broken link]
| https://opensource.apple.com/source/emacs/emacs-59.0.80/emac...
|
| [term-nasty.el source]
| https://jason.zzq.org/git/emacs/plain/lisp/term-nasty.el?h=s...
|
| 1990-08-26 Richard Stallman (rms@mole.ai.mit.edu)
|
| * terminal.el: Move possibly offensive comments to term-nasty.el.
|
| https://www.digiater.nl/openvms/freeware/v10/emacs/common/li...
|
| [...] ;; disgusting unix-required shit
| ;; Are we living twenty years in the past yet?
| (defun te-losing-unix () nil)
|
| [...] ;; (A version of the following comment
| which might be distractingly offensive ;; to some readers
| has been moved to term-nasty.el.) ;; unix lacks ITS-style
| tty control... (defun te-process-output (preemptable)
| ;;>> There seems no good reason to ever disallow preemption
| (setq preemptable t)
|
| [...] ;; I suppose if I split the
| guts of this out into a separate ;; function
| we could trivially emulate different terminals
| ;; Who cares in any case? (Apart from stupid losers using
| rlogin)
|
| [...] (?\C-b .
| te-backward-char) ;;
| should be C-d, but un*x
| ;; pty's won't send \004 through!
| ;; Can you believe this?
|
| [...] ;; Did I
| ask to be sent these characters?
| ;; I don't remember doing so, either.
| ;; (Perhaps some operating system or
| ;; other is completely incompetent...)
|
| [...] ;;-- Not-widely-
| known (ie nonstandard) flags, which mean
| ;; o writing in the last column of the last line
| ;; doesn't cause idiotic scrolling, and
| ;; o don't use idiotische c-s/c-q sogenannte
| ;; ``flow control'' auf keinen Fall.
| "LP:NF:" ;;-- For stupid or obsolete
| programs
| "ic=^p_!:dc=^pd!:al=^p^o!:dl=^p^k!:ho=^p= :"
| ;;-- For disgusting programs. ;;
| (VI? What losers need these, I wonder?)
| "im=:ei=:dm=:ed=:mi:do=^p^j:nl=^p^j:bs:")))
|
| [...] (setq te-process
| (start-process "terminal-emulator" (current-buffer)
| "/bin/sh" "-c" ;; Yuck!!!
| Start a shell to set some terminal
| ;; control characteristics. Then start the
| ;; "env" program to setup the terminal type
| ;; Then finally start the program we wanted.
| (format "%s; exec %s"
| te-stty-string
| (mapconcat 'te-quote-arg-for-sh
| (cons program args) " ")))))
|
| [...] ;;;; what a complete loss
|
| [...]
|
| https://www.digiater.nl/openvms/freeware/v10/emacs/common/li...
| ;;; term-nasty.el --- Damned Things from terminfo.el ;;;
| This file is in the public domain, and was written by Stallman
| and Mlynarik ;;; Commentary: ;; Some
| people used to be bothered by the following comments that were
| ;; found in terminal.el. We decided they were distracting, and
| that it ;; was better not to have them there. On the
| other hand, we didn't want ;; to appear to be giving in
| to the pressure to censor obscenity that ;; currently
| threatens freedom of speech and of the press in the US.
| ;; So we decided to put the comments here. ;;; Code:
| These comments were removed from te-losing-unix. ;(what
| lossage) ;(message "fucking-unix: %d" char)
| This was before te-process-output. ;; fucking unix has
| -such- braindamaged lack of tty control... And about
| the need to handle output characters such as C-m, C-g, C-h
| and C-i even though the termcap doesn't say they may be used:
| ;fuck me harder ;again and again! ;wa12id!!
| ;(spiked) ;;; term-nasty.el ends here
|
| Note to the gentle readers: "wa12id" stands for "with a 12 inch
| dildo".
|
| Jamie Zawinski kept Lucid Emacs nasty:
|
| https://groups.google.com/g/gnu.misc.discuss/c/U5oXKOfWinQ/m...
|
| Noah Friedman, Aug 3, 1992, 4:54:20 AM
|
| In article <15i2n9...@hal.com> wood...@hal.com (Nathan Hess)
| writes:
|
| >In article <FRIEDMAN.9...@nutrimat.gnu.ai.mit.edu>, friedman@gnu
| (Noah Friedman) writes:
|
| >>It's by no means necessary, but it's funny.
|
| >Along the same lines, look at lisp/terminal.el
|
| Of course, terminal.el is actually useful, albeit not terribly
| powerful.
|
| (and terminal.el is pretty mild compared to some of the other
| things I've seen written by mly. :-))
|
| Incidentally, a lot of terminal.el has been rewritten in version
| 19.
|
| Too bad... I liked all the variable names and comments in the
| original.
|
| Jamie Zawinski, Aug 5, 1992, 12:40:38 AM
|
| In the FSF-distributed Emacs 19, the obscenities (will) have been
| stripped from terminal.el, though they are preserved in a file
| called term-nasty.el, to avoid appearing to bow to the censors.
|
| In Lucid GNU Emacs, terminal.el will remain as nasty as it ever
| was.
|
| -- Jamie "Truth, Justice, and the Fucking First Amendment"
| Zawinski
___________________________________________________________________
(page generated 2025-10-21 23:01 UTC)