diff options
-rw-r--r-- | lua/lsp/efm-general-ls.lua | 16 | ||||
-rwxr-xr-x | utils/installer/install-nv-code.sh | 152 |
2 files changed, 89 insertions, 79 deletions
diff --git a/lua/lsp/efm-general-ls.lua b/lua/lsp/efm-general-ls.lua index d771d898..ab6359b5 100644 --- a/lua/lsp/efm-general-ls.lua +++ b/lua/lsp/efm-general-ls.lua @@ -24,17 +24,29 @@ local eslint = { formatStdin = true } +local shellcheck = { + LintCommand = 'shellcheck -f gcc -x', + lintFormats = {'%f:%l:%c: %trror: %m', '%f:%l:%c: %tarning: %m', '%f:%l:%c: %tote: %m'} +} + +local shfmt = { + formatCommand = 'shfmt -ci -s -bn', + formatStdin = true +} + + require"lspconfig".efm.setup { -- init_options = {initializationOptions}, init_options = {documentFormatting = true, codeAction = false}, - filetypes = {"lua", "python", "javascriptreact", "javascript"}, + filetypes = {"lua", "python", "javascriptreact", "javascript", "sh"}, settings = { rootMarkers = {".git/"}, languages = { lua = {luaFormat}, python = {isort, yapf}, javascriptreact = {prettier, eslint}, - javascript = {prettier, eslint} + javascript = {prettier, eslint}, + sh = {shellcheck, shfmt} } } } diff --git a/utils/installer/install-nv-code.sh b/utils/installer/install-nv-code.sh index 7697d993..2be8d486 100755 --- a/utils/installer/install-nv-code.sh +++ b/utils/installer/install-nv-code.sh @@ -1,123 +1,121 @@ #!/bin/bash -set -o nounset # error when referencing undefined variable -set -o errexit # exit when command fails +set -o nounset # error when referencing undefined variable +set -o errexit # exit when command fails -installnodemac() { \ - brew install lua - brew install node - brew install yarn +installnodemac() { + brew install lua + brew install node + brew install yarn } -installnodeubuntu() { \ - sudo apt install nodejs - sudo apt install npm +installnodeubuntu() { + sudo apt install nodejs + sudo apt install npm } -installnodearch() { \ - sudo pacman -S nodejs - sudo pacman -S npm +installnodearch() { + sudo pacman -S nodejs + sudo pacman -S npm } -installnode() { \ - echo "Installing node..." - [ "$(uname)" == "Darwin" ] && installnodemac - [ -n "$(uname -a | grep Ubuntu)" ] && installnodeubuntu - [ -f "/etc/arch-release" ] && installnodearch - [ "$(expr substr $(uname -s) 1 10)" == "MINGW64_NT" ] && echo "Windows not currently supported" - sudo npm i -g neovim +installnode() { + echo "Installing node..." + [ "$(uname)" == "Darwin" ] && installnodemac + [ -n "$(uname -a | grep Ubuntu)" ] && installnodeubuntu + [ -f "/etc/arch-release" ] && installnodearch + [ "$(expr substr $(uname -s) 1 10)" == "MINGW64_NT" ] && echo "Windows not currently supported" + sudo npm i -g neovim } -installpiponmac() { \ - sudo curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py - python3 get-pip.py - rm get-pip.py +installpiponmac() { + sudo curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py + python3 get-pip.py + rm get-pip.py } -installpiponubuntu() { \ - sudo apt install python3-pip > /dev/null +installpiponubuntu() { + sudo apt install python3-pip >/dev/null } -installpiponarch() { \ - pacman -S python-pip +installpiponarch() { + pacman -S python-pip } -installpip() { \ - echo "Installing pip..." - [ "$(uname)" == "Darwin" ] && installpiponmac - [ -n "$(uname -a | grep Ubuntu)" ] && installpiponubuntu - [ -f "/etc/arch-release" ] && installpiponarch - [ "$(expr substr $(uname -s) 1 10)" == "MINGW64_NT" ] && echo "Windows not currently supported" +installpip() { + echo "Installing pip..." + [ "$(uname)" == "Darwin" ] && installpiponmac + [ -n "$(uname -a | grep Ubuntu)" ] && installpiponubuntu + [ -f "/etc/arch-release" ] && installpiponarch + [ "$(expr substr $(uname -s) 1 10)" == "MINGW64_NT" ] && echo "Windows not currently supported" } -installpynvim() { \ - echo "Installing pynvim..." - pip3 install pynvim --user +installpynvim() { + echo "Installing pynvim..." + pip3 install pynvim --user } -cloneconfig() { \ - echo "Cloning NVCode configuration" - git clone https://github.com/ChristianChiarulli/nvcode.git ~/.config/nvcode - nvim --headless +PackSync +qall > /dev/null 2>&1 +cloneconfig() { + echo "Cloning NVCode configuration" + git clone https://github.com/ChristianChiarulli/nvcode.git ~/.config/nvcode + nvim --headless +PackSync +qall >/dev/null 2>&1 } -asktoinstallnode() { \ - echo "node not found" - echo -n "Would you like to install node now (y/n)? " - read answer - [ "$answer" != "${answer#[Yy]}" ] && installnode +asktoinstallnode() { + echo "node not found" + echo -n "Would you like to install node now (y/n)? " + read answer + [ "$answer" != "${answer#[Yy]}" ] && installnode } -asktoinstallpip() { \ - # echo "pip not found" - # echo -n "Would you like to install pip now (y/n)? " - # read answer - # [ "$answer" != "${answer#[Yy]}" ] && installpip - echo "Please install pip3 before continuing with install" - exit +asktoinstallpip() { + # echo "pip not found" + # echo -n "Would you like to install pip now (y/n)? " + # read answer + # [ "$answer" != "${answer#[Yy]}" ] && installpip + echo "Please install pip3 before continuing with install" + exit } -installonmac() { \ - brew install ripgrep fzf ranger +installonmac() { + brew install ripgrep fzf ranger } -pipinstallueberzug() { \ - which pip3 > /dev/null && pip3 install ueberzug || echo "Not installing ueberzug pip not found" +pipinstallueberzug() { + which pip3 >/dev/null && pip3 install ueberzug || echo "Not installing ueberzug pip not found" } -installonubuntu() { \ - sudo apt install ripgrep fzf ranger - sudo apt install libjpeg8-dev zlib1g-dev python-dev python3-dev libxtst-dev - pip3 install ueberzug - pip3 install neovim-remote +installonubuntu() { + sudo apt install ripgrep fzf ranger + sudo apt install libjpeg8-dev zlib1g-dev python-dev python3-dev libxtst-dev + pip3 install ueberzug + pip3 install neovim-remote } - -installonarch() { \ - sudo pacman -S install ripgrep fzf ranger - which yay > /dev/null && yay -S python-ueberzug-git || pipinstallueberzug - pip3 install neovim-remote +installonarch() { + sudo pacman -S install ripgrep fzf ranger + which yay >/dev/null && yay -S python-ueberzug-git || pipinstallueberzug + pip3 install neovim-remote } -installextrapackages() { \ - [ "$(uname)" == "Darwin" ] && installonmac - [ -n "$(uname -a | grep Ubuntu)" ] && installonubuntu - [ -f "/etc/arch-release" ] && installonarch - [ "$(expr substr $(uname -s) 1 10)" == "MINGW64_NT" ] && echo "Windows not currently supported" +installextrapackages() { + [ "$(uname)" == "Darwin" ] && installonmac + [ -n "$(uname -a | grep Ubuntu)" ] && installonubuntu + [ -f "/etc/arch-release" ] && installonarch + [ "$(expr substr $(uname -s) 1 10)" == "MINGW64_NT" ] && echo "Windows not currently supported" } # Welcome echo 'Installing NVCode' # install pip -which pip3 > /dev/null && echo "pip installed, moving on..." || asktoinstallpip +which pip3 >/dev/null && echo "pip installed, moving on..." || asktoinstallpip # install node and neovim support -which node > /dev/null && echo "node installed, moving on..." || asktoinstallnode - +which node >/dev/null && echo "node installed, moving on..." || asktoinstallnode # install pynvim -pip3 list | grep pynvim > /dev/null && echo "pynvim installed, moving on..." || installpynvim +pip3 list | grep pynvim >/dev/null && echo "pynvim installed, moving on..." || installpynvim # move old nvim directory if it exists # [ -d "$HOME/.config/nvim" ] && moveoldnvim @@ -125,8 +123,8 @@ pip3 list | grep pynvim > /dev/null && echo "pynvim installed, moving on..." || # clone config down cloneconfig -echo 'export PATH=/home/$USER/.config/nvcode/utils/bin:$PATH' >> ~/.zshrc -echo 'export PATH=/home/$USER/.config/nvcode/utils/bin:$PATH' >> ~/.bashrc +echo 'export PATH=/home/$USER/.config/nvcode/utils/bin:$PATH' >>~/.zshrc +echo 'export PATH=/home/$USER/.config/nvcode/utils/bin:$PATH' >>~/.bashrc echo "I recommend you also install and activate a font from here: https://github.com/ryanoasis/nerd-fonts" |