Vim 即 Vi Improved,它的前身是 Vi。它是一个十分强大的编辑器,优点如下:
- 不需要鼠标,纯键盘
- Linux 系统预装
- 键盘命令肌肉记忆之后,效率非常高
但是,它的配置许许多多,让人难以记住。我正好要在新电脑上配置它,故写此文。
为什么不用别人现成的?#
- 自己的配置更顺手,自己更熟悉。
- 了解 Vim Script,可以自己造插件
- etc.
不会 Vim 怎么办#
啊这…… 🤣
你可以试着在命令行输入 vimtutor
。
vimrc 的位置#
本篇文章以新安装的 vim 为例。Vim 的配置文件叫做 vimrc
。在 Mac、Linux 等系统上,位于 ~/.vimrc
。在 Windows 系统中,它叫做 _vimrc
,但是同样位于 Home 目录中。
全局的配置,在 Mac、Linux 等系统上,位于 /etc/vimrc
。在 Windows 系统上,它储存在 Vim 安装目录,同样叫做 vimrc
。
配置#
一个什么也没有配置的 Vim,打开可能是这样的:
下面各配置,你可以添加自己想要的。以下所有配置都可以在命令模式输入,临时启用或关闭。
基本#
set nocompatible " 不使用 Vi 兼容模式
filetype plugin on " 检测文件类型,加载插件
syntax on " 开启语法高亮
set showmode " 显示当前模式
set showcmd " 在底部显示命令
set mouse=a " 启用鼠标,不建议开启
set encoding=utf-8
set t_Co=256
filetype indent on " 根据文件类型,不同缩进
缩进#
set autoindent " 自动缩进
set tabstop=4 " tab占4个空格
set shiftwidth=4 " 在文本上按下>>(增加一级缩进)、<<(取消一级缩进)或者==(取消全部缩进)时,每一级的空格数。
set expandtab " tab自动转为空格
set softtabstop=2 " tab转为多少空格
界面#
set number " 显示行号
set relativenumber " 显示光标所在行当前行号,其他都显示为相对于当前行的行号
set cursorline " 当前行高亮
colorscheme default " 设置颜色主题为 default,颜色主题储存在 Home 目录的 .vim/colors 文件夹,Windows 下叫做 vimfiles/colors
set wrap " 设置多于行宽的文本自动分拆为多行显示,反之: set nowrap
set linebreak " 遇到特殊的符号才折行
set laststatus=2 " 是否显示状态栏。0 不显示,1 只在多窗口时显示,2 显示。
set ruler " 状态栏显示光标位置
set showmatch " 高亮括号
搜索#
set hlsearch " 高亮搜索结果
set incsearch " 搜索输入时,即时跳转
set ignorecase " 忽略大小写
更多#
Vim 配置不止这些,我只介绍了一些常用的。Vim Script 值得学习,学完了还可以自己开发插件。
题外话 - 插件#
插件管理,Vim 虽然新增了自带的,但我还是很推荐 Vim-Plug