ubuntu下gvim配置文件for C/C++

来源:互联网 发布:苹果手机mac地址怎么查 编辑:程序博客网 时间:2024/05/16 14:44

    在主文件夹(个人文件夹)里创建   .vimrc  文件,以下列内容为母版快速的配置gvim。

    终端输入:gvim  .vimrc 或者在个人文件夹下点击 Ctrl+h(显示隐藏文件命令)找到.vimr文件,根据个人喜好定制gvim的配置

    内容如下:

    "gvim配置for C/C++  
    "不要使用vi的键盘模式,而是vim自己的    
    set nocompatible    
    " 语法高亮    
    set syntax=on    
    "配色方案    
    " colorscheme torte    
    colorscheme koehler    
    set pastetoggle=<F11>         " pastetoggle( 粘贴模式切换 ) 可以避免自动缩进     
                                  " 的带来的格式影响;每次按下 <F11> 键可以打开     
                                  " / 关闭自动缩进功    
    " 去掉输入错误的提示声音    
    set noeb    
    " 在处理未保存或只读文件的时候,弹出确认    
    set confirm    
    " 自动缩进  
    set autoindent    
    set cindent    
    " 自动换行    
    set wrap    
    " 整词换行    
    set linebreak    
    " Tab键的宽度    
    set tabstop=4    
    " 统一缩进为4    
    set softtabstop=4    
    set shiftwidth=4    
    " 不要用空格代替制表符    
    " set noexpandtab    
    set expandtab    
    " 在行和段开始处使用制表符    
    set smarttab    
    " 显示行号    
    set number    
    " 历史记录数    
    set history=1000    
    "禁止生成临时文件    
    set nobackup    
    set noswapfile    
    "搜索忽略大小写    
    set ignorecase    
    "搜索逐字符高亮    
    set hlsearch    
    set incsearch    
    "行内替换    
    set gdefault    
    "编码设置    
    set enc=utf-8    
    set fencs=utf-8,ucs-bom,shift-jis,gb18030,gbk,gb2312,cp936    
    "语言设置    
    set helplang=cn    
    set encoding=utf8     
    set langmenu=zh_CN.UTF-8     
    set imcmdline     
    source $VIMRUNTIME/delmenu.vim     
    source $VIMRUNTIME/menu.vim    
    " 设置字体。    
    set guifont=Liberation\Mono\ 12    
    "set  guifont=Fixedsys\Excelsior\3.01\ 14    
    " 我的状态行显示的内容(包括文件类型和解码)    
    "set statusline=%F%m%r%h%w\ [FORMAT=%{&ff}]\ [TYPE=%Y]\ [POS=%l,%v][%p%%]\ %{strftime(\"%y/%m/%d\ -\ %H:%M\")}   
    " 总是显示状态行    
    "set laststatus=2    
    " 在编辑过程中,在右下角显示光标位置的状态行    
    set ruler               
    " 命令行(在状态行下)的高度,默认为1,这里是2    
    set cmdheight=2  
    " 侦测文件类型    
    filetype on    
    " 载入文件类型插件    
    filetype plugin on    
    " 为特定文件类型载入相关缩进文件    
    filetype indent on    
    " 保存全局变量    
    set viminfo+=!    
    " 带有如下符号的单词不要被换行分割    
    set iskeyword+=_,$,@,%,#,-    
    " 字符间插入的像素行数目    
    set linespace=0    
    " 增强模式中的命令行自动完成操作    
    set wildmenu    
    " 使回格键(backspace)正常处理indent, eol, start等    
    set backspace=2    
    " 允许backspace和光标键跨越行边界    
    set whichwrap+=<,>,h,l    
    " 可以在buffer的任何地方使用鼠标(类似office中在工作区双击鼠标定位)    
    set mouse=a    
    set selection=exclusive    
    set selectmode=mouse,key    
    " 通过使用: commands命令,告诉我们文件的哪一行被改变过    
    set report=0    
    " 启动的时候不显示那个援助索马里儿童的提示    
    set shortmess=atI    
    " 在被分割的窗口间显示空白,便于阅读    
    set fillchars=vert:\ ,stl:\ ,stlnc:\    
    " 高亮显示匹配的括号    
    set showmatch    
    " 匹配括号高亮的时间(单位是十分之一秒)    
    set matchtime=5    
    " 光标移动到buffer的顶部和底部时保持3行距离    
    set scrolloff=3    
    " 为C程序提供自动缩进    
    set smartindent    
    " F5编译和运行C程序,F6编译和运行C++程序    
    " C的编译和运行  


    map <F5> :call CompileRunGcc()<CR>    
    func! CompileRunGcc()    
    exec "w"    
    exec "!gcc -Wall % -o %<"    
    exec "! ./%<"    
    endfunc 


    " C++的编译和运行    
    map <F6> :call CompileRunGpp()<CR>    
    func! CompileRunGpp()    
    exec "w"    
    exec "!g++ -Wall % -o %<"    
    exec "! ./%<"    
    endfunc    
    " 用空格键来开关折叠    
    set foldenable    
    set foldmethod=manual    
    nnoremap <space> @=((foldclosed(line('.')) < 0) ? 'zc' : 'zo')<CR>    
    " minibufexpl插件的一般设置    
    let g:miniBufExplMapWindowNavVim = 1    
    let g:miniBufExplMapWindowNavArrows = 1    
    let g:miniBufExplMapCTabSwitchBufs = 1    
    let g:miniBufExplModSelTarget = 1    
    "-----------    
    " 模仿MS Windows中的快捷键     
    "-----------    
    vmap <C-c> "yy     
    vmap <C-x> "yd     
    nmap <C-v> "yp     
    vmap <C-v> "yp     
    nmap <C-a> ggvG$




    "-------------------------------
    " 查找/替换相关的设置
    "-----------------------------
    set hlsearch        " 高亮显示搜索结果
    set incsearch       " 查询时非常方便,如要查找book单词,当输入到/b时
                        " 会自动找到,当你找要匹配的单词时,别忘记回车
    set gdefault        " 替换时所有的行内匹配都被替换,而不是只有第一个




    "-------------------------------
    " 代码折叠
    "---------------------------
    set foldmarker={,}
    set foldmethod=marker
    set foldmethod=syntax
    set foldlevel=100       " Don't autofold anything 
    set foldopen-=search   " don't open folds when you search into them
    set foldopen-=undo     " don't open folds when you undo stuff
    set foldcolumn=4




    "代码补齐工具neocopplcache
    let g:neocomplcache_enable_at_startup=1



原创粉丝点击