TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Ask HN: Could VSCode be the new Emacs?

67 pointsby kirillrogovoyover 3 years ago
TL;DR: Why isn&#x27;t VSCode the new Emacs?<p>VSCode is clearly a code editor. Emacs is used by many as an operating system &#x2F; UI framework &#x2F; app platform.<p>Emacs&#x27;s adepts have been using it for email, calendars, process management, taking notes, terminal GUI, coding (dah), and some even browse the web without leaving it.<p>I&#x27;ve been using Orgmode (+ org-roam) for a couple of years already and no other software can replace it for me.<p>I have huge respect for this almost 40 years old piece of technology and all the people keeping it alive and active. I love the hacker community around it.<p>All that said, I mostly hate using Emacs. It&#x27;s slow (I have i7 with 4 cores and 32Gb of RAM). Emacs Lisp drives me crazy. I constantly mis-press some weird key chord and enter a state where I can&#x27;t do anything unless I restart the app. It&#x27;s hard for me to find docs on how to integrate with various parts of the UI, so I mostly rely on reading the source code of different extensions. Two years in, I still can&#x27;t read Emacs Lisp well.<p>I feel unproductive when changing how Emacs behaves. And I&#x27;ve been coding for 7+ years, including functional programming.<p>---<p>Now, I&#x27;ve been using VSCode for quite a while (after 4 years of Vim).<p>I&#x27;ve noticed that, on the surface, VSCode extensions can do everything Emacs does.<p>If you think about it, VSCode is a UI framework too — there&#x27;s an API for all the UI components such as the sidebar or the text editor area itself; and you can also add your custom commands that can be triggered in a number of ways.<p>Which means you can actually implement things like Orgmode in VSCode.<p>Also: - You are coding using the most popular ecosystem in the world (Web). - The community is larger than one of Emacs. - The docs are much friendlier.<p>---<p>From what I understand, the main difference is that with Emacs you can start hacking any part of the environment right from the start. It&#x27;s designed to be played with.<p>With VSCode, you just have a strictly defined JSON config file, and everything else requires you to work with &quot;extensions&quot; which sounds like something less accessible and &quot;oh, that sounds grand, I&#x27;m not sure how deep that rabbit hole is&quot;. You can&#x27;t just open a file, define a new hook or whatever and now your VSCode behaves differently.<p>But are there any other reasons, technical or otherwise, why people don&#x27;t seem to use VSCode for things beyond editing code?<p>If only you could open some special file, write some Typescript, and modify anything about VSCode in a dirty hacker manner, would you use it?

29 comments

qsortover 3 years ago
A Unix novice came to Master Foo and said: “I am confused. Is it not the Unix way that every program should concentrate on one thing and do it well?”<p>Master Foo nodded.<p>The novice continued: “Isn&#x27;t it also the Unix way that the wheel should not be reinvented?”<p>Master Foo nodded again.<p>“Why, then, are there several tools with similar capabilities in text processing: sed, awk and Perl? With which one can I best practice the Unix way?”<p>Master Foo asked the novice: “If you have a text file, what tool would you use to produce a copy with a few words in it replaced by strings of your choosing?”<p>The novice frowned and said: “Perl&#x27;s regexps would be excessive for so simple a task. I do not know awk, and I have been writing sed scripts in the last few weeks. As I have some experience with sed, at the moment I would prefer it. But if the job only needed to be done once rather than repeatedly, a text editor would suffice.”<p>Master Foo nodded and replied: “When you are hungry, eat; when you are thirsty, drink; when you are tired, sleep.”<p>Upon hearing this, the novice was enlightened.<p>EDIT - source: <a href="http:&#x2F;&#x2F;www.catb.org&#x2F;esr&#x2F;writings&#x2F;unix-koans&#x2F;shell-tools.html" rel="nofollow">http:&#x2F;&#x2F;www.catb.org&#x2F;esr&#x2F;writings&#x2F;unix-koans&#x2F;shell-tools.html</a>
评论 #29159429 未加载
评论 #29159431 未加载
评论 #29159876 未加载
评论 #29159441 未加载
评论 #29159650 未加载
评论 #29159873 未加载
kangaroopouchover 3 years ago
&gt; But are there any other reasons, technical or otherwise, why people don&#x27;t seem to use VSCode for things beyond editing code?<p>The best answer I&#x27;ve seen to this question is <a href="https:&#x2F;&#x2F;www.murilopereira.com&#x2F;the-values-of-emacs-the-neovim-revolution-and-the-vscode-gorilla&#x2F;" rel="nofollow">https:&#x2F;&#x2F;www.murilopereira.com&#x2F;the-values-of-emacs-the-neovim...</a><p>Amongst other things, it lists different values that each tool prioritizes, and how &quot;Core values are self-reinforcing. They attract like-minded people, who will then defend them.&quot;<p>Emacs: Extensibility, Freedom, Introspectability, Keyboard centrism, Stability, Text centrism.<p>VSCode: Approachability, Integration, Maintainability, Progressiveness, Velocity.<p>That is, even if VS Code achieves technical parity with Emacs (wrt introspectibility&#x2F;extensibility), its community might not prioritize using VS Code for things beyond editing code.<p>Or maybe it will. These things are difficult to predict!
评论 #29160169 未加载
评论 #29159760 未加载
评论 #29160025 未加载
评论 #29231885 未加载
评论 #29159899 未加载
rglullisover 3 years ago
&gt; I constantly mis-press some weird key chord and enter a state where I can&#x27;t do anything unless I restart the app.<p>C-g<p>&gt; You can&#x27;t just open a file, define a new hook or whatever and now your VSCode behaves differently.<p>By that definition of extensibility, even gEdit &quot;could be the new Emacs&quot;.<p>&gt; the main difference is that with Emacs you can start hacking any part of the environment right from the start. It&#x27;s designed to be played with.<p>You just answered your own question.
u-rateover 3 years ago
Anyone who has ever made an extension for VS-Code knows that the amount of customization you can do is MINIMAL and tightly constrained. No, VS-Code won‘t be the next emacs, it is a text editor but nothing more. Emacs can be used as a whole operating system. It‘s the dame argument people had comparing Vim with Emacs. Both pieces of software are great but they serve different purposes.
vbezhenarover 3 years ago
Emacs selling point is that you can easily change any part of editor. You can introspect it, you can test your changes in the repl and commit them into your config file. And that happens almost immediately as you&#x27;re starting to learn Emacs. I did not experience that workflow with vscode. It&#x27;s more like vim for me and Emacs stands on its own.
dvhover 3 years ago
Google is evil, everybody knows that (now) but young players don&#x27;t know that Microsoft is also evil. Always was, always will be. Don&#x27;t touch anything that Microsoft touched, you&#x27;ll only get burned.
评论 #29160186 未加载
jribover 3 years ago
&gt; From what I understand, the main difference is that with Emacs you can start hacking any part of the environment right from the start. It&#x27;s designed to be played with.<p>I think you nailed the big difference right there.<p>I mostly use vim but configuring the editor is a gateway to programming new functionality. You start small by defining a function bound to a key. Then you start exploring more of the api and gluing functions together. Eventually you refactor it a bit if you find it worth sharing.<p>I&#x27;ve only used emacs for a bit and I understand it has more of that &quot;OS&quot; aspect to it where people stay in their editor for a lot of tasks that are more than just&quot;edit text&quot;. But like vim, users can tweak functionality in a relatively accessible and not overly-limiting way. And they are introduced to this early on.<p>I&#x27;ve used vs code. It&#x27;s pretty. It works well. I have the impression that to change functionality I either have to hope it already exists as a toggle somewhere or go read how to write a full vs code extension. At least in my experience, it lacks the incremental aspect described above.
kryptisktover 3 years ago
Visual Studio Code extensions are run at an arms-length from the core editor in an ExtensionHost sandbox. The OG Electron editor Atom is much more suitable as a 21st century Emacs architecture-wise, it allows extensions free reign. There is a big cost to this, it has suffered a lot of performance and upgrade compatibility problems stemming from this, so it&#x27;s not strange that VS Code made the choices it did.<p>Practically speaking, now that VS Code extensions can present web views, they can be arbitrarily powerful as long as they don&#x27;t need to mess with the editor&#x27;s internals that is not exposed by the extension API. So making things like a mail reader or pixel editor is fine. Rearranging the whole UI is not.
mihover 3 years ago
Does VSCode offer a terminal user interface? With Emacs&#x2F;Vim I can SSH to a remote machine and immediately start editing with muscle memory using the same keystrokes as in the GUI.<p>Sure VSCode has its strengths and as an IDE easier to get started and work with, especially for newcomers. That said, the fact that it requires a desktop environment to operate in means there are niches that Emacs fills which VSCode currently cannot.
评论 #29161276 未加载
评论 #29163246 未加载
评论 #29159721 未加载
alfiedotwtfover 3 years ago
Long term risk management!<p>99% of my time in front of the computer is spent in an editor (for both work and play). Having invested and continuing to invest so much time and effort in my tools and my environment, I would hate for something so <i>fundamental</i> in my life to <i>not</i> be free as in freedom:<p><pre><code> &quot;Microsoft&#x27;s releases of Visual Studio Code are licensed under this not-FLOSS license and contain telemetry&#x2F;tracking&quot; https:&#x2F;&#x2F;code.visualstudio.com&#x2F;license </code></pre> By choosing open source, you can reduce the amount of carpet pulled out from under you.
评论 #29160078 未加载
rvieiraover 3 years ago
&lt;disclaimer&gt; After using Vim, VSCode and IDEs for many years, only recently have I tried to get seriously into Emacs. I use it for everything nowadays (from organisation to coding) with the exception of some very large Java projects where IntelliJ is definitely the best option for me.<p>org-mode was my &quot;gateway&quot;. I always wanted to learn Lisp, so I guess that was a plus too (I&#x27;m aware Elisp is not the best way to learn it). &lt;&#x2F;disclaimer&gt;<p>I don&#x27;t know if VSCode will be the new Emacs but I doubt it. It will be, and already is, hugely more popular, and I&#x27;m glad it is. I believe in people having a good choice of open source tools and using whatever they feel better using.<p>What I like about Emacs is that you are given vanilla editor and you have to make it &quot;your own&quot;. Now some people like this, some people hate this. Some people like to quickly download a VSCode extension and just get on with it.<p>I also like how Emacs&#x27; &quot;things&quot; can have a synergy. I just recently setup my blog to be written in org with Jupyter-like code examples, pre-processing and exporting. This involves a few packages but they worked together nicely, It&#x27;s all text after all.<p>I don&#x27;t know how to do that in VSCode (parsing using an extension, processing the result using another, exporting with yet another, etc). Perhaps it&#x27;s simple, but I guess that if you are doing this, then between VSCode and Emacs, they both require a reasonable amount of work.<p>Regarding speed I&#x27;m using Emacs 28 native and I feel it&#x27;s a massive improvement.
thomover 3 years ago
Not sure what it would mean for VSCode to be the new Emacs. I assume it already has a larger user base and almost as rich a package ecosystem. The question for me is, will useful development of Emacs modes cease in the future? And will that energy be focused on VSCode instead? I think there’s a chance of that. But ultimately a lot of people who like Emacs don’t like VSCode. I personally think VSCode has chosen the wrong level of abstraction for the API it exposes to extensions, and I think its community doesn’t value UIs that are primarily text based. There are things in VSCode that I hate that can’t ever be fixed. That’s not true in Emacs. It’s always surprising to me when people complain about keybindings for example, when they have complete control over them. I’m also baffled by anyone who thinks VSCode has better documentation than what’s built into Emacs and each of its modes. I’ll be sad if I ever have to abandon it, anyway.
peterkellyover 3 years ago
Try using VSCode in terminal mode when you&#x27;re logged into a remote machine via SSH and see how well that goes.<p>&gt; It&#x27;s slow (I have i7 with 4 cores and 32Gb of RAM)<p>Something is wrong here. I can&#x27;t remember the exact specs of the machine when I first started using it but it might have been as low as a 486 with 1 core and 32Mb of RAM.
评论 #29160799 未加载
评论 #29160044 未加载
评论 #29160024 未加载
bjackmanover 3 years ago
Data point: I&#x27;ve been using Emacs for about 5 hears. I&#x27;ve got a setup that works very well for me but every time I open my .emacs I hate Emacs lisp even more. Decided to give VSCode a go, my take is:<p>- It&#x27;s really slow (noticable keyboard latency) and this bums me out.<p>- Haven&#x27;t yet got into a proper VSCode git plugin but I&#x27;m pretty sure when I do I&#x27;ll still miss Magit.<p>- The only place where I really miss Emacs&#x27; ultra flexibility is the window management. VSCode&#x27;s model is pretty simplistic and seems dumb to me.<p>On the whole with my hatred of ELisp I think the relative inflexibility of VSCode is a wash, especially when you factor in how easy it was to get started. But it does make me sad to know if I stick with it I&#x27;ll never escape the slowness.
评论 #29160480 未加载
seareneover 3 years ago
I feel the same. VSCode is better than Emacs in lots of aspects, but I cannot leave Emacs for now because Org Mode in Emacs is just too powerful. Although VSCode also has an Org Mode addon, it only has some basic functionalities and hasn&#x27;t been updated for ages. Lots of people begin to create new products based on Markdown (e.g. foam, VSCode anki editor, etc.). But in my opinion, Markdown is not as great as Org Mode. For example, Org Mode can set properties for each heading, which is quite useful in some situations. I hope we can have more powerful Org Mode-related addons in VSCode.
_huayra_over 3 years ago
Ultimately this comes down to the communities.<p>The Emacs community, although perhaps lacking the sheer number of vscode users, is incredible. There are folks like Henrik Lissner who are almost pathologically addicted to making Emacs awesome, not to mention the myriad other folks who escape my mind at the moment.<p>The vscode community is mostly full of valiant, short-lived one-person projects and things maintained by large companies. I must admit that for working with Azure, I do switch to vscode because the integration (e.g. for the ARM templates) is awesome.<p>Emacs has the better community for the long run (and has the track record to prove it), but I do wonder about the technical limitations of Emacs, mostly revolving around the quirkiness of elisp that Emacs is mostly married to at the moment. You can listen to Henrik discuss this here [0]. I experience some hickups when using Doom emacs, mostly when projects get big and the tooltip stuff has to render many options. Still, this is well worth it for the amazing benefits of Org mode, Org Roam, Org-ref, etc.<p>[0] <a href="https:&#x2F;&#x2F;www.youtube.com&#x2F;watch?v=LKegZI9vWUU" rel="nofollow">https:&#x2F;&#x2F;www.youtube.com&#x2F;watch?v=LKegZI9vWUU</a>
loxiasover 3 years ago
(personal bias: i&#x27;ve been using emacs for about 20 years, though I don&#x27;t know elisp and I have very mildly customized dotfiles)<p>I want to process and respond to this question, but I can&#x27;t get past:<p>&gt; It&#x27;s slow (I have i7 with 4 cores and 32Gb of RAM)...<p>Consider that you must be doing something deeply wrong? I have a broadwell (2015) i7, 2 cores, 16GB of ram (8 of which is reserved), and Emacs is quite fast.<p>I tried to use VSCode once, around when it came out. It was a pathetic joke. Once you manage to stop laughing at the concept of using an editor, hosted in a webbrowser, written in javascript, you were able to enjoy exactly the performance you would expect from such an &quot;application&quot;.<p>I couldn&#x27;t type more than a few lines before the high latency, and the fact that I could feel my CPU heating up, gave me all the info I needed.<p>What&#x27;s VSCode for?? I don&#x27;t do much (any) UI work, so I&#x27;d believe you if that&#x27;s its strength, but.. an editor???? I doubt it!<p>Having noticeable latency between keystrokes and requiring huge amounts of system resources make it kinda ... hard to take seriously.
评论 #29160998 未加载
评论 #29160070 未加载
kortexover 3 years ago
I think so, but prepare for people to come out of the woodwork with all kinds of reasons why their workflow is the _one true way_.<p>Some people like customizing the heck out of their editor, getting super deep into metaprogramming and macros. Personally, I don&#x27;t really have time for that. I want an editor which does 95% of what I want out of the box. For me, that&#x27;s pycharm, but vscode is really nice as well. It feels lighter than pycharm.<p>You can usually configure all kinds of macros and plugins for IDEs. Like you said, it&#x27;s a bit of a rabbit hole, but so is emacs lisp.
评论 #29159605 未加载
trulyover 3 years ago
It might very well be, except the plugins are more difficult to write in VS Code.<p>On the joke side, Emacs also started out as a resource hungry beast, just like VS Code now.<p>Emacs feels to me a bit more extensible, and does a number of things better than VS Code (e.g., can cut rectangles, better shortcuts, regexp support, and others).
taylodlover 3 years ago
Emacs is my go-to when working on &quot;lispy&quot; projects such as Common Lisp, Scheme or Clojure. It&#x27;s also my go-to for C&#x2F;C++ projects.<p>VSCode has become my go-to for everything else.<p>As with most things it&#x27;s not a question of emacs <i>or</i> VSCode, it&#x27;s <i>both</i> - and the knowledge of when to use each.
eb0laover 3 years ago
I am almost in love with VSCode, but my workflow in never done 100% on it.<p>I usually start working on VSCode, but I run test from the terminal (python and solidity), and half of my git commits are from the command line.<p>When a test breaks, I usually use vim to fix it since I am already on the terminal.
orionblastarover 3 years ago
I&#x27;d rather see Visual Studio 2022 for Linux than VSCode. The closest to that is Monodevelop <a href="https:&#x2F;&#x2F;www.monodevelop.com&#x2F;" rel="nofollow">https:&#x2F;&#x2F;www.monodevelop.com&#x2F;</a>
评论 #29160851 未加载
nodejs_rulez_1over 3 years ago
Of course. VS Code is just a Chrome browser with a bunch of scripts bundled.
评论 #29159940 未加载
doniphonover 3 years ago
TL;DR It is already, for the good and for the bad.<p>probably the best thing that come from Microsoft in decades<p>update: has momentum, a huge marketing budget (helps) and the cost of entry way lower than emacs&#x27; one (typescript ecosystem a fair bit less exotic than lisps&#x27;).<p>performance is OK, really. i remember more than 20yrs ago when one had to use vi, micro emacs and lesser options because emacs was then <i>the</i> resource hog. at same age &#x2F; stage vscode is way less hungry than emacs then...
joeman1000over 3 years ago
NO
a-bover 3 years ago
Yes
havkdover 3 years ago
I’ve wanted to switch to emacs for a long time, but it feels like a second or third class citizen on Windows. There are many guides online on how to prepare it to be used as an IDE for different programming languages but it all breaks down when you try to follow the guides on Windows.<p>On the other hand vscode is first class, or almost.
评论 #29159770 未加载
评论 #29160163 未加载
throwawayswedeover 3 years ago
Ffs, can&#x27;t people just use they editor they want and be happy with it? Does it always have to overcome and take over every other editor?<p>What the fuck does &quot;the new emacs&quot; mean?
vfclistsover 3 years ago
VSCode is bloated by a whole web engine because Microsoft developers are too lazy to develop a proper editor from scratch.<p>Elisp is antisocial and restricting because Stallman fought against the use of modules and they only become available in with Emacs 25. As for FFI Emacs developers are still dragging their feet inspite of other developers an Emacs developer actually having done the work. All the core developers need to do is to integrate it.<p>As for question itself, yes VSCode can be the new Emacs if your workstations are powerful enough, Apple M1 Pro Max or whatever.