原始状态

我曾经观看过小提琴家非常有激情地拉弦演奏,我有了这种想法:也许我投入到文本编辑器中的脑细胞数量和他为投入所喜好的乐器的演奏中差不多吧。我还有种奇异的想象,当他独奏的时候,脑中的核磁共振图和我在使用 Vim 中操控代码的的图像也许不会相差太大吧?

如果你愿意的话请你仔细思考下,以下是一个 Vimmer 的学习旅程的剪辑。

Vim 涅磐所经历的漫长而艰苦的道路
星期一

“Eclipse 当然是简洁实用的。”

“但是一些满脸落腮胡的奇怪家伙在工作中似乎使用 vim 确实非常快,我应该试一下。”

“好吧!我弄了个 Gvim,这看起来不是很糟糕,这里甚至还有菜单界面!”

“等等,什么?我的文本去哪了?等一下,撤销,不要啊!”

“:help”

“:q!!!!!”

……

今天剩下的时间还是回到拥有让人上瘾的自动补全样板功能的 Eclipse 中获得解脱吧。

星期二

“好吧 Vim,这是新的一天了,这是个磨砺自己学习新东西的一个崭新的机会,我不是那么容易放弃的人!”

“为什么我就不能一直呆在插入模式里面呢?FJDSAKLFJDALSKJKLDF(发狂的敲击键盘)……”

“等一下,你在告诉我保存的时候必须按 Esc-Shift-:-w-Enter?这简直就是狗屁啊。”

“在花了 2 个小时学习教程以后,我基本上懂的就是 ddp 命令可以交换两行的内容,真是蛋疼啊。”

一个礼拜以后

“哇噢,任何地方都有 Vim 啊,这意味着这付出的所有的努力将不会白费,比如当我用 ssh 远程登入主机修改一些配置的时候。”

“太爽了,嘿,朋友们来看看这个全暗色的配色主题,我新的工具链表面上看起来非常安逸了。”

“噢,真是扯蛋,我的 .vimrc 没有在我的远程主机里,当我 ssh 登入编辑一些配置的时候,所有我的酷玩意都没了。”

两个月以后

HJKL 的移动方式习惯成自然,你神秘的失去了使用鼠标的能力。

“我将始终使用我刚下载的这 400 个插件!尤其是这个折叠 latex 语法的插件,噢,哥们。”

“使用小箭头方向键简直是自我折磨啊。”

“再见,Caps Lock 键。”

“就这样吧,这是忍耐的极限,Vim 甚至不能让文本合适的自动换行,我准备回到 edit.com了。”

一年以后

更少的大声说话了。

安装 command-T 插件,每天节约成百上千次的键盘敲击。

用宏试着让你肩膀后的某个人感到印象深刻,只需要对整个文件混合大小写和掺杂 ROT13 暗码(回转十三位加密)。

最终在某个奇迹般的一天学会在肌肉记忆里用 ctrl+[ 来延缓了腕关节炎症降临。

学会了移动光标,使用 visual 模式和 * 键——这意味着已经没有退路了。

“Vim 不支持交互缓存?都 20 年了?好吧,作为一名黑客,我决定给它添加这项支持。”

查看 Vim 代码库,疯狂地让它向相反的方向运行。

“不管是谁都需要在编辑器里弄个控制台!!!这就是 unix 哲学。”

对周围的”Vim 只是将一个编辑模式合并到真正的编辑器中“观念感到无可忍耐。

因为你老是在聊天室里令人讨厌地回复”:w”,IRC的朋友们最后将你孤立。

两年以后

Vim 脚本就是一种对上帝的深恶痛绝。

有点觉得 emacs 的从始至终的指令模式相对有点像在天堂一样。

“我昨晚做了一个噩梦,梦到我始终没有学会在宽屏显示器中垂直切分窗口,这样提心吊胆真是够混帐啊。”

偷偷地瞄一下周围,绑定 ctrl+s 到保存动作,允许自己悄悄地松一口气。

意识到 HJKL 搜索定位不足以成为时间节约的终极工具,发现 :python 脚本,所建立的大量定制功能达到鼎盛期,对<Leader> 键绑定,直到你的键盘类似于 NASA 指挥中心控制面板一样有点繁多到荒谬的功能,感觉有一点糟糕。

“嘿,每个听的到我声音的家伙过来看看,我现在控制电脑,写博客,检查邮件,运行测试,调试程序,浏览 hackernews

所有的一切都能在 Vim 温暖舒适、超级可以定制化的母体中进行。为什么你这小子不做几个后空翻来庆祝一下呢?”

模糊又很长段时间后

在“文本编辑中模态的明显优势”演讲结束后失去了几个朋友。

尽情享受在 github.com/me/vimfiles (并没有)中分享自己配置的快乐中,强制自己写关于如何特立独行地安装语法检查,lint工具,自动补全,快速文档查看,成吨的杀手级缩写,世界上所有文件类型对应的插件,使 Vim 在每种功能的高效性上接近真正的 IDE 的博客帖子。开机时间日志写入服务器,下意识地使用 nano 来编辑配置文件。不会为没有使用插件和 vimrc 中的更多语法而更新所有的配置文件而感到深深的羞愧。

变得十分淡定,重复性的编辑任务再也难不住你,不再去参加 emacs 与 Vim 谁好谁坏的争论。

...这就是你用 Vim 时大脑的终级形态

本文转载地址:https://www.linuxprobe.com/tools-vim-brain.html

不敢想象!Vim使用者的“大脑”竟是这样的更多相关文章

  1. 跟我一起学习VIM

    跟我一起学习VIM - The Life Changing Editor   前两天同事让我在小组内部分享一下VIM,于是我花了一点时间写了个简短的教程.虽然准备有限,但分享过程中大家大多带着一种惊叹 ...

  2. 跟我一起学习VIM - The Life Changing Editor

    前两天同事让我在小组内部分享一下VIM,于是我花了一点时间写了个简短的教程.虽然准备有限,但分享过程中大家大多带着一种惊叹的表情,原来编辑器可以这样强大,这算是对我多年来使用VIM的最大鼓舞吧.所以分 ...

  3. vim插件和配置

    vim插件和配置 插件 pathogen 可以方便地管理vim插件 在没有pathogen的情况下,vim插件的文件全部都放在.vim目录,卸载插件很麻烦,pathogen可以将不同的插件放在一个单独 ...

  4. 【转载】跟我一起学习VIM - vim插件

    目录 写在前面:Life Changing Editor 什么是VIM 为什么选VIM 为什么选其它 为什么犹豫选择它们 VIM >= SUM(现代编辑器) 如何学习VIM 一秒钟变记事本 VI ...

  5. 使用vim编写hexo文档,并用ultisnips/snipmates/snippets插件补全

    作为一个vim使用者,编写markdown文档时若不能用vim这怎么能受的了! 下面是我编写markdown的时候用到的插件 Plugin 'Markdown'Plugin 'Markdown-syn ...

  6. (转载)跟我一起学习VIM - The Life Changing Editor

    原文: http://ju.outofmemory.cn/entry/79671 前两天同事让我在小组内部分享一下VIM,于是我花了一点时间写了个简短的教程.虽然准备有限,但分享过程中大家大多带着一种 ...

  7. 跟我一起学习VIM - vim插件合集

    2016-06-14 15:04 13333人阅读 评论(0) 收藏 举报 分类: Linux(104)  目录(?)[+]  前两天同事让我在小组内部分享一下VIM,于是我花了一点时间写了个简短的教 ...

  8. 零基础学习Vim编辑器

    **********************************************************************0.这篇教程的简介:Vim是Linux/Unix下的经典编辑 ...

  9. 如何在微软Windows平台上打造出你的Linux开发环境(转载)

    如何在微软Windows平台上打造出你的Linux开发环境 投递人 itwriter 发布于 2013-12-10 11:18 评论(1) 有348人阅读  原文链接  [收藏]  « » 英文原文: ...

随机推荐

  1. php中max_input_vars默认值为1000导致多表单提交失败

    公司内一个php的后台管理系统,之前运行在apache上,后来我给转到nginx+php上后,其他功能运行正常,有一个修改功能提交表单后没有提交成功,查了代码没查出来什么问题,后来看了下php err ...

  2. LCA:Tarjan算法实现

    本博文转自http://www.cnblogs.com/JVxie/p/4854719.html,转载请注明出处 首先是最近公共祖先的概念(什么是最近公共祖先?): 在一棵没有环的树上,每个节点肯定有 ...

  3. Calendar日期方法

    面试居然让我获取当前月份第一天跟最后一天,主要是尴尬的回答不上来. 废话不说,直接贴代码,工作应该是够用了 public class TestCalendar { // 日期也就是这了 public ...

  4. poj1789(prim)

    prim和kruskal都是求解最小生成树的算法.这道题题意就是有N个字符串就是N个节点,而字符串之间的距离就是节点边的长度,求其最小生成树的边权和. 由于是第一次用prim,所以在求安全边的时候采用 ...

  5. MAC OS 10.11.1虚拟机免费下载已安装Xcode7图片后有下载地址

    MAC OS 10.11.1虚拟机免费下载已安装Xcode7图片后有下载地址 注意:已经下载过MAC OS 10.10.5虚拟机免费下载(可安装Xcode7)链接:http://www.cnblogs ...

  6. cinder 挂载卷和 iSCSI原理

    LVM名称介绍 PV:物理磁盘 VG:卷组,多个PV可以组成一个VG,一个VG可以划分成多个LV(逻辑卷). PP:物理区块,将一个VG逻辑的划分成连续的小块. LP:逻辑区块,若干个PP组成一个LP ...

  7. 【BZOJ 3308】 3308: 九月的咖啡店 (费用流|二分图最大权匹配)

    3308: 九月的咖啡店 Time Limit: 30 Sec  Memory Limit: 128 MBSubmit: 244  Solved: 86 Description 深绘里在九份开了一家咖 ...

  8. BZOJ1552/3506 [Cerc2007]robotic sort

    Splay 与之前不同的是如果你仅仅是翻转左右区间的话可以在find里面做因为对他有影响的子树在做之前一定在他的上面从上到下搜索的过程可以把rever做了. 但这道题要求我们输出转换之前的,因此不能保 ...

  9. Codeforces 388 D. Fox and Perfect Sets

    $ >Codeforces \space 388 D.  Fox and Perfect Sets<$ 题目大意 : 定义一个完美的集合 \(S\) ,当且仅当 \(S\) 非负非空,且 ...

  10. 矩阵乘法快速幂 cojs 1717. 数学序列

    矩阵乘法模板: #define N 801 #include<iostream> using namespace std; #include<cstdio> int a[N][ ...