Vim入门级基础配置

介绍Vim配置文件.vimrc,配置Vim显示行号、支持utf8中文不乱码、突出显示Vim当前行,设置高亮显示括号匹配和tab缩进,解决Vim粘贴时多出缩进和空格问题。

### 一、Vim配置文件.vimrc

Vim编辑器相关的所有功能开关都可以通过**.vimrc**文件进行设置。

**.vimrc**配置文件分系统配置和用户配置两种。

系统vimrc配置文件存放在Vim的安装目录,默认路径为`/usr/share/vim/.vimrc`。可以使用命令`echo $VIM`来确定Vim的安装目录。

用户vimrc文件,存放在用户主目录下`~/.vimrc`。可以使用命令`echo $HOME`确定用户主目录。

*注意*:用户配置文件优先于系统配置文件,Vim启动时会优先读取当前用户根目录下的**.vimrc**文件。所以与个人用户相关的个性化配置一般都放在`~/.vimrc`中。

### 二、Vim基本配置

默认情况下,Vim编辑器里既不显示行号,也没有语法高亮度、智能缩进。为了方便使用,基本的Vim配置选项一般都会包括:

#### 2.1 支持中文不乱码

``` bash

'设置编码'

set fileencodings=utf-8,ucs-bom,gb18030,gbk,gb2312,cp936

set termencoding=utf-8

set encoding=utf-8

```

与Vim编码有关的变量包括:`encoding`、`fileencoding`、`termencoding`。

encoding选项用于缓存的文本、寄存器、Vim 脚本文件等;fileencoding选项是Vim写入文件时采用的编码类型;termencoding选项表示输出到终端时采用的编码类型。

#### 2.2 显示行号

``` bash

'显示行号'

set nu

set number

```

nu是number的缩写,所以上面两个配置命令是完全等效的。

#### 2.3 突出显示当前行

``` bash

set cursorline

set cul          'cursorline的缩写形式'

```

#### 2.4 突出显示当前列

``` bash

set cursorcolumn

set cuc          'cursorcolumn的缩写形式'

```

#### 2.5 启用鼠标

``` bash

set mouse=a

set selection=exclusive

set selectmode=mouse,key

```

Vim编辑器里默认是不启用鼠标的,也就是说不管你鼠标点击哪个位置,光标都不会移动。通过以上设置就可以启动鼠标,不过对于高级玩家来说,用Vim就是为了解放双方不用鼠标,所以这个设置可以根据个人爱好选择。

#### 2.6 显示括号匹配

``` bash

set showmatch

```

#### 2.7 设置缩进

``` bash

'设置Tab长度为4空格'

set tabstop=4

'设置自动缩进长度为4空格'

set shiftwidth=4

'继承前一行的缩进方式,适用于多行注释'

set autoindent

```

关于Vim缩进的更多内容,可参考vim教程网上的文章[Vim自动缩进和tab键替换空格](https://vim.ink/vim-indent.html)

#### 2.8 设置粘贴模式

``` bash

set paste

```

在Vim中通过[鼠标右键粘贴](https://vim.ink/vim-paste.html)时会在行首多出许多缩进和空格,通过`set paste`可以在插入模式下粘贴内容时不会有任何格式变形、胡乱缩进等问题。

#### 2.9 显示空格和tab键

``` bash

set listchars=tab:>-,trail:-

```

Vim编辑器中默认不显示文件中的tab和空格符,通过上面的配置可以获得以下的显示效果,方便定位输入错误。

![vimrc显示空格和tab键](https://wx1.sinaimg.cn/mw690/691e0c29gy1flthpsci69j208j01hglg.jpg)

#### 2.10 显示状态栏和光标当前位置

``` bash

'总是显示状态栏'

set laststatus=2

'显示光标当前位置'

set ruler

```

### 三、Vim配置变更立即生效

要让.vimrc变更内容生效,一般的做法是先保存 .vimrc 再重启vim,增加如下设置,可以实现保存 .vimrc 时自动重启加载

``` bash

'让vimrc配置变更立即生效'

autocmd BufWritePost $MYVIMRC source $MYVIMRC

```

----------------------------

Vim入门级基本配置就先介绍到这里了,更多Vim个性配置可参考vim教程网上的其他博客。

附上我的一张Vim配置示意图

![Vim配置](https://wx2.sinaimg.cn/large/691e0c29gy1fnptltfrnzj20hk0ddta2.jpg)

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 217,406评论 6 503
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,732评论 3 393
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 163,711评论 0 353
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,380评论 1 293
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,432评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,301评论 1 301
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,145评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,008评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,443评论 1 314
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,649评论 3 334
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,795评论 1 347
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,501评论 5 345
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,119评论 3 328
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,731评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,865评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,899评论 2 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,724评论 2 354

推荐阅读更多精彩内容