The starter for LightBoat.
rgcurlunzipmakenpmnodepngpaste:macOSonly, for image pasting in markdown filesxcliporwl-paste:Linuxonly, for image pasting in markdown files
javapython3
Executables which may be installed automatically by mason.nvim:
google-java-format: whenjavaandpython3are executable, this will be installed automaticallyjava-debug-adapter: whenjava,python3, andunzipare executable, this will be installed automaticallyjava-test: whenjava,python3, andunzipare executable, this will be installed automaticallyjdtls: whenjavaandpython3are executable, this will be installed automatically
Executables which may be installed automatically by mason.nvim:
shellcheck: whenbashis executable, this will be installed automaticallybash-language-server: whenbashandnpmare executable, this will be installed automatically
Executables which may be installed automatically by mason.nvim:
lua-language-server: this will be installed automaticallystylua: whenunzipis executable, this will be installed automatically
Executables which may be installed automatically by mason.nvim:
bazelrc-lsp: whenbazelis executable, this will be installed automaticallybuildifier: whenbazelis executable, this will be installed automaticallyclangd: whenunzipis executable, this will be installed automaticallycodelldb: whenunzipis executable, this will be installed automaticallyneocmakelsp: whencmakeis executable, this will be installed automaticallyclang-format: whenpython3is executable, this will be installed automatically
go
Executables which may be installed automatically by mason.nvim:
gopls: whengois executable, this will be installed automaticallygoimports: whengois executable, this will be installed automatically
python3
Executables which may be installed automatically by mason.nvim:
pyright: whenpython3andnpmare executable, this will be installed automaticallyautopep8: whenpython3is executable, this will be installed automatically
Executables which may be installed automatically by mason.nvim:
eslint-lsp: whennpmis executable, this will be installed automaticallyjson-lsp: whennpmis executable, this will be installed automaticallytypescript-language-server: whennpmis executable, this will be installed automaticallyprettier: whennpmis executable, this will be installed automaticallyyaml-language-server: whennpmis executable, this will be installed automaticallytailwindcss-language-server: whennpmis executable, this will be installed automaticallyvue-language-server: whennpmis executable, this will be installed automaticallylemminx: whenunzipis executable, this will be installed automaticallymarkdown-oxide: this will be installed automatically
You may not want to install all of the above executables.
You can configure vim.g.lightboat_opts.mason.ensure_installed in
lua/core/lazy.lua
to disable some of them.
For example, You can use those below to not install some executables:
vim.g.lightboat_opts = {
mason = {
ensure_installed = {
['lemminx'] = false,
['json-lsp'] = false,
['eslint-lsp'] = false,
['vue-language-server'] = false,
['yaml-language-server'] = false,
['typescript-language-server'] = false,
}
}
}- Backup your old configuration:
# run in bash
mv ~/.config/nvim{,.bak}
mv ~/.local/share/nvim{,.bak}
mv ~/.local/state/nvim{,.bak}
mv ~/.cache/nvim{,.bak}- Clone the repository:
git clone https://github.com/Kaiser-Yang/LightBoat.starter.git ~/.config/nvim-
Run
nvimto download the plugins. -
You can remove the
.gitdirectory in the repository so that you can create your own git repository.
NOTE: When running nvim at the first time, you may encounter many errors. You just
need to restart nvim many times, and wait for the plugins intallation.
Or you can use the Dockerfile to build a docker image with everything set up:
docker build -t lightboat-starter .
docker run -it --rm lightboat-starter
nvimNOTE: The first time you run nvim, it will download the plugins. When all plugins are downloaded, you should restart nvim.
NOTE: Mason may not install executables automatically, and you just need to restart nvim and run :Mason in nvim.
Check LightBoat to learn how to customize.