Catch up on stories from the past week (and beyond) at the Slashdot story archive

 



Forgot your password?
typodupeerror
×
IT

Who Needs Modern Emacs? (batsov.com) 135

Bozhidar Batsov writes: Every now and again I come across some discussion on making Emacs "modern". The argument always go more or less like this - Emacs doesn't look and behave like and the world will end if we don't copy something "crucial" from it. [...] If you ask me -- there's pretty much nothing we can do that would suddenly make Emacs as popular as VS Code. But you know what -- that's perfectly fine. After all there are plenty of "modern" editors that are even less popular than Emacs, so clearly being "modern" doesn't make you popular. And there's also our "arch-nemesis" vim, that's supposedly as "dated" as Emacs, but is extremely popular.
This discussion has been archived. No new comments can be posted.

Who Needs Modern Emacs?

Comments Filter:
  • by aRTeeNLCH ( 6256058 ) on Tuesday June 07, 2022 @04:31PM (#62601354)
    Answer: I don't, I use vi. Just because it won't let me out...
    • Answer: I don't, I use vi. Just because it won't let me out...

      That's the first thing they should teach you in Sunday school. Seriously, I think vi is one of the most touch-friendly of the old school editors. For editing texts written in the English alphabet, the only key combos that require you to do a two-finger salute involve the shift key. And on some touch screen keyboards you don't even need that shift key, since you can press and hold a virtual key to select from a popup of alternate.characters, say, to get capitals or the colon "above" the semicolon key. For th

      • by hawk ( 1151 )

        >the only key combos that require you to do a
        >two-finger salute involve the shift key.

        As a grad student working on the program for my method, I actually needed medical treatment from using EMACS heavily for a week.

        With the infernal control key in exile (CKIE keyboard), I had to rotate and reach it *so* many times that I actually muscle in my left pinkie finger!

        just by coincidence, a couple of days later a little piece appeared by the side of the keyboard one morning when I came in. Now, *I* would nev

  • Let's start a fire (Score:4, Informative)

    by franzrogar ( 3986783 ) on Tuesday June 07, 2022 @04:33PM (#62601362)

    Q: Who needs modern Emacs?

    A: No one when you have vim.

    • Re: (Score:3, Insightful)

      by Shinobi ( 19308 )

      Nano does everything you need for config editing without a clunky interface(important when you have fine motor dyspraxia), and for coding there are better environments, so no point going with Vi, emacs or any of their derivatives. And for mass text editing, well, there are better editors for that too, that don't cause my hands to cramp up within minutes. The irony is that for me, a mouse or trackball is less painful than keyboard-only use nowadays.

    • by guygo ( 894298 )

      vi is good. TECO is better. :-)

      • so funny

        but you had to be there

        • by guygo ( 894298 )

          a distant galaxy. Long ago, far away...

          • no shit

            Character editor. Command line editing hundreds of thousands of lines of macro-11 code for a commercial industrial installation. So much visualization; not unusual to see a coder working with eyes closed.

            It's how I learned to always work with code that was working. Zero errors.

            Might as well have been clay tablets and carving sticks.

    • That used to be called a religious war, you kids and your whishywashyness about killing heretics...
    • don't need both when you have echo .. heh
    • by dbialac ( 320955 )
      Well that and because Eclipse greatly surpassed it as the world's most bulky editor. It's such a resource hog that a text editor like emacs wasn't ever going to be able to keep up anymore.
    • by jd ( 1658 )

      I use vim primarily, but it misbehaves on some of the platforms for some things and there I use emacs to fill in the gap. Heterodoxical workarounds for issues is an easy way around limitations. Sticking to a monoculture is only going to give you mono in the end.

  • Including a dose of "EMACS carpal tunnel" in the left pinkie...

    • I think you've touched on the core of the issue here. In my experience it's not a "this editor versus that editor" flamewar. It's the older generations of programmers defending the tool they used every day for a good number of decades. By attacking their editor choice you're attacking a part of their identity, and that never ends well.

      • by nightflameauto ( 6607976 ) on Tuesday June 07, 2022 @05:01PM (#62601482)

        I've been using emacs since (edited to protect the ancient) and I despise it almost as much as I despise vi. Good lord, my kingdom for a decent shell editor that doesn't require you to type sixty-five different key combinations just to open a document, edit one line, save it, then close. They all suck at the one job they're supposed to be good at, and I'm one old timer that doesn't mind saying it.

        • by Shinobi ( 19308 )

          For simple config file changes etc via the CLI, Nano is acceptable, not too straining on the hands.

        • Maybe learn some sed 1 liners.
        • by ufgrat ( 6245202 )

          What you describe isn't emacs, it's a monkey with a typewriter. And if it's only one line, why aren't you using sed?

          Yeah, the key-combos are arcane. But the keyboard's limited, and emacs isn't.

          But modernizing emacs is exactly what it doesn't need. You want a modern editor, there are options that aren't called emacs.

          If you're using a DECwriter, vi is fantastic. :p

        • Im an emacs guy too, well sort of , I use mostly the IntelliJ editors now. But if I have to spend quality time with a server, and Im allowed to, emacs is usually the first thing I install (As well as git cloning my configs and customisations) However I have to concede that I'm using it a lot less than before. If I just need a quick snappy config file edit Nano is a no brainer, although begrudgingly sometimes that'll be vi even though I really have no idea what I'm doing in that editor. ANd for coding, well

          • Try Jed.

            It's like someone decided they wanted the emacs editor, with all the same keystrokes, but without the operating system, and FFS write it in C instead of LISP.

            Also, BTW, I love when someone proudly lists all the BASH key combinations they use, but then tell me they use vi and can't stand emacs :-O

      • I think you've touched on the core of the issue here. In my experience it's not a "this editor versus that editor" flamewar. It's the older generations of programmers defending the tool they used every day for a good number of decades. By attacking their editor choice you're attacking a part of their identity, and that never ends well.

        More to the point, any "attacks" are unnecessary. As long as whatever editor you use does what you need it to do, especially in a way that's comfortable and helps you be productive, who cares which editor it is. Also, pick the tool for the job at hand. For example, for small things I use Vi(m), but use Emacs for larger/longer edits -- or things I want to write/record a macro for, but not necessarily write a separate Perl / Ksh script, etc...

        As for me, I've used Emacs since the early/mid 1980s and it (sti

        • by Frobnicator ( 565869 ) on Tuesday June 07, 2022 @06:31PM (#62601748) Journal

          More to the point, any "attacks" are unnecessary. As long as whatever editor you use does what you need it to do, especially in a way that's comfortable and helps you be productive, who cares which editor it is. Also, pick the tool for the job at hand. For example, for small things I use Vi(m), but use Emacs for larger/longer edits -- or things I want to write/record a macro for, but not necessarily write a separate Perl / Ksh script, etc...

          This is the detail most people miss.

          Sure, if you're on your main work computer feel free to fire up whatever editor you want. Let's absolutely keep growing and expanding the list of amazing tools out there. There is no battle, no need for attacks, there is room for all to improve and for any other entrants that can join. Let's have the best of today and the best tomorrow can offer.

          But sometimes you can't use those tools.

          Sometimes you're on a remote terminal to a text only interface, maybe a slow serial interface, and those fancy tools aren't available.

          When you're in that scenario you need tools that work there in those old low memory, text-only, low bandwidth, low cpu environments. And those tools are not Visual Studio, Eclipse, IntelliJ, or whatever other fancy tools you want. That means sed, vi, emacs, and a few other tools that are old as dirt but rock solid.

          • When you're in that scenario you need tools that work there in those old low memory, text-only, low bandwidth, low cpu environments. And those tools are not Visual Studio, Eclipse, IntelliJ, or whatever other fancy tools you want. That means sed, vi, emacs, and a few other tools that are old as dirt but rock solid.

            I remember using Vi and Emacs (and JOVE [wikipedia.org]) on VT220 terminals attached to the CS Department's VAX 11/785 running BSD 4.3 when at ODU in the mid 80s (and on a few Sun 3/4 systems as well) -- as well as Rogue and Hack during my off time in the wee hours of the night/morning. Actually a pretty satisfying experience compared to a graphical environment -- feels closer to the system. The only editor I've probably liked as much as Emacs was the one on the Xerox Dandelion 1108 LISP system I used as an undergraduate

      • by MrKaos ( 858439 )

        It's the older generations of programmers defending the tool they used every day for a good number of decades.

        No. My younger colleagues (23 -30 yo) all spent time learning vim. I gave them my .vimrc with my plugin and the youngest of them wa determined to be able to use it as an IDE so they could get rid of Jetbrains.

        A year later he had surpassed my vim skills an was sending me back .vimrc revisions as a way to thank me for introducing him to the most powerful editor made for programmers.

        I'd say it was an isolated case however if you look at nvim, with the structural improvements and then put that in VSCode (y

    • by fahrbot-bot ( 874524 ) on Tuesday June 07, 2022 @04:56PM (#62601466)

      Including a dose of "EMACS carpal tunnel" in the left pinkie...

      Remember the older Sun keyboards with the Control and Caps-Lock keys swapped -- Control above the left Shift and Caps-Lock below? Being an admin in places with those *and* non-Sun systems was fun... :-)

      • by Shinobi ( 19308 )

        I once visited a computer club, where some of the guest terminals were old SUNs with those keyboards... To add to the murder-tick in my eyes, on the other side of the room sat the old monkeys with their Model M keyboards, achieving 45WPM at most, but sounding like a series of dry tumblers filled with gravel.

      • by hawk ( 1151 )

        > with the Control and Caps-Lock keys swapped -- Control above the left Shift and Caps-Lock below?

        that wasn't a Sun thing.

        That was pretty much *every* keyboard until an IBM exec got his undies in a wad because capslock wasn't in the same place on an AT as on a selectric keyboard.

        And so, midway through the life of the AT, the control key went into exile, and the world became a darker place.

        I *still* remap my keyboards to put control where God Meant it to be . . .

    • by oldgraybeard ( 2939809 ) on Tuesday June 07, 2022 @05:14PM (#62601524)
      "left pinkie" I usually remap ctrl to caps lock "where it belongs" on all of my workstations ;)
    • by tbuskey ( 135499 )

      Lots of muscle memory.
      Emacs keystrokes became embedded in a number of tools. bash, tcsh, Interleaf (publishing). I think Netscape once had them too.

      I learned on DOS with microemacs, joe and finally Freemacs.
      Before that wordstar keystrokes were embedded in the Turbo products and a number of other editors.
      I learned vi on DOS with calvin, stevie, elvis, Elvis was the standard vi on Linux in the early days.

      I finally got to use GNU emacs (and xemacs or Lucid emacs) with Linux and sysadmin on the various Unixe

  • I do mostly use Aquamacs - EMACS that is somewhat better integrated into the Mac, so it supports some system features a little better. However I'm still mostly using the same key commands to move around or between buffers, or even for window management (like placing a buffer in a new window).

    So I'm not sure if that's considered a "modern" variant but I do like using it in system, instead of terminal windows.

  • Eh, I don't think "modern" is that important to someone who chooses emacs. For what it's worth, I used to use emacs as my main editor, but I ended up switch to vim. After getting past the learning curve I found that I preferred vim (or nvim), and some variant of vi is pretty much always present on any Linux system. I've also found myself using VS Code quite a bit, but vim is still my main editor, especially from the command line.

    • by jythie ( 914043 )
      There is also the problem that 'modern' could mean pretty much anything the speaker imagines. There are new features, new integration, new go faster stripes, new file formats, etc, but really text editing has not really changed in a fundamental way.
  • Aquamacs (Score:4, Interesting)

    by Darinbob ( 1142669 ) on Tuesday June 07, 2022 @04:44PM (#62601428)

    Aquamacs is GNU Emacs with changes to make it suitable for MacOS. Ie, using standard MacOS keys for some operations (Command-Q to quit), tabbed windows, etc. It feels modern enough. For a programmers editor, it covers it all and does not feel in any way ancient. Do all the stupid stuff that modern editors do for people who hate to use a keyboard (drag and drop text if you want). Generic GNU Emacs on Linux (and thus also on Windows via WSL) isn't too far behind but it does require a bit more upfront effort to configure it how you like.

    Not sure what this topic is about, except maybe to start flame wars?

    • GNU Emacs has drag and drop of text as well, though it does have to be turned on. It is limited to the current frame though. It also accepts dropped text out of the box. And CUA mode is a checkbox away.

      Normally I don't want it to be too easy to quit Emacs, since I often try to do so by mistake and I want to keep it running. Muscle memory from years of using low memory systems is annoying at times.

      • Switched to Windows/Linux from MacOS this year, and muscle memory of Aquamacs is making it a bit annoying on generic Linux GNU Emacs. Like wanting to do Command-S to save files; which ends up being Windows-S...

        Still, I haven't found anything better than Emacs. The IDEs all seem in the Visual Studio and Eclipse style, wtih one big window but only one editing window at a time, insistence on creating a project (I just want to type the file name), and refusal to be a generic editor (I can even view and edit bi

        • You can bind Super-S to save, and that won't collide with anything important.

          There is little in the way of editors which come close to Emacs, which actually is surprising. But there are few editors which have the kind of legacy Emacs has, stemming from a time when it was self evident that you could use your editor to edit, well, anything.

          I also find that with the "which" plugin, Emacs becomes really easy to use (and learn). And with something like "selectrum" and "consult", Emacs is a truly amazing at analy

  • "Emacs doesn't look and behave like and"

    WTF?!
  • by oldgraybeard ( 2939809 ) on Tuesday June 07, 2022 @04:48PM (#62601442)
    Sure it is annoying, different and archaic. But it does what an editor needs to do and does it well. I stopped using IDE's (except for XCode, iOS development) long ago because I hate wasting time on how to, what changed, new feature, now do it this way stuff. Heck on Apple Development I spend just as much time working on getting XCode updated, running, what changed now, New errors, Code Signing, Deployment all to work, as I do writing code.
    As for Visual Studio, I abandoned that back when it was still proprietary 15+ years ago. And as for the new latest greatest Eclipse, JetBean's yea they look great. And I am sure they work great. But I don't need the extra frustration and overhead.

    But of course, writing code/compiling from the command line is old school and not for all projects. And I don't expect others to do what I do.
  • by fahrbot-bot ( 874524 ) on Tuesday June 07, 2022 @04:50PM (#62601450)

    Not sure what that means or why it matters. I've been using Emacs since the early/mid 1980s; it's fine and does everything I need it to do -- and if there's a shortcoming, it's super extensible using Emacs LISP. For quick things, I'll fire up Vi(m) but for serious work, it'll be Emacs. Go on and use something else, but sooner or later there will an Emacs Mode for that (too). :-)

    • by dbialac ( 320955 )
      I'm not an emacs user/fan, but this statement holds true. Products reach full maturity, and people need to justify their jobs. To do this, they keep coming up with new features that stop making the product better and instead make the product worse. Then typically a lighter product comes on the market, and replaces the former. See also AOL IM, ICQ, Skype, Signal, Telegram, Slack, Teams and whatever comes next.
  • by gweihir ( 88907 ) on Tuesday June 07, 2022 @04:57PM (#62601470)

    Emacs works fine as it is. Stop trying to "improve" it, it makes things worse.

    • by dbialac ( 320955 )
      Yeah, I'm not at all an emacs user/fan, but this statement holds true. Products reach full maturity, and people on the development team need to justify their jobs. To do this, they keep coming up with new features that stop making the product better and instead make the product worse. Then typically a lighter product comes on the market, and replaces the former. See also AOL IM, ICQ, Skype, Signal, Telegram, Slack, Teams and whatever comes next.
      • by gweihir ( 88907 )

        Indeed. The Windows GUI also comes to mind. Has pretty much been finished since Win7, now they are making it worse. Or Linux systemd. A "solution" in search or a problem that basically gets everything wrong, is far too complex and replaces light-weight solutions that worked nicely.

  • by Narcocide ( 102829 ) on Tuesday June 07, 2022 @04:59PM (#62601478) Homepage

    I think what people really mean by "not modern" is that it's too hard for them to learn so they want to make it like a baby's toy.

    • The whole point of the GNU/Linux mindset is that if you don't like the tools given you, you can make your own without affecting backward functionality. You don't change the look and feel of EMACS or VIM just to make it "look modern", because when an older admin tries to use it and cannot perform a simple function with it, he'll rm the damn thing. In some cases of design, disruption is a good thing.... but *NEVER* in the case of a user interface.
  • by Hans Lehmann ( 571625 ) on Tuesday June 07, 2022 @05:23PM (#62601560)
    I currently use Sublime and Visual Studio. Before that it was Borland and UEStudio for many years. Before that it was QEdit, back when I was programming on Windows 3.1. Before that, I probably used edlin, hard to remember now. Use whatever makes you happy.
  • by The Evil Atheist ( 2484676 ) on Tuesday June 07, 2022 @05:30PM (#62601576)
    It's always referring the meta keys. Just say alt.
  • Modernizing emacs shortcuts can probably be done in an afternoon by some lisp expert. It most likely has been done already (spacemacs.org ??). So what's the big deal?

  • And there's also our "arch-nemesis" vim, that's supposedly as "dated" as Emacs, but is extremely popular.

    Comparing Emacs to Vim is like comparing a kitchen sink to a *much* smaller non-kitchen sink, with no running water, in the shed -- that you could put into that kitchen sink, when it needs to be washed. :-)

    (Note the smiley face.)

    • And both sinks have taps that work when you whistle at them instead of turning the handles, and instead of water coming out of then when you do that chocolate sauce shoots out of the plug hole etc. etc.
    • Re:arch-nemesis? (Score:4, Interesting)

      by ufgrat ( 6245202 ) on Tuesday June 07, 2022 @06:24PM (#62601728)

      Once, yes. Now, they're both tiny compared with the GTK and QT toolkits.

      vi was a brilliant piece of programming. vim took away what made vi great, and added nothing useful. It's a morse code transmitter with a keyboard. ;)

      • by dasunt ( 249686 )

        vim took away what made vi great, and added nothing useful.

        What did vim remove that vi had?

  • by drillbug ( 126567 ) on Tuesday June 07, 2022 @06:28PM (#62601740)

    Emacs has been my daily driver for about 30+ years for reasons that changed over the years. Tags searching, integrated build and vc, integrated rmail, my own custom lisp extensions, syntax highlighting, and so on.

    Some are everywhere now (search, highlighting, build), some are now moot (rmail), but newer editors seem to use the mouse as their primary UI, even if they grudgingly give you key bindings for some things. Or pretend to have emacs bindings to pull in grandpa.

    That just busts up my flow. And the constant tooltips in VS is like watching a freaking cable news show about your code. (BREAKING! unsigned int!!) I've used most of them, but keep coming home to emacs.

    • by rnturn ( 11092 )

      ``And the constant tooltips in VS is like watching a freaking cable news show about your code. (BREAKING! unsigned int!!)

      This ^^^^

      Every time I manage to turn one off one of those tips/reminder windows that always obscure what I'm trying to type, it seems that another becomes enabled to take its place. I dislike popups on web pages and I really dislike them in an editor. I like VS Code despite it being a resource pig but, Jeebus, where's the master switch to disable all the hand-holding?

    • I still say that search and movement in emacs are better than in any other editor. With extensions like Avy, Helm and Consult, it's far easier for me to narrow a file down and put the cursor exactly where I want it, which is half of what I'm doing in the editor in the first place. I've started using Transient (the system Magit uses to construct its very nice little menu/command execution stuff) to make it easier for me to construct commands to fire off command-line builds.

      Have I mentioned that I'm doing thi

  • There was a phrase I heard in an old movie, forgot which movie. Something like, which was interesting at the time.

    You do not Listen to Hendrix, you need to hear Hendrix.

    That is how I view Emacs, you need to "hear" Emacs. After investing the time, you will find out how powerful it is compared to anything else.

    Yes, it can do things easier than no other editor does. A couple of examples:

    1. Need to edit a file on a remote server via ssh ? Emacs easy, and that is with ssh encryption.

    2. Get a manual for a function ? Easy

    3. Source Code Control with git (+ github),

  • I love emacs but I very rarely use it anymore, mostly just when I want to do some work on a script (or I want to use a macro do make a bunch of changes to a file). The problem is it's kinda lost its niche.

    It's a fantastic text editor, but if I'm writing a document I want a word processor, and if I'm writing code I want an IDE that has a deep integration with the underlying language. I suspect there's emacs plugins that make it fairly capable at both of these tasks... but I'm not really willing to go hunting

  • The real appeal of Emacs is endless add on Lisp packages available and relative ease of rolling your own if need be. The later has a learning curve, but certainly peace of cake compared to adding a feature to a conventional editor.

    Would be great to have a modern alternative. It can in fact be much easier to program than Emacs through modern programming features like auto completion and ability to trade off performance for simplicity vs hardware for which Emacs was designed. I guess I should look at things l

  • "Emacs would be a great operating system, if only it had a decent editor."

  • At this point Emacs is so much better for editing code than VS Code that anyone that thinks Emacs needs updated to be like VSCode clearly isn't thinking straight.

    On top of that, Emacs does many, many more useful functions beyond editing code that it makes very little sense for me to switch out to a different app just to edit one type of text.

    Emacs is not VS Code; it is far superior and if there are a lot of VS Code users that's because most coders are shit - hence the popularity of Python.

  • I will stick with Notepad++ thank you very much.
    That way, I can see all the commands available to me and the save and close buttons.
  • Even on my Mac laptop, I install home-brew, brew the latest version of bash interpreter, on which I have the best vim configurations.
    I do use VS Code and Xcode once in a while, but pretty much all of my meaningful editing are on vim...
  • I've been a die-hard Emacs user since I was introduced to it in 1989.
    One of the only things I miss is useful and ubiquitous Intellisense-like contextual hinting and auto-filling. I know there are about a dozen elisp packages that try to do this but none are as good as Visual Studio and Visual Studio Code, IntelliJ, etc.

  • Give me a version of Brief that runs in Linux. In the eighties and nineties, it was *the* programming editor everyone use on PCs. Simple, easy to start with*, and you could go very far in it.

    * As opposed to emacs, which I *think* I remember how to exit from.

    Emacs, the windowing operating system masquerading as a text editor.

  • People tend to stay in the religion that they grew up in.

  • I started out with emacs with "Brief", a programming editor
    by some folks out of Brown U. which basically cloned some
    version of emacs, which forced me to learn a bastardized
    version of lisp to make it work on a non-standardized
    version of IBM-BIOS so I could remap the key-bindings
    to something rational. That and Turbo Pascal launched
    my career, along with a copy of Lattice C and an early
    version of K&R C. I'm 60yo now but I do look fondly
    back on those days and still use xemacs on Win7.

It's hard to think of you as the end result of millions of years of evolution.

Working...