特别放送 | 每个开发人员都应该学一些VIM
特别放送 | 每个开发人员都应该学一些VIM
讲述:葛俊
时长16:15大小14.88M
什么是 VIM?
特点一:VIM 独特的命令模式使得编辑文档非常高效
特点二:VIM 是跨平台做得最好的编辑器,没有之一
小结
思考题
赞 3
提建议
精选留言(14)
- Jxin2019-10-071.严格要求自己代码的规范,深入学习并运用重构手法。坚持两三个月后,突然有一天,就发现自己写代码打开了一片新天地,一切都变得整洁,明确。 2.对于vim用得很烂,严重依赖idea和鼠标。但我愿意相信,如果能脱离鼠标,熟练命令行的开发模式,很可能这也会是一片新天地,一个关于高效的新天地。 3.期待老师的个人效能篇。前面的章节写得很棒,很多干货和知识延伸,极客的专栏买了大半读了大半,您的这个专栏,个人觉得跟宝玉老师的软件工程之美带来的感受相似,虽非纯技术文章,但对实际工作和国内软件开发的帮助都极大。对国内,非专科的程序员都是很宝贵的财富,谢谢您。展开
作者回复: 首先非常感谢你的支持!能对大家有帮助,这个专栏才有价值! IDEA本身的快捷键也是非常强大的。可以抽一点时间看看,找到自己最常用的几个记住。 对工具的使用,一个建议是在日常工作中留意最经常重复和繁琐的工作步骤,隔上一阵子花一点时间做工具方面的调研,看看有没有合适的工具或者工具使用方法可以对这些流程进行优化。每次优化一点点即可。不要贪多。
7 - 技术修行者2019-10-04编译器有点儿像编程语言,不同的人有不同的爱好,比较容易引起争吵。 最近一年多一直在用VS Code,对于vim,更多的是到服务器上的维护工作时会用到,例如检查服务器或者应用配置,这种情况下,不是深度使用vim,知道基本的命令操作就好了。 曾几何时,我看到别人基本不用鼠标,直接通过键盘可以完成大部分日常工作,非常羡慕,也背过很多快捷键,但后来基本忘的差不多了。这种事情如果没有形成“肌肉记忆”,基本没啥意义。 我现在的理解,软件开发的工作更多是脑力工作,工具可以提高我们的效率,维护一套适合自己的工具箱很有必要,但是过度关注这些,可能会舍本逐末。当然,我的理解可能会很片面。展开
作者回复: > 我现在的理解,软件开发的工作更多是脑力工作,工具可以提高我们的效率,维护一套适合自己的工具箱很有必要,但是过度关注这些,可能会舍本逐末。 这个对工具的理解我很赞同!工具是辅助。 (update 2019-10-05)补充一点,不过工具对效率提高带来的量变也可能引发质变。比如前面文章中提到的“截屏工具链”。 > ...最近一年多一直在用VS Code...这种事情如果没有形成“肌肉记忆”,基本没啥意义... 我最近几年也没有主要使用VIM。主要使用的是Intellij系列的IDE比如WebStorm,IDEA,PyCharm,以及最近开始使用的VS Code。不过在这些IDE中我都有在使用VIM的插件,使用已经形成肌肉记忆的命令。 正是因为VIM有这种命令行和跨平台,我才冒着引发IDE争吵的风险进行推荐 :)
5 - Y0242020-01-06既然都说了 what 和 why,怎么能少了 how 呢? 狗尾续貂,补充下 vim 攻略链接: http://yannesposito.com/Scratch/en/blog/Learn-Vim-Progressively/ 左耳朵耗子翻译中文版:https://coolshell.cn/articles/5426.html
作者回复: 👍👍 我在另一篇文章里也系统介绍了How:https://time.geekbang.org/column/article/150779
4 - 我来也2019-10-04行内查找命令F/f T/t 可以了解一下。 // This is mkaing sure that userTotalScore is not 从行尾移到mkaing的k只需要在普通模式下依次按下Fk,两个按键,光标就到k上了。
作者回复: 赞!看来@我来也 是个VIM行家呀。我知道F/f T/t这个命令,不过一般我只在后面接',",{},()这些字符时使用。因为a-z这些字符太多,一下子看不清。 举一个我最常用的例子: import Layout from "../components/layout" 当光标在字符串中某个位置,我需要修改从光标位置到双引号位置时,我会使用ct"或者cT"。 欢迎继续讨论 :)
共 5 条评论2 - -W.LI-2019-10-04vim命令确实很cool,可惜掌握的不好。
作者回复: VIM命令超级多。推荐方法是逐步学习。一次学几个在当前最常用最有用的,等到编程肌肉记忆之后再新学几个。
2 - 腾挪2021-01-19原来也是 emacs 大佬啊,膜拜。1
- Johnson2019-10-17vim的多模式特点,让它确实是应用范围最广的编辑器,啥都能搞个vim插件,这一点上emacs真是没法比。不过emacs高人尝尝开发出神级插件(magit,evil),各有千秋。Spacemacs绝对是值得一番折腾的,其实是将vim的leader key发挥到了极致,再结合evil和emacs丰富的插件,真叫一个酸爽,感兴趣的可以参考我的github的spacemacs 配置https://github.com/Johnson9009/dotfiles/blob/master/editor/spacemacs.d/init.el, 高频率用上一个月,别的不敢说,以后在服务器上纯字符界面的开发环境,不会再想用其他的编辑器了。就像项目中说的最好的编辑器既不是VIM也不是Emacs,而是Emacs+Vim。展开
作者回复: 这是Emacs的实力粉丝了!我有空也看看Spacemacs!
1 - 我要收购腾讯2022-02-08换上机械键盘,使用手掌按压 Ctrl, 小拇指从来没酸过 >_<
- BBQ2021-05-07之前也认真背过VIM 命令,好久几年没有用过了。最近再打开,发现基本的命令 j, k, w ,/ 搜索,i 进入编辑模式, c+w 修改单词, o 添加新行 还记得,感觉已经是在潜意识里面了。
- ck2020-05-09在"非vim按键 vim按键" 比较重到达当前单词的结尾的vim 按键应该是e 不是c.
作者回复: 多谢指出。我联系编辑改正!
共 3 条评论 - 苦行僧2019-11-18当你发现 vim vim浏览器插件 idea-vim插件 相互配合的时候, 你就能感受到各种快捷键的便捷了
作者回复: VIM的这个跨平台的确厉害!另外这三个怎么**相互**配合,能给大家分享一下吗?
- 于小咸2019-10-11有个小问题,在vs code中使用vim插件的时候,怎样使用命令行打开其他的文件呢?
作者回复: :e <file-path> 这个跟VIM是一样的命令。不过当前目录是现在打开的文件的目录。 不过,我还是会使用VS Code原生的Cmd+P来打开文件 :)
- Miletos2019-10-10VIM重度使用者,中毒太深,戒不掉了
作者回复: 哈哈,我曾经中过Emacs的毒,后来戒掉了,换成了VIM。不过瘾没有那么大了 :)
- 鱼_XueTr2019-10-07近几年一直在用Emacs&Vim的Spacemacs
作者回复: 我没有使用过Spacemacs。当年我用Emacs的时候,一开始是直接使用Emacs,后来知道了VIM的命令模式的好处之后,偶尔使用Emacs的时候,会使用Viper。 看起来Spacemacs是把Viper这种方式应用到了一个新的高度 :)