]> git.rmz.io Git - dotfiles.git/blobdiff - vim/vimrc
vim: do not configure airline in nvim
[dotfiles.git] / vim / vimrc
index f57d3d1e0c8b2f999fdca27ddd83f5f4aa944cf3..8b9b5c138a2125676456c92351d7c805e519e182 100644 (file)
--- a/vim/vimrc
+++ b/vim/vimrc
@@ -1,8 +1,3 @@
-" My vimrc.
-"
-" Author:   Samir Benmendil <samir.benmendil[at]gmail[dot]com>
-"
-
 " runtimepath {{{1
 set runtimepath ^=$XDG_CONFIG_HOME/vim
 set runtimepath +=$XDG_CONFIG_HOME/vim/after
@@ -31,7 +26,18 @@ nnoremap <silent> ,h :SidewaysLeft<CR>:delmarks z<CR>
 nnoremap <silent> ,l :SidewaysRight<CR>:delmarks z<CR>
 "}}}
 Plug 'andrewradev/switch.vim'
-Plug 'bling/vim-airline'
+if !has('nvim')
+  Plug 'bling/vim-airline' "{{{2
+  let g:airline#extensions#whitespace#enabled = 1
+  let g:airline#extensions#tabline#enabled = 1
+  let g:airline#extensions#searchcount#enabled = 0
+  let g:airline_powerline_fonts = 1
+
+  let g:asyncrun_status = "stopped"
+  " let g:airline_section_error = airline#section#create_right(['%{g:asyncrun_status}'])
+  "}}}
+endif
+
 Plug 'chrisbra/checkattach'
 Plug 'derekwyatt/vim-fswitch'
 Plug 'elzr/vim-json'
@@ -54,6 +60,7 @@ Plug 'sjl/gundo.vim'
 Plug 'thinca/vim-qfreplace'
 Plug 'tomtom/tcomment_vim'
 Plug 'tpope/vim-abolish'
+Plug 'tpope/vim-characterize'
 Plug 'tpope/vim-endwise'
 Plug 'tpope/vim-eunuch'
 Plug 'tpope/vim-fugitive'
@@ -579,15 +586,6 @@ inoremap <C-C> <Esc>gUiwgi
 nmap <silent> <leader>qq :echo "hi<" . synIDattr(synID(line("."),col("."),1),"name") . '> trans<' . synIDattr(synID(line("."),col("."),0),"name") . "> lo<" . synIDattr(synIDtrans(synID(line("."),col("."),1)),"name") . ">"<CR>
 
 " plugins options {{{1
-" airline {{{2
-let g:airline#extensions#whitespace#enabled = 1
-let g:airline#extensions#tabline#enabled = 1
-let g:airline#extensions#searchcount#enabled = 0
-let g:airline_powerline_fonts = 1
-
-let g:asyncrun_status = "stopped"
-let g:airline_section_error = airline#section#create_right(['%{g:asyncrun_status}'])
-
 " checkattach {{{2
 let g:checkattach_filebrowser = 'ranger'
 let g:checkattach_once = 'y'
@@ -612,7 +610,19 @@ nmap <silent> <leader>dd :tab split \| Gdiff \| wincmd h<CR>
 " delete fugitive buffers when closed
 autocmd BufReadPost fugitive://* set bufhidden=delete
 
-nnoremap <silent> <leader>gs :Git<CR>
+function! GitToggle()
+  let l:status_buffer = bufname('^fugitive:///*/.git{/worktrees/*,}//$')
+  if buflisted(l:status_buffer)
+    execute 'bdelete '.l:status_buffer
+  else
+    Git
+    16wincmd_
+  endif
+endfunction
+command! GitToggle :call GitToggle()
+command! GToggle GitToggle
+nnoremap <silent> <leader>gs :GitToggle<CR>
+
 nnoremap <silent> <leader>gd :Gdiffsplit<CR>
 nnoremap <silent> <leader>gc :echohl WarningMsg \| echo "use \<leader>gcc instead" \| echohl None<CR> 
 nnoremap <silent> <leader>gcc :tab G commit -v<CR>
@@ -629,7 +639,8 @@ nnoremap <silent> <leader>gb :G blame<cr>
 
 augroup fugitive_gstatus
     au!
-    autocmd BufWinEnter */.git/index resize 16
+    autocmd User FugitiveIndex setlocal winfixheight
+    autocmd User FugitiveIndex nmap <buffer> <leader><space> =
 augroup end
 
 " Gundo {{{2
@@ -673,6 +684,9 @@ let g:SignatureMap = {
 
 " switch
 let g:switch_mapping = "<Leader>s"
+let g:switch_custom_definitions = [
+      \   ['yes', 'no']
+      \ ]
 
 " spellrotate
 nmap <silent> z] <Plug>(SpellRotateForward)
@@ -826,8 +840,9 @@ let g:ycm_language_server =
 
 " vim-easy-align {{{2
 " start interactive EasyAlign in visual mode
-vmap <Enter> <Plug>(EasyAlign)
-nmap ga <Plug>(EasyAlign)
+vmap <Enter>   <Esc>:echohl WarningMsg \| echo "EasyAlign mapped to \16<leader>a now" \| echohl None<CR>
+vmap <leader>a <Plug>(EasyAlign)
+nmap <leader>a <Plug>(EasyAlign)
 
 " vim-gtest {{{2
 let g:gtest#highlight_failing_tests = 0