ayamir / nvimdots

A well configured and structured Neovim.
BSD 3-Clause "New" or "Revised" License
2.82k stars 450 forks source link

feat!: improve go development experience #1226

Closed ayamir closed 2 months ago

ayamir commented 2 months ago

This PR aims to improve go development workflow, it will close #1207. Welcome for gophers like @kincoy @mjkx5 to review this PR, join discussion and make contribution!

ayamir commented 2 months ago

IMO we can add Go related buffer keymaps like GoIfErr, GoModTidy, GoTest etc...

SimFG commented 2 months ago

Looking forward to the merge of this pr

ayamir commented 2 months ago

I think we'd better avoid keymap intruduction and should leave this to user. So it ready to review now.

Jint-lzxy commented 2 months ago

@ayamir The main motivation behind the last three commits is that I see go.nvim more as an enhancement layer for Go development, rather than a complete "dev bundle" akin to those in VSCode. So I've reintroduced some basic features like LSP and formatting support to our "native" way of handling them, leaving the "fancy stuff" to go.nvim (I've also integrated some good stuff from go.nvim's default LSP config tho). IMO this approach avoids introducing breaking changes while also giving users the option to completely remove this plugin without worrying about a dysfunctional Go development environment. But it's just a suggestion! I'm open to reverting these changes if needed lol

ayamir commented 2 months ago

LGTM 👍