2.1 KiB
Contributing to nvim-tree.lua
Thank you for contributing.
See Development for environment setup, tips and tools.
Tools
Following are used during CI and strongly recommended during local development.
Lint: luacheck
Style: [stylua]
Language server: luals
You can install them via you OS package manager e.g. pacman, brew or other via other package managers such as cargo or luarocks
Quality
The following quality checks are mandatory and are performed during CI. They run on the entire lua directory` return 1 on any failure.
You can run them all via make or make all
You can setup the git hooks by running scripts/setup-hooks.sh
lint
make lint
- Runs luacheck quietly using
.luachecksettings - Runs
scripts/doc-comments.shto validate annotated documentation
style
Runs stylua using .stylua.toml settings:
make style
You can automatically fix style issues via:
make style-fix
check
Runs the checks that the LSP lua language server runs inside nvim using .luarc.json
make check
Assumes $VIMRUNTIME is /usr/share/nvim/runtime. Adjust as necessary e.g.
VIMRUNTIME="/my/path/to/runtime" make check
Adding New Actions
To add a new action, add a file in actions/name-of-the-action.lua. You should export a setup function if some configuration is needed.
Once you did, you should run make help-update
Documentation
When adding new options, you should declare the defaults in the main nvim-tree.lua file.
Documentation for options should also be added to nvim-tree-opts in doc/nvim-tree-lua.txt
Pull Request
Please reference any issues in the description e.g. "resolves #1234".
Please check "allow edits by maintainers" to allow nvim-tree developers to make small changes such as documentation tweaks.
A test case to reproduce the issue is required. A "Clean Room" Replication is preferred.