2 " __ _(_)_ __ ___ _ __ ___
3 " \ \ / / | '_ ` _ \| '__/ __|
4 " \ V /| | | | | | | | | (__
5 " (_)_/ |_|_| |_| |_|_| \___|
18 set nrformats+=alpha "inc/dec alpha
21 " cursors depending on mode
22 let &t_EI = "\<Esc>[2 q" "normal mode
23 let &t_SI = "\<Esc>[6 q" "insert mode
24 let &t_SR = "\<Esc>[4 q" "replace mode
38 let g:netrw_liststyle = 3
39 let g:netrw_banner = 0
40 let g:netrw_winsize = 25
47 " accept first spell check fix
57 map <leader>s :set list!<cr>
58 set listchars=tab:▸\ ,space:·,eol:¬
61 map <leader>r :source ~/.vimrc<cr>:echo "vimrc reloaded"<cr>
64 function! StatusModeColor()
65 if (mode() =~# '\v(n|no)')
66 hi StatusLine cterm=None gui=None ctermfg=black ctermbg=Yellow
67 elseif (mode() =~# '\v(v|V)')
68 hi StatusLine cterm=None gui=None ctermfg=black ctermbg=Red
69 elseif (mode() ==# 'i')
70 hi StatusLine cterm=None gui=None ctermfg=black ctermbg=LightBlue
71 elseif (mode() ==# 'c')
72 hi StatusLine cterm=None gui=None ctermfg=black ctermbg=Green
74 hi StatusLine cterm=None gui=None ctermfg=black ctermbg=DarkGrey
80 function! StatusModifiedColor()
81 if getbufinfo(1)[0].changed
82 hi User1 cterm=None gui=None ctermfg=Black ctermbg=Magenta
84 hi User1 cterm=None gui=None ctermfg=White ctermbg=Black
91 return printf("%d/%d", bufnr("%"), len(getbufinfo({'buflisted':1})))
94 call StatusModeColor()
95 call StatusModifiedColor()
96 autocmd BufWritePost <buffer> call StatusModifiedColor()
100 set statusline+=%{StatusModeColor()}
101 set statusline+=%{StatusModifiedColor()}
102 set statusline+=%1*\ |
103 set statusline+=%0*\ vim\ \[%{mode()}\]
104 set statusline+=\[%{BufCount()}\]
105 set statusline+=\ %1*\ %{expand('%:~:.')}\ %m
108 set statusline+=\ %0*
109 set statusline+=\ %r\[%{v:register}\]
110 set statusline+=\ %l/%L:%c\ |
111 set statusline+=%1*\ |
115 autocmd BufNewFile *.tex 0r ~/.vim/templates/skeleton.tex
116 autocmd BufNewFile *.html 0r ~/.vim/templates/skeleton.html
117 autocmd BufNewFile *.rkt 0r ~/.vim/templates/skeleton.rkt
118 autocmd BufNewFile *.xml 0r ~/.vim/templates/skeleton.xml
122 " this blob auto installs vim plug if it isnt already
123 if empty(glob('~/.vim/autoload/plug.vim'))
124 silent !curl -fLo ~/.vim/autoload/plug.vim --create-dirs
125 \ https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim
126 autocmd VimEnter * PlugInstall --sync | source $MYVIMRC
130 call plug#begin('~/.vim/plugged')
132 Plug 'sirver/ultisnips'
134 Plug 'PietroPate/vim-tex-conceal'
135 Plug 'jiangmiao/auto-pairs'
136 Plug 'tpope/vim-commentary'
137 Plug 'rlue/vim-barbaric'
138 Plug 'ap/vim-css-color'
143 let maplocalleader = "\\"
146 let g:UltiSnipsExpandTrigger = '<tab>'
147 let g:UltiSnipsJumpForwardTrigger = '<tab>'
148 let g:UltiSnipsJumpBackwardTrigger = '<s-tab>'
149 let g:UltiSnipsSnippetDirectories=["UltiSnips", "mysnippets"]
151 map <localleader>sr :call UltiSnips#RefreshSnippets()<cr>:echo "Refreshed Snippets"<cr>
154 let g:tex_flavor='latex'
155 let g:vimtex_view_method='zathura'
156 let g:vimtex_quickfix_mode=0
157 let g:tex_conceal='abdmgs'
159 let g:vimtex_compiler_latexmk = {
160 \'build_dir': '/home/pinosaur/.cache/latexaux/',
167 " let g:ctrlp_cmd='CtrlPTag'
170 " let g:lf_replace_netrw = 1 " weird behavior rn
173 let g:barbaric_ime = 'ibus'
177 autocmd FileType * set formatoptions-=o
180 " based off https://github.com/jeffkreeftmeijer/vim-dim/blob/main/colors/default-light.vim
181 hi SpecialKey ctermfg=4
182 hi TermCursor cterm=reverse
183 hi NonText ctermfg=12
184 hi Directory ctermfg=4
185 hi ErrorMsg ctermfg=15 ctermbg=1
186 hi IncSearch cterm=reverse
188 hi ModeMsg cterm=bold
189 hi Question ctermfg=2
191 hi WarningMsg ctermfg=1
192 hi WildMenu ctermfg=0 ctermbg=11
194 hi SpellBad ctermfg=9 ctermbg=0 cterm=underline
195 hi SpellRare ctermbg=13 ctermbg=0 cterm=underline
196 hi SpellLocal ctermfg=14 ctermbg=0 cterm=underline
197 hi PmenuSbar ctermbg=8
198 hi PmenuThumb ctermbg=0
199 hi TabLine cterm=underline ctermfg=0 ctermbg=7
200 hi TabLineSel cterm=bold
201 hi TabLineFill cterm=reverse
202 hi CursorColumn ctermbg=7
203 hi CursorLine cterm=underline
204 hi MatchParen cterm=NONE ctermfg=0 ctermbg=14
205 hi Constant ctermfg=1
207 hi Identifier cterm=NONE ctermfg=6
208 hi Statement ctermfg=3
211 hi Underlined cterm=underline ctermfg=5
213 hi Error ctermfg=15 ctermbg=9
214 hi Todo ctermfg=0 ctermbg=11
216 hi lineNr ctermfg=DarkGrey