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 2dbabfe22e Remove Misc Encounter.txt from translation, there is an odd bug with it, working when manually imported, but not when used in Teah2FR mod 4 years ago
Database Update source files for v562 4 years ago
Modules Update source files for v562 4 years ago
Translation/fr Remove Misc Encounter.txt from translation, there is an odd bug with it, working when manually imported, but not when used in Teah2FR mod 4 years ago
compatibility-tools Patch convert_to_memoq to support untranslated segments and add VillageEncounter and mChapter1 4 years ago
.gitignore Add modid to gitignore to avoid publish steam secrets 4 years ago
LICENSE Initial commit 5 years ago
README.md Add a dos2unix to the Databases convert process for coherence 4 years 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 5 years ago
rollback_database.sh Add more escaping char in the good order to avoid breaking XML quote for Databases 5 years ago
rollback_module.sh Fix quote inside rollback_module, as it breaks scripts inside module and its useless as module are txt and not xml 5 years 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
dos2unix /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)";