[mirror] Make your go dev experience better github.com/olexsmir/gopher.nvim
neovim golang

Contributing to gopher.nvim#

Thank you for taking the time to submit some code to gopher.nvim. It means a lot!

Task running#

In this codebase for running tasks is used Taskfile. You can install it with:

go install github.com/go-task/task/v3/cmd/task@latest

Formatting and linting#

Code is formatted by stylua and linted using selene. You can install these with:

sudo pacman -S selene stylua
# or whatever is your package manager

For formatting use this following commands, or setup your editor to integrate with selene/stylua:

task format
task lint

Documentation#

Here we're using mini.doc for generating vimhelp files based on LuaCats annotations in comments.

For demo gifs in readme we're using vhs. All files related to demos live in /vhs dir.

You can generate docs with:

task docgen       # generates vimhelp
task vhs:generate # generates demo gifs

Commit messages#

We use Conventional Commits, please follow it.

Testing#

For testing this plugins uses mini.test. All tests live in /spec dir.

You can run tests with:

task test