X-Git-Url: https://git.rmz.io/dotfiles.git/blobdiff_plain/00265670bcd9bfb48f74b6a8f30077f93fc88e86..2c9bc7b49893235446c5274ed0a42e1206b4ee4b:/vim/vimrc?ds=sidebyside diff --git a/vim/vimrc b/vim/vimrc index 9af477e..d92ec16 100644 --- a/vim/vimrc +++ b/vim/vimrc @@ -1,14 +1,14 @@ +" force python3 +if has('python3') | endif + +" space is leader +let g:mapleader = " " + " runtimepath {{{1 set runtimepath ^=$XDG_CONFIG_HOME/vim set runtimepath +=$XDG_CONFIG_HOME/vim/after -" force python3 -if has('python3') | endif - " plugins {{{1 -" remove all autocommands -autocmd! - call plug#begin('$XDG_DATA_HOME/vim') " This does not update vim-plug, use PlugUpgrade instead Plug 'junegunn/vim-plug' @@ -107,6 +107,11 @@ Plug 'kana/vim-operator-user' " staging " Check LucHermites plugins: https://github.com/LucHermitte/lh-cpp +Plug 'imsnif/kdl.vim' + +Plug 'puremourning/vimspector' +Plug 'ilyachur/cmake4vim' +Plug 'ilyachur/gtest-vim' Plug 'git@github.com:/ram-z/vim-orgmode', { 'branch': 'dev' } " {{{2 Plug 'vim-scripts/syntaxrange' @@ -196,6 +201,7 @@ augroup END set scrolloff=5 " number of screen lines to show around the cursor set sidescroll=1 " number of collumns to scroll set sidescrolloff=1 " don't scroll over the listchars +set display+=lastline " display as much as possible of last line set fillchars=diff:⣿,vert:│ @@ -309,7 +315,9 @@ set backupskip+=.netrc " skip netrc set backupskip+=/dev/shm/pass* " skip passwordstore files set undofile " persistent undo history -set undodir=$XDG_CACHE_HOME/vim/undo// +if !has('nvim') + set undodir=$XDG_CACHE_HOME/vim/undo// +endif augroup undoskip au! @@ -352,7 +360,15 @@ set isfname-== " don't treat `=` as being part of filenames " various {{{2 set virtualedit+=block " let cursor move past last char in mode set virtualedit+=onemore " allow the cursor to move just past the end of the line -set viminfo='100,<50,s10,h,n$XDG_CACHE_HOME/vim/viminfo " viminfo defaults but save file in .cache +if !has('nvim') + " viminfo defaults but save file in .cache + set viminfo='100,<50,s10,h,n$XDG_CACHE_HOME/vim/viminfo +else + " shada is the replacement format for viminfo + " this setting is probably not needed as it's most likely the default + " the default path is in XDG_DATA_HOME, which is fine + set shada='100,<50,s10,h +endif set viewdir=$XDG_CACHE_HOME/vim/view// @@ -360,9 +376,9 @@ set sessionoptions+=unix,slash " damn windows and it's silly ways " autocmds {{{1 " Resize splits when the window is resized {{{2 -augroup resize +augroup resize_splits au! - autocmd VimResized * :wincmd = + autocmd VimResized * :tabdo wincmd = augroup END " Only show cursorline in the current window and in normal mode {{{2 @@ -379,7 +395,7 @@ augroup ft_stdin augroup END " Jump to last known cursor position {{{2 -augroup cursor_pos +augroup last_loc au! " blacklist certain filetype let blacklist = ['gitcommit'] @@ -407,16 +423,8 @@ augroup END command! NoAutoChecktime let b:autochecktime=0 command! ToggleAutoChecktime let b:autochecktime=!get(b:, 'autochecktime', 0) | echom "b:autochecktime:" b:autochecktime -augroup terminal - au! - au TerminalOpen * if &buftype == 'terminal' | setlocal bufhidden=hide | endif -augroup END - " bindings {{{1 -" allow both and \ to be -map - " make function! MakeWithOpt() " TODO only do this if makeprg matches make @@ -604,6 +612,14 @@ nmap qq :echo "hi<" . synIDattr(synID(line("."),col("."),1),"na let g:checkattach_filebrowser = 'ranger' let g:checkattach_once = 'y' +" close-another-window {{{2 +nnoremap c +nnoremap cc c +nnoremap ch :CloseLeftWindow +nnoremap cl :CloseRightWindow +nnoremap cj :CloseBelowWindow +nnoremap ck :CloseAboveWindow + " delimitmate {{{2 let delimitMate_expand_cr = 2 let g:delimitMate_expand_space = 1 @@ -668,14 +684,6 @@ nmap cog IndentGuidesToggle nmap [og IndentGuidesEnable nmap ]og IndentGuidesDisable -" close-another-window {{{2 -nnoremap c -nnoremap cc c -nnoremap ch :CloseLeftWindow -nnoremap cl :CloseRightWindow -nnoremap cj :CloseBelowWindow -nnoremap ck :CloseAboveWindow - " python-mode {{{2 let g:pymode_rope_completion = 0