5 "set nocompatible "because this is defined in vimrc_example.vim
7 "source $VIMRUNTIME/vimrc_example.vim
8 set fileformats=unix,dos
9 set fencs=ucs-bom,utf-8,gb2312,gbk,gb18030,latin1
10 "set fencs=ucs-bom,chinese,taiwan,japan,korea,utf-8,latin1
14 if has("gui_running") "for gdk+ vim seting
18 "source $VIMRUNTIME/delmenu.vim
19 "source $VIMRUNTIME/menu.vim
20 "set imactivatekey=C-space
23 "inoremap <esc> <esc>:set iminsert=2<cr>
24 "noremap i :set iminsert=2<cr>i
25 "noremap a :set iminsert=2<cr>a
29 " CTRL-A is Select all
30 noremap <C-A> gggH<C-O>G
31 inoremap <C-A> <C-O>gg<C-O>gH<C-O>G
32 cnoremap <C-A> <C-C>gggH<C-O>G
33 onoremap <C-A> <C-C>gggH<C-O>G
34 snoremap <C-A> <C-C>gggH<C-O>G
35 xnoremap <C-A> <C-C>ggVG
37 " CTRL-V and SHIFT-Insert are Paste
42 cmap <S-Insert> <C-R>*
43 else "for bash vim setting
48 "let $VIMFILY='~/.vim'
49 let $VIMFILY=expand("$HOME") . '/.vim'
51 "source ~/vimfiles/filetype.vim
52 else "for win32 setting
54 "source $VIMRUNTIME/mswin.vim
55 "set guioptions+=a "auto copy to
57 set grepprg=grep\ -n\ $*\ /dev/null
58 set grepformat=%f:%l:%m,%f:%l%m,%f\ %l%m
59 cabbrev sort /bin/sort
63 let $VIMFILY=expand("$HOME") . '/vimfiles'
66 let $ADDED=$VIMFILY . '/added_plugin'
68 source $ADDED/my_vimrc_example.vim
69 if !has("unix") && has("gui_running")
70 source $ADDED/my_mswin.vim
73 source $ADDED/publib.vim
76 let $ADDED2=$VIM . '/vimfiles/added_plugin2'
78 "for new tab setting and new align setting
80 map <leader>la <esc>:call SecondLoadAlign()<cr>
81 map <leader>lt <esc>:call SecondTriggerChangeTab()<cr>
83 " remove space and enter charactor
84 map <leader>rs <esc>::%s= *$==<cr>
85 map <leader>rd <esc>:%s/\r//g<cr>
89 """"""""""""""""""""""""""""""""""""""""""""""""""""""
91 """""""""""""""""""""""""""""""""""""""""""""""""""""
93 set hh=999 "set the help windows defaul height to max
94 set linebreak "let english word break whole word
98 set viminfo='100,<1500,s500,:500,/300
102 set hid "let you can change buffer without save
104 "turn off ignorecase in a typed search if an uppercase char exists.
106 call CodeMode() "most time are coding:)
110 set guioptions-=T "hide the toolbar
111 set guioptions-=m "hide the menubar
112 "set guioptions+=c "use text dialog
116 "set rulerformat=%50(\ %n[%{&ff}]%r%m%y%=%-14.(%l,%c%V%)\ %p%%%)
117 "set statusline=%<%f %n[%{&ff}]%r%m%y%=%-14.(%l,%c%V%)\ %p%%
118 hi User1 term=standout,bold cterm=reverse ctermbg=red gui=bold guifg=red guibg=Grey
119 hi User2 term=standout,bold cterm=reverse gui=bold guibg=Grey
122 """""""""""""""""""""""""""""""""""""""""""""""""""""""
123 "function for return the file format and file encoding
124 "from http://msghost.iyublog.com/?cat=477
125 function! FunFileEncoding()
126 return &ff . ":" . &fenc
128 """"""""""""""""""""""""""""""""""""""""""""""""""
130 set statusline=%2*%=\ \ \ %50(%f\ @%n[%{FunFileEncoding()}]%r%m%y#%{changenr()}%=\ \ \ %-14.(%l,%c\(%v\)%)\ %p%%%)%*
133 set listchars+=tab:>-
134 set wildmenu "ÓÃtabÔÚÃüÁîÐÐÌáʾ
135 "set clipboard+=unnamed "ÊÇy ºÍ p ͬϵͳ¼ôÇаåÏàÁ¬
136 set clipboard+=autoselect
137 "set splitbelow "splitting a window below the current one
138 """""""""""""""""""""""""""""""""""""""""""""""""""""
140 """""""""""""""""""""""""""""""""""""""""""""""""""""
143 set backupdir=/var/backups/vi
145 set backupdir=e:/var/backups/vi
147 "set sessionoptions+=curdir
149 set backupskip+=*.clean,cvscommit.????,*.~
150 set wildignore=*.o,*.obj,*.exe,*.bak,*.clean
151 if has("gui_running")
152 let savevers_dirs = &backupdir
154 source $ADDED/savevers.vim
159 "change the direct when chang the buffer
160 au BufEnter * :lcd %:p:h
164 set titlestring=%<%F\ %M\ %R\ %{v:servername}\ %{mode()}\ e\ U
166 """""""""""""""""""""""""""""""""""""""""""""""""""""
169 """"""""""""""""""""""""""""""""""""""""""""""""""""""
170 """""""""""""""""""""""""""""""""""""""""""""""""""""
171 " Text Formatting/Layout
172 """""""""""""""""""""""""""""""""""""""""""""""""""""
174 """""""""""""""""""""""""""""""""""""""""""""""""""""
176 """""""""""""""""""""""""""""""""""""""""""""""""""""
177 set foldenable " Turn on folding
178 "set foldmethod=indent " Make folding indent sensitive
179 set foldlevel=100 " Don't autofold anything (but I can still fold manually)
180 "set foldopen-=search " don't open folds when you search into them
183 "set foldmethod=syntax
184 let g:xml_syntax_folding = 1
185 let xml_use_xhtml = 1
190 """""""""""""""""""""""""""""""""""""""""""""""""""""
192 """""""""""""""""""""""""""""""""""""""""""""""""""""
194 "nnoremap <C-i> i <esc>r
202 "for del the auto comment
203 noremap <m-cr> o<esc>^"8d$a
205 "for eclipse compatible
206 inoremap <m-/> <c-x><c-o>
208 "for good insert next line
210 noremap <m-i> :let g:currentline=line('.')<cr>:.d<cr>:if g:currentline==line('.')<cr>:normal -<cr>:endif<cr>o
212 "use <c-v> to mapping the block visual mode do not using the win32 paste
215 "nnoremap <silent> <cr> i<cr><esc>
219 "use <C-t> old using is to shift right and now chang to <C-e>
220 inoremap <C-t> <space><esc>d$a
221 "use <C-e> old using is to inster the character which is below the cursor
223 inoremap <m-cr> <cr><esc>^d$a
225 " reproduce previous line word by word
226 inoremap <C-j> @@@<ESC>hhkyWjl?@@@<CR>P/@@@<CR>3s
229 " Put string marked by visual mode as default for search commands / and ?
230 " Warning: extending the marked text by searching doesn't work any more.
231 vnoremap / y/<C-R>=escape(substitute(@","\n.*",'',''),'/\?*.$^~][')<cr>
232 vnoremap ? y?<C-R>=escape(substitute(@","\n.*",'',''),'/\?*.$^~][')<cr>
234 " substitute(@",..) - remove lines after first, if >1 line highlighted
235 " escape(..) - put '\' before all characters meaningful in regexp's
236 " y - yank current selection (in register ")
237 " ctrl-r = .. <cr> - put expression after / as earch string
238 " credits go to Stefan Roemer and Peppe (Preben Guldberg).
240 " Remove whitespace from lines containing nothing else (grr to all nedit users)
242 "for the mouse conflict key(c-insert) of HP notebook
243 noremap <Insert> <Esc>
244 noremap <C-Insert> <Esc>
245 inoremap <Insert> <Down>
246 inoremap <C-Insert> <Down>
250 "map <leader>s <Esc>:w<cr><Esc>:!aspell -c --dont-backup --lang=en_US "%:p"<cr>:e! "%"<cr><cr>
251 map <leader>ls <esc>:ls!<cr>
252 map <leader>ew <esc>:call MyWrap()<cr>
253 map <leader>ex <esc>:Ex<cr>
254 "map <leader>eb <esc>:set encoding=big5<cr>
255 map <leader>ec <esc>:call MyCoding()<cr>
256 "map <leader>eu <esc>:set encoding=utf-8<cr>
257 map <leader>el <esc>:set list!<cr>
258 map <leader>es <esc>:set hlsearch!<cr>
259 map <leader>em <esc>:call MyMenu()<cr>
260 map <leader>en <esc>:set nu!<cr>:set cursorline!<cr>
261 "map <leader>df <esc>:silent !start firefox "http://www.m-w.com/cgi-bin/Dictionary?book=Dictionary&va=<cword>"<cr><cr>
262 "map <leader>dF <esc>:silent !start firefox "http://www.m-w.com/cgi-bin/Thesaurus?book=Thesaurus&va=<cword>"<cr><cr>
263 "map <leader>dW <esc>:silent !wnb <cword> <cr><cr>
264 "map <leader>dz <esc>:!start firefox.exe <cWORD><cr><cr>
265 map <leader>dz <esc>:call MyUrl(expand('<cWORD>'))<cr>
266 map <leader>dw <esc>:call MyWebs(expand('<cword>'))<cr>1<cr>-
267 nnoremap <leader>dd <esc>:call MyTriggerMore()<cr>
268 nnoremap <leader>fd :set fileformat=dos<cr>
269 nnoremap <leader>fu :set fileformat=unix<cr>
270 map <leader>bp <esc>:bp<return>
271 map <leader>bn <esc>:bn<return>
272 map <leader>yy <esc>^"*y$
273 map <leader>sn <esc>:%s//&/gn<cr>
274 map <leader>m <esc>:silent MarksBrowser<cr>
276 "MAKE IT EASY TO UPDATE/RELOAD_vimrc
277 nnoremap <leader>-s <esc>:source ~/_vimrc<cr>
278 nnoremap <leader>-v <esc>:e ~/_vimrc<cr>
280 """""""""""""""""""""""""""""""""""""""""""""""""""""
281 " <F5>-<F8>maping for savers-pluging
282 " <F5> decrease version viewed in VersDiff window
283 " <F6> increase version viewed in VersDiff window
284 " <F7> do VersDiff with cvs version of current file
285 " <F8> cancel VersDiff window
286 nmap <silent> <F3> :VersDiff -<cr>
287 nmap <silent> <F4> :VersDiff +<cr>
288 """""""""""""""""""""""""""""""""""""""""""""""""""""
290 " for autohotkey to using:)
291 " 0=english input 1=chinese input
296 com! MM call MyMore()
297 """""""""""""""""""""""""""""""""""""""""""""""""""""
299 """""""""""""""""""""""""""""""""""""""""""""""""""""
300 "Programmings abbrevs
301 """""""""""""""""""""""""""""""""""""""""""""""""""""
302 """""""""""""""""""""""""""""""""""""""""""""""""""""
303 "Informational abbrevs
304 """""""""""""""""""""""""""""""""""""""""""""""""""""
305 "iab xda <c-r>=strftime("%Y-%m-%d-%H:%M:%S")<cr>
306 iab xda <c-r>=substitute(system("date +%Y-%m-%d-%H:%M"),"\n","","")<cr>
310 iabbrev synchronisation
320 """""""""""""""""""""""""""""""""""""""""""""""""""""
323 """""""""""""""""""""""""""""""""""""""""""""""""""""
324 "for no swap attation
328 if v:statusmsg =~ '\.sw[^p]$'
329 set statusline=%2*%=\ \ \ %50(%f\ @%n%*%1*[$]%*%2*[%{&ff}]%r%m%y%=\ \ \ %-14.(%l,%c\(%v\)%)\ %p%%%)%*
332 set statusline=%2*%=\ \ \ %50(%f\ @%n[%{FunFileEncoding()}]%r%m%y#%{changenr()}%=\ \ \ %-14.(%l,%c\(%v\)%)\ %p%%%)%*
333 "set statusline=%2*%=\ \ \ %50(%f\ @%n[%{&ff}]%r%m%y%=\ \ \ %-14.(%l,%c%V%)\ %p%%%)%*
339 autocmd BufEnter * silent call CheckSwap()
341 """""""""""""""""""""""""""""""""""""""""""""""""""""
346 """""""""""""""""""""""""""""""""""""""""""""""""""""
348 """""""""""""""""""""""""""""""""""""""""""""""""""""
349 "let g:vikiUseParentSuffix = 1
350 "let g:vikiSpecialFiles='jpg\|gif\|bmp\|pdf\|dvi\|ps\|eps\|png\|jpeg\|wmf\|otl'
351 "let g:vikiOpenFileWith_otl = 'silent !D:/prog/Natara/Bonsai/Bonsai.exe %{FILE}'
353 " we want to allow deplate to execute ruby code and external helper
355 "let g:deplatePrg = "deplate -x -X "
356 "au FileType viki compiler deplate
357 "let g:vikiInterOLM= $HOME ."/olm"
358 "let g:vikiInterOLM_suffix= ".olm"
359 "let g:vikiInterHW= $HOME ."/viki"
360 "let g:vikiInterHW_suffix= ".txt"
365 """""""""""""""""""""""""""""""""""""""""""""""""""""
367 map <leader>rr :MRU<cr>gg
368 let MRU_Max_Entries = 500
369 let MRU_Exclude_Files = '^/tmp/.*\|^/var/tmp/.*|^c:\\temp\\.*'
370 let MRU_File = $VIMFILY . "/_vim_mru_files"
371 "let MRU_Auto_Close = 0 " to keep the mru window
372 """""""""""""""""""""""""""""""""""""""""""""""""""""
374 """""""""""""""""""""""""""""""""""""""""""""""""""""
375 " setting for subversion
376 nmap <leader>va <Plug>VCSAdd
377 nmap <leader>vn <Plug>VCSAnnotate
378 nmap <leader>vc <Plug>VCSCommit
379 nmap <leader>vd <Plug>VCSDiff
380 nmap <leader>ve <Plug>VCSEdit
381 nmap <leader>vi <Plug>VCSEditors
382 nmap <leader>vg <Plug>VCSGotoOriginal
383 nmap <leader>vG <Plug>VCSGotoOriginal!
384 nmap <leader>vl <Plug>VCSLog
385 nmap <leader>vr <Plug>VCSReview
386 nmap <leader>vs <Plug>VCSStatus
387 nmap <leader>vt <Plug>VCSUnedit
388 nmap <leader>vu <Plug>VCSUpdate
389 nmap <leader>vv <Plug>VCSVimDiff
390 nmap <leader>vwv <Plug>VCSWatchers
391 nmap <leader>vwa <Plug>VCSWatchAdd
392 nmap <leader>vwn <Plug>VCSWatchOn
393 nmap <leader>vwf <Plug>VCSWatchOff
394 nmap <leader>vwf <Plug>VCSWatchRemove
395 """""""""""""""""""""""""""""""""""""""""""""""""""""
397 """""""""""""""""""""""""""""""""""""""""""""""""""""
399 if !hasmapto('<Plug>CRV_CRefVimVisual')
400 vmap <silent> <unique> <Leader>Cr <Plug>CRV_CRefVimVisual
401 nmap <silent> <unique> <Leader>Cr <Plug>CRV_CRefVimNormal
402 map <silent> <unique> <Leader>Cw <Plug>CRV_CRefVimAsk
403 map <silent> <unique> <Leader>Cc <Plug>CRV_CRefVimInvoke
405 """""""""""""""""""""""""""""""""""""""""""""""""""""
408 """""""""""""""""""""""""""""""""""""""""""""""""""""
410 "ca xsp write !aspell -a --lang="en_US"<cr>
411 """""""""""""""""""""""""""""""""""""""""""""""""""""
414 """""""""""""""""""""""""""""""""""""""""""""""""""""
416 """""""""""""""""""""""""""""""""""""""""""""""""""""
417 "autocmd BufEnter * :syntax sync fromstart " ensure every file does syntax highlighting (full)
418 "autocmd BufEnter * :lcd %:p:h " switch to current dir
419 "autocmd GUIEnter * :simalt ~x " maximize the screen
421 augroup filetypedetect
422 """""""""""""""""""""""""""""""""""""""""""""""""""""
423 "for help and readbale file mode
424 augroup! filetypedetect
425 autocmd FileType help call MyMore()
426 """""""""""""""""""""""""""""""""""""""""""""""""""""
428 """""""""""""""""""""""""""""""""""""""""""""""""""""
429 "for the make error windows quickfix windows
430 au BufReadPost quickfix set modifiable
431 au BufReadPost quickfix silent g/^/s//\=line(".")." "/
432 autocmd FileType qf call MyMore()
433 """""""""""""""""""""""""""""""""""""""""""""""""""""
435 """""""""""""""""""""""""""""""""""""""""""""""""""""
437 """""""""""""""""""""""""""""""""""""""""""""""""""""
438 "autocmd BufNewFile *.sh 0r ~/vimtemplate/skeleton.sh
439 "autocmd BufNewFile *.vim 0r $HOME/vimfiles/skel/vim.skel
440 autocmd BufNewFile,BufReadPre *.java,*.vim,*.sh,*.html,*.xhtml,*.py source $ADDED/skel.vim
441 "autocmd BufNewFile *.java 0r $VIMFILY/skel/java.skel
442 "autocmd BufNewFile *.vim 0r $VIMFILY/skel/vim.skel
443 "autocmd BufNewFile *.sh 0r $VIMFILY/skel/sh.skel
444 "autocmd BufNewFile *.html 0r $VIMFILY/skel/html.skel
445 "autocmd BufNewFile *.xhtml 0r $VIMFILY/skel/xhtml.skel
446 "autocmd BufNewFile *.java,*.vim,*.sh,*.html,*.xhtml call Replacy()
447 """""""""""""""""""""""""""""""""""""""""""""""""""""
448 """""""""""""""""""""""""""""""""""""""""""""""""""""
450 "au BufReadPre *.doc set ro
451 "au BufReadPre *.doc set hlsearch!
452 "au BufReadPost *.doc silent %!antiword "%"
453 "autocmd BufReadPost *.doc silent %!wvware "%"
454 """""""""""""""""""""""""""""""""""""""""""""""""""""
455 "au BufNewFile,BufRead /home/Administrator/std-java/new1.5/* let g:bnojikes=1
457 autocmd BufWritePre,FileWritePre *.vim ks|call LastMod()|'s
458 autocmd BufWritePre,FileWritePre *.jsp,*.html ks|call LastMod2()|'s
460 autocmd BufNewFile,BufreadPre *.text,*.wiki call TextMode()
461 "autocmd BufNewFile,BufreadPre *.rst call RstMode()
462 autocmd FileType vim setlocal complete=.,k~/dic/vimdiction,w,b,u,i
464 autocmd fileType ahk source $ADDED/bracket.vim
467 """""""""""""""""""""""""""""""""""""""""""""""""""""
469 """""""""""""""""""""""""""""""""""""""""""""""""""""
470 nnoremap <silent> <F8> :Tlist<cr>
471 let Tlist_Sort_Type = "name" " order by
472 let Tlist_Use_Right_Window = 1 " split to the right side of the screen
473 let tlist_dosini_settings= 'ini;r:respect'
474 let tlist_html_settings = 'html;a:anchor;f:javascript function;u:url'
475 let tlist_vb_settings= 'vb;t:type;s:sub;f:function'
476 let tlist_ant_settings = 'ant;p:Project;r:Property;t:Target'
477 let JavaBrowser_Use_SingleClick = 0
478 let JavaBrowser_Use_Right_Window = 1
479 let JavaBrowser_Use_Icon = 0
480 let JavaBrowser_Compact_Format = 1
481 let JavaBrowser_Expand_Tree_At_Startup = 1
484 """""""""""""""""""""""""""""""""""""""""""""""""""""
486 """""""""""""""""""""""""""""""""""""""""""""""""""""
487 let g:JavaImpPaths = $JAVALIB."/j2sdk1.5_src,".$JAVALIB."junit_src,".$VIMFILY."/JavaImp/jmplst"
488 let g:JavaImpDataDir = $VIMFILY."/JavaImp"
489 let g:JavaImpDocPaths= $JAVA_DOCPATH
490 let g:JavaImpDocViewer = "viewHtml"
494 """""""""""""""""""""""""""""""""""""""""""""""""""""
496 """""""""""""""""""""""""""""""""""""""""""""""""""""
497 let g:favex_ff='<leader>fa'
498 let g:favex_fd='<leader>fA'
499 """""""""""""""""""""""""""""""""""""""""""""""""""""
501 """""""""""""""""""""""""""""""""""""""""""""""""""""
502 """""""""""""""""""""""""""""""""""""""""""""""""""""
505 au VCSCommand User VCSBufferCreated silent! nmap <unique> <buffer> q :bwipeout<cr>
507 "let g:VCSCommandEdit= 'spilt'
509 """""""""""""""""""""""""""""""""""""""""""""""""""""
511 """""""""""""""""""""""""""""""""""""""""""""""""""""
513 """""""""""""""""""""""""""""""""""""""""""""""""""""
514 "let g:bufExplorerDetailedHelp=1
515 let g:netrw_keepdir=0
516 let g:netrw_cygwin= 1
517 let g:netrw_longlist=1
518 let g:netrw_sort_by="time"
519 let g:netrw_sort_direction="reverse"
520 let g:netrw_timefmt=" %Y %m %d\t%H:%M"
521 let g:netrw_winsize=25
523 """""""""""""""""""""""""""""""""""""""""""""""""""""
525 """""""""""""""""""""""""""""""""""""""""""""""""""""
526 "nmap <silent> <unique> <leader>be <Plug>SelectBuf
527 "nmap <unique> <leader>bl <Plug>SelBufLaunchCmd
528 "let selBufAlwaysShowHidden=0
529 "let selBufIgnoreNonFileBufs=0
532 "nmap <Leader>tv :call TabLineSet_verbose_toggle()<CR>
533 "nmap <Leader>tr :call TabLineSet_verbose_rotate()<CR>
534 "nmap <silent> <Leader>w :call WinWalkerMenu()<CR>
540 "Highlight space at end of line as error
541 "highlight WhitespaceEOL ctermbg=darkred guibg=darkred
542 "match WhitespaceEOL /\s\+$/
548 "set diffexpr=MyDiff()
550 " let opt = '-a --binary '
551 " if &diffopt =~ 'icase' | let opt = opt . '-i ' | endif
552 " if &diffopt =~ 'iwhite' | let opt = opt . '-b ' | endif
553 " let arg1 = v:fname_in
554 " if arg1 =~ ' ' | let arg1 = '"' . arg1 . '"' | endif
555 " let arg2 = v:fname_new
556 " if arg2 =~ ' ' | let arg2 = '"' . arg2 . '"' | endif
557 " let arg3 = v:fname_out
558 " if arg3 =~ ' ' | let arg3 = '"' . arg3 . '"' | endif
559 " silent execute '!e:\prog\Vim\vim63\diff ' . opt . arg1 . ' ' . arg2 . ' > ' . arg3
563 function! MyTabLabel(n)
564 let buflist = tabpagebuflist(a:n)
565 let winnr = tabpagewinnr(a:n)
566 return bufname(buflist[winnr - 1])
569 function! MyTabLine()
571 for i in range(tabpagenr('$'))
572 " select the highlighting
573 if i + 1 == tabpagenr()
574 let s .= '%#TabLineSel#'
576 let s .= '%#TabLine#'
579 " set the tab page number (for mouse clicks)
580 let s .= '%' . (i + 1) . 'T'
582 " the label is made by MyTabLabel()
583 let s .= ' %{MyTabLabel(' . (i + 1) . ')} '
586 " after the last tab fill with TabLineFill and reset tab page nr
587 let s .= '%#TabLineFill#%T'
589 " right-align the label to close the current tab page
590 if tabpagenr('$') > 1
591 let s .= '%=%#TabLine#%999Xclose'
597 function! GuiTabLabel()
599 "let bufnrlist = tabpagebuflist(v:lnum)
601 " Add '+' if one of the buffers in the tab page is modified
602 "for bufnr in bufnrlist
603 "if getbufvar(bufnr, "&modified")
609 " Append the number of windows in the tab page if more than one
610 "let wincount = tabpagewinnr(v:lnum, '$')
612 "let label .= wincount
614 if v:lnum == g:currentPage
619 " Append the buffer name
622 function! GuiTabLabel2()
624 let bufnrlist = tabpagebuflist(v:lnum)
626 " Add '+' if one of the buffers in the tab page is modified
627 "for bufnr in bufnrlist
628 "if getbufvar(bufnr, "&modified")
634 " Append the number of windows in the tab page if more than one
635 if v:lnum == g:currentPage
638 let wincount = tabpagewinnr(v:lnum, '$')
640 let label .= wincount
646 function! GuiTabLabelEnter()
647 let g:currentPage=tabpagenr()
648 set guitablabel=%{GuiTabLabel()}%N\ %t\ %{GuiTabLabel2()}
651 function! GuiTabLabelLeave()
654 " the tab setting and mapping
656 "set guitablabel=%N\ %f
657 "set guitablabel=%{GuiTabLabel()}
659 "set guitablabel=%N/\ %t\ %M
660 set tabline=%!MyTabLine()
662 map <silent><F12> :if g:toggleTabs == 1<CR>:tabo<CR>:set lines+=3<CR>:let g:toggleTabs = 0<CR>:else<CR>:set lines-=3<CR>:tab ball<CR>:let g:toggleTabs = 1<CR>:endif<CR>
663 map <silent><C-tab> :if g:toggleTabs == 1<CR>:tabnext<CR>:else<CR>:bn<CR>:endif<CR>
664 map <silent><C-S-tab> :if g:toggleTabs == 1<CR>:tabprevious<CR>:else<CR>:bp<CR>:endif<CR>
666 map <leader>tt <esc>:tabnew<cr>:let g:toggleTabs=1<cr>
667 map <leader>tx :tabclose<cr>:if tabpagenr("$") == 1<cr>let g:toggleTabs=0<cr>:endif<cr><cr>
668 map <leader>tm :tabmove
669 map <leader>tn :tabnext <cr>
670 map <leader>tp :tabprevious <cr>
671 "map <C-Tab> :tabn <CR>
672 "map <C-S-Tab> :tabp <CR>
675 autocmd TabEnter * call GuiTabLabelEnter()
679 "for new tab page setting
680 map <leader>ta <esc>:tab sball<cr>
681 if has("gui_running")
682 function! InfoGuiTooltip()
684 let wincount = tabpagewinnr(tabpagenr(),'$')
686 "get name of active buffers in windows
687 for i in tabpagebuflist()
688 let bufferlist .= '['.fnamemodify(bufname(i),':t')."]"
690 return bufname($).'-'.bufferlist
692 set guitabtooltip=%!InfoGuiTooltip()
695 function! FoldSpellBalloon()
696 let foldStart = foldclosed(v:beval_lnum )
697 let foldEnd = foldclosedend(v:beval_lnum)
699 " Detect if we are in a fold
701 " Detect if we are on a misspelled word
702 let lines = spellsuggest( spellbadword(v:beval_text)[ 0 ], 5, 0 )
705 let numLines = foldEnd - foldStart + 1
706 " if we have too many lines in fold, show only the first 14
707 " and the last 14 lines
709 let lines = getline( foldStart, foldStart + 14 )
710 let lines += [ '-- Snipped ' . ( numLines - 30 ) . ' lines --' ]
711 let lines += getline( foldEnd - 14, foldEnd )
713 "less than 30 lines, lets show all of them
714 let lines = getline( foldStart, foldEnd )
718 return join( lines, has( "balloon_multiline" ) ? "\n" : " " )
720 set balloonexpr=FoldSpellBalloon()
729 set grepprg=grep\ -nH\ $*
732 let g:Tex_CompileRule_dvi="xelatex -src-specials -interaction=nonstopmode $*"
733 "let g:Tex_DefaultTargetFormat="pdf"
734 "let g:Tex_ViewRule_pdf="xpdf"
737 "function RemoteLaTeX()
738 "let g:Tex_ViewRule_dvi="xdvi -editor 'gvim --servername \"".expand("%:p")
739 "\."\" --remote-silent'"
746 let g:vimim_chinese_punctuation=0
749 let jslint_highlight_color = 'yellow'
754 set csprg=/usr/bin/mlcscope
756 set csprg=d:\\cygwin\\bin\\mlcscope.exe
759 " for clipbord conflict with NERD
760 nmap <unique> <silent> <Leader>co <Plug>ClipBrdOpen
762 " add my highlight setting
763 highlight CursorLine term=none cterm=none