If you want something out the box that works: use VSCode. If you know modal editing and prefer the terminal: use Helix or Neovim.
For neovim, don't use a "distro", use kickstart: <https://github.com/nvim-lua/kickstart.nvim> copy&paste the code, read it and understand how it works, then make it your own. Here is my config for neovim local capabilities = require('cmp_nvim_lsp').default_capabilities() require('lspconfig').nim_langserver.setup({ cmd = {"nimlangserver"}, capabilities = capabilities, on_attach = on_attach, }) Run refer to the kickstart repo for the on_attach function