From 62df4945085ea4dd952e9046eb97a49dc835b53f Mon Sep 17 00:00:00 2001 From: Ryan Kes <> Date: Mon, 24 Aug 2020 14:00:45 +0200 Subject: [PATCH] neovim config now in sync with desktop dotfiles --- README.org | 7 ++-- neovim/.config/nvim/init.vim | 63 +++++++++++++++++++++++++++++++++--- 2 files changed, 63 insertions(+), 7 deletions(-) diff --git a/README.org b/README.org index 8ffd001..aa01f6a 100644 --- a/README.org +++ b/README.org @@ -90,9 +90,9 @@ A repository of my personal server configuration files. *** General - [[https://github.com/bling/vim-bufferline][bling/vim-bufferline]] - [[https://github.com/ctrlpvim/ctrlp.vim][ctrlp/ctrlp.vim]] +- [[https://github.com/easymotion/vim-easymotion][easymotion/vim-easymotion]] - [[https://github.com/farmergreg/vim-lastplace][farmergreg/vim-lastplace]] --[[https://github.com/junegunn/fzf][ junegunn/fzf]] -- [[https://github.com/justinmk/vim-sneak][justinmk/vim-sneak]] +- [[https://github.com/junegunn/fzf.vim][junegunn/fzf.vim]] - [[https://github.com/mbbill/undotree][mbbill/undotree]] - [[https://github.com/mhinz/vim-signify][mhinz/vim-signify]] - [[https://github.com/myusuf3/numbers.vim][myusuf3/numbers.vim]] @@ -104,8 +104,10 @@ A repository of my personal server configuration files. - [[https://github.com/vim-airline/vim-airline][vim-airline/vim-airline]] *** Programming - [[https://github.com/airblade/vim-gitgutter][airblade/vim-gitgutter]] +- [[https://github.com/alvan/vim-closetag][alvan/vim-closetag]] - [[https://github.com/dense-analysis/ale][dense-analysis/ale]] - [[https://github.com/godlygeek/tabular][godlygeek/tabular]] +- [[https://github.com/neoclide/coc.nvim][neoclice/coc.nvim]] - [[https://github.com/preservim/nerdcommenter][preservim/nerdcommenter]] - [[https://github.com/RRethy/vim-hexokinase][RRethy/vim-hexokinase]] - [[https://github.com/sheerun/vim-polyglot][sheerun/vim-polyglot]] @@ -115,7 +117,6 @@ A repository of my personal server configuration files. *** UI - [[https://github.com/morhetz/gruvbox][morhetz/gruvbox]] - [[https://github.com/ryanoasis/vim-devicons][ryanoasis/vim-devicons]] - * Configuration ** Installation #+BEGIN_SRC shell diff --git a/neovim/.config/nvim/init.vim b/neovim/.config/nvim/init.vim index cadb4c2..7bcaa7d 100644 --- a/neovim/.config/nvim/init.vim +++ b/neovim/.config/nvim/init.vim @@ -17,10 +17,9 @@ Plug 'unblevable/quick-scope' " } Plug 'bling/vim-bufferline' + Plug 'easymotion/vim-easymotion' Plug 'farmergreg/vim-lastplace' - Plug 'junegunn/fzf' - Plug 'justinmk/vim-sneak' - Plug 'ctrlpvim/ctrlp.vim' + Plug 'junegunn/fzf.vim' Plug 'mbbill/undotree' Plug 'mhinz/vim-signify' Plug 'myusuf3/numbers.vim' @@ -34,8 +33,10 @@ " Programming { Plug 'airblade/vim-gitgutter' + Plug 'alvan/vim-closetag' Plug 'dense-analysis/ale' Plug 'godlygeek/tabular' + Plug 'neoclide/coc.nvim', {'branch': 'release'} Plug 'preservim/nerdcommenter' Plug 'rrethy/vim-hexokinase', { 'do': 'make hexokinase' } Plug 'sheerun/vim-polyglot' @@ -159,6 +160,27 @@ set termguicolors " } + " coc { + vmap f (coc-format-selected) + nmap f (coc-format-selected) + + " Run jest for current project + command! -nargs=0 Jest :call CocAction('runCommand', 'jest.projectTest') + + " Run jest for current file + command! -nargs=0 JestCurrent :call CocAction('runCommand', 'jest.fileTest', ['%']) + + " Run jest for current test + nnoremap te :call CocAction('runCommand', 'jest.singleTest') + + " Init jest in current cwd, require global jest command exists + command! JestInit :call CocAction('runCommand', 'jest.init') + + " use and to navigate completion list + inoremap pumvisible() ? "\" : "\" + inoremap pumvisible() ? "\" : "\" + " } + " ale { " Shortcuts jump between linting errors map [c (ale_previous_wrap) @@ -168,9 +190,42 @@ let g:ale_sign_warning = '⚠️' " Fix files - let g:ale_fixers = {'javascript': ['prettier', 'eslint']} + let g:ale_fixers = {'javascript': ['prettier', 'eslint'], 'sh': ['shfmt'], 'json': ['prettier']} " Fix files automatically on save let g:ale_fix_on_save = 1 " } + + " easymotion { + let g:EasyMotion_do_mapping = 0 " Disable default mappings + + " Jump to anywhere you want with minimal keystrokes, with just one key binding. + " `s{char}{label}` + nmap s (easymotion-overwin-f) + " or + " `s{char}{char}{label}` + " Need one more keystroke, but on average, it may be more comfortable. + nmap s (easymotion-overwin-f2) + + " Turn on case-insensitive feature + let g:EasyMotion_smartcase = 1 + + " JK motions: Line motions + map j (easymotion-j) + map k (easymotion-k) + " } + + " fzf { + nnoremap :Files + nnoremap f :Rg + + nnoremap f :Rg + nnoremap / :BLines + nnoremap ' :Marks + nnoremap g :Commits + nnoremap H :Helptags + nnoremap hh :History + nnoremap h: :History: + nnoremap h/ :History/ + " } " }