Skip to content

Instantly share code, notes, and snippets.

@billbonney
Last active March 5, 2025 08:37
Show Gist options
  • Select an option

  • Save billbonney/d09cba93e0682508bfaecfa79e78c6ef to your computer and use it in GitHub Desktop.

Select an option

Save billbonney/d09cba93e0682508bfaecfa79e78c6ef to your computer and use it in GitHub Desktop.
.vimrc
" NOTE: Install Plug to autoload 1st.
" curl -fLo ~/.vim/autoload/plug.vim --create-dirs https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim
" Load Plugins using Plug
"
call plug#begin()
" Xcode Color Themes
Plug 'lunacookies/vim-colors-xcode'
Plug 'morhetz/gruvbox'
" Airline Imporved Status Bar
Plug 'vim-airline/vim-airline'
" Match parens and more. https://github.com/andymass/vim-matchup
Plug 'andymass/vim-matchup'
" SearchLight (Experimental)
Plug 'PeterRincker/vim-searchlight'
" Git support
"Plug 'airblade/vim-gitgutter'
Plug 'mhinz/vim-signify'
Plug 'octol/vim-cpp-enhanced-highlight'
" File Manager for Vim
Plug 'preservim/nerdtree'
Plug 'girishji/scope.vim'
call plug#end()
let mapleader = "\\"
"Font Definition for MacVim
"set guifont=SF\ Mono:h16
set guifont=Monospace\ 12
" Normal Vim Stuff
set nu
filetype plugin indent on
set tabstop=4
set shiftwidth=4
set expandtab
syntax enable
set smartcase
set hlsearch
" Scope Configuration
noremap <C-P> :call g:scope#fuzzy#File()<CR>
noremap <C-K> :Scope Grep<CR>
" Scope end
nnoremap <silent> [oh :call gruvbox#hls_show()<CR>
nnoremap <silent> ]oh :call gruvbox#hls_hide()<CR>
nnoremap <silent> coh :call gruvbox#hls_toggle()<CR>
nnoremap * :let @/ = ""<CR>:call gruvbox#hls_show()<CR>*
nnoremap / :let @/ = ""<CR>:call gruvbox#hls_show()<CR>/
nnoremap ? :let @/ = ""<CR>:call gruvbox#hls_show()<CR>?
" shortcuts commanda
cmap w!! w !sudo tee > /dev/null %
" syntax on
" Tab Characters.
set listchars=tab:▷▷⋮,space:.,trail:~,eol:¬
set invlist
noremap <Leader><Tab><Tab> :set invlist<CR>
" Colors
"colorscheme xcodedark
colorscheme gruvbox
set background=dark
" Signify Config
" default updatetime 4000ms is not good for async update
set updatetime=100
let g:signify_sign_add = '|'
let g:signify_sign_change = '!'
let g:signify_sign_delete = '·'
let g:signify_sign_show_count = 0 " Don't show delete count
" Update Git signs every time the text is changed
autocmd User SignifyAutocmds
\ execute 'autocmd! signify' |
\ autocmd signify TextChanged,TextChangedI * call sy#start()
s
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment