Mac 下VIM配置

Mac下VIM配置 

首先,咱们去这里下载MacVim,也可用这个网址:(http://code.google.com/p/macvim/),进入后的界面以下:javascript

_______________________________________________________________________php

 

Download

Download MacVim 7.3 (snapshot 65) for OS X 10.8 (Mountain Lion). (Released September 1, 2012.)css

A list of changes as well as the latest snapshot for Mac OS X 10.6 and 10.7 can be found on the change log page.html

Note that there is currently no build for (Mountain) Lion that has been blessed as "stable", whereas a stable build for Snow Leopard is available below. That being said, the snapshot linked to above should be considered stable enough for everyday usage.java

Legacy Mac OS X downloads

Choose the appropriate download depending on your version of Mac OS X:python

 

MacVim is distributed under a Charityware license (type :h license inside MacVim for details). If you find MacVim a useful addition to your life please consider helping needy children in Uganda.linux

_________________________________________________________________________________git

根据不一样的Mac OSX 操做系统版本,下载本身所须要的MacVim!github

        若是下载的是Download MacVim 7.3 (snapshot 65) for OS X 10.8 (Mountain Lion).,则下载的文件是MacVim-snapshot-65.tbz这个包里面有三个文件(MacVim、mvim、reader.txt),express

Mac下VIM配置

把MacVim这个东东丢到/应用程序/这个目录下,

Mac下VIM配置

这是直接从应用程序中启动的!
Mac下VIM配置

于Mac下的程序大部分都是双击可用的,因此就没太在乎mvim这个东东,后来琢磨了README.txt文件,

打开README.txt文件,是英文,全文以下:

————————————————————————————

This archive contains a snapshot release of MacVim 7.3.  It requires

Mac OS X 10.8 (Mountain Lion) or later.  It will NOT run on earlier versions of

Mac OS X!

To install, drag the MacVim icon into the Applications folder.

For usage instructions, please start MacVim and type ":h macvim" (without the

quotes). 

This archive also contains the script "mvim" which can be used to start MacVim

from Terminal.  Type ":h mvim" in MacVim for help on how to install it.

——————————————————————————————

发现原来经过它就能够在终端启动MacVim了(我果然那么菜么……)。

  • 很简单,把mvim这个东东丢到/usr/bin/这个目录下,(只有管理员账号才能够看到/usr/bin等文件).

Mac下VIM配置

这是利用终端直接启动的VIM

Mac下VIM配置

  •       提及配置Vim,首先要知道三个配置文件:vimrc,gvimrc和exrc。这些配置文件的位置油Vim的安装位置和操做系统决定。

    vimrc

           vimrc是Vim最主要的配置文件,它有两个版本:全局版本(global)和用户版本(personal)。全局vimrc文件在Vim的安装目录中,个人电脑是Mac,因此其路径是

    /usr/share/vim/vimrc

           假如你不知道全局vimrc的位置,能够打开Vim,在普通模式(Normal)下输入下面的命令获得它的位置:

    echo  $VIM(注意大小写)

           用户版本的vimrc文件在当前用户的主目录下,主目录的位置依赖于操做系统。Mac下的用户vimrc文件路径为:

    /Users/用户名/.vimrc(文件名前面的”.”表明这个文件是隐藏文件)

           你能够在Vim的普通模式下输入下面的命令,查找用户主目录的位置:

    :echo  $HOME

           可是Mac下默认是没有用户vimrc的,因此须要你本身建立一个。

           无论怎么改用户版的vimrc文件,其中的内容都是是覆盖在全局vimrc文件中设置的内容,这就意味着你能够不须要去改变全局vimrc文件来进行配置vim,只须要修改用户vimrc文件。

    gvimrc

           gvimrc文件是Gvim的配置文件,和vimrc很类似,而且是放在同一个目录下的,也分为全局版和用户版。这个文件是用来设置只有Gvim才能使用的GUI设置。我感受Vim比Gvim好用,因此没有管这个文件。

    exrc

           exrc文件是用做与vi或ex向后兼容的,它也和vimrc放在同一个目录,固然也分全局版和用户版。然而,除非你想用vi兼容的模式来使用Vim,不然你更本不会用到这个文件。固然通常人都不会用vi兼容模式来使用Vim的。

     

           而后是配置本身喜欢的Vim。

           首先建立用户版vimrc(Mac下默认是没有的),你能够在用户主目录下本身建立一个空的用户版vimrc文件:

  • sudo sh (会提示你输入当前用户的密码)

    mkdir  ~/.vimrc

           也能够将全局版vimrc文件复制到用户主目录下作为用户版vimrc:

    sudo cp  /usr/share/vim/vimrc  ~/.vimrc

           这里说明一下,~/就是用户主目录,至关于/Users/用户名/。

            通常推荐后一种作法。

      下载好以后咱们能够解压到桌面或者随便哪一个地方均可以,最好是放到工具栏里面或者放到应用程序里,比较好找。

    而后,咱们就须要进行配置了,MacVim不像Windows下面的Vim有配置文件等等,固然MacVim也是支持的,不过不少都要手动建立,这也就是为何我花了差很少半天的时间才弄出来,虽然我写在这里了,你看上去很简单,可是其实找起来仍是很麻烦的。

    咱们先建立并配置配置文件,命令行下操做。

    • cd ~/ :到根目录。
    • vim temp.txt :建立一个文本文件,而后在里面写配置。
    • mv temp.txt .gvimrc :将文本文件变成gvimrc文件。

    其实上面的第二个步骤能够说多余,方便新手看,直接用ls -a看隐藏文件而后建立和编辑.gvimrc便可。

    而后就是要安装插件了,这里很简单,可是很难找,我就不卖关子直接说了算了。

    • cd ~/
    • mkdir .vim

    上面就建立了MacVim的VIM文件夹,而后咱们就要手动建立文件夹了,建立如下文件夹(们)。

    after autoload colors compiler doc ftplugin indent keymap plugin syntax

    这个时候,若是咱们要安装插件的话,直接像Windows的Vim同样讲插件拷贝到这个目录便可,很简单把,如今咱们就能够在Mac上享受咱们的VIM开发带来的快感了。

     

    接下来打开用户vimrc文件并在里面添加各类Vim命令。将个人Vim文件复制到下面:

     

    " Configuration file for vim

    set modelines=0" CVE-2007-2438

     

    " Normally we use vim-extensions. If you want true vi-compatibility

    " remove change the following statements

    set nocompatible" Use Vim defaults instead of 100% vi compatibility

    set backspace=2" more powerful backspacing

     

    syntax on

    " 语法高亮

     

    autocmd InsertLeave * se nocul

    autocmd InsertEnter * se cul

    " 用浅色高亮当前行

     

    set smartindent

    " 智能对齐

     

    set autoindent

    " 自动对齐

     

    set confirm

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

     

    set tabstop=4

    " Tab键的宽度

     

    set softtabstop=4

    set shiftwidth=4

    "  统一缩进为4

     

    set noexpandtab

    " 不要用空格代替制表符

     

    set number

    " 显示行号

     

    set history=50

    " 历史纪录数

     

    set hlsearch

    set incsearch

    " 搜索逐字符高亮

     

    set gdefault

    " 行内替换

     

    set encoding=utf-8

    set fileencodings=utf-8,ucs-bom,shift-jis,gb18030,gbk,gb2312,cp936,utf-16,big5,euc-jp,latin1

    " 编码设置

     

    colorscheme torte

    " 设置颜色主题

     

    "set guifont=Menlo:h16:cANSI

    " 设置字体

     

    set langmenu=zn_CN.UTF-8

    set helplang=cn

    " 语言设置

     

    set cmdheight=2

    " 命令行(在状态行)的高度,默认为1,这里是2

     

    set ruler

    " 在编辑过程当中,在右下角显示光标位置的状态行

     

    set laststatus=2

    " 老是显示状态行

     

    set showcmd

    " 在状态行显示目前所执行的命令,未完成的指令片断亦会显示出来

     

    set scrolloff=3

    " 光标移动到buffer的顶部和底部时保持3行距离

     

    set showmatch

    " 高亮显示对应的括号

     

    set matchtime=5

    " 对应括号高亮的时间(单位是十分之一秒)

     

    set autowrite

    " 在切换buffer时自动保存当前文件

     

    set wildmenu

    " 加强模式中的命令行自动完成操做

     

    set linespace=2

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

     

    set whichwrap=b,s,<,>,[,]

    " 开启Normal或Visual模式下Backspace键,空格键,左方向键,右方向键,Insert或replace模式下左方向键,右方向键跳行的功能。

     

    filetype plugin indent on

    " 分为三部分命令:file on, file plugin on, file indent on.分别表示自动识别文件类型,用文件类型脚本,使用缩进定义文件。

     

    "==================自定义的键映射======================

     

    vnoremap $1 <esc>`>a)<esc>`<i(<esc>

    vnoremap $2 <esc>`>a]<esc>`<i[<esc>

    vnoremap $3 <esc>`>a}<esc>`<i{<esc>

    vnoremap $$ <esc>`>a"<esc>`<i"<esc>

    vnoremap $q <esc>`>a'<esc>`<i'<esc>

    vnoremap $e <esc>`>a"<esc>`<i"<esc>

    " 括号自动生成

     

    map <F7> :if exists("syntax_on") <BAR>

    \    syntax off <BAR><CR>

    \  else <BAR>

    \syntax enable <BAR>

    \  endif

    " 单键<F7>控制syntax on/off。缘由是有时候颜色太多会妨碍阅读。

     

    map <F5> :call CompileRunGcc()<CR>

    func! CompileRunGcc()

    exec "w"

    exec "!gcc % -o %<"

    exec "! ./%<"

    endfunc

    " <F5>编译和运行C程序

     

    map <F6> :call CompileRunGpp<CR>

    func! CompileRunGpp()

    exec "w"

    exec "!g++ % -o %<"

    exec "! ./<"

    endfunc

    " <F6>编译和运行C++程序

     

    " Don't write backup file if vim is being called by "crontab -e"

    au BufWrite /private/tmp/crontab.* set nowritebackup

    " Don't write backup file if vim is being called by "chpass"

    au BufWrite /private/etc/pw.* set nowritebackup

     

     

     

     

           “ 后面的一行都是注释,有的命令暂时用不到,因此也注释掉了。

    其中set backspace这一命令有两种写法:后面接数字或其余属性,

    set backspace=0     等同于 set backspace= (Vi 兼容)

    set backspace=1     等同于 set backspace=indent,eol

    set backspace=2     等同于 set backspace=indent,eol,start

          indent,eol,start这三项内容分别指定了Vim能够删除位于行首的空格,断行,以及开始进入Insert模式以前的位置(即之前编辑过的位置)。

          部分效果以下图:

     

     

          不得不说vim-handbook-cn-71实在是一本学习Vim必不可少的书,很是全面地介绍了Vim地各类用法。

  •      通常安装过程以下:

    1. sudo sh (会提示你输入当前用户的密码) 
    2.   
    3. cp mvim /usr/bin
    4.  
    5. cd /usr/bin
    6.   
    7. chown yarin(用户名):admin(用户组) mvim
    后把MacVim放到你的应用程序也就是/Applications目录下(必须放到应用程序目录下,不然mvim会找不到MacVim的可执行文件)。
  • 而后就能够在终端经过mvim XXX文件名来启动MacVim修改文件了。

 

      这个会比较蛋疼,由于估计不会有几我的喜欢透明窗体的编辑器,看起来酷,可是会影响到对代码的阅读。

  • Preferences(配置)>Advanced(高级)> 把 Use expermental renderer(使用试验渲染)勾上。
  • 在.gvimrc或者.vimrc里面加入set transparency=10这一句,后面的数值是百分比,10就是10%也就是0.1的透明度。
  • 打开一个新窗口应该就能够看到效果了。

嗯……其实,好像没说什么有用的东西,都是些无关紧要的小技巧,发一个我配置好的上来看看吧:

 

 

vim 配置文件 ,高亮+自动缩进+行号+折叠+优化

将一下代码copy到 用户目录下 新建文件为  .vimrc
保存便可生效; 若是想全部用户生效 请修改 /etc/vimrc (建议先cp一份)
"=========================================================================
" DesCRiption: 适合本身使用的vimrc文件,for Linux/Windows, GUI/Console
"
" Last Change: 2010年08月02日 15时13分 
"
" Version: 1.80
"
"=========================================================================

set nocompatible " 关闭 vi 兼容模式
syntax on " 自动语法高亮
colorscheme molokai " 设定配色方案
set number " 显示行号
set cursorline " 突出显示当前行
set ruler " 打开状态栏标尺
set shiftwidth=4 " 设定 << 和 >> 命令移动时的宽度为 4
set softtabstop=4 " 使得按退格键时能够一次删掉 4 个空格
set tabstop=4 " 设定 tab 长度为 4
set nobackup " 覆盖文件时不备份
set autochdir " 自动切换当前目录为当前文件所在的目录
filetype plugin indent on " 开启插件
set backupcopy=yes " 设置备份时的行为为覆盖
set ignorecase smartcase " 搜索时忽略大小写,但在有一个或以上大写字母时仍保持对大小写敏感
set nowrapscan " 禁止在搜索到文件两端时从新搜索
set incsearch " 输入搜索内容时就显示搜索结果
set hlsearch " 搜索时高亮显示被找到的文本
set noerrorbells " 关闭错误信息响铃
set novisualbell " 关闭使用可视响铃代替呼叫
set t_vb= " 置空错误铃声的终端代码
" set showmatch " 插入括号时,短暂地跳转到匹配的对应括号
" set matchtime=2 " 短暂跳转到匹配括号的时间
set magic " 设置魔术
set hidden " 容许在有未保存的修改时切换缓冲区,此时的修改由 vim 负责保存
set guioptions-=T " 隐藏工具栏
set guioptions-=m " 隐藏菜单栏
set smartindent " 开启新行时使用智能自动缩进
set backspace=indent,eol,start
" 不设定在插入状态没法用退格键和 Delete 键删除回车符
set cmdheight=1 " 设定命令行的行数为 1
set laststatus=2 " 显示状态栏 (默认值为 1, 没法显示状态栏)
set statusline=\ %<%F[%1*%M%*%n%R%H]%=\ %y\ %0(%{&fileformat}\ %{&encoding}\ %c:%l/%L%)\ 
" 设置在状态行显示的信息
set foldenable " 开始折叠
set foldmethod=syntax " 设置语法折叠
set foldcolumn=0 " 设置折叠区域的宽度
setlocal foldlevel=1 " 设置折叠层数为
" set foldclose=all " 设置为自动关闭折叠 
" nnoremap <space> @=((foldclosed(line('.')) < 0) ? 'zc' : 'zo')<CR>
" 用空格键来开关折叠


" return OS type, eg: windows, or linux, mac, et.st..
function! MySys()
if has("win16") || has("win32") || has("win64") || has("win95")
return "windows"
elseif has("unix")
return "linux"
endif
endfunction

" 用户目录变量$VIMFILES
if MySys() == "windows"
let $VIMFILES = $VIM.'/vimfiles'
elseif MySys() == "linux"
let $VIMFILES = $HOME.'/.vim'
endif

" 设定doc文档目录
let helptags=$VIMFILES.'/doc'

" 设置字体 以及中文支持
if has("win32")
set guifont=Inconsolata:h12:cANSI
endif

" 配置多语言环境
if has("multi_byte")
" UTF-8 编码
set encoding=utf-8
set termencoding=utf-8
set formatoptions+=mM
set fencs=utf-8,gbk

if v:lang =~? '^\(zh\)\|\(ja\)\|\(ko\)'
set ambiwidth=double
endif

if has("win32")
source $VIMRUNTIME/delmenu.vim
source $VIMRUNTIME/menu.vim
language messages zh_CN.utf-8
endif
else
echoerr "Sorry, this version of (g)vim was not compiled with +multi_byte"
endif

" Buffers操做快捷方式!
nnoremap <C-RETURN> :bnext<CR>
nnoremap <C-S-RETURN> :bprevious<CR>

" Tab操做快捷方式!
nnoremap <C-TAB> :tabnext<CR>
nnoremap <C-S-TAB> :tabprev<CR>

"关于tab的快捷键
" map tn :tabnext<cr>
" map tp :tabprevious<cr>
" map td :tabnew .<cr>
" map te :tabedit
" map tc :tabclose<cr>

"窗口分割时,进行切换的按键热键须要链接两次,好比从下方窗口移动
"光标到上方窗口,须要<c-w><c-w>k,很是麻烦,如今重映射为<c-k>,切换的
"时候会变得很是方便.
nnoremap <C-h> <C-w>h
nnoremap <C-j> <C-w>j
nnoremap <C-k> <C-w>k
nnoremap <C-l> <C-w>l

"一些不错的映射转换语法(若是在一个文件中混合了不一样语言时有用)
nnoremap <leader>1 :set filetype=xhtml<CR>
nnoremap <leader>2 :set filetype=css<CR>
nnoremap <leader>3 :set filetype=javascript<CR>
nnoremap <leader>4 :set filetype=php<CR>

" set fileformats=unix,dos,mac
" nmap <leader>fd :se fileformat=dos<CR>
" nmap <leader>fu :se fileformat=unix<CR>

" use Ctrl+[l|n|p|cc] to list|next|previous|jump to count the result
" map <C-x>l <ESC>:cl<CR>
" map <C-x>n <ESC>:cn<CR>
" map <C-x>p <ESC>:cp<CR>
" map <C-x>c <ESC>:cc<CR>


" 让 Tohtml 产生有 CSS 语法的 html
" syntax/2html.vim,能够用:runtime! syntax/2html.vim
let html_use_css=1

" Python 文件的通常设置,好比不要 tab 等
autocmd FileType python set tabstop=4 shiftwidth=4 expandtab
autocmd FileType python map <F12> :!python %<CR>

" 选中状态下 Ctrl+c 复制
vmap <C-c> "+y

" 打开javascript折叠
let b:javascript_fold=1
" 打开javascript对dom、html和css的支持
let javascript_enable_domhtmlcss=1
" 设置字典 ~/.vim/dict/文件的路径
autocmd filetype javascript set dictionary=$VIMFILES/dict/javascript.dict
autocmd filetype css set dictionary=$VIMFILES/dict/css.dict
autocmd filetype php set dictionary=$VIMFILES/dict/php.dict

"-----------------------------------------------------------------
" plugin - bufexplorer.vim Buffers切换
" \be 全屏方式查看所有打开的文件列表
" \bv 左右方式查看 \bs 上下方式查看
"-----------------------------------------------------------------


"-----------------------------------------------------------------
" plugin - taglist.vim 查看函数列表,须要ctags程序
" F4 打开隐藏taglist窗口
"-----------------------------------------------------------------
if MySys() == "windows" " 设定windows系统中ctags程序的位置
let Tlist_Ctags_Cmd = '"'.$VIMRUNTIME.'/ctags.exe"'
elseif MySys() == "linux" " 设定windows系统中ctags程序的位置
let Tlist_Ctags_Cmd = '/usr/bin/ctags'
endif
nnoremap <silent><F4> :TlistToggle<CR>
let Tlist_Show_One_File = 1 " 不一样时显示多个文件的tag,只显示当前文件的
let Tlist_Exit_OnlyWindow = 1 " 若是taglist窗口是最后一个窗口,则退出vim
let Tlist_Use_Right_Window = 1 " 在右侧窗口中显示taglist窗口
let Tlist_File_Fold_Auto_Close=1 " 自动折叠当前非编辑文件的方法列表
let Tlist_Auto_Open = 0
let Tlist_Auto_Update = 1
let Tlist_Hightlight_Tag_On_BufEnter = 1
let Tlist_Enable_Fold_Column = 0
let Tlist_Process_File_Always = 1
let Tlist_Display_Prototype = 0
let Tlist_Compact_Format = 1


"-----------------------------------------------------------------
" plugin - mark.vim 给各类tags标记不一样的颜色,便于观看调式的插件。
" \m mark or unmark the word under (or before) the cursor
" \r manually input a regular expression. 用于搜索.
" \n clear this mark (i.e. the mark under the cursor), or clear all highlighted marks .
" \* 当前MarkWord的下一个 \# 当前MarkWord的上一个
" \/ 全部MarkWords的下一个 \? 全部MarkWords的上一个
"-----------------------------------------------------------------


"-----------------------------------------------------------------
" plugin - NERD_tree.vim 以树状方式浏览系统中的文件和目录
" :ERDtree 打开NERD_tree :NERDtreeClose 关闭NERD_tree
" o 打开关闭文件或者目录 t 在标签页中打开
" T 在后台标签页中打开 ! 执行此文件
" p 到上层目录 P 到根目录
" K 到第一个节点 J 到最后一个节点
" u 打开上层目录 m 显示文件系统菜单(添加、删除、移动操做)
" r 递归刷新当前目录 R 递归刷新当前根目录
"-----------------------------------------------------------------
" F3 NERDTree 切换
map <F3> :NERDTreeToggle<CR>
imap <F3> <ESC>:NERDTreeToggle<CR>


"-----------------------------------------------------------------
" plugin - NERD_commenter.vim 注释代码用的,
" [count],cc 光标如下count行逐行添加注释(7,cc)
" [count],cu 光标如下count行逐行取消注释(7,cu)
" [count],cm 光标如下count行尝试添加块注释(7,cm)
" ,cA 在行尾插入 ,而且进入插入模式。 这个命令方便写注释。
" 注:count参数可选,无则默认为选中行或当前行
"-----------------------------------------------------------------
let NERDSpaceDelims=1 " 让注释符与语句之间留一个空格
let NERDCompactSexyComs=1 " 多行注释时样子更好看


"-----------------------------------------------------------------
" plugin - DoxygenToolkit.vim 由注释生成文档,而且可以快速生成函数标准注释
"-----------------------------------------------------------------
let g:DoxygenToolkit_authorName="Asins - asinsimple AT gmail DOT com"
let g:DoxygenToolkit_briefTag_funcName="yes"
map <leader>da :DoxAuthor<CR>
map <leader>df :Dox<CR>
map <leader>db :DoxBlock<CR>
map <leader>dc a <LEFT><LEFT><LEFT>


"-----------------------------------------------------------------
" plugin – ZenCoding.vim 很酷的插件,HTML代码生成
" 插件最新版:http://github.com/mattn/zencoding-vim
" 经常使用命令可看:http://nootn.com/blog/Tool/23/
"-----------------------------------------------------------------


"-----------------------------------------------------------------
" plugin – checksyntax.vim JavaScript常见语法错误检查
" 默认快捷方式为 F5
"-----------------------------------------------------------------
let g:checksyntax_auto = 0 " 不自动检查


"-----------------------------------------------------------------
" plugin - NeoComplCache.vim 自动补全插件
"-----------------------------------------------------------------
let g:AutoComplPop_NotEnableAtStartup = 1
let g:NeoComplCache_EnableAtStartup = 1
let g:NeoComplCache_SmartCase = 1
let g:NeoComplCache_TagsAutoUpdate = 1
let g:NeoComplCache_EnableInfo = 1
let g:NeoComplCache_EnableCamelCaseCompletion = 1
let g:NeoComplCache_MinSyntaxLength = 3
let g:NeoComplCache_EnableSkipCompletion = 1
let g:NeoComplCache_SkipInputTime = '0.5'
let g:NeoComplCache_SnippetsDir = $VIMFILES.'/snippets'
" <TAB> completion.
inoremap <expr><TAB> pumvisible() ? "\<C-n>" : "\<TAB>"
" snippets expand key
imap <silent> <C-e> <Plug>(neocomplcache_snippets_expand)
smap <silent> <C-e> <Plug>(neocomplcache_snippets_expand)


"-----------------------------------------------------------------
" plugin - matchit.vim 对%命令进行扩展使得能在嵌套标签和语句之间跳转
" % 正向匹配 g% 反向匹配
" [% 定位块首 ]% 定位块尾
"-----------------------------------------------------------------


"-----------------------------------------------------------------
" plugin - vcscommand.vim 对%命令进行扩展使得能在嵌套标签和语句之间跳转
" SVN/git管理工具
"-----------------------------------------------------------------


"-----------------------------------------------------------------
" plugin – a.vim
"-----------------------------------------------------------------

在vim启动过程当中,首先将查找配置文件并执行其中的命令。而这些初始化文件通常有vimrc、gvimrc和exrc三种。

利用:version命令,能够获得配置文件的详细信息。

version-vimrc

注意:若是执行gvim,那么$VIMRUNTIME/menu.vim也会被执行。

配置文件位置

vimrc是主配置文件,它有全局和用户两种版本。

全局vimrc文件,存放在Vim的安装目录中。可使用如下命令,肯定Vim的安装目录:

:echo $VIM

默认状况下,系统vimrc存放在如下位置:

Linux: /usr/share/vim/vimrc

Windows: c:\program files\vimrc

用户vimrc文件,存放在用户主目录中。可使用如下命令,肯定用户主目录:

:echo $HOME

默认状况下,用户vimrc存放在如下位置:

Linux: /home/username/.vimrc

Windows: c:\documents and settings\username\_vimrc

注意:用户配置文件优先于系统配置文件。

gvimrc是GVIM的配置文件,它也有全局和用户两种版本,而且存放在与vimrc相同的目录中。

默认状况下,系统gvimrc存放在如下位置:

Linux: /usr/share/vim/gvimrc

Windows: c:\program files\vim\_gvimrc

默认状况下,用户gvimrc存放在如下位置:

Linux: /home/username/.gvimrc

Windows: c:\documents and settings\username\_gvimrc

exrc文件,仅用于向后兼容olvi/ex,它的全局和用户两种版本也放置于vimrc相同的目录里。除非你使用vi-compatible模式,不然不须要关注exrc配置文件。

注意:在Unix和Linux下,vim的配置文件被命名为以点开头的隐藏文件;而在Windows下,配置文件则如下划线开头命名。

编辑配置文件

可使用如下命令,新建缓冲区来编辑配置文件:

:edit $MYVIMRC

也可使用如下命令,新建标签页来编辑配置文件:

:tabedit $MYVIMRC

例如,咱们能够在配置文件中使用如下命令,来设置vim的选项:

:syntax on "打开语法加亮功能

:set shiftwidth=4 "设置缩进宽度为4个空格

其中,单引号(")为注释内容。

应用配置文件

修改配置文件后,须要从新启动Vim,或使用:source命令来应用新的设置:

:source $MYVIMRC

咱们能够在配置文件中增长如下命令,在保存后自动应用配置:

autocmd bufwritepost .vimrc source $MYVIMRC

相关文章
相关标签/搜索