emote shell scripts
[dotfiles.git] / .vimrc
diff --git a/.vimrc b/.vimrc
index 8710041..ade2675 100644 (file)
--- a/.vimrc
+++ b/.vimrc
@@ -10,15 +10,18 @@ syntax on
 set number
 set relativenumber
 set incsearch
+set smartcase
 set encoding=utf-8
 set tabstop=4
 set shiftwidth=4
 set expandtab
+set nrformats+=alpha "inc/dec alpha
+set hidden
 
-" spell check
-setlocal spell
-set spelllang=en_us
-set spellcapcheck=
+" cursors depending on mode
+let &t_EI = "\<Esc>[2 q" "normal mode
+let &t_SI = "\<Esc>[6 q" "insert mode
+let &t_SR = "\<Esc>[4 q" "replace mode
 
 " conceal
 set conceallevel=2
@@ -27,15 +30,26 @@ set conceallevel=2
 let mapleader = ' '
 
 " File stuff
-" map <leader>e :Ex<cr>
-" map <leader>v :Vex<cr>
+map <leader>f :Ex<cr>
 map <leader>l :bn<cr>
 map <leader>h :bp<cr>
 map <leader>d :bd<cr>
 
+let g:netrw_liststyle = 3
+let g:netrw_banner = 0
+let g:netrw_winsize = 25
+
+" spell check
+setlocal spell
+set spelllang=en_us
+set spellcapcheck=
+
+" accept first spell check fix
+map <leader>z 1z=<cr>
+
 " View whitespace
-set lcs=space:·
 map <leader>s :set list!<cr>
+set listchars=tab:▸\ ,space:·,eol:¬
 
 " colors
 hi Conceal ctermbg=Black
@@ -54,13 +68,13 @@ function! StatusModeColor()
     else
         hi StatusLine cterm=None gui=None ctermfg=black ctermbg=DarkGrey
     endif
-    
+
     return ''
 endfunction
 
 function! StatusModifiedColor()
     if getbufinfo(1)[0].changed
-        hi User1 cterm=None gui=None ctermfg=Black ctermbg=LightGrey
+        hi User1 cterm=None gui=None ctermfg=Black ctermbg=Magenta
     else
         hi User1 cterm=None gui=None ctermfg=White ctermbg=Black
     endif
@@ -68,34 +82,35 @@ function! StatusModifiedColor()
     return ''
 endfunction
 
-call StatusModeColor()
+function! BufCount()
+    return printf("%d/%d", bufnr("%"), len(getbufinfo({'buflisted':1})))
+endfunction
 
-" set showtabline=2
+call StatusModeColor()
+call StatusModifiedColor()
+autocmd BufWritePost <buffer> call StatusModifiedColor()
 
 set laststatus=2
 set statusline=
 set statusline+=%{StatusModeColor()}
 set statusline+=%{StatusModifiedColor()}
-set statusline+=\ vim\ \[%{mode()}\]
-set statusline+=\ %1*\ %F\ %m
+set statusline+=%1*\ | 
+set statusline+=%0*\ vim\ \[%{mode()}\]
+set statusline+=\[%{BufCount()}\]
+set statusline+=\ %1*\ %{expand('%:~:.')}\ %m
 set statusline+=%=
-set statusline+=%0*
-set statusline+=\ %ff
+set statusline+=%y
+set statusline+=\ %0*
 set statusline+=\ %r\[%{v:register}\]
-set statusline+=\ %l/%L:%c
-set statusline+=\ 
-
-" Netrw
-" let g:netrw_liststyle = 3
-" let g:netrw_banner = 0
-" let g:netrw_winsize = 25
-" let g:netrw_browse_split = 4
+set statusline+=\ %l/%L:%c\ |
+set statusline+=%1*\ |
 
 " Templates
 augroup templates
     autocmd BufNewFile *.tex 0r ~/.vim/templates/skeleton.tex
     autocmd BufNewFile *.html 0r ~/.vim/templates/skeleton.html
     autocmd BufNewFile *.rkt 0r ~/.vim/templates/skeleton.rkt
+    autocmd BufNewFile *.xml 0r ~/.vim/templates/skeleton.xml
 augroup END
 
 " vim plug
@@ -111,24 +126,25 @@ call plug#begin('~/.vim/plugged')
 
 Plug 'sirver/ultisnips'
 Plug 'lervag/vimtex'
-Plug 'jiangmiao/auto-pairs'
 Plug 'PietroPate/vim-tex-conceal'
-" Plug 'vim-airline/vim-airline'
+Plug 'jiangmiao/auto-pairs'
 Plug 'tpope/vim-commentary'
-Plug 'ptzz/lf.vim'
-Plug 'voldikss/vim-floaterm'
-" Plug 'ctrlpvim/ctrlp.vim'
-" Plug 'neoclide/coc.nvim', {'branch': 'release'}
-" Plug 'habamax/vim-godot'
+" Plug 'ptzz/lf.vim'
+" Plug 'voldikss/vim-floaterm'
 
 call plug#end()
 
+" leader for plugins
+let maplocalleader = "\\"
+
 " Ultisnips
 let g:UltiSnipsExpandTrigger = '<tab>'
 let g:UltiSnipsJumpForwardTrigger = '<tab>'
 let g:UltiSnipsJumpBackwardTrigger = '<s-tab>'
 let g:UltiSnipsSnippetDirectories=["UltiSnips", "mysnippets"]
 
+map <localleader>sr :call UltiSnips#RefreshSnippets()<cr>
+
 " Vimtex
 let g:tex_flavor='latex'
 let g:vimtex_view_method='zathura'
@@ -139,13 +155,8 @@ let g:vimtex_compiler_latexmk = {
     \'build_dir': '/home/pinosaur/.cache/latexaux/',
 \}
 
-" VimAirline
-" let g:airline#extensions#tabline#enabled = 1
-" let g:airline#extensions#tabline#buffer_min_count = 2
-" let g:airline_powerline_fonts=1
-
 " Ctrlp
-let g:ctrlp_cmd='CtrlPTag'
+let g:ctrlp_cmd='CtrlPTag'
 
 " Lf
 " let g:lf_replace_netrw = 1 " weird behavior rn