.vimrc
vim中毒者なのでまずはvimrc
思いついたら適当に追加していってるのでなかなかカオス。
"{{{1 "set {{{2 syntax on set nocompatible set noinsertmode set ruler set wildmode=list:longest set wildmenu set matchpairs+=<:> set matchtime=3 set hidden set nowrap set list set listchars=tab:\ \ ,trail:_,precedes:<,extends:> set laststatus=2 set cmdheight=1 set showmode set smartindent set autoindent set incsearch set hlsearch set wrapscan set encoding=utf-8 set backspace=indent,start,eol set fileformats=unix,dos,mac set laststatus=2 set statusline=%<%f\ %m%r%h%w%{'['.(&fenc!=''?&fenc:&enc).']['.&ff.']'}%=%l,%c%V%8p set showcmd set tags=tags set viewdir=~/backup/view set nrformats-=octal set backupdir=~/backup/vim set backup set fileencoding=utf-8 set fileencodings=iso-2022-jp,utf-8,euc-jp,sjis,ucs-2le,ucs-2 if has('autocmd') function! AU_ReCheck_FENC() if &fileencoding =~# 'iso-2022-jp' && search("[^\x01-\x7e]", 'n') == 0 let &fileencoding=&encoding endif endfunction autocmd BufReadPost * call AU_ReCheck_FENC() endif if exists('&ambiwidth') set ambiwidth=double endif filetype plugin on filetype indent on highlight ZenkakuSpace cterm=underline ctermfg=lightblue ctermbg=lightgray match ZenkakuSpace / / " dir {{{2 autocmd CursorHold * call NewUpdate() set updatetime=500 " function! NewUpdate() let dir = strftime("~/backup/vim/%Y/%m/%d", localtime()) if !isdirectory(dir) let retval = system("mkdir -p ".dir) let retval = system("chown 500:500 ".dir) endif exe "set backupdir=".dir unlet dir let time = strftime("%H_%M_%S", localtime()) exe "set backupext=.".time endfunction "fold {{{2 set foldmethod=marker set foldlevel=1024 set foldtext=MyFoldText() function MyFoldText() let line = getline(v:foldstart) let sub = substitute(line, ';\?{{{\d\?\|\;?}}}\d\?', '', 'g' ) let indent = substitute(v:folddashes, '-', ' ', 'g' ) return indent . sub . ';' . v:foldlevel endfunction "map {{{2 map <C-E>n :tabnew<CR> map <C-E>o :tabe map <C-E>c :tabc map <C-E><Right> :tabn<CR> map <C-E><Left> :tabp<CR> nmap n nzz nmap N Nzz nmap * *zz nmap # #zz nmap g* g*zz nmap g# g#zz nmap j gj nmap k gk nmap <ESC><ESC> :nohl<CR><ESC> "make関係 {{{2 nmap gc :cc<CR> nmap gp :cp<CR> nmap gP :cfirst<CR> nmap gn :cn<CR> nmap gN :clast<CR> map \mm :write \| make<CR> map \mn :write \| make clean \| make<CR> "Tab {{{2 map <C-T><C-T> :tabnew \| Explore<CR> map <C-T><C-Y> :tabn<CR> map <C-T><C-R> :tabp<CR> map <C-T><C-G> :tabc<CR> map! <C-T><C-T> <ESC>:tabnew \| Explore<CR> map! <C-T><C-Y> <ESC>:tabn<CR> map! <C-T><C-R> <ESC>:tabp<CR> map! <C-T><C-G> <ESC>:tabc<CR> map <C-E><C-E> :Explore<CR> map! <C-E><C-E> <ESC>:Explore<CR> map <C-P> <C-N> "Source {{{2 "source ~/.vim/browser.vim "source ~/.vim/calendar.vim "source ~/.vim/folddigest.vim "source ~/.vim/matrix.vim "source ~/.vim/project.vim "source ~/.vim/synmark.vim "source ~/.vim/tagexplorer.vim "source ~/.vim/winfileexplorer.vim "source ~/.vim/winmanager.vim "source ~/.vim/wintagexplorer.vim "Color {{{2 hi Pmenu ctermbg=4 hi PmenuSel ctermbg=1 hi PMenuSbar ctermbg=4 function FoldLevels() let nowline = line('.') let oldline = -1 let curline = line('.') normal gg while oldline != curline echo line('.'). normal! zj let oldline = curline let curline = line('.') endwhile execute nowline endfunction
ポイントとしては