forked from Salz0/telegram_flea
-
Notifications
You must be signed in to change notification settings - Fork 0
/
po_compile.py
23 lines (19 loc) · 853 Bytes
/
po_compile.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
import os
import polib
def compile_all_languages(base_locales_path="locales"):
for lang in os.listdir(base_locales_path):
lang_path = os.path.join(base_locales_path, lang)
if os.path.isdir(lang_path):
lc_messages_path = os.path.join(lang_path, "LC_MESSAGES")
for file_name in os.listdir(lc_messages_path):
if file_name.endswith(".po"):
po_path = os.path.join(lc_messages_path, file_name)
mo_path = os.path.join(lc_messages_path, file_name.replace(".po", ".mo"))
compile_po_to_mo(po_path, mo_path)
def compile_po_to_mo(po_path, mo_path):
# Remove existing .mo file if it exists
if os.path.exists(mo_path):
os.remove(mo_path)
# Compile new .mo file
po = polib.pofile(po_path)
po.save_as_mofile(mo_path)