我现在的vimrc配置文件

runtime! debian.vim
"设置编码
set encoding=utf-8
set fencs=utf-8,ucs-bom,shift-jis,gb18030,gbk,gb2312,cp936
set fileencodings=utf-8,ucs-bom,chinese

"语言设置
set langmenu=zh_CN.UTF-8

"
command WQ wq
command Wq wq
command W  w
command Q  q
map <F5> i(<Esc>ea)<Esc>
map <F8> oprintf("bug!here is a bug!!!!\n");<Esc>
map <F4> <Esc>:wq<cr>
map <F7> oprintf("------------------------------------------------------------\n");<Esc>

"设置语法高亮
syntax enable
"syntax on

"设置配色方案
"colorscheme torte

"可以在buffer的任何地方使用鼠标
set mouse=a
set selection=exclusive
set selectmode=mouse,key

"高亮显示匹配的括号
set showmatch

"去掉vi一致性
set nocompatible

"设置缩进
set tabstop=4
set softtabstop=4
set shiftwidth=4
set autoindent
set cindent
if &term=="xterm"
    set t_Co=8
    set t_Sb=^[[4%dm
    set t_Sf=^[[3%dm
endif

"打开文件类型自动检测功能
filetype on

"设置taglist
let Tlist_Show_One_File=0   "显示多个文件的tags
let Tlist_File_Fold_Auto_Close=1 "非当前文件,函数列表折叠隐藏
let Tlist_Exit_OnlyWindow=1 "在taglist是最后一个窗口时退出vim
let Tlist_Use_SingleClick=1 "单击时跳转
let Tlist_GainFocus_On_ToggleOpen=1 "打开taglist时获得输入焦点
let Tlist_Process_File_Always=1 "不管taglist窗口是否打开,始终解析文件中的tag

"  minibufexplorer
let g:miniBufExplMapWindowNavVim=1
let g:miniBufExplMapWindowNavArrows=1
let g:miniBufExplMapCTabSwitchBufs=1
let g:miniBufExplModSelTarget=1
let g:miniBufExplMoreThanOne=0

"
"设置WinManager插件
let g:winManagerWindowLayout=‘FileExplorer|TagList‘
nmap wm :WMToggle<cr>
map <silent> <F9> :WMToggle<cr> "将F9绑定至WinManager,即打开WimManager

"设置CSCOPE
set cscopequickfix=s-,c-,d-,i-,t-,e- "设定是否使用quickfix窗口显示cscope结果

"设置Grep插件
nnoremap <silent> <F3> :Grep<CR>

"设置自动补全
"filetype plugin indent on   "打开文件类型检测
set completeopt=longest,menu "关掉智能补全时的预览窗口

"启动vim时如果存在tags则自动加载
if exists("tags")
    set tags=./tags
endif

"设置按F12就更新tags的方法
map <F12> :call Do_CsTag()<CR>
nmap <[email protected]>s :cs find s <C-R>=expand("<cword>")<CR><CR>:copen<CR>
nmap <[email protected]>g :cs find g <C-R>=expand("<cword>")<CR><CR>
nmap <[email protected]>c :cs find c <C-R>=expand("<cword>")<CR><CR>:copen<CR>
nmap <[email protected]>t :cs find t <C-R>=expand("<cword>")<CR><CR>:copen<CR>
nmap <[email protected]>e :cs find e <C-R>=expand("<cword>")<CR><CR>:copen<CR>
nmap <[email protected]>f :cs find f <C-R>=expand("<cfile>")<CR><CR>:copen<CR>
nmap <[email protected]>i :cs find i ^<C-R>=expand("<cfile>")<CR>$<CR>:copen<CR>
nmap <[email protected]>d :cs find d <C-R>=expand("<cword>")<CR><CR>:copen<CR>
function Do_CsTag()
        let dir = getcwd()
        if filereadable("tags")
            if(g:iswindows==1)
                let tagsdeleted=delete(dir."\\"."tags")
            else
                let tagsdeleted=delete("./"."tags")
            endif
            if(tagsdeleted!=0)
                echohl WarningMsg | echo "Fail to do tags! I cannot delete the tags" | echohl None
                return
            endif
        endif

        if has("cscope")
            silent! execute "cs kill -1"
        endif

        if filereadable("cscope.files")
            if(g:iswindows==1)
                let csfilesdeleted=delete(dir."\\"."cscope.files")
            else
                let csfilesdeleted=delete("./"."cscope.files")
            endif
            if(csfilesdeleted!=0)
                echohl WarningMsg | echo "Fail to do cscope! I cannot delete the cscope.files" | echohl None
                return
            endif
        endif

        if filereadable("cscope.out")
            if(g:iswindows==1)
                let csoutdeleted=delete(dir."\\"."cscope.out")
            else
                let csoutdeleted=delete("./"."cscope.out")
            endif
            if(csoutdeleted!=0)
                echohl WarningMsg | echo "Fail to do cscope! I cannot delete the cscope.out" | echohl None
                return
            endif
        endif

        if(executable(‘ctags‘))
            "silent! execute "!ctags -R --c-types=+p --fields=+S *"
            silent! execute "!ctags -R --c++-kinds=+p --fields=+iaS --extra=+q ."
        endif

        if(executable(‘cscope‘) && has("cscope") )
            if(g:iswindows!=1)
                silent! execute "!find . -name ‘*.h‘ -o -name ‘*.c‘ -o -name ‘*.cpp‘ -o -name ‘*.java‘ -o -name ‘*.cs‘ > cscope.files"
            else
                silent! execute "!dir /s/b *.c,*.cpp,*.h,*.java,*.cs >> cscope.files"
            endif
            silent! execute "!cscope -b"
            execute "normal :"

            if filereadable("cscope.out")
                execute "cs add cscope.out"
            endif
        endif
endfunction

"设置默认shell
set shell=bash

"设置VIM记录的历史数
set history=400

"设置当文件被外部改变的时侯自动读入文件
if exists("&autoread")
    set autoread
endif

"设置ambiwidth
set ambiwidth=double

"设置文件类型
set ffs=unix,dos,mac

"设置增量搜索模式
set incsearch

"设置静音模式
set noerrorbells
set novisualbell
set t_vb=

"不要备份文件
set nobackup
set nowb
set nu

"让状态栏一致保留在命令行上方
function! CurDir()
    let curdir = substitute(getcwd(), $HOME, "~", "g")
    return curdir
endfunction
set laststatus=2
set statusline=[%n]\ %f%m%r%h\ \|\ \ pwd:\ %{CurDir()}\ \ \|\ go!go!go!baochunzhi

execute pathogen#infect()
syntax on
filetype plugin indent on   "打开文件类型检测

"Grep插件
nnoremap <silent> <F3> :Grep<CR>
时间: 2024-12-08 19:11:40

我现在的vimrc配置文件的相关文章

自家用的.vimrc配置文件

一..vimrc配置文件 cat .vimrc set backupdir=/root/vimbackup set background=dark colorscheme desert syntax on set incsearch                      if has("autocmd")   filetype plugin indent on endif set hlsearch autocmd BufReadPost *   \ if line("'\

.vimrc配置文件

set history=200000 set autoindent set smarttab set paste set nocompatible " 关闭 vi 兼容模式 syntax on " 自动语法高亮 set number " 显示行号 set ruler " 打开状态栏标尺 set shiftwidth=4 " 设定 << 和 >> 命令移动时的宽度为 4 set softtabstop=4 " 使得按退格键时

vim快捷键,及vimrc的简单设置

1) 光标的移动 H 光标移动到屏幕的顶行行首 M 光标移动到屏幕的中间行行首 L 光标移动到屏幕的末行行尾 0   光标移动到当前行行首 $ 光标移动到当前行行尾 G 光标移动到当前行行首 gg  光标移动到首行行首 nG 光标下移N行(包括当前行)至行尾 n+ 光标下移N行(包括当前行)至行首 n- 光标上移N行(包括当前行)至行首 %    先吧光标停留在 "{" 或者 "}" 能直接移动到与当前大括号匹配的另一个大括号 | 列 n| 光标移动到当前行的第n列

vim自定义设置-配置文件

http://blog.csdn.net/pipisorry/article/details/25056909 .vimrc配置文件表示说明 vim自定义键盘映射 使用:map命令,可以将键盘上的某个按键与Vim的命令绑定起来.例如使用以下命令,可以通过F5键将单词用花括号括起来::map <F5> i{e<Esc>a}<Esc>其中:i{将插入字符{,然后使用Esc退回到命令状态:接着用e移到单词结尾,a}增加字符},最后退至命令状态.在执行以上命令之后,光标定位在一

Linux下编辑利器vim,vimrc,viminfo的高级用法

1.ci" (由 change operator 和 text-object i" 组成) 这个命令会找到当前光标所在行的下一个 " 括起来的字符串,清除引号裏面的内容,并进入 insert mode 以方便修改用起来比解释起来简单,你可用 const char* hello = "Hello world."; 类似这样的代码来测试 2.yaB (由 yank operator 和 text-object aB 组成) 这个命令会将当前光标所在的代码块({

[Linux学习笔记] Linux文本编辑器Vim/Vi

文本编辑器Vim: Vim/Vi是一个功能强大的全屏幕文本编辑器,是Linux/UNIX上最常用的文本编辑器. 它的作用是建立.编辑.显示文本文件. Vim/Vi没有菜单,只有命令. 插入命令 命令 作用 a 在光标后附加文本 A 在本行行末附加文本 i 在光标前插入文本 I 在本行开始插入文本 o 在光标下插入新行 O 在光标上插入新行 定位命令 命令 作用 h 方向左键. 左移一个字符 j 方向下键. 下移一行 k 方向上键. 上移一行 l 方向右键. 右移一个字符 $ 移至行尾 0 移至行

干货!一篇文章集合所有Linux基础命令,适合所有菜鸟学习和老手回顾!

1 文件{ ls -rtl # 按时间倒叙列出所有目录和文件 ll -rt touch file # 创建空白文件 rm -rf 目录名 # 不提示删除非空目录(-r:递归删除 -f强制) dos2unix # windows文本转linux文本 unix2dos # linux文本转windows文本 enca filename # 查看编码 安装 yum install -y enca md5sum # 查看md5值 ln 源文件 目标文件 # 硬链接 ln -s 源文件 目标文件 # 符号

老男孩教育每日一题-2017年5月9日-vim命令粘贴带#号或注释信息格式会出现混乱情况怎么办

1.题目 老男孩教育每日一题-2017年5月9日-vim编辑器使用知识点:vim命令粘贴带#号或注释信息格式会出现混乱情况,有什么方法进行解决?问题说明:每次复制代码时,如果代码里有 //或# 这样的注释就容易让格式乱掉,显示的内容不整齐,并不是所期望的显示格式. 2.参考答案 原因分析: 是由于vim编辑命令的自动缩进功能所影响,因此粘贴带注释的代码时可以取消自动缩进 问题解决: vim在粘贴代码时会自动缩进,把代码搞得一团糟糕,甚至可能因为某行的一个注释造成后面的代码全部被注释掉:最初的解决

上古神器--vim编辑器

上古神器,想必大家会联想到xx电视剧,上古神器不就是东皇钟.轩辕剑.盘古斧.炼妖壶.昊天塔.伏羲琴.神农鼎.崆峒印.昆仑镜.女娲石.那是电视剧的上古神器,IT君今天要讲的IT界的上古神器--vim编辑器. 对于一把神器来说,主角往往都是要付出一些努力才能收获到更加强大的力量才行,对于vim这种上古神器,IT君就不多说什么了. 一.vim的基本介绍 1.vim是从vi发展而来的,能实现代码补全.编译及错误跳转等方便的功能. 2.vim有模式之分,分别是一般指令模式.编辑模式和指令列命令模式. 一般