mirror of
https://github.com/LunarVim/LunarVim.git
synced 2024-09-21 02:55:09 +02:00
72 lines
1.9 KiB
Bash
Executable file
72 lines
1.9 KiB
Bash
Executable file
#!/bin/bash
|
|
|
|
set -o nounset # error when referencing undefined variable
|
|
set -o errexit # exit when command fails
|
|
|
|
|
|
installnode() { \
|
|
echo "Installing node..."
|
|
curl -sL install-node.now.sh/lts | bash
|
|
npm i -g neovim
|
|
}
|
|
|
|
installpip() { \
|
|
echo "Installing pip..."
|
|
curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
|
|
python3 get-pip.py
|
|
rm get-pip.py
|
|
}
|
|
|
|
installpynvim() { \
|
|
echo "Installing pynvim..."
|
|
pip install pynvim
|
|
}
|
|
|
|
cloneconfig() { \
|
|
echo "Cloning Nvim Mach 2 configuration"
|
|
git clone https://github.com/ChristianChiarulli/nvim.git ~/.config/nvim
|
|
}
|
|
|
|
moveoldnvim() { \
|
|
echo "Moving your config to nvim.old"
|
|
mv $HOME/.config/nvim $HOME/.config/nvim.old
|
|
}
|
|
|
|
installplugins() { \
|
|
mv $HOME/.config/nvim/init.vim $HOME/.config/nvim/init.vim.tmp
|
|
mv $HOME/.config/nvim/utils/init.vim $HOME/.config/nvim/init.vim
|
|
"Installing plugins..."
|
|
nvim --headless +PlugInstall +qall > /dev/null 2>&1
|
|
mv $HOME/.config/nvim/init.vim $HOME/.config/nvim/utils/init.vim
|
|
mv $HOME/.config/nvim/init.vim.tmp $HOME/.config/nvim/init.vim
|
|
}
|
|
|
|
# Welcome
|
|
echo 'Installing Nvim Mach 2'
|
|
|
|
# install node and neovim support
|
|
which node > /dev/null && echo "node installed, moving on..." || installnode
|
|
|
|
# install pip
|
|
which pip > /dev/null && echo "pip installed, moving on..." || installpip
|
|
|
|
# install pynvim
|
|
pip list | grep pynvim > /dev/null && echo "pynvim installed, moving on..." || installpynvim
|
|
|
|
# pull config down
|
|
[ -d "$HOME/.config/nvim" ] && moveoldnvim
|
|
|
|
cloneconfig
|
|
|
|
# install plugins
|
|
which nvim > /dev/null && installplugins
|
|
|
|
# Install extensions
|
|
mkdir -p ~/.config/coc/extensions
|
|
cd ~/.config/coc/extensions
|
|
if [ ! -f package.json ]
|
|
then
|
|
echo '{"dependencies":{}}'> package.json
|
|
fi
|
|
# Change extension names to the extensions you need
|
|
npm install coc-explorer coc-snippets coc-json --global-style --ignore-scripts --no-bin-links --no-package-lock --only=prod
|