前言
九月份被安排去面试。听到这样的安排,下意识拒绝。想到自己的专业能力半罐水响叮当,又不善言辞,又不正经容易笑场,怎么可以当面试官呢?可是另一个声音在推我:不想做的事,渴望去做。
旁观几位同事面试过程后,开始独自面试。电话,现场,远程;有男生,有女生;有的刚毕业,有的工作年限比还我久;有的候选人我很满意,同事却说不行;也有一个进组试用了,面试他时令我想起当年的自己。近两个月,同十几位候选人交流,心生一些想法与困惑,在成都阴沉沉的秋天,就着偶尔细雨随便聊聊。
此篇源于同事的一阵惊呼。
程序员跟作家一样,都是文字工作者。不一样的是,作家打交道的文字出于笔尖,程序员打交道的文字来自四海。四海自然是很夸张的说法。其实用不着“四海”,嘉陵江与长江在重庆汇合时已经泾渭分明。在一个有一定规模的公司,同一部门下的两个开发组做出来的内部系统也能千差万别。有的输入框要求多值用逗号分割(A,B,C),有的要求分号(A;B;C),又有的提示说,多个值用换行符(A\nB\nC)。不一而足。
我们在工作中常常面临这样的尴尬。当然可以写脚本(py,nodejs)处理这类文本啦,缺点是代码不易保存,等到需要时根本找不到。文本格式又千奇百怪,好不容易找到了脚本发现不适用,沮丧的情绪冉冉上升。也许你该试一试 nvim(vim)提供的文本替换了。
去年七月,开发工具转至 nvim,同时写下《(不)习惯:向nvim的迁徙》,讲述自己拆解 IDE 需求,逐个击破重点难点,最后将“大迁徙”方案落地。一年以来,我优化了原有的 NvChad 配置,新写一些实用插件,将许多繁琐的操作浓缩进几个命令。当同事们还在界面上点来点去,我已经完成文件内容替换;当他们还在逐级进入文件夹,我已经把代码上传到了内部服务器。
使用一款自己可控的开发工具十分重要。如果你能写 JetBrains 系或是 VsCode 插件,后面的内容可以不用读。如果你写不了,我十分建议你转投 nvim 或 emacs。因为基于它们给自己写插件尤其简单,而你需要付出的,仅仅是记住一些快捷键。
本文旨在从零开始,教你写出属于自己的第一个 nvim 插件。当你发现原来写插件不过如此而已后,你在开发工具上的灵感将源源不断地喷涌而出。然后你会意识到,读完这篇文章,竟然只是长期快乐的开始。