VS Codium.
It’s VS Code, minus the Microsoft bullshit.
Source code is MIT licensed.
I really wish the WSL extension wasn’t locked behind VS Code. My workflow is heavily reliant on it which locks me into the proprietary IDE.
You should be able to setup WSLg then run the Linux Codium in WSL. Regular VS Code will work that way, it just gives a little “hey, you know you could use remote WSL right?” message then keeps chugging.
Is WSLg on Win10 yet?
Yep. I have it running with an Intel integrated graphics chips. There was a driver I had to download direct from Intel instead of HP, though.
https://github.com/microsoft/wslg
https://learn.microsoft.com/en-us/windows/wsl/tutorials/gui-apps
The benefit of the WSL (and SSH and Docker) integration is that you still run the native version of VS Code for your OS, and just the server portion of VS Code runs on the ‘remote’ server. Running the whole of VS Code (or Codium or whatever) in WSL probably works but there’ll be little annoying things with it since it’s not running natively, for example you can’t drag files from Explorer into it, can’t have a PowerShell terminal open alongside a WSL one, etc.
I don’t think the SSH integration is locked down, so I wonder if you could install OpenSSHd in WSL and connect vis SSH.
can’t have a PowerShell terminal open alongside a WSL one, etc.
How are you getting this to work? According to only the default profile can be opened with the local integrated terminal. The default profile seems to be bash, so that fails. But I wouldn’t want set my default profile to PowerShell when I’m in WSL.
For sure the remote extension option is better, just wanted to let TwinHaelix know the native Linux version is an option if the extension can’t be loaded.
when I install codium (with yay, because I use Arch… btw) there is a package that just makes the plugin store the same as Microsoft’s. I found one that wasn’t working and that was MS pylance, I use pyright now.
What’s the package called? Am on nix but might look into it later
you lucky bastard, I just so happen to take a screenshot when I set it up
Ah fantastic thank you
Your welcome!
For blind people: it’s called aur/vscodium-bin-marketplace.
Right, sorry and thanks.
Have you tried manually installing it?
Please stop treating code editors as if they were IDEs.
VS Codium/Code is not an IDE, and it never claimed to be. It’s a code editor, like Kate, Vim, Neovim, etc. It only integrates a language server for code editing and some static analysis. It does not integrate a debugger, build system, test system, execution, etc.
IDEs are old school large systems that integrate a code editor, build system, test automation, etc., such as M$ Visual Studio (not Cod(e|ium)), CodeBlocks, Eclipse, JetBrains software suite, etc. They are complete opposition of the UNIX philosophy that the program must do only one thing and do it well.
Besides, when dealing with IDEs, I used to like Eclipse C/C++ and Corrosion IDE because one could easily add link-time dependencies to a project and it generated sophisticated makefiles for you. Besides, if you have a more custom workflow, like auto-generation of source code from a domain-specific language, there’s no IDE that can help you. This is the downside of IDEs. Also, nowadays, I found that NeoVim+Coc with Meson build system makes the same thing and even better.
Can you elaborate? I can do debugging, run code and tests in VS Code.
VSC has JSON configurations for executing tasks but it’s non-trivial to configure. A proper IDE would provide a graphical, fool-proof configuration for that because it’s easy for non-professional to accidentally destroy your JSON file.
Also, if you have to use terminal in an IDE for trivial tasks, then it’s also not an IDE.
Not that I liked GUIs, but with IDEs, like Eclipse or Visual Studio, one wouldn’t have to configure something with JSONs.
VSCodium’s debuggers do have point-and-click configuration.
I think your point stands, though - the easy-button debugger setup has plenty of room to improve, and the majority of the user community focuses on the JSON debugger config - so most developers using VSCodium are going to be hand-crafting JSON configs to set up their debugger.
Vs code is an IDE change my mind
vscode/vscodium + addons is an IDE
It does not integrate a debugger, build system, test system, execution, etc.
All of those things have been available in VSCode and VSCodium as production-ready plugins, supported by major vendors (mostly Microsoft) from almost day one.
Weirdly, as an extreme example, VSCodium with the MSSQL plugin is a better SQL IDE than most dedicated SQL IDEs.
As far as I’m concerned, as long as the editor alone can handle every step of the process from development to testing to version control to deployment to debugging, it’s an IDE.
I don’t care if it doesn’t natively ship with all these things and you have to append them with plugins. (I thought we championed software that doesn’t force bloat features we’ll never use down our throats?) The only applicable factors are that it exposes the extensibility to add them, and that someone has added them.
Does that make EMACS and Vim IDEs, too? If you’ve sufficiently tricked them out with plugins, extensions, and helper scripts to do every part of your pipeline without leaving the editor, then I guess so! It is an Environment that has Integrated everything you need for Development. If it quacks like a duck…
VS Code is an IDE, and I’m tired of pretending it’s not.
I just wish finding all references didn’t take an entire minute to show me a single reference though. By the time it loads I don’t even remember why I care what’s referencing the function anymore.
Obligatory Emacs
It’s probably Emacs, but I’m a Neovim user, so I’m going to go with that.
Same here. Emacs is a solid choice, if you wanna get lispy. I just tend to prefer the vim way of things and don’t have the time and energy to try learning Emacs again at the moment.
lispy?
Emacs is basically a Lisp interpreter with other utilities, like a text editor, wrapped around it, allowing it to be self-extending. So, if Lisp is language that you like or are interested in, Emacs is a good place to be.
never heard of a lisp language
vim
deleted by creator
Depends on your definition of an IDE, but nowadays vim can be extended to have basically any feature you’d like. Especially neovim.
deleted by creator
Depends on the language doesn’t it?
Unless it’s something like an HDL for a proprietary FPGA suite, in my experience, not really, no. Just need a good LSP, Treesitter grammar, and the rest is just QOL. Not having to switch tools is a perk.
Emacs, because it’s so configurable that if it isn’t the best FOSS IDE it’s your own fault for not configuring it right.
In Emacs, you are the IDE
no love for jetbrains ides?
FOSS?
deleted by creator
Huh, thought they were closed source. TIL.
deleted by creator
Most of them are. IntelliJ and PyCharm have open source community editions.
Wow, didn’t know it was FOSS as well. Makes sense, their Java and Python IDEs are both free.
deleted by creator
Well nvim, obviously. It’s pretty much fully featured. With LSP plugins you get all the code completion, hints, type info, docs and so on. You also get typical navigation like ‘go to declaration’ and some basic refactoring. And all inside the best editor there is. I’m using it for C, JS, JSX and Rust and all works great. I honestly prefer it to IntelliJ, it loads faster and is more responsive.
My favorite is Kate because it’s less of an IDE and more of a text editor with side panes for the project tree and a terminal to run the program. Easy enough to set up a hot key to save-build-run. I think that’s all I need?
Right there with you, I’m on the admin side of things, so the time it takes the app to start is a bigger deal to me than the full featured-ness of VS Codium, but provides contextual highlighting and some quality-of-life coding features that you won’t find it text editors.
Lots of replies mentioning Emacs but Emacs out of the box is gonna be essentially a text editor (insert obligatory: Emacs isn’t a text editor; it’s a LISP interpreter).
However, install Doom Emacs, and you have a full IDE experience for essentially any language you could ask for. I highly recommend it.
Emacs is a life style
is there a flatpak of this?
I’m not too familiar with how Flatpak works but Emacs benefits from compiling it on your machine natively. Tell me what distro you’re on and I can see if I can find out how you’d do that.
linux mint - can i use doom emacs btw. also thx
Following up from my previous comment, there is a Flatpak of Emacs available on Flathub. Here are the instructions for how to install, whilst enabling native compilation, which will offer a performance increase and allow you to use features such as
vterm
(the best terminal emulator for Emacs).Doom is essentially just a set of config files. Install emacs however you would like then install doom on top
A Flatpak of Doom Emacs? No. But you can just install the normal Emacs flatpak and then install Doom Emacs with 2 simple commands:
git clone --depth 1 https://github.com/doomemacs/doomemacs ~/.config/emacs
~/.config/emacs/bin/doom install
Emacs will read these config files from the .config/emacs directory. Doom Emacs is not a different version of the program, it’s essentially just a set of configuration files.
it’s not working for me? sorry to ask but could you try it? linux mint lts btw
I don’t have a Linux Mint installation right now, but when I used Mint a few months ago this worked for me. The two commands are from the official Doom Emacs install guide. Could you tell me exactly what doesn’t work?
when i use those commands it assume emacs is installed as a system package and installs to a different location not accessible to the flatpak
Try
PATH="/var/lib/flatpak/exports/bin/:$PATH" ~/.config/emacs/bin/doom install
is that one command? also is there any disadvantgaes to emacs as a flatpak
How about VSCodium? I don’t think I should explain why VS Code is best editor.
You might need to explain to me. I’ve been having so many issues just using vscodium, took me forever to figure out I need to build and compile the code myself and not run it using the play button like Visual Studio in school (I’m a second year comp sci student).
This is only the case if vscodium is not bundled with your distribution
I use Arch (btw) and believe I downloaded vscodium and all of its dependencies.
In vs code there’s a run button just like in visual studio. You can also press F5. You will most probably need to install an extension specific to your language so vscode knows what to do when you press F5. For some languages, you’ll also have to create a launch.json file manually. launch.json is what describes what the “run” button does.
Tried doing so but couldn’t get it to work.
In what language did you try?
C++
Check into the available plugins for your language. VsCodium’s architecture pushes everything that not everyone needs into plugins, so unless you’re just taking notes, you’ll need a plugin for your chosen programming language, and eventually another for your chosen deployment environment (AWS, Azure, etc).
VSCodium, emacs, vim/neovim, helix.
Helix is pretty slick, but it’s not very extensible. Very easy to use and if the out of the box features are good enough for you then it’s a fine IDE.
Neovim is my preference unless I’m working with Jupyter notebooks, in which case I switch to vscodium. It’s a pain in the ass to set up. I took the easy way out with LazyVim. It’s fast to work with and I can use it for almost everything.
I dabbled with emacs many years ago. It’s like vim but completely different. You can make it do anything. Personally, I don’t care for the keyboard shortcuts. It’s probably easier to pick up than vim, but all the key chords and sequences are too much for me. In any case, anyone willing to look at vim should also take a look at emacs.
VSCodium is accessible and extensible. You can’t go wrong with this one. It can’t refactor like the Jetbrains stuff, but if there’s anything else it can’t do then I don’t know what it is. It’s a great IDE.
Really, any of these can do just about any job and do it very well. There’s no choice that clearly stands above the others. It really comes down to personal preference.
Helix is pretty slick, but it’s not very extensible.
Bruh, thanks for the compliment, but I can be very flexible.
Helix. This is the one that could potentially be the successor to vim.
I could never be a successor to vim. However micro is a pretty good editor.
I love helix, I just wish the development was a bit faster. The main developers are all quite busy and I would love nothing more for them to be able to use some of the open collective money to pay themselves to work on it full time for a bit. I think in a year or two it will be amazing.
I love helix
Woah woah, not so fast.
Love you too
how do you have that robot symbol beside you
Bleep bloop, I’m a bot. To also have a 🤖 beside your name, enable the ‘this is a bot account’ flag in your Lemmy instance’s settings.
Neovim all the way, super fast and lends you heavy control.
how does not having a gui work? it’s just the terminal right?
There are multiple gui front ends, but its still very popular to use it in the terminal. Its a TUI, so it practically works like a GUI.
difference between cli and tui? also what frontends are good
In a cli you only type commands and send them with Enter, in a TUI you can click/move around with the arrows just like in a gui.
Edit: dont know about good front ends.
Emacs because it lets you configure everything exactly the way you want it. You can also go with Neovim, but it only runs in the terminal.
You can also go with Neovim, but it only runs in the terminal.
To me, that’s a feature, not a detractor.
ETA: Not intending to imply that Emacs isn’t also a fine choice. I just like the terminal.
I really like Neovim and I’ve been using it for over 2 years as my main IDE, but recently I started getting into Emacs. I like the Terminal as much as you do, but I just wanted to try out something new, so I went with Emacs. I’ve been using it for some time now, and I’m probably not going back, I’m very happy with it.
That’s awesome! I’m probably going to give it another go over the holidays. It’s a super powerful tool and I recall liking it before but it just didn’t mesh with my needs (or I didn’t know enough at the time to make it mesh with my needs).
One of the goals of neovim was to introduce tools to build a GUI around vim. Imo the terminal is by far the best option, but there are some fun options. Neovide is an interesting one. Mostly because it doesn’t do too much – just eye candy.