Vim 是Linux系统下超级、超级、超级强大的编辑软件,所以要想熟练的使用和学习 Linux 可以说 Vim 是个永远无法跨越的存在,明月最近在体验学习 Hexo 博客的时候就深深的感受到了这一点儿,仅仅是将 Vim 作为一个简单的编辑软件来使用是远远不够的,所以要在这方面加强学习了,今天就以 Vim 安装和管理插件的 Vundle 给 Vim 安装支持 MarkDown 语法高亮显示和实时预览功能插件为开始深入学习 Vim 的开篇学习笔记。

12930284.png

Vim 中杀手级的插件 Vundle 简介

Vundle 是 Vim bundle 的简称,是一个 Vim 插件管理器。用户需要做的只是去 GitHub 上找到自己想要的插件的名字,安装,更新和卸载都可有 Vundle 来完成了。

Vundle 允许你做:

  • 在.vimrc中跟踪和管理插件
  • 安装特定格式的插件(a.k.a. scripts/bundle)
  • 更新特定格式插件
  • 通过插件名称搜索Vim scripts中的插件
  • 清理未使用的插件
  • 可以通过单一按键完成以上操作,详见interactive mode

vundle-managing-vim-plugins-with-sanity-1-638.jpg

Vundle 的安装

git clone https://github.com/VundleVim/Vundle.vim.git ~/.vim/bundle/Vundle.vim

默认安装在/.vim/bundle/vundle目录下。

Vundle 配置说明

插件有三种类型:

  1. GitHub 上vim-scripts仓库的插件
  2. GitHub 上非vim-scripts仓库的插件
  3. 不在 GitHub 上的插件

对于不同的插件, Vundle 自动管理和下载插件的时候,有不同的地址填写方法,有如下三类:

  1. 在 GitHub 上vim-scripts用户下的仓库,只需要写出repos(仓库)名称
  2. 在 GitHub 其他用户下的repos, 需要写出”用户名/repos名”
  3. 不在 GitHub 上的插件,需要写出git全路径

配置 Vundle 插件

可以在终端通过 Vim 打开~/.vimrc文件,

$vim ~/.vimrc

也可以直接在目录中打开(快捷键ctrl+H显示隐藏文件)。
将以下加在.vimrc文件中,加入之后保存之后就可以使用 Vundle 了。

添加的配置信息(样例)

注:以后安装新插件就直接编辑vimrc,添加plugin就行了,在这里我们添加的plugin只是例子,你可以不安装这些插件,换上自己需要安装的插件。

set nocompatible              " 去除VI一致性,必须要添加
filetype off                  " 必须要添加

" 设置包括vundle和初始化相关的runtime path
set rtp+=~/.vim/bundle/Vundle.vim
call vundle#begin()
" 另一种选择, 指定一个vundle安装插件的路径
"call vundle#begin('~/some/path/here')

" 让vundle管理插件版本,必须
Plugin 'VundleVim/Vundle.vim'

" 以下范例用来支持不同格式的插件安装.
" 请将安装插件的命令放在vundle#begin和vundle#end之间.
" Github上的插件
" 格式为 Plugin '用户名/插件仓库名'
Plugin 'tpope/vim-fugitive'
" 来自 http://vim-scripts.org/vim/scripts.html 的插件
" Plugin '插件名称' 实际上是 Plugin 'vim-scripts/插件仓库名' 只是此处的用户名可以省略
Plugin 'L9'
" 由Git支持但不再github上的插件仓库 Plugin 'git clone 后面的地址'
Plugin 'git://git.wincent.com/command-t.git'
" 本地的Git仓库(例如自己的插件) Plugin 'file:///+本地插件仓库绝对路径'
Plugin 'file:///home/gmarik/path/to/plugin'
" 插件在仓库的子目录中.
" 正确指定路径用以设置runtimepath. 以下范例插件在sparkup/vim目录下
Plugin 'rstacruz/sparkup', {'rtp': 'vim/'}
" 安装L9,如果已经安装过这个插件,可利用以下格式避免命名冲突
Plugin 'ascenator/L9', {'name': 'newL9'}

" 你的所有插件需要在下面这行之前
call vundle#end()            " 必须
filetype plugin indent on    " 必须 加载vim自带和插件相应的语法和文件类型相关脚本
" 忽视插件改变缩进,可以使用以下替代:
"filetype plugin on
"
" 常用的命令
" :PluginList       - 列出所有已配置的插件
" :PluginInstall     - 安装插件,追加 `!` 用以更新或使用 :PluginUpdate
" :PluginSearch foo - 搜索 foo ; 追加 `!` 清除本地缓存
" :PluginClean      - 清除未使用插件,需要确认; 追加 `!` 自动批准移除未使用插件
"
" 查阅 :h vundle 获取更多细节和wiki以及FAQ
" 将你自己对非插件片段放在这行之后

安装需要的插件

将想要安装的插件,按照地址填写方法,将地址填写在vundle#beginvundle#end之间就可以保存之后,有两种方法安装插件。

  • (1) 运行 vim ,再运行 :PluginInstall

vim
:PlugInstall

  • (2) 通过命令行直接安装 vim +PluginInstall +qall

vim +PluginInstall +qall

安装完成之后,插件就可以使用。

移除不需要的插件

编辑.vimrc文件移除的你要移除的插件所对应的plugin那一行。

保存退出当前的vim

重新打开vim,输入命令BundleClean。

其他常用命令

  • 更新插件BundleUpdate
  • 列出所有插件BundleList
  • 查找插件BundleSearch

MarkDown.jpg

通过 Vim 插件来完成对 MarkDown 的完美支持

安装完成了 Vundle 后,我们就可以来通过 Vundle 来安装和管理 Vim 的插件了。为了让 Vim 支持 MarkDown 语法高亮显示就需要安装vim-markdown插件了。当然还有针对 MarkDown 一系列的插件需要安装,如:previm、ColorScheme、nerdtree等等,这些插件来配合已达到 Vim 对 MarkDown 的完美支持,这些都是通过 Vundle 就可以来完成了,下面具体的讲解一下。

安装Markdown插件

vim-markdown是一个让Markdown语法高亮且有相关配置的插件。

用 Vundle 来安装很方便,只需要在.vimrc中配置以下参数,然后重新打开 Vim 使用命令PluginInstall开始安装,注意:tabular必须在vim-markdown前面。
Plugin 'godlygeek/tabular'
Plugin 'plasticboy/vim-markdown'
安装完后打开格式为md的文件就可以体验到Markdown语法高亮的效果了。

上述的安装方法后打开md文件是无效的,经过明月实测后发现必须用下面的方法来手动完成vim-markdown插件的安装配置才能生效。

cd ~/.vim/bundle
git clone https://github.com/tamlok/vim-markdown.git

然后将/root/.vim/bundle/vim-markdown文件夹下的plugin目录(存放插件)、syntax目录(存放语法的解析文件)、ftdetect目录(存放插件对哪些后缀的文件生效)至少这三个目录复制到/root/.vim/目录下才会生效的。

网上的文章这里都是个“坑”呀,甚至 Vundle 里安装都是个“坑”根本就不会生效,只有上述的办法才可以。注意!!!

安装previm

previm是一个预览Markdown的插件,支持实时更新。

如果同时安装了open-browser.vim这个插件,就不用再配置相关参数,直接在编辑Markdown文本时,使用:PrevimOpen就可以预览文本了,并且修改保存后可以实时更新预览。

Plugin 'kannokanno/previm'
Plugin 'tyru/open-browser.vim'

安装ColorScheme插件

vim-colorschemes是一个支持各种颜色主题的插件,方便配置。

同样用 Vundle 安装插件:

Plugin 'flazz/vim-colorschemes'

安装好后用命令:`colorscheme solarized`更换主题,`solarized`是主题名。`colorscheme`自带很多主题,可以去其  GitHub 托管地址上查询,也可以自己下载其他主题插件。

 安装nerdtree插件

nerdtree是一个树状目录插件,有了这个插件 Vim 将更加方便。

还是同样用 Vundle 安装插件:

Plugin 'scrooloose/nerdtree'

下面这个命令粘贴在·vimrc中可以在打开 Vim 时自动打开NERDTree目录。

autocmd vimenter * NERDTree

将下面这条配置命令粘贴在.vimrc中可以用快捷键ctrl+n切换NEADTree目录的开关(可以改成其他你想要的快捷键):

map <C-n> :NERDTreeToggle<CR>

将下面这条配置命令粘贴在.vimrc中可以在只有NERDTree目录时自动关闭:

autocmd bufenter * if (winnr("$") == 1 && exists("b:NERDTree") && b:NERDTree.isTabTree()) | q | endif

OK,搞定完工,至此你的 Vim 已经可以说是完美的支持 MarkDown 语法和文件编辑、实时预览等等功能了,具体效果大家自行体验吧,反正我得去用 Vim 编辑一篇 Hexo 文章爽一下了!嘿嘿!

最后修改:2018 年 04 月 17 日
如果觉得我的文章对你有用,请随意赞赏