" Author: Cornelius <cornelius.howl{在}gmail{點}com>" WebSite: http://c9s.blogspot.com
" Date: Wed 28 Mar 2007 04:37:26 AM CST
"============================
" Colorscheme
"---------------------------------------------------
colors zenburn
"set guifont=Monaco:h10
set guifont=Bitstream\ Vera\ Sans\ Mono:h10
language mes en
"lang en
set langmenu=en_US.UTF-8
winsize 120 35
winpos 10 20
syntax on
set nocp "no compatible
set number
set ai
set si
set incsearch
set showcmd
set shiftwidth=4
set tabstop=4
set noeb novb ruler
set ignorecase
set backspace=indent,eol,start
set history=60
set wildmenu
let g:calendar_diary="C:\\Users\\steven\\steven_workdialy" "
let g:calendar_focus_today = 1
let g:calendar_mark = 'left-fit'
" encoding
set fileencodings=utf-8,big5,gbk,euc-jp,utf-bom,iso8859-1
set encoding=utf-8
set termencoding=utf-8
set fileencoding=utf-8
filetype on
filetype plugin on
imap <F2> <C-R>=strftime("%c")<CR>:map <F1> :call ToggleSketch()<CR>
nmap ,te :tabedit<SPACE>
nmap ,tx :tabedit .<CR>
nmap ,th :tab help<CR>
nmap ,tn :tabnew<CR>
" ctags
let Tlist_Ctags_Cmd = $VIM . '/ctags/ctags.exe'
nmap <;leader>t :TlistToggle<CR>
" snippet
set runtimepath+=$VIM\snippets\after
set runtimepath+=$VIM\snippets
let g:snip_start_tag = "«"
let g:snip_end_tag = "»"
" vcscommand
set runtimepath+=$VIM\vcscommand
" nerd tree
nmap <leader>e :NERDTreeToggle<CR>
" paste
set pastetoggle=<;leader>p
" 与windows共享剪贴板
set clipboard+=unnamed
" 不要备份文件(根据自己需要取舍)
set nobackup
" 不要生成swap文件,当buffer被丢弃的时候隐藏它
setlocal noswapfile
set bufhidden=hide
" 在状态行上显示光标所在位置的行号和列号
set ruler
set rulerformat=%20(%2*%<;%f%=\ %m%r\ %3l\ %c\ %p%%%)
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" 搜索和匹配
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" 高亮显示匹配的括号
set showmatch
" 匹配括号高亮的时间(单位是十分之一秒)
set matchtime=1
" 在搜索的时候忽略大小写
set ignorecase
" 用空格键来开关折叠
set foldenable
set foldmethod=manual
nnoremap <space> @=((foldclosed(line('.')) < 0) ? 'zc' : 'zo')<CR> """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" Autocommands
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" 只在下列文件类型被侦测到的时候显示行号,普通文本文件不显示
if has("autocmd") autocmd FileType xml,html,css,js,c,cs,java,perl,shell,bash,cpp,python,vim,php,ruby,markdown,sh,md set number
autocmd FileType xml,html vmap <C-o> <ESC>'<i<!--<ESC>o<ESC>'>o-->
autocmd FileType java,c,cpp,cs vmap <C-o> <ESC>'<o
autocmd FileType html,text,php,vim,c,java,xml,bash,shell,perl,python setlocal textwidth=100
autocmd FileType html,htmldjango,jinjahtml,eruby,mako let b:closetag_html_style=1
autocmd FileType html,xhtml,xml,htmldjango,jinjahtml,eruby,mako source ~/.vim/bundle/closetag.vim/plugin/closetag.vim
autocmd BufReadPost *
\ if line("'\"") >; 0 && line("'\"") <= line("$") | \ exe " normal g`\"" |
\ endif
endif "has("autocmd")
" F5编译和运行C程序,F6编译和运行C++程序
" 请注意,下述代码在windows下使用会报错
" 需要去掉./这两个字符
" C的编译和运行
map <;F5> :call CompileRunGcc()<CR>
func! CompileRunGcc()
exec "w"
exec "!gcc % -g -o %<"
" exec "! %<;"
endfunc
map <;F6> :call RunGcc()<CR>
func! RunGcc()
exec "w"
exec "! %<"
endfunc
map <;F7> :call RunGdb()<CR>
func! RunGdb()
exec "w"
exec "!gdb %<"
endfunc
" C++的编译和运行
map <F9> :call CompileRunGpp()<CR>
func! CompileRunGpp()
exec "w"
exec "!g++ % -o %<;"
exec "! %<"
endfunc
let g:SuperTabDefaultCompletionType = "context"
let g:snips_trigger_key='<;F3>'
:imap jj <;Esc>