Anonymize (and then de-anonymize) comments in Word documents.

Piotr Czajkowski d3ebd190e9 License 6 gadi atpakaļ
bin a0d4f3d126 Fixed broken logic 6 gadi atpakaļ
.gitignore 12716124cc Added ignore file 6 gadi atpakaļ
LICENSE.md d3ebd190e9 License 6 gadi atpakaļ
README.md 65c6926020 Information about Windows binary 6 gadi atpakaļ
anonymize.c ff36614bb9 First version 6 gadi atpakaļ
comments.c 9a6200279b Small improvement to readability of freeing 6 gadi atpakaļ
comments.h d13543ab22 Slowly cleaning up 6 gadi atpakaļ
dict.c 9de8cd02ec Fixed few minor errors 6 gadi atpakaļ
dict.h ff36614bb9 First version 6 gadi atpakaļ
keyval.c 9a6200279b Small improvement to readability of freeing 6 gadi atpakaļ
keyval.h ff36614bb9 First version 6 gadi atpakaļ
makefile d3285b9e49 Added option for win (mingw) 6 gadi atpakaļ
stopif.h ff36614bb9 First version 6 gadi atpakaļ
test.docx b13896656d Better version 6 gadi atpakaļ
xmlbuff.c 9de8cd02ec Fixed few minor errors 6 gadi atpakaļ
xmlbuff.h ff36614bb9 First version 6 gadi atpakaļ
zip.c 7242a7931c Big refactor 6 gadi atpakaļ
zip.h 7242a7931c Big refactor 6 gadi atpakaļ

README.md

Anonymize DOCX Comments

While doing review in Word documents translators/reviewers often use tracked changes and comments to exchange feedback on translations. Usually these people are from different organizations and shouldn't know about each other. Hence the need to anonymize comments and this is what this tool will do for you.

It'll go through comments in "word/comments.xml" and change each author's name to Authornumber, where number starts from 1. It'll keep track of authors so "John Smith" will always be "Author1" for instance. After it's done it'll print list of authors and their new names.

Usage:

./anonymize test.docx - test.docx will be replaced with anonymized version.

./anonymize test.docx test2.docx - anonymized version will be saved as test2.docx leaving original test.docx intact.

Running it on provided test.docx should produce:

"King, Stephen" is now "Author1"
"Kowalski, Jan" is now "Author2"
"Piotr Fronczewski" is now "Author3"

You'll need libarchive and libxml2 to compile it. It was created as learning project while I was exploring C, so use it freely, but at your own risk. Output was tested with Word 2013 and Libre Office Writer.

To relieve your pain I've added compiled Windows 64 bit binary in the bin folder. It includes all necessary MingW dlls. Enjoy!