今天逛知乎,看到一个问题,为什么说一切问题都是数学问题,底下波斯王子回答说,他高中时琢磨乒乓球抽奖游戏,算出了中奖概率,后来才发现有排列组合这种东西,而这个东西明显比他们琢磨的公式更具有普遍性。下面答主又说了一句话,没有走过弯路,就体会不到它带来的高效,只有被剧透的麻木,这句话让我感触颇深,不禁让我想起当初学VIM时的惊喜,正是这种惊喜,让我对它情有独钟。

刚学C语言的时候,用的是VC++6.0,后来换成了vs2008,用了差不多一年,才开始学vim,学了一段时间之后,立刻被它吸引了。

 因为自己刚开始经常漏掉分号(现在偶尔也漏掉- _ -||),才感觉A这个命令是多么地顺手。

 因为经常编译错误,然后根据错误报的行号来查找代码,才发现NUM+G这个命令定位错误是多么地迅速。

 因为经常要写了一段代码之后再添加头文件,才发现gg这个定位到文件开头的命令是多么地方便。

 因为经常写HTML文件,才发现vim内置的文本对象t多么地让我们眼前一亮。

 因为经常用fopen或者file这些函数打开文件,才觉得vim的ctrl+x ctrl+f这个自动补全是多么地猿(程序猿)性化。

 因为原来学OpenGL经常写这种代码:

x_m = sector1.triangles[loop_m].vertexs[0].x;
y_m = sector1.triangles[loop_m].vertexs[0].y;
z_m = sector1.triangles[loop_m].vertexs[0].z;
u_m = sector1.triangles[loop_m].vertexs[0].u;
v_m = sector1.triangles[loop_m].vertexs[0].v;
glTexCoord2f(u_m,v_m);      glVertex3f(x_m,y_m,z_m);x_m = sector1.triangles[loop_m].vertexs[1].x;
y_m = sector1.triangles[loop_m].vertexs[1].y;
z_m = sector1.triangles[loop_m].vertexs[1].z;
u_m = sector1.triangles[loop_m].vertexs[1].u;
v_m = sector1.triangles[loop_m].vertexs[1].v;
glTexCoord2f(u_m,v_m);      glVertex3f(x_m,y_m,z_m);x_m = sector1.triangles[loop_m].vertexs[2].x;
y_m = sector1.triangles[loop_m].vertexs[2].y;
z_m = sector1.triangles[loop_m].vertexs[2].z;
u_m = sector1.triangles[loop_m].vertexs[2].u;
v_m = sector1.triangles[loop_m].vertexs[2].v;
glTexCoord2f(u_m,v_m);      glVertex3f(x_m,y_m,z_m);

  才觉得vim的块选择(ctrl + v)替换数组下标是多么方便。

 因为经常要修改一行代码上的某个字符,才发现[f|t]+letter和; ,这几个命令配合起来是多么地犀利。

 因为经常要上下左右移动,才发现原来hjkl这四个位于home row上的按键,真的要比箭头键快很多。

 因为经常要批量注释,才发现tim pope的commentary插件的gc命令真的要比vs的ctrl+k ctrl+c快很多。

 因为经常纠结于代码风格,才发现.这个命令对于在运算符两边添加空格真是神器(移动到加号上,s空格+空格Esc,然后遇到+(配合f+;命令)就狂按.)。

 因为经常查找,才发现开启了hlsearch的/命令真的要比Ctrl + f好用很多倍。

 因为:wq用的多了,才感觉ZZ用起来是多么地顺手。

 因为Esc键按多了,才感觉将CapsLock(大写锁)映射成Esc键是多么地舒服。

 因为经常要移动到函数末尾,才发现原来]}要比[[%快一点。

 因为删除半行代码多了,才发现原来不仅可以用c$,还可以直接用C。

 因为在某行下添加代码这种修改做的多了,才感觉o真的要比End再加回车键要快多了。

 因为查找函数定义,变量定义多了,才发现原来不仅有/命令,还有#和*这两个神器。

 因为拼写错误多了,才感觉插入模式下的ctrl + w和Ctrl + h,真的比Backspace键好用多了。

 除此之外,还有种种,种种。我想,正是因为我代码写的多了,各种笨办法用的多了,当见到vim各种神奇的命令之后,我才会去彻底拜服,从此不能自拔。。

 这仅仅是我的个人一篇感想,就是想告诉大家,不要怕犯错,不要怕走弯路,这样遇到了真正神奇的东西才不会有那种剧透的乏味。同时,我也无意抬高vim或者Linux,贬低Windows或者其他编辑器。这些东西本质都是工具,真正体现程序员水平的东西不在于他用什么工具,而在于他写出了什么样的代码,具有什么样的编程思想,这才是真正值得别人尊敬或者崇拜的东西。

转载于:https://www.cnblogs.com/bwangel23/p/4526361.html

多走走弯路,才不会有被剧透的乏味相关推荐

  1. 四.卡尔曼滤波器(EKF)开发实践之四: ROS系统位姿估计包robot_pose_ekf详解

    本系列文章主要介绍如何在工程实践中使用卡尔曼滤波器,分七个小节介绍: 一.卡尔曼滤波器开发实践之一: 五大公式 二.卡尔曼滤波器开发实践之二:  一个简单的位置估计卡尔曼滤波器 三.卡尔曼滤波器(EK ...

  2. 走弯路,才是人生的常态

    黄河滔滔,历经九曲方能一泻入海:雅鲁藏布大峡谷的勘探队伍,一路披荆斩棘,曲折回环,才完成心中的 梦想 .每个人漫长的人生旅程,不可能是一条平滑的直线,弯路才是人生别无选择的主旋律. 我们一生有过多少为 ...

  3. 从投票应用说起,功能才不是轻社交App的核心呢!

    由于之前一直混迹在Same的"投票根本停不下来"频道,临睡等车的时候都会上去刷一刷.所以,当我偶然间发现还有一种专门玩投票的App时,几乎是毫不犹豫地搜了全部下载到手机上. 今天, ...

  4. C++学到什么程度才算是精通?

    C++学到什么程度才算是精通? C++语言学透是不可能学透的,这辈子不可能学透的,C又不会用,就只有学学C++,维持上班不忘记这样子. 其实这个问题应该这么说,学无止境,你准备学到什么程度? 1,初级 ...

  5. OSChina 周一乱弹 ——生死之际还能从容装逼,先生大才

    2019独角兽企业重金招聘Python工程师标准>>> @Outlooks : 电台里,主持人接到一个听众的电话. 听众:我刚刚在麦当劳门口捡到一个钱包,里面有五千多元钱. 主持人: ...

  6. 云队友丨张小龙最新公开课:不被看好的事情,才有戏

    内容来源:2021年1月19日,微信公开课Pro微信之夜.分享嘉宾:张小龙,腾讯高级执行副总裁.微信事业群总裁.注:笔记侠经主办方授权发布. 责任编辑 | 君莫笑 审校 | 金木研 值班编辑 | 君莫 ...

  7. 从数据上看:谁才是漫威的绝对C位

    2019独角兽企业重金招聘Python工程师标准>>> 复联4上映了!这次比美国还早了两天.当然,我还没看,不会给你们剧透,当然也不想不剧透. 这一部不仅是灭霸这一线剧情的结局,也被 ...

  8. esp32-C3开发板制作钉钉蓝牙打卡神器

    我之前对嵌入式.开发板的使用没太接触过.这篇文章记录我用esp32开发板制作钉钉打卡神器的过程,如果能对其他人有一点点小帮助那就更好啦. 关于打卡环境(打卡方式).我们实验室门口墙上有一个考勤机,考勤 ...

  9. 创新工场有哪些失败项目?不要只看着成功

    创新工场有哪些失败项目?不要只看着成功 李开复 ,创新工场CEO回答: 失败或碰到挑战的项目也不少.这里不点名,不谈细节,但是谈谈碰到什么挑战(有些已经失败,有些还在努力): 1.有一个项目由几个很牛 ...

最新文章

  1. nexus 4 linux,Nexus 4刷机Ubuntu Touch教程
  2. 什么是Hystrix
  3. 生成sql 脚本没有索引
  4. notepad++ 操作实例
  5. 我是如何学习写一个操作系统(九):文件系统
  6. C语言520心形表白,初学者福利!!
  7. app开发人脸登录和指纹登录_易讯云通讯推出“一键登录”,为App登录提供新方案...
  8. 【电脑问题】win10更新后,java环境有问题:Error:missing `server` JVM at `*:\java\jre8\bin\server\jvm.dll`
  9. 发布一个 Linux 下的 C++ 多线程库
  10. 利用反射打印对象一般成员属性值
  11. kafka--Struct Streaming--hdfs案例
  12. 【总结——HTTP协议】
  13. visio是什么软件
  14. 淘宝分类大全及其分组 (MySql, xls)文件,上下关系,拼写,层级,层级树,提示,2022年2月28日数据
  15. 无需Apple ID和密码即可将iPad恢复出厂设置的几种方法
  16. 美颜SDK的出现给直播和短视频平台带来了哪些影响?
  17. 特斯拉指控华裔工程师窃密案升级 要求小鹏披露源代码
  18. 『转』VC 开机自动启动程序代码
  19. SAP 获取不同币种间的汇率 RFC BAPI_EXCHANGERATE_GETDETAIL
  20. 《六朝隐逸诗学研究》高智(作者)epub+mobi+azw3格式下载

热门文章

  1. 服务器并发处理是什么?
  2. java ee页面间怎么传值_jsp页面间常见的几种传值方式
  3. 微软Skype智能聊天机器人现登陆Mac平台和网页版
  4. 如何获取新浪微博数据
  5. C语言——关于位段的理解
  6. 软件工程课程第二次任务——需求分析与原型设计
  7. 企业级网络架构—云平台高可用网络的修炼之道
  8. 浅论信息化环境下的印刷业发展
  9. Win11全新功能来袭!每天都有新亮点!
  10. 基于OpenCV的简单机读卡识别