我在MS Powerpoint 2003中有一些代码文档,我在SVN存储库中进行版本控制。每当我打开它时,我都想将最新的修订号自动插入到本文档中。我正在使用TortoiseSVN。我已经能够上传一两个可能有效但仍需要专家建议的宏。 :)谢谢!
答案 0 :(得分:3)
如果您想对二进制文件(例如 .doc )使用“ 关键字扩展 ”,则必须使用以下格式:< / p>
$ keyword :: ______________________ $ (下划线=空格)
:: 确保字符数始终相同,否则您将损坏二进制字文件。
但这仅适用于 Word 2003 。
这不适用于 Word 2007 ,因为.docx文件是包含字数据(例如xml)的ZIP文件。但是将东西直接嵌入到ZIP内容中是没有意义的。
将来可能会有 SVN贡献,这也可以解决 .docx 文件的问题; - )
答案 1 :(得分:2)
我认为应该可以在其中使用Office 2007 XML格式的$ Rev $宏,但我不太清楚可能包含二进制数据的旧格式会发生什么。您可能需要稍微调整svn设置,以便将.ppt文件视为文本而不是二进制文件以使其工作,我不确定什么是默认行为。请参阅svn:mime-type:http://svnbook.red-bean.com/en/1.2/svn.advanced.props.html
请阅读此内容,了解$ Rev $ replacement的详细信息:http://svnbook.red-bean.com/en/1.4/svn.advanced.props.special.keywords.html
答案 2 :(得分:2)
我相信SVN不会触及二进制文件,如果你在其中嵌入一个$ REV $字符串就有可能会破坏。
我对“Office Macros”一无所知,但它可能更适合
更好的IMO将rev字符串写入文件/ save /,因为这样就不需要额外的提交只是为了在文件中放置修订字符串,它也会减少对该修订文件的依赖如果您在没有上述文本文件的情况下共享此PPT。
答案 3 :(得分:0)
有点晚了,但我认为原来的问题今天仍然有用。
您曾经尝试过SvnProperties4MSOffice吗?第二个版本(V2)似乎完全是作为MS Office 2007及更高版本的关键字替换的替代设计的。它在后台使用TortoiseSVN:SubWCRev工具(与TortoiseSVN打包在一起)可通过VB宏通过其COM接口访问。
我知道“宏”一词本身可能会让人感到恐惧,但请耐心等待:这是开源的,非常简单。这使得它易于编辑,因此易于维护。
如果您有兴趣进一步探讨“ MS Office和SVN”主题,我邀请您参加read one of my blog posts。您将有机会:
免责声明:我是博客的所有者。