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

Piotr Czajkowski 36966ac9f0 Added info about deanonymization hace 6 años
bin a0d4f3d126 Fixed broken logic hace 7 años
mac ebee578c3d Added option for mac hace 7 años
.gitignore 9a1c88ac44 Added .DS_Store hace 6 años
LICENSE.md d3ebd190e9 License hace 7 años
README.md 36966ac9f0 Added info about deanonymization hace 6 años
anonymize.c 5245969d07 Able to deanonymize comments hace 6 años
comments.c 5245969d07 Able to deanonymize comments hace 6 años
comments.h 5245969d07 Able to deanonymize comments hace 6 años
makefile 744c72afe7 No need for dict and keyval hace 6 años
stopif.h 45bdd3d8ca Formatting hace 7 años
test.docx b13896656d Better version hace 7 años
xmlbuff.c 45bdd3d8ca Formatting hace 7 años
xmlbuff.h ff36614bb9 First version hace 7 años
zip.c b683111e19 Able to save transformation as bin file hace 6 años
zip.h 5245969d07 Able to deanonymize comments hace 6 años

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"

File called test.docx.bin will be created containing details of the transformation.

You can also deanonymize comments. Proper bin file, named ".bin", must be present.

./anonymize test.docx -d - test.docx will be replaced with deanonymized version.

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

You'll need libarchive, libxml2 and lbinn 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!