Created
May 12, 2015 16:45
-
-
Save lynndylanhurley/a8187e4585d46c41b036 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
"powerline | |
set guifont=Source\ Code\ Pro\ for\ Powerline:h13 | |
" Plug check and auto install | |
let iCanHazVimPlug=1 | |
let VimplugReadme=expand('~/.vim/autoload/plug.vim') | |
if !filereadable(VimplugReadme) | |
echo "Installing VimPlug.." | |
echo "" | |
silent !curl -fLo ~/.vim/autoload/plug.vim --create-dirs | |
\ https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim | |
let iCanHazVimPlug=0 | |
endif | |
if has('vim_starting') | |
if &compatible | |
set nocompatible " Be iMproved | |
endif | |
endif | |
call plug#begin('~/.vim/bundle/') | |
"unite | |
Plug 'Shougo/unite.vim' | |
Plug 'Shougo/vimproc', {'do' : 'make'} | |
"colors | |
Plug 'vim-scripts/peaksea' | |
Plug 'vim-scripts/zenesque.vim' | |
Plug 'skammer/vim-css-color' | |
Plug 'noahfrederick/Hemisu' | |
Plug 'djjcast/mirodark' | |
Plug 'vim-scripts/molokai' | |
Plug 'nathanaelkane/vim-indent-guides' | |
Plug 'Yggdroot/indentLine' | |
Plug 'altercation/vim-colors-solarized' | |
Plug 'chriskempson/tomorrow-theme', {'rtp': 'vim'} | |
Plug 'junegunn/seoul256.vim' | |
"syntax | |
Plug 'vim-scripts/nginx.vim' | |
Plug 'vim-scripts/Processing' | |
Plug 'rogerz/vim-json' | |
Plug 'b4winckler/vim-objc' | |
Plug 'msanders/cocoa.vim' | |
Plug 'tclem/vim-arduino' | |
Plug 'vim-scripts/applescript.vim' | |
Plug 'juvenn/mustache.vim' | |
Plug 'nono/vim-handlebars' | |
Plug 'tpope/vim-haml' | |
Plug 'ingydotnet/yaml-vim' | |
Plug 'briancollins/vim-jst' | |
Plug 'slim-template/vim-slim' | |
Plug 'puppetlabs/puppet-syntax-vim' | |
Plug 'dbakker/vim-lint' | |
Plug 'cakebaker/scss-syntax.vim' | |
Plug 'mxw/vim-jsx' | |
Plug 'pangloss/vim-javascript' | |
Plug 'jelera/vim-javascript-syntax' | |
Plug 'othree/javascript-libraries-syntax.vim' | |
Plug 'digitaltoad/vim-jade' | |
Plug 'editorconfig/editorconfig-vim' | |
Plug 'wavded/vim-stylus' | |
Plug 'kunstmusik/csound-vim' | |
Plug 'kchmck/vim-coffee-script' | |
Plug 'maksimr/vim-jsbeautify' | |
Plug 'slim-template/vim-slim' | |
"typing | |
Plug 'bkad/CamelCaseMotion' | |
Plug 'edsono/vim-matchit' | |
Plug 'tpope/vim-ragtag' | |
Plug 'tpope/vim-surround' | |
Plug 'tpope/vim-repeat' | |
Plug 'tpope/vim-unimpaired' | |
Plug 'justinmk/vim-sneak' | |
Plug 'scrooloose/nerdcommenter' | |
Plug 'bronson/vim-trailing-whitespace' | |
Plug 'terryma/vim-expand-region' | |
Plug 'ciaranm/detectindent' | |
Plug 'docunext/closetag.vim' | |
Plug 'Valloric/YouCompleteMe', { 'do': './install.sh' } | |
Plug 'junegunn/vim-easy-align' | |
Plug 'Raimondi/delimitMate' | |
Plug 'tpope/vim-endwise' "MUST come after delimit mate (or anything that maps <CR>) | |
"language/framework integration | |
Plug 'tpope/vim-rails' | |
Plug 'tpope/vim-markdown' | |
Plug 'tpope/vim-git' | |
Plug 'tpope/vim-bundler' | |
Plug 'tpope/vim-rbenv' | |
Plug 'vim-ruby/vim-ruby' | |
Plug 'tpope/gem-browse' | |
Plug 'sbl/scvim' | |
Plug 'moll/vim-node' | |
Plug 'kana/vim-textobj-user' | |
Plug 'nelstrom/vim-textobj-rubyblock' | |
Plug 'kassio/neoterm' | |
"Plug 'fatih/vim-go' | |
"features | |
Plug 'tpope/vim-fugitive' | |
Plug 'vim-scripts/Gundo' | |
Plug 'epmatsw/ag.vim' | |
Plug 'vim-scripts/django.vim' | |
Plug 'mattn/webapi-vim' | |
Plug 'mattn/gist-vim' | |
Plug 'scrooloose/nerdtree' | |
Plug 'scrooloose/syntastic' | |
Plug 'tomtom/tlib_vim' | |
Plug 'mattn/emmet-vim' | |
Plug 'henrik/vim-indexed-search' | |
Plug 'tpope/vim-rhubarb' | |
Plug 'duff/vim-scratch' | |
Plug 'xolox/vim-session' | |
Plug 'majutsushi/tagbar' | |
Plug 'mileszs/ack.vim' | |
Plug 'tpope/vim-eunuch' | |
Plug 'tpope/vim-rsi' | |
Plug 'sjl/vitality.vim' | |
Plug 'tpope/vim-sensible' | |
Plug 'vitaly/vim-syntastic-coffee' | |
Plug 'mhinz/vim-signify' | |
Plug 'tpope/vim-dispatch' | |
Plug 'terryma/vim-multiple-cursors' | |
Plug 'xolox/vim-misc' | |
Plug 'jpalardy/vim-slime' | |
Plug 'benmills/vimux' | |
Plug 'zhaocai/linepower.vim' | |
Plug 'zhaocai/GoldenView.Vim' | |
Plug 'bling/vim-airline' | |
Plug 'moll/vim-bbye' | |
Plug 'sk1418/HowMuch' | |
Plug 'tpope/vim-jdaddy' | |
Plug 'tommcdo/vim-exchange' | |
Plug 't9md/vim-choosewin' | |
Plug 'vimwiki/vimwiki' | |
Plug 'mattn/flappyvird-vim' | |
Plug 'haya14busa/incsearch.vim' | |
Plug 'rizzatti/dash.vim' | |
Plug 'Shougo/neomru.vim' | |
Plug 'junegunn/vim-peekaboo' | |
Plug 'junkblocker/patchreview-vim' | |
Plug 'codegram/vim-codereview' | |
Plug 'gabesoft/vim-ags' | |
"Plug 'dhruvasagar/vim-prosession', {'depends': 'tpope/vim-obsession'} | |
"Plug 'miyakogi/conoline.vim' | |
"Plug 'Shougo/vimfiler.vim' | |
"Plug 'Keithbsmiley/investigate.vim' | |
"Plug 'svermeulen/vim-easyclip' | |
"Plug 'farseer90718/vim-taskwarrior' | |
"Plug 'jaxbot/github-issues.vim' | |
"snippets | |
Plug 'SirVer/ultisnips' | |
Plug 'honza/vim-snippets' | |
Plug 'matthewsimo/angular-vim-snippets' | |
Plug 'jamescarr/snipmate-nodejs' | |
Plug 'justinj/vim-react-snippets' | |
"clojure | |
Plug 'tpope/vim-leiningen' | |
Plug 'tpope/vim-projectionist' | |
Plug 'tpope/vim-classpath' | |
"Plug 'tpope/vim-fireplace' | |
Plug 'guns/vim-clojure-static' | |
Plug 'kien/rainbow_parentheses.vim' | |
filetype plugin indent on " required | |
" Installation check. | |
if iCanHazVimPlug == 0 | |
echo "Installing Bundles, please ignore key map error messages" | |
echo "" | |
:PlugInstall | |
endif | |
call plug#end() | |
"Basic Options | |
syntax enable " turn on syntax highlighting | |
let mapleader = "," | |
set encoding=utf-8 | |
set modeline " i don't even know | |
set modelines=5 | |
set noshowmode " indicate insert, replace, visual | |
set showcmd " show info about current operation in status line | |
set hidden " keep buffers hidden when abandoned (don't unload them) | |
set ttyfast " indicate fast terminal connection, helps with mouse + redraw stuff | |
set ruler " show line + column number of cursor | |
set backspace=indent,eol,start | |
set laststatus=2 " always show status lines, even in non-focused splits | |
set history=1000 | |
set cpoptions+=J " sentence has to be followed by two spaces after . ! ? | |
set lazyredraw " don't redraw while using macros, registers, etc. | |
set matchtime=3 " duration of parens hilight in 1/10 seconds | |
set showbreak=↪ " string to put at start of lines that have been wrapped | |
set splitbelow " spltting a window will put the new window below the current one | |
set splitright " same as above but for horizontal splits | |
" set fillchars=diff:⣿ | |
set nottimeout "these two options together determine whether to wait to receive mapping | |
set timeout | |
set autowrite " write the contents of the file on each :next, :rewind, :make, etc. | |
set shiftround " round indent to multiple of shiftwidth | |
set autoread " automatically read changes in files from outside of vim (git pull, etc.) | |
"set title " set the window title to something meaningful | |
set nu " show line numbers | |
set ignorecase | |
set smartcase " override ignorecase if search pattern contains upper case letters | |
set incsearch " hilight all search matches | |
set showmatch " briefly jump to matching brackets on insert | |
set hlsearch " hilight search results | |
set gdefault " all regex matches are substituted by default. g toggles this behavior | |
set scrolloff=3 " minimum number of screen lines to keep above and below the cursor | |
set sidescroll=1 " minimum number of columns to scroll horizontaly | |
set sidescrolloff=10 " minimum number of screen lines to keep left and right of the cursor | |
set linebreak " wrap lines at convenient points | |
set list | |
set listchars=tab:▸\ ,extends:❯,precedes:❮ | |
"use system clipboard | |
set clipboard+=unnamed,unnamedplus | |
if has("gui") | |
set macmeta "use option (alt) as meta key | |
endif | |
"Make Vim able to edit crontab files again. | |
set backupskip=/tmp/*,/private/tmp/* | |
"Save when losing focus | |
"au FocusLost * :wa | |
" Tabs, spaces, wrapping {{{ | |
set tabstop=2 | |
set shiftwidth=2 | |
set softtabstop=2 | |
set expandtab | |
set wrap | |
"set textwidth=80 | |
set formatoptions=qrn1 | |
"set colorcolumn=+1 | |
"}}} | |
"folding settings {{{ | |
if v:version >= 600 | |
set nofoldenable | |
set foldmethod=marker "fold based on indent | |
set printoptions=paper:letter | |
set sidescrolloff=5 | |
set mouse=nvi | |
endif | |
"}}} | |
" Wildmenu completion {{{ | |
set wildmenu | |
set wildmode=list:longest | |
set wildignore+=.hg,.git,.svn " Version control | |
set wildignore+=*.aux,*.out,*.toc " LaTeX intermediate files | |
set wildignore+=*.jpg,*.bmp,*.gif,*.png,*.jpeg " binary images | |
set wildignore+=*.o,*.obj,*.exe,*.dll,*.manifest " compiled object files | |
set wildignore+=*.spl " compiled spelling word lists | |
set wildignore+=*.sw? " Vim swap files | |
set wildignore+=*.DS_Store " OSX bullshit | |
set wildignore+=*.luac " Lua byte code | |
" }}} | |
"Python/Django | |
set wildignore+=migrations " Django migrations | |
set wildignore+=*.pyc " Python byte code | |
"git | |
set wildignore=*.o,*.obj,.git,*.pyc,*~,fugitive* | |
"Clojure/Leiningen | |
set wildignore+=classes | |
"set wildignore+=lib | |
nmap <M-c> vip:Eval<CR> | |
autocmd BufNewFile,BufReadPost *.cljx setfiletype clojure | |
"rainbow parentheses | |
au VimEnter * RainbowParenthesesToggle | |
au Syntax * RainbowParenthesesLoadRound | |
au Syntax * RainbowParenthesesLoadSquare | |
au Syntax * RainbowParenthesesLoadBraces | |
"slime | |
let g:slime_target = "tmux" | |
"NERDTree | |
nmap <silent> <C-a> :NERDTreeToggle<CR> | |
let NERDTreeHighlightCursorline=1 | |
let NERDTreeIgnore=['.vim$', '\~$', '.*\.pyc$', 'pip-log\.txt$', 'whoosh_index', 'xapian_index', '.*.pid', 'monitor.py', '.*-fixtures-.*.json', '.*\.o$', 'db.db'] | |
let NERDTreeMinimalUI = 1 | |
let NERDTreeDirArrows = 1 | |
autocmd VimEnter call NERDTreeAddMenuItem({'text': '(r)eveal in Finder the current node', 'shortcut': 'r', 'callback': 'NERDTreeRevealInFinder'}) | |
"Vimfiler | |
"let g:vimfiler_as_default_explorer = 1 | |
"nmap <silent> <C-a> :VimFiler<CR> | |
" YouCompleteMe | |
let g:ycm_filetype_blacklist = {'unite': 1,} | |
let g:UltiSnipsExpandTrigger = "<tab>" | |
let g:UltiSnipsJumpForwardTrigger = "<tab>" | |
let g:UltiSnipsJumpBackwardTrigger = "<s-tab>" | |
let g:UltiSnipsSnippetDirectories = ["snips"] | |
function! g:UltiSnips_Complete() | |
call UltiSnips#ExpandSnippet() | |
if g:ulti_expand_res == 0 | |
if pumvisible() | |
return "\<C-n>" | |
else | |
call UltiSnips#JumpForwards() | |
if g:ulti_jump_forwards_res == 0 | |
return "\<TAB>" | |
endif | |
endif | |
endif | |
return "" | |
endfunction | |
au InsertEnter * exec "inoremap <silent> " . g:UltiSnipsExpandTrigger . " <C-R>=g:UltiSnips_Complete()<cr>" | |
"TagList | |
nmap <silent> <leader>- :TagbarToggle<CR> | |
let g:tagbar_ctags_bin = "/opt/boxen/homebrew/bin/ctags" | |
set tags=./tags | |
"remap escape to ctrl-c | |
"map ^c <ESC> | |
"for better soft-wrap navigation | |
nmap j gj | |
nmap k gk | |
"for better split navigation | |
noremap <C-h> <C-w>h | |
noremap <C-j> <C-w>j | |
noremap <C-k> <C-w>k | |
noremap <C-l> <C-w>l | |
" now do the same for terminal | |
tnoremap <Esc> <C-\><C-n> | |
tnoremap <C-h> <C-\><C-n><C-w>h | |
tnoremap <C-j> <C-\><C-n><C-w>j | |
tnoremap <C-k> <C-\><C-n><C-w>k | |
tnoremap <C-l> <C-\><C-n><C-w>l | |
nnoremap <C-h> <C-w>h | |
nnoremap <C-j> <C-w>j | |
nnoremap <C-k> <C-w>k | |
nnoremap <C-l> <C-w>l | |
set noea | |
"Hide/Show Marks | |
let g:showmarks_enable=1 | |
set formatoptions-=o "dont continue comments when pushing o/O | |
"vertical/horizontal scroll off settings | |
set scrolloff=3 | |
set sidescrolloff=7 | |
set sidescroll=1 | |
"some stuff to get the mouse going in term | |
set mouse=a | |
set ttymouse=xterm2 | |
"tell the term has 256 colors | |
set t_Co=256 | |
"hide buffers when not displayed | |
set hidden | |
"dont load csapprox if we no gui support - silences an annoying warning | |
"if !has("gui_running") | |
"let g:CSApprox_loaded = 1 | |
"endif | |
"colors | |
let g:seoul256_background=235 | |
colorscheme seoul256 | |
"make <leader>l clear the highlight as well as redraw | |
nnoremap <leader>l :nohls<CR><C-L> | |
inoremap <leader>l <C-O>:nohls<CR> | |
" Unite | |
let g:unite_source_history_yank_enable=1 | |
let g:unite_source_file_rec_max_cache_files=0 | |
call unite#custom#source('file_mru,file_rec,file_rec/async,grepocate', | |
\ 'max_candidates', 0) | |
call unite#custom#source('file_mru,file_rec,file_rec/async,grepocate', | |
\ 'ignore_pattern', | |
\ '\%(^\|/\)\.$\|\~$\|\.\%(o\|exe\|dll\|bak\|DS_Store\|zwc\|pyc\|sw[po]\|class\)$'. | |
\ '\|\%(^\|/\)\%(\.hg\|\.git\|\.bzr\|\.svn\|\.sass-cache\|bower_components\|node_modules\|.tmp\|tags\%(-.*\)\?\)\%($\|/\)') | |
let g:unite_source_rec_async_command='ag --nocolor --nogroup --ignore ".hg" --ignore ".svn" --ignore ".git" --ignore ".bzr" --ignore-dir "bower_components" --hidden -g ""' | |
"use ag for search | |
if executable('ag') | |
let g:unite_source_grep_command = 'ag' | |
let g:unite_source_grep_default_opts = '--nogroup --nocolor --column --ignore-dir "bower_components" --ignore-dir ".tmp" --ignore-dir "dist"' | |
let g:unite_source_grep_recursive_opt = '' | |
endif | |
call unite#filters#matcher_default#use(['matcher_fuzzy']) | |
nnoremap <leader>t :Unite -no-split -buffer-name=files -start-insert file_rec/async:!<cr> | |
nnoremap <leader>f :Unite -no-split -buffer-name=files -start-insert file<cr> | |
nnoremap <leader>r :Unite -no-split -buffer-name=mru -start-insert file_mru<cr> | |
nnoremap <leader>o :Unite -no-split -buffer-name=outline -start-insert outline<cr> | |
nnoremap <leader>y :Unite -no-split -buffer-name=yank history/yank<cr> | |
nnoremap <leader>b :Unite -no-split -buffer-name=buffer -start-insert buffer<cr> | |
nnoremap <leader>/ :Unite -no-quit -keep-focus grep:.<cr> | |
"nnoremap <leader>s :Unite -quick-match buffer<cr> | |
" Custom mappings for the unite buffer | |
autocmd FileType unite call s:unite_settings() | |
function! s:unite_settings() | |
" Play nice with supertab | |
let b:SuperTabDisabled=1 | |
" Enable navigation with control-j and control-k in insert mode | |
imap <buffer> <C-j> <Plug>(unite_select_next_line) | |
imap <buffer> <C-k> <Plug>(unite_select_previous_line) | |
endfunction | |
"map save to ctrl + s | |
"nnoremap <C-s> <ESC>:w<CR> | |
noremap <silent> <C-S> :update<CR> | |
vnoremap <silent> <C-S> <C-C>:update<CR> | |
inoremap <silent> <C-S> <C-O>:update<CR> | |
"kill trailing whitespace | |
nnoremap <leader>w :FixWhitespace<CR> | |
"ragtag.vim | |
let g:ragtag_global_maps = 1 | |
"jump to last cursor position when opening a file | |
"dont do it when writing a commit log entry | |
autocmd BufReadPost * call SetCursorPosition() | |
function! SetCursorPosition() | |
if &filetype !~ 'commit\c' | |
if line("'\"") > 0 && line("'\"") <= line("$") | |
exe "normal! g`\"" | |
normal! zz | |
endif | |
end | |
endfunction | |
"actionscript | |
autocmd BufRead *.as set filetype=actionscript | |
autocmd BufRead *.mxml set filetype=mxml | |
let tlist_actionscript_settings = 'actionscript;c:class;f:method;p:property;v:variable' | |
"hamlc | |
autocmd BufRead *.hamlc set filetype=haml | |
"skim | |
autocmd BufRead *.skim set filetype=slim | |
autocmd BufRead *.slim set filetype=slim | |
"wsgi to use python syntax | |
autocmd BufRead *.wsgi set filetype=python | |
"ruby confs | |
autocmd BufRead Vagrantfile set filetype=ruby | |
autocmd BufRead Berksfile set filetype=ruby | |
"############# PYTHON ############" | |
autocmd FileType python set ft=python.django " For SnipMate | |
autocmd FileType html set ft=htmldjango.html " For SnipMate | |
"golang | |
"au FileType go nmap <Leader>i <Plug>(go-info) | |
"au FileType go nmap <Leader>gd <Plug>(go-doc) | |
"au FileType go nmap <Leader>gv <Plug>(go-doc-vertical) | |
" | |
"au FileType go nmap gd <Plug>(go-def) | |
"au FileType go nmap <Leader>ds <Plug>(go-def-split) | |
"au FileType go nmap <Leader>dv <Plug>(go-def-vertical) | |
"au FileType go nmap <Leader>dt <Plug>(go-def-tab) | |
" Marks and Quotes | |
noremap ' ` | |
noremap æ ' | |
noremap ` <C-^> | |
"toolbars | |
set guioptions-=m "remove menu bar | |
set guioptions-=T "remove toolbar | |
"kill bell | |
set noerrorbells | |
set visualbell | |
set t_vb= | |
"stop shitting swps | |
set noswapfile | |
set nobackup | |
"gundo | |
nnoremap <leader>u :GundoToggle<CR> | |
let g:gundo_right=1 | |
"gist | |
let g:gist_clip_command = 'pbcopy' | |
let g:gist_detect_filetype = 1 | |
let g:github_user = "lynndylanhurley" | |
let g:github_token = "9712824974388b27dde1b980a00654d3" | |
"undo | |
set undofile | |
set undodir=~/.vim/undodir | |
set undofile | |
set undolevels=1000 | |
set undoreload=10000 | |
"sessions | |
let g:session_default_to_last=0 | |
let g:session_autoload = 'no' | |
let g:session_autosave = 'no' | |
"zen coding | |
let g:user_zen_expandabbr_key = '<c-e>' | |
let g:use_zen_complete_tag = 1 | |
let g:user_zen_mode='a' | |
"the silver searcher | |
let g:agprg="/usr/local/bin/ag --column" | |
let g:ags_agexe="/usr/local/bin/ag" | |
"camelCaseMotion | |
map <silent> w <Plug>CamelCaseMotion_w | |
map <silent> b <Plug>CamelCaseMotion_b | |
map <silent> e <Plug>CamelCaseMotion_e | |
sunmap w | |
sunmap b | |
sunmap e | |
"surround | |
let g:surround_indent = 1 | |
"delimitMate | |
let g:delimitMate_expand_cr = 1 | |
let g:delimitMate_jump_expansion = 1 | |
let g:delimitMate_expand_space = 1 | |
let g:delimitMate_smart_matchpairs = 1 | |
let g:delimitMate_smart_quotes = 1 | |
let g:delimitMate_balance_matchpairs = 1 | |
let g:delimitMate_autoclose = 1 | |
" }}} | |
" SplitJoin {{{ | |
" nmap <Leader>j :SplitjoinJoin<cr> | |
" nmap <Leader>s :SplitjoinSplit<cr> | |
" }}} | |
" git gutter | |
let g:gitgutter_eager = 0 | |
" Easy align | |
vnoremap <silent> <Enter> :EasyAlign<Enter> | |
" Syntastic | |
let g:syntastic_ruby_exec = '~/.rbenv/shims/ruby' | |
let g:syntastic_html_tidy_ignore_errors=[" proprietary attribute \"ng-"] | |
"let g:syntastic_mode_map = { 'mode': 'active', | |
"\ 'active_filetypes': [], | |
"\ 'passive_filetypes': ['html'] } | |
" jsx | |
let g:jsx_ext_required = 0 " Allow JSX in normal JS files | |
"autocmd FileType js set ft=javascript " For SnipMate | |
"autocmd FileType javascript set ft=javascript " For SnipMate | |
" Coffeelint | |
"let coffee_lint_options = '--file ~/.coffeelint.json' | |
"let g:syntastic_coffee_coffeelint_args="--file ~/coffeelint.json | |
"let g:coffee_liner = '/usr/local/bin/coffeelint' | |
"au BufNewFile,BufReadPost *.coffee setl shiftwidth=2 expandtab | |
autocmd BufNewFile,BufReadPost *.coffee setfiletype coffee | |
autocmd BufNewFile,BufReadPost *.coffee setl shiftwidth=2 expandtab | |
" CoffeeTags | |
if executable('coffeetags') | |
let g:tagbar_type_coffee = { | |
\ 'ctagsbin' : 'coffeetags', | |
\ 'ctagsargs' : '', | |
\ 'kinds' : [ | |
\ 'f:functions', | |
\ 'o:object', | |
\ ], | |
\ 'sro' : ".", | |
\ 'kind2scope' : { | |
\ 'f' : 'object', | |
\ 'o' : 'object', | |
\ } | |
\ } | |
endif | |
autocmd BufNewFile,BufReadPost *.jade setfiletype jade | |
" Gotags | |
let g:tagbar_type_go = { | |
\ 'ctagstype' : 'go', | |
\ 'kinds' : [ | |
\ 'p:package', | |
\ 'i:imports:1', | |
\ 'c:constants', | |
\ 'v:variables', | |
\ 't:types', | |
\ 'n:interfaces', | |
\ 'w:fields', | |
\ 'e:embedded', | |
\ 'm:methods', | |
\ 'r:constructor', | |
\ 'f:functions' | |
\ ], | |
\ 'sro' : '.', | |
\ 'kind2scope' : { | |
\ 't' : 'ctype', | |
\ 'n' : 'ntype' | |
\ }, | |
\ 'scope2kind' : { | |
\ 'ctype' : 't', | |
\ 'ntype' : 'n' | |
\ }, | |
\ 'ctagsbin' : 'gotags', | |
\ 'ctagsargs' : '-sort -silent' | |
\ } | |
" hilight indention tabs | |
hi NonText ctermfg=darkgrey guifg=#565656 | |
hi clear SpecialKey | |
hi link SpecialKey NonText | |
let g:indentLine_color_term=238 | |
let g:indentLine_color_gui='#565656' | |
let g:indentLine_char='•' | |
" supercollider | |
let g:sclangTerm = '/Applications/iTerm.app/Contents/MacOS/iTerm' | |
" auto reload vimrc | |
" Set augroup. | |
augroup MyAutoCmd | |
autocmd! | |
augroup END | |
function! s:set_syntax_of_user_defined_commands() | |
redir => _ | |
silent! command | |
redir END | |
let command_names = join(map(split(_, '\n')[1:], | |
\ "matchstr(v:val, '[!\"b]*\\s\\+\\zs\\u\\w*\\ze')")) | |
if command_names == '' | return | endif | |
execute 'syntax keyword vimCommand ' . command_names | |
endfunction | |
if !has('gui_running') | |
autocmd MyAutoCmd BufWritePost .vimrc nested source $MYVIMRC | | |
\ call s:set_syntax_of_user_defined_commands() | | |
\ echo "source $MYVIMRC" | |
else | |
autocmd MyAutoCmd BufWritePost .vimrc source $MYVIMRC | | |
\ call s:set_syntax_of_user_defined_commands() | | |
\ if has('gui_running') | source $MYVIMRC | echo "source $MYVIMRC" | |
autocmd MyAutoCmd BufWritePost .gvimrc | |
\ if has('gui_running') | source $MYVIMRC | echo "source $MYVIMRC" | |
endif | |
" golden view | |
let g:goldenview__enable_default_mapping = 0 " disable <c-l> behavior | |
" airline | |
let g:airline_theme="lucius" | |
let g:airline_powerline_fonts=1 | |
" investigate | |
"let g:investigate_use_dash=1 | |
"let g:investigate_dash_for_coffeescript="angularjs" | |
" easyclip | |
let g:EasyClipUseSubstituteDefaults=0 | |
let g:EasyClipAutoFormat=1 | |
"let g:EasyClipUsePasteToggleDefaults=0 | |
" vim sneak | |
let g:sneak#streak = 1 | |
" HowMuch | |
"The scale of the result: | |
let g:HowMuch_scale = 2 | |
"the engine order for auto-calculation | |
let g:HowMuch_auto_engines = ['bc', 'vim', 'py'] | |
" choosewin | |
nmap - <Plug>(choosewin) | |
let g:choosewin_overlay_enable = 1 | |
" prevent replacing paste buffer on vp | |
function! RestoreRegister() | |
let @" = s:restore_reg | |
return '' | |
endfunction | |
function! s:Repl() | |
let s:restore_reg = @" | |
return "p@=RestoreRegister()\<cr>" | |
endfunction | |
xmap <silent> <expr> p <sid>Repl() | |
" yankstack compatibility | |
"let g:yankstack_map_keys = 0 | |
"let g:yankstack_yank_keys = ['y', 'd', 'x'] | |
"call yankstack#setup() | |
"nmap <M-p> <Plug>yankstack_substitute_older_paste | |
"nmap <M-P> <Plug>yankstack_substitute_newer_paste | |
"nmap s <Plug>Sneak_s | |
"nmap S <Plug>Sneak_S | |
"xmap s <Plug>Sneak_s | |
"xmap S <Plug>Sneak_S | |
" incsearch | |
map / <Plug>(incsearch-forward) | |
map ? <Plug>(incsearch-backward) | |
map g/ <Plug>(incsearch-stay) | |
" hilight current line | |
let g:conoline_auto_enable = 1 | |
let g:conoline_color_normal_dark = "guibg=#393939" | |
let g:conoline_color_insert_dark = "guibg=#444444" | |
"let g:conoline_use_colorscheme_default_normal=1 | |
"let g:conoline_use_colorscheme_default_insert=1 | |
" neoterm test runner | |
nnoremap <silent> ,rn :call neoterm#test#run('current')<cr> | |
nnoremap <silent> ,rt :call neoterm#test#run('all')<cr> | |
nnoremap <silent> ,rf :call neoterm#test#run('file')<cr> | |
nnoremap <silent> ,rr :call neoterm#test#rerun()<cr> |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment