Vim 系列教程目录:
vimrc 是 Vim 的配置文件, Vim 在启动时会加载 vimrc 文件, 你能想到的几乎所有的配置(包括主题, 快捷键, 插件设置等等), 都可以配置在 vimrc 中, 所以, vimrc 在 Vim 使用过程中有着至关重要的地位. Vim 是极其依赖 vimrc 配置的, 没有经过配置的 Vim 又丑又难用, 但是你如果懂得怎么配置, 就可以把 Vim 变成你想要的样子.
这里要明确一个概念: vimrc 中的大多数配置都是 Vim 命令模式下支持的命令, 都可以在命令模式下使用, 但是在命令模式中使用时, 只针对当前打开的 Vim 实例有效, 关闭了 Vim 之后再次打开, 之前在命令模式下的设置就无效了. 而配置到 vimrc 中, 每次 Vim 启动时都会自动读取并执行, 所以可以自动生效.
那么 vimrc 文件在哪呢? 打开 Vim, 使用 :version 命令, 即可查看 Vim 的版本信息, 其中就包括了 vimrc 文件的位置. 我的电脑是 Windows, 可以看到类似如下输出:
通过上述信息可知, vimrc 文件的位置其实非常多, 加载顺序是自上而下, 找到之一个则使用之一个, 后续的不再使用, 如果之一个找不到, 则会依次向下寻找, 直到找到为止 .
这里有一个问题, $VIM 和 $HOME 指的是什么? 这两个变量的值可以使用如下命令查看:
$VIM 是 Vim 安装目录, $VIM 可写为 $vim , 不区分大小写, $HOME 是用户目录, $HOME 区分大小写.
Windows 版的 Vim 在安装时, 会自动在安装目录下生成一个 _vimrc 文件, 也就是 $VIM/_vimrc , 即 "第三用户 vimrc 文件", 其他 vimrc 文件都是不存在的, 所以一般来说修改 $VIM/_vimrc 文件即可.
Linux 和 Mac 的查看及寻找方式也是一样的, 同样是使用 :version 命令, 这里不再赘述.
接下来我们就可以修改 vimrc 文件了. 在这之前请切记: 不要把任何你不理解的配置放到你的vimrc中 , 你可以在网上找到成吨的 vimrc 配置文件, 但那都是别人的, 如果你不理解他们的配置, 一切照搬过来, 那结果是很糟糕的.
PS. 我后续的演示及配置都是基于 Windows 的. 另外, 在修改 vimrc 之前, 请先自己备份一个, 确保改坏了还能恢复回来.
首先之一条要修改的就是: 关闭兼容模式. Vim 默认是以兼容 Vi 的模式运行的(Vi 是远古时期的 Vim), 在这种模式下, 很多 Vim 的高级特性都无法使用, 所以首先就要关闭兼容模式, 请把这条配置放在你 vimrc 文件的之一行:
vimrc 中, " 号后面的内容为注释.
修改并保存之后要使之生效, 需要重启 Vim. 还有个更简单的 *** , 就是在命令模式下输入 下面两个命令中的任意一个 :
大部分情况下, 执行完上面的命令后, vimrc 的修改会立即生效, 但是有些特殊配置执行完这两个命令后不能及时生效, 这时就只能重启 Vim 了. 另外, :source 命令可简写为 :so
如果你觉得默认字体不好看, 可以使用如下配置修改字体:
这表示使用 Consolas 字体, 字号为 14.
另外, 对于一个成熟的 vimer 来说, 界面上那些菜单, 工具栏什么的都是没啥用的, 可以关掉.
注意: vimrc 中, 赋值配置的 = 右边更好不要有空格, 有些值加了空格无法识别.
Vim 的编码系统比较混沌, 几乎说不清楚, 总之你按照下面的配置方式就没问题了:
默认情况下, Vim 在运行期间会生成临时文件和备份文件, 以及修改历史文件(undo文件), 这些文件用处不大, 都是可以关掉的.
还有个很重要的设置: 打开文件类型检测. 这个设置几乎是必须打开的.
下面的配置是大都是和编辑相关的:
经过这一系列配置, 你会发现你的 Vim 变好看了一些, 也更好用了一些.
Vim 中有大量的快捷键(按键映射), 除此之外, 你还可以配置自己的按键映射.
使用 :map 相关的命令可以定义自己的快捷键. map 命令的本质是将一个按键序列转化为另一个按键序列. 这里我们根据一个例子, 来理解 Vim 的按键映射. 在命令模式下执行下面的命令可以将 F3 映射为一个功能: 在文件更底部输入文件名.
在命令模式下输入上述命令, 回车, 然后在普通模式下按 F3, 你会发现文件底部输入了当前文件名, 很神奇吧.
接下来解释一下上面的命令干了什么: 首先使用 map 命令进行按键映射, 要映射的键是 F3, 然后空格后面的内容就都是新的按键序列了, G 移动到最后一行, o 开始一个新行并进入插入模式, 然后插入文本 'File Name: ', 然后Esc键进入普通模式, 然后使用 "% 访问文件名寄存器, 最后 p 粘贴出寄存器内容.
可以看到, 按键映射本质上就是一系列输入, 包括各种模式的切换, 都在输入序列中了.
map 命令可以在普通模式, 可视模式下工作, 有时候需要在特定的模式下使用某些按键映射, Vim 也提供了相应的命令, 如下表:
这里解释一下递归的问题: 假设你将 按键 a 映射成了 按键 b, 又把按键 b 映射成了 命令x, 当使用递归命令映射的情况下, 你按 a 键, 最终会执行 命令x, 如果使用非递归命令映射, 则你按 a 键, 会执行 b 键的功能, 只有按 b 键, 才会执行 命令x.
结论: 如果确实应该使用递归, 则使用递归映射, 否则一般使用非递归映射
另外, F1-F12键, Esc键, 回车键等各种功能键都有对应的字母序列, 可通过下面的命令查看:
注意: 功能键的字母序列不区分大小写, 即 Esc 和 esc 是 等效的.
另外, 使用上述命令配置的按键映射只对当前 Vim 实例有效, 重启 Vim 之后就无效了. 那咋办? 很简单, 把配置写在 vimrc 中就可以了, 下面是我的一些按键配置:
看到这里你可能会有疑问: 在插入模式下, 我把 Ctrl-h/j/k/l 映射成左下上右, 不觉得麻烦吗? 并不, 因为我使用另一款软件: KeyTweak, 把 Ctrl 键的位置换到了 Alt 键上, 这样我就能很方便地使用 Ctrl 键了.
leader 键是 Vim 中一个比较特殊的按键, 被称为前置键, 默认是 \ , 这个键的作用是: 先按下前置键, 松开后再按别的按键, 就可以形成一套快捷键.
由于 \ 键比较难按到, 一般都会将前置键改为容易按到的键, 我将其改为 ; 了, 需要在 vimrc 中添加如下配置:
然后就可以很愉快的使用前置键映射各种快捷键了:
可以看到, 前置键的映射方式和其他键的映射方式是一样的.
需要注意的是, leader 键的按键映射可以将多个按键映射成另一个序列或指令, 例如:
这样也会带来一个问题: 如果既有 leadern , 又有 leaderno , 那么当你输入 leadern 的时候, Vim 就得等下一个按键 o 的输入(类似于 kk 映射成 Esc), 这会浪费一些时间, 甚至影响你原本的意图, 所以多个键映射尽量不要出现"同序的相同字符", 改为 leadernn , leaderno 就不会有问题了.
很多 vimer 会把自己的 vimrc 挂到网上, 供别人参考. 这里也贴一下我的 vimrc 地址吧:
我其实配置的东西比较少, 大都是些基本配置, 而且添加了详细的注释, 很容易看懂.
现在, 你几乎已经是个高阶玩家了, 现在的你再去看 Vim 的文档以及各种 Vim 的文章, 就很容易看懂了.
二者擅长点不同。
Vim有很多特点,比如高效的编辑和移动,批量大规模修改,自动化复杂文本编辑,多缓冲区,多窗口。更重要的是灵活和可定制性。缺点也很明显,就是初学者往往学不会,或没耐心学习怎么用。
Vim 8.0 推出之后又新增了异步IO、通道、定时器之类功能,理论上IDE能干的Vim也都能干了。且很多使用体验也可能会提升。
IDE的特点是直观和配置简单,其实就是商用工具,开发者按照大众的习惯给你配置好了。
Vim 在很多方面确实不如IDE。我通常给的建议是,如果是初学某种语言就用IDE。方便,资料也多。不要让Vim的学习挤掉你学某种语言的兴趣和时间。
你需要用Vim的情况可能是:你已经用惯Vim,上瘾了戒不掉;你不想使用盗版软件,不想付钱,又找不到破解版;你需要使用数种编程语言,但无法忍受不同IDE之间的不一致性。
使用Vim,或者说用好Vim需要一种思维上的转变。它是自成一派的东西,通常并不需要模拟其它编辑器或IDE的行为。
连接服务器,我喜欢用xshell,我使用的xshell6的破解版,有时候编辑一个文档,会有些意外的退出,重头编辑?不存在。有办法可以恢复噢。
模拟更改文件后意外退出
使用ls -a查看,可以看到有一个swp文件产生
如何恢复呢,很简单使用vim -r count1.py打开文件,然后你会发现恢复了,wq保存就好啦,删掉swp文件就好啦。
闲鱼上把付费下载的游戏破解在上面贩卖怎么举报? 把破解了的游戏在玩的过程当中把它录制下来,然后制作成视频发散发给咸鱼官网,然后官网的客服人员。会处理的。闲鱼被恶意举报骗钱,支付宝被限制,该怎么解决?会...
微信收费表情包如何破解 用微信自带或自己收藏的表情免费,另外要下载的表情包也有免费的...微信支付账号限制如何破解? 1、重新申请注册微信账号2、限制时间过了也就行了。微信支付账号收款限制,解除方法:...
耻辱2艺术家的保险箱密码怎么破解攻略详解 看前面有本书,右边桌上有纸条,再调查一下祈祷房里 任务提示里就有密码了。第四章保险箱密码解析:在黑板上。两个酒瓶挡住,连个数字模糊。在保险箱旁边的办公桌上有个...
两张不一样的相片合成一张怎么合那 HOHO,很简单的。给你介绍两种方法。1。如果你用一个叫“景像合成机”的软件,你的工作就是在photoshop里点一个按钮。过半分钟,人像和背景就合成了,还有什么飘雪...
微查宝是做什么的?是什么软件? 这个现在很流向也很好用,是一款帮助商家查买手信誉软件,通过微查宝专业的云分析功能一键定位降权号,骗子敲诈号,职业打假师,职业差评师等恶意买手。开同时也是一个开放共享的反...
photoshop 破解版 点击下载:破解版PS软件安装包+软件视频教程链接:提取码:6768软件介绍:Adobe Photoshop,简称“PS”,是由Adobe Systems开发和发行的图像处理...