8 ms·
It's weird to be building an Emacs clone nowadays. It's fairly clear that Vim and Emacs _both_ lost the editor wars, and VSCode has come out on top. That's not
by dleslie 3y ago
It's weird to be building an Emacs clone nowadays. It's fairly clear that Vim and Emacs _both_ lost the editor wars, and VSCode has come out on top. That's not to say either Vim or Emacs are dead or will disappear, but building a clone of a niche editor is risking dooming the project to being a niche within a niche.
If it's just because hacking is fun, then by all means have a blast. But if the goal is to compete with Emacs, consider instead setting the target at something with far greater popularity than Emacs.
- LukeShu 3y agoI'm pretty sure I read this exact comment 10 years ago, but "Sublime Text" instead of "VSCode".
- tom_ 3y agoAnd Atom, as well.
- tom_ 3y agoI suppose TextMate was a bit more niche, being OS X only, but at one point it seemed to be everywhere.
- tom_ 3y agoHmm, while we're counting, what about BRIEF? At one point, widely enough used that Visual Studio even had BRIEF emulation! (When I was starting out in software development, almost all of my colleagues used this. Now just a footnote.)
- ericvsmith 3y agoBRIEF by UnderWare! I loved that editor. I particularly liked the “go to this line number, but use the line number before unsaved edits”. This let you compile a file, get the error log, then start making edits; but the line numbers in the error log were still useful. https://en.wikipedia.org/wiki/Brief_(text_editor) https://en.wikipedia.org/wiki/Brief_(text_editor)
- dleslie 3y agoVSCode is why Sublime Text, Atom, and others are not as relevant as they once were.
- BeetleB 3y agoAnd in 10 years, there will be a comment saying "XYZ is why VSCode is not as relevant as it once was." And Emacs will still be around.
- idispatch 3y agoAnd VSCode will still be around.
- omaranto 3y agoMy impression is that all of those are fads, we jsut haven't seen VS Code fade way yet, like the others have. I've used Emacs throughout all of those fads, seems easier than switching editors every few years.
- heinrichhartman 3y ago> lost the editor wars What does that even mean? Both editors have large&strong communities. I don't see them going anywhere.
- iainctduncan 3y agoIf someone is interested in lisp, you can assume they aren't driven by mass market popularity. Why on earth would want to go up against MS on their turf???
- deleted 3y ago[deleted]
- thomastjeffery 3y agoDiversity of interest does not equate to intensity of interest.
- uludag 3y agoSoftware definitely doesn't have to be popular to be useful. Not being extremely popular comes with advantages as well. Nevertheless, Emacs is probably more popular than a lot software shared on Hacker News.
- Pr0ject217 3y agoSpeaking from personal experience, I moved from VSCode to Doom Emacs a year ago, and the on-ramp wasn't nearly long or as tough as I thought. The defaults are good, and anything else that I customized I actually just used ChatGPT/GPT-4 to generate it. It took about a month to get used to the new setup. With LSP/Magit, it feels like I'm not missing out on much from what VSCode offered, and then whenever I want to personalize it, I can. For a creative person (which I'd argue most developers are, kind of by definition), it's fun.
- dleslie 3y agoI've been using Emacs for roughly three decades; it's my favourite editor. And for sure, LSP has been an absolute game changer. Worth noting is that LSP came from Microsoft as part of their efforts to build a better editor experience; and its integration with VSCode is largely unparalleled. For example: in VSCode the user doesn't have to understand how to install a language server, it just automagically suggests allowing it to install one for you. In Emacs, if you're using the official distribution you will have eglot, whose developers specifically refuse to add that functionality. If you're savvy enough you can install lsp-mode and it will add that functionality, but at that point you may as well just install the language server yourself. And about magit: it's a beautiful piece of software, it truly is. It's also hot garbage with large repositories hosted on Windows. I simply cannot use it for work because every operation takes around a minute to resolve, which locks up Emacs entirely. Again, here VSCode shines because the default git integration is pretty good, and there are extensions that make it excellent. For these reasons, and more, I always recommend VSCode to new developers and don't recommend Emacs. Emacs is for people who want to make editor customization a _hobby_.
- chlorion 3y ago>For example: in VSCode the user doesn't have to understand how to install a language server, it just automagically suggests allowing it to install one for you. In Emacs, if you're using the official distribution you will have eglot, whose developers specifically refuse to add that functionality. I can understand this not being friendly for some users, but on most systems that people are using Emacs on, software is installed through a system package manager and not downloaded and unpacked into ${HOME}. I do not want software that isn't the system package manager to install LSP servers. Maybe this is more of an issue for people using Emacs on Windows, since there is no system package manager, and people are less likely to understand how to install stuff.
- BeetleB 3y ago> It's fairly clear that Vim and Emacs _both_ lost the editor wars, and VSCode has come out on top. Many (most?) Emacs enthusiasts don't use it primarily for SW development. VSCode simply isn't an alternative for their needs. Make two lists: - List of things you can do in VSCode that you can't in Emacs - List of things you can do in Emacs that you can't in VSCode The latter list will be 10-100x longer.
- digging 3y agoSince I only use VSCode (or Codium...), what sorts of things would be in the latter list?
- BeetleB 3y agoCan I use VSCode to: - Read and reply to my emails? - Manage TODOs across domains (so e.g. I can make a TODO that has a link to a specific email)? - Use it as a Mastodon client (read and write toots, boost them, favorite them, etc) - Scrape a web site (several pages), getting only the relevant content[1] - Bulk rename/copy lots of files with a custom naming algorithm - Chat on IRC - Use it as a spreadsheet - Do numerical integration with it - Have a literate document with code in several languages that talk to one another - Annotate PDFs This is a tiny list. In fact, you can browse past Emacsconf talks to see how people use it. [1] https://blog.nawaz.org/posts/2023/Mar/solving-a-scraping-problem-with-emacs-and-org-mode/ https://blog.nawaz.org/posts/2023/Mar/solving-a-scraping-pro...
- cmrdporcupine 3y agoTIL about mastodon.el and now I'm off to MELPA that hot stuff.
- samatman 3y agoI think it's fair to say that most people don't need, or even want, their IDE/text editor to do a bunch of stuff that can be done with other programs. I know Emacs people like it (I was, at one time, an Emacs person), and that's great, but "can your text editor/IDE do a bunch of not-text-editor-slash-IDE stuff?" is a weird gotcha. Sometimes you want to buy your dessert topping and floor wax in separate cans, y'know?
- evanriley 3y agoWhy do anything if there is already someone doing it?
- deleted 3y ago[deleted]
- f1shy 3y agoThis post MUST be pure irony. Big lol! Thanks for the fun.
- kazinator 3y agoI need an editor that starts up, cache cold, in a few hundred milliseconds at most. Thanks for playing.
- cmrdporcupine 3y agoTo be fair, that's not emacs. I'm a huge emacs fan, but its startup is awful compared to vim & friends. Yes, you can use emacsclient, but that's a bit of a different thing and has its own disadvantages.
- dleslie 3y agoMy Emacs is full of extra bits and pieces, and it cold starts on a Pinebook Pro in 6 seconds. That said, I still run an Emacs daemon and use Emacs clients, which start up in milliseconds.
- cmrdporcupine 3y agoI mean, mine's about the same startup, but that's ... like a hundred times worse than a Vim startup.
- mark_l_watson 3y agoWell, Lem starts very fast, but more like 1 second or a little longer. It is very snappy to use also.
- serial_dev 3y agoI, for example, am very happy that the Helix editor exists, which could be considered a clone of Vim (if you squint a little). I'm pretty sure the authors of NeoVim heard wise advice like yours, but I'm happy they continued.
- yashasolutions 3y agoemacs and vim were niche way before VScode was around. The goal was never market dominance. It's not a market. It's a tool. With users. And these users are also active contributors to their own ecosystem.
- iLemming 3y ago> Vim and Emacs _both_ lost the editor wars, and VSCode has come out on top I dream about a day when programmers stop being fervent zealots about tools they use and instead try to find pros and cons of their tools and try to borrow good ideas from each other. This 'Emacs vs. Vim vs. VSCode, etc. etc.' comes from poor understanding the core principles of each of these things. Can we discuss these things without emotional attachment, or even forget for a minute that they are "editors". Instead of trying to find who's wining "the editor wars" (is it even a thing?), can we instead talk about the big ideas behind them? - What makes Emacs so powerful for many, and at the same time so intolerable by many others? The big idea behind Emacs is Lisp. Without understanding the core principles of Lisp, and by "understanding" I mean truly experiencing the dynamic nature of it, its malleability, the structural editing, 'true REPL', 'code is data', etc., it is quite pointless to even start such a discourse. Lisp is amazing. I firmly believe that every programmer should gain good familiarity with Lisp. I am forever indebted to my younger self for forcing myself to learn Emacs and Emacs Lisp and for discovering the beauty of it. Learning Lisp made me a better programmer. I'm not claiming to be a good programmer today, but I was much worse before I learned Lisp. Lisp helped me understand FP, composability, meta-programming, logic, recursion, lambda calculus, symbolic computation, generative testing, and even type theory. And I'm quite sure, many other programmers can share the same sentiment. - Without understanding, I mean not just "understanding", but heartfelt use of it for many months and maybe even years of the fantastic, remarkable idea behind modality and mnemonics of Vim, it is quite impossible to explain what makes it irreplaceable for those who learned its power. And by the way, there's no such thing as vim-mode. No other editor or IDE truly was able to recreate that model, with one exception - Emacs. None of the IDEs - IntelliJ, VSCode, XCode, Android Studio, etc., can properly emulate Vim-navigation. Only Emacs does a better way of vimming. Pretty much every other IDE fails to replicate Vim. Unless it's Vim/Neovim, vim-mode in all of them is just that - an emulation. However, Evil mode in Emacs feels much more natural. Sometimes, you forget that it's an afterthought, an extension, and not a built-in functionality. And that's due to the power of Lisp. Also, these days, there's ton of interesting stuff getting build on top of Neovim, because now you can use Lua instead of vimscript. And with Fennel - a Lisp that compiles to Lua, one can build some really interesting extensions. - Now, VSCode fancies the idea of being built on top of a web browser engine. Turns out, it ain't such a bad idea after all. Perhaps Vim and Emacs should also one day try to have their own, built-in web browsers. I mean truly built-in, so one can extend it and change it and build things on top of it. I guess, it turns out there's no such thing as "editor wars". VSCode is more popular today because certain ideas behind it make it appealing for many people. For the same reason, certain ideas make Vim and Emacs more appealing for others.