Mercurial > ec-dotfiles
view rc/vimrc @ 543:8b884bbb1d05
Rename `app` to `apps`.
author | edogawaconan <me@myconan.net> |
---|---|
date | Sat, 17 Jan 2015 20:10:45 +0900 |
parents | fc429d39ce9e |
children | 75c30f2b4694 |
line wrap: on
line source
set nocompatible set showmode " shows mode insert/replace/visual set showcmd " shows last command on screen set nomodeline " disallow automatic vim command execution on arbitrary file set autoindent set lazyredraw set vb t_vb= " disables visual bell set ruler set backspace=2 " make backspace work like most other apps set esckeys set noerrorbells set ts=4 set sw=2 set copyindent set title set incsearch set ignorecase set smartcase set hlsearch set ls=2 " always show status line set list listchars=tab:>-,trail:.,extends:> set number " http://stackoverflow.com/questions/14635295/vim-takes-a-very-long-time-to-start-up set clipboard=exclude:.* if has('call') call pathogen#infect() endif if has('filetype') filetype plugin indent on endif map <C-t><up> :tabr<cr> map <C-t><down> :tabl<cr> map <C-t><left> :tabp<cr> map <C-t><right> :tabn<cr> map <C-t>p :tabp<cr> map <C-t>n :tabn<cr> map <C-t><C-t> :NERDTreeToggle<cr> map <C-t><C-m> :NERDTreeMirror<cr> " clears out highlight nmap <leader>c :nohlsearch<cr> " toggles paste mode nmap <leader>p :set paste!<cr> " removes prefix for windows copypasta nmap _pa :set number! list!<cr> " format JSON map <leader>j <esc>:%!python -m json.tool<cr> " visual navigation instead of logical nmap j gj nmap k gk "autocmd VimEnter * NERDTree "autocmd BufEnter * NERDTreeMirror if has('syntax') syntax on set foldmethod=syntax set nofoldenable set background=dark set t_Co=256 colorscheme base16-default endif if has("autocmd") augroup json_autocmd autocmd! autocmd FileType json set autoindent autocmd FileType json set formatoptions=tcq2l autocmd FileType json set textwidth=78 shiftwidth=2 autocmd FileType json set softtabstop=2 tabstop=8 autocmd FileType json set expandtab autocmd FileType json set foldmethod=syntax " required by syntax file " reference: https://github.com/elzr/vim-json/blob/master/ftplugin/json.vim let g:vim_json_syntax_conceal = 1 augroup END autocmd BufNewFile,BufRead *.json set filetype=json autocmd BufNewFile,BufRead *.jsonp set filetype=json autocmd BufRead,BufNewFile *.blade.php set filetype=blade autocmd BufRead,BufNewFile *.coffee set filetype=coffee autocmd BufRead,BufNewFile *.erb set filetype=eruby autocmd BufRead,BufNewFile *.less set filetype=less autocmd BufRead,BufNewFile *.scss set filetype=scss autocmd BufRead,BufNewFile *.slim set filetype=slim autocmd BufRead,BufNewFile Gemfile set filetype=ruby autocmd BufRead,BufNewFile config.ru set filetype=ruby autocmd BufRead,BufNewFile supervisord.conf set filetype=dosini endif if has('autocmd') "Restore cursor position set viminfo='10,\"100,:20,%,n~/.viminfo function! ResCur() if line("'\"") <= line("$") normal! g`" return 1 endif endfunction augroup resCur autocmd! autocmd BufWinEnter * call ResCur() augroup END autocmd BufWinEnter */.git/COMMIT_EDITMSG exe "normal! gg" autocmd BufWinEnter .git/COMMIT_EDITMSG exe "normal! gg" endif if has('statusline') " Status line detail: " %f file path " %y file type between braces (if defined) " %([%R%M]%) read-only, modified and modifiable flags between braces " %{'!'[&ff=='default_file_format']} " shows a '!' if the file format is not the platform " default " %{'$'[!&list]} shows a '*' if in list mode " %{'~'[&pm=='']} shows a '~' if in patchmode " (%{synIDattr(synID(line('.'),col('.'),0),'name')}) " only for debug : display the current syntax item name " %= right-align following items " #%n buffer number " %l/%L,%c%V line number, total number of lines, and column number function SetStatusLineStyle() if &stl == '' || &stl =~ 'synID' let &stl="%f %y%([%R%M]%)%{'!'[&ff=='".&ff."']}%{'$'[!&list]}%{'~'[&pm=='']}%=#%n %l/%L,%c%V " else let &stl="%f %y%([%R%M]%)%{'!'[&ff=='".&ff."']}%{'$'[!&list]} (%{synIDattr(synID(line('.'),col('.'),0),'name')})%=#%n %l/%L,%c%V " endif endfunc " Switch between the normal and vim-debug modes in the status line nmap _ds :call SetStatusLineStyle()<CR> call SetStatusLineStyle() " Window title if has('title') if &term == "screen" set t_ts=]0; set t_fs= endif set title let &titlestring = $user endif endif