Skip to content

neovim plugin template integration test and doc publish

License

Notifications You must be signed in to change notification settings

nvimdev/nvim-plugin-template

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

22 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

nvim-plugin-template

Neovim plugin template; includes automatic documentation generation from README, integration tests with Busted, and linting with Stylua

Usage

  1. Click use this template button generate a repo on your github.
  2. Clone your plugin repo. Open terminal then cd plugin directory.
  3. Run python3 rename.py your-plugin-name. This will replace all nvim-plugin-template to your plugin-name. Then it will prompt you input y or n to remove example codes in init.lua and test/plugin_spec.lua. If you are familiar this repo just input y. If you are looking at this template for the first time I suggest you inspect the contents. After this step rename.py will also auto-remove.

Now you have a clean plugin environment. Enjoy!

Format

The CI uses stylua to format the code; customize the formatting by editing .stylua.toml.

Test

Uses busted for testing. Installs by using luarocks --lua-version=5.1 install vusted then runs vusted ./test for your test cases. vusted is a wrapper of Busted especially for testing Neovim plugins.

Create test cases in the test folder. Busted expects files in this directory to be named foo_spec.lua, with _spec as a suffix before the .lua file extension. For more usage details please check busted usage

CI

  • Auto generates doc from README.
  • Runs the Busted/vusted integration tests
  • Lints with stylua.

More

To see this template in action, take a look at my other plugins.

License MIT