Scripting tools to interact with Thea 2 The Shattering files in order to translate them easily.
Vous ne pouvez pas sélectionner plus de 25 sujets Les noms de sujets doivent commencer par une lettre ou un nombre, peuvent contenir des tirets ('-') et peuvent comporter jusqu'à 35 caractères.
LecygneNoir 8756b6f14e Add files for v666 thanks to Shiro il y a 4 semaines
Database Add source files for v622 il y a 7 mois
Modules Add source files for v622 il y a 7 mois
Translation/fr Add files for v666 thanks to Shiro il y a 4 semaines
compatibility-tools Patch convert_to_memoq to support untranslated segments and add VillageEncounter and mChapter1 il y a 1 an
.gitignore Add modid to gitignore to avoid publish steam secrets il y a 1 an
LICENSE Initial commit il y a 1 an
README.md Add fr translation for v622 and update mod accordingly il y a 7 mois
extract_module.sh Add the possibility to manage empty modules in the event .txt files, fix #10 il y a 9 mois
rollback_database.sh Add more escaping char in the good order to avoid breaking XML quote for Databases il y a 1 an
rollback_module.sh Add the possibility to manage empty modules in the event .txt files, fix #10 il y a 9 mois

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_QUEST_LOCALIZATION.xml Translation/fr/po/Database/DATABASE_QUEST_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)";