" 仅在当前窗口显示列号
set number
:au WinEnter * :setlocal number
:au WinLeave * :setlocal nonumber
" 自动调整窗口大小
":au WinEnter * :set winfixheight
":au WinEnter * :wincmd =
"设置不兼容性
set nocompatible
"当文件在外部被修改的时候自动载入
set autoread
"在查找的时候忽略大小写
set ignorecase
"只能匹配
set smartcase
"显示所键入的命令
set showcmd
"设置文件序列号
"set nu
"为色彩主题 solarized 所需要的
"开启语法高亮
syntax enable
set background=dark
"colorscheme solarized
colorscheme MountainDew
"colorscheme molokai
"设置状态栏的颜色
highlight StatusLine guifg=SlateBlue guibg=Yellow
"高亮显示匹配的括号
set showmatch
"设置历史记录数目
set history=1000
"设置不需要备份文件
set nobackup
setlocal noswapfile
"在命令模式下使用tab自动补全的时候,将补全内容用菜单的形式显示出来
set wildmenu
"显示右下角的状态栏
set ruler
"共享剪切板
set clipboard+=unnamed
"高亮显示搜索结果
set hlsearch
"实时显示搜索结果
set incsearch
"使得光标所在行总是离屏幕顶端或者低端5行
set scrolloff=5
"光标不闪烁
set novisualbell
"自动匹配,只能匹配,C语言风格的匹配
set autoindent
set smartindent
set cindent
"设置折叠
"按照缩进折叠
"set foldmethod=indent
"za,打开或者关闭当前折叠,zM,关闭所有折叠,zR,打开所有折叠
"按照语法折叠
set foldmethod=syntax
"设置一个tab对应4个空格,一般用于插入模式
set tabstop=4
"让vim把连续数量的空格视为一个制表符
set softtabstop=4
"设置格式化时制表符占用空格数,一般用于格式化对齐的时候
set shiftwidth=4
"设置tab
set smarttab
"将制表符扩展为空格
set expandtab
"不要将tab符号显示出来
set nolist
"去掉toolbar
set go=
"当你的一个单词输入未完成但是已经到达行尾的时候自动把你的单词完整显示到行首
set wrap
set linebreak
"设置状态栏的显示信息
set statusline=%F%m%r%h%w\ [FORMAT=%{&ff}]\ [TYPE=%Y]\ [ASCII=\%03.3b]\ [HEX=%02.2B]\ [POS=%04l,%04v]\ [%p%%]\ [LEN=%L]
"在被分割的窗口间显示空白,便于阅读
set fillchars=vert:\ ,stl:\ ,stlnc:\
"让当前文件所在目录自动设置为工作目录
"set autochdir
"设置语言
set encoding=utf-8
set fileencodings=utf-8,ucs-bom,gb18030,gbk,gb2312,cp936,chinese
if has("win32")
set fileencoding=utf-8
else
set fileencoding=utf-8
endif
"解决菜单乱码
source $VIMRUNTIME/delmenu.vim
source $VIMRUNTIME/menu.vim
"解决consle输出乱码
language messages zh_CN.utf-8
"我不知道下面几句起什么作用
"set termencoding=utf-8
set termencoding=gbk
"如果没有下面这一行就会乱码
set gfw=NSimsun:h12
"高亮显示当前行
set cursorline
hi CursorLine cterm=NONE ctermbg=DarkRed ctermfg=White
hi CursorColumn cterm=NONE ctermbg=DarkRed ctermfg=White
"同上目的一样,不然当只有一个文件的时候不能看到当前行高亮
set laststatus=2
"********************************************************************
"* *
"* MY_MAP *
"* *
"********************************************************************
"my map
let mapleader = ","
"进入当前打开文件所在目录
nmap <leader>cd :cd %:h<cr>
"改变Y命令
nnoremap Y y$
"change to light background
nmap <leader>l :set background=light<cr>
nmap <leader>d :set background=dark<cr>
nnoremap <leader>ev :split $MYVIMRC<cr>
nnoremap <leader>sv :source $MYVIMRC<cr>
"C Compiler and Run
map <F5> :call CompileRunGcc()<CR>
func! CompileRunGcc()
exec "w"
exec "!gcc % -o %<"
exec "!./%<"
endfunc
"去掉方向键的功能
nnoremap <UP> <NOP>
nnoremap <DOWN> <NOP>
nnoremap <LEFT> <NOP>
nnoremap <RIGHT> <NOP>
inoremap <UP> <NOP>
inoremap <DOWN> <NOP>
inoremap <LEFT> <NOP>
inoremap <RIGHT> <NOP>
nnoremap <F4> :noh<cr>
"当一行太长显示多行的时候仍然在逻辑上看做多行来移动
map <A-UP> gk
map <A-DOWN> gj
nnoremap <home> ^
nnoremap <end> $
"********************************************************************
"* *
"* pathogen *
"* *
"********************************************************************
execute pathogen#infect()
"允许用指定语法高亮配色方案替换默认方案
syntax on
filetype plugin indent on
"开启文件类型侦测
filetype on
"********************************************************************
"* *
"* Ctags *
"* *
"********************************************************************
"nnoremap <c-F7> :!ctags -R --c++-kinds=+p --fields=+iaS --extra=+q .<cr>
map <F7> :call CompileRunCtags()<CR>
func! CompileRunCtags()
exec "!ctags -R --c++-kinds=+p --fields=+iaS --extra=+q ."
endfunc
set tags=tags;
"jump between function
nnoremap <c-]> <c-]>
nnoremap <c-[> <c-t>
"********************************************************************
"* *
"* TagList *
"* *
"********************************************************************
let Tlist_Show_One_File=1
let Tlist_Exit_OnlyWindow=1
let Tlist_Ctags_Cmd='C:\Users\tab\ctags'
let Tlist_WinWidth=50
let Tlist_Use_Right_Window=1
"let Tlist_Close_On_Select=1
"let Tlist_GainFocus_On_ToggleOpen=1
nnoremap <F3> :TlistToggle<cr>
"********************************************************************
"* *
"* NERDTree *
"* *
"********************************************************************
nnoremap <F2> :NERDTreeToggle<cr>
"********************************************************************
"* *
"* MiniBufExplorer *
"* *
"********************************************************************
let g:miniBufExplMapWindowNavVim = 1
let g:miniBufExplMapWindowNavArrows = 1
let g:miniBufExplMapCTabSwitchBufs = 1
let g:miniBufExplModSelTarget = 1
nnoremap <F9> :TMiniBufExplorer<cr>
"********************************************************************
"* *
"* a *
"* *
"********************************************************************
nnoremap <leader>ih :IHS<cr>
nnoremap <leader>is :AS<cr>
"********************************************************************
"* *
"* CtrlP *
"* *
"********************************************************************
let g:ctrlp_map=',,'
let g:ctrlp_cmd='CtrlP'
let g:ctrlp_working_path_mode=0
let g:ctrlp_by_filename = 1
set foldmethod=syntax
set foldlevel=99
nnoremap <F11> za
我的vimrc
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 成长记录-连载(三十六) ——我的第一篇五千字长文,说了什么,你一定想不到 并不是不想每天写公众号,而是之前思考怎...
- 我内在的女神: 此刻,我在安静中注视着你,我看到你了,我感觉到你了。 我知道,无论在生命的任何阶段,你都与我同在,...
- 我们常常说等有空了去旅游,下次有机会聚一聚,改天出来吃个饭。总以为来日方长,什么都来得及,而我们却忘记了世事总无常...