1.0、参考
1.1、Vim简介
short for:Vi IMproved
是什么 ?:a highly configurable text editor for efficiently creating and changing any kind of text.
开发语言:C
官方主页:http://www.vim.org
源码仓库:https://github.com/vim/vim

VimEmacs并列为Unix/Linux系统用户最喜欢的编辑器。

Vim被称为编辑器之神,可以看出其把编辑器做到了极致。

Emacs被称为神之编辑器,可以看出其对学习之路极为陡峭,神才能使用得了。

Vimvi的改良版本,它不仅兼容vi的所有指令,而且还增加了非常多新的特性在里面。 代码补完、编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用。

Vim是跨平台的,可以运行于任何你能想到的操作系统中。

Vim不仅可以在text-mode,也可以使用GUI, 这是我们今天仍然使用它的很重要的理由,因为GUI类型的编辑器做的好的有很多, 比如Visual Studio Code,但是,能运行在text-mode也很重要, 因为很多环境下就没有GUI,比如服务器、路由器等IoT设备,我们要在这些设备上修改文本,必然要使用它。

1.2、Vim作者

Vim的作者是Bram Moolenaar

Bram Moolenaar的博客:http://www.moolenaar.net

1.3、通过包管理器安装Vim
操作系统包管理器安装命令
Windowsscoopscoop install vim
WindowsChocolateychoco install -y vim
macOSHomeBrewbrew install vim
GNU/LinuxLinuxBrewbrew install vim
aptsudo apt-get install -y vim
CentOSyumsudo yum install -y vim
dnfsudo dnf install -y vim
openSUSEzyppersudo zypper install -y vim
Alpine Linuxapksudo apk add vim

Arch Linux

ArcoLinux

Manjaro Linux

pacmansudo pacman -Syyu --noconfirm
sudo pacman -S    --noconfirm vim
Gentoo LinuxPortagesudo USE="python" emerge app-editors/vim
1.4、通过编译源码安装Vim 
1.4、Vim中包含的命令

Vim中还包含exrviewrvimviewviewdiffvi命令。 而这些命令都是vim命令的软连接。

1.5、配置Vim

Vim是高度可配置的。Vim允许用户根据自己的喜好随意进行配置。

Vim有三种配置级别:

  • 系统级配置
    Vim系统级配置文件名称为vimrc, 但是由于安装方法不同和操作系统的不同,这个文件的位置也不同,有的可能位于/etc/vim/vimrc, 有的可能位于/usr/share/vim/vimrc或者是其他地方, 你可以通过sudo find / -name "vimrc"这个命令找到他,不过,通常,我们不必理会它到底在哪里, 我们不要去修改他,因为修改了它之后,重新安装后就被还原了。
  • 用户级配置
    Vim用户级配置文件为~/.vimrc,是一个隐藏文件, 这个文件由于在用户的${HOME}目录下,只要我们的/home挂载到了一个独立的磁盘上, 在重新安装操作系统的时候不格式化这个磁盘,就不会丢失。
    Vim用户级配置的优先级高于系统级配置。通常,我们只需要修改用户级配置文件即可。这是推荐的做法。
  • 临时配置
    进入Vim后,在底行模式下进行的设置就是临时配置, 当退出Vim后,下次进来就失效了。

Vim配置的语法是Vim特有的命令。

1.6、Vim shell command

Vim底行模式中可以执行命令, 你可以把Vim底行模式类比成操作系统中的Terminal,在Terminal中可以执行Shell命令;而在Vim底行模式下也可以执行命令, 但是能执行的不是操作系统的Shell命令,而是Vim特有的命令, 我称之为Vim shell command,不过,这些Vim shell command与操作系统的Shell命令很相似。学起来也不复杂。

常见的Vim shell command

1.7、VimScript

VimScript本质上就是由Vim shell command组成的有序集合。

vimrc就是VimScriptVim插件也是用它来编写的。

1.8、Vim插件

通过插件可以把Vim打造成一个IDE,需要什么安装什么,选择多。

Vim插件仓库

常用的Vim插件:

1.9、Vim的三种模式
1.10、Vim的发展历史