博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
制作TortoiseSVN最新版本的中文DLL(转)
阅读量:5060 次
发布时间:2019-06-12

本文共 2221 字,大约阅读时间需要 7 分钟。

转自:

自从发现了SVN后,我在自己的项目中总是使用SVN来做源代码管理,在windows上使用TortoiseSVN做客户端。TortiseSVN作为windows客户端有个非常好的用途,就是不需要SVN的服务器,就可以管理本机硬盘上的代码和文档。我也一直这样使用。可以参见猛禽的Blog,(CSDN的blog到底出了什么问题,都不能访问了)

一直用了TortiseSVN1.1.3没有升级,今天早上,手工检查了一下,发现升级到1.1.7.3332,就去下载了看看。尽管我不用翻译后的TSVN,但基于习惯,总是要去下载一个中文包。嗯,却没有发现有相应的中文语言包下载。再看了一下转移到的TSVN的帮助站点,才发现现在帮助方式已经修改了,采用了PO文件作为翻译方式。PO文件其实是UTF-8的文本文件,非常容易编辑,这样也方便了翻译。但最后需要注入近语言DLL,才能被TSVN使用。目前TortiseSVN的版本比较新,所以还没有相应的中文DLL出来。一时有兴趣了,就自己来编译个中文DLL吧。

首先,要看看TortiseSVN的帮助了,现在转到,帮助内容丰富了许多,首页右侧的常见问题,一定要看看。

关于TSVN的language的问题,有个页面谈到了:。里面的这个链接就是关于TSVN的翻译的完整说明:。

1,首先下载翻译好的语言文件:Tortoise_zh_CN.po
到 下载最新的Tortoise_zh_CN.po,因为简体翻译还在进行中,所以在 有更新的,可以看到翻译了96.5%。在文件中可以了解两位中文简体翻译者
NetCobra <
>
Cecil Sheng <
>
在此表示感谢。

2,然后下载注入软件:ResText

在下载。它是一个将PO里的数据注入到你自己的资源DLL的软件。

3,最后是下载两个空的语言资源DLL:TortoiseProcLang.dll(主程序使用),TortoiseMergeLang.dll(合并比较程序使用)

在下载,一定要下载版本对应的空DLL。当当当当,在这个页面没有1.1.7。我试了一下1.1.5的DLL,确实是不行的。后来就想,自己来编译一下TSVN,这就是OpenSource的好处啊。

编译语言资源DLL:

利用老版本的TSVN,CheckOut出:。看看build.txt,编译整个的TSVN,需要的资源(很多配套软件,磁盘空间1.5G等等)。但我们只是编译两个资源文件,是不需要这些的。用VS2003打开整个解决方案,可以看到有两个专门的语言项目:TortoiseMergeLang;TortoiseProcLang。
先将项目根目录下的version.in另存为version.h,将头文件里面的$WCREV$全部替换成3332。然后在VS里面编译且只编译:TortoiseProcLang,TortoiseMergeLang项目。这样在..\..\languages目录下就有了TortoiseMergeLang.dll,TortoiseProcLang.dll。

4,PO注入到DLL:

将四个文件:TortoiseMergeLang.dll,TortoiseProcLang.dll,ResText.exe,Tortoise_zh_CN.po放到一个目录下。从查询到简体中文的localID是2052。然后再控制台里输入:
restext apply TortoiseMergeLang.dll TortoiseMerge2052.dll Tortoise_zh_CN.po
restext apply TortoiseProcLang.dll TortoiseProc2052.dll Tortoise_zh_CN.po

将生成的两个xxx2052.dll copy到TSVN的目录下的languages目录(必定是C:\Program Files\TortoiseSVN\Languages\,TSVN安装的时候没有让选择目录。)

然后在右键关联菜单TortoiseSVN条目中选择“Settings”,就可以设置中文语言包了。

使用了1.1.7版本的TSVN后,发现了我一直想要的功能,就是自动关于提示窗口,比如checkout,commit后,没什么问题的话,提示窗口会自动关闭了,如果你使用多TSVN后,就能感觉,这个功能是多么的实用。

看截图,可以看到还有一些地方没有翻译,我按照Tortois.pot里面的条目,在中文PO中添加了两处翻译。

#: Control-ID:1066,

msgid "&Close windows automatically"
msgstr "自动关闭提示窗口(&C)"

#: Control-ID:1123,

msgid "D&on’t close on conflicts"
msgstr "提示冲突时不要关闭(&o)"

重新注入,程序提示中:没有翻译的地方少了4个(不知道为什么)。将新的TortoiseProc2052.dll覆盖过去,然后再看看,呵呵,这两处地方已经是中文的了。

如果谁需要TortoiseSVN 1.1.7.332版本的中文DLL,可以发Email给我。

转载于:https://www.cnblogs.com/meetrice/archive/2012/05/11/2495380.html

你可能感兴趣的文章
在Windows 8.1及IE 11中如何使用HttpWatch
查看>>
时间仍在,是我们在飞逝
查看>>
[转]数据挖掘中所需的概率论与数理统计知识、上
查看>>
centos一键安装lnmp成功后无法访问ip(解决办法)
查看>>
在JS中使用全局变量
查看>>
Django学习-4-request获取数据
查看>>
python----redis
查看>>
证明:37的500次方减去37的100次方的结果是10的倍数!
查看>>
android 自定义流布局实现
查看>>
rzsz的安装
查看>>
批处理常见疑问
查看>>
枚举数与可枚举类型(笔记)
查看>>
marquee标签使用【转载】
查看>>
3.1 查找文本
查看>>
详细的SQL中datediff用法
查看>>
打造属于你的聊天室(WebSocket)
查看>>
Spring Boot 整合 Shiro-登录认证和权限管理
查看>>
P2668 斗地主
查看>>
Sharepoint学习笔记--资料收集--Sharepoint的内建字段
查看>>
.Net 配置的简陋解决方案
查看>>