I use vscode for my personal projects (c++ and a fully open source stack, compiling for both Linux and Windows).
I’m using the proprietary version of vscode (via the aur) for the plugin repository, but I’ve always envied the open source version…
Are there any tools that have made you excited?
Bonus points if they have some support for compiling with MSVC (or if you can convince me to ditch it for something else).
Vim when I can, and when I can’t, Neovim with plugins (LazyVim). Both are fast. I have had troubles with Neovim and configuration, and it does some things that really annoy me (like autoclosing parentheses - it just messes up everything). Honestly, the only feature that I really need is Go To Definition.
But vim - I absolutely love it. I started using it nearly 20 years ago and it still does everything one could want if you’re willing to learn the keymaps and commands. Macros,
ci)
, block indentation and so on. It’s even great for editing XML. If the codebases I’m working on these days weren’t so large and complicated, I would still be using it with very little configuration in my.vimrc
.I don’t use lazyvim, but I found the “auto pairs” plugin you can try to disable
I use a different IDE for each language in which I code
I use vscodium and it is available on AUR (vscodium / vscodium-bin). Supposedly there are some plugins not available for it, but i don’t use a ton of plugins and the ones I used in vscode were available in vscodium when i switched.
Jetbrains IDE’s are top tier (but resource hungry). A text editor with some plugins is fine for smaller projects, like zed, sublime text or neovim
I’ve tried lots of options, and I still go back to vscode.
I’ve extensively used neovim and it has been my main IDE for years, but I got tired of having to spend entire afternoons configuring it. And I had too many total breaks, that had led me to recently abandon it as an IDE, still use it sometimes but much less. It relies on too many plugins, which makes breaks more common imho.
I tried helix. But features are far from what I expect for an IDE, even a modal command line one.
On the gui territory, I tried Lapce, but it’s still buggy and lacks features. Development pace is slow enough so I don’t consider it could become my ide in the near future, I have hopes for it, but not much as it could easily become abandoned before it’s usable.
I wanted to try Zed, but they seems to have a preference for macOS, which may have sense in the US but here I don’t remember the last developer I saw using a mac. There’s now a linux version, which I may try at some point, but some people commented that while in a better state than Lapce it’s not still a production ready option for an text-editor-IDE. Also the company behind it doesn’t inspire trust to me. There’s something about it that smells fishy, I cannot quite put my finger on what, but there’s something.
There are more options, some obscure, some old, some paid. For instance I usually hear good things about jetbrains ide. I tried intellij community and I’m not impressed, it’s slightly better than eclipse, but it’s not on the level of visual studio for dotnet. I’m not a student and I don’t get paid for my hobby developments so paid options are a no-go.
So it is visual studio code for me. Sometimes I still use neovim, as I really like modal editors, and vim/neovim is my go to text editor anyways. I’m due to try emacs, and I’m hopeful for the future of both helix and Lapce, though I manage my emotions as I’ve know too many projects that just never deliver, so I’m cautious.
Xcode because I build iOS apps.
Unix is my IDE, vim is my editor.
Based.
The universe is my IDE, my hands are my editor.
The Unix shell remains an excellent IDE.
A huge array of text- and data-manipulation tools, with more available through the standard package manager in my operating system.
Add in a powerful text editor like Vim or Emacs, and nothing can beat this IDE.
Yep. When everything about your IDE (unix) is programmable, it makes “modern” IDEs seem quite quaint.
Personally I make extensive use of https://f1bonacc1.github.io/process-compose/launcher/ to orchestrate a bunch of different shell scripts that trigger based on file changes (recompiling, restarting servers, re-running tests, etc.). Vim just reads from files as needed. It’s lightning fast, no bloat, and a world-class editing experience.
That looks interesting, I see it’s been discontinued 2 years ago though, is there a maintained fork that you use?
NeoVim. Once I looked at vim as an IDE, I won’t look back
Neovim
I tried using VSCode because of the copilot integration, but frankly copilot is underwhelming for me. I gave “vibe coding” a shot on a personal project and the results were slower than just doing it myself.
I’m back to neovim. I’m very productive in customizing it and can never go back.
There’s avante.nvim for LLM integration, it supports most if not all LLM vendors at the moment.
I tried it, however, and got to the same conclusion as you. Not worth it.
I found the rough areas did different by model
e.g. Claude could not correct issues it introduced, it would sort of spiral through half refactors for an hour if unchecked.
Gemini Pro asked for way too much permission. “Should I do this?” Yes, go, do it! “Okay, should I now add my edits” Yes. “Okay I added edits, now we can run
make test
”, okay run make Gemini requests to run make ugh it’s worse than a bad intern.Gemini would also frequently hallucinate APIs because I used a non-standard api for my hash table (allocate/dereference instead of get/set/update, which I find is more natural for managing ownership). And Gemini would rewrite my code style and order of operations for no reason (eg move a counter increment before updating another field).
At no point could I just point the model at a small problem unsupervised. Even “update the test suite for 100% coverage of this module, make sure the tests are as small in scope as possible” had highly mixed results.
And all models I tried would update my cmakelists and break it, and I hate dealing with cmake.
I’ve been told the new Gemini is good at SQL and programming, but I’m underwhelmed on both. Gemini frequently doesn’t even know all the BigQuery functions, which being integrated into BigQuery Studio it should.
They’re decent at code review, but a language server is still better at catching bugs.
My three IDE’s of choice in order of preference:
-
EMacs: ultimative workhorse which can do many more - especially with org-mode (however, time intensive to configure which is why I used also ChatGPT to get it done)
-
VSCodium: easy to manage almost anything due to its huge number of extensions
-
Vim: don’t know, sometimes I feel the need to work with Vim and it’s many shortcuts
All are free and open source.
-
Zed is delightful to work with, highly recommend it. It is very customizable, and debugger support is coming soon. It’s like neovim but I don’t have to spend 15% of my time maintaining it…
no debugger
vim
Just wanted to throw Kate into the mix of suggestions…
So this is the image originally posted here somewhere, or was it on reddit, asking about which linux distro was it, and the screenshot (bottom left corner) was from the landing image on the link you posted.
Looks very much like KDE Plasma. Not sure which distro, though.