nixos/config/nvim/lua/lsp/init.lua
2023-02-20 11:45:08 +00:00

52 lines
1.4 KiB
Lua

-- Mappings.
-- See `:help vim.diagnostic.*` for documentation on any of the below functions
local opts = { noremap = true, silent = true }
vim.keymap.set("n", "<leader>e", vim.diagnostic.open_float, opts)
vim.keymap.set("n", "[d", vim.diagnostic.goto_prev, opts)
vim.keymap.set("n", "]d", vim.diagnostic.goto_next, opts)
vim.keymap.set("n", "<leader>q", vim.diagnostic.setloclist, opts)
local signs = { Error = "", Warn = "", Hint = "", Info = "" }
for type, icon in pairs(signs) do
local hl = "DiagnosticSign" .. type
vim.fn.sign_define(hl, { text = icon, texthl = hl, numhl = hl })
end
require("neodev").setup()
local on_attach = require "lsp.attach"
local lsp_flags = require "lsp.flags"
local lspconfig = require "lspconfig"
local capabilities = require("cmp_nvim_lsp").default_capabilities()
lspconfig.pyright.setup {
on_attach = on_attach,
flags = lsp_flags,
capabilities = capabilities,
}
lspconfig.fortls.setup {
on_attach = on_attach,
flags = lsp_flags,
capabilities = capabilities,
}
lspconfig.lua_ls.setup {
on_attach = on_attach,
flags = lsp_flags,
capabilities = capabilities,
}
lspconfig.texlab.setup {
on_attach = on_attach,
flags = lsp_flags,
capabilities = capabilities,
}
require("null-ls").setup {
sources = require "lsp.null_ls_sources",
on_attach = on_attach,
flags = lsp_flags,
capabilities = capabilities,
}