32 lines
841 B
Bash
32 lines
841 B
Bash
#!/usr/bin/env bash
|
|
set -e
|
|
|
|
echo "Installing/updating LSPS."
|
|
echo
|
|
|
|
declare -A LSPS=(
|
|
["astro"]="sudo npm i -g @astrojs/language-server"
|
|
["bash"]="sudo npm i -g bash-language-server"
|
|
["css,html,json"]="sudo npm i -g vscode-langservers-extracted"
|
|
["markdown"]="yay -S marksman-bin"
|
|
["rust"]="rustup component add rust-analyzer"
|
|
["tailwindcss"]="sudo npm i -g @tailwindcss/language-server"
|
|
["toml"]="cargo install taplo-cli --locked --features lsp"
|
|
["typescript"]="sudo npm install -g typescript typescript-language-server"
|
|
["yaml"]="sudo npm i -g yaml-language-server@next"
|
|
)
|
|
|
|
for lsp in "${!LSPS[@]}"; do
|
|
echo -n "install/update ${lsp}? (y/n): "
|
|
read -r ans
|
|
if [[ "$ans" =~ ^[Yy]$ ]]; then
|
|
echo "-> updating ${lsp}..."
|
|
eval "${LSPS[$lsp]}"
|
|
echo "-> ${lsp} done"
|
|
else
|
|
echo "-> skipping ${lsp}"
|
|
fi
|
|
echo
|
|
done
|
|
|
|
echo "done"
|