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 ignorecase
+set smartcase
set hidden
" cursors depending on mode
" Bindings
let mapleader = ' '
-" File stuff
+" netrw stuff
map <leader>f :Ex<cr>
map <leader>l :bn<cr>
map <leader>h :bp<cr>
let g:netrw_banner = 0
let g:netrw_winsize = 25
+" file finding
+set path=**
+set wildmenu
+
" spell check
setlocal spell
set spelllang=en_us
set spellcapcheck=
-" accept first spell check fix
-map <leader>z 1z=<cr>
+" use s as prefix for spell check related commands
+map s <nop>
+map sf 1z=<cr>
+map sn ]s
+map sN [s
+map sa zg
+map sd zw
" folding
set foldmethod=manual
" reload vimrc
map <leader>r :source ~/.vimrc<cr>:echo "vimrc reloaded"<cr>
+" write with sudo
+cmap w!! w !sudo tee > /dev/null %
+
+" reload current file
+map <leader>e :e<cr>:echo "current file reloaded"<cr>
+map <leader>E :e!<cr>:echo "current file force reloaded"<cr>
+
" statusline
function! StatusModeColor()
if (mode() =~# '\v(n|no)')
hi StatusLine cterm=None gui=None ctermfg=black ctermbg=Yellow
- elseif (mode() =~# '\v(v|V)')
+ elseif (mode() =~# '\v(v|V|\16)')
hi StatusLine cterm=None gui=None ctermfg=black ctermbg=Red
elseif (mode() ==# 'i')
hi StatusLine cterm=None gui=None ctermfg=black ctermbg=LightBlue
else
hi StatusLine cterm=None gui=None ctermfg=black ctermbg=DarkGrey
endif
-
- return ''
endfunction
function! StatusModifiedColor()
- if getbufinfo(1)[0].changed
+ if &mod
hi User1 cterm=None gui=None ctermfg=Black ctermbg=Magenta
else
hi User1 cterm=None gui=None ctermfg=White ctermbg=Black
endif
+endfunction
+function! ReloadBar()
+ call StatusModeColor()
+ call StatusModifiedColor()
return ''
endfunction
return printf("%d/%d", bufnr("%"), len(getbufinfo({'buflisted':1})))
endfunction
-call StatusModeColor()
-call StatusModifiedColor()
-autocmd BufWritePost <buffer> call StatusModifiedColor()
+autocmd BufEnter * call ReloadBar()
+autocmd BufWritePost <buffer> call ReloadBar()
set laststatus=2
set statusline=
-set statusline+=%{StatusModeColor()}
-set statusline+=%{StatusModifiedColor()}
+set statusline+=%{ReloadBar()}
set statusline+=%1*\ |
set statusline+=%0*\ vim\ \[%{mode()}\]
set statusline+=\[%{BufCount()}\]
set statusline+=\ %l/%L:%c\ |
set statusline+=%1*\ |
+" Tab line
+hi TabLineSel cterm=Bold ctermfg=Yellow
+hi TabLine cterm=None ctermfg=Grey ctermbg=Black
+hi TabLineFill cterm=None ctermbg=Black
+
" Templates
augroup templates
autocmd BufNewFile *.tex 0r ~/.vim/templates/skeleton.tex
autocmd BufNewFile *.xml 0r ~/.vim/templates/skeleton.xml
augroup END
+" highlighting (will get rid of this sometime prob)
+au BufRead,BufNewFile *.svelte set filetype=svelte
+au! Syntax svelte source ~/.vim/syntax/svelte.vim
+
+au BufRead,BufNewFile *.shader set filetype=glsl
+au! Syntax svelte source ~/.vim/syntax/glsl.vim
+
" vim plug
" this blob auto installs vim plug if it isnt already
-if empty(glob('~/.vim/autoload/plug.vim'))
- silent !curl -fLo ~/.vim/autoload/plug.vim --create-dirs
- \ https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim
- autocmd VimEnter * PlugInstall --sync | source $MYVIMRC
- endif
+fun! s:VimPlugSetup()
+ if empty(glob('~/.vim/autoload/plug.vim'))
+ silent !curl -fLo ~/.vim/autoload/plug.vim --create-dirs https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim
+ autocmd VimEnter * PlugInstall --sync | source $MYVIMRC
+ else
+ echo 'VimPlug is already installed'
+ endif
+endfun
+command PlugSetup :call s:VimPlugSetup()
" template stuff
call plug#begin('~/.vim/plugged')
Plug 'sirver/ultisnips'
-Plug 'lervag/vimtex'
-Plug 'PietroPate/vim-tex-conceal'
-Plug 'jiangmiao/auto-pairs'
Plug 'tpope/vim-commentary'
-Plug 'rlue/vim-barbaric'
-Plug 'ap/vim-css-color'
+Plug 'ap/vim-buftabline'
+Plug 'lervag/vimtex', { 'for': 'tex' }
+Plug 'PietroPate/vim-tex-conceal', { 'for': 'tex' }
+Plug 'takac/vim-hardtime'
call plug#end()
map <localleader>sr :call UltiSnips#RefreshSnippets()<cr>:echo "Refreshed Snippets"<cr>
+" latex stuff
+" fun! LatexCompile()
+" echo 'compiling latex'
+" endfun
+" augroup latex
+" autocmd!
+" autocmd BufWritePost *.tex :call LatexCompile()
+" augroup END
+
" Vimtex
let g:tex_flavor='latex'
let g:vimtex_view_method='zathura'
let g:vimtex_compiler_latexmk = {
\'build_dir': '/home/pinosaur/.cache/latexaux/',
+ \'options': [
+ \ '-shell-escape',
+ \],
\}
- " \'options': [
- " \ '-shell-escape',
- " \],
-
-" Ctrlp
-" let g:ctrlp_cmd='CtrlPTag'
-" Lf
-" let g:lf_replace_netrw = 1 " weird behavior rn
+" buftabline
+let g:buftabline_show = 1
-" vim-barbaric
-let g:barbaric_ime = 'ibus'
-set ttimeoutlen=0
+" hardtime
+let g:hardtime_default_on = 1
+let g:hardtime_maxcount = 2
" Run after plugins
autocmd FileType * set formatoptions-=o
hi SpellLocal ctermfg=14 ctermbg=0 cterm=underline
hi PmenuSbar ctermbg=8
hi PmenuThumb ctermbg=0
-hi TabLine cterm=underline ctermfg=0 ctermbg=7
-hi TabLineSel cterm=bold
-hi TabLineFill cterm=reverse
hi CursorColumn ctermbg=7
hi CursorLine cterm=underline
hi MatchParen cterm=NONE ctermfg=0 ctermbg=14
hi Ignore ctermfg=15
hi Error ctermfg=15 ctermbg=9
hi Todo ctermfg=0 ctermbg=11
-hi Comment ctermfg=7
+hi Comment ctermfg=DarkGrey
hi lineNr ctermfg=DarkGrey
hi Folded ctermfg=0
+hi Pmenu ctermfg=0 ctermbg=7
+hi PmenuSel ctermfg=0 ctermbg=6