From b13fcdcfa8ccaea494a89f662b34a410a3625f57 Mon Sep 17 00:00:00 2001 From: Arkaprabha Chakraborty Date: Fri, 10 Mar 2023 18:15:02 +0530 Subject: [PATCH] Add depencency check Changes to be committed: modified: install.sh modified: lua/lsp-config.lua --- install.sh | 21 +++++++++++++++++- lua/lsp-config.lua | 54 +++++++++++++++++++++++----------------------- 2 files changed, 47 insertions(+), 28 deletions(-) diff --git a/install.sh b/install.sh index 639ea31..a120808 100755 --- a/install.sh +++ b/install.sh @@ -1,5 +1,24 @@ #!/bin/bash +NPMDP="" +if command -v nvim >/dev/null 2>&1 ; then + NPMDP="pyright prettier" +else + echo "No installation of Neovim was found" + echo "Quitting now..." + exit 127 +fi + + +if command -v npm >/dev/null 2>&1 ; then + : +else + echo "No installation of npm was found" + echo "Quitting now..." + exit 127 +fi + + [ -d "$HOME/.local/share/nvim/site/pack/packer" ] && rm -rf $HOME/.local/share/nvim/site/pack/packer git clone --depth 1 https://github.com/wbthomason/packer.nvim $HOME/.local/share/nvim/site/pack/packer/start/packer.nvim @@ -8,4 +27,4 @@ git clone --depth 1 https://github.com/wbthomason/packer.nvim $HOME/.local/share mkdir -p $HOME/.config/nvim && git clone --depth 1 https://github.com/arkorty/neolite.git $HOME/.config/nvim nvim --headless -c 'autocmd User PackerComplete quitall' -c 'PackerSync' -nvim +TSUpdate "+MasonInstall stylua rustfmt prettier black clang-format" +nvim +TSUpdate "+MasonInstall stylua rustfmt black clang-format $NPMDP" diff --git a/lua/lsp-config.lua b/lua/lsp-config.lua index 2cc5910..70411be 100644 --- a/lua/lsp-config.lua +++ b/lua/lsp-config.lua @@ -1,52 +1,52 @@ local lspconfig_status_ok, lspconfig = pcall(require, "lspconfig") if not lspconfig_status_ok then - return + return end local mason_status_ok, mason = pcall(require, "mason") if not mason_status_ok then - return + return end local mason_lspconfig_status_ok, mason_lspconfig = pcall(require, "mason-lspconfig") if not mason_lspconfig_status_ok then - return + return end mason.setup({}) mason_lspconfig.setup({ - ensure_installed = { "lua_ls", "rust_analyzer", "clangd", "pyright", "marksman" }, + ensure_installed = { "lua_ls", "rust_analyzer", "clangd", "marksman" }, }) local cnl_ok, cmp_nvim_lsp = pcall(require, "cmp_nvim_lsp") if not cnl_ok then - return + return end local capabilities = cmp_nvim_lsp.default_capabilities() mason_lspconfig.setup_handlers({ - function(server) - lspconfig[server].setup({ - capabilities = capabilities, - }) - lspconfig.lua_ls.setup({ - capabilities = capabilities, - settings = { - Lua = { - diagnostics = { - -- Get the language server to recognize the `vim` global - globals = { "vim" }, - }, - }, - }, - }) - end, - --["rust_analyzer"] = function() - -- local rt_ok, rust_tools = pcall(require, "rust-tools") - -- if rt_ok then - -- rust_tools.setup({}) - -- end - --end, + function(server) + lspconfig[server].setup({ + capabilities = capabilities, + }) + lspconfig.lua_ls.setup({ + capabilities = capabilities, + settings = { + Lua = { + diagnostics = { + -- Get the language server to recognize the `vim` global + globals = { "vim" }, + }, + }, + }, + }) + end, + --["rust_analyzer"] = function() + -- local rt_ok, rust_tools = pcall(require, "rust-tools") + -- if rt_ok then + -- rust_tools.setup({}) + -- end + --end, })