Hello! My question is basically what the title says. I’m searching for an IDE/text editor for Go development and am wondering if anybody knows an alternative to these. Here is the list of software I tried:
-
I’ve tried NeoVim but I really don’t want to waste time doing text-based configuration and messing with extensions just to get some basic features working.
-
I tried VSCodium but it doesn’t exist in my system software repositories (I’m currently on Chimera Linux), and the flatpak version can’t run any system commands.
-
GoLand and Sublime Text are proprietary & paid.
It seems the market for IDEs is pretty small, so I wouldn’t really be surprised if nothing existed that fit these criteria, but thanks for any answers in advance!
Edit: I’ve settled with Lite-XL which seems to be a great editor. Thanks for all of your great recommendations!
I use Neovim, specifically LazyVim. It’s super easy to get up and running with Go.
deleted by creator
You could consider something like LazyVim installed on top of Nvim so you don’t have to configure it from scratch.
+1, I would recommend neovim with lazyvim. The documentation is excellent, and it’s very easy to set up.
Why not just download a binary and/or make your own binary from the vscodium github page?
They’ve got a ton of statically linked ones to chose from that should be simple to just untar and run.
I would really prefer getting the text editor from flatpak or the system package manager for auto-updates, though I’m not sure if the binaries you mention also get auto-updates.
Codium auto updates itself, yes.
- Install nix.
- nix profile install nixpkgs#vscodium
- nix profile upgrade ‘.*’
Won’t auto update but you could add the upgrade command to a login script or something.
Won’t lie, nix has a high learning curve to get the most out of it, but installing a single app is pretty simple.
GVim is available pretty much everywhere? And it’s infinitely customizable.
It does have a learning curve, but then you get to use that knowledge for the rest of your life.
I’m going to have to take a look at that tomorrow since it has become pretty late here. Although thanks for the suggestion!
I’ve been using vim/GVim for over 30 years; with only minimal tweaks I’ve used it with maybe 15 different programming languages/compilers, a few of which needed custom configurations written to do anything useful.
While everyone else is struggling to get on with the IDE du jour, I just get stuff done without having to learn anything new other than a new syntax and library set.
Helix or GNU Emacs, you can’t go wrong
You can use VS Code and Vim/Neovim for any language, as well as document writing and basic text editing. Just search for Go plugins
It shouldn’t be hard to use either. If it is, you’re doing something wrong probably
I use VIM but I am not a Go developer
Pulsar is a fork of Atom under active development. We don’t publish a flatpak (yet) but there is a community maintained flatpak for it.
Otherwise if you want to look at something else I’d give Lite XL, Lapce or even Zed (it has now been open sourced and looks like it has a flatpak available) a look as interesting alternatives.
Zed now has Linux support.
And then helix editor works with Go LSP, this is my current daily driver. Even without plugins, helix works better and manageable than vim/emacs. Only thing that doesn’t work is debugger.
If you don’t mind, can you share your helix config?
Sure. https://gist.github.com/linusr/18cd6f8b0b059073460f0f3c322b8939
Includes both config & languages config.
much appreciated, I just can’t seem to get mine setup right
I think neovim with kickstart has out-of-the-box support for go, or if not, should be configurable with two added lines (add the treesitter parser and LSP). Unlike nvchad and lunarvim and stuff, this is not a “distribution” of neovim but a good starting point for a config that makes it easy to slowly learn how to add stuff and change stuff as you see fit.
At the beginning, you can add languages that you need support for pretty easily by adding to a list of LSPs and Treesitter parsers that should be installed; later on you can start adding and configuring plugins as you wish.
I’d say it sets you up about the same level as Helix or a little less than VSCode.
Distrobox will resolve your issue with VSCode and then some. Run archlinux, debian or whatever you want as a container. Then, install VSCode/VSCodium (and any other apps that Chimera lacks) inside the container OS. This will keep your development environment containerized and safely away from your host OS.
Helix. It’s modal like Vim but the defaults just work, and a quick “hx --health” will list every mode and what package you need to install for the language server.
removed by mod
I like kate in general but I can’t seem to get it to use semantic highlighting with gopls
I’m currently using Gnome and can’t exactly change the QT theme in a supported way, so Kate is stuck in a light theme. Using Kvantum makes it look like a mix of light and dark theme in a really bad way.
The GTK alternative Geany also doesn’t work well since it’s also sadly stuck in a constant light theme.
Doesn’t Kate have its own theme options?
I can only change the text editor’s theme but not the UI’s.
Yes you can. UI color is in Settings -> Window Color Scheme. Editor color is in Settings -> Editor Color Scheme. Both are editable separately.
can’t exactly change the QT theme in a supported way
Can’t you use qt5ct/qt6ct?
- I’ve tried NeoVim but I really don’t want to waste time doing text-based configuration and messing with extensions just to get some basic features working.
Have you tried any of the premade Neovim configurations like Lunarvim or NvChad?
Apart from that maybe something can be done with vscodium in a distrobox container or something, I haven’t looked much into that.
I used lunarvim until I was comfortable enough to use my own neovim setup, can confirm this it is generally a good way to go about doing vim setups.