Vundle

Vundle 简介

  • Vundle 是 Vim bundle 的简称,是一个 Vim 插件管理器.

安装

  1. 首先安装 git
  2. 创建一个目录,Vim 的插件将会被下载并且安装在这个目录上。默认情况下,这个目录为~/.vim/bundle。

    mkdir -p ~/.vim/bundle

  3. 现在,使用如下指令安装Vundle。注意Vundle本身也是一个vim插件。因此我们同样把vundle安装到之前创建的目录~/.vim/bundle下。

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

配置

插件有三种类型:

  1. Github 上 vim-scripts 仓库的插件 VIM Script

    • 只需要写出 repos 名称
  2. Github 上非 vim-scripts 仓库的插件(较为常用)
    • 需要写出“用户名/repos名”
    • 例如
     Plugin 'vim-airline/vim-airline'
     或
     Bundle 'vim-airline/vim-airline'
    
  3. 不在 Github 上的插件

    • 例如 git 上的插件,需要写出 git 全路径
  4. vim 的配置文件 ~/.vimrc文件(没有则创建)

    Bill 的相关软件配置文件存在于另外一个repository中

set nocompatible

vim 是 vi 的最流行的加强版。它在 vi 的基础上增加了很多功能,但就不与 vi 完全兼容了。
set compatible 就是让 vim 关闭所有扩展的功能,尽量模拟 vi 的行为。

但这样就不应用 vim 的很多强大功能,所以一般没有什么特殊需要的话(比如执行很老的 vi 脚本),都要在 vim 的配置开始,写上 set nocompatible,关闭兼容模式。由于这个选项是最最基础的选项,会连带很多其它选项发生变动(称作副作用),所以它必需是第一个设定的选项。

filetype—- 文件类型检测

  • https://blog.csdn.net/u013291076/article/details/40016639

  • vim中执行
    • :filetype查看Vim的文件类型检测功能是否已打开;
    • :set filetype查看当前文件是什么类型;
    • :set filetype=HTML设置文件类型为HTML;
  • filetype的默认属性:detection:ON plugin:OFF indent:OFF

    • detection:默认情况vim会对文件自动检测文件类型,也就是你看到的’detection:ON’,如需关闭:filetype off。还有一种方式就是在文件内容中指定,Vim会从文件的头几行自动扫描文件是否有声明文件类型的代码,如在文件的首行加入 //vim: filetype=HTML,当作注释写入,以致于不影响文件的编译,这样Vim不通过文件名也能检测出文件是什么类型
    • plugin:当plugin状态为”ON”时,那么就会在Vim的运行时环境目录下加载该类型相关的插件。比如为了让Vim更好的支持Html编程,就需要下载一些Html相关的插件。vim中执行 :filetype plugin on
    • indent:不同类型文件有不同的方式,比如Python要求使用4个空格作为缩进,而Html使用2个空格作为缩进,那么indent就可以为不同文件类型选择合适的缩进方式。你可以在Vim的安装目录的indent目录下看到定义了很多缩进相关的脚本。vim中执行 :filetype indent on。

以上三个参数,可以写成一行filetype plugin indent on在 _vimrc文件中写入。

相关引用连接

  • https://blog.csdn.net/zhangpower1993/article/details/52184581

  • https://blog.csdn.net/guyue35/article/details/53606593

常用插件

  1. VundleVim/Vundle.vim

  2. mattn/emmet.vim

    1. Plugin ‘mattn/emmet-vim’
    2. Bundle ‘mattn/emmet-vim’
    3. emmet-vim 中文教程
  3. terryma/vim-multiple-cursors

  4. pangloss/vim-javascript

  5. scrooloose/nerdtree

    • 打开目录
      • :NERDTree
    • 在目录窗口 和 文档窗口 间切换
      • ctr-w-l/h
    • 关闭目录
      • 定位到目录,:q
    • 打开文件
      • o
  6. ctags

    • 默认安装过,没有则 sudo apt-get install ctags

    • vim 会根据文件的后缀名,自动设置语法高亮 (syntax highlighting)

    • 生成索引文件
      • ctags -R *
    • Ctrl+ ] 跳到光标所在函数或者结构体的定义处
    • Ctrl+ t 返回查找或跳转
    • vi -t tag (
  7. majutsushi/tagbar

  8. Plugin ‘vim-airline/vim-airline’

  9. Plugin ‘vim-airline/vim-airline-themes’

  10. Plugin ‘terryma/vim-multiple-cursors’

  11. nerdcommenter 快速注释
    • Bundle ‘scrooloose/nerdcommenter’
    • 使用
      • leader cc 加注释
      • leader cu 解开注释
      • leader c space 加上/解开注释, 智能判断
      • leader cy 先复制, 再注解(p可以进行黏贴)
    • 配置
      • 设置 leader 键
        • let g:mapleader=”;”
  12. vim-indent-guides 缩进标识线

  13. Plugin ‘jiangmiao/auto-pairs’

  14. https://github.com/tomasr/molokai 主题配置
    • 注意 terminator 下光标可能不是很清楚,因为terminator的光标是可以自定义颜色的,换个光标颜色试试吧
  15. 成对标签之间的跳转
    • Bundle ‘vim-scripts/matchit.zip’
    • 在html标签内部 按 % 会在标签对间跳转