fe0fbe12ec20dcd6f4ce1528f932124abaa8a345
dblume Soften the status line colo...

dblume authored 11 months ago

1) " Version 2024-03-17.1 - status line color tweak
David Blume first commit

David Blume authored 9 years ago

2) set nocompatible    " Use Vim defaults, forget compatibility with vi.
3) set bs=2            " allow backspacing over everything in insert mode
4) set wildmenu        " Allows command-line completion with tab
5) set autoindent      " Copy indent from current line when starting a new line
6) set smartindent     " Do smart auto indenting when starting  new line
7) set smarttab        " Honor 'shiftwidth', 'tabstop' or 'softtabstop'
8) set hlsearch        " highlight all matches for previous search
dblume Better fold settings for zA

dblume authored 1 year ago

9) set foldlevel=99
David Blume first commit

David Blume authored 9 years ago

10) set nowrap          " no wrapping text lines on the screen (exceptions below)
11) set sidescroll=5
dblume May use nbsp in PS1; add it...

dblume authored 2 years ago

12) set listchars+=tab:>-,precedes:<,extends:>,nbsp:· " for :set list
dblume Add - as a word character

dblume authored 1 year ago

13) set iskeyword+=-    " Add - to list of non-word-breaking chars.
dblume Starting trial with vim 'in...

dblume authored 1 year ago

14) set incsearch       " Navigate to matched strings while typing. Toggle: :set is!
dblume Set scrolloff to 0, EC2 def...

dblume authored 11 months ago

15) set scrolloff=0     " EC2 defaults to 5. Set explicitly to be consistent
dblume Vim to delete comment char...

dblume authored 10 months ago

16) set formatoptions+=j " Delete comment character when joining commented lines.
dblume Improve Esc key reaction, f...

dblume authored 10 months ago

17) set ttimeoutlen=100 " Affects Esc key, not leader.
dblume .vimrc needs explicit "noru...

dblume authored 10 months ago

18) set noruler         " Don't show cursor pos on right side of status bar
David Blume first commit

David Blume authored 9 years ago

19) 
20) if v:version >= 703
21)   " Do save the undo tree to file, but not in the local directory.
22)   " Don't forget to mkdir ~/.vim_undo
23)   set undodir=~/.vim_undo,.
24)   set undofile        " undo even after closing and reopening a file
25) endif
26) 
David Blume vimrc key remappings. jk as...

David Blume authored 6 years ago

27) " Make j and k move to the next row, not file line
28) nnoremap j gj
29) nnoremap k gk
30) 
31) " From Steve Losh: http://learnvimscriptthehardway.stevelosh.com/chapters/10.html
dblume Use j and k for navigating...

dblume authored 2 years ago

32) " Map jk to ESC in insert mode (except when navigating popup menu)
33) inoremap <expr> jk pumvisible() ? '' : '<esc>'
34) inoremap <expr> j pumvisible() ? '<Down>' : 'j'
35) inoremap <expr> k pumvisible() ? '<Up>' : 'k'
dblume Map Tab and CR to pull-up-m...

dblume authored 10 months ago

36) inoremap <expr> <Tab> pumvisible() ? '<Down>' : '<Tab>'
37) inoremap <expr> <S-Tab> pumvisible() ? '<Up>' : '<S-Tab>'
38) inoremap <expr> <cr> pumvisible() ? '<C-y>' : '<cr>'
David Blume vimrc key remappings. jk as...

David Blume authored 6 years ago

39) 
dblume Add easier window navigation.

dblume authored 2 years ago

40) " https://stevelosh.com/blog/2010/09/coming-home-to-vim/#s3-why-i-came-back-to-vim
41) nnoremap <leader>v <C-w>v<C-w>l
42) nnoremap <C-h> <C-w>h
43) nnoremap <C-j> <C-w>j
44) nnoremap <C-k> <C-w>k
45) nnoremap <C-l> <C-w>l
46) 
David Blume vimrc key remappings. jk as...

David Blume authored 6 years ago

47) " clear search highlights
48) nnoremap <cr> :noh<cr><cr>
David Blume first commit

David Blume authored 9 years ago

49) 
dblume tab key navigation of buffers

dblume authored 1 year ago

50) " tab switches to previous/next buffer
51) nnoremap <Tab> :bp<cr>
52) nnoremap <S-Tab> :bn<cr>
53) 
dblume Remap Y to yank to end of l...

dblume authored 11 months ago

54) " Use yy to yank a whole line, use Y to yank to end of line like C and D
55) nnoremap Y y$
56) 
David Blume first commit

David Blume authored 9 years ago

57) syntax on
58) 
59) set t_Co=256
60) if v:version >= 703
61)   set colorcolumn=80
62) endif
63) if has('gui_running') " Didn't work: if &term != 'builtin_gui'
64)   " Light backgrounds for GUI experiences
65)   set background=light
66)   " colorscheme peaksea                        " install peaksea
67)   colorscheme tolerable                        " install tolerable
68)   if v:version >= 703
69)     highlight ColorColumn ctermbg=255 guibg=#F6F6F6
70)   endif
dblume nvim ColorColumn was inverted

dblume authored 11 months ago

71)   highlight statusline   ctermfg=17 ctermbg=Gray  " override scheme
72)   highlight statuslineNC ctermfg=20 ctermbg=LightGray  " override scheme
David Blume Specify a font for gvim on...

David Blume authored 4 years ago

73)   if has('win32')
74)     set guifont=DejaVu_Sans_Mono_for_Powerline:h10:cANSI:qDRAFT
75)   endif
David Blume first commit

David Blume authored 9 years ago

76)   set lines=50 columns=100
77) else
78)   " Dark backgrounds for tty experiences
79)   set background=dark
80)   colorscheme desert                           " install desert
81)   if v:version >= 703
David Blume Windows PuTTY shows ctermbg...

David Blume authored 6 years ago

82)     highlight ColorColumn ctermbg=233 guibg=Black " dark gray (or 17, dark blue)
David Blume first commit

David Blume authored 9 years ago

83)   endif
dblume Make the normal statusbar m...

dblume authored 10 months ago

84)   highlight statusline   ctermfg=23 ctermbg=250  " override scheme
dblume Change hightlight of curren...

dblume authored 10 months ago

85) "  highlight User1        ctermfg=250 ctermbg=30
dblume Soften the status line colo...

dblume authored 11 months ago

86)   highlight statuslineNC ctermfg=237 ctermbg=Gray  " override scheme
dblume Better statusline color.

dblume authored 2 years ago

87)   highlight MatchParen   term=reverse ctermbg=23  " 23 is more subtle than default
David Blume first commit

David Blume authored 9 years ago

88) endif
dblume Better statusline color.

dblume authored 2 years ago

89) 
dblume Vim insert mode's blue shou...

dblume authored 10 months ago

90) au InsertEnter * hi statusline guibg=Cyan ctermfg=25 guifg=Black ctermbg=248
dblume Make the normal statusbar m...

dblume authored 10 months ago

91) au InsertLeave * hi statusline term=bold,reverse cterm=bold,reverse ctermfg=23 ctermbg=250 guifg=black guibg=#c2bfa5
dblume Maybe I like these statusli...

dblume authored 1 year ago

92) 
David Blume first commit

David Blume authored 9 years ago

93) " set mouse=v     " visual mode, not working great for PuTTY
94) 
95) set tags=tags;/
96) 
dblume Make vim StatuslineGit() re...

dblume authored 11 months ago

97) set history=500
dblume Update vim statusline to pr...

dblume authored 1 year ago

98) set laststatus=2
99) 
dblume Retrieve git branch only on...

dblume authored 11 months ago

100) function! GitBranch()
dblume Make vim StatuslineGit() re...

dblume authored 11 months ago

101)   let l:branchname = system("git -C " . expand('%:p:h') . " rev-parse --abbrev-ref HEAD 2>/dev/null | tr -d '\n'")
dblume Make git branch fit on stat...

dblume authored 11 months ago

102)   return strlen(l:branchname) > 0 ? '  │ '.l:branchname : ''
dblume Update vim statusline to pr...

dblume authored 1 year ago

103) endfunction
104) 
dblume Only show encoding and form...

dblume authored 10 months ago

105) function! EncodingAndFormat()
106)   if (len(&fileencoding) && &fileencoding != 'utf-8') || &fileformat != 'unix'
107)     return &fileencoding?&fileencoding:&encoding .'['. &fileformat . '] │ '
108)   endif
109)   return ''
110) endfunction
111) 
dblume Make "set ruler!" change st...

dblume authored 10 months ago

112) function! OnRuler()
113)   if &ruler
114)     return '│ '.line('.').':'.col('.').' '
115)   endif
116)   return ''
117) endfunction
118) 
dblume Default to mode() if not in...

dblume authored 1 year ago

119) function! Current_mode()
120)   let l:currentmode={
dblume Update vim statusline to pr...

dblume authored 1 year ago

121)     \ 'n'  : 'NORMAL',
122)     \ 'v'  : 'VISUAL',
123)     \ 'V'  : 'V·LINE',
124)     \ '' : 'V·BLOCK',
125)     \ 's'  : 'SELECT',
126)     \ 'S'  : 'S·LINE',
127)     \ 'i'  : 'INSERT',
dblume Default to mode() if not in...

dblume authored 1 year ago

128)     \ 'r'  : 'I·REPLACE',
dblume Update vim statusline to pr...

dblume authored 1 year ago

129)     \ 'R'  : 'REPLACE',
130)     \ 'Rv' : 'V·REPLACE',
131)     \ 'c'  : 'COMMAND',
132)     \}
dblume Default to mode() if not in...

dblume authored 1 year ago

133)     return get(l:currentmode, mode(), mode())
134) endfunction
dblume Update vim statusline to pr...

dblume authored 1 year ago

135) 
136) function! Trim_brackets(fn)
dblume Support older vim on raspi

dblume authored 1 year ago

137)   if v:version > 800
138)     return trim(a:fn, "[]")
139)   else
140)     return a:fn
141)   endif
dblume Update vim statusline to pr...

dblume authored 1 year ago

142) endfunction
143) 
dblume Default to mode() if not in...

dblume authored 1 year ago

144) set statusline=\ %{Current_mode()}
dblume Update vim statusline to pr...

dblume authored 1 year ago

145) set statusline+=%{&paste?'\ \ ·\ PASTE':''}
dblume Retrieve git branch only on...

dblume authored 11 months ago

146) set statusline+=%{b:git_branch}
dblume vimrc use box drawing vertical

dblume authored 1 year ago

147) set statusline+=\ │\ %f
dblume Default to mode() if not in...

dblume authored 1 year ago

148) set statusline+=%m
149) set statusline+=\ %r
150) set statusline+=\ %=
dblume Update vim statusline to pr...

dblume authored 1 year ago

151) set statusline+=%h
dblume Default to mode() if not in...

dblume authored 1 year ago

152) set statusline+=\ %{Trim_brackets(&filetype)}
153) set statusline+=\ %#StatusLineNC#
dblume Only show encoding and form...

dblume authored 10 months ago

154) set statusline+=\ %{b:enc_fmt}
155) set statusline+=%p%%\ of
dblume Drop column and line number...

dblume authored 11 months ago

156) set statusline+=\ %L\ 
dblume Make "set ruler!" change st...

dblume authored 10 months ago

157) set statusline+=%{OnRuler()}
David Blume first commit

David Blume authored 9 years ago

158) 
159) set encoding=utf-8
160) 
dblume No comments after key mappi...

dblume authored 2 years ago

161) " Fast saving
162) nmap <leader>w :w!<cr>
David Blume first commit

David Blume authored 9 years ago

163) " I use relative number for cursor movement.
164) nmap <leader>r :set relativenumber!<cr>
165) nmap <leader>n :set number!<cr>
166) 
167) " Useful mappings for managing tabs
dblume Remove bad vim mappings for...

dblume authored 2 years ago

168) " Tab Previous: gT or C-PageUp
169) " Tab Next: gt or C-PageDown
David Blume first commit

David Blume authored 9 years ago

170) nmap <leader>tn :tabnew
171) nmap <leader>to :tabonly<cr>
172) nmap <leader>tc :tabclose<cr>
173) nmap <leader>tm :tabmove
dblume Add shortcuts for tab selec...

dblume authored 2 years ago

174) nmap <leader>1 1gt
175) nmap <leader>2 2gt
176) nmap <leader>3 3gt
177) nmap <leader>4 4gt
178) nmap <leader>5 5gt
179) nmap <leader>6 6gt
180) nmap <leader>7 7gt
181) nmap <leader>8 8gt
182) nmap <leader>9 9gt
dblume Use <leader>o OpenCurrentAs...

dblume authored 2 years ago

183) 
184) " Open current buffer in new tab. Close with C-w,c
185) " https://vim.fandom.com/wiki/Maximize_window_and_return_to_previous_split_structure
186) function! OpenCurrentAsNewTab()
dblume Restore entire window view...

dblume authored 2 years ago

187)     let l:currentView = winsaveview()
dblume Use <leader>o OpenCurrentAs...

dblume authored 2 years ago

188)     tabedit %
dblume Restore entire window view...

dblume authored 2 years ago

189)     call winrestview(l:currentView)
dblume Use <leader>o OpenCurrentAs...

dblume authored 2 years ago

190) endfunction
191) nmap <leader>o :call OpenCurrentAsNewTab()<CR>
David Blume first commit

David Blume authored 9 years ago

192) 
193) " pastetoggle
194) nmap <leader>p :set invpaste paste?<cr>
195) 
David Blume Add mapping to paste onto n...

David Blume authored 6 years ago

196) " Control+p to paste onto next line
197) nmap <C-p> :pu<cr>
198) 
David Blume Will use netrw's Explore in...

David Blume authored 3 years ago

199) " Make netrw's Explore behave a little like NERDTreeToggle
200) " http://vimcasts.org/blog/2013/01/oil-and-vinegar-split-windows-and-project-drawer/
David Blume Remove NERDTree and use net...

David Blume authored 4 years ago

201) function! ToggleNetrw()
David Blume Improve the toggling of the...

David Blume authored 3 years ago

202)   if bufwinnr("NetrwTreeListing") > 0
203)     for i in range(1, bufnr("$"))
204)       if (getbufvar(i, "&filetype") == "netrw")
David Blume Use netrw Vexplore to assur...

David Blume authored 3 years ago

205)         silent exe "bwipeout " . i
David Blume Improve the toggling of the...

David Blume authored 3 years ago

206)         return
207)       endif
208)     endfor
209)   endif
David Blume Use netrw Vexplore to assur...

David Blume authored 3 years ago

210)   silent Vexplore %:p:h
David Blume Remove NERDTree and use net...

David Blume authored 4 years ago

211) endfunction
212) nmap <leader>e :call ToggleNetrw()<cr>
213) 
dblume No comments after key mappi...

dblume authored 2 years ago

214) " install taglist
215) let Tlist_GainFocus_On_ToggleOpen = 1  " Jump to taglist window on open
216) let Tlist_Exit_OnlyWindow = 1          " if you are the last, kill yourself
217) let Tlist_Close_On_Select = 1          " Close taglist window on select
dblume Update taglist to 4.6 in vi...

dblume authored 10 months ago

218) let Tlist_Inc_Winwidth = 0             " Only needed for neovim in tmux
dblume No comments after key mappi...

dblume authored 2 years ago

219) nmap <leader>l :TlistToggle<cr>
220) 
221) " install vim-bbye
222) nmap <leader>bd :Bdelete<cr>
David Blume first commit

David Blume authored 9 years ago

223) 
224) " Visual mode mappings
225) """
226) 
227) " map sort function to a key
228) vnoremap <leader>s :sort<cr>
229) 
230) "easier moving of code blocks
David Blume vimrc key remappings. jk as...

David Blume authored 6 years ago

231) vnoremap < <gv
232) vnoremap > >gv
David Blume first commit

David Blume authored 9 years ago

233) 
234) " If too many file system events are getting triggered.
235) set nobackup       " ~ files
236) set nowritebackup  " Don't write buff to temp, delete orig, rename temp to orig
237) set noswapfile     " .swp files
238) 
239) " Allow tags to open another buffer even if this one is modified
240) set hidden
241) 
242) " Switch between source and header files
243) function! SwitchSourceHeader()
244)   let s:ext  = expand("%:e")
245)   let s:base = expand("%:t:r")
246)   let s:cmd  = "find " . s:base
247)   if (s:ext == "cpp" || s:ext == "c")
248)     if findfile(s:base . ".h"  ) != "" | exe s:cmd . ".h"   | return | en
249)     if findfile(s:base . ".hpp") != "" | exe s:cmd . ".hpp" | return | en
250)   else
251)     if findfile(s:base . ".cpp") != "" | exe s:cmd . ".cpp" | return | en
252)     if findfile(s:base . ".c"  ) != "" | exe s:cmd . ".c"   | return | en
253)   endif
254) endfunc
255) 
256) " Demonstrates a way to look in a mirror directory
257) " function! OpenOther()
258) "    if expand("%:e") == "cpp"
259) "      exe "split" fnameescape(expand("%:p:r:s?src?include?").".h")
260) "    elseif expand("%:e") == "h"
261) "      exe "split" fnameescape(expand("%:p:r:s?include?src?").".cpp")
262) "    endif
263) " endfunc
264) 
265) " Delete trailing white space on save, useful for Python and CoffeeScript ;)
266) function! DeleteTrailingWS()
267)   exe "normal mz"
268)   %s/\s\+$//ge
269)   exe "normal `z"
270) endfunc
271) 
David Blume Add OpenInOtherWindow to .v...

David Blume authored 8 years ago

272) function! OpenInOtherWindow()
273)   if winnr('$') == 1
274)     exe "wincmd F"
275)   else
276)     let curNum = winnr()
277)     let oldBuf = bufnr( "%" )
278)     if curNum == 1
279)       let othNum = 2
280)     else
281)       let othNum = 1
282)     endif
283)     exe "normal! gF"
284)     let newBuf = bufnr( "%" )
285)     let newLine = line(".")
286)     exe 'hide buf' oldBuf
287)     exe othNum . "wincmd w"
288)     exe 'hide buf' newBuf
289)     exe "normal! " . newLine . "G"
290)   endif
291) endfunc
292) 
293) nmap <silent> <leader>F :call OpenInOtherWindow()<cr>
dblume Make OpenInOtherWindow easier.

dblume authored 2 years ago

294) nmap <silent> <leader>f :call OpenInOtherWindow()<cr>
David Blume Add OpenInOtherWindow to .v...

David Blume authored 8 years ago

295) 
David Blume first commit

David Blume authored 9 years ago

296) if has("autocmd")
297)   autocmd BufWrite *.py :call DeleteTrailingWS()  " Delete trailing whitespace
298)   " Don't let smartindent unindent the # character in Python files
299)   autocmd FileType python  inoremap # X<c-h>#
dblume expand tabs for Python

dblume authored 1 year ago

300)   autocmd FileType python,c,cpp,php,brs,sh  set expandtab  " Use spaces instead of tabs
David Blume first commit

David Blume authored 9 years ago

301)   autocmd Filetype make    setl noexpandtab       " ...not for files that use tabs.
302) 
303)   " Use the vim command %retab before applying the following
304)   " two with files that have 8-space tabs.
David Blume Add .vimrc tab values for ....

David Blume authored 8 years ago

305)   autocmd FileType c,cpp,python,php  set tabstop=4
dblume Remove some lines, allow mo...

dblume authored 2 years ago

306)   autocmd FileType c,cpp,php  set shiftwidth=4
David Blume first commit

David Blume authored 9 years ago

307) 
308)   autocmd FileType python  set foldmethod=indent  " 'za' to fold
309) 
David Blume Disable vim-airline whitesp...

David Blume authored 6 years ago

310)   autocmd FileType c,cpp nmap <buffer> <leader>s :call SwitchSourceHeader()<cr>
David Blume first commit

David Blume authored 9 years ago

311)   autocmd FileType c,cpp set foldmethod=syntax
312) 
dblume Improve focus-based switchi...

dblume authored 10 months ago

313) " https://jeffkreeftmeijer.com/vim-number/
314) augroup numbertoggle
315)   autocmd!
316)   autocmd BufEnter,FocusGained,InsertLeave,WinEnter * if &nu && mode() != "i" | set rnu   | endif
317)   autocmd BufLeave,FocusLost,InsertEnter,WinLeave   * if &nu                  | set nornu | endif
318) augroup END
David Blume first commit

David Blume authored 9 years ago

319) 
dblume Remove some lines, allow mo...

dblume authored 2 years ago

320)   autocmd BufRead *.txt set wrap linebreak   " "soft" wrap of existing lines
321)   autocmd BufRead README set wrap linebreak  " "soft" wrap of existing lines
dblume Add .local/bin to $PATH

dblume authored 2 years ago

322)   autocmd BufRead *.rs :setlocal tags=./rusty-tags.vi;/
David Blume first commit

David Blume authored 9 years ago

323) 
dblume Always start on first line...

dblume authored 11 months ago

324)   " When editing a file, always jump to the last cursor position...
David Blume first commit

David Blume authored 9 years ago

325)   autocmd BufReadPost *
dblume Improve Esc key reaction, f...

dblume authored 10 months ago

326)   \ if &ft != "gitcommit" && line("'\"") > 0 && line ("'\"") <= line("$") |
David Blume first commit

David Blume authored 9 years ago

327)   \   exe "normal! g'\"" |
328)   \ endif
dblume Improve Esc key reaction, f...

dblume authored 10 months ago

329)   " ...except for gitcommit where we always want to start at the top (nvim)
dblume Always start on first line...

dblume authored 11 months ago

330)   autocmd FileType gitcommit exe "normal! gg"
dblume Retrieve git branch only on...

dblume authored 11 months ago

331) 
dblume Only show encoding and form...

dblume authored 10 months ago

332)   autocmd BufNewFile,BufReadPost *
333)   \ let b:git_branch = GitBranch() |
334)   \ let b:enc_fmt = EncodingAndFormat()
335)   autocmd BufEnter *
336)   \ let b:git_branch = GitBranch() |
337)   \ let b:enc_fmt = EncodingAndFormat()
David Blume first commit

David Blume authored 9 years ago

338) endif
339) 
340) " This requires vim to be compiled with +python
341) " Use auto complete in insert mode with ctrl-x, ctrl-o
342) " See :help new-omni-completion for more.
343) filetype plugin on
344) set omnifunc=syntaxcomplete#Complete
dblume Completion tweaks

dblume authored 2 years ago

345) 
346) " Torn on whether I like the omni completion preview window left open or not.
347) " autocmd CompleteDone * pclose
348) 
349) " Omni completion via ctrl-space (in addition to ctrl-x ctrl-o)
350) inoremap <Nul> <C-x><C-o>
351) 
David Blume Add cscope support

David Blume authored 7 years ago

352) " cscope
353) if has("cscope")
354)     set cscopetag  " Use both cscope and ctag for 'ctrl-]'
David Blume I prefer ctags to be search...

David Blume authored 7 years ago

355)     set csto=1     " 0=cscope first; 1=ctags first
dblume Use QuickFix for cscope.

dblume authored 2 years ago

356)     set cscopequickfix=s-,c-,d-,i-,t-,e-,a- " cscope to quickfix window
357) 
David Blume Use local cscope.out databa...

David Blume authored 3 years ago

358)     set nocsverb
359)     " add any database in current directory
360)     if filereadable("cscope.out")
361)         cs add cscope.out
362)     " else add database pointed to by environment
363)     elseif $CSCOPE_DB != ""
364)         cs add $CSCOPE_DB
365)     endif
366)     set csverb
David Blume Add cscope support

David Blume authored 7 years ago

367) endif
368) 
David Blume Sort QuickFix tool by filen...

David Blume authored 3 years ago

369) " From https://stackoverflow.com/questions/15393301/how-to-automatically-sort-quickfix-entries-by-line-text-in-vim
370) " :grep term %
371) " :grep -r term path/
372) " :cw
373) " :ccl (or C-w,q)
dblume QuickFix window: only sort...

dblume authored 2 years ago

374) autocmd! QuickfixCmdPost * call MaybeSortQuickfix('QfStrCmp')
375) 
376) function! MaybeSortQuickfix(fn)
377) "    exe 'normal! '  " Doesn't work. Wanted to jump back to where we were.
378)     let t = getqflist({'title': 1}).title
dblume QuickFix sorts for 'vimgrep...

dblume authored 2 years ago

379)     " Only sort the files if for search-style commands, not "make".
dblume Follow up integrate ripgrep...

dblume authored 2 years ago

380)     if stridx(t, "cs ") == 0 || stridx(t, ":gr") == 0 || stridx(t, ":vim") == 0 || stridx(t, ":rg") == 0
dblume QuickFix window: only sort...

dblume authored 2 years ago

381)         call setqflist(sort(getqflist(), a:fn), 'r')
382)         call setqflist([], 'r', {'title': t})
383)     endif
384)     cwindow
David Blume Sort QuickFix tool by filen...

David Blume authored 3 years ago

385) endfunction
386) 
387) function! QfStrCmp(e1, e2)
388)     let [t1, t2] = [bufname(a:e1.bufnr), bufname(a:e2.bufnr)]
389)     return t1 <# t2 ? -1 : t1 ==# t2 ? 0 : 1
390) endfunction
391) 
dblume Integrate ripgrep into vim.

dblume authored 2 years ago

392) " Use ripgrep for search instead of grep
393) if executable('rg')
394)     " set grepprg=rg\ --vimgrep\ --hidden\ —glob '!.git'
395)     set grepprg=rg
396) endif
397) " Navigate quickfix list with ease
398) nnoremap <silent> [q :cprevious<CR>
399) nnoremap <silent> ]q :cnext<CR>
400) 
dblume Add DiffOrig from the vim h...

dblume authored 10 months ago

401) " From `:help :DiffOrig`.
dblume Make "set ruler!" change st...

dblume authored 10 months ago

402) if exists(":DiffOrig") != 2
403)   command DiffOrig vert new | set bt=nofile | r ++edit # | 0d_
dblume Add DiffOrig from the vim h...

dblume authored 10 months ago

404)     \ | diffthis | wincmd p | diffthis
dblume Make "set ruler!" change st...

dblume authored 10 months ago

405) endif
dblume Add DiffOrig from the vim h...

dblume authored 10 months ago

406) 
David Blume Add tip for using Roboto Mo...

David Blume authored 6 years ago

407) " I use Roboto Mono from https://github.com/powerline/fonts
David Blume Change from vim-powerline t...

David Blume authored 6 years ago

408) " On iTerm2, Preferences -> Profiles -> Text -> Font
David Blume Add tip for using Roboto Mo...

David Blume authored 6 years ago

409) " Cygwin64 won't let you choose it. Launch Cygwin64 as follows:
410) " C:\cygwin64\bin\mintty.exe -i /Cygwin-Terminal.ico -o Font="Roboto Mono for Powerline" -
David Blume Change from vim-powerline t...

David Blume authored 6 years ago

411) 
David Blume Remove NERDTree and use net...

David Blume authored 4 years ago

412) " Settings that make netrw more like NERDTree
413) let g:netrw_banner = 0
414) let g:netrw_liststyle = 3
David Blume Use netrw Vexplore to assur...

David Blume authored 3 years ago

415) let g:netrw_browse_split = 4
David Blume Remove NERDTree and use net...

David Blume authored 4 years ago

416) let g:netrw_altv = 1
David Blume Use netrw Vexplore to assur...

David Blume authored 3 years ago

417) " set g:netrw_winsize to negative for absolute width, positive for relative
418) let g:netrw_winsize = -36
419) " let g:netrw_winsize = 35
David Blume Remove NERDTree and use net...

David Blume authored 4 years ago

420) " sort is affecting only: directories on the top, files below
421) let g:netrw_sort_sequence = '[\/]$,*'
David Blume Change from vim-powerline t...

David Blume authored 6 years ago

422) 
dblume Added vim-rooter.

dblume authored 2 years ago

423) " Experimenting with vim-rooter
424) let g:rooter_patterns = ['.git', 'Makefile', 'builds/']
dblume Make vim-rooter manual.

dblume authored 2 years ago

425) let g:rooter_cd_cmd = 'lcd'
426) let g:rooter_manual_only = 1