• 优测优社区干货精选|老司机乱谈编辑器之神——vim


    文 / 腾讯 吴双

    前言

    优测小优 有话说:

    腾讯优测只有应用测试大神?不不不,我们还有各种研发大牛!


    vim 是一种信仰,我自从2004年有了这个信仰,已经12个年头了。本文介绍了学习vim的方法以及一些vim常用的插件让大家对vim的功能有一个初步的认识。

    vim与神的编辑器emacs的争论从来没有停止过。其实两种编辑器的设计哲学完全不同,风格迥异。vim的特点是Composability,Emacs的特点是Extensibility。vim使用键序列输入,Emacs则经常使用组合键(同时按)输入,跟弹钢琴一样。所以Emacs有个绰号Esc + Meta + Alt + Ctrl + Shift。正因为各种显著的差异各种争论在所难免。而当你得证大道的时候你就会发现自己曾经的言论大部分是自己的臆想或偏见。《一代宗师》里有句话,习武的人有三个阶段,见自己,见天地,见众生。提高自己的格局,少一些争论,静能生慧。
    目标

    有人会问什么事vim能做emacs不能做?有,帮助乌干达的可怜儿童。这个梗当你启动vim的时候就明白了。好了,既然你已经启动了vim了就往下继续看吧。

    磨刀不误砍柴工,如何达到人剑合一的高效呢?很多人觉得只是选择剑就行,但同样重要的是剑也会选择人。体会一下vim 如何选择使用者的,需要不断提高自己的的水平来适应剑,才能真正的人剑合一。另外需要注意,剑如果不用,钝的速度超乎想象。

    有一天你所学的vim命令都成了过眼烟云,不复记忆。所有输入都跟条件反射一样自然,因为这些东西还藏在你的意识里。这时,你就会享受到思想通过指尖流出的畅快感,毫无滞涩,欲罢不能。时光荏苒,白驹过隙,你会发现已经将灵魂铸入了剑中。阳光明媚的午后,一杯清茶,清脆的键盘声,思绪如潮水般的从指间涌出,这正是一种生活的态度。

    法门

    学习的方法有很多种,其实效率才是关键。什么努力就会成功之类的话那是流传多年的心灵毒汤。用学习英语来举例,有的人听voa学习英语,很努力但感觉进步很慢,其实VOA的生词大约10000出头了,对于很多人来说,直接阅读都是有一定的困难,如果只是听,那学习提高的效率非常低。上帝给每个人的时间都是一样的,效率低的就会淘汰,想要生存,就要拥抱变化,提高效率。
    我们说说学习vim的过程,如果一上来先看一遍vim手册你会什么也没学到,比如光是模式,vim具有6种基本模式和5种派生模式。然后你就会留下一个印象,这个东西非常复杂,什么也没学会。就像是外行看看了一盘棋什么也没记住,但是高手看过之后基本全部记下了,可以复盘出来。我用自然选择的方法来学习vim,就是先用起来,如果想用什么功能就翻一下手册,当年基本使用熟练以后,整体的学习一下vim手册,你就会发现,很多东西一下子记住了,剩下没有记住的基本是你不需要的功能,因为每个人需要的功能都不完全一样,不需要掌握所有的功能,当你有一定的基础后,就可以自动识别出你需要的功能。总结一下学习过程,先用起来,最后再系统的学习。需要掌握的技能只有一个:查看vim手册。此外还有一些略为奇葩的学习方法,比如玩游戏,vim-adventures这个网站就是一个在线游戏,通过游戏让你学习vim,不过效果如何就没有试过了。

    误区

    很多人把vim配置成IDE的样子来用。其实vim和IDE完全是2个设计思想,无论用什么插件来模仿IDE也只是貌合神离,还不如直接用IDE。这是一种错误的使用方法,放弃这条路,回头一看海阔天空。千万不要让固有的思想束缚我们的想象力。
    可能有人想要vim的配置,配置岂能尽如人意,关于配置每个人都不一样。spf13-vim这里有个vim插件和 配置的集成版本,可以用来学习体验。笋因落箨方成竹,当你蜕变之后就会形成自己的一系列配置和插件,就再也不会要别人的配置了。
    寓繁于简,以简驭繁,千万不要在vim上装一大堆插件,大部分插件都不是你所需要的。插件上要做减法,能少用一个就少用一个,毕竟大部分人无法同时掌握太多的武功,当然有些仙风道骨的异士奇人。

    启示

    如何生成一个随机的值?http://random.org使用了大气噪声,其实让新手尝试退出vim就会生成随机的序列。
    这里只说一下最基本的操作,让你10分钟把vim用起来
    启动退出
    vim启动以后进入普通模式,按i,则进入插入模式,这时候vim就跟notepad一样了,输入完成后按esc回到普通模式,按:wq 完成保存退出(:表示输入命令,w表示write,q表示Quit)。为什么要有模式的概念?其实最简单的notepad都有模式的概念,键盘用来进行输入模式,鼠标用来进行命令模式。vim因为是全键盘,必须通过模式来区分,你输入的到底是文字还是命令。

    输入命令

    上图的应用需要一些时间,我们用自然语言的方式来理解一些简单的命令序列。

    1

    点击原文链接(体验更佳哦~):优测优社区干货精选|老司机乱谈编辑器之神——vim

    腾讯优测(utest.qq.com)

    腾讯优测是专业的移动云测试平台,为应用、游戏,H5混合应用的研发团队提供产品质量检测与问题解决服务。不仅在线上平台提供「全面兼容测试」、「云手机」「缺陷分析」等多种自动化测试工具,同时在线下为VIP客户配备专家团队,提供定制化综合测试解决方案。真机实验室配备上千款手机,覆盖亿级用户,7*24小时在线运行,为各类测试工具提供支持。

    (听说关注公众号马上就有腾讯内部移动研发及测试彩蛋哦~)

    1

    感兴趣可以马上加官群勾搭客服妹妹哦~

    优测官方qq群:214483489

    优测云服务平台是腾讯推出的一站式移动云测试服务平台,拥有十年终端测试服务经验,提供兼容性测试、自动化测试、云真机、设备分享等多种服务方式。
  • 相关阅读:
    MFC绘图机制(二)-双缓存
    C89:论数组/指针/引用
    C89:论预处理命令
    图像优化大坑
    MFC 对话框和属性表
    jQuery-plugin-pagePiling
    jquery-ui-chosen
    JavaScript DOM编程艺术小笔记
    微信公众号素材
    iOS沙箱传值
  • 原文地址:https://www.cnblogs.com/utest/p/5667585.html
Copyright © 2020-2023  润新知