| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768 | #!/bin/bashset -o nounset    # error when referencing undefined variableset -o errexit    # exit when command failsinstallnode() { \    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() { \    "Installing plugins..."    nvim --headless +PlugInstall +qall > /dev/null 2>&1}# Welcomeecho 'Installing Nvim Mach 2'# install node and neovim supportwhich node > /dev/null && echo "node installed, moving on..." || installnode# install pipwhich pip > /dev/null && echo "pip installed, moving on..." || installpynvim# install pynvimpip list | grep pynvim > /dev/null && echo "pynvim installed, moving on..." || installpynvim# pull config down[ -d "$HOME/.config/nvim" ] && moveoldnvim cloneconfig# install pluginswhich neovim > /dev/null && installplugins# Install extensionsmkdir -p ~/.config/coc/extensionscd ~/.config/coc/extensionsif [ ! -f package.json ]then  echo '{"dependencies":{}}'> package.jsonfi# Change extension names to the extensions you neednpm install coc-explorer coc-snippets coc-json --global-style --ignore-scripts --no-bin-links --no-package-lock --only=prod
 |