aboutsummaryrefslogtreecommitdiffstats
path: root/vim/nvim/lua/config
diff options
context:
space:
mode:
Diffstat (limited to 'vim/nvim/lua/config')
-rw-r--r--vim/nvim/lua/config/diagnostic.lua2
-rw-r--r--vim/nvim/lua/config/init.lua1
-rw-r--r--vim/nvim/lua/config/lsp.lua41
-rw-r--r--vim/nvim/lua/config/vimtex.lua0
4 files changed, 42 insertions, 2 deletions
diff --git a/vim/nvim/lua/config/diagnostic.lua b/vim/nvim/lua/config/diagnostic.lua
index afa9c87..9a534b5 100644
--- a/vim/nvim/lua/config/diagnostic.lua
+++ b/vim/nvim/lua/config/diagnostic.lua
@@ -22,7 +22,7 @@ vim.lsp.handlers['textDocument/publishDiagnostics'] = vim.lsp.with(
}
)
-local signs = { Error = " ", Warn = " ", Hint = " ", Info = " " }
+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 = "" })
diff --git a/vim/nvim/lua/config/init.lua b/vim/nvim/lua/config/init.lua
index 94d770c..e132de2 100644
--- a/vim/nvim/lua/config/init.lua
+++ b/vim/nvim/lua/config/init.lua
@@ -2,3 +2,4 @@ require('config.autocomplete')
require('config.diagnostic')
require('config.lsp')
require('config.treesitter')
+require('config.vimtex')
diff --git a/vim/nvim/lua/config/lsp.lua b/vim/nvim/lua/config/lsp.lua
index 7564795..81d4572 100644
--- a/vim/nvim/lua/config/lsp.lua
+++ b/vim/nvim/lua/config/lsp.lua
@@ -3,12 +3,32 @@ local capabilities = require("cmp_nvim_lsp").default_capabilities()
local lsp_flags = {
debounce_text_changes = 150,
}
+local on_attach = function(client, bufnr)
+ vim.api.nvim_buf_set_option(bufnr, 'omnifunc', 'v:lua.vim.lsp.omnifunc')
+
+ local bufopts = { noremap=true, silent=true, buffer=bufnr }
+ vim.keymap.set('n', 'gD', vim.lsp.buf.declaration, bufopts)
+ vim.keymap.set('n', 'gd', vim.lsp.buf.definition, bufopts)
+ vim.keymap.set('n', 'K', vim.lsp.buf.hover, bufopts)
+ vim.keymap.set('n', 'gi', vim.lsp.buf.implementation, bufopts)
+ vim.keymap.set('n', '<C-k>', vim.lsp.buf.signature_help, bufopts)
+ vim.keymap.set('n', '<space>wa', vim.lsp.buf.add_workspace_folder, bufopts)
+ vim.keymap.set('n', '<space>wr', vim.lsp.buf.remove_workspace_folder, bufopts)
+ vim.keymap.set('n', '<space>wl', function()
+ print(vim.inspect(vim.lsp.buf.list_workspace_folders()))
+ end, bufopts)
+ vim.keymap.set('n', '<space>D', vim.lsp.buf.type_definition, bufopts)
+ vim.keymap.set('n', '<space>rn', vim.lsp.buf.rename, bufopts)
+ vim.keymap.set('n', '<space>ca', vim.lsp.buf.code_action, bufopts)
+ vim.keymap.set('n', 'gr', vim.lsp.buf.references, bufopts)
+ vim.keymap.set('n', '<space>f', function() vim.lsp.buf.format { async = true } end, bufopts)
+end
require('lspconfig')['hls'].setup{
on_attach = on_attach,
flags = lsp_flags,
capabilities = capabilities,
}
-require('lspconfig')['tsserver'].setup{
+require('lspconfig')['ts_ls'].setup{
on_attach = on_attach,
flags = lsp_flags,
capabilities = capabilities,
@@ -40,3 +60,22 @@ require('lspconfig')['texlab'].setup{
flags = lsp_flags,
capabilities = capabilities,
}
+require('lspconfig')['marksman'].setup{
+ on_attach = on_attach,
+ flags = lsp_flags,
+ capabilities = capabilities,
+}
+require('lspconfig')['pylsp'].setup{
+ on_attach = on_attach,
+ flags = lsp_flags,
+ capabilities = capabilities,
+}
+require('lspconfig')['clangd'].setup({
+ on_attach = on_attach,
+ flags = lsp_flags,
+ capabilities = capabilities,
+ -- cmd = {'clangd', '--background-index', '--clang-tidy', '--log=verbose'},
+ -- init_options = {
+ -- fallbackFlags = { '-std=c++17' },
+ -- },
+})
diff --git a/vim/nvim/lua/config/vimtex.lua b/vim/nvim/lua/config/vimtex.lua
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/vim/nvim/lua/config/vimtex.lua