Версия SVN в Microsoft Office - PullRequest
       49

Версия SVN в Microsoft Office

5 голосов
/ 17 сентября 2008

У меня есть некоторая документация по коду в MS Powerpoint 2003, которую я контролирую ревизиями в репозитории SVN. Я хотел бы автоматически вставлять номер последней редакции в этот документ всякий раз, когда я его открываю. Я использую TortoiseSVN. Я смог найти макрос или два, которые могли бы сработать, но мне нужен совет экспертов. :) Спасибо!

Ответы [ 4 ]

3 голосов
/ 04 ноября 2008

Если вы хотите использовать " расширение ключевого слова " с двоичными файлами (например, .doc ), вы должны использовать следующий формат:

$ ключевое слово :: ______________________ $ (подчеркивание = пробел)

:: гарантирует, что количество символов всегда будет одинаковым, иначе вы испортите двоичный файл слова.

Но это работает только до Word 2003 .

Это не будет работать для Word 2007 , поскольку файл .docx - это ZIP-файл, содержащий данные слова (например, xml). Но не имеет смысла встраивать что-либо непосредственно в содержимое ZIP.

Может быть, в будущем появится SVN-вклад , который сделает трюк также для .docx файла; -)

2 голосов
/ 17 сентября 2008

Я полагаю, что SVN не будет касаться двоичных файлов, и есть вероятность, что если вы вставите в него строку $ REV $, что-то сломается.

Я тоже ничего не знаю о "офисных макросах", но, вероятно, предпочтительнее

  1. Иметь текстовый файл с этой строкой ревизии.
  2. Пусть офисный макрос скопирует предыдущую строку ревизии (без $ REV $ для безопасности) В служебный файл до до сохранения.
  3. Имейте тот же самый макрос-офис, который вставляет случайный мусор в текстовый файл # 1 каждый раз, когда файл сохраняется.

Лучше IMO записать строку rev в документ в / save /, потому что это избавит от необходимости дополнительных коммитов просто ради помещения строки ревизии в файл, а также уменьшит зависимость от этого файла ревизии если вы используете этот PPT без вышеупомянутого текстового файла.

2 голосов
/ 17 сентября 2008

Я думаю, что можно использовать макрос $ Rev $ внутри него с форматами XML Office 2007, но я не слишком уверен, что произойдет с более старыми форматами, которые могут содержать двоичные данные. Возможно, вам придется немного подправить настройки svn, чтобы он видел файлы .ppt как текст, а не двоичные файлы, чтобы это работало, я не уверен, что такое поведение по умолчанию. См. Svn: mime-type для этого: http://svnbook.red -bean.com / ru / 1.2 / svn.advanced.props.html

Прочтите это для получения подробной информации о замене $ Rev $: http://svnbook.red -bean.com / ru / 1.4 / svn.advanced.props.special.keywords.html

0 голосов
/ 03 января 2019

Немного поздно, но я считаю, что первоначальный вопрос все еще актуален сегодня.

Вы когда-нибудь пробовали SvnProperties4MSOffice ? Вторая версия (V2), похоже, была разработана как альтернатива замене ключевых слов для MS Office 2007 и выше. Он использует TortoiseSVN в фоновом режиме: доступ к инструменту SubWCRev (в комплекте с TortoiseSVN) осуществляется через его интерфейс COM с помощью макроса VB.
Я знаю, что слово «макрос» может пугать само по себе, но подождите: это открытый код и довольно простой. Это делает его легко редактируемым и, таким образом, обслуживаемым.

Если вам интересно перейти к теме "MS Office & SVN", я приглашаю вас на прочитать одно из моих сообщений в блоге . У вас будет возможность:

  • Установите меню SVN прямо в MS Word, MS Excel и MS PowerPoint
  • Разные два документа MS Office

Отказ от ответственности: я владелец блога.

...