编译TortoiseSVN

TortoiseSVN是一款开源的SVN GUI client,其中的marge功能在diff Review代码的时候很好用,只是上一条差异和下一条差异的快捷键不能直接设置。可以通过修改源码解决。

修改文件:src\Resources\TortoiseMergeENG.rc中相应行为如下内容:
VK_DOWN,        ID_NAVIGATE_NEXTDIFFERENCE, VIRTKEY, ALT, NOINVERT
VK_UP,          ID_NAVIGATE_PREVIOUSDIFFERENCE, VIRTKEY, ALT, NOINVERT
(ps:其余热键也可以同样修改。)
主要是修改其中的ALT部分(原先为CTRL?)

然后编译,在build.txt中有详细的描述,主要有几点可能会有点不一样。
1、WiX3(1) http://wix.sourceforge.net
      Votive(2) http://wix.sourceforge.net
在新版wix3中默认包含了votive,只需要装了WIX3就可以了。
2、dictionaries/thesauri
dictionaries/thesauri(Optional) http://lingucomponent.openoffice.org/
新版里面找不到这个东西,如果有安装TortoiseSVN可以直接从C:\Program Files\TortoiseSVN\Languages下copy  en_GB.aff  en_GB.dic en_US.aff  en_US.dic
到SVN\common(与zlib,openssl同目录)

3、ext\hunspell的svn co问题
默认check out的hunspell好像有部分编码问题。查询GG结果是svn co会默认转换成utf-8编码。在遇到一些不可见字符编码的时候出问题。
如:
checkout 代码:
000021c0h69 66 20 28 2A 73 6F 75 72 63 65 20 3D 3D 20 27 ; if (*source == '

000021d0h: 9F 27 29 20 2A 2D 2D 70 20 3D 20 27 DF 27 3B     ; ?) *--p = '
?;

修正后的代码:
000021c0h69 66 20 28 2A 73 6F 75 72 63 65 20 3D 3D 20 27 ; if (*source == '

000021d0h: 5C 78 39 46 27 29 20 2A 2D 2D 70 20 3D 20 27 5C ; \x9F'
) *--'\

000021e0h: 78 44 46 27 3B                                  ; xDF'
;

修复完成后编译通过。

附,hunspell中修复的代码,直接覆盖原目录下文件使用。
hunspell.rar

 

参考资料:

http://www.moon-soft.com/doc/21203.htm  键盘VK值列表

http://hi.baidu.com/t_asm/blog/item/db1bfc2e495d46574ec2265d.html  VK键值加键盘值图片

 

« 上一篇 | 下一篇 »

2条记录访客评论

哈哈,抢到沙发了!~

Post by 防盗窗 on 2009, March 25, 2:28 PM 引用此文发表评论 #1

学习了学习了!

Post by 中国兄弟连 on 2009, March 30, 11:46 AM 引用此文发表评论 #2


发表评论

评论内容 (必填):