2 " __ _(_)_ __ ___ _ __ ___
3 " \ \ / / | '_ ` _ \| '__/ __|
4 " \ V /| | | | | | | | | (__
5 " (_)_/ |_|_| |_| |_|_| \___|
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 cmap w!! w !sudo tee > /dev/null %
67 map <leader>e :e<cr>:echo "current file reloaded"<cr>
68 map <leader>E :e!<cr>:echo "current file force reloaded"<cr>
70 " highlighting (will get rid of this sometime prob)
71 au BufRead,BufNewFile *.svelte set filetype=svelte
72 au! Syntax svelte source ~/.vim/syntax/svelte.vim
75 function! StatusModeColor()
76 if (mode() =~# '\v(n|no)')
77 hi StatusLine cterm=None gui=None ctermfg=black ctermbg=Yellow
78 elseif (mode() =~# '\v(v|V|
\16)')
79 hi StatusLine cterm=None gui=None ctermfg=black ctermbg=Red
80 elseif (mode() ==# 'i')
81 hi StatusLine cterm=None gui=None ctermfg=black ctermbg=LightBlue
82 elseif (mode() ==# 'c')
83 hi StatusLine cterm=None gui=None ctermfg=black ctermbg=Green
85 hi StatusLine cterm=None gui=None ctermfg=black ctermbg=DarkGrey
91 function! StatusModifiedColor()
92 if getbufinfo(1)[0].changed
93 hi User1 cterm=None gui=None ctermfg=Black ctermbg=Magenta
95 hi User1 cterm=None gui=None ctermfg=White ctermbg=Black
102 return printf("%d/%d", bufnr("%"), len(getbufinfo({'buflisted':1})))
105 call StatusModeColor()
106 call StatusModifiedColor()
107 autocmd BufWritePost <buffer> call StatusModifiedColor()
111 set statusline+=%{StatusModeColor()}
112 set statusline+=%{StatusModifiedColor()}
113 set statusline+=%1*\ |
114 set statusline+=%0*\ vim\ \[%{mode()}\]
115 set statusline+=\[%{BufCount()}\]
116 set statusline+=\ %1*\ %{expand('%:~:.')}\ %m
119 set statusline+=\ %0*
120 set statusline+=\ %r\[%{v:register}\]
121 set statusline+=\ %l/%L:%c\ |
122 set statusline+=%1*\ |
125 hi TabLineSel cterm=Bold ctermfg=Yellow
126 hi TabLine cterm=None ctermfg=Grey ctermbg=Black
127 hi TabLineFill cterm=None ctermbg=Black
131 autocmd BufNewFile *.tex 0r ~/.vim/templates/skeleton.tex
132 autocmd BufNewFile *.html 0r ~/.vim/templates/skeleton.html
133 autocmd BufNewFile *.rkt 0r ~/.vim/templates/skeleton.rkt
134 autocmd BufNewFile *.xml 0r ~/.vim/templates/skeleton.xml
138 " this blob auto installs vim plug if it isnt already
139 fun! s:VimPlugSetup()
140 if empty(glob('~/.vim/autoload/plug.vim'))
141 silent !curl -fLo ~/.vim/autoload/plug.vim --create-dirs https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim
142 autocmd VimEnter * PlugInstall --sync | source $MYVIMRC
144 echo 'VimPlug is already installed'
147 command PlugSetup :call s:VimPlugSetup()
150 call plug#begin('~/.vim/plugged')
152 Plug 'sirver/ultisnips'
153 Plug 'tpope/vim-commentary'
154 Plug 'ap/vim-buftabline'
155 Plug 'lervag/vimtex', { 'for': 'tex' }
156 Plug 'PietroPate/vim-tex-conceal', { 'for': 'tex' }
157 " Plug 'jiangmiao/auto-pairs'
158 " Plug 'rlue/vim-barbaric'
159 " Plug 'junegunn/fzf'
164 let maplocalleader = "\\"
167 let g:UltiSnipsExpandTrigger = '<tab>'
168 let g:UltiSnipsJumpForwardTrigger = '<tab>'
169 let g:UltiSnipsJumpBackwardTrigger = '<s-tab>'
170 let g:UltiSnipsSnippetDirectories=["UltiSnips", "mysnippets"]
172 map <localleader>sr :call UltiSnips#RefreshSnippets()<cr>:echo "Refreshed Snippets"<cr>
175 " fun! LatexCompile()
176 " echo 'compiling latex'
180 " autocmd BufWritePost *.tex :call LatexCompile()
184 let g:tex_flavor='latex'
185 let g:vimtex_view_method='zathura'
186 let g:vimtex_quickfix_mode=0
187 let g:tex_conceal='abdmgs'
189 let g:vimtex_compiler_latexmk = {
190 \'build_dir': '/home/pinosaur/.cache/latexaux/',
197 " let g:barbaric_ime = 'ibus'
201 let g:buftabline_show = 1
204 " let g:fzf_layout = { 'down': '40%' }
205 " let g:fzf_layout = { 'window': '-tabnew' }
208 autocmd FileType * set formatoptions-=o
211 " based off https://github.com/jeffkreeftmeijer/vim-dim/blob/main/colors/default-light.vim
212 hi SpecialKey ctermfg=4
213 hi TermCursor cterm=reverse
214 hi NonText ctermfg=12
215 hi Directory ctermfg=4
216 hi ErrorMsg ctermfg=15 ctermbg=1
217 hi IncSearch cterm=reverse
219 hi ModeMsg cterm=bold
220 hi Question ctermfg=2
222 hi WarningMsg ctermfg=1
223 hi WildMenu ctermfg=0 ctermbg=11
225 hi SpellBad ctermfg=9 ctermbg=0 cterm=underline
226 hi SpellRare ctermbg=13 ctermbg=0 cterm=underline
227 hi SpellLocal ctermfg=14 ctermbg=0 cterm=underline
228 hi PmenuSbar ctermbg=8
229 hi PmenuThumb ctermbg=0
230 hi CursorColumn ctermbg=7
231 hi CursorLine cterm=underline
232 hi MatchParen cterm=NONE ctermfg=0 ctermbg=14
233 hi Constant ctermfg=1
235 hi Identifier cterm=NONE ctermfg=6
236 hi Statement ctermfg=3
239 hi Underlined cterm=underline ctermfg=5
241 hi Error ctermfg=15 ctermbg=9
242 hi Todo ctermfg=0 ctermbg=11
243 hi Comment ctermfg=DarkGrey
244 hi lineNr ctermfg=DarkGrey
246 hi Pmenu ctermfg=0 ctermbg=7
247 hi PmenuSel ctermfg=0 ctermbg=6