Development of Lunarvim
We recommend setting up a symlink to your fork:
ln -s ~/dev/Lunarvim ~/.local/share/lunarvim/lvim_dev
Your output should be something like:
$ ls -a
lrwxrwxrwx 1 user user 37 sep 23 14:35 lvim_dev -> /home/user/dev/LunarVim
Now switch your lvim to the development setup:
mv lvim lvim_back
mv lvim_dev lvim
Going back to lvim
mv lvim lvim_dev
mv lvim_back lvim
To test that you can get some output from
lvim add the following to your
init.lua file in your fork.
print ("it works")
:messages. Happy contributing!
Lua + Neovim = ❤️
To get started, this guide covers many points that will get you going with Lua and how Neovim works.
The reference manual is the official definition of the Lua language.
If you don't know about it, DevDocs combines multiple API documentations in a fast, organized, and searchable interface.
Neovim provides a standard library which you should know about.
It provides many functions that you wish were implemented in Lua's stdlib, for instance
It also comes with a LSP framework and much more.
LuaRock style guide is a complete work that deserves a look if you want learn how to write consistent and robust code.
It is based on many pre-existing guides, provides rationals for all their decisions, and worked successfully in a long-running project.
To ensure code quality and a consistent style, our CI uses the following tools:
- Shfmt. A shell parser, formatter, and interpreter with bash support.
- Shellcheck. A static analysis tool for shell scripts.