From 9f9b2141dab41d5b31a1042a7e8e021563c11a7e Mon Sep 17 00:00:00 2001 From: Konstantin Bukley Date: Thu, 27 Jan 2022 22:44:06 +0200 Subject: [PATCH] vim: cleanup --- vim/.vimrc | 165 +++++++++++++++++------------------------------------ 1 file changed, 51 insertions(+), 114 deletions(-) diff --git a/vim/.vimrc b/vim/.vimrc index 16ea252..1d0a968 100644 --- a/vim/.vimrc +++ b/vim/.vimrc @@ -20,18 +20,6 @@ let mapleader=' ' call plug#begin('~/.vim/plugged') -" ======== Languages / Textobjects ======================= - -" Plug 'sheerun/vim-polyglot' -Plug 'kana/vim-textobj-user' -Plug 'nelstrom/vim-textobj-rubyblock' -Plug 'austintaylor/vim-indentobject' -Plug 'lucapette/vim-textobj-underscore' -Plug 'bootleq/vim-textobj-rubysymbol' - -" ======== Utility ====================================== - -Plug 'mattn/emmet-vim', Plug 'scrooloose/nerdtree', { 'on': ['NERDTreeToggle', 'NERDTreeFind'] } Plug 'junegunn/vim-easy-align', { 'on': ['(EasyAlign)', 'EasyAlign'] } Plug 'gregsexton/MatchTag', { 'for': 'html' } @@ -42,27 +30,16 @@ Plug 'mattn/gist-vim' | Plug 'mattn/webapi-vim' Plug 'Raimondi/delimitMate' Plug 'nelstrom/vim-visual-star-search' Plug 'benmills/vimux' -Plug 'janko-m/vim-test' +Plug 'vim-test/vim-test' Plug 'dyng/ctrlsf.vim' Plug 'terryma/vim-expand-region' Plug 'mg979/vim-visual-multi' Plug 'bogado/file-line' Plug 'vim-utils/vim-interruptless' -" Plug 'w0rp/ale' - -" ======== Snippets & Autocomplete ====================== - -" Plug 'SirVer/ultisnips' | Plug 'honza/vim-snippets' - -" ======== Appearence =================================== - Plug 'airblade/vim-gitgutter' Plug 'machakann/vim-highlightedyank' Plug 'arcticicestudio/nord-vim' - -" ======== tpope <3 ==================================== - -" Plug 'tpope/vim-endwise' +Plug 'christoomey/vim-tmux-navigator' Plug 'tpope/vim-fugitive' Plug 'tpope/vim-rails', { 'for': 'ruby' } Plug 'tpope/vim-surround' @@ -72,8 +49,10 @@ Plug 'tpope/vim-git' Plug 'tpope/vim-vinegar' Plug 'tpope/vim-rhubarb' +" Plug 'SirVer/ultisnips' | Plug 'honza/vim-snippets' +Plug 'L3MON4D3/LuaSnip' | Plug 'honza/vim-snippets' + " ======== Experimental ================================= -Plug 'christoomey/vim-tmux-navigator' " Plug 'nvim-lua/popup.nvim' " Plug 'nvim-lua/plenary.nvim' @@ -82,9 +61,6 @@ Plug 'christoomey/vim-tmux-navigator' Plug 'nvim-treesitter/nvim-treesitter', {'do': ':TSUpdate'} Plug 'neovim/nvim-lspconfig' -Plug 'hrsh7th/nvim-compe' -Plug 'hrsh7th/vim-vsnip' - call plug#end() @@ -178,12 +154,6 @@ let NERDTreeHijackNetrw = 1 let g:highlightedyank_highlight_duration = 400 -" --- Ultisnips - -let g:UltiSnipsExpandTrigger = '' -let g:UltiSnipsJumpForwardTrigger = '' -let g:UltiSnipsJumpBackwardTrigger = '' - " --- gitgutter let g:gitgutter_sign_added = '│' @@ -192,25 +162,6 @@ let g:gitgutter_sign_removed = '│' let g:gitgutter_sign_modified_removed = '│' let g:gitgutter_sign_removed_first_line = '│' -" --- ale - -" let g:ale_sign_error = 'x' -" let g:ale_sign_warning = '│' -" let g:ale_echo_msg_format = '[%severity%] %s' -" let g:ale_lint_on_text_changed = 'never' -" let g:ale_lint_on_insert_leave = 0 -" let g:ale_lint_delay = 0 - -" let g:ale_linters = { -" \ 'typescriptreact': ['tslint'], -" \ 'javascript': ['tslint'], -" \ 'typescript': ['tslint'], -" \} - -" let g:ale_fixers = { -" \ 'ruby': ['rubocop'], -" \} - " --- fzf if has('nvim') || has('gui_running') @@ -261,11 +212,6 @@ let g:gist_detect_filetype = 1 let g:gist_post_private = 1 let g:gist_show_privates = 1 -" --- vimux - -let g:vroom_use_vimux = 1 - - " ======================================================== " -> Autocommands @@ -281,6 +227,8 @@ if has("autocmd") au FileType xml setlocal equalprg=xmllint\ --format\ --recover\ -\ 2>/dev/null au FileType json setlocal equalprg=python\ -m\ json.tool + au FileType markdown set wrap + " Hide statusline au! FileType fzf au FileType fzf set laststatus=0 noshowmode noruler @@ -447,7 +395,7 @@ nnoremap b (expand('%') =~ 'NERD_tree' ? "\\" : nnoremap gl (expand('%') =~ 'NERD_tree' ? "\\" : '').":Commits\" nnoremap a :A -nnoremap x :ALEFix +nnoremap x nnoremap n :NERDTreeToggle nnoremap N :NERDTreeFind nnoremap c /\v^[<=>]{7}( .*\|$) @@ -532,6 +480,7 @@ nnoremap gx :execute 'silent! !open ' . shellescape(expand(''), lua <lua vim.lsp.buf.hover()', opts) buf_set_keymap('n', 'gi', 'lua vim.lsp.buf.implementation()', opts) -- buf_set_keymap('n', '', 'lua vim.lsp.buf.signature_help()', opts) - buf_set_keymap('n', 'wa', 'lua vim.lsp.buf.add_workspace_folder()', opts) - buf_set_keymap('n', 'wr', 'lua vim.lsp.buf.remove_workspace_folder()', opts) - buf_set_keymap('n', 'wl', 'lua print(vim.inspect(vim.lsp.buf.list_workspace_folders()))', opts) - buf_set_keymap('n', 'D', 'lua vim.lsp.buf.type_definition()', opts) + -- buf_set_keymap('n', 'wa', 'lua vim.lsp.buf.add_workspace_folder()', opts) + -- buf_set_keymap('n', 'wr', 'lua vim.lsp.buf.remove_workspace_folder()', opts) + -- buf_set_keymap('n', 'wl', 'lua print(vim.inspect(vim.lsp.buf.list_workspace_folders()))', opts) + -- buf_set_keymap('n', 'D', 'lua vim.lsp.buf.type_definition()', opts) buf_set_keymap('n', 'rn', 'lua vim.lsp.buf.rename()', opts) buf_set_keymap('n', 'ca', 'lua vim.lsp.buf.code_action()', opts) buf_set_keymap('n', 'gr', 'lua vim.lsp.buf.references()', opts) @@ -586,40 +535,28 @@ for _, lsp in ipairs(servers) do } } end -EOF -lua << EOF -vim.o.completeopt = "menuone,noselect" -require'compe'.setup { - enabled = true; - autocomplete = true; - debug = false; - min_length = 1; - preselect = 'enable'; - throttle_time = 80; - source_timeout = 200; - incomplete_delay = 400; - max_abbr_width = 100; - max_kind_width = 100; - max_menu_width = 100; - documentation = false; - source = { - path = true; - buffer = true; - calc = true; - vsnip = true; - nvim_lsp = true; - nvim_lua = true; - spell = true; - tags = true; - snippets_nvim = true; - treesitter = true; - }; -} + + + + + + +require("luasnip.loaders.from_snipmate").load() + +local function prequire(...) +local status, lib = pcall(require, ...) +if (status) then return lib end + return nil +end + +local luasnip = prequire('luasnip') +local cmp = prequire("cmp") + local t = function(str) - return vim.api.nvim_replace_termcodes(str, true, true, true) + return vim.api.nvim_replace_termcodes(str, true, true, true) end local check_back_space = function() @@ -631,33 +568,33 @@ local check_back_space = function() end end --- Use (s-)tab to: ---- move to prev/next item in completion menuone ---- jump to prev/next snippet's placeholder _G.tab_complete = function() - if vim.fn.pumvisible() == 1 then - return t "" - elseif vim.fn.call("vsnip#available", {1}) == 1 then - return t "(vsnip-expand-or-jump)" - elseif check_back_space() then - return t "" - else - return vim.fn['compe#complete']() - end + if cmp and cmp.visible() then + cmp.select_next_item() + elseif luasnip and luasnip.expand_or_jumpable() then + return t("luasnip-expand-or-jump") + elseif check_back_space() then + return t "" + else + cmp.complete() + end + return "" end _G.s_tab_complete = function() - if vim.fn.pumvisible() == 1 then - return t "" - elseif vim.fn.call("vsnip#jumpable", {-1}) == 1 then - return t "(vsnip-jump-prev)" - else - -- If is not working in your terminal, change it to - return t "" - end + if cmp and cmp.visible() then + cmp.select_prev_item() + elseif luasnip and luasnip.jumpable(-1) then + return t("luasnip-jump-prev") + else + return t "" + end + return "" end vim.api.nvim_set_keymap("i", "", "v:lua.tab_complete()", {expr = true}) vim.api.nvim_set_keymap("s", "", "v:lua.tab_complete()", {expr = true}) vim.api.nvim_set_keymap("i", "", "v:lua.s_tab_complete()", {expr = true}) vim.api.nvim_set_keymap("s", "", "v:lua.s_tab_complete()", {expr = true}) +vim.api.nvim_set_keymap("i", "", "luasnip-next-choice", {}) +vim.api.nvim_set_keymap("s", "", "luasnip-next-choice", {}) EOF