gvimrc

 

" .gvimrc

"

" Longer Chan's .gvimrc

" http://longerchan.blogcn.com

" 2007-04-19

 

" always have syntax highlighting in with the gui:

syntax on

 

" window size:

set lines=40

 

" max window when open VIM

au GUIEnter * simalt ~x

 

" scroll bar at the left rather than the right:

"set guioptions+=r

"set guioptions-=l

 

" no menu, and no toolbar:

"set guioptions+=m

"set guioptions-=T

 

" have error messages red on white (rather than t'tother way round, which isn't

" readable in the above font):

highlight ErrorMsg guibg=White guifg=Red

function! GetProtoLine()

  let ret       = ""

  let line_save = line(".")

  let col_save  = col(".")

  let top       = line_save - winline() + 1

  let so_save = &so

  let &so = 0

  let istypedef = 0

  " find closing brace

  let closing_lnum = search('^}','cW')

  if closing_lnum > 0

    if getline(line(".")) =~ '/w/s*;/s*$'

      let istypedef = 1

      let closingline = getline(".")

    endif

    " go to the opening brace

    normal! %

    " if the start position is between the two braces

    if line(".") <= line_save

      if istypedef

        let ret = matchstr(closingline, '/w/+/s*;')

      else 

        " find a line contains function name

        let lnum = search('^/w','bcnW')

        if lnum > 0

          let ret = getline(lnum)

        endif

      endif

    endif

  endif

  " restore position and screen line

  exe "normal! " . top . "Gz/<CR>"

  call cursor(line_save, col_save)

  let &so = so_save

  return ret

endfunction

 

function! WhatFunction()

  if &ft != "c" && &ft != "cpp"

    return ""

  endif 

  let proto = GetProtoLine() 

  if proto == ""

    return "?"

  endif 

  if stridx(proto, '(') > 0

    let ret = matchstr(proto, '/w/+(/@=')

  elseif proto =~# '/<struct/>'

    let ret = matchstr(proto, 'struct/s/+/w/+')

  elseif proto =~# '/<class/>'

    let ret = matchstr(proto, 'class/s/+/w/+')

  else

    let ret = strpart(proto, 0, 15) . "..."

  endif 

  return ret

endfunction

 

 

" change status line

if has("statusline")

    set statusline=%<%f/ %{WhatFunction()}/%h%m%r%=%{/"[/".(&fenc==/"/"?&enc:&fenc).((exists(/"+bomb/")/ &&/ &bomb)?/",/":/"/")./"]/ /"}%k/ %-14.(%l,%c%V%)/ %P

" set statusline=%<%f/ %h%m%r%=%-20.(line=%l,col=%c%V,totlin=%L%)/%h%m%r%=%-40(,bytval=0x%B,%n%Y%)/%P

    " set statusline=%f:%{WhatFunction()}/ %m%=/ %l-%v/ %p%%/ %02B

endif

" set statusline=%F%m%r%h%w/ [FORMAT=%{&ff}]/ [TYPE=%Y]/ [POS=%l,%v][%p%%]/ %{strftime(/"%d/%m/%y/ -/ %H:%M/")}

 

" end of .gvimrc

 

 

"Best Regards.

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
"-------------------------------------------------------------------------------- " 一般设定 "-------------------------------------------------------------------------------- set fileencodings=ucs-bom,utf-8,cp936,gb18030,big5,euc-jp,euc-kr,latin1 set encoding=utf-8 set termencoding=cp936 language messages zh_CN.UTF-8 "解决输出乱码 source $VIMRUNTIME/delmenu.vim "解决菜单乱码 source $VIMRUNTIME/menu.vim "解决consle输出乱码 set nocompatible " 不要使用vi的键盘模式,而是vim自己的 set history=100 " history文件中需要记录的行数 set clipboard+=unnamed " 与windows共享剪贴板 set viminfo+=! " 保存全局变量 set iskeyword+=_,$,@,%,#,- " 带有如下符号的单词不要被换行分割 syntax on " 语法高亮 set cursorline " 突出显示当前行 nnoremap c:set cursorline! cursorcolumn! "set cursorline "au! Cursorhold *exe 'match CurrentLine ^%'. line('.').'l.*/' "set ut=100 set nu! " 显示行号 set scrolloff=5 " 在光标接近底端或顶端时,自动下滚或上滚 "hi Comment ctermfg=DarkCyan "修改默认注释颜色 ":highlight OverLength ctermbg=red ctermfg=white guibg=red guifg=white ":match OverLength '\1v.*' " 高亮字符,让其不受100列限制 highlight StatusLine guifg=SlateBlue guibg=Yellow " 状态行颜色 highlight StatusLineNC guifg=Gray guibg=White " 状态行颜色 set laststatus=2 " 进入插入模式时改变状态栏颜色(仅限于Vim 7) if version >= 700 au InsertEnter * hi StatusLine guibg=#818D29 guifg=#FCFCFC gui=none au InsertLeave * hi StatusLine guibg=Yellow guifg=SlateBlue gui=none endif if has("gui_running") "au GUIEnter * simalt ~x " 窗口启动时自动最大化 "set guioptions-=m " 隐藏菜单栏 "set guioptions-=T " 隐藏工具栏 "set guioptions-=L " 隐藏左侧滚动条 "set guioptions-=r " 隐藏右侧滚动条 "set guioptions-=b " 隐藏底部滚动条 "set showtabline=0 " 隐藏Tab栏 endif "-------------------------------------------------------------------------------- " 配色方案(按照当前时间的秒数的个位数决定使用哪个方案) "-------------------------------------------------------------------------------- if (strftime("%S")-floor(strftime("%S")/1

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值