猪哥 的个人资料猪哥的Blog日志列表留言簿 工具 帮助
2009/3/30

Slickedit 2009 Linux版在ubuntu 8.04上的安装

题外话:为了不让某猥琐男的预言得逞,俺决定再插队增加一篇Blog~~

Linux版的安装界面是命令行的,依稀记得v11还是v12的时候还是和Windows版一样的图形化安装界面。可能SE那帮人自己也觉得无聊Linux下面搞什么GUI安装的,就从2008以后都随大流用命令行安装了。安装的时候要用sudo,Yes一下License,改改安装目录不要覆盖原来的老版本即可。

完成后就会提示导入License。注意最好也是在root权限下面搞,不然会要求你sudo cp一把手工把License File拷贝到安装目录下:

导入了License以后就可用了,发现Build日期和Win版相同:

Linux版依然是基于X Window的,非常非常丑陋的Motif风格实在是恶心得不行了。不过在Linux上面看Motif感觉勉强了,想想那些用Mac OSX的人吧~~在美丽的Aqua界面上露出一个可怕的Motif风格窗体……真是一坨牛粪插在了鲜花上啊~~我以前一直认为最老的那种JRE 1.4之前的Metal风格是世界上最难看的GUI外观,后来看了Motif才知道之前我真是孤陋寡闻了(﹀_﹀")。

要想输入中文,先要在这里设置一下:

选中该选项后下面的提示框还会告诉你要配置另外两个环境变量~~照做即可。搞定后SCIM可输入中文。不过不得不再说一下,即使是这样设置了以后SlickEdit在Linux下面用中文感觉依然是非常不好,还是尽量用Win版吧~~

注意:2009以后SlickEdit增加了配置Import/Export功能,可以利用这个功能把配置页面中所有的配置从Windows版迁移到Linux版去(2009之前的版本是没法这么搞的)。不过只能迁移可以在配置对话框中设置的那些内容,对宏和窗体什么的修改还是要自己手工搞定。
2009/3/27

SlickEdit 2009新功能简单体验

最近感冒,刚开始还成只是流流鼻涕的,到了今天居然发展成咳嗽了。咳了一天咳得我腹部肌肉痛的要死,不知道咳嗽能不能顺便锻炼腹肌。咳着咳着偶尔脑子里还闪出星爷电影里面那个把肺也咳出来的衰鬼,唉。

SlickEdit 2009最终发布的版本是14.0.0.7(之前的14.0.0.5发布了又被撤掉了)。3月25日Build的,26日就能通过2008版的下载链接下到了。今天官网的首页才改成2009。

装上后发现这回居然连我的菜单配置都给保留了,这点不错。我的右键菜单都是自己定制的,每次升级所有的菜单配置都会丢失弄得我还要搞个宏专门来自动改我的菜单。这回终于不用那么麻烦了。经过极短暂简单的试用后,体会汇报如下:

Symbol Coloring
这个应该是最能引人注意的新改进。SlickEdit空有强大的Context Tagging引擎但是代码着色居然是基于弱智的关键字匹配实在是说不过去。经过大堆用户的牢骚以后,这回终于做出了正式回应,结果就是2009里面的Symbol Coloring:

可以先直观感受一下新的符号着色效果:这是打开符号着色之前的:

这是打开符号着色之后的:

可以看到全局函数和宏定义的颜色都发生了变化。至于颜色好看与否这个就暂时不评论了。因为Symbol Coloring的颜色设置界面比SourceInsight的Color设置还要吓人,所以我直接用的是官方默认的色彩主题:

不过SourceInsight设置基础配色主题困难的问题倒是在SE里面有所缓解。因为SE的Code Coloring和Symbol Coloring颜色设置是分开的,并且能够控制要不要用Symbol Coloring。所以在Color里面的着色项还是相对少的,配置新的颜色风格的工作量也不会像SourceInsight那样庞大:

有灭注意到Comments里面的颜色配置变多了?Yes,这回也是在众人的强烈要求下,增加了类似SourceInsight的Inactive Code着色了。各位在看我前面贴的代码截图是应该就能发现了。只是在使用前注意要把C/C++里面的Color inactive regions功能打开喔:

另一个新的着色项就是可以为文档化注释的关键字着色(Doxygen、Javadoc):

可以看到Doxygen的关键字被加粗着色。这回我对SE在代码着色上的改进确实觉得满足了,没啥追求了。

Doxygen注释渲染

其实就是把我原来写的那个宏给Merge进去了,不过还挺厚道的,作者名上面还是写着我的名字。不像SourceInsight那么无耻(这厮把我解决删半个汉字问题的宏拿去后删了我的名字贴在它网站上)。

只不过比较郁闷的是,SE的人改了我一些东西,不过看起来他们没有完全明白我原来的本意,所以改了以后处理中文注释中的Doxygen超链接就出问题了(鬼佬产品的通病)。因此我自己又把它改回去了,在我的盒子里能找到最新的codehelp.e,覆盖即可。另外需要说明的是,为了方便起见,最好强制SE总是用Doxygen来渲染(除非你用的是Javadoc~~):

Smart Open

原来一直是很鄙视SE的Open工具框的。简直是一点用也没有,Win 3.2时代的风格,用起来也是非常难受。在我的SE界面上压根没它的位置。不过这回2009的Open工具框做了彻底修改,用起来非常赞。

初一看好像觉得貌似变化不大,不过在File name里面随便敲几个字那就会觉得它的好了:

它可以像Files Toolbar一样即时匹配当前目录和子目录下的所有文件,而且匹配的速度也非常快,找文件非常方便。其实这点和前面的Symbol Coloring也都是参考SourceInsight的,看来在我等大批SourceInsight前用户的煽动下,SE的人开始认真考虑要取长补短了。

Code Diff

内置的比较工具DiffZilla的新功能:Code Diff。不过说实话自从BeyondCompare 3出来以后我已经极少再用DiffZilla和Araxis Merge了。简单说来这东西就是能够让你忽略代码风格的变化,关注于代码中真正有效的改动。比如没有打开Code Diff功能前,对两个代码文件的比较结果是这样的:

实际上花花绿绿的里面大部分都是编码风格的差异,这就分散了我们的注意力。打开Code Diff以后,真正要抓的差异就一目了然了:

打开Code Diff后SlickEdit实际上是把右边那个代码调整到与左边一致的风格后再进行比较。所以恼人的风格差异就不会再把结果搅得杂乱不堪了。这点要比其他的代码比较工具来的好,因为其他工具最多只能忽略注释和空白的差异。换行的差异好像没有看到可以搞定的。

Backup History Comment


最后一个令我感兴趣的功能:自动备份增加了注释。这个功能非常实用,虽然不可能BT到每次按Ctrl+S的时候都去写个无聊的说明。但是用它在自动备份历史记录上标注一些关键点(比如调试前啊、某个功能修订前之类的)还是非常好用的。不然之前我只能通过备份的日期来估摸到底哪个备份是我调试前的版本。

不过需要特别说明的是,官方原厂的注释功能不支持中文,只要写了中文就变成方框了。当然看了截图就知道我已经搞定中文问题了(# ̄▽ ̄#),可以在我的盒子下载解决中文问题的宏文件。感觉SE最近对中文支持越来越差,不知道是不是公司里面的原先很顾全大局的那批开发者都升官了还是跑掉了,反正现在很多新开发的功能对DBCS支持都有点问题,比如那个SE 2008新增加的剪贴板窗口,在2009里面依然还是中文乱码的,也是要下载我的补丁才能搞定中文。

最后不得不说一个比较不爽的“改进”,就是这回SE的各可执行文件和动态链接库都加上了数字签名,而且在启动时还会检查数字签名,发现不对的就不能运行了。所以原来通过修改vsapi.dll解决调试界面Memory字体糊成一团问题的办法也不能用了。不过我基本没用SE内置的调试器所以也不care了,有这需求的人可以mail骚扰SE的家伙叫他们解决。

下篇日志预告

本来想今晚写的,但是今晚最终还是没有写忙其他去了~~不过为了坚定自己写它的决心,放出两张Preview,下篇日志再讲这个东西。


2009/3/6

Kingston DataTraveler I G2 16GB

买了一枚16GB的Kingston DataTraveler I G2 16GB U盘。之所以买DTI G2主要是看中其推拉式USB口,省的丢帽子。另外价格很便宜,只要180。

金士顿U盘的外形设计的特点就是丑陋,DTI实在是丑得受不了(不过我觉得世界上最丑的U盘之一是宇瞻那个微笑碟~~)。这个DTI 2代外形虽然要比老版好看一点点,但是依然丑陋。DTI G2依然是通过颜色区分容量,16G的就是这种暗红的颜色,说好听点是酒红,难听点就是猪血色。



侧面可以看到一个USB口的推钮:



这个推钮的手感还是挺不错的,段落感比较强,定位清脆也牢固:



这款U盘最让我满意的就是是其厚度只有9mm并且推钮在侧面不会影响高度。虽然DTI G2仅比DTI老版本薄了1mm,但是这就足以解决我的大问题了——因为我那个T43仅有的两个USB口是日字形排列的,只能同时插入两个标准的USB插头。我原来一个9.5mm厚的朗科U盘都只能很勉强地插入(还会把另一个插头给顶得高高的)。而这个U盘的厚度就恰好和一个标准的USB插头相同。同时和鼠标一块插入T43的USB口,不打架,安逸:



至于体积,也没有一般的推拉式U盘那么夸张,只是稍微宽了一点点:



下面开始性能测试。性能一向是金士顿DTI系列的软肋,DTI G2也是如此。16G以下的性能都奇烂,ATTO的测试值写入只有8M左右(实际拷贝文件更慢),所以不建议买。但是16G就彻底不是一个风格了,16G的由于芯片开足了4路并发,速度基本上是比8G的版本快了一倍左右,可以称得上比较快了。在我的T43上面用ATTO测试的结果如下:

差不多写16读22,看起来还是挺不错的成绩。不过ATTO的测试数据基本上和实际文件拷贝的成绩有相当的差距,拷贝文件的速度才是真正有意义的指标:

在我将其格式化为NTFS以后,无论是FastCopy、SpeedCommander还是Directory Opus,往里面拷贝大文件的速度基本上都是稳定在14.5~15M左右,和ATTO的测试值相当接近。这个成绩甚至超过了传说中的钢铁侠,因为之前试过的一个钢铁侠16G在我本子上实际拷贝速度只有13M左右。对于这种价位的U盘来说这个成绩已经十分满意。

使用量产工具获得的具体参数如下:

Controller Version: SK6211BA
Total Flash Size: 16384 MB, 4K Page, MLC
Part name: TH58NVG7D1DLA87(东芝的)
Production date and time: Wed Jan 07 12:30:24 2009

Vendor Name: Kingston
Product Name: DataTraveler G2
Plane(s): 1
External Interleave: 4 Way
tRc/tWc: 40.00 ns (25 Mhz)
Max Current: 200 mA
Real Density: (15.021 GB)