Vim the Six Billion Dollar editor
Better, Stronger, Faster.
"学习 vim并且其会成为你最后一个使用的文本编辑器。没有比这个更好的文本编辑器了,非常地难学,但是却不可思议地好用。"这是下文练级攻略里的一段话,现在回头看看其实没有那么难学,只要你每天都用,第一周可能有些不适应,速度也有些慢,但是越往后越顺手,以致于我现在用word保存的时候都在用:w命令,现在开始让vim透过生活进入生命吧!
这个教程写的很好,是入门也是常用命令集锦,按照这个慢慢练习,很快你就会爱上Vim,并且越来越熟练,我知道一开始你可能尝试几个就想放弃,因为这个东西和平时的文本编辑完全不同,如果你想熟练使用还不想吃苦练习,那赶紧滚蛋。
英文原版Learn Vim Progressively
2.Vim分屏
多窗口操作肯定是平时开发的必要场景,如果恰巧公司有良心,给你配备了24寸显示器,那岂能不分满屏幕,来体验一般代码满天飞的快感!
3.无插件Vim编程技巧
这里面的命令都是原生态的Vim命令,没有任何插件,现在还没看,以后有时间研究一下,另外关于vim的配置可以参考我的另外一篇文章My Vim Configuration
,只是vimrc的内容,因为插件安装时间比较久远,下次安装的时候再些教程,聪明的人一看就懂。
4.给程序员的VIM速查卡
里面几乎涵盖了常用命令,点开看大图很清晰,可以保存一张在手机。
补充一些今天看到的,一些不起眼但非常有用的 Vim 命令,选了些我觉得有用的。
:wq 和 :x 命令近似,都是保存当前文件并退出。
两个命令实际上并不完全等价,当文件被修改时两个命令时相同的。但如果未被修改,使用 :x 不会更改文件的修改时间,而使用 :wq 会改变文件的修改时间。
以 root 方式保存
每当你打开一个你没有写入权限的文件(比如系统配置文件)并做了一些修改,Vim 无法通过普通的 “:w” 命令来保存。你不需要重新以 root 方式打开文件再进行修改,只需要运行:
:w !sudo tee %
这会直接以 root 方式保存。
比较两个文件的不同
你们中的大多数很可能都知道 vimdiff 命令,它可以使用分离模式打开 Vim 并比较两个文件的不同。语法如下:
$ vimdiff [文件1] [文件2]
但同样的结果也可以通过下面的 Vim 命令来获得:
:diffthis
首先在 Vim 中打开原始文件。然后使用分离模式带来第二个文件:
:vsp [文件2]
最后在第一个缓冲区里输入:
:diffthis
通过 Ctrl+w 来切换缓冲区并再次输入:
:diffthis
这样两个文件中不同的部分就会被高亮。
(可以直接在一个缓冲区里使用命令 :windo diffthis,而不用输入 :diffthis 两次)
要停止比较,使用:
:diffoff
按时间回退文件
Vim 会记录文件的更改,你很容易可以回退到之前某个时间。该命令是相当直观的。比如:
:earlier 1m
会把文件回退到 1 分钟以前的状态。
注意,你可以使用下面的命令进行相反的转换:
:later
删除标记内部的文字
当我开始使用 Vim 时,一件我总是想很方便做的事情是如何轻松的删除方括号或圆括号里的内容。转到开始的标记,然后使用下面的语法:
di[标记]
比如,把光标放在开始的圆括号上,使用下面的命令来删除圆括号内的文字:
di(
如果是方括号或者是引号,则使用:
di{
和:
di"
把光标下的文字置于屏幕中央
zz
跳到上一个/下一个位置
当你编辑一个很大的文件时,经常要做的事是在某处进行修改,然后跳到另外一处。如果你想跳回之前修改的地方,使用命令:
Ctrl+o
来回到之前修改的地方
类似的:
Ctrl+i
会回退上面的跳动。