X-Git-Url: https://git.rmz.io/dotfiles.git/blobdiff_plain/7540df595356be7d641aaad3c840407de3e7a3c0..HEAD:/vim/vimrc diff --git a/vim/vimrc b/vim/vimrc index a600c8e..402a980 100644 --- a/vim/vimrc +++ b/vim/vimrc @@ -4,6 +4,11 @@ if has('python3') | endif " space is leader let g:mapleader = " " +" disable netrw +"FIXME: it currently breaks vim-fugitive 2023-04-11 +" instead of opening Git status, a netrw buffer opens instead +let g:loaded_netrwPlugin = 1 + " runtimepath {{{1 set runtimepath ^=$XDG_CONFIG_HOME/vim set runtimepath +=$XDG_CONFIG_HOME/vim/after @@ -213,7 +218,6 @@ Plug 'derekwyatt/vim-fswitch' Plug 'elzr/vim-json' Plug 'firef0x/pkgbuild.vim' Plug 'junegunn/vim-easy-align' -Plug 'klen/python-mode' Plug 'kshenoy/vim-signature' " Plug 'majutsushi/tagbar' " TODO: delete? {{{2 " map :TagbarToggle @@ -289,6 +293,23 @@ Plug 'mtth/scratch.vim' " {{{2 let g:scratch_autohide = 0 "}}} +Plug 'vim-pandoc/vim-pandoc' " {{{2 +Plug 'vim-pandoc/vim-pandoc-syntax' +let g:pandoc#syntax#conceal#use = 1 +let g:pandoc#syntax#conceal#blacklist = [ + \ 'titleblock', + \ 'codeblock_start', + \ 'codeblock_delim', + \ 'atx', + \ ] +let g:pandoc#syntax#codeblocks#embeds#langs = [ + \ 'plantuml', + \ ] +let g:pandoc#keyboard#blacklist_submodule_mappings = [ + \ 'para', + \ ] +"}}} + " Plug 'jenterkin/vim-autosource' " TODO: delete? {{{2 " let g:autosource_hashdir = $XDG_CACHE_HOME . '/vim/vim-autosource' " let g:autosource_conf_names = ['.vimrc', '.vimrc.lua'] @@ -430,7 +451,9 @@ set shiftround " round to 'shiftwidth' for "<<" and ">>" set expandtab " expand to spaces in Insert mode set autoindent -set pastetoggle= " key sequence to toggle paste mode +if !has('nvim') + set pastetoggle= " key sequence to toggle paste mode +endif " folding {{{2 set foldmethod=marker " folding type @@ -542,34 +565,37 @@ augroup ft_stdin au StdinReadPost * :set buftype=nofile augroup END -" Jump to last known cursor position {{{2 -augroup last_loc +if !has("nvim") + " autocmds that already exist in neovim + " Jump to last known cursor position {{{2 + augroup last_loc + au! + " blacklist certain filetype + let blacklist = ['gitcommit'] + autocmd BufReadPost * + \ if index(blacklist, &ft) < 0 && line("'\"") > 1 && line("'\"") <= line("$") | + \ exe "normal! g`\"" | + \ endif + augroup END + + " Check for file modifications automatically {{{2 + " (current buffer only) + " Use :NoAutoChecktime to disable it (uses b:autochecktime) + fun! MyAutoCheckTime() + " only check timestamp for normal files + if &buftype != '' | return | endif + if ! exists('b:autochecktime') || b:autochecktime + checktime % + let b:autochecktime = 1 + endif + endfun + augroup MyAutoChecktime au! - " blacklist certain filetype - let blacklist = ['gitcommit'] - autocmd BufReadPost * - \ if index(blacklist, &ft) < 0 && line("'\"") > 1 && line("'\"") <= line("$") | - \ exe "normal! g`\"" | - \ endif -augroup END - -" Check for file modifications automatically {{{2 -" (current buffer only) -" Use :NoAutoChecktime to disable it (uses b:autochecktime) -fun! MyAutoCheckTime() - " only check timestamp for normal files - if &buftype != '' | return | endif - if ! exists('b:autochecktime') || b:autochecktime - checktime % - let b:autochecktime = 1 - endif -endfun -augroup MyAutoChecktime - au! - au FocusGained,BufEnter,CursorHold,InsertEnter * call MyAutoCheckTime() -augroup END -command! NoAutoChecktime let b:autochecktime=0 -command! ToggleAutoChecktime let b:autochecktime=!get(b:, 'autochecktime', 0) | echom "b:autochecktime:" b:autochecktime + au FocusGained,BufEnter,CursorHold,InsertEnter * call MyAutoCheckTime() + augroup END + command! NoAutoChecktime let b:autochecktime=0 + command! ToggleAutoChecktime let b:autochecktime=!get(b:, 'autochecktime', 0) | echom "b:autochecktime:" b:autochecktime +endif " bindings {{{1 @@ -625,6 +651,9 @@ nnoremap ww :Untrail " Source vnoremap S y:execute @@:echo 'Sourced selection.' nnoremap S ^vg_y:execute @@:echo 'Sourced line.' +" Technically this is similar to execute this file, which is usually mapped to +" r and it would make sense to have that for lua files in nvim folder +nnoremap SS :source %:echo 'Sourced file.' " jump to last cursor position noremap ' ` @@ -745,7 +774,7 @@ vnoremap zf cabbrev w!! SudoWrite " uppercase previous word -inoremap gUiwgi +inoremap ugUiwgi " http://git.io/v3ZeU nmap qq :echo "hi<" . synIDattr(synID(line("."),col("."),1),"name") . '> trans<' . synIDattr(synID(line("."),col("."),0),"name") . "> lo<" . synIDattr(synIDtrans(synID(line("."),col("."),1)),"name") . ">" @@ -797,11 +826,9 @@ command! GToggle GitToggle nnoremap gs :GitToggle nnoremap gd :Gdiffsplit -nnoremap gc :echohl WarningMsg \| echo "use \gcc instead" \| echohl None nnoremap gcc :tab G commit -v nnoremap gca :tab G commit -v --amend nnoremap gcf :tab G commit -v --fixup= -nnoremap gp :echohl WarningMsg \| echo "use \gpp instead" \| echohl None nnoremap gpp :Git push \| copen nnoremap gpf :Git push --force-with-lease \| copen nnoremap gll :Git pull @@ -827,15 +854,8 @@ nmap cog IndentGuidesToggle nmap [og IndentGuidesEnable nmap ]og IndentGuidesDisable -" python-mode {{{2 - -let g:pymode_rope_completion = 0 -let g:pymode_rope = 0 -let g:pymode_run = 0 -let g:pymode_folding = 1 -let g:pymode_lint_ignore = "E221,E266,E501" -let g:pymode_lint_cwindow = 0 " don't open cwindow when linting -let g:pymode_syntax_space_errors = 0 " don't bother me when I'm typing +" netrw {{{2 +let g:netrw_sort_sequence = '[\/]$,\.\%(h\|hpp\)$,\.c$,\.cpp$,\~\=\*$,*,\.o$,\.obj$,\.info$,\.swp$,\.bak$,\~$' " signature {{{2 " disable '[ mappings