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!
By chimera Linux, do you mean the gaming one or this one?
Just curious
I meant the latter. I don’t really like systemd and I loved FreeBSD for its simplicity but also can’t use it on bare metal because of a lack of drivers, so this seemed like a great option.
Wow, it’s actually daily driveable? Mind linking me the installation docs, I can’t seem to find em…
Yup! The handbook is here.
Damn, I’m amazed at how pain-free the whole installation/setup process is. Everything sorta just worked. Though, I’m struggling a bit, trying to make zram service with dinit.
I didn’t setup zram but just went for a swap partition and specified it in fstab, so I’m not sure how that works really. There are a few issues open in GitHub about it but there seems to be no activity on them.
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.
can’t exactly change the QT theme in a supported way
Can’t you use qt5ct/qt6ct?
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.
I use lite-xl, it has been very good, but I’m not a Go developer though.
They also release an appimage and I just did a quick test on a alpine container and it works, so it should work on Chimera as well.
lite-xl seems very interesting, but sadly I wasn’t able to launch it on Chimera Linux (I get the error
cannot execute command "./LiteXL-v2.1.5-x86_64.AppImage": No such file or directory
on any shell I try to launch it with). Is this a simple problem I can fix, or should I run it with Distrobox?That’s interesting that it doesn’t work, iirc the biggest difference of chimera is that it uses musl like alpine does.
Can you extract the appimage with
--appimage-extract
flag and run the AppRun that’s inside of it directly? Or that also fails?Isn’t lite-xl in your distro repo?
nvm I just noticed that the issue is that I had the gcompat package installed in alpine, which fixes that issue you just had, I don’t know if chimera has something similar to it.
Installing gcompat worked and Lite-XL is running now. Thanks!
I found emacs to be perfectly fine. Didn’t need an IDE. Go compiler then was astoundingly fast–instant builds, basically. I think newer Go compilers are slower but generate better code. It would be nice to have a compile time flag to turn the slow optimizations on and off, like C compilers have.
Didn’t need an IDE.
That’s actually considered an IDE.
And, these days, runs leaner than vi for single-file editing from a dead start. It’s weird but it’s true by like 1%.
I thought Emacs was an OS? 😏
Just use vscode. It’s basically the standard text editor for everything nowadays. Eventually you may want to start exploring vim/emacs but no reason to prioritise that now when all you need is something you can write code in that gives you squigglies when you do something wrong.
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.
- 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.
Codium auto updates itself, yes.
I use Neovim, specifically LazyVim. It’s super easy to get up and running with Go.
I really love how LazyVim have support for a lot of languages as Extras. Once I needed Go formatting so, installed Go extra, restarted NeoVim and all was ready, in less than a minute!
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.
There’s also LiteIDE
Try Lunarvim. It’s NeoVim, but ships as a fully functional IDE with easy customization if needed. Honestly I basically just changed the theme, font, and added a preview scrollbar.
Blazingly fast, extremely functional, endless customization if desired.
What do you want an IDE to do (that a straight-up text editor wouldn’t?)
I just need something that supports gopls and some basic features such as syntax highlighting, reasonable indents, code-completion etc.
- 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.
Atom?
Pulsar is the current maintained fork of that project, we forked it before it got shut down and are actively developing it,
Is that still being recommended? Last I heard it was eol, no longer getting feature changes or improvements and was basically superceded by vscode.
Yes and no. The original project is dead but we forked it and continue to maintain and improve it as Pulsar
I’m out of the loop. Thanks for filling me in.
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.
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.