]> git.rmz.io Git - dotfiles.git/blobdiff - vim/vimrc
vim: highlight non-breakable-spaces
[dotfiles.git] / vim / vimrc
index 8c75c582b35f351fef6381b5faa39f911369ef9f..d5b0610ee2710ced425e2c7d7ee3ab3ef383d6ed 100644 (file)
--- a/vim/vimrc
+++ b/vim/vimrc
@@ -26,7 +26,18 @@ nnoremap <silent> ,h :SidewaysLeft<CR>:delmarks z<CR>
 nnoremap <silent> ,l :SidewaysRight<CR>:delmarks z<CR>
 "}}}
 Plug 'andrewradev/switch.vim'
 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'
 Plug 'chrisbra/checkattach'
 Plug 'derekwyatt/vim-fswitch'
 Plug 'elzr/vim-json'
@@ -49,6 +60,7 @@ Plug 'sjl/gundo.vim'
 Plug 'thinca/vim-qfreplace'
 Plug 'tomtom/tcomment_vim'
 Plug 'tpope/vim-abolish'
 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'
 Plug 'tpope/vim-endwise'
 Plug 'tpope/vim-eunuch'
 Plug 'tpope/vim-fugitive'
@@ -69,15 +81,17 @@ Plug 'morhetz/gruvbox' " {{{2
 let g:gruvbox_contrast_dark  = 'hard'
 let g:gruvbox_contrast_light = 'soft'
 
 let g:gruvbox_contrast_dark  = 'hard'
 let g:gruvbox_contrast_light = 'soft'
 
-Plug 'arcticicestudio/nord-vim' " {{{2
-let g:nord_bold = 1
-let g:nord_italic = 1
-let g:nord_italic_comments = 1
-let g:nord_underline = 1
-let g:nord_uniform_status_lines = 0
-let g:nord_uniform_diff_background = 0
-let g:nord_cursor_line_number_background = 0
-let g:nord_bold_vertical_split_line = 0
+if !has('nvim')
+  Plug 'arcticicestudio/nord-vim' " {{{2
+  let g:nord_bold = 1
+  let g:nord_italic = 1
+  let g:nord_italic_comments = 1
+  let g:nord_underline = 1
+  let g:nord_uniform_status_lines = 0
+  let g:nord_uniform_diff_background = 0
+  let g:nord_cursor_line_number_background = 0
+  let g:nord_bold_vertical_split_line = 0
+endif
 
 "}}}
 
 
 "}}}
 
@@ -118,21 +132,30 @@ Plug 'mtth/scratch.vim'  " {{{2
   let g:scratch_autohide = 0
 "}}}
 
   let g:scratch_autohide = 0
 "}}}
 
-Plug 'vim-utils/vim-man'  " {{{2
-let g:man_width = 80
+let g:man_hardwrap = 80
+if !has('nvim')
+  Plug 'vim-utils/vim-man'  " {{{2
+  let g:man_width = 80
 "}}}
 "}}}
+endif
 
 
+Plug 'jenterkin/vim-autosource'  " {{{2
+  let g:autosource_hashdir = $XDG_CACHE_HOME . '/vim/vim-autosource'
+  let g:autosource_conf_names = ['.vimrc', '.vimrc.lua']
+"}}}
 call plug#end()
 
 filetype plugin indent on
 call plug#end()
 
 filetype plugin indent on
+syntax on
 
 " colorscheme {{{1
 
 " colorscheme {{{1
-syntax on
 set background=dark
 let &t_8f = "\<Esc>[38;2;%lu;%lu;%lum"
 let &t_8b = "\<Esc>[48;2;%lu;%lu;%lum"
 set termguicolors
 set background=dark
 let &t_8f = "\<Esc>[38;2;%lu;%lu;%lum"
 let &t_8b = "\<Esc>[48;2;%lu;%lu;%lum"
 set termguicolors
-colorscheme $THEME
+if !has('nvim')
+  colorscheme $THEME
+endif
 "TODO see how I can integrate this into a theme that customises upstream Nord
 hi debugPC term=reverse ctermbg=8
 
 "TODO see how I can integrate this into a theme that customises upstream Nord
 hi debugPC term=reverse ctermbg=8
 
@@ -160,6 +183,7 @@ set lazyredraw                  " don't redraw while executing macros
 set list                        " show chars defined in 'listchars'
 set listchars=tab:❭\            " list of strings used for list mode
 set listchars+=extends:❯,precedes:❮
 set list                        " show chars defined in 'listchars'
 set listchars=tab:❭\            " list of strings used for list mode
 set listchars+=extends:❯,precedes:❮
+set listchars+=nbsp:␣
 " Only shown when not in insert mode
 set listchars+=trail:·
 augroup trailing
 " Only shown when not in insert mode
 set listchars+=trail:·
 augroup trailing
@@ -574,15 +598,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
 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'
 " checkattach {{{2
 let g:checkattach_filebrowser = 'ranger'
 let g:checkattach_once = 'y'
@@ -608,8 +623,9 @@ nmap <silent> <leader>dd :tab split \| Gdiff \| wincmd h<CR>
 autocmd BufReadPost fugitive://* set bufhidden=delete
 
 function! GitToggle()
 autocmd BufReadPost fugitive://* set bufhidden=delete
 
 function! GitToggle()
-  if buflisted(bufname('.git/index'))
-    bdelete .git/index
+  let l:status_buffer = bufname('^fugitive:///*/.git{/worktrees/*,}//$')
+  if buflisted(l:status_buffer)
+    execute 'bdelete '.l:status_buffer
   else
     Git
     16wincmd_
   else
     Git
     16wincmd_
@@ -836,8 +852,9 @@ let g:ycm_language_server =
 
 " vim-easy-align {{{2
 " start interactive EasyAlign in visual mode
 
 " 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
 
 " vim-gtest {{{2
 let g:gtest#highlight_failing_tests = 0