[HN Gopher] Toward a "modern" Emacs
       ___________________________________________________________________
        
       Toward a "modern" Emacs
        
       Author : lukastyrychtr
       Score  : 92 points
       Date   : 2020-09-25 20:06 UTC (2 hours ago)
        
 (HTM) web link (lwn.net)
 (TXT) w3m dump (lwn.net)
        
       | sinbad_sinclait wrote:
       | Coming from the standpoint of a new emacs user/young programmer I
       | found that my problem with base emacs is getting to a minimal
       | viable setup just took to much time.
       | 
       | It wasn't until I learned about spacemacs that I gave emacs
       | another try and I haven't gone back since.
        
       | AceJohnny2 wrote:
       | Though it's made great improvements in recent years, GNU Emacs,
       | the vanilla package, is more of an unrefined platform than a more
       | finalized product that competitors like VSCode are.
       | 
       | SpaceEmacs is closer to such a refined product, though it's aimed
       | at Vim users (with the 'evil' Vim-support package being front and
       | foremost). I am not currently aware of a kind of "best-of-emacs"
       | distribution that focuses on putting Emacs' strengths in their
       | best light (likely at the cost of dropping some UI backwards-
       | compatibility).
       | 
       | As an aside, the article [1] by Dan Coliascione (@quotemstr) from
       | a few years ago about the effort required to work with Emacs'
       | compatibility layers is insightful and hilarious. "GNU Emacs is
       | an old-school C program emulating a 1980s Symbolics Lisp Machine
       | emulating an old-fashioned Motif-style Xt toolkit emulating a
       | 1970s text terminal emulating a 1960s teletype."
       | 
       | I honestly don't expect vanilla GNU Emacs to modernize its UI,
       | because of its incredible legacy baggage. But I do look forward
       | to new "distributions" that do so!
       | 
       | https://www.facebook.com/notes/daniel-colascione/buttery-smo...
        
         | dragandj wrote:
         | https://github.com/bbatsov/prelude
        
           | AceJohnny2 wrote:
           | Thanks! I had forgotten about Emacs Prelude.
        
       | jug wrote:
       | I'm by no means an expert on this subject but isn't this a bit
       | like xemacs? More mouse-driven. Friendlier menus. Sure, rough by
       | modern standards but why not just contribute to that project? I
       | felt it was a pragmatic approach that kept the emacs patterns and
       | usage intact. If you VS Codeify Emacs, is it then even a modern
       | Emacs?
       | 
       | Edit: OK maybe xemacs is no longer actively developed, but
       | sxemacs then.
        
       | BeetleB wrote:
       | > There was some discussion of adopting the Solarized color
       | palette in particular. As Dmitry Gutov pointed out, though,
       | Solarized makes for a rather low-contrast experience
       | 
       | This is a strange complaint - it's tautological. The whole point
       | of Solarized is to reduce the contrast.[1] It's kind of like
       | saying having a dark background is bad, because it is dark.
       | 
       | For people who stare at a computer all day, a lower contrast is
       | good. When I introduced it to a coworker, he didn't want to
       | switch to it because of the low contrast. After a week of using
       | it, he can't imagine going back to high contrast.
       | 
       | As for the rest, while I do agree with some points, I will say:
       | If you make Emacs more like VS Code, then people will have even
       | fewer reasons to use Emacs.
       | 
       | [1] https://ethanschoonover.com/solarized/
        
         | Finnucane wrote:
         | It's an accessibility issue. Low contrast sucks for people with
         | vision issues. dark mode can be kinda sucky too. Not that the
         | default modes of most editors are much better. I'm color blind
         | and have never really found a totally satisfactory scheme.
        
         | SippinLean wrote:
         | The point isn't to reduce the contrast, it's to use contrast
         | based on _hue_ and less on _value_.
         | 
         | Accessibility is the real concern. Solarized fails many of the
         | checks for accessible text under standards such as WCAG 2.0.
        
           | BeetleB wrote:
           | > The point isn't to reduce the contrast, it's to use
           | contrast based on hue instead of value.
           | 
           | It's not one or the other. It's both:
           | 
           | > Solarized reduces brightness contrast but, unlike many low
           | contrast colorschemes, retains contrasting hues
        
             | mrob wrote:
             | Hue contrast is objectively worse than brightness contrast
             | because human cone cells are lower resolution than rod
             | cells. This is the reason chroma subsampling is used in
             | lossy video/image compression.
        
         | wrycoder wrote:
         | To each his own - there are many choices, easily installed:
         | 
         | https://emacsthemes.com/
        
         | da39a3ee wrote:
         | > For people who stare at a computer all day, a lower contrast
         | is good.
         | 
         | I stare at a computer all day and I hate low contrast themes,
         | including solarized.
         | 
         | I am not claiming my view applies to everyone, so please, could
         | you stop doing that. It is subjective: there is nothing
         | inherently superior about solarized, even for people who stare
         | at screens all day.
         | 
         | And it is not just an accessibility issue. It is a subjectivity
         | issue.
        
           | auganov wrote:
           | There is surprisingly little research on this.
           | 
           | Personally I find that contrast between different themes,
           | that is when switching from say one website to another, is
           | the most eye strain inducing. Going from reading black on
           | white to white on black or vice versa just hurts.
           | 
           | I keep everything black/dark on white themed since that's how
           | most of the world works. I suspect many who use certain
           | themes experience eye strain when viewing normal stuff and
           | falsely assume it proves the efficacy of their theme.
        
       | robocat wrote:
       | I love this: "Or, as Richard Stallman put it": 'It is unfortunate
       | that the people who implemented the newer editors chose
       | incompatibility with Emacs.'
       | 
       | It is interesting to see a comment that is 100% at odds with the
       | brutal evolution of ideas that occurs in a good ecology of
       | software.
       | 
       | If the same mindset applies to the rest of emacs then they really
       | stand no chance or real progress. (edit: the rest of emacs, and
       | not just key bindings which the RMS quote I have removed from
       | context applies to).
        
         | Finnucane wrote:
         | I suppose rms can't understand why anybody would think anything
         | could be better than what he chose to do 40-something years
         | ago.
        
           | beagle3 wrote:
           | A lot of things are different without being better.
           | 
           | Before ctrl-x/Ctrl-v became the standard for Cut/paste, it
           | was Ctrl-del/Ctrl-insert in many dos and early Windows
           | editors - which makes a lot more mnemonic sense.
           | 
           | It's better to standardize on something, but that something
           | isn't necessarily better and is often worse.
        
             | twoodfin wrote:
             | Those might make more sense, but even if my MacBook had
             | Insert & Del keys, I doubt I could Ctrl- them with one
             | hand.
        
             | Jtsummers wrote:
             | C-x and C-c make some sense as cut and copy. But C-v, C-z,
             | C-y as paste, undo, and redo just make little sense. The
             | first two make sense for their proximity to x and c in the
             | QWERTY layout. y only makes sense if it happened to be
             | unassigned.
             | 
             | Keyboard shortcuts will always fall into one of two
             | categories: That makes perfect sense (usually mapping to a
             | mnemonic like C-a for "select all"); That's totally
             | arbitrary (C-y). It makes sense (and cua-mode offers it) to
             | offer the opportunity to rebind the keys to the mainstream
             | arbitrarily selected shortcuts, but it also makes sense to
             | keep what's been used by emacs users for 40 years since
             | that's what they're used to at this point (oh hell, I've
             | been using it for 20 years, time has flown).
        
               | mjw1007 wrote:
               | A third category is those chosen for their physical
               | position.
        
               | robocat wrote:
               | Mnemonic keyboard shortcuts must be a bastard to learn if
               | you don't speak English.
               | 
               | And shortcuts based on finger distance must suck for
               | anyone using a non-qwerty keyboard (especially a non-
               | latin character based language!).
        
               | Jtsummers wrote:
               | Indeed. I use the Dvorak layout (a choice I made twenty
               | years ago and have stuck with since my typing speed did
               | improve, by virtue of finally learning to touch type
               | properly), and many shortcuts make no sense. On the other
               | hand, I actually found emacs much more comfortable to
               | use.
        
               | liability wrote:
               | The P and V operations on semaphores are from Dutch. I
               | find this difficult, _" The V kind of looks like a down
               | arrow.. but wait no that's increment. The P could mean
               | plus.. wait no that's decrement..."_
        
       | Otek wrote:
       | Oh look. It's THIS thread again
        
       | danShumway wrote:
       | Do the defaults in Emacs matter, at all? Doom Emacs, Spacemacs,
       | and dozens of other default configs already exist. I've been
       | using Emacs for years, I never learned the default keybindings. I
       | used Evil mode right from the start.
       | 
       | I just don't see this as a real problem.
       | 
       | A small (incomplete) list of real problems:
       | 
       | - No timeline on Wayland support, Wayland will likely require
       | substantial work and refactoring.
       | 
       | - Performance issues on long lines of text.
       | 
       | - Architectural/technical debt.
       | 
       | - etc...
       | 
       | Emacs is, fundamentally, a power-user editor. There are problems
       | to solve, but "I had to change the default fonts" isn't one of
       | them. Why would you use Emacs in the first place if you weren't
       | interested in changing the default fonts? Maybe I'm out of touch,
       | but I would never recommend a new Emacs user to just download
       | Emacs directly. I assume they're starting with someone else's
       | config.
       | 
       | Emacs fills a specific niche that other text editors today still
       | aren't satisfying, and it should continue to fill that niche.
       | What other text editor can I use as a window manager?
       | 
       | I haven't checked in a while, but I think Spacemacs solves
       | literally every single problem that they're talking about,
       | including prompting users whether they'd like to enable CUA mode
       | by default. But Spacemacs can't solve the Wayland problem.
        
         | Jtsummers wrote:
         | That was touched on in the article:
         | 
         | > Some of the ideas found in these distributions may well merit
         | inclusion in Emacs, but that does not happen. Emacs maintainer
         | Eli Zaretskii complained that the creators of these
         | distributions do not contribute their work back.
         | 
         | If the changes aren't being contributed back, any gain from
         | them is lost for users of the default system. Creating an
         | unnecessary fork within the user base, especially where the
         | changes could be enabled via a configuration change (start with
         | default, but prompt at first run to go to Doom Emacs or
         | Spacemacs).
        
           | BeetleB wrote:
           | The article also touched on why this is the case: Not
           | everyone wants to assign copyright to the FSF.
        
       | kosolam wrote:
       | give up on this pile of nak-nak-nak. It's all too held up by a
       | small bunch of blind fanatics or such. Just use one of the other
       | normal editors. Com'on man, you gotta be blind to not see how
       | idiotic the situation is. And I'll tell you another thing, these
       | are just fairy tales, all the stories about emacs being great are
       | not delivered in a balanced way. The pain to learn and use all
       | these terrible extensions for basic functionalities is enormous.
       | The amount of stuff that you have to ingest and then the mental
       | space that this takes. It's just not worth it.
        
       | astrobe_ wrote:
       | Changing the default UI is a non-problem: new users will like it,
       | old-timers will have an easy time reverting it, or maybe their
       | custom config will undo it right away, depending how it is
       | implemented. Source: I am actually a Vim user, which under
       | Windows comes with some Windows shortcuts by default. I had no
       | problem undoing it.
       | 
       | The idea of copying current UI trends (dark theme, burger menu)
       | however made me think of that quote saying that the best way to
       | anticipate the future is to invent it.
       | 
       | By imitating others you are not modern, you already are behind.
       | 
       | Doing the same thing but only slightly better won't attract much
       | users - Emacs should have learned that from its victories against
       | its clones. Doing something different for the sake of being
       | different won't attract much users either. The challenge - and
       | the opportunity - is to do things differently in order to make
       | something significantly better ( _vim_ cough _vim_ ).
        
       | da39a3ee wrote:
       | We should stop making the tutorial prominent and stop worshipping
       | it. I've used Emacs for 20 years and write emacs-lisp packages
       | and I don't use all those weird keybindings for moving around the
       | buffer. That's what the arrow keys are for! There's an
       | international aspect to this: those who went to school in the USA
       | typically touch-type; but in some other countries one does not
       | learn to touch type unless one is aiming to become what used to
       | be called a secretary.
        
       | rhabarba wrote:
       | Being easy to use by newbies has killed too many great ideas
       | already.
        
       | auganov wrote:
       | The biggest threat to Emacs is a number of hard to fix
       | performance issues. Like rendering of very long lines. Luckily
       | for Emacs other editors have their own performance issues, but
       | their architectures might make them more fixable.
       | 
       | The other issue is the display model. Rendering using browser
       | technologies enables other editors to do things Emacs just can't.
       | 
       | I'm sure some gimmicks might bring in more users. But implicit in
       | this kind of thinking is that Emacs is perfect as it is and with
       | right marketing it will explode. I sincerely doubt this. The
       | biggest problems are pretty fundamental.
        
         | _ph_ wrote:
         | Just today I edited a file which basically consisted out of a
         | line with almost 2 million characters, my emacs was basically
         | unresponsive for a longer time. This amount of data shouldn't
         | slow down a modern machine that badly.
        
       | SeanLuke wrote:
       | Emacs is in that disastrous stage of a product's life where the
       | geezers destroy their own community by refusing to adapt to new
       | expected behavior, thus driving away the newbies. Eventually the
       | product dwindles to just supporting the few remaining geezers
       | left.
       | 
       | I'm not talking about stupid fads such as skinning and color
       | palette changes. But cut-copy-paste keybindings (not to mention
       | select-all, save, close window, undo, etc.) are not a fad. They
       | have been the standard in everything _except_ for Emacs for over
       | THIRTY FIVE YEARS. They were standard when Ronald Reagan was
       | president.
       | 
       | Pop-up menus on right-button-click have been standard for almost
       | as long, dating to X11 and NeXTSTEP (which is where OS X got
       | them).
       | 
       | And the most awful trend is in preventing clear improvements in
       | modes and functionality from coming to the forefront simply
       | because geezers are not used to them. The argument seems to be
       | that making all these kinds of things standard would be hard on
       | the geezers. This is nonsense. Unlike the newbies, the geezers
       | _know how to turn this stuff off_.
       | 
       | The geezers prevent this because Emacs is their ecosystem. But
       | for everyone else, Emacs is a small part of a much larger
       | ecosystem (MacOS, Linux, Windows) with which it is increasingly
       | incompatible and archaic. This is myopia pure and simple.
        
         | donio wrote:
         | Emacs is in that blissful state where it's resisting
         | sacrificing its core user base by trying to cater to people who
         | are not going to use it anyway.
         | 
         | As a long term user I am very happy with the direction of Emacs
         | development over the past few years. Emacs is pretty much the
         | only piece of modern software where I don't have worry about
         | losing functionality when I upgrade to a new version. Each new
         | version is better than the old one.
        
         | sebow wrote:
         | I'm not even a "geezer" of which you speak for but the fact
         | that emacs does not have the standard copy-paste, cut, save,
         | etc key-bindings by default is what makes it so powerful. The
         | reason the community is the way it is is presumably because the
         | learning curve makes the people who give up easily left out.
         | The only fact I personally "hate" emacs is only that i don't
         | have the time to learn lisp & customize the editor to the full
         | extent myself, but that's not really a strong argument against
         | emacs.(As resources about customizing emacs are not that hard
         | to find, and the lisp/emacs-lisp community is not 'harsh')
         | 
         | Just because everyone has some "standard"-deemed features does
         | not mean emacs should have it aswell.Are you complaining about
         | these things with vim aswell? A lot of people use emacs because
         | of performance reasons, customization opportunities and more or
         | less because emacs is de facto almost an operating system.
        
         | vinceguidry wrote:
         | Emacs has been at that stage for well over a decade, arguably
         | two. What we're seeing now is the slow process of finally
         | muddling their way out.
        
         | [deleted]
        
         | liability wrote:
         | As an Emacs newbie (less than one year of usage) I could not
         | disagree more. I disagree with basically everything you just
         | said. If somebody wants notepad++, they should just use that
         | instead of trying to turn Emacs into something it never was.
         | 
         | As an olive branch: Perhaps Emacs could prompt the user on
         | first run what sort of control scheme they want. Emacs
         | standard, Evil mode, or some notepad clone could be modes that
         | ship with Emacs by default (evil already does.)
         | 
         | (I chose evil, because I came from vim. Maybe this is why Emacs
         | was so easy for me to pick up. But by the same token, Vim is
         | arcane compared to Notepad style editors but is quite popular,
         | so I outright reject the hypothesis that Emacs has lower
         | numbers because it's arcane. Rather, I think it has a
         | marketting ''problem'' relative to Vim.)
        
           | mplanchard wrote:
           | Yeah honestly I think a config "wizard" when you start up to
           | get some basic standard stuff ready to go, like package
           | installs, themes, evil/CUA/traditional keybindings, LSP
           | stuff, some major modes, etc. would go a long way towards
           | making it less intimidating and more productive out of the
           | gate.
           | 
           | Also some kind of popup help for keybindings like you get
           | with the Doom/Spacemacs leader key would I think help a lot.
           | 
           | I certainly don't think that changing the color scheme or
           | other "chrome" improvements are going to make any meaningful
           | difference, and honestly the discussion in the article
           | sounded kind of condescending, assuming that the only reason
           | people might find emacs difficult to get started with is
           | because it doesn't have cat videos or a dark color scheme.
        
           | [deleted]
        
           | kzemek wrote:
           | > But by the same token, Vim is arcane compared to Notepad
           | style editors but is quite popular, so I outright reject the
           | hypothesis that Emacs has lower numbers because it's arcane
           | 
           | vim might be arcane compared to Notepad, but I've been
           | successfully using vim as an editor of choice in ssh pretty
           | much throughout the whole uni without knowing more than :w
           | and :q (at which point it basically _was_ a notepad). I was
           | ever completely lost in Emacs though, with its nested C-x,
           | M-x seemingly without rhyme or reason. I wouldn 't "outright"
           | reject that hypothesis without more scrutiny.
           | 
           | Anecdotally, I've been an Emacs (Spacemacs) user for a few
           | years after that, and I never got used to all the commands I
           | would use on a daily - but not hourly - basis, having to
           | always look those up. But, as one of the other top-level
           | posts said, what made me switch in the end were the language
           | servers.
        
             | liability wrote:
             | Vim drops noobs straight into normal mode, meaning the
             | moment they start trying to type they get confused. I know
             | that's what happened to me. The arcane nature of Emacs
             | doesn't make itself apparent nearly so fast.
        
               | JdeBP wrote:
               | Only if it isn't invoked as "evim", "eview", "vim -y", or
               | "view -y".
        
               | liability wrote:
               | True, though a noob wouldn't know how to invoke it like
               | that.
        
         | BeetleB wrote:
         | > Emacs is in that disastrous stage of a product's life where
         | the geezers destroy their own community by refusing to adapt to
         | new expected behavior
         | 
         | It doesn't look like your an Emacs user. As another commenter
         | pointed out (as did the article indirectly), Emacs has more
         | users than ever. It's definitely growing - not dwindling. As an
         | Emacs user, the last decade has shown an immense growth in
         | capabilities via MELPA packages. The number of sites with tips
         | on improving Emacs flows has also gone up exponentially.
         | 
         | Not only is it not dying, it's thriving.
         | 
         | > They were standard when Ronald Reagan was president.
         | 
         | For a whole other definition of standard. A lot of the popular
         | DOS applications from Reagan/Bush's time did not use these
         | keybindings. Ctrl-Ins and Shift-Ins were the norm. Ctrl-C for
         | quitting was the norm.
         | 
         | (I'm not against CUA bindings by default - merely pointing out
         | a misconception you have).
         | 
         | > But for everyone else, Emacs is a small part of a much larger
         | ecosystem (MacOS, Linux, Windows) with which it is increasingly
         | incompatible and archaic.
         | 
         | Actually, Emacs is pretty good at interacting with the wider
         | ecosystems. It can communicate and interact with other
         | processes, etc. I can, for example, link to a message in MS
         | Outlook and have it open up in my TODO list in Emacs.
        
           | mi_lk wrote:
           | > Emacs has more users than ever. It's definitely growing -
           | not dwindling.
           | 
           | Growing in terms of the number of users, dwindling in terms
           | of the share among editors
        
             | Jtsummers wrote:
             | Market share shouldn't matter.
             | 
             | The numbers that do matter: Are the number of contributors
             | increasing, decreasing, or stable? Are the number of users
             | increasing, decreasing, or stable? Is the rate of increase
             | (if increasing) for either of these itself increasing,
             | decreasing, or stable?
             | 
             | As long as contributors and users are both increasing,
             | you're probably ok. As long as the rates of increase are at
             | least stable, you're ok.
             | 
             | It's not like this is a life or death struggle, emacs will
             | probably outlive us all.
        
           | JdeBP wrote:
           | Historical note: CUA didn't come along until 1987. In 1985,
           | the Lisa had been out for two years, and CUA was that far
           | into the future, as indeed were Windows 2.0 and OS/2 1.0.
           | 
           | It's true that the claim that the Mac/Lisa key chords were
           | the standard 35 years ago is quite wrong. But it's false to
           | claim that there was another standard instead.
        
           | rleigh wrote:
           | I don't really buy the argument I'm afraid.
           | 
           | I've been an Emacs user for over 20 years. I like it, and
           | find it productive. But it's stuck in a rut, in a very
           | similar manner to Perl 5. If that isn't addressed, it will
           | fade into the background. I'd argue that's already happened.
           | None of my coworkers in any of the jobs I've worked in have
           | used it, and that includes academia and various industries.
           | It seems to be restricted to the uber-nerds who find out
           | about it and go through the pain of learning how to drive it
           | effectively. I used to use it for everything, from GNUS to
           | org-mode, but my usage is declining.
           | 
           | The keybindings need to be fixed. CUA has been the norm for
           | what, 35 years at this point. C-y is paste. C-z minimises the
           | window (WTF!) C-_ is undo. It's not just nonstandard and
           | counterintutive, it's _unnecessarily_ nonstandard and
           | counterintuitive. They aren 't more efficient, they aren't
           | more effective. It's a barrier to adoption which doesn't need
           | to be there. It has a certain familiarity for us long-time
           | users, but that's about it. Every other application uses
           | something based on CUA, so it's not like we couldn't switch
           | over.
           | 
           | While I certainly wouldn't want a "GNOME 3" type of makeover,
           | where all the actual userbase are cast aside to be replaced
           | by a hypothetical potential userbase which doesn't actually
           | exist, I do think it's well worth a look at present-day
           | alternatives and to make sure it doesn't fall behind. Because
           | I think it actually has fallen behind, and it needs to get
           | its act together to retain its relevance.
           | 
           | Recently I got a personal JetBrains subscription and started
           | using CLion. While I still miss many little small features,
           | there are quite a number of big features which Emacs doesn't
           | attempt to do, and so the small annoyances are worth it for
           | those large benefits. Emacs needs to be able to do better
           | than this to not only keep up, but to do better than its
           | competitors.
        
             | BeetleB wrote:
             | I said:
             | 
             | > (I'm not against CUA bindings by default - merely
             | pointing out a misconception you have).
             | 
             | And you respond with:
             | 
             | > I don't really buy the argument I'm afraid.
             | 
             | And then you write a whole comment about how CUA is better.
             | 
             | Which argument did I make that you don't buy? Why is this a
             | reply to my comment?
             | 
             | > I do think it's well worth a look at present-day
             | alternatives and to make sure it doesn't fall behind.
             | 
             | In all my jobs that used IDEs (including JetBrains's
             | excellent stuff), I used both the IDE and Emacs - the
             | latter for text editing, etc. The former for all the
             | goodies it brings (navigation, etc). There's no law saying
             | it has to be one or the other. IDEs becoming very popular
             | in no way threatens Emacs.
             | 
             | > Because I think it actually has fallen behind, and it
             | needs to get its act together to retain its relevance.
             | 
             | I could really easily write a whole article on all the
             | features Emacs has that many more popular editors don't
             | have, and then end the article with "Those other editors
             | are falling behind."
             | 
             | We have to clearly delineate what "falling behind" means,
             | and whether it is relevant. VS Code gaining in popularity
             | doesn't necessarily impact Emacs. In my career I've met an
             | order of magnitude more Vim users, and Emacs is not the
             | worse because of it. Emacs's capabilities have grown much
             | faster than Vim's has, and Emacs has a lot more users than
             | it used to. Furthermore, most Vim users I've encountered at
             | work are not fairly advanced users: They just need
             | something to edit files with. Having them switch to Emacs
             | will neither help them nor the Emacs community.
             | 
             | I don't mind some of the proposed changes (nicer defaults,
             | revamping the tutorial, etc). But I really don't want a
             | mindless goal of increasing user counts. More users will
             | not make Emacs gain more capabilities. Passionate users
             | will.
        
           | SeanLuke wrote:
           | > It doesn't look like your an Emacs user.
           | 
           | I have been an avid Emacs user since, I think, 1988.
           | 
           | > A lot of the popular DOS applications
           | 
           | Bzzt. 35 years ago the standard was Windows and MacOS. Soon
           | thereafter NeXTSTEP and nearly all X11 apps adapted the same.
        
             | mixmastamyk wrote:
             | While Windows technically existed in '85, no one
             | statistically was using it yet. Other's copied the CUA
             | interface into the late 80s however.
        
         | throwaway2938a wrote:
         | Don't know what platform you are on, but on Mac with the GUI
         | version, standard cut-copy-paste keybindings all work, as well
         | as select-all, save, close window (Cmd + w), undo.
         | 
         | Obviously they don't work in terminals.
        
         | FandangoRanger wrote:
         | Is it really necessary to ascribe some negative quality of
         | ageism to people who created and use software and then
         | castigate them for it? Do you work for PeopleSoft? Makes your
         | argument seem weak and flimsy, in fact arguments like yours can
         | be dismissed out of hand.
        
           | SeanLuke wrote:
           | I am one of those geezers.
        
             | FandangoRanger wrote:
             | Doesn't pass the switch test.
        
               | SeanLuke wrote:
               | I've developed software since the early 1980s. I've used
               | Emacs continuously since the late 1980s. Perhaps you
               | should respond to the substance of a posting rather than
               | complaining that a geezer used the term geezer to
               | describe people like himself.
               | 
               |  __EDIT __You created your account two days ago and you
               | 're already accusing people of ageism? Get off my lawn.
        
       | mrob wrote:
       | Here's a new user perspective on Emacs (based on memory; I
       | actually have more experience than this):
       | 
       | I open emacs-gtk. A document is already loaded. I try to type
       | something, and every letter I type gives the unhelpful error
       | message "[letter] is undefined". I guess this means I need to
       | create a new document first. I open the File menu, and see "Visit
       | New File...". "Visit" sounds weird, and the "..." is suspicious,
       | but at least it has "New" in it, so I pick that. It opens a file
       | picker, so "Visit New File..." must be Emacs slang for "Open...",
       | and there is apparently no "New" functionality in the File menu.
       | There's also an "Open File..." menu item too for some mysterious
       | reason, but that's obviously not what I want, so I ignore it.
       | 
       | I check the Help menu. This has 19 (!) top level options, none of
       | which are obviously correct, and one of which is "Emacs
       | Psychotherapist". I click that one out of curiosity. It replaces
       | the starting document without warning and there's no obvious way
       | to get it back. I'm presented with more Emacs slang. I assume
       | "RET" means Enter, and that Psychotherapist must be a Microsoft
       | Clippy clone.
       | 
       | I type "new document", hoping it will search the documentation. I
       | immediately notice the scroll bar flickering. This draws my
       | attention to the incorrect size of the drag handle. I click the
       | empty space below the drag handle, which moves the drag handle
       | but doesn't actually affect the text. I drag the drag handle back
       | up, which makes the text glitch out for a moment, but otherwise
       | does nothing.
       | 
       | I press "RET" twice, and get "Why do you say new document?" I
       | then realize that it's actually an Eliza clone not a Clippy
       | clone, and I've wasted my time. I give up on trying to create a
       | new file, and just Open an existing one. I immediately notice the
       | cursor is an ugly inverse video cursor instead of a normal thin
       | line cursor. I press and hold the down arrow key, and notice that
       | scrolling moves in big jumps instead of line-by-line. It also
       | forcibly moves the cursor. It seems the cursor lives in screen
       | space like it's still the 1970s and I'm using a hardware
       | terminal. There is no obvious way to keep its position in the
       | document while you navigate somewhere else. Despite this, Page Up
       | cannot move the cursor to the beginning of the document like it
       | should. Page Down works though.
       | 
       | I assume that, like every modern text editor, there's a "Find in
       | This Document..." feature bound to Control-F for easy navigation.
       | There's not: Control-F is bound to right arrow. Presumably this
       | made sense 40 years ago. There is not even any Find functionality
       | in the Edit menu, which you'd think would be core functionality
       | for any text editor.
       | 
       | In the course of this experimentation, I notice that merely
       | moving the mouse cursor over the scroll bar is enough to make it
       | flicker. I hold the scroll down button with the mouse. It
       | actually does scroll, but extremely slowly, averaging about one
       | line per second. The timing is inconsistent, and the CPU usage is
       | strangely high.
       | 
       | I type something, and notice that there is no visual indication
       | that the document now contains unsaved changes, such an asterisk
       | in the title bar, or a dot on the Save icon. I press Control-S to
       | save, which doesn't save, and instead triggers the Find function
       | I was looking for. I decide that "Modern Emacs" is a hopeless
       | quest and give up in favor of something written this century.
        
         | catern wrote:
         | Responding in your same spirit: Did you notice where it said
         | "Tutorial" in the starting document you ignored, or where it
         | said "Tutorial" in the help menu you ignored?
        
           | mrob wrote:
           | Most likely yes. But the only reason I tried Emacs in the
           | first place was because I knew it could do complicated
           | things. I expected "Tutorial" to be the place to get started
           | with those complicated things. It didn't occur to me that a
           | tutorial would be necessary for such seemingly simple
           | operations.
           | 
           | I did later go on to read tutorials, and I put many hours
           | into customizing my .emacs file, but I always felt like I was
           | fighting the system. Emacs is designed for hardware that's
           | now museum pieces, and those design decisions have pervasive
           | effects that make it impossible to configure Emacs to act
           | like modern software.
        
         | FandangoRanger wrote:
         | I'm crying.
        
       | rcconf wrote:
       | After using Emacs for 10+ years, I've switched to VSCode for a
       | really simple reason: fuzzy matching a file in a project. I've
       | tried so many different plugins and hacks to get it to work, but
       | it never did quite work. Searching for a filename either matches
       | the wrong file, or new files that were freshly added are no
       | longer there.
        
         | Ixiaus wrote:
         | Projectile + Helm works extremely well for me, did you try
         | those modes?
        
         | gen220 wrote:
         | I'm a vim user, but I imagine there's a similar way to do this
         | in emacs...
         | 
         | The secret is piping fd into fzf and opening the selected value
         | from fzf. You can probably write a 2-liner in elisp that shells
         | out.
         | 
         | In my experience, this pipeline provides a faster and better
         | matching experience than any IDE.
         | 
         | Once I got this working, I never went back to VS Code. :)
        
       | tgbugs wrote:
       | Glad to see that other observers have keyed in on the
       | discoverability aspect. I tried to highlight it in [1].
       | Unfortunately I haven't been able to hop back into the discussion
       | there, and things have been moving at a fantastic pace.
       | 
       | The longer I have been working to develop processes and systems,
       | the more I have come to appreciate defaults that do not change.
       | It is interesting to see some of the new *coin and blockchain
       | folks in their dark forest threads worrying about what happens if
       | the interpreter changes its semantics and lamenting that
       | contracts are meaningless if the interpreter can change. That is
       | what standards are for, and that is what the "backwards geezers"
       | are trying to do for Emacs since it doesn't have a standard, only
       | social norms. I'm not too too worried though, since there are
       | many sensible people in the community who understand why changing
       | defaults can destroy trust and waste the time of millions of
       | people. I am also not worried because there are many creative
       | solutions to the problem of how to attract and maintain new users
       | in a way that they can come to appreciate the benefits of
       | stability.
       | 
       | 1. https://lists.gnu.org/archive/html/emacs-
       | devel/2020-09/msg00...
        
       | im3w1l wrote:
       | Emacs' very-hard-to-fix issue is that it's based on a grid of
       | characters. This means it will never be able to do many nice IDE
       | things.
        
         | FandangoRanger wrote:
         | Emacs will never be a GUI-only editor, it was designed for a
         | terminal and that is still a use case that many people take
         | advantage of.
         | 
         | Don't worry though - if you don't like Emacs you can use any of
         | a number of other editors.
        
           | efficax wrote:
           | What can you not do with a grid of characters exactly?
        
             | im3w1l wrote:
             | Nicely formatted math. Gui designers. Diagrams.
             | 
             | And personally I find tabs is the most efficient design for
             | switching between files.
        
               | BeetleB wrote:
               | > Nicely formatted math.
               | 
               | Can you elaborate? With a keystroke, it renders a LaTeX
               | formula inline.
        
               | im3w1l wrote:
               | Oh nice! I guess it's less limited than I thought!
        
             | FandangoRanger wrote:
             | I think we're seeing a culture clash between people who
             | come from a computing background where the terminal was
             | either not used at all, or was a second class citizen, and
             | people who come from a background where a terminal is the
             | main way to interact with the system and the GUI is
             | relegated to mostly showing terminals and doing the GUI-
             | oriented tasks that can't be easily accomplished in the
             | terminal, like pixel-image editing and drawing.
        
             | mrob wrote:
             | Edit natural language documents without wasting about 1/4
             | of your screen width on useless column alignment
             | information.
        
       | gandalfgeek wrote:
       | Seems like we should treat "Emacs" more as a platform than an
       | editor. You then take that platform and build your own editor
       | (and perhaps many other things!) on top of it. E.g. Doom,
       | Spacemacs.
        
       | mapgrep wrote:
       | I don't know. I read the whole article and it seems the
       | suggestions boil down to emacs needing to be more "modern" by
       | defaulting to dark mode, making color theming easier, changing
       | right click behavior, the menus, and changing the shortcuts. And
       | the author of the article would like the development process to
       | be more "modern."
       | 
       | Emacs is one of the most successful text editors of all time if
       | not the most successful. It is widely used for a staggering array
       | of tasks.
       | 
       | It is over _40 years old_.
       | 
       | When I see a highly successful 40+ year old piece of software, my
       | first instinct isn't to ask what the people behind it can learn
       | from me but what I can learn from them.
       | 
       | I'm not saying the editor can not be improved. But I think the
       | bar is much higher than this. It's not an insult to say something
       | like emacs is not "modern." Of course it's not. And changing the
       | colors? The shortcuts that have worked for decades? Please.
       | 
       | If someone thinks emacs will be more successful with these
       | cosmetic changes they are welcome to fork it since this is one of
       | the earliest open source programs. Code talks, a bunch of people
       | opining on a mailing list is pretty worthless in comparison.
        
         | wtetzner wrote:
         | You don't even need to fork it. Just have write a .emacs file
         | that new users can copy to their home directory that sets all
         | of that stuff up.
        
           | neltnerb wrote:
           | I think I still have the .emacs file I inherited from an
           | upperclassman. It had better syntax highlighting than what
           | was built in at the time =)
        
             | TylerE wrote:
             | See, this is what I _hate_ about emacs.
             | 
             | It feels like a spring loaded bundle of magic that will
             | explode if I look at it wrong, and, having exploded, I will
             | never ever ever get it put back the way it was.
        
         | zarkov99 wrote:
         | It's over 40 years old but it has fewer and fewer users younger
         | than that. VS code is rapidly taking over it's niche and
         | without modernization, of many kinds, emacs will die out in a
         | generation.
        
           | bJGVygG7MQVF8c wrote:
           | In a generation, vim and emacs will still be around with
           | their minuscule but loyal user bases of tinkerers and VS code
           | will have long been replaced by something newer and flashier.
        
           | PaulDavisThe1st wrote:
           | I've used Emacs for 33 of those 40+ years, and I agree with
           | that until the word "without".
           | 
           | You don't mean "modernization". You mean "without it
           | changing". And the answer is yes, it will die out.
        
             | zarkov99 wrote:
             | What are some of the changes you would want to see?
        
               | tsuujin wrote:
               | I think adopting cua-mode as the default would go a long
               | way towards reducing the initial friction for new users.
               | 
               | Most of the time when I try to get people to adopt emacs,
               | they abandon it because it feels like a huge task to
               | relearn basic text manipulation. They never get to
               | actually see what makes emacs good because they don't
               | feel compelled to get past the initial bump.
        
               | konjin wrote:
               | Proper multithreading/tasking.
        
           | konjin wrote:
           | When you've been warned the world will end if ~notepad~ VS
           | code will take over for 50 years you tend to become blase
           | about the whole thing.
           | 
           | Emacs has a steep learning curve and that's good. You need a
           | moat to keep the barbarians from destroying your kingdom.
        
         | Miraste wrote:
         | > It is widely used for a staggering array of tasks.
         | 
         | Is it? What area are you in? In my hobbyist, college, and
         | industry experience I've never seen anyone use emacs for
         | anything. I have seen Vim (or at least vim bindings) a few
         | times, but I only know of emacs from older unix discussions
         | online.
         | 
         | Edit: Looking through stack overflow developer surveys, emacs
         | use is in 16th place for editor popularity at ~4.5% usage, but
         | has stayed close to that number for years.
        
           | Mediterraneo10 wrote:
           | Meanwhile, I'm always amazed how, on HN threads about Emacs,
           | people talk about preferring the Vi family of editors. When I
           | installed Linux on my computer two decades ago and had to
           | learn *nix, my own (totally subjective) impression was that
           | the Vi family was regarded as clunky and half-obsolete, about
           | as much of a pain as editing in ed. As I began to contribute
           | to the Free Software community, most of the other people I
           | interacted with seemed to use Emacs. So, to find out that Vi
           | is still used and loved in 2020 has been a shock.
        
             | Skunkleton wrote:
             | I don't think many people are using Vi. Its more likely
             | they are using vim or neovim, which are both far from
             | clunky.
        
             | spudlyo wrote:
             | I think the thing about Vi and Vim that has the most value
             | in 2020 is not the software itself, but rather the
             | keyboard-centric composable modal editing system that they
             | popularized.
             | 
             | Some of the growth that Emacs has enjoyed over the past
             | several years is from folks who want the Vim style modal
             | editing in an editor as customizable and extensible as
             | Emacs. Emacs "distributions" such as Doom and Spacemacs
             | cater to these folks.
        
             | pritovido wrote:
             | When I entered a technical University in Spain, all the
             | masters(teachers that have done incredible things on their
             | lives) used either Vim or Emacs.
             | 
             | Most "normal" people just used other "more visual" editors.
             | 
             | As I learned from the masters I started using more and more
             | both vim for unix tasks and programming and emacs for lisp.
             | Now I use 65%vim, 30% emacs, 5% other editors.
             | 
             | Both of those editors are extremely powerful. But you need
             | to know how to use them. It is not painful for the master
             | to use them, in fact it is automatic and instantaneous and
             | faster than any other editor, a thought becomes an action
             | without conscious intervention, like you thing in playing
             | Do minor in an instrument and your fingers do it
             | automatically, you want to erase a line or replace a word,
             | you think on it, is done.
             | 
             | They are like musical instruments. You could have the best
             | piano or violin in the world, if a mediocre player plays
             | them, you get bad sound.
             | 
             | Most people would be better served with a simple electronic
             | piano or a tablet with lights that point to the next notes
             | of the song, and auto correct them when they play a bad
             | note.
        
           | liability wrote:
           | Nov.el is my favorite ebook reader.
        
           | jrimbault wrote:
           | Just to add links to the SO surveys mentionned here :
           | 
           | - 2019: https://insights.stackoverflow.com/survey/2019#develo
           | pment-e...
           | 
           | - 2018: https://insights.stackoverflow.com/survey/2018#develo
           | pment-e...
           | 
           | - 2017: https://insights.stackoverflow.com/survey/2017#techno
           | logy-_-...
           | 
           | - 2016:
           | https://insights.stackoverflow.com/survey/2016#technology-
           | de...
           | 
           | - 2015: https://insights.stackoverflow.com/survey/2015#tech-
           | editor
           | 
           | What's really amazing is vscode just appearing out of nowhere
           | (7% in 2016, 35% in 2018). Blindsiding everyone. Cross
           | platform, excellent to good enough UI/UX (very much inspired
           | by Sublime Text but free), easily extensible in a widely
           | available (and widely taught) language. For better or for
           | worse.
        
           | da39a3ee wrote:
           | The hypothesis that Emacs is used for many things is
           | consistent with the hypothesis that Emacs usage is rare. This
           | is because many humans have existed over the years, so a
           | staggering array of tasks can be addressed in even a small
           | fraction of those person-years.
        
           | gnulinux wrote:
           | Is this a USA vs the rest thing? I've worked in many startups
           | in the US and _almost_ everyone uses emacs. Last few years,
           | VSCode has been getting popular though. I had a similar
           | experience when I was a student in UC Berkeley, although it
           | seems like there were more vim users in school than in
           | industry. Anyway, pretty much all my current coworkers use
           | Emacs and I work in Boston, MA.
           | 
           | Personally: I cannot imagine programming without emacs, to me
           | programming is so strongly associated with emacs...
           | 
           | Of course, I also understand that it's all personal
           | preference.
        
             | sokoloff wrote:
             | From your username and Boston's proximity to MIT and FSF,
             | it's possible that your experience isn't totally
             | representative. :)
             | 
             | Mine isn't either and I find it hard to imagine owning a
             | computer (or using git beyond the very basic operations)
             | without having access to emacs, but it does seem likely
             | that coworkers won't have completely independent text
             | editor preferences. I would expect to see more VS and
             | VSCode in the Redmond, WA area, even at places that aren't
             | Microsoft.
        
           | quadrifoliate wrote:
           | > emacs use is in 16th place for editor popularity at ~4.5%
           | usage, but has stayed close to that number for years.
           | 
           | It is possible that "Stack Overflow surveys" select for
           | programmers who tend not to use Emacs. For example, I use
           | Emacs regularly and know what Stack Overflow is, but have
           | never taken one of these surveys.
           | 
           | I'm not even sure _how_ they survey developers. Ask on some
           | crufty mailing list and you probably will get a completely
           | different distribution from the one they showed.
        
             | oblio wrote:
             | They probably just send a newsletter to StackOverflow users
             | :-)
        
               | quadrifoliate wrote:
               | Emacs users are probably more likely to unsubscribe to
               | newsletters that they did not sign up for :)
               | 
               | (On a side rant, I really dislike how a lot of websites
               | have normalized "create an account on a website" to mean
               | "Sign up for receiving a plethora of emails about
               | everything the website and its creators are up to these
               | days")
        
           | oblio wrote:
           | I've personally known 2 Emacs users in my ~15 years in the
           | industry. I've worked in Europe for various startups and a
           | bunch of corporations. Both of them used it as a sort of
           | hobby/side editor, their main money maker was an IDE (VS,
           | IntelliJ).
           | 
           | I've probably worked with 500 developers, if not more.
           | 
           | My personal impression is that Emacs is like the Yeti of
           | programming editors. Everybody has heard about it, few claim
           | to have seen it and even fewer still can claim to have proof
           | of the sighting :-)
        
             | quadrifoliate wrote:
             | Since you mention IntelliJ, is it possible that the
             | corporations you have worked in have been heavy on Java?
             | 
             | JDEE (http://jdee.sourceforge.net/) exists, but even I give
             | up on Emacs when I want to write a lot of Java (and I use
             | Emacs for literally everything else, including JS).
        
               | schwartzworld wrote:
               | JS development in IntelliJ/WebStorm is an amazing
               | experience. The refactoring features alone make it easy
               | to write code without worrying about details like "where
               | does the file go" or "what should I name this". You can
               | get the code working and rename / move code with a single
               | click later on, knowing the refactor will propagate
               | through the app.
               | 
               | The intellisense is amazing too. Start typing a method
               | name and you see arguments with type annotations. it's
               | overkill for scripting, but working on tangled legacy
               | code it's very helpful.
        
             | gnulinux wrote:
             | This is amazing.
             | 
             | I already wrote this to another comment, but quoting
             | myself:
             | 
             | > Is this a USA vs the rest thing? I've worked in many
             | startups in the US and almost everyone uses emacs. Last few
             | years, VSCode has been getting popular though. I had a
             | similar experience when I was a student in UC Berkeley,
             | although it seems like there were more vim users in school
             | than in industry. Anyway, pretty much all my current
             | coworkers use Emacs and I work in Boston, MA.
             | 
             | > Personally: I cannot imagine programming without emacs,
             | to me programming is so strongly associated with emacs...
             | 
             | > Of course, I also understand that it's all personal
             | preference.
             | 
             | I don't know if there is a way to prove that I'm lying. :)
        
               | oblio wrote:
               | Isn't Boston where MIT is and where Stallman lives?
               | 
               | Also, Berkeley as in BSD.
               | 
               | You're probably living in a smaller bubble than mine :-)
        
             | hnarayanan wrote:
             | I'm nearly 40 and I've used it as my primary text editor
             | since I was a teen and daily for my job.
             | 
             | For your anecdata collection.
        
           | Jtsummers wrote:
           | org-mode and magit seem to bring in a lot of emacs users,
           | even if they're only using one of those two things. If I
           | stopped using emacs for code tomorrow, I'd still use org-mode
           | and magit and still encourage others to do so as well, even
           | if I also pushed a different editor or IDE for writing code.
        
           | bryal wrote:
           | In my uni, many professors used Emacs when demonstrating. For
           | example, one course [0] used the Agda language [1] as a proof
           | assistant. Afaik, the only good interactive Agda interface is
           | the Emacs Agda mode [2]. Maybe you just live in a region of
           | the world that happens to have a weak culture of using Emacs?
           | 
           | [0] http://www.cse.chalmers.se/edu/year/2017/course/DAT350/
           | 
           | [1] https://wiki.portal.chalmers.se/agda/pmwiki.php
           | 
           | [2] https://agda.readthedocs.io/en/latest/tools/emacs-
           | mode.html
        
           | eigenhombre wrote:
           | Half my fifteen-person team at work (in a fast-growing mid-
           | size fintech company in Chicago) uses Emacs, for
           | editing/testing/running code in several languages,
           | interacting with Web services, running various shells,
           | calendar functions, document writing including UML diagrams
           | and mathematics typesetting, and personal planning (Org
           | Mode). To do this, we collectively probably use about 0.1% of
           | the publicly available extension packages for Emacs on MELPA.
           | 
           | But the short summary is that most people use it for the
           | various functions an IDE provides. The major difference
           | between Emcs and other IDEs (VSCode, IntelliJ, ...) is that
           | (a) it's often a little harder to get functionality that is
           | provided out-of-the-box by another IDE, but (b) it's _much_
           | easier (in some cases, infinitely easier) to implement
           | workflows or functionality _not already implemented_ by said
           | IDE.
           | 
           | As an example, I often run snippets of code and want to
           | insert the result directly beneath the code in question
           | (similar to Jupyter in Python, but for any language, in plain
           | text, directly in my editor). A trivial amount of Emacs Lisp
           | gave me that with minimal effort.
           | 
           | If you like to have nearly absolute control of your editing
           | experience, Emacs might be interesting to you. For most
           | people starting out, who just want to get hacking on some
           | code as quickly as possible, it is perhaps not the best fit.
        
           | Igelau wrote:
           | I have a feeling the SO numbers aren't accounting for Org
           | Mode users.
        
         | wrycoder wrote:
         | The Prelude package uses dark mode to give Emacs a modern look.
         | And adds line numbers for the same reason - LOL.
        
         | quadrifoliate wrote:
         | I feel old when I see "modern Emacs" and think "Oh, maybe they
         | are finally either finishing off Guile Emacs, or porting the
         | extension language to Common Lisp".
         | 
         | I guess I agree that ibuffer should be part of the standard
         | distribution. Less sure about undo-tree, but could be an option
         | if the authors released it under appropriate licenses (I
         | understand that contributing code to Emacs is somewhat
         | cumbersome; although if I were smart enough to do so, I would
         | jump through the hoops in a heartbeart).
        
       | da39a3ee wrote:
       | This really doesn't seem that complicated.
       | 
       | (1) Either we aim to make Emacs popular or we don't.
       | 
       | Personally, I don't think we should bother: I suggest we make it
       | a razor-sharp tool for people prepared to learn some lisp. I also
       | suggest we open up the development experience to allow
       | contributions and code review via PRs.
       | 
       | But lots of people want to make it popular. So fine, we do that.
       | Then there's no argument at all for keeping the defaults like a
       | bunch of male lisp programmers over the age of 50 want. Because
       | every single one of them has an emacs init file they've been
       | tending to for decades and they know how to make the relevant
       | changes to override the defaults.
       | 
       | So if we are making it popular there should be no time whatsoever
       | given to RMS saying that some keybinding from the early 80s is
       | objectively better.
        
       | heavyset_go wrote:
       | I've been checking out alternative text editors, and was recently
       | impressed with micro[1].
       | 
       | The only issue I have with it is that it doesn't handle text
       | navigation with the Ctrl + arrow key combinations that let you
       | jump to the start and end of words.
       | 
       | There's a small revival of modernized text-based apps now that Go
       | and Rust gained adoption. I've even come across an editor written
       | in Nim, called moe[2].
       | 
       | Are there other editors out there that are worth trying out?
       | 
       | [1] https://github.com/zyedidia/micro
       | 
       | [2] https://github.com/fox0430/moe/
        
       | flowerlad wrote:
       | I have been an Emacs user for 20+ years, and I don't use editors
       | that can't be configured to use Emacs key bindings. Luckily IDEs
       | like Visual Studio can be configured to mimic Emacs.
       | 
       | To me the issues that make Emacs not modern are: (1) Slow
       | startup. (2) Buggy language modes. (The ones that come with it
       | are good, but third party ones such as web-mode are buggy.) and
       | (3) No intellisense out of the box.
        
         | dragandj wrote:
         | For the first point, use emacs service + emacsclient. Starts
         | instantly.
        
           | onedognight wrote:
           | This and avoiding require in your .emacs. When packages are
           | autoloaded on demand emacs starts up quickly. As a quick test
           | try emacs -q" to see if something in your .emacs is the cause
           | of the slowdown.
        
       | Ericson2314 wrote:
       | Yeah definitely ignore all the seasonal requests for the latest
       | fads, and just focus on the last paragraph. I think the post
       | author agrees, hence the sarcastic tone.
       | 
       | The fact is Emacs does many neat things but is also a giant
       | steaming pile of sh-- tech debt. I'm sure VSCode will get there
       | too as time passes, but older editors simply have a head start in
       | this regard.
       | 
       | Emacs needs it's Neovim (which also contributes back to Vim)
       | moment. My old favorite would be returning to
       | https://www.emacswiki.org/emacs/GuileEmacs and finishing that
       | off. No reason Emacs needs to also maintain it's own Lisp engine,
       | and I'm sure lexical scope would help reign in tech debt too.
       | 
       | Oh, and make emacsclient to a eamcsserver on another machine
       | work, please! That would be such a killer app.
        
         | mjw1007 wrote:
         | emacsclient to an emacsserver on another machine works fine.
         | You'll want to tunnel it over ssh.
         | 
         | If the machines don't have a shared filesystem namespace, I
         | suggest writing a small wrapper that translates the file's
         | pathname to what the server needs (whether that's a mounted
         | network filesystem or a tramp string or whatever).
        
         | klodolph wrote:
         | I would love something like "Emacs's Neovim". Guile should be
         | enough. Keep packages out of the global namespace. Get rid of
         | Elisp and all its differences. Let me use C-Z/X/C/V for
         | undo/cut/copy/paste (or maybe C-Shift-C is fine?)
         | 
         | Keep org-mode, web-mode, etc :-)
        
           | Jtsummers wrote:
           | I don't think we even need Guile (though I wouldn't
           | complain). Just cleaning up the way packages install (a
           | proper package system, which could be optional) would be a
           | vast improvement for elisp.
           | 
           | By creating a package system, making everything default into
           | the el-user package if not otherwise specified, and moving
           | the core elisp capabilities to the el/emacs-lisp package
           | (used by el-user, importing everything), you'd create a clean
           | path for moving forward. I have zero time and energy to
           | contribute to emacs, but this is really the only fundamental
           | change I'd want as someone who does delve into elisp
           | frequently (or used to, not so much in the past year or so).
        
         | evolve2k wrote:
         | Yes this 100%. My son is just finishing high school and is
         | taking an interest in code to the level of questioning if it's
         | worth learning emacs/vim. At the time I spoke of how emacs
         | seems to be approaching a neovim moment and then pointed out
         | that practically if the community was not prepared to invest in
         | supporting new users like him, then he's better off not
         | supporting them and to look solidly at neovim (beyond the
         | default of vscode).
        
         | evolve2k wrote:
         | As I see it the older emacs users see many of their decisions
         | as right because they made them. What I'm sensing is a total
         | lack of basic design thinking. A "neoEmacs" could achieve this,
         | get clear who the new target audience is and based around this
         | what a neoEmacs clear project goals would be (something like
         | "position an emacs to be the editor of choice for people born
         | after the year 2000") [or whatever] and then with a new persona
         | start to unpack critical design considerations and priorities a
         | project plan from there.
         | 
         | For emacs to survive/thrive it will need to go through a
         | process of transformation. Even from these conversations I can
         | see right now that can't happen with the current core emacs
         | project. I neoEmacs would be a great way forward.
        
           | abhiyerra wrote:
           | Not saying this is the way to do it but there is a remacs
           | which is working on rewriting Emacs in Rust and fixing the C
           | level issues in the process: https://github.com/remacs/remacs
        
       | agumonkey wrote:
       | I'm surprised by this .. emacs have seen so much activity on so
       | many layers. From cute transient overlays, lsp, deeply critical
       | modes (magit), and even deep level work. The community is sharing
       | a lot of extensions of all kinds through melpa and similar. I
       | don't think emacs have been as 'popular' as now since long ago.
       | 
       | Also one consideration, emacs is still lean, all those others
       | editors are html/js based and hyper heavy.
        
         | klodolph wrote:
         | Funny that Emacs is considered "lean" today. It was definitely
         | consider one of the heaviest, most bloated editors out there in
         | the past. "Eight Megabytes And Constantly Swapping"
        
           | agumonkey wrote:
           | Indeed but the swap is real, I tried vscode (win64) on a 2nd
           | gen i5 and couldn't insert chars in real time. Emacs is not
           | smooth on windows but I couldn't go back to it fast enough.
        
         | BeetleB wrote:
         | The article did point it out. It likely has more users than it
         | ever has - just that the growth is slow, and it has dropped in
         | terms of percentage use.
        
           | agumonkey wrote:
           | but the market share war is absurd, nothing of quality came
           | out of this
        
             | snazz wrote:
             | Yeah, to an extent I agree. If you're just using your text
             | editor as a text editor--and you're willing to have fairly
             | limited support for integrations and other stuff like that
             | --worrying about market share is unnecessary. If you rely
             | on complex, IDE-type features for languages that move
             | quickly, you might be better-served by a more popular
             | editor.
        
       | JacksonGariety wrote:
       | The Emacs community should start by perfecting lsp-mode so that
       | it can compete with VS Code in terms of functionality. That will
       | simultaneously keep power users from switching AND bring in
       | people from other "easy to use" editors that lack such
       | functionality.
        
         | math0ne wrote:
         | Emacs needs this so bad but I really believe it could never
         | attract enough people to develop and maintain it without sane
         | defaults.
        
           | smabie wrote:
           | I find that lsp-mode works pretty well most of the time. If
           | you look at the commit history, the project is very active.
           | It's also pretty easy to set up.
        
             | da39a3ee wrote:
             | I found that it didn't work out of the box for me (Rust and
             | Python) but that eglot did work out of the box.
             | 
             | Eglot, not lsp-mode, will be the LSP implementation that
             | makes it into the GNU Emacs distribution (because it is
             | being developed with FSF assignments, and because the
             | maintainer is active in the GNU Emacs development
             | community, maintaining eldoc and flymake, and maybe
             | others).
        
         | edw wrote:
         | I basically gave up on Emacs and switched to a combination of
         | VS Code and old-school vi for Go and everything else,
         | respectively. Finding an effing theme that allowed me to
         | program in Go in a terminal without making LSP's overlays
         | unreadable was nearly impossible. I spent days trying to make
         | this work. I've used Emacs since 1991.
        
           | spudlyo wrote:
           | This is possible, but it's a bit of a pain. One problem is
           | that the popular themes cater to GUI Emacs users where you
           | have 24-bit color depth. On the terminal this gets
           | approximated to one of the available 256 colors, and this
           | approximation is often not great. This makes themes on the
           | terminal look weird sometimes.
           | 
           | With some work, you can enable 24-bit color support in TTY
           | emacs, which solves this problem. Combine this with some work
           | to either tweak or remove the more obnoxious LSP overlays and
           | you can have a fairly good LSP experience on the TTY.
        
       | math0ne wrote:
       | I think if you could easily install and use emacs to edit a text
       | file with no knowledge it's userbase would grow exponentially
       | overnight.
        
         | jorams wrote:
         | You can. By default it boots up with a menu bar and toolbar,
         | with familiar buttons to open and save files. Most keys do
         | exactly what you expect.
         | 
         | This does not affect the size of the userbase much. If your
         | needs are that simple, just stick to any basic editor you're
         | already familiar with.
        
       | the-smug-one wrote:
       | How about instead the Emacs website and splash screen recommends
       | different `flavours' of Emacs instead? Such as Doom and Prelude
       | for example. No reason to change vanilla Emacs.
       | 
       | Stop having Emacs be the recommended way to install and use
       | Emacs.
        
         | FandangoRanger wrote:
         | If only there were projects that repackaged Emacs together with
         | packages which adapt the program for people who prefer other
         | keybindings. And failing that, maybe Emacs should include some
         | facility for remapping key bindings?
        
           | the-smug-one wrote:
           | I don't understand why you're sarcastic, it's as if you did
           | not read my post.
        
           | mrob wrote:
           | I tried Ergo Emacs, because I like Xah Lee's attitude to
           | modernization, but even somebody so willing to abandon old
           | defaults can't make Emacs feel modern. Emacs makes
           | assumptions like "a document has a backing file on disk" and
           | "a cursor has a location on screen" that only make sense with
           | obsolete hardware. The weird janky feeling is embedded too
           | deep for any easy fix.
        
       | baby wrote:
       | All of these are missing the point imo. The biggest advantage of
       | modern IDE is the ease in trying new plugins and functionalities.
       | Everything is a menu away, and fuzzy searching makes it easy to
       | find out commands and learn their shortcuts. This whole process
       | just doesn't exist in emacs. To get a plugin, it's a huge step
       | (setting up custom elisp to get melpa) and then it's a huge
       | learning curve just to try a plugin.
        
       | xrd wrote:
       | I've been an emacs user for more than 20 years.
       | 
       | Is it just me, or is this article completely missing the point?
       | 
       | I've switched to VS Code because I can install extensions so
       | easily. Getting a theme installed is not my concern at all.
       | 
       | With emacs, I'm still never sure how to get elpa (or why not
       | melpa) to work correctly. And, modern packages for react never
       | seem to be available there anyway.
       | 
       | I'm still astounded package management is so bad on emacs.
       | 
       | For the record, emacs and tmux are still the first thing I
       | install on any new server. I still use emacs on a daily basis.
       | But, not on my desktop Linux machine anymore.
        
         | ssivark wrote:
         | Have you tried the "straight" package manager? Quite nifty.
        
         | wtetzner wrote:
         | use-package has basically solved the package management problem
         | for me in Emacs.
        
           | BeetleB wrote:
           | use-package can make package management easier, but _using_
           | it s not beginner friendly. As an advanced Emacs user, when I
           | read its docs, there were too many subtleties that can trip
           | up a beginner.
           | 
           | Indeed, just yesterday I stopped using use-package for one of
           | my packages as I couldn't figure out why it wasn't behaving
           | properly - reverting to _require_ solved it.
        
         | jakevoytko wrote:
         | I've been gradually switching towards completely using IDEs for
         | like 8 years now, and in the past 2 or 3 I've broken free
         | completely. Some of my symptoms are the same as yours:
         | Frustrating package management, obvious missing gaps in
         | functionality.
         | 
         | My conclusion is slightly different: I don't need a text editor
         | anymore. I need an IDE and it's a bonus if it's a good text
         | editor.
         | 
         | Efficient text editing is nice. But I spend a lot of time
         | jumping between files, looking up definitions, reading
         | documentation, tracing through code, debugging, comparing tests
         | and regular code, etc. Plus all of the features that you
         | expect: (colorblind-friendly) syntax highlighting, syntax
         | highlighting, linting, etc. This is where the package pain
         | comes in. I don't want to figure out how to configure the cross
         | product of "every single IDE feature that I need" and "every
         | single language that I use." I gave up. It's too much. I want
         | my environment to either do it by default, or install a single
         | plugin per language and never think about it again.
         | 
         | I'm not sure how Emacs can get "more modern," because being
         | modern would likely start from the premise that you'd need to
         | allow the core innovation of IDEs. They provide a pluggable
         | framework to get uniform behavior across every language that
         | you use. That ship sailed in Emacs - how do you move away from
         | 40 years of "we ship a vanilla experience and you customize
         | your environment completely to your own liking"?
        
           | rightbyte wrote:
           | I really like using Emacs but as soon as I touch a big
           | project I need a point and click friendly IDE with
           | refactoring/smart search support to keep my head from
           | spinning. It would be great with some vanilla autocomplete
           | with a language server thing that "almost just works".
        
         | fmakunbound wrote:
         | What's extending VS Code like compared to Emacs?
        
       | banana_giraffe wrote:
       | The article makes some interesting points, to me, though, I think
       | the Emacs devs need to have a discussion with themselves if they
       | even want to go here.
       | 
       | Here's what I see as an outsider if I'm a Windows users and want
       | to give this great emacs editor I've heard so much about a try:
       | 
       | First off, I search for emacs, I land on a page with a Windows
       | link. I click that link, I get a rant about how Windows is evil.
       | 
       | Ok, fine, sure, gnu and all of that.
       | 
       | Then I follow a link to download it from a mirror. That link
       | doesn't actually lead to a download, it leads to a directory on
       | the mirror that I need to drill down into another directory. The
       | README in this directory contradicts the emacs website on which
       | version I download. I go to download the installer, if I try to
       | run it, I get a big scary warning (I can't blame GNU on this too
       | much, but still, more friction). Finally, I have emacs on my
       | machine. (If I follow the directions on the webpage, I download a
       | zip file, and I'm left wondering why I should run "runemacs.exe"
       | and not run "emacs.exe". I know why, but dang it, this is just
       | silly)
       | 
       | I run it. I'm presented with some combination of a text UI and
       | iconography from the 90's. I get emacs doesn't change much, but
       | this adds to the sour taste already building.
       | 
       | And then there's the intro, which is what this article is
       | touching on. The first thing it teaches me is some odd-for-me
       | commands to navigate that as a user are all new and unlike every
       | editor I've used.
       | 
       | Now I decide to play around and open a file. Do I want to "visit
       | new file" or "open file"? I pick one, and it helpfully defaults
       | to showing me files in the emacs installation folder. Great.
       | 
       | And by this point the thing has beeped at me a dozen or so times
       | for reasons known only to emacs, and I'm tired of it all.
       | 
       | Emacs is clearly designed for people that use emacs, and that's
       | fine, but if you want to get more mindshare, you'll need to,
       | first thing, ask me if I want to set it up to act like VS Code or
       | IntelliJ or Emacs.
        
         | dragandj wrote:
         | > it teaches me is some odd-for-me commands to navigate that as
         | a user are all new and unlike every editor I've used.
         | 
         | That is the point. If it worked the same as every editor you've
         | used, why switch? The point why Emacs is better is because it's
         | different. These things need to be learned. Otherwise, Emacs
         | can't help you.
         | 
         | It would be like people complaining that playing a guitar is
         | different than pushing the play button on every music player
         | they've ever tried. Well, yes, that is the point.
        
           | amadeuspagel wrote:
           | Really? The point why Emacs is better is that it has
           | different keyboard shortcuts?
        
             | acqq wrote:
             | That is what I never understood -- I've implemented exactly
             | this "which editor emulation do you want to use" and "edit
             | your own bindings" for one Windows product containing
             | editor in early nineties. It wasn't hard. The default was,
             | of course, the "least surprising" for the platform, but it
             | also allowed other popular editors then. If there's
             | anything that can reduce friction to the new user, it's
             | that: a beginner can use the actions he already knows how
             | to do. Let him just the ability to access those that are
             | unique -- for these he anyway doesn't have any reflexes.
             | 
             | My biggest eyeroll whenever I looked at Emacs "help" (or
             | any other, Emacs is not unique in that approach) was "and
             | then you use Meta key." Well I don't think that anybody
             | bought a physical keyboard with a key on which it was
             | written "Meta" for a least 30 years. How about recognizing
             | that for the beginners?
             | 
             | https://en.wikipedia.org/wiki/Meta_key
             | 
             | "But, meta is not always the same key" I hear every time --
             | fine, but that should also be the part of "advanced stuff."
             | Just let people know that they initially have Alt, Ctrl and
             | Escape where on the keycaps Alt, Ctrl and Escape are
             | written.
        
               | dragandj wrote:
               | In Emacs, you can configure literally anything,
               | _including the keybindings_. Some people use Emacs with
               | Vim keybindings (Evil, Spacemacs, Doom).
               | 
               | Now, for me, typical Emacs keybindings, of which the
               | majority is defined in 3rd party packages are very
               | logical, while Vim's are not. But the users who prefer
               | the Vim way did they work and configured Emacs however
               | they liked.
               | 
               | OTOH, of the million people who complain and ask for
               | Ctrl+C for copy and Ctrl+V for paste and whatnot, I've
               | never seen anyone who did the 2 minutes or two hours of
               | work, went into a configuration, and changed these keys.
               | Why's that so, if that's such a great idea?
        
               | tsuujin wrote:
               | Probably because having the default be something other
               | than what a user is used to is not going to compel them
               | towards doing the research to fix it.
               | 
               | In order to get cua-mode working in emacs, you first have
               | to know that it exists. I didn't know it existed for like
               | two years of daily emacs usage, I just can't find it in
               | myself to expect someone to know about it after 10
               | minutes.
               | 
               | By the time you know it exists, you've already accepted
               | the keybindings and you've already put in the time to
               | build some muscle memory, and it doesn't seem as
               | important anymore.
               | 
               | The fact that some people get past it isn't really an
               | indicator that it isn't a huge friction point.
        
             | bitmunk wrote:
             | Nope, it's the ecosystem around them.
        
           | schwartzworld wrote:
           | Emacs has a lot of selling points, but the keybindings aren't
           | one of them.
           | 
           | I spent weeks trying to switch, but ultimately I found the
           | experience frustrating. UIs follow the same patterns for a
           | reason, it makes it easier for users to adopt the tech.
           | 
           | The biggest draw for me was org-mode with org-babel. I've
           | never seen anything else like it
        
             | quadrifoliate wrote:
             | > Emacs has a lot of selling points, but the keybindings
             | aren't one of them.
             | 
             | I find this difficult to understand for people who use the
             | terminal. The keybindings are the _exact same_ for most
             | terminals by default, since they use readline. Want to go
             | to the end of your command? `Ctrl-E`. Want to go to the
             | beginning? `Ctrl-A`. Want to search backwards through
             | history? `Ctrl-R` (same thing you would do while searching
             | backwards through an Emacs buffer).
             | 
             | All of these _also_ happen to work everywhere in MacOS. Put
             | your cursor on the URL and press Ctrl-A and Ctrl-E.
        
       ___________________________________________________________________
       (page generated 2020-09-25 23:00 UTC)