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 代码:
000021c0h: 69 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 = '?;
修正后的代码:
000021c0h: 69 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') *--p = '\
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键值加键盘值图片
#1