-- Learn the keybindings, see :help lsp-zero-keybindings -- Learn to configure LSP servers, see :help lsp-zero-api-showcase local lsp = require('lsp-zero') lsp.preset('recommended') lsp.setup_nvim_cmp({ experimental = { ghost_text = true, }, }) -- (Optional) Configure lua language server for neovim lsp.nvim_workspace() local platform = require("mason-core.platform"); local servers = { 'tailwindcss', 'tsserver', 'texlab', 'pyright', 'efm', 'ltex', 'jsonls' } if not (platform.is.linux_x64_musl or platform.is.linux_arm64_musl) then table.insert(servers, "sumneko_lua"); end lsp.ensure_installed({ 'tailwindcss', 'tsserver', 'texlab', 'pyright', 'sumneko_lua', 'efm', 'ltex', 'jsonls' }) lsp.configure("efm", { settings = { languages = { sh = "shellcheck -x", bash = "shellcheck -x", zsh = "shellcheck -x", } }, filetypes = { "sh", "bash", "zsh" } }) --lsp.on_attach(function(client, bufnr) -- local opts = { buffer = bufnr, remap = false } -- vim.keymap.set("n", "gd", function() vim.lsp.buf.definition() end, opts) --end) lsp.setup() vim.diagnostic.config({ virtual_text = true, underline = true, float = true, })