Linux.中国 - 开源社区

 找回密码
 骑士注册

QQ登录

微博登录


一些不起眼但非常有用的 Vim 命令

2015-1-15 10:08    评论: 22 收藏: 16 分享: 32    

删除标记内部的文字

当我开始使用 Vim 时,一件我总是想很方便做的事情是如何轻松的删除方括号或圆括号里的内容。转到开始的标记,然后使用下面的语法:

di[标记]

比如,把光标放在开始的圆括号上,使用下面的命令来删除圆括号内的文字:

di(

如果是方括号或者是引号,则使用:

di{

和:

di"

删除指定标记前的内容

和删除标记内部有些相似,但目的不同。命令如下:

dt[标记]

会删除所有光标和标记之间的内容(保持标记不动),如果在同一行有这个标记的话。例如

dt.

会删除至句子的末尾,但保持 ‘.’ 不动。

把 Vim 变为十六进制编辑器

这不是我最喜欢的窍门,但有时会很有趣。你可以把 Vim 和 xxd 功能连起来来把文件转换为十六进制模式。命令如下:

:%!xxd

类似的,你可以通过下面的命令恢复原来的状态:

:%!xxd -r

把光标下的文字置于屏幕中央

我们所要做的事情如标题所示。如果你想强制滚动屏幕来把光标下的文字置于屏幕的中央,在可视模式中使用命令(译者注:在普通模式中也可以):

zz

跳到上一个/下一个位置

当你编辑一个很大的文件时,经常要做的事是在某处进行修改,然后跳到另外一处。如果你想跳回之前修改的地方,使用命令:

Ctrl+o

来回到之前修改的地方

类似的:

Ctrl+i

会回退上面的跳动。

把当前文件转化为网页

这会生成一个 HTML 文件来显示文本,并在分开的窗口显示源代码:

:%TOhtml

(译者注:原文是 :%Tohtml,但在我的电脑上是 :%TOhtml)

很基本但很不错。

总的来说,这一系列命令是在我读了许多论坛主题和 Vim Tips wiki(如果你想学习更多关于编辑器的知识,我非常推荐这篇文章) 之后收集起来的。

如果你还知道哪些非常有用但你认为大多数人并不知道的命令,可以随意在评论中分享出来。就像引言中所说的,一个“鲜为人知但很有用的”命令也许只是你自己的看法,但分享出来总是好的。


via: http://xmodulo.com/useful-vim-commands.html

作者:Adrien Brochard 译者:wangjiezhe 校对:wxy

本文由 LCTT 原创翻译,Linux中国 荣誉推出

12
查看其它分页:

发表评论


最新评论

我也要发表评论

来自 - 上海 的 MSIE/Windows 用户 2015-4-14 18:31
1
空中辉舞 发表于 2015-1-17 09:23 的评论:
你们的评论太没“干货了”,不知道是不是我菜鸟的关系,首先Ctrl+n补全不了单词会显示pattern not found,还有diffthis 用Ctrl+W切再输入根本不好使,但是windo diffthis是可以用的。其他的我就没验证了,有谁能站出解释么,别随声附和,对这个网站的编辑们都有所怀疑了,全是不验证的瞎翻译。
ctrl+p,你试下吧,7.3版本gvim无问题
5 回复
来自 - 加拿大 的 Firefox/Linux 用户 2015-1-18 04:30
1
空中辉舞 发表于 2015-1-17 09:23 的评论:
你们的评论太没“干货了”,不知道是不是我菜鸟的关系,首先Ctrl+n补全不了单词会显示pattern not found,还有diffthis 用Ctrl+W切再输入根本不好使,但是windo diffthis是可以用的。其他的我就没验证了,有谁能站出解释么,别随声附和,对这个网站的编辑们都有所怀疑了,全是不验证的瞎翻译。
2
linux 发表于 2015-1-17 20:48 的评论:
我是校对和发布,我确实没验证过,不过这篇,从我们译者写的译者注来看,应该是验证过的,也许不够充分?
ctrl+n需要有以前写过的单词才能补全,另外它目前只对c语言的#include内的东西自动抓取。
回复
linux 2015-1-17 20:48
1
空中辉舞 发表于 2015-1-17 09:23 的评论:
你们的评论太没“干货了”,不知道是不是我菜鸟的关系,首先Ctrl+n补全不了单词会显示pattern not found,还有diffthis 用Ctrl+W切再输入根本不好使,但是windo diffthis是可以用的。其他的我就没验证了,有谁能站出解释么,别随声附和,对这个网站的编辑们都有所怀疑了,全是不验证的瞎翻译。
我是校对和发布,我确实没验证过,不过这篇,从我们译者写的译者注来看,应该是验证过的,也许不够充分?
回复
linlover 2015-1-17 13:07
w !sudo tee %
di
两个命令对我的vim(7.4)不起作用。
4 回复
空中辉舞 2015-1-17 09:23
你们的评论太没“干货了”,不知道是不是我菜鸟的关系,首先Ctrl+n补全不了单词会显示pattern not found,还有diffthis 用Ctrl+W切再输入根本不好使,但是windo diffthis是可以用的。其他的我就没验证了,有谁能站出解释么,别随声附和,对这个网站的编辑们都有所怀疑了,全是不验证的瞎翻译。
6 回复
好久不上微博的勛爺 2015-1-16 01:03  新浪微博网友评论
Mark!
回复
Idleeeeee 2015-1-15 22:33  新浪微博网友评论
Repost
回复
游冥客 2015-1-15 21:03  新浪微博网友评论
黑科技啊!
回复
爱吃大肥鱼的小猫咪 2015-1-15 18:33  新浪微博网友评论
干货
回复
白鱼吻 2015-1-15 13:33  新浪微博网友评论
di好赞!vim真是个无底洞呀。。。
回复
Jn_xxx 2015-1-15 12:33  新浪微博网友评论
正在爬vim的学习曲线
回复
茅山道士后裔 2015-1-15 12:33  新浪微博网友评论
m
回复
曦曦儿Sarah 2015-1-15 12:33  新浪微博网友评论
Repost
回复
这个小利不简单 2015-1-15 12:03  新浪微博网友评论
很不错
回复
dyonroot 2015-1-15 12:03  新浪微博网友评论
棒棒哒
回复
表叔叫lean 2015-1-15 11:03  新浪微博网友评论
get
回复
ShenLanSDU 2015-1-15 11:03  新浪微博网友评论
Repost
回复
soli 2015-1-15 10:52
有意思
回复
牵着小猪溜达达 2015-1-15 10:33  新浪微博网友评论
@我的印象笔记
回复
木_小贱 2015-1-15 10:33  新浪微博网友评论
@我的印象笔记
回复
12下一页

热点评论

空中辉舞 2015-1-17 09:23
你们的评论太没“干货了”,不知道是不是我菜鸟的关系,首先Ctrl+n补全不了单词会显示pattern not found,还有diffthis 用Ctrl+W切再输入根本不好使,但是windo diffthis是可以用的。其他的我就没验证了,有谁能站出解释么,别随声附和,对这个网站的编辑们都有所怀疑了,全是不验证的瞎翻译。
6
来自 - 上海 的 MSIE/Windows 用户 2015-4-14 18:31
ctrl+p,你试下吧,7.3版本gvim无问题
5
linlover 2015-1-17 13:07
w !sudo tee %
di
两个命令对我的vim(7.4)不起作用。
4
返回顶部

分享到微信朋友圈

打开微信,点击底部的“发现”,
使用“扫一扫”将网页分享至朋友圈。