diff options
author | Bryson Steck <brysonsteck@protonmail.com> | 2022-11-02 13:12:48 -0600 |
---|---|---|
committer | Bryson Steck <brysonsteck@protonmail.com> | 2022-11-02 13:12:48 -0600 |
commit | 1e0410734f651a0f2f391caf8c51b1e729960e66 (patch) | |
tree | 0cdffab6a77b51ab50f8394cf8254c8e5070846f /vim | |
parent | 9dd7a9d441f8562e6fbafa3a257401d123729adf (diff) | |
download | dotfiles-1e0410734f651a0f2f391caf8c51b1e729960e66.tar dotfiles-1e0410734f651a0f2f391caf8c51b1e729960e66.tar.gz dotfiles-1e0410734f651a0f2f391caf8c51b1e729960e66.tar.bz2 |
never overwritting things ever again :(
Diffstat (limited to 'vim')
-rw-r--r-- | vim/.vimrc | 141 |
1 files changed, 67 insertions, 74 deletions
@@ -1,13 +1,24 @@ +" file stuff filetype plugin on syntax enable -let g:vimtex_compiler_method = 'arara' -let maplocalleader = "\\" +" Plug plugins +call plug#begin() + + Plug 'neoclide/coc.nvim', {'branch': 'release'} + Plug 'itchyny/lightline.vim' + Plug 'jceb/vim-orgmode' + Plug 'tpope/vim-speeddating' + Plug 'ryanoasis/vim-devicons' + Plug 'tiagofumo/vim-nerdtree-syntax-highlight' + Plug 'lervag/vimtex' + Plug 'preservim/nerdtree' + Plug 'itchyny/vim-gitbranch' + +call plug#end() + +" sets set nocompatible -let g:gruvbox_contrast_dark = 'soft' -let g:gruvbox_termcolors = '16' -let g:python_recommended_style = 0 -colorscheme gruvbox set ttymouse=sgr set number set bg:dark @@ -25,6 +36,47 @@ set ttimeout ttimeoutlen=25 set showtabline=2 set undodir=~/.vim/undo-dir set undofile +set backupdir=$HOME/.vim/backups +set noshowmode + +" lets +let g:vimtex_compiler_method = 'arara' +let maplocalleader = "\\" +let mapleader = " " +let g:gruvbox_contrast_dark = 'soft' +let g:gruvbox_termcolors = '16' +let g:python_recommended_style = 0 +let g:NERDTreeFileExtensionHighlightFullName = 1 +let g:NERDTreeExactMatchHighlightFullName = 1 +let g:NERDTreePatternMatchHighlightFullName = 1 + +" colorscheme stuff +colorscheme gruvbox + +" fix colorscheme colors +hi Normal ctermbg=NONE + +" remaps +nnoremap <SPACE> <Nop> +nnoremap <leader>w :w<CR> +nnoremap <leader>q :q<CR> +nnoremap <leader>! :q!<CR> +nnoremap <leader>x :wq<CR> +nnoremap <leader>n :NERDTreeFocus<CR> +nnoremap <leader>t :NERDTreeToggle<CR> +nnoremap <leader>p :wincmd p<CR> +nnoremap <leader>v :set paste! number! \| :NERDTreeToggle \| :wincmd p<CR> + +" nerdtree stuff +" Start NERDTree. If a file is specified, move the cursor to its window. +"autocmd StdinReadPre * let s:std_in=1 +"autocmd VimEnter * NERDTree | if argc() > 0 || exists("s:std_in") | wincmd p | endif +" Exit Vim if NERDTree is the only window remaining in the only tab. +autocmd BufEnter * if tabpagenr('$') == 1 && winnr('$') == 1 && exists('b:NERDTree') && b:NERDTree.isTabTree() | quit | endif +" Close the tab if NERDTree is the only window remaining in it. +autocmd BufEnter * if winnr('$') == 1 && exists('b:NERDTree') && b:NERDTree.isTabTree() | quit | endif +" Open the existing NERDTree on each new tab. +autocmd BufWinEnter * if getcmdwintype() == '' | silent NERDTreeMirror | endif " turn on spell checker for all markdown files autocmd FileType markdown setlocal spell @@ -37,17 +89,7 @@ hi SpellCap cterm=underline hi clear SpellLocal hi SpellLocal cterm=underline -call plug#begin() - -Plug 'neoclide/coc.nvim', {'branch': 'release'} -Plug 'jaxbot/semantic-highlight.vim' -Plug 'itchyny/lightline.vim' -Plug 'jceb/vim-orgmode' -Plug 'tpope/vim-speeddating' -Plug 'lervag/vimtex' - -call plug#end() - +" Coc remaps inoremap <silent><expr> <TAB> \ pumvisible() ? "\<C-n>" : \ <SID>check_back_space() ? "\<TAB>" : @@ -59,69 +101,20 @@ function! s:check_back_space() abort return !col || getline('.')[col - 1] =~# '\s' endfunction -"let s:semanticGUIColors = [ "#cc241d", "#98971a", "#d79921", "#458588", "#b16286", "#689d6a", "#928374", "#fb4934", "#b8bb26", "#fabd2f", "#83a598", "#d3869b", "#8ec07c", "#ebdbb2" ] - - -" stolen from https://shapeshed.com/vim-statuslines/ -"function! GitBranch() -" return system("git rev-parse --abbrev-ref HEAD 2>/dev/null | tr -d '\n'") -" let g:gitparsedbranchname = strlen(l:string) > 0?'['.l:string.']':'' -"endfunction - -"function! StatuslineGit() -" let l:branchname = GitBranch() -" return strlen(l:branchname) > 0?' '.l:branchname.' ':'' -"endfunction - -"function! InsertStatuslineColor(mode) -" if a:mode == 'i' -" hi statusline guibg=Cyan ctermfg=6 guifg=Black ctermbg=0 -" elseif a:mode == 'r' -" hi statusline guibg=Purple ctermfg=5 guifg=Black ctermbg=0 -" else -" hi statusline guibg=DarkRed ctermfg=1 guifg=Black ctermbg=0 -" endif -"endfunction - -"au InsertEnter * call InsertStatuslineColor(v:insertmode) -"au InsertLeave * hi statusline guibg=DarkGrey ctermfg=8 guifg=White ctermbg=15 - -set statusline= -"set statusline+=%#PmenuSel# -"set statusline+=%{StatuslineGit()} -"set statusline+=%#LineNr# -set statusline+=\ %F -set statusline+=\ %y -set statusline+=\ %m -set statusline+=\ %r -set statusline+=%= -set statusline+=%#CursorColumn# -"set statusline+=\ %L\ lines -"set statusline+=\ %y -"set statusline+=\ -set statusline+=\ %{&fileencoding?&fileencoding:&encoding} -"set statusline+=" >" -set statusline+=\ [%{&fileformat}\] -"set statusline+=" >" -set statusline+=\ %p%% -"set statusline+=" >" -set statusline+=\ %l/%L:%c -set statusline+=\ - - -"hi StatusLine ctermbg=black -hi Normal ctermbg=NONE let g:lightline = { \ 'colorscheme': 'gruvbox', \ 'active': { \ 'left': [ [ 'mode', 'paste' ], - \ [ 'filename', 'readonly', 'modified' ] ], + \ [ 'filename', 'readonly', 'modified' ], + \ [ 'gitbranch'] ], \ 'right': [ [ 'lineinfo' ], - \ [ 'fileformat', 'fileencoding', 'filetype' ] ] + \ [ 'fileformat', 'fileencoding', 'filetype' ], + \ [ 'percent' ] ] \ }, \ 'component_function': { - \ 'cocstatus': 'coc#status', - \ 'currentfunction': 'CocCurrentFunction' + \ 'gitbranch': 'gitbranch#name' \ }, \ } -set noshowmode +let g:lightline.component = { + \ 'close': ' %n | X ', } + |