- XML-Comparer
- Installing
- Running
- How this works?
- Comparing any kind of document
- XML-Comp CLI Usage
- Contributing
- To Do
- Using only the comparer package
This package is a command line tool that provides the capability of comparing two directories adding to files the differences between them, creating the possible files or folders that are missing and adding the missing tags on each file. It was made to help RimWorld's community translators(1) to know what was modified on the last XML updates and to let them keep in track of what they need to add/remove from what has been done.
(1) and maybe other indie games that uses XML
$ go get github.com/XML-Comp/XML-Comp
$ XML-Comp -original /path/to/language/english -translation /path/to/language/translationYou need two paths that we call "original" & "translation", which are described bellow:
"original": Full path directory of your RimWorld English folder"translation": Full path directory of your RimWorldLanguagefolder cloned from GitHub
My "original" path: /Users/arthur/Library/Application Support/Steam/steamapps/common/RimWorld/RimWorldMac.app/Mods/Core/Languages/English
My "translation" path: /Users/arthur/Github/RimWorld-PortugueseBrazilian
With these paths in hand, running them with xml-comp program will let you know in every file of your project what is missing by adding lines to it with what is needed to translate! That simple!
To compare any kind of files, all you need is to use the flag -doc <type name>, eg -doc html. This will use the paths that you gave only to compare the specified type of document. Another example:
$ XML-Comp -doc html -original path/to/It -translation path/to/ItOBS: This is not required, by default It's comparing all .xml files that are encountered.
$ git clone github.com/XML-Comp/xml-comp
$ cd xml-comp
$ go install
$ xml-comp helpTo Do - Check our Issues & Milestones
1- Import the package
import "github.com/XML-Comp/XML-Comp/comparer"2- Set document type variable to the desired document
// without the "." | eg: "xml" or "html"
comparer.DocType = "desired docType"3- Start the main function with the full paths to compare
// the firstPath is always what will be used as model
comparer.Compare(firstPath, comparingPath)
