Skip to content

Instantly share code, notes, and snippets.

@TheBB
Last active August 29, 2015 14:02
Show Gist options
  • Save TheBB/a4f83caba9d4e23e6a28 to your computer and use it in GitHub Desktop.
Save TheBB/a4f83caba9d4e23e6a28 to your computer and use it in GitHub Desktop.
ReneFroger's vimrc
" Easymotion {
let g:EasyMotion_leader_key = '<Space>'
let g:StupidEasyMotion_leader_key = 'f'
let g:EasyMotion_use_upper = 1
let g:EasyMotion_keys = 'ASDFWIERUOGHJKL'
" }
" Vim Over {
let g:over_enable_auto_nohlsearch = 1
let g:over_enable_cmd_window = 1
let g:over_command_line_prompt = "> "
let g:over#command_line#search#enable_incsearch = 1
" }
" Nerdtree {
let g:nerdtree_tabs_open_on_gui_startup=0
let g:nerdtree_tabs_open_on_console_startup=0
let NERDTreeShowHidden=0
let g:NERDTreeMapOpenInTabSilent = 't'
let g:NERDTreeMapOpenInTabSilent = 'f'
let NERDTreeAutoDeleteBuffer=1
let NERDTreeChDirMode=2
"let NERDTreeHijackNetrw=1
" }
" CtrlP {
let g:ctrlp_custom_ignore = {
\ 'dir': '\.git$\|\.yardoc\|public$|log\|tmp$|backup',
\ 'file': '\.so$\|\.dat$|\.DS_Store$'
\ }
set wildignore+=*\\tmp\\*,*.swp,*.zip,*.exe
" Use The Silver Searcher https://github.com/ggreer/the_silver_searcher
if executable('ag')
" Use Ag over Grep
set grepprg=ag\ --nogroup\ --nocolor
" Use ag in CtrlP for listing files. Lightning fast and respects .gitignore
let g:ctrlp_user_command = 'ag %s -l --nocolor -g ""'
" ag is fast enough that CtrlP doesn't need to cache
let g:ctrlp_use_caching = 0
endif
let g:ctrlp_working_path_mode = 'ra'
let g:ctrlp_cache_dir = $HOME.'/.vim/.cache/ctrlp'
let g:ctrlp_match_window_reversed = 1
let g:ctrlp_clear_cache_on_exit=0
let g:ctrlp_user_command = 'ag %s -l --nocolor -g ""'
" }
" Unite {
call unite#filters#matcher_default#use(['matcher_fuzzy'])
call unite#filters#sorter_default#use(['sorter_rank'])
call unite#custom#profile('files', 'filters', ['sorter_rank'])
"call unite#custom#source('file_rec/async','ignore_pattern', '.config')
" replacing unite with ctrl-p
let g:unite_data_directory='~/.vim/.cache/unite'
let g:unite_enable_start_insert=1
let g:unite_source_history_yank_enable=1
let g:unite_prompt='» '
let g:unite_split_rule = 'botright'
"call unite#custom#source(
"\ 'file_mru', 'matchers',
"\ ['matcher_project_files', 'matcher_fuzzy'])
let g:unite_cursor_line_highlight = 'UniteLineHi'
"let g:unite_no_default_keymappings = 1
if executable('ag')
let g:unite_source_grep_command='ag'
let g:unite_source_grep_default_opts='--nocolor --nogroup -S -C4'
let g:unite_source_grep_recursive_opt=''
endif
" }
" Syntastic {
let g:syntastic_php_checkers = ['php', 'phpmd']
let g:syntastic_enable_signs = 1
" configure syntastic syntax checking to check on open as well as save
let g:syntastic_check_on_open=1
let g:syntastic_echo_current_error=1
let g:syntastic_auto_jump=2
let g:syntastic_auto_loc_list=1
let g:syntastic_auto_loc_height=3
" }
" Indentguide {
let g:indent_guides_enable_on_vim_startup = 1
let g:indent_guides_indent_levels = 30
let g:indent_guides_auto_colors = 0
let g:indent_guides_start_level = 2
let g:indent_guides_guide_size = 1
let g:indent_guides_space_guides = 1
set ts=4 " number of spaces in a tab
set sw=4 " number of spaces for indent
set et " expand tabs into spaces
let g:indent_guides_auto_colors = 1
if $COLORTERM == 'gnome-terminal'
autocmd VimEnter,Colorscheme * :hi IndentGuidesOdd guibg=red ctermbg=3
autocmd VimEnter,Colorscheme * :hi IndentGuidesEven guibg=green ctermbg=4
endif
" }
" neocomplete {
let g:neocomplete#enable_at_startup = 1
let g:neocomplete#enable_fuzzy_completion = 1
let g:neocomplete_enable_fuzzy_completion_start_length = 2
let g:neocomplete_enable_camel_case_completion = 0
let g:neocomplete#enable_smart_case = 1
let g:neocomplete#enable_auto_delimiter = 1
let g:neocomplete#max_list = 10
let g:neocomplete#force_overwrite_completefunc = 1
let g:neocomplete#enable_auto_select = 0
"let g:neocomplete#use_vimproc = 1
" Define dictionary.
"let g:neocomplete#sources#dictionary#dictionaries = {
"\ 'default' : '',
"\ 'vimshell' : $HOME.'/.vimshell_hist',
"\ 'scheme' : $HOME.'/.gosh_completions'
"\ }
" Define keyword.
let g:neocomplete#keyword_patterns = {}
let g:neocomplete#keyword_patterns._ = '\h\w*'
" Plugin key-mappings {
function! CleverCr()
if pumvisible()
if neosnippet#expandable()
let exp = "\<Plug>(neosnippet_expand)"
return exp . neocomplete#close_popup()
else
return neocomplete#close_popup()
endif
else
return "\<CR>"
endif
endfunction
" <CR> close popup and save indent or expand snippet
imap <expr> <CR> CleverCr()
" <C-h>, <BS>: " close popup and delete backword char.
inoremap <expr><BS> neocomplete#smart_close_popup()."\<C-h>"
" <TAB>: completion.
inoremap <expr><TAB> pumvisible() ? "\<C-n>" : "\<TAB>"
" }
" Enable omni completion.
autocmd FileType css setlocal omnifunc=csscomplete#CompleteCSS
autocmd FileType html,markdown setlocal omnifunc=htmlcomplete#CompleteTags
autocmd FileType javascript setlocal omnifunc=javascriptcomplete#CompleteJS
autocmd FileType python setlocal omnifunc=pythoncomplete#Complete
autocmd FileType xml setlocal omnifunc=xmlcomplete#CompleteTags
autocmd FileType ruby setlocal omnifunc=rubycomplete#Complete
autocmd FileType haskell setlocal omnifunc=necoghc#omnifunc
" Enable heavy omni completion.
if !exists('g:neocomplete#sources#omni#input_patterns')
let g:neocomplete#sources#omni#input_patterns = {}
endif
let g:neocomplete#sources#omni#input_patterns.php = '[^. \t]->\h\w*\|\h\w*::'
let g:neocomplete#sources#omni#input_patterns.perl = '\h\w*->\h\w*\|\h\w*::'
let g:neocomplete#sources#omni#input_patterns.c = '[^.[:digit:] *\t]\%(\.\|->\)'
let g:neocomplete#sources#omni#input_patterns.cpp = '[^.[:digit:] *\t]\%(\.\|->\)\|\h\w*::'
let g:neocomplete#sources#omni#input_patterns.ruby = '[^. *\t]\.\h\w*\|\h\w*::'
" }
" Normal Vim omni-completion {
" Enable omni-completion.
autocmd FileType css setlocal omnifunc=csscomplete#CompleteCSS
autocmd FileType html,markdown setlocal omnifunc=htmlcomplete#CompleteTags
autocmd FileType javascript setlocal omnifunc=javascriptcomplete#CompleteJS
autocmd FileType python setlocal omnifunc=pythoncomplete#Complete
autocmd FileType xml setlocal omnifunc=xmlcomplete#CompleteTags
autocmd FileType ruby setlocal omnifunc=rubycomplete#Complete
autocmd FileType haskell setlocal omnifunc=necoghc#omnifunc
" }
" Snippets {
" Use honza's snippets.
let g:neosnippet#snippets_directory='~/.vim/neosnippets'
" Enable neosnippet snipmate compatibility mode
let g:neosnippet#enable_snipmate_compatibility = 1
" For snippet_complete marker.
if has('conceal')
set conceallevel=2 concealcursor=i
endif
" Enable neosnippets when using go
let g:go_snippet_engine = "neosnippet"
" Disable the neosnippet preview candidate window
" When enabled, there can be too much visual noise
" especially when splits are used.
set completeopt-=preview
" }
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment