发表于2009年12月11日, 星期五此文属于 技术体会
我平常都用VIM编辑代码,很好很强大。最近代码库的build过程使用了StyleCop,一些以前没问题的代码现在就有问题了,比如,C#中使用using来引入namespace的语句必须按照字母顺序排列,所以下面的语句就过不了StyleCop这关。
using System.Security.Permissions;
using System.Runtime.Serialization;
using System.Security;
using System.ServiceModel;
开始我想这样,Ctrl-V进入visual模式,选中这些列,然后按键:
:sort
但是VIM个这些列重新排序的结果是:
using System.Runtime.Serialization;
using System.Security.Permissions;
using System.Security;
using System.ServiceModel;
这还是逃不过StyleCop的法眼,因为ASCII字符“;”的值比字符“.”大,所以using System.Security;被排到using System.Security.Permissions后面去了,StyleCop要求的是namespace按照字母序排列,而不是行按照字母序排列,System.Security应该排在System.Security.Permissions前面去。
探索了一番之后,发现其实有办法,这样:
:sort r /[^;]*/
就得到我们想要的结果,上面的命令的含义是按照除字符“;”之外的部分来排序。
更进一步,我们可以排序using语句,而且删除重复行:
:sort ru /[^;]*/
只要发掘,使用VIM就可以获得Visual Studio一样强大的力量。
相关文章:
- 开源软件不会比“闭源”软件安全?
- PHP vs ASP.NET
- Trends: Sunshine Yellow VS Cool Blue
- Google发布Chrome 4.0正式版
- 浏览器战争进展:Google Chrome取代Apple Safari成为第三浏览器
分享到: 开心网 豆瓣网 人人网 Google书签 Del.icio.us
2010年2月23日, 星期二 07:17:32
太要命了,你干脆顺便说下怎么用vi作出这种效果好了~
[回复]
巴别塔上的雇工(Morgan Cheng) 回复:
2010年2月23日, 星期二 at 09:04:33
什么意思?你是说vim如何实现这些功能吗?
[回复]
2010年2月23日, 星期二 17:37:49
我感觉没必要用VIM来做出这样的效果,我们停止使用VIM和VI
正是有了像visual studio之类的智能型IDE,干吗还要去捞那些老古董呢
用VIM很让人纠结~
[回复]
巴别塔上的雇工(Morgan Cheng) 回复:
2010年2月23日, 星期二 at 17:57:29
编辑代码各有爱好和倾向,Visual Studio当然不错,但是Vim也有它强大的地方。
vim并不是老古董哦:)
[回复]
2010年2月24日, 星期三 01:12:57
想起前几年,用记事本来写java,然后在cmd下运行.跟visual studio比起来,真是没有可比性
也是因为有好的IDE吸引,现在学asp.net[CSharp]呢
[回复]
巴别塔上的雇工(Morgan Cheng) 回复:
2010年2月24日, 星期三 at 11:44:36
写java程序,也许用Eclipse更好一些。
即使你在写c#程序,我也建议你了解一下用vim来编辑代码,毕竟,有些情况下手头上可能没有Visual Studio。
[回复]
2010年9月2日, 星期四 17:08:10
你好,最近我在尝试从VS转移到VIM,请问有什么好的插件推荐么?我使用C#和ASPX进行开发。
[回复]
巴别塔上的雇工(Morgan Cheng) 回复:
2010年9月2日, 星期四 at 19:32:08
什么插件合适因人而异,当你觉得vim下需要什么功能,google一下往往就能找到合适的插件
如果要编辑aspx文件,至少matchit这个插件比较合适
[回复]
2010年9月2日, 星期四 20:36:29
好的,谢谢,我正在尝试ViEmu
[回复]