作者:pansz
链接:https://www.zhihu.com/question/46892579/answer/104917923
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
作者:kidneyball
链接:https://www.zhihu.com/question/46892579/answer/103998729
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
Vim的强项不是提高打字速度,而是修改代码。多说无益,随手录个简单的视频吧,用的是Intellij和Vim,Intellij装了Vim插件。任务是,我要把一个Hibernate的实体类移植到另一个使用myBatis的项目。包括了创建一个实体POJO,创建一个字段表字符串常量(用来拼SQL),创建字段到实体属性的映射表。视频中完成以上的关键部分用时不到5分钟。具体拼SQL和创建访问接口的代码不包括在视频里,这部分的效率瓶颈在于思考而不是操作。当然一般情况下可以装插件直接从数据库生成代码。但字段名和类中的属性名并不一一对应,我一个个改可能更费时。而且自动生成的代码与我们已有的代码风格可能不一致,我还得慢慢调。还有一个问题是,我当时在火车上,本机上没有装数据库。而且,在这个过程中所用到的技巧,都可以单独用在其他一些场景中。个人觉得在处理大段代码的层面上,Vim有一些特性是Intellij没有或者薄弱的,而确实可以大大提高工作效率。比起用一些代码生成插件,有个很大的好处是每一步都可以自己控制,根据需要调整到我想要的样子,而不是反过来被工具牵着鼻子走。我个人的观点是既然有IDE可用,Vim就不用去装太多界面类的插件(我一个界面类插件都没装),而应该重点加强全局文字处理方面的能力。平时写代码时就在IDE里做,涉及大段代码的整体调整而又没有合适的重构功能时就切换到Vim上做。我对Vim的掌握只是使用层面,不会写插件,不会用太高级的特性,一些操作也只求顺手不费脑力,未必是最优方案,高手轻喷。视频在此: vim配合intellij编辑代码示例