diff options
| author | Thomas Schmucker <ts@its1.de> | 2023-04-05 17:31:34 +0200 |
|---|---|---|
| committer | Thomas Schmucker <ts@its1.de> | 2023-04-05 17:31:34 +0200 |
| commit | 6af68c8587be7cfd334709ff514b3f14c74b092d (patch) | |
| tree | df4762ff5b0d26a01814fa599d65382a760900aa /nvim/keymaps.vim | |
| parent | e9a550990ade0b01d006b2fe5912f4c722285dc7 (diff) | |
| download | dotfiles-6af68c8587be7cfd334709ff514b3f14c74b092d.tar.gz dotfiles-6af68c8587be7cfd334709ff514b3f14c74b092d.tar.bz2 dotfiles-6af68c8587be7cfd334709ff514b3f14c74b092d.zip | |
LSP Konfiguration und Keybindings hinzugefügt
Diffstat (limited to 'nvim/keymaps.vim')
| -rw-r--r-- | nvim/keymaps.vim | 45 |
1 files changed, 39 insertions, 6 deletions
diff --git a/nvim/keymaps.vim b/nvim/keymaps.vim index a94533b..a37bdd1 100644 --- a/nvim/keymaps.vim +++ b/nvim/keymaps.vim | |||
| @@ -4,8 +4,7 @@ let mapleader=',' | |||
| 4 | nnoremap <silent> <C-PageUp> :tabprevious<CR> | 4 | nnoremap <silent> <C-PageUp> :tabprevious<CR> |
| 5 | nnoremap <silent> <C-PageDown> :tabnext<CR> | 5 | nnoremap <silent> <C-PageDown> :tabnext<CR> |
| 6 | 6 | ||
| 7 | " besseres Verhalten von <Page*> | 7 | " besseres Verhalten von <PageUp und <PageDown> |
| 8 | " https://vimrc-dissection.blogspot.com/2009/02/fixing-pageup-and-pagedown.html | ||
| 9 | map <silent> <PageUp> 1000<C-U> | 8 | map <silent> <PageUp> 1000<C-U> |
| 10 | map <silent> <PageDown> 1000<C-D> | 9 | map <silent> <PageDown> 1000<C-D> |
| 11 | imap <silent> <PageUp> <C-O>1000<C-U> | 10 | imap <silent> <PageUp> <C-O>1000<C-U> |
| @@ -31,7 +30,41 @@ inoremap <expr> <C-j> pumvisible() ? "\<C-n>" : "\<Down>" | |||
| 31 | inoremap <expr> <C-k> pumvisible() ? "\<C-p>" : "\<Up>" | 30 | inoremap <expr> <C-k> pumvisible() ? "\<C-p>" : "\<Up>" |
| 32 | 31 | ||
| 33 | " Funktionstasten | 32 | " Funktionstasten |
| 34 | nnoremap <F4> :NERDTreeToggle<CR> | 33 | nnoremap <silent> <F4> :NERDTreeToggle<CR> |
| 35 | nnoremap <F5> :make<CR> | 34 | nnoremap <silent> <F5> :make<CR> |
| 36 | nnoremap <F7> :MundoToggle<CR> | 35 | nnoremap <silent> <F7> :MundoToggle<CR> |
| 37 | nnoremap <F8> :TagbarToggle<CR> | 36 | nnoremap <silent> <F8> :TagbarToggle<CR> |
| 37 | |||
| 38 | " LSP Keybindings | ||
| 39 | lua << EOF | ||
| 40 | vim.keymap.set('n', '<space>e', vim.diagnostic.open_float) | ||
| 41 | vim.keymap.set('n', '[d', vim.diagnostic.goto_prev) | ||
| 42 | vim.keymap.set('n', ']d', vim.diagnostic.goto_next) | ||
| 43 | vim.keymap.set('n', '<space>q', vim.diagnostic.setloclist) | ||
| 44 | |||
| 45 | vim.api.nvim_create_autocmd('LspAttach', { | ||
| 46 | group = vim.api.nvim_create_augroup('UserLspConfig', {}), | ||
| 47 | callback = function(ev) | ||
| 48 | vim.bo[ev.buf].omnifunc = 'v:lua.vim.lsp.omnifunc' | ||
| 49 | |||
| 50 | local opts = { buffer = ev.buf } | ||
| 51 | vim.keymap.set('n', 'gD', vim.lsp.buf.declaration, opts) | ||
| 52 | vim.keymap.set('n', 'gd', vim.lsp.buf.definition, opts) | ||
| 53 | vim.keymap.set('n', 'K', vim.lsp.buf.hover, opts) | ||
| 54 | vim.keymap.set('n', 'gi', vim.lsp.buf.implementation, opts) | ||
| 55 | vim.keymap.set('n', '<C-k>', vim.lsp.buf.signature_help, opts) | ||
| 56 | vim.keymap.set('n', '<space>wa', vim.lsp.buf.add_workspace_folder, opts) | ||
| 57 | vim.keymap.set('n', '<space>wr', vim.lsp.buf.remove_workspace_folder, opts) | ||
| 58 | vim.keymap.set('n', '<space>wl', function() | ||
| 59 | print(vim.inspect(vim.lsp.buf.list_workspace_folders())) | ||
| 60 | end, opts) | ||
| 61 | vim.keymap.set('n', '<space>D', vim.lsp.buf.type_definition, opts) | ||
| 62 | vim.keymap.set('n', '<space>rn', vim.lsp.buf.rename, opts) | ||
| 63 | vim.keymap.set('n', '<space>ca', vim.lsp.buf.code_action, opts) | ||
| 64 | vim.keymap.set('n', 'gr', vim.lsp.buf.references, opts) | ||
| 65 | vim.keymap.set('n', '<space>f', function() | ||
| 66 | vim.lsp.buf.format { async = true } | ||
| 67 | end, opts) | ||
| 68 | end, | ||
| 69 | }) | ||
| 70 | EOF | ||
