diff options
| author | Leonardo Bishop <me@leonardobishop.com> | 2024-12-25 14:32:25 +0000 |
|---|---|---|
| committer | Leonardo Bishop <me@leonardobishop.com> | 2024-12-25 14:32:25 +0000 |
| commit | b48ffc1321c30ec70cbcb1db801b767e855487cb (patch) | |
| tree | 115b25c86a3689374d49512f345d7b035b701f22 | |
| parent | dc41873a79b32ed3d34dd7dac09c081f7472d207 (diff) | |
Update nvim
| -rw-r--r-- | vim/.install.yml | 37 | ||||
| -rw-r--r-- | vim/nvim/init.lua | 12 | ||||
| -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 |
7 files changed, 75 insertions, 63 deletions
diff --git a/vim/.install.yml b/vim/.install.yml index edbdc99..30935f4 100644 --- a/vim/.install.yml +++ b/vim/.install.yml @@ -3,39 +3,10 @@ steps: - !Link from: ".vimrc" to: "~/.vimrc" - recursive: false - !Link - from: "nvim/init.lua" - to: "~/.config/nvim/init.lua" - recursive: false - - !Link - from: "nvim/lua/plugins.lua" - to: "~/.config/nvim/lua/plugins.lua" - recursive: false - - !Link - from: "nvim/lua/keybindings.lua" - to: "~/.config/nvim/lua/keybindings.lua" - recursive: false - - !Link - from: "nvim/lua/config/init.lua" - to: "~/.config/nvim/lua/config/init.lua" - recursive: false - - !Link - from: "nvim/lua/config/autocomplete.lua" - to: "~/.config/nvim/lua/config/autocomplete.lua" - recursive: false - - !Link - from: "nvim/lua/config/diagnostic.lua" - to: "~/.config/nvim/lua/config/diagnostic.lua" - recursive: false - - !Link - from: "nvim/lua/config/lsp.lua" - to: "~/.config/nvim/lua/config/lsp.lua" - recursive: false - - !Link - from: "nvim/lua/config/treesitter.lua" - to: "~/.config/nvim/lua/config/treesitter.lua" - recursive: false + from: "nvim" + to: "~/.config/nvim" + symbolic: true # Install packer - - !Shell "git clone --depth 1 https://github.com/wbthomason/packer.nvim ~/.local/share/nvim/site/pack/packer/start/packer.nvim"
\ No newline at end of file + - !Shell "sh -c 'curl -fLo \"${XDG_DATA_HOME:-$HOME/.local/share}\"/nvim/site/autoload/plug.vim --create-dirs https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim'" diff --git a/vim/nvim/init.lua b/vim/nvim/init.lua index 54839fb..7f5f7de 100644 --- a/vim/nvim/init.lua +++ b/vim/nvim/init.lua @@ -1,7 +1,12 @@ require('plugins') + +require('keybindings') +require('config') + vim.api.nvim_exec( [[ +silent! syntax on set number @@ -19,10 +24,7 @@ set termguicolors colorscheme onedark highlight Normal guibg=NONE highlight Comment cterm=italic gui=italic + +let g:vimtex_view_method = 'zathura' ]], false) --- - -require('keybindings') -require('config') - 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') + |
