A simple configuration for neovim > 0.5 suiting my personal taste. While its purpose is to provides me with the resources to replicate my setup on any machine, it may be used as a reference to build your own setups.
Features:
- Major config is in lua
- Async and ondemand loading of plugins
- Using vim-plug for plugin management. Forked to allow loading plugins on events such as Cursorhold
I use coc-nvim instead of built in lsp. Nvim lsp is a minimal solution but as of yet it lacks control over the parts of lsp you want to display. I can't make it show me the error codes.
Configs for both lsp and coc-nvim are present just incase.
Structure
The folder heirarchy is as follows
├── int.vim
├── lua
│ ├── colorscheme.lua
│ ├── keymappings.lua
│ ├── settings.lua
│ ├── config-folders/
│ └── init.lua
├── plugin
└── syntax
plugin
contains the vim autocmds as there is no proper method to define autocmds in lua yet.
The init.vim is initially loaded which loads the lua/init.lua at the end.
" Make nvim load the lua directory
lua << EOF
require("init")
EOF
The init file imports the configuration for plugins as required.