top | item 42672082

(no title)

paines | 1 year ago

He cannot use Emacs and then goes to ... Vim ?!?! Nothing against Vim or Emacs, I love both but they had their time which is long gone. I am using Linux ans OSS technolgies since 95 and would have never imagined to advocate a MS product, but just use VS Code. It's awesome. VS Code managed to by-pass the qualitiy and amount of extensions/plugins in a fraction of time Emacs took decades.

discuss

order

cess11|1 year ago

Kind of weird to compare a sluggish, bug ridden, Javascript application to vim, no?

Same with emacs, now that they've spent some time on performance.

VSCode sits in a weird limbo. It's not an IDE, and it's not an excellent editor. The plugins are usually rudimentary but there's a lot of them. There's no community, instead there's one of the nastiest corporations on the planet faking one.

troad|1 year ago

I feel like the oldest cycle in tech is the "easy and good enough" defeating the "more elegant / powerful, but more tricky".

Re VS Code, I wouldn't say it's in a weird limbo - on the contrary, I think that a "smart-ish, extensible editor" is exactly what lots of people actually want. IDEs are too heavy for many folk, vim/emacs too hard, Notepad too dumb. Things like VS Code hit a sweet spot, hence their popularity.

siknad|1 year ago

VS Code support for Common Lisp is lacking. Alive extension is relatively recent and is a solo effort and thus has significant bugs and is not as feature packed as Vim/Emacs alternatives. For example, it doesn't provide structural editing. It's interaction with sbcl cache seemingly broke my project a few times.

Dansvidania|1 year ago

Lots of people work with Vim and Emacs day to day, what makes them "long gone" in your opinion?

bigstrat2003|1 year ago

I haven't used emacs so I won't speak to that. But a GUI editor (be it Sublime, Notepad++, VSCode, JetBrains, whatever) does everything vim does and is far easier and more pleasant to use. I think that using vim instead of a GUI editor is kind of like using a hand saw instead of power tools - you can do it, but you're willingly giving up a better option for a worse one. Vim made sense in a day when computers were based around text terminals, but we don't live in that day any more and it doesn't make sense to use tools that are limited by that paradigm any more.

For serious work, a GUI editor (Sublime is my choice) beats the pants off vim. The only situation I use a terminal editor is when I'm editing config files on servers, and vim sucks at that too - nano is far superior for quick and dirty edits to files. I simply do not think there's a use case where vim makes sense any more.

snozolli|1 year ago

Not GP, but I've always found it weird how many people are obsessed with vi/vim and/or Emacs. I get some of the extensibility appeal of Emacs if you're a Lisp fan, but fundamentally I don't understand the appeal of "programming your brain" just to edit code. 90% of my code editing time is spent reading and thinking, not writing or modifying. Memorizing and minimizing (e.g. VimGolf) editor syntax seems like a massive waste of time and cognitive function to me. Modern IDEs have you up and running instantly, and their refactoring tools are really amazing.

I feel like there's been a boom in "editor hipsterism" in the last 10 - 15 years, while everyone has forgotten the variety of novel editors that were made in the 80s and 90s (I've forgotten them, too, I just remember seeing ads and reviews in magazines as a young programmer).

For context, I do have a basic understanding of vim because I run it on servers, but my knowledge doesn't go far beyond search and replace.

uludag|1 year ago

> VS Code managed to by-pass the qualitiy and amount of extensions/plugins in a fraction of time Emacs took decades.

I get the impression that the VSCode has a rather fractured, limited, malware-infested[1][2], JavaScript-churn inundated plugin ecosystem. You have lots of choice, but I'm would be just as hesitant using a random extension as I would downloading some random executable and running it. On the other hand, I'm genuinely surprised (in a good way) how OCD some Emacs users are with the code I publish to MELPA.

[1] https://arxiv.org/abs/2411.07479 [2] https://www.bankinfosecurity.com/visual-studio-code-has-mali...

dannymi|1 year ago

Thanks, but no thanks.

I don't like vscode extensions advertising to me every 5 seconds, auto-downgrading the free versions of extensions, auto-installing aux tools every 5 seconds, having a 400 MB RSS chromium runtime (remember Eight Megabytes And Constantly Swapping? VS code is much worse; and it's also just a plain text editor); nerfing the .net debugger and breaking hot reload on purpose in VSCodium; telemetry, .... it's so noisy all the time. You are using this? On purpose?!

VS code is basically the same idea as emacs, just the MVP variant and with a lot of questionable technology choices (Javascript? Electron? Then emulate terminal cells anyway and manually copy cell contents? uhhh. What is this? Retrofuturism?) and done with the usual Microsoft Embrace-Extend-Extinguish tactics (nerfing pylance, funny license terms on some extensions that the extensions are only allowed to be used in their vscode etc).

So if you didn't like emacs you probably wouldn't like vscode either.

Also, if you use anything BUT emacs for Lisp development, what do you use that doesn't have a jarring break between the Lisp image and you? vim seems weird for that use case :)

emacs is very very good for Lisp development.

On the other hand, VSCode for Lisp is very flaky and VSCode regularily breaks your Lisp projects. Did you try it?

Because of your comment I tried VSCode again and now about 20 extensions (one of them "Alive", a Lisp extension for vscode) complain about now missing

  "Dev container: Docker from Docker Compose"
(keep in mind they worked before and I didn't change anything in vscode--I hadn't even run VSCode for 8 months or so) and when I try to fix that by clicking on the message in the extension manager the message immediately disappears from all 20 extensions in the manager (WTF?) and I get:

>>./logs/20250112T181356/window1/exthost/ms-vscode-remote.remote-containers/remoteContainers-2025-01-12T17-13-58.234Z.log: >>>> Executing external compose provider "/home/dannym/.guix-home/profile/bin/podman-compose". Please see podman-compose(1) for how to disable this message. <<<< >a239310d8b933dc85cc7671d2c90a75580fc57a309905298170eac4e7618d0c1 >Error: statfs /var/run/docker.sock: no such file or directory >Error: no container with name or ID "serverdevcontainer_app_1" found: no such container

... because it's using podman (I didn't configure that--vscode did that on its own, incompletely. Also, it thinks that means having a docker/podman service running as root has to be a thing then (instead of rootless podman). Funny thing is I use podman extensively. I don't wanna know how bad it would be if I HADN'T set podman up already).

So it didn't actually fix anything, but it removed the error message. I see. And there's no REPL for the editor--so I can't actually find out details, let alone fix anything.

I had thought emacs DX was bad--but I've revised my opinion now: compared to vscode DX, emacs DX is great. You live with VSCode if you want to.

And note, vscode was made after emacs was made. There's no excuse for this.

I think this now was about all the time that I want to waste on this thing, again.

How is this a problem in 2025? shakes head

>VS Code managed to by-pass the qualitiy and amount of extensions/plugins in a fraction of time Emacs took decades.

Yeah? Seems to me these vscode extensions are written in crayon. Bad quality like that would never make it into emacs mainline. And it's not even strictly about that! I wonder who would write a developer tool that the developer can't easily debug its own extensions in (yes, I know about Ctrl-Shift-P). That flies about as well as a lead balloon.

For comparison, there's emacs bufferenv that does dev containerization like this and it works just fine. Configuration: 1 line--the names of the containerfiles one wants it to pick up. Also, if I wanted to debug what it did (which is rare) I could just evaluate any expression whatsoever in emacs. ("Alt-ESC : «expression»" anywhere)

PS. manually running "podman-compose up" in an example project as a regular user works just fine--starts up the project and everything needed. So what are they overcomplicating here? Pipes too hard?

PPS. I've read some blog article to make socket activation work for rootless podman[1] but it's not really talking about vscode. Instead, it talks how one would set up "linger" so that the container stays there when I'm logged out. So that's not for dev containers (why would I possibly want that there? I'm not ensuring Heisenbugs myself :P).

[1] https://github.com/containers/podman/blob/main/docs/tutorial...

iLemming|1 year ago

> they had their time which is long gone

Haha, yeah, sure, but of course, no! Similar shit has been said so many times since 1990s. Yet both Vim and Emacs still have vibrant communities, have dedicated conferences, they get mentioned almost every week - here on HN, and every day on Reddit.

Emacs, in experienced hands, absolutely kicks everything out of the ballpark; it's just hands-down the best tool with unmatched text manipulation capabilities. Anyone who says otherwise simply is unaware what you can do in Emacs.

Can anyone in the grand community of VSCode users claim to have a workflow that involves:

- Reading a pdf where the colors match the current color scheme? The scheme that automatically adjusts the colors based on time of the day (because Emacs has built-in solar and lunar calendars)?

- Where they do annotate the said pdf in their notes, where you can jump to the places in pdf from the notes and vice-versa? Where you can scroll the pdf, without even having to switch windows, because you're in the middle of typing?

- Where you can open a video and control its playback - pausing and resuming it in place, directly from your editor, whilst typing?

- Where you also extract subtitles and copy some text chunks for your notes? Where you can run LLM to extract summary for your notes of the said transcript?

- Where you can resume the video-playback at some position in the transcript? Where you can watch the video and chunks of the transcript text get automatically highlighted - the karaoke style?

- Where you can simply type 'RFC-xxx' and despite that being a plain text entry, Emacs intelligently recognizes what that is and lets you browse the RFC entry, in-place, without even googling for it? Or similarly have plain-text of e.g., 'myorg/foo#34' and browse that Pull-Request and even perform the review with diffs and everything?

- Speaking of googling, can you type a search query only once and let it run through different places, finding things in Google, YouTube, Wikipedia, DuckDuckGo, GitHub, your browser's history and personal emails? Or any other places, since it's highly configurable?

- Do you use translation, dictionaries, thesaurus, etymology and definition lookup for any words and phrases, in the midst of typing? I have bound "auto-correct previous typo" to a double tap of the comma key - it's super convenient. Can you do something like that in VSCode easily?

- Do you edit code comments and docstrings in the code, treating them as markdown - with all the syntax highlighting, preview, and other perks?

- Do you have embedded LaTeX formulas directly in your notes?

And that's just a tiny fraction of things I personally do in Emacs - it's just the tip of the iceberg. There are tons of other interesting and highly pragmatic Emacs packages people use for various kinds of tasks. Speaking of packages - my config contains over 300 different Emacs packages, and I still can restart and load it under a second. Can you imagine any VS Code user having installed even half of that many plugins? Would that still be a "workable" environment?

selestify|1 year ago

How do you get started on learning all that? I’ve never come close to getting such productivity out of Emacs.