您的位置:首页 > 其它

我的mvim上的配置文件"+yykkj

2011-04-25 14:43 274 查看
“============================

”任何system通用

“============================

" 显示中文帮助

if version >= 603

set helplang=cn

set encoding=utf-8

endif

" 设定默认解码

"set fenc =utf-8

"set fenc =utf-8,usc-bom,euc-jp,gb18030,gbk,gb2312,cp936

" 设定不与以前版本兼

set nocompatible

set backspace=indent,eol,start

set nocp

" 设置配色方案

colorscheme murphy

" 显示行号

set nu

" 侦测文件类型

filetype on

" 设置当文件被改动时自动载入

set autoread

"设置字体类型和大小 在窗口下使用 set guifont? 可以看到该命令

set gfn=Monospace/ 10

" 记录历史的行数

set history=100

" 显示语法高亮

syntax enable

syntax on

" 在处理未保存或只读文件的时候,弹出确认

set confirm

" 与windows共享剪贴板

set clipboard+=unnamed

" 载入文件类型插件

filetype plugin on

filetype indent on

" 为特定文件类型载入相关缩进文件

filetype indent on

" 保存全局变量

set viminfo+=!

" 带有如下符号的单词不要被换行分割

set iskeyword+=_,$,@,%,#,-

" 设置鼠标一直可用

set mouse=a

" 高亮当前行

set cursorline

" 命令行高度

set cmdheight=1

" 启动的时候不显示那个援助索马里儿童的提示

set shortmess=atI

" 不让vim发出讨厌的滴滴声

set noerrorbells

" 在被分割的窗口间显示空白,便于阅读

set fillchars=vert:/ ,stl:/ ,stlnc:/

""""""""""""""""""""""""""""

" 文件设置

""""""""""""""""""""""""""""

" 不要备份文件(覆盖文件时不备份)

set nobackup

" 不要生成swap文件,当buffer被丢弃的时候隐藏它

setlocal noswapfile

set bufhidden=hide

" 字符间插入的像素行数目

set linespace=0

" 增强模式中的命令行自动完成操作

set wildmenu

" 置粘贴模式,使得粘贴不错位

" set paste

" 保存文件,用习惯了Ctrl+S了

" nmap <C-s> <esc>:w<CR>

" imap <C-s> <esc>:w<CR>

noremap <C-S> :update<CR>

vnoremap <C-S> <C-C>:update<CR>

inoremap <C-S> <C-O>:update<CR>

imap jj <esc>

imap JJ <esc>

"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""

" 搜索和匹配

"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""

" 高亮显示匹配的括号

set showmatch

" 高亮显示被找到的句子(phrases)

"set hlsearch

" 在搜索时,输入的词句的逐字符高亮(类似firefox的搜索),即输入搜索内容时就显示搜索结果

set incsearch

" 搜索时忽略大小写

set ignorecase

" 不要闪烁

set novisualbell

"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""

" 文本格式和排版

"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""

" 自动格式化

set formatoptions=tcrqn

" 继承前一行的缩进方式,特别适用于多行注释

set autoindent

" 为C程序提供自动缩进

set smartindent

" 使用C样式的缩进

set cindent

" 制表符为4

set tabstop=4

" 统一缩进为4

" 使得按退格键时可以一次删掉 4 个空格

set softtabstop=4

" 设定 << 和 >> 命令移动时的宽度为 4

set shiftwidth=4

" 不要用空格代替制表符

set noexpandtab

" 设置每行120个字符自动换行

set textwidth=120

" 自动切换当前目录为当前文件所在的目录

set autochdir

" 折叠代码

set foldmethod=syntax

" 文件打开时不折叠

set foldlevel=100

"""""""""""""""""""""""""""""""""""""""""""

"自动实例括号

"""""""""""""""""""""""""""""""""""""""""""

inoremap ( ()<ESC>i

inoremap ) <c-r>=ClosePair(')')<CR>

inoremap { {}<ESC>i

inoremap } <c-r>=ClosePair('}')<CR>

inoremap [ []<ESC>i

inoremap ] <c-r>=ClosePair(']')<CR>

inoremap < <><ESC>i

inoremap > <c-r>=ClosePair('>')<CR>

inoremap ' ''<ESC>i

inoremap " ""<ESC>i

function ClosePair(char)

if getline('.')[col('.') - 1] == a:char

return "/<Right>"

else

return a:char

endif

endf

"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""

""""""""""""""""

" set mapleader

""""""""""""""""

"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""

let mapleader = ","

" platform

function! MySys()

if has("win32")

return "windows"

else

return "linux"

endif

endfunction

" if file not opened, create a new tab, or switch to the opened file

function! SwitchToBuf(filename)

" find in current tab

let bufwinnr = bufwinnr(a:filename)

if bufwinnr != -1

exec bufwinnr . "wincmd w"

return

else

" search each tab

tabfirst

let tb = 1

while tb <= tabpagenr("$")

let bufwinnr = bufwinnr(a:filename)

if bufwinnr != -1

exec "normal " . tb . "gt"

exec bufwinnr . "wincmd w"

return

endif

tabnext

let tb = tb +1

endwhile

" not exist, new tab

exec "tabnew " . a:filename

endif

endfunction

" fast edit .vimrc

if MySys() == 'linux'

" fast reloading of the .vimrc

map <silent> <leader>ss :source ~/.vimrc<cr>

" fast editing of the .vimrc

map <silent> <leader>ee :call SwitchToBuf("~/.vimrc")<cr>

" when .vimrc is edited, reload it

autocmd! bufwritepost .vimrc source ~/.vimrc

elseif MySys() == 'windows'

" Set helplang

set helplang=cn

"Fast reloading of the _vimrc

map <silent> <leader>ss :source ~/_vimrc<cr>

"Fast editing of _vimrc

map <silent> <leader>ee :call SwitchToBuf("~/_vimrc")<cr>

"When _vimrc is edited, reload it

autocmd! bufwritepost _vimrc source ~/_vimrc

endif

if MySys() == 'windows'

source $VIMRUNTIME/mswin.vim

behave mswin

endif

""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""

"""""""""""""""""""""""""""""""""""""""""""""""""

" 状态行相关动作

"""""""""""""""""""""""""""""""""""""""""""""""""

""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""

" 显示状态栏 (默认值为 1, 无法显示状态栏)

set laststatus=2

" 状态行颜色

highlight StatusLine guifg=#FFFFFF guibg=#00008B

highlight StatusLineNC guifg=#FFFFFF guibg=#00008B

function! CurDir()

let curdir = substitute(getcwd(), '/Users/amir/', "~/", "g")

return curdir

endfunction

"""""""""""""""""""""""""""""""

"状态行显示内容

"""""""""""""""""""""""""""""""

" %F 当前文件名

" %m 当前文件修改状态

" %r 当前文件是否只读

" %Y 当前文件类型

" %{&fileformat} 当前文件编码

" %b 当前光标处字符的 ASCII 码值

" %B 当前光标处字符的十六进制值

" %l 当前光标行号

" %c 当前光标列号

" %V 当前光标虚拟列号 (根据字符所占字节数计算)

" %p 当前行占总行数的百分比

" %% 百分号

" %L 当前文件总行数

set statusline=/ %F%m%r%h/ %w/ / CWD:/ %r%{CurDir()}%h/ / / Line:/ %l/%L:%c

" 设置在状态行显示的信息如下:

set completeopt=menu

let NERDShutUp=1

map fg : Dox<cr>

let g:DoxygenToolkit_authorName="wangye"

let g:DoxygenToolkit_licenseTag="My own license/<enter>"

let g:DoxygenToolkit_undocTag="DOXIGEN_SKIP_BLOCK"

let g:DoxygenToolkit_briefTag_pre = "@brief/t"

let g:DoxygenToolkit_paramTag_pre = "@param/t"

let g:DoxygenToolkit_returnTag = "@return/t"

let g:DoxygenToolkit_briefTag_funcName = "no"

let g:DoxygenToolkit_maxFunctionProtoLines = 30

color lucius

"minibufexplorer插件

let g:winManagerWindowLayout = "FileExplorer"

"NERDTree plugin

let NERDTreeWinPos = "right" "where NERD tree window is placed on the screen

let NERDTreeWinSize = 31 "size of the NERD tree

nmap <F8> <ESC>:NERDTreeToggle<RETURN>" Open and close the NERD_tree.vim separately

let NERDShutUp=1

autocmd BufEnter * call DoWordComplete()

set nu

set t_Co=256
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐