diff options
Diffstat (limited to 'vim/nvim/lua')
| -rw-r--r-- | vim/nvim/lua/config/diagnostic.lua | 2 | ||||
| -rw-r--r-- | vim/nvim/lua/config/init.lua | 1 | ||||
| -rw-r--r-- | vim/nvim/lua/config/lsp.lua | 41 | ||||
| -rw-r--r-- | vim/nvim/lua/config/vimtex.lua | 0 | ||||
| -rw-r--r-- | vim/nvim/lua/plugins.lua | 45 |
5 files changed, 64 insertions, 25 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 diff --git a/vim/nvim/lua/plugins.lua b/vim/nvim/lua/plugins.lua index c751adf..add1430 100644 --- a/vim/nvim/lua/plugins.lua +++ b/vim/nvim/lua/plugins.lua @@ -1,23 +1,22 @@ -return require('packer').startup(function(use) - use 'wbthomason/packer.nvim' - use 'vim-airline/vim-airline' - use 'vim-airline/vim-airline-themes' - use 'neovim/nvim-lspconfig' - use 'hrsh7th/nvim-cmp' - use 'hrsh7th/cmp-nvim-lsp' - use 'saadparwaiz1/cmp_luasnip' - use 'onsails/lspkind.nvim' - use 'L3MON4D3/LuaSnip' - use { - 'folke/trouble.nvim', - requires = 'kyazdani42/nvim-web-devicons', - config = function() - require('trouble').setup { -} - end - } - use 'p00f/clangd_extensions.nvim' - use 'nvim-treesitter/nvim-treesitter' - use { 'briones-gabriel/darcula-solid.nvim', requires = 'rktjmp/lush.nvim' } - use 'joshdick/onedark.vim' -end) +local vim = vim +local Plug = vim.fn['plug#'] + +vim.call('plug#begin') + +Plug('vim-airline/vim-airline') +Plug('vim-airline/vim-airline-themes') +Plug('neovim/nvim-lspconfig') +Plug('hrsh7th/nvim-cmp') +Plug('hrsh7th/cmp-nvim-lsp') +Plug('saadparwaiz1/cmp_luasnip') +Plug('onsails/lspkind.nvim') +Plug('L3MON4D3/LuaSnip') +Plug('p00f/clangd_extensions.nvim') +Plug('nvim-treesitter/nvim-treesitter') +Plug('briones-gabriel/darcula-solid.nvim') +Plug('rktjmp/lush.nvim') +Plug('joshdick/onedark.vim') +Plug('lervag/vimtex') + +vim.call('plug#end') + |
