Scripting tools to interact with Thea 2 The Shattering files in order to translate them easily.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
LecygneNoir ca389e1cb2 Remove old translation snapshot 2 weeks ago
Database Add game files from 417 2 weeks ago
Modules Add game files from 417 2 weeks ago
Translation/fr Add translated files for 417 2 weeks ago
.gitignore remove Translation files from default gitignore as this IS the point of this repo 3 months ago
LICENSE Initial commit 4 months ago
README.md Typo in the command line to extract Databases from game files 2 weeks ago
extract_module.sh Add some more comments to clarify the code, and solve the bug that break newline when txt has space in its name 2 months ago
rollback_database.sh Add more escaping char in the good order to avoid breaking XML quote for Databases 2 months ago
rollback_module.sh Fixed sortedEvent to fix bug #8 1 month ago

README.md

thea2Shattering_i18n_tools

Scripting tools to interact with Thea 2 The Shattering’s files in order to translate them easily.

Databases

To convert from XML

grep Key Database/game_files/DATABASE_UI_LOCALIZATION.xml | grep -v "UI_EMPTY" | grep -v '<!--<Entry' | awk -F'"' '{print "#. "$2"\n" "msgid " "\""$4"\"" "\n" "msgstr " "\"\""}' > /tmp/DATABASE_UI_LOCALIZATION.pot.tmp
sed -i 's/\\E/\\\\E/' /tmp/DATABASE_UI_LOCALIZATION.pot.tmp
# Insert header
msgid ""
msgstr ""
"MIME-Version: 1.0\n"
"Content-Transfer-Encoding: 8bit\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Project-Id-Version: \n"
"POT-Creation-Date: \n"
"PO-Revision-Date: \n"
"Last-Translator: \n"
"Language-Team: \n"
msguniq --no-wrap /tmp/DATABASE_UI_LOCALIZATION.pot.tmp > Database/pot/DATABASE_UI_LOCALIZATION.pot

To rollback from po:

./rollback_database.sh Database/game_files/DATABASE_UI_LOCALIZATION.xml Translation/fr/po/Database/DATABASE_UI_LOCALIZATION.po fr
./rollback_database.sh Database/game_files/DATABASE_DES_LOCALIZATION.xml Translation/fr/po/Database/DATABASE_DES_LOCALIZATION.po fr

Modules

To convert from txt:

for text in Modules/game_files/*; do ./extract_module.sh "${text}"; done

To convert back from po:

echo "start at $(date)"; time for i in Translation/fr/po/Modules/*; do echo "rollback ${i}..."; time ./rollback_module.sh "${i}" fr; echo "done"; done; echo "end at $(date)";