Mac 下VIM配置

时间:2022-09-05 00:23:31

Mac下VIM配置

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

_______________________________________________________________________

Download

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

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.

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.

Legacy Mac OS X downloads

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

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.

_________________________________________________________________________________

根据不同的Mac OSX 操作系统版本,下载自己所需要的MacVim!

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

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模式之前的位置(即以前编辑过的位置)。

    部分效果如下图:

    Mac 下VIM配置

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

  • 一般安装过程如下:

    1. sudo sh (会提示你输入当前用户的密码)
    2. cp mvim /usr/bin
    3. cd /usr/bin
    4. 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命令,可以得到配置文件的详细信息。

Mac 下VIM配置

注意:如果执行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

Mac 下VIM配置的更多相关文章

  1. Mac下Vim配置语法高亮

    设置终端的字体颜色 如图,打开终端然后,选择偏好设置,再选择描述文件,再窗口左侧可以选择系统配置好的,或者你也可以自定义,最后别忘了把你的配置设置成默认就行 Vim语法高亮设置 只需要找到vimrc配 ...

  2. MAC下Xcode配置opencv(2017&period;3&period;29最新实践,亲测可行)

    本文原创,未经同意,谢绝转载!(转载请告知本人并且经过本人同意--By Pacific-hong) 本人小硕一枚,因为专业方向图像相关,所以用到opencv,然后网上MAC下Xcode配置opencv ...

  3. Mac下Vim编辑快捷键小结&lpar;移动光标&rpar;

    Mac下Vim编辑快捷键小结(移动光标) 1.移动到行尾"$",移动到行首"0"(数字),移动到行首第一个字符处"^" 2.移动到段首&qu ...

  4. MAC下Xcode配置opencv(2017&period;3&period;29最新实践,亲测可行)(转)

    本文原创,未经同意,谢绝转载!(转载请告知本人并且经过本人同意--By Pacific-hong) 本人小硕一枚,因为专业方向图像相关,所以用到opencv,然后网上MAC下Xcode配置opencv ...

  5. Mac下 如何配置虚拟机软件Parallel Desktop--超详细

    Mac下 如何配置虚拟机软件Pparallel Desktop--超详细 Mac 的双系统解决方案有两种,一种是使用Boot Camp分区安装独立的Windows,一种是通过安装Parallels D ...

  6. CentOS 6&period;5 下Vim 配置图解

    分享个CentOS 6.5 下Vim 配置图文详解,希望对大家有所帮助. 1. 登录并进入你常用的用户名下,查看其主目录 命令: # su xxx $ cd xxx $ ls -a 2.查看并建立目录 ...

  7. Mac下iTerm2配置lrzsz功能

    Mac下iTerm2配置lrzsz功能 rz,sz是Linux/Unix同Windows进行ZModem文件传输的命令行工具. 优点就是不用再开一个sftp工具登录上去上传下载文件. 近期在mac上通 ...

  8. 2016年最新mac下vscode配置golang开发环境支持debug

    网上目前还找不到完整的mac下golang环境配置支持,本人配置成功,现在整理分享出来. mac最好装下xcode,好像有依赖关系安装Homebrew打开终端窗口, 粘贴脚本执行/usr/bin/ru ...

  9. Mac下如何配置环境变量

    以前都是在Windows平台上开发,在配置一些框架的时候,为了能够在命令行中调用,一般都会配置bin目录到环境变量中,这是为了让命令行在执行的时候,能够查找到对应的执行文件. 现在工作使用Mac,配置 ...

随机推荐

  1. 【转载】使用pandas进行数据清洗

    使用pandas进行数据清洗 本文转载自:蓝鲸的网站分析笔记 原文链接:使用python进行数据清洗 目录: 数据表中的重复值 duplicated() drop_duplicated() 数据表中的 ...

  2. iOS--异步下载

    #import "ViewController.h"#import "UIImageView+WebCache.h"@interface ViewControl ...

  3. css教程

    网址:http://www.aa25.cn/layout/index.shtml

  4. socket&lowbar;server源码剖析、python作用域、IO多路复用

    本节内容: 课前准备知识: 函数嵌套函数的使用方法: 我们在使用函数嵌套函数的时候,是学习装饰器的时候,出现过,由一个函数返回值是一个函数体情况. 我们在使用函数嵌套函数的时候,最好也这么写. def ...

  5. CentOS&lpar;RHEL&rpar; 操作备忘

    1.安装中文语言包及切换 yum groupinstall chinese-support vi /etc/sysconfig/i18n change en_US to zh_CN 2.用户自动登录 ...

  6. HDU 4358 Boring counting 树状数组&plus;思路

    研究了整整一天orz……直接上官方题解神思路 #include <cstdio> #include <cstring> #include <cstdlib> #in ...

  7. Q&lowbar;INIT&lowbar;RESOURCE宏

      QT应用程序,无论是exe,staticlib,还是dll程序,都可以通过qrc文件来导入各种资源. qrc会将这些资源文件转换为相应代码,参与应用程序的编译. 这样做的好处就是:简化了应用程序发 ...

  8. js 做账单处理

    <%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding= ...

  9. &lbrack;20171225&rsqb;RMAN-06808&colon; SECTION SIZE cannot be used when piece limit is in effect&period;txt

    [20171225]RMAN-06808: SECTION SIZE cannot be used when piece limit is in effect.txt --//朋友拿我的一些例子来测试 ...

  10. Win记录-配置Windows Server R 2008多用户远程连接(仅做参考)

    1.计算机管理下用户组下新建用户 2.系统属性下远程控制加入用户,设置允许运行任何远程桌面 3.运行->gpedit.msc->计算机配置->管理模板->windows 组件- ...