2.9 KiB
2.9 KiB
Contributing to lualine.nvim
Thanks for considering to contribute.
Getting started
You're not sure where to help. You can try these
- You can look at the currently open issues to see if some bug needs fixing or for
cool feature idea. You should also look at currently open prs to see
if some abandoned pr interests you
We could really use some help with tests & docs they are currently lacking :) - You can add exciting new component, extension or theme. Note: Currently we aren't adding regular colorscheme based themes. We think they make more sense with colorschemes as they tend not to get updated once added here. But if you have some unique themes idea like auto or pywal feel free to open an pr or issue.
- Feel free to open issues or unfinished pr for help. I'd actually recommend you to open an issue first for bigging prs to discuss the feature with maintainer beforehand. That way you'll can know if the feature is likely to be accepted or not before you get started also you'll get recommendation and help with implementation specially if you show willingness to implement it yourself.
- Do add tests and docs for your changes.
Good luck.
Devloper tools
Let's introduce you to the tools we use.
- Your pr need to pass tests & linter. We lint our codebase with luacheck
and run tests with plenary-test
these will be ran on CI. If you want you can run tests & linter locally with
make test
&make lint
respectively. Ormake check
to run both linter & tests. For running tests you'll have to make sure both lualine.nvim and plenery.nvim are in same directory. - lua codebase gets formatted with stylua in CI.
So you can ignore formatting. But if you want to submit formatted
pr you can run formatter locally with
make format
. - VimDocs are auto generated with panvimdoc from README.md.
So don't make changes to doc/lualine.txt . Instead add your docs to README or Wiki.
The docgen in ran by CI too. If you want to run it locally you can do so
with
make docgen
. Note: you'll need to have pandoc installed. make precommit_check
can come quite handy it'll run all the above mentioned tools- You can check our test coverage with
make testcov
. You'll need to have luacov & luacov-console installed for that. If you want the luacovs detailed report files run the command with NOCLEAN env set. For exampleNOCLEAN=1 make testcov