入门介绍

Vim-Adventures是一个让初学者练习如何使用 Vim 的小游戏。它一共有 TODO 个 关卡,每个关卡都对应不同的 Vim 练习。一进网页我们可以看到这个画面:

点进去后就自动来到我们的第一关啦!

游戏里默认你是处于 Vim 中的 Normal模式。

  • 左下角的第一个 给了游戏进度处理的命令。
  • 第二个 给了你当前关卡需要用到的 Vim 操作键位,按下对应按键会给出提示,按esc退出提示。
  • 第三个 ‍♂️ 提示你使用 :login来进行登录,以使用 :w 保存游戏进度。需要注意的是,想要保存游戏进度需要购买一个网站的账号。
  • 第四个 显示游戏数据统计画面,具体显示你在关卡用了多长时间,用了多少步等。
  • 后面的blabla...不重要啦!!

Level1 移动训练

第一关的意义在于训练你在 Vim 的Normal模式下对光标移动的熟练度。

按下h, j, k, l四个键来分别进行光标左,下,上,右的移动。

使用 :help命令来获取对应按键的帮助。

  • 左上角的宝箱在第一关是暂时无法只使用上下左右键通过的。

  • 后面遇到的斜坡需要看npc的提示来通过:

    这个小朋友说的东西翻译过来是:

    向上或向下移动到一条较短的线(即进入水中)会将您移动到较短的线中的最后一列,但如果您继续移动到较长的线,您将在开始时所在的同一列结束!

    提示解释了 Vim 在使用 j, k 键换行时的跳转特性,即在参差不齐的行之间跳转时,光标会以开始跳转时所在的位置为终点线,每次跳转都尽可能地去靠近终点线。下图就是不同位置产生的不同跳转路线:

    通过三个斜坡,就需要在三个位置进行跳转:

    最后就可以顺利到达第一关终点。

Level2 词跳转

词跳转: w (下一个词), b (词初), e (词尾),输入 :help + <key> 来获取详细帮助。

第二关我们的目的很明显,收集三个按键,三把钥匙。注意三把钥匙是用来开第三关的,先不着急回第一关开宝箱。

我们需要在这一关做的,是收集按键解锁按键功能后使用它们来进行词与词之间的跳转,此时石头就再也无法阻挡我们的脚步。小人给出的提示解释了 Vim 中对WORD的定义:

A word is a sequence of letters, digits and underscores, or a sequece of punctuation marks, or an empty line.

单词是字母、数字和下划线的序列,或者是标点符号的序列,或者是空行。

Level3 删除

在这一关,我们需要做的是:

  • 在30秒内利用w, e, b进行词跳转获取x按键

  • 利用x按键进行对标红字符的删除

  • 回第一关开宝箱

一开始不熟练的话会很头痛,跳得很慢很慢,但发现了一个技巧就是we键轮换着不停地按,能很快跳到最后!

然后回去删除标红字符,搞定后捡起爆出来的钥匙回第一关开宝箱~!

到达宝箱处时要注意,使用b跳转是不行的,要使用大写B跳转:

最后开启宝箱..音效和画面多少有点哈人了

后面的关卡

呃呃,想玩后面的关卡就给我狠狠地爆米!免费的部分到这里也就结束了,解锁后续内容需要购买一个价值25美刀的账号..而且只能用六个月..但不得不说这小游戏还是可以的!

后续内容有前辈搞过了,就放个链接好了:https://zhuanlan.zhihu.com/p/165254171

希望能早日用熟练 Vim, 赶紧出狱不坐牢~

Vim-Adventures 有趣的Vim小游戏的更多相关文章

  1. 推荐10款超级有趣的HTML5小游戏

    HTML5的发展速度比任何人的都想像都要更快.更加强大有效的和专业的解决方案已经被开发......甚至在游戏世界中!这里跟大家分享有10款超级趣味的HTML5游戏,希望大家能够喜欢! Kern Typ ...

  2. Linux系统中有趣的命令(可以玩小游戏)

    Linux系统中有趣的命令(可以玩小游戏) 前言 最近,我在看一些关于Linux系统的内容,这里面的内容是真的越学越枯燥,果然学习的过程还是不容易的.记得前几个月初学Linux时,有时候就会碰到小彩蛋 ...

  3. Vim 新手节省时间的小技巧

    1. 不关闭终端退出编辑器 使用 Vim 编辑器保存并退出编辑状态是一件轻而易举的事,你只需记住按 ESC 键切换到正常模式,然后输入冒号(:),之后输入 wq 即可实现保存并退出. :wq 如果不想 ...

  4. 12岁的少年教你用Python做小游戏

    首页 资讯 文章 频道 资源 小组 相亲 登录 注册       首页 最新文章 经典回顾 开发 设计 IT技术 职场 业界 极客 创业 访谈 在国外 - 导航条 - 首页 最新文章 经典回顾 开发 ...

  5. 第九章 nginx基础之搭建小游戏

    一.nginx部署 1.epel源安装 [root@web01 ~]# yum install -y nginx 2.官方源安装 1.配置官方源[root@web02 ~]# vim /etc/yum ...

  6. 如何临时发布部署Cocos小游戏到Linux服务器,让别人能在微信打开

    两个星期前,我们发布了第一个小游戏教程: 教程:制作一个小游戏送给喜欢的TA(不会编程也能学会哦) 上周有好几位小伙伴在b站催更,呃,作为小透明,收到催更信息后还是很激动的!竟然有同学在看我们的小教程 ...

  7. Unity小游戏制作 - 暗影随行

    用Unity制作小游戏 - 暗影惊吓 最近玩了一个小游戏,叫做暗影惊吓,虽然是一个十分简单的小游戏,但是感觉还是十分有趣的.这里就用Unity来实现一个类似的游戏. 项目源码:DarkFollow 主 ...

  8. html5+Canvas实现酷炫的小游戏

    最近除了做业务,也在尝试学习h5和移动端,在这个过程中,学到了很多,利用h5和canvas做了一个爱心鱼的小游戏.点这里去玩一下 PS: 貌似有点闪屏,亲测多刷新两下就好了==.代码在本地跑都不会闪, ...

  9. [安卓] 12、开源一个基于SurfaceView的飞行射击类小游戏

    前言  这款安卓小游戏是基于SurfaceView的飞行射击类游戏,采用Java来写,没有采用游戏引擎,注释详细,条理比较清晰,适合初学者了解游戏状态转化自动机和一些继承与封装的技巧. 效果展示    ...

  10. Monyer.cn黑客小游戏

    花了一天的时间,Monyer给大家带来了一个有趣的东东——拥有15个关卡的黑客小游戏. 入口http://monyer.com/game/game1 因为一直以来都是大家跟我一起学习网络技术嘛,所以这 ...

随机推荐

  1. docker和docker-compose便捷安装

    安装docker: curl -fsSL get.docker.com -o get-docker.sh&&sh get-docker.sh 或: curl -sSL https:// ...

  2. Dubbo-Activate实现原理

    前言 在Dubbo中有Filter使用,对于Filter来说我们会遇到这样的问题,Filter自身有很多的实现,我们希望某种条件下使用A实现,另外情况下使用B实现,这个时候我们前面介绍@SPI和@Ad ...

  3. Linux系统安装 tftp服务 NFS服务

    安装tftp服务 安装 sudo apt-get install tftp-hpa tftpd-hpa 配置文件 # /etc/default/tftpd-hpa TFTP_USERNAME=&quo ...

  4. 【Android】Configuration中的locale已过时

    Configuration中有很多属性的设置,在编译时提示错误说locale已过时这个是设置语言的 使用最新的方法如下 configuration.setLocale(locale);

  5. IDEA把项目推送到Gitee

    1.在gitee注册账户:QQ注册就是:QQ邮箱和密码 2.新建一个自己的仓库 3.打开本地的IDEA中的项目 4.添加git项目标记||前提都是IDEA已关联你的GIt软件 5.查看git项目标记是 ...

  6. Permanently added the RSA host key for IP address '192.30.253.113' to the list of known hosts.

    $git push origin master 报错: Warning: Permanently added the RSA host key for IP address '192.30.253.1 ...

  7. python-CSV文件的读写

    CSV文件:Comma-Separated Values,中文叫逗号分隔值或者字符分隔值,其文件以纯文本的形式存储表格数据. 可以理解成一个表格,只不过这个 表格是以纯文本的形式显示,单元格与单元格之 ...

  8. Spring02:注解IOC、DBUtils单表CRUD、与Junit整合

    今日内容:基于注解的IOC及IOC的案例 Spring中IOC的常用注解 案例-使用xml方式和注解方式实现单表的CRUD操作 持久层技术选型:DBUtils 改造基于注解的IOC案例,使用纯注解的方 ...

  9. Keras网络可视化方法

    Keras网络可视化方法 Keras模型可视化 Keras可视化依赖的两个包 参考链接 Keras模型可视化 代码: from keras.utils import plot_model plot_m ...

  10. LCD副屏-CPU,内存,时显,日期显示

    文章结构: 项目概述 成品预览 项目框架 硬件资料,代码 项目槽点 -项目概述- 以前的旧模块搁置很久没用,最近看到圈子很多倒腾电脑副屏的,咱虽然没钱,但是闲啊,刚好手头有这些东西,开干. 目的: 显 ...