本文已转至http://cn.abnerchou.me/2014/03/10/46d23509/

上一篇文章忘记说明文本编辑器的模式:

所有文本编辑器都至少有两种模式,编辑模式和控制模式。编辑模式就是普通的文本输入,但控制模式似乎并不多见。由于平时我们所用的word并没有明确的区分这两种模式,但通过快捷键及按钮辅助,控制模式对我们也不是很陌生。

在vim中这两种模式的切换是通过Esc键来完成的,有明确的划分。在控制模式下键盘的按键不再是简单字符,而是具有相应的控制功能。

简单这么说明下,也就方便理解学习这些快捷键的重要性了。

公告:《VIM-Adventures》的作者愿意免费赠送一个此游戏的激活码给在本系列攻略中留言的用户。活动详情请见本文末。

前三关是试玩关卡,难度还算简单;但其后的关卡是越来越难。

第四关:

本关学习按键:

  • W 跳转到下一个字符串的首字母 (对应英文单词Word)
  • E 跳转到下一个字符串的尾字母 (对应英文单词End)
  • r 更改一个字符 (对应英文单词Replace)

本关相对比较简单,只需要按照要求练习删除和修改就可通关。

关于W、E与w、e的区别,可以参考B与b的区别

第五关:

  • d 可与w、e、b、W、E、B、h、j、k、l、d等字符组合,用来删除字符串或者句子。 (对应英文单词Delete)

首先通过删除和修改来获得d键,这个比较简单和第四关差不多。

通过提示可以获知,d键与其它已习得的按键组合,可以达到快速删除字符、单词、字符串、以及句子、段落的效果。

简单说明下其主要组合:

  • dl 与x功能一样,删除光标下一个字符,相当于键盘上的Del; dh 与之相反,功能相当于键盘上的backspace
  • dw、de、dW、dE 均为向后删除一个单词或字符串,区别在于de/dE是从当前位置到单词或字符串末尾,而dw/dW是删除当前位置到下一个单词或字符串之前
  • db、dB 向前删除一个单词或字符串。需要注意的是光标下的字符不删除
  • dk、dj 分别是向上和向下删除两行
  • dd 删除本行

本关难点在下图标注的蓝色区域:

在没有提示的情况下很难想到dj或dk可以删除两行。另外一点是,X所在的位置没有标注要删除,但注意最下方的一行话:“BTW, X does mark the spot”也就是说X即是标记所在的位置,站在上图标注的蓝色方框"."上,按dB即可删除X (直接在X上按x键是不行的,不过系统会提示正确方法)。

第五关卡了好久,就是没有明白他所说的“X does mark the spot”的具体含义,浪费了不少时间。

下一章节第6关,敬请期待~

活动详情

用户需要达成以下两个要求即可获得抽奖资格:

  1. 在本系列文章中留言;

  2. 推荐本系列的任一文章。
    关注博主。

(如果可能的话再关注下博主推荐本系列任一文章,不胜感激。)

(更新:由于无法获知谁推荐了文章,所以还是以留言和关注信息作为抽奖标准吧。)

抽奖将在本系列文章连载结束后进行,届时将通过博客园站内信通知获奖用户。

《VIM-Adventures攻略》 LEVEL 4、5的更多相关文章

  1. 简明Vim练级攻略(转载)

    前言 今天看到这篇文章,共鸣点非常多.它把Vim使用分为4个级别,目前我自己是熟练运用前面三级的命令,在培养习惯使用第四级.完全就是我这一年来坚持使用Vim的过程.所以不管怎么我要转载这篇文章.翻译自 ...

  2. 简明Vim练级攻略(转)

    前言今天看到这篇文章,共鸣点非常多.它把Vim使用分为4个级别,目前我自己是熟练运用前面三级的命令,在培养习惯使用第四级.完全就是我这一年来坚持使用Vim的过程.所以不管怎么我要转载这篇文章.翻译自& ...

  3. Vim练级攻略(转)

    转自平凡的世界:http://www.ccvita.com/ 前言今天看到这篇文章,共鸣点非常多.它把Vim使用分为4个级别,目前我自己是熟练运用前面三级的命令,在培养习惯使用第四级.完全就是我这一年 ...

  4. (转)Vim练级攻略

    (转)Vim练级攻略 原文链接:http://coolshell.cn/articles/5426.html vim的学习曲线相当的大(参看各种文本编辑器的学习曲线),所以,如果你一开始看到的是一大堆 ...

  5. 简明 VIM 练级攻略

    http://coolshell.cn/articles/5426.html vim的学习曲线相当的大(参看各种文本编辑器的学习曲线),所以,如果你一开始看到的是一大堆VIM的命令分类,你一定会对这个 ...

  6. VIM插件攻略

    工欲善其事,必先利其器.一个强大的开发环境可以大大提高工作效率.好吧,我知道这是废话...不过,我想一定有很多跟我一样打算进入Linux平台开发的新手,一开始都为找不到一个像Windows下的VS那样 ...

  7. Vim 练级攻略

    以下的文章翻译自<Learn Vim Progressively>,我认为这是给新手最好的VIM的升级教程了,没有列举全部的命令,仅仅是列举了那些最实用的命令. 很不错. -------- ...

  8. 简明 Vim 练级攻略(转)

    原文:http://coolshell.cn/articles/5426.html vim的学习曲线相当的大(参看各种文本编辑器的学习曲线),所以,如果你一开始看到的是一大堆VIM的命令分类,你一定会 ...

  9. 转载: Vim 练级攻略

    转自:http://coolshell.cn/articles/5426.html  酷壳 vim的学习曲线相当的大(参看各种文本编辑器的学习曲线),所以,如果你一开始看到的是一大堆VIM的命令分类, ...

  10. 关于简明Vim练级攻略

    本文装载于:http://coolshell.cn/articles/5426.html vim的学习曲线相当的大(参看各种文本编辑器的学习曲线),所以,如果你一开始看到的是一大堆VIM的命令分类,你 ...

随机推荐

  1. Xamarin.Forms DataGrid

    控件出处 https://components.xamarin.com/ https://components.xamarin.com/gettingstarted/ZumeroDataGrid/tr ...

  2. 在QLabel上点击获得的效果

    一般说只在button中点击获得事件,作出相应的反应.而往往需要在QLabel上作出点击和触碰的效果. 我用qlabel做出了一个效果,当鼠标碰到label区域,label底下出现一条线,离开后线条消 ...

  3. 两表关联更新,用于update 回滚

    create table test1 as select * from dba_objects; create table test2 as select * from dba_objects; cr ...

  4. UML建模之活动图介绍(Activity Diagram)

      一.活动图的组成元素 Activity Diagram Element 1.活动状态图(Activity) 2.动作状态(Actions) 3.动作状态约束(Action Constraints) ...

  5. sigaction

    概述编辑 sigaction(查询或设置信号处理方式) 相关函数 signal,sigprocmask() ,sigpending,sigsuspend, sigemptyset 表头文件 #incl ...

  6. httpclient post请求实例(自己写的)

    package com.gop.gplus.trade.common.utils; import org.apache.commons.httpclient.HttpClient;import org ...

  7. 【剑指Offer学习】【面试题56:链表中环的入口结点】

    题目:一个链表中包括环.怎样找出环的入口结点? 解题思路 能够用两个指针来解决问题.先定义两个指针P1和P2指向链表的头结点.假设链表中环有n个结点,指针P1在链表上向前移动n步,然后两个指针以同样的 ...

  8. 苹果的HomeKit协议

    苹果的HomeKit协议非常底层,其作用仅限于让iOS平台和家居设备能够相互“握手”,但“认识”之后,想要继续控制灯.空调等设备,仍然需要家电厂商在HomeKit的基础上进行二次开发.

  9. gcc -L -l的使用

    -l参数就是用来指定程序要链接的库,-l参数紧接着就是库名,那么库名跟真正的库文件名有什么关系呢?就拿数学库来说,他的库名是m,他的库文件名是libm.so,很容易看出,把库文件名的头lib和尾.so ...

  10. js中时间戳与日期转换-js日期操作

    常用的一些日期操作. 用js获取一个时间戳. <script type="text/javascript"> var date = new Date();//当前时间 ...