Mercurial > ec-dotfiles
view rc/vimrc @ 546:daed3e2c9651
0paste is now .tk \o/
author | edogawaconan <me@myconan.net> |
---|---|
date | Thu, 26 Mar 2015 19:33:33 +0900 |
parents | c9ea8dd9d382 |
children | 4afbb88c7579 |
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 tabstop=4 set shiftwidth=4 set softtabstop=4 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") function In2() set softtabstop=2 tabstop=2 shiftwidth=2 expandtab endfunction function In4() set softtabstop=4 tabstop=4 shiftwidth=4 noexpandtab endfunction " required by syntax file " reference: https://github.com/elzr/vim-json/blob/master/ftplugin/json.vim let g:vim_json_syntax_conceal = 1 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 autocmd FileType ruby call In2() autocmd FileType coffee call In2() 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