From 467818c659ecfae4fd3c7a7ef6cdc1b3227ce345 Mon Sep 17 00:00:00 2001 From: anonymousException Date: Mon, 17 Jun 2024 10:53:39 +0800 Subject: [PATCH] fix reversed font problem in some languages like arabic and improve filter for extraction update version to v2.4.2 --- src/font_replace.py | 33 ++++++++++++------ src/font_replace.ui | 63 ++++++++++++++++++++++++++-------- src/font_replace_form.py | 7 ++-- src/font_style_template.txt | 1 + src/main.py | 2 +- src/one_key_translate.py | 23 ++++++++++--- src/one_key_translate.ui | 45 +++++++++++++++++++++--- src/one_key_translate_form.py | 2 +- src/qm/arabic.qm | Bin 43004 -> 43740 bytes src/qm/bengali.qm | Bin 46175 -> 46919 bytes src/qm/chinese.qm | Bin 32072 -> 32592 bytes src/qm/french.qm | Bin 50771 -> 51639 bytes src/qm/german.qm | Bin 51361 -> 52229 bytes src/qm/greek.qm | Bin 49619 -> 50539 bytes src/qm/hindi.qm | Bin 46395 -> 47179 bytes src/qm/japanese.qm | Bin 35918 -> 36506 bytes src/qm/korean.qm | Bin 35106 -> 35690 bytes src/qm/portuguese.qm | Bin 47471 -> 48311 bytes src/qm/russian.qm | Bin 48030 -> 48886 bytes src/qm/spanish.qm | Bin 48237 -> 49101 bytes src/qm/turkish.qm | Bin 45996 -> 46768 bytes src/qm/urdu.qm | Bin 46337 -> 47085 bytes src/renpy_extract.py | 25 ++++++-------- src/renpy_fonts.py | 10 ++++-- src/ts/arabic.ts | 28 ++++++++++++--- src/ts/bengali.ts | 28 ++++++++++++--- src/ts/chinese.ts | 28 ++++++++++++--- src/ts/default.ts | 28 ++++++++++++--- src/ts/french.ts | 28 ++++++++++++--- src/ts/german.ts | 28 ++++++++++++--- src/ts/greek.ts | 28 ++++++++++++--- src/ts/hindi.ts | 28 ++++++++++++--- src/ts/japanese.ts | 28 ++++++++++++--- src/ts/korean.ts | 30 +++++++++++++--- src/ts/portuguese.ts | 28 ++++++++++++--- src/ts/russian.ts | 28 ++++++++++++--- src/ts/spanish.ts | 28 ++++++++++++--- src/ts/turkish.ts | 28 ++++++++++++--- src/ts/urdu.ts | 28 ++++++++++++--- 39 files changed, 515 insertions(+), 118 deletions(-) diff --git a/src/font_replace.py b/src/font_replace.py index 9ec9e99..d4684db 100644 --- a/src/font_replace.py +++ b/src/font_replace.py @@ -15,17 +15,17 @@ QFont, QFontDatabase, QGradient, QIcon, QImage, QKeySequence, QLinearGradient, QPainter, QPalette, QPixmap, QRadialGradient, QTransform) -from PySide6.QtWidgets import (QApplication, QDialog, QLabel, QPushButton, - QSizePolicy, QTextEdit, QWidget) +from PySide6.QtWidgets import (QApplication, QCheckBox, QDialog, QLabel, + QPushButton, QSizePolicy, QTextEdit, QWidget) class Ui_FontReplaceDialog(object): def setupUi(self, FontReplaceDialog): if not FontReplaceDialog.objectName(): FontReplaceDialog.setObjectName(u"FontReplaceDialog") - FontReplaceDialog.resize(663, 346) + FontReplaceDialog.resize(733, 438) self.widget_3 = QWidget(FontReplaceDialog) self.widget_3.setObjectName(u"widget_3") - self.widget_3.setGeometry(QRect(30, 10, 600, 331)) + self.widget_3.setGeometry(QRect(30, 10, 691, 421)) self.widget_3.setMinimumSize(QSize(600, 220)) self.label_11 = QLabel(self.widget_3) self.label_11.setObjectName(u"label_11") @@ -35,30 +35,38 @@ def setupUi(self, FontReplaceDialog): self.label_11.setFont(font) self.selectFontText = QTextEdit(self.widget_3) self.selectFontText.setObjectName(u"selectFontText") - self.selectFontText.setGeometry(QRect(80, 160, 411, 91)) + self.selectFontText.setGeometry(QRect(80, 160, 521, 91)) self.label_4 = QLabel(self.widget_3) self.label_4.setObjectName(u"label_4") self.label_4.setGeometry(QRect(0, 190, 81, 31)) self.label_4.setWordWrap(True) self.selectFontBtn = QPushButton(self.widget_3) self.selectFontBtn.setObjectName(u"selectFontBtn") - self.selectFontBtn.setGeometry(QRect(490, 160, 81, 91)) + self.selectFontBtn.setGeometry(QRect(600, 160, 81, 91)) self.replaceFontBtn = QPushButton(self.widget_3) self.replaceFontBtn.setObjectName(u"replaceFontBtn") - self.replaceFontBtn.setGeometry(QRect(80, 260, 411, 24)) + self.replaceFontBtn.setGeometry(QRect(0, 350, 681, 24)) self.openFontStyleBtn = QPushButton(self.widget_3) self.openFontStyleBtn.setObjectName(u"openFontStyleBtn") - self.openFontStyleBtn.setGeometry(QRect(80, 300, 411, 24)) + self.openFontStyleBtn.setGeometry(QRect(0, 390, 681, 24)) self.label_12 = QLabel(self.widget_3) self.label_12.setObjectName(u"label_12") self.label_12.setGeometry(QRect(0, 70, 81, 31)) self.label_12.setWordWrap(True) self.selectDirText_3 = QTextEdit(self.widget_3) self.selectDirText_3.setObjectName(u"selectDirText_3") - self.selectDirText_3.setGeometry(QRect(80, 38, 411, 101)) + self.selectDirText_3.setGeometry(QRect(80, 38, 521, 101)) self.selectDirBtn_3 = QPushButton(self.widget_3) self.selectDirBtn_3.setObjectName(u"selectDirBtn_3") - self.selectDirBtn_3.setGeometry(QRect(490, 38, 81, 101)) + self.selectDirBtn_3.setGeometry(QRect(600, 38, 81, 101)) + self.rtlCheckBox = QCheckBox(self.widget_3) + self.rtlCheckBox.setObjectName(u"rtlCheckBox") + self.rtlCheckBox.setGeometry(QRect(0, 270, 681, 20)) + self.rtlCheckBox.setCursor(QCursor(Qt.ArrowCursor)) + self.label = QLabel(self.widget_3) + self.label.setObjectName(u"label") + self.label.setGeometry(QRect(0, 290, 681, 61)) + self.label.setWordWrap(True) self.retranslateUi(FontReplaceDialog) @@ -76,5 +84,10 @@ def retranslateUi(self, FontReplaceDialog): self.label_12.setText(QCoreApplication.translate("FontReplaceDialog", u"directory", None)) self.selectDirText_3.setPlaceholderText(QCoreApplication.translate("FontReplaceDialog", u"input or choose or drag the directory you want to replace font here. Example:F:\\GameName\\game\\tl\\language", None)) self.selectDirBtn_3.setText(QCoreApplication.translate("FontReplaceDialog", u"...", None)) +#if QT_CONFIG(tooltip) + self.rtlCheckBox.setToolTip("") +#endif // QT_CONFIG(tooltip) + self.rtlCheckBox.setText(QCoreApplication.translate("FontReplaceDialog", u"Enable RTL (Right To Left)", None)) + self.label.setText(QCoreApplication.translate("FontReplaceDialog", u"(Fix reversed font problem for some languages like arabic, urdu)", None)) # retranslateUi diff --git a/src/font_replace.ui b/src/font_replace.ui index 75d7e24..2c85fea 100644 --- a/src/font_replace.ui +++ b/src/font_replace.ui @@ -6,8 +6,8 @@ 0 0 - 663 - 346 + 733 + 438 @@ -18,8 +18,8 @@ 30 10 - 600 - 331 + 691 + 421 @@ -51,7 +51,7 @@ 80 160 - 411 + 521 91 @@ -78,7 +78,7 @@ - 490 + 600 160 81 91 @@ -91,9 +91,9 @@ - 80 - 260 - 411 + 0 + 350 + 681 24 @@ -104,9 +104,9 @@ - 80 - 300 - 411 + 0 + 390 + 681 24 @@ -135,7 +135,7 @@ 80 38 - 411 + 521 101 @@ -146,7 +146,7 @@ - 490 + 600 38 81 101 @@ -156,6 +156,41 @@ ... + + + + 0 + 270 + 681 + 20 + + + + ArrowCursor + + + + + + Enable RTL (Right To Left) + + + + + + 0 + 290 + 681 + 61 + + + + (Fix reversed font problem for some languages like arabic, urdu) + + + true + + diff --git a/src/font_replace_form.py b/src/font_replace_form.py index 511f4ff..4b1eef2 100644 --- a/src/font_replace_form.py +++ b/src/font_replace_form.py @@ -14,16 +14,17 @@ from font_util import get_default_font_path class replaceFontThread(threading.Thread): - def __init__(self, select_dir, font_path): + def __init__(self, select_dir, font_path, is_rtl_enabled): threading.Thread.__init__(self) self.select_dir = select_dir self.font_path = font_path + self.is_rtl_enabled = is_rtl_enabled def run(self): try: log_print('start replace font ...') - GenGuiFonts(self.select_dir, self.font_path) + GenGuiFonts(self.select_dir, self.font_path, self.is_rtl_enabled) log_print('replace complete!') except Exception as e: msg = traceback.format_exc() @@ -67,7 +68,7 @@ def replaceFont(self): select_dir = select_dir + '/' font_path = self.selectFontText.toPlainText() font_path = font_path.replace('file:///', '') - t = replaceFontThread(select_dir, font_path) + t = replaceFontThread(select_dir, font_path, self.rtlCheckBox.isChecked()) self.replace_font_thread = t t.start() self.setDisabled(True) diff --git a/src/font_style_template.txt b/src/font_style_template.txt index 73ab798..976ef4e 100644 --- a/src/font_style_template.txt +++ b/src/font_style_template.txt @@ -7,6 +7,7 @@ init python early hide: return old_load_face(fn, *args) renpy.text.font.load_face = my_load_face + renpy.config.rtl = {is_rtl_enabled} translate {tl_name} python: import os diff --git a/src/main.py b/src/main.py index 356a56b..7aba70a 100644 --- a/src/main.py +++ b/src/main.py @@ -53,7 +53,7 @@ sourceDic = dict() translator = QTranslator() -VERSION = '2.4.1' +VERSION = '2.4.2' class MyProxyForm(QDialog, Ui_ProxyDialog): diff --git a/src/one_key_translate.py b/src/one_key_translate.py index 5a4f901..e5c7840 100644 --- a/src/one_key_translate.py +++ b/src/one_key_translate.py @@ -23,7 +23,7 @@ class Ui_OneKeyTranslateDialog(object): def setupUi(self, OneKeyTranslateDialog): if not OneKeyTranslateDialog.objectName(): OneKeyTranslateDialog.setObjectName(u"OneKeyTranslateDialog") - OneKeyTranslateDialog.resize(1039, 679) + OneKeyTranslateDialog.resize(1039, 762) self.selectFileBtn = QPushButton(OneKeyTranslateDialog) self.selectFileBtn.setObjectName(u"selectFileBtn") self.selectFileBtn.setGeometry(QRect(520, 25, 81, 91)) @@ -61,14 +61,14 @@ def setupUi(self, OneKeyTranslateDialog): self.localGlossaryCheckBox.setGeometry(QRect(30, 450, 571, 20)) self.selectFontBtn = QPushButton(OneKeyTranslateDialog) self.selectFontBtn.setObjectName(u"selectFontBtn") - self.selectFontBtn.setGeometry(QRect(520, 570, 81, 91)) + self.selectFontBtn.setGeometry(QRect(520, 660, 81, 91)) self.label_4 = QLabel(OneKeyTranslateDialog) self.label_4.setObjectName(u"label_4") - self.label_4.setGeometry(QRect(30, 600, 71, 31)) + self.label_4.setGeometry(QRect(30, 690, 71, 31)) self.label_4.setWordWrap(True) self.selectFontText = QTextEdit(OneKeyTranslateDialog) self.selectFontText.setObjectName(u"selectFontText") - self.selectFontText.setGeometry(QRect(110, 570, 411, 91)) + self.selectFontText.setGeometry(QRect(110, 660, 411, 91)) self.unpackCheckBox = QCheckBox(OneKeyTranslateDialog) self.unpackCheckBox.setObjectName(u"unpackCheckBox") self.unpackCheckBox.setGeometry(QRect(620, 30, 411, 20)) @@ -108,7 +108,7 @@ def setupUi(self, OneKeyTranslateDialog): self.label_14.setAlignment(Qt.AlignCenter) self.startButton = QPushButton(OneKeyTranslateDialog) self.startButton.setObjectName(u"startButton") - self.startButton.setGeometry(QRect(620, 420, 401, 241)) + self.startButton.setGeometry(QRect(620, 420, 401, 331)) self.officialExtractionCheckBox = QCheckBox(OneKeyTranslateDialog) self.officialExtractionCheckBox.setObjectName(u"officialExtractionCheckBox") self.officialExtractionCheckBox.setGeometry(QRect(620, 150, 411, 20)) @@ -145,6 +145,14 @@ def setupUi(self, OneKeyTranslateDialog): self.unpackAllCheckBox.setObjectName(u"unpackAllCheckBox") self.unpackAllCheckBox.setGeometry(QRect(30, 420, 561, 20)) self.unpackAllCheckBox.setChecked(False) + self.rtlCheckBox = QCheckBox(OneKeyTranslateDialog) + self.rtlCheckBox.setObjectName(u"rtlCheckBox") + self.rtlCheckBox.setGeometry(QRect(30, 570, 591, 20)) + self.rtlCheckBox.setCursor(QCursor(Qt.ArrowCursor)) + self.label_3 = QLabel(OneKeyTranslateDialog) + self.label_3.setObjectName(u"label_3") + self.label_3.setGeometry(QRect(30, 590, 591, 61)) + self.label_3.setWordWrap(True) self.retranslateUi(OneKeyTranslateDialog) @@ -183,5 +191,10 @@ def retranslateUi(self, OneKeyTranslateDialog): self.underlineCheckBox.setText(QCoreApplication.translate("OneKeyTranslateDialog", u"Skip extract the contents which include underline", None)) self.overwriteCheckBox.setText(QCoreApplication.translate("OneKeyTranslateDialog", u"Overwrite the rpy file if exsits", None)) self.unpackAllCheckBox.setText(QCoreApplication.translate("OneKeyTranslateDialog", u"Unpack all files (if disabled only script files will be unpacked)", None)) +#if QT_CONFIG(tooltip) + self.rtlCheckBox.setToolTip("") +#endif // QT_CONFIG(tooltip) + self.rtlCheckBox.setText(QCoreApplication.translate("OneKeyTranslateDialog", u"Enable RTL (Right To Left)", None)) + self.label_3.setText(QCoreApplication.translate("OneKeyTranslateDialog", u"(Fix reversed font problem for some languages like arabic, urdu)", None)) # retranslateUi diff --git a/src/one_key_translate.ui b/src/one_key_translate.ui index 9271e23..66dd72b 100644 --- a/src/one_key_translate.ui +++ b/src/one_key_translate.ui @@ -7,7 +7,7 @@ 0 0 1039 - 679 + 762 @@ -163,7 +163,7 @@ 520 - 570 + 660 81 91 @@ -176,7 +176,7 @@ 30 - 600 + 690 71 31 @@ -192,7 +192,7 @@ 110 - 570 + 660 411 91 @@ -351,7 +351,7 @@ 620 420 401 - 241 + 331 @@ -493,6 +493,41 @@ false + + + + 30 + 570 + 591 + 20 + + + + ArrowCursor + + + + + + Enable RTL (Right To Left) + + + + + + 30 + 590 + 591 + 61 + + + + (Fix reversed font problem for some languages like arabic, urdu) + + + true + + diff --git a/src/one_key_translate_form.py b/src/one_key_translate_form.py index 1e5ff1d..61ab8cb 100644 --- a/src/one_key_translate_form.py +++ b/src/one_key_translate_form.py @@ -263,7 +263,7 @@ def replaceFont(self): select_dir = select_dir + '/' font_path = self.selectFontText.toPlainText() font_path = font_path.replace('file:///', '') - t = replaceFontThread(select_dir, font_path) + t = replaceFontThread(select_dir, font_path, self.rtlCheckBox.isChecked()) self.replace_font_thread = t t.start() self.setDisabled(True) diff --git a/src/qm/arabic.qm b/src/qm/arabic.qm index 75e8deae6155c906c868fa6ee9c0148f5f2036e3..46b9e15ffbbabc204b7627ebac06bc75ed79bb00 100644 GIT binary patch delta 2665 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 OqP%aJ?DDaG;P!vq;9d0q diff --git a/src/qm/bengali.qm b/src/qm/bengali.qm index 9eb65392ad8e746ee1d48fe1af58d951ff8606f2..802248bd49923f1954ca0cdc1c2dc373dfb95028 100644 GIT binary patch delta 2626 zcmds%>0gxB6~}+`JUq`#a~J zf!kc~eXiJ2cD}@F#`2KOz$`Tok;a&q%$WLSz3@{YFd8t-1~z#DEA9Y03ILmW2;Pr@ z zhsl?Kql0klcmjC+6)ua)fX(Af6J>VB%Bu)j+fD(dV#71~JL)8&D=q*ZW+UN-0oYoL zl#1s-?lh#H{WH1AL)u+(lm85bQUla^X`Vk0w-}Fj0!&t26R&__v@>Ryzvs^wbfrdYD zMUTjDMgv#6{S1(Knk$d=p}6mH6|FtMlv2j+cNmLbaFxXruNcdH>_u*7O=mQ&=DJ?b z0kYrY1}r*(<;S_9bsoU(YuwOd5k?rQxfeYPfEl?w^6B94cHVN@Pr#h-`T4uT0c#6> zp$7>Wyo+&fKkt4(Ai>_{mknH_><96y%lv@YSl)lPGw{bR_^6ZFz(J1RX50a+QZTMP z%ebzZ&+?$^377c2@ntk{$l{9^Sy9G#zD#q260YPcHj+REW&EcWl#z&LzJJMOK)TN8 z=EZ-VP9@pAk^k4Bav;uV3gzvL*)3+rTp9qyLB@kWn+@Lf1>W*8dtgs>^wHO5kA|D+ zm|#ZNF9oyBWS;j(P3l~Ca})agd8))v;o+o5 z6!!yjp`SA1lwm$*gN_6`%vh;3x1RhZWhULcJ%t>{j5qz>%uZ46Cl|ZV0$FEF1~U)i zu>yHbF@U_W(bbkQe?Q}aA^DNL7brbb8C_Q~=JztzPL=n}H2`HVyvkQLH3>G)eSndxAOG^R5`==Sb;s5QFr@s{0~KW8j4nsmZ^V`#M4`E50wb3p8!+C$A^Q0(K|iLK(5CmVp-c8p%J zj5)IyYgA(Y`&3>>){3{D(tC&u5P$jk8odK&@zwSiK%XZL%iac@pE4$=FlMAmo)^ag z?%q5~U!tDGZs+YHi~hZ)PerEhekS%xIt9J)*U?kXmf za6oFQVroqT#h9sZ^%MXfXT{o@c+x0P;alSa`2CKttXkpcq$X)LC?db=qmpT3^xQMb zHArk=3(YOWdsOQ63f&ivDb*E<%-=i#CLL!iN>j8x?E>~LQ=FW?9!O7ATq>}nnlvzO z?=ZbGw=>p8C?4h?rl%IB7S(Z1&jr%` zhLkxrDS&1ZW0p}_J}I4=x}dD}si$7~7v*4)4p``=d>(QO*mhC*pC;-V+RMt94WwJz zzg0r&->Brb#Hz+5_D~PBQmu3)p{89>g-2Kb?**s|WBV!D>s5vM4#1%pRk1tOMDCF4 zQXL6oEK&9CAqVJJU0t#Q;04vQi|+sxfu?(MyV=<(s+WNR={R7)85dA5yT#}=oiV1L zG5a~=q3Nc@qVxE)>qmi*YKu`8J+dgR@&sz@OmU)}vF=Y6KbWY@b~LKzc~Q!<+|>R- zR@8iMs@I#7i=Fq?r6UmrIx<$AP`M zT*`^FC1ZLIqp4LhG2Vu{hn}&jSL2*Pl5O`k1xQo4{T`+a$ z@WHp5*FTY$00X6|HLAT+$_qAT!b#dCwMoaMb8vxH%B69i)F^e+__$P0zva?7Y2WC) zRqB#X(bq<+`=uka?*xs=Qfelv^P{_4M%NG0`f0L1J+epYdNb>in#lSH&B|$iH;tT4 z$8w})OPyB6q-v9N+jL2KU8FWDAwF5VH7Ox{i!P2PNm_kEoKCwXEI!&07Om53x5UKi zv|&kM;V}^|T0>H#!P!(2J;78k+1eDM8!vZ9buCA4dMPzW&}?C*PRpP03pS1g*C&Dw!Q_wRu{5t*(6L|A}5#D(pw} VYF|@fC;Q(EMyI#ORQ~$*e*qKRCxrk2 delta 2028 zcmXAqdsq}@6vp3~*zAipXVU zcUTb!!UV7B<0FPoq?QJy7?vi5-PF)hQ`3|TQ|##X*YA10*>BD}=Y7xFuWs_^ukdB= zT%Fxx_~fJlV59*^?Z>#poiRgUEU^FyX+ZiJV16hNb`8ib0lexVzIGQ__KSU8P^#G* zF5mhA%SFZt17mFvT)vM3k|P)^_COjD28@{rDPj!Z;lWsMhW^Z2U_?56d`|$|`@^rP z8;JY{Lno9|*R)oPQp8Hy=&!&~uNM(L2WnaNWjnGwA*^ zn>mj}lDj3A8x-G+DHxZ+O@4(6CuecCyjoz`5w1FMI--~|U`W)Y(;kgq5sz4Ai-KqQqJIgByq3V-C$C?M|}{=925FnKS3 zd&WedU^##Lt_&-dkK^yRjsu2o5Kv4nemhohA958Kbx{Z^NCiAyg^(JN8rmkja{es2 zohU?<#{vs!DHqiu(y(N}}Q$L2-#rg-k$-ir2gAd6K$`rQ;jz%m- z{3AAN)&W(Yi7nw8;JKw@Yg#ohr&H{R6DWBP#ajdKPyv4zv4b2Kl;h$y%S;X0%2+*_d;A%Lr!p3$F;=HYt)ne~BT)J^WIVN{oN=rqU3Q;NYTuBq94rU;Hd(G9 zu0AS9@9V}W6tu~Sv3@i-$K=FxqBBZP8XHH`?=5G)eG`bdDd#?B_(?|FLDeD#S(7EX z`Ikzv;U)Pi|5jQWYvgvJk@&iNx_cH7Xkv_9$e4ecu_9FNc$4DQP$*xzNBK|fmjC|q zEag5xez@`-S~7#>UhY{S;2vXoU&d@tZRqhnK*(#_q))@Smx{g+fF;;xi;N{2I||&^?EV$JBs{5o!)I}E0FZDK0KHjHKawK zI>!}wak}2Nu!BN#Pj4&s0cyAC%R(pO;vCnBQ0bAVH+hx4QDyakRTGF-8t!oNr;wuVkz>tFOxel4ElyP~EAP$|h^gRoCBC ziq)!c!^bHNbrLa$tFGdLbAO7LS;|1dPqUPH03VXSu;ntLXZQnTUW z&omB&zZq^6S%8uqhQH4)qv1?4+<&Zic06NYxZ#Opr^E2*!WW3bveibZPD2GvMq?pe zv?dtcALl=2g0bHQ@*u#SG0V(YcG);!u@^A652N#uF(8LplyP0PXkXwfSEw~wleg_Z z;}I|VjG9@-_6O1Qr;%fPbd{=1w~#HnY8!vl7A2`4`Fg6e=k-;C>xML%(wrmIhWWE3Z diff --git a/src/qm/chinese.qm b/src/qm/chinese.qm index 1af56e36186e5b32ba56c36f71d9ed05edea611a..ffda1ec6e257ec3d0047227586da4f21189695d2 100644 GIT binary patch delta 2441 zcmc(fYgAKL7RUcLH#fO?kW>ZaArL@btreeGEe}yZKnO?zX%LVE!uuhFC{=0}t5$1K z9tMzN>vC4hwAJZ!mUKB4ts^QUj*q1sZR?tjc4}*DTdatW>Ilr%(+~4~KFo)#U+%r< zoW1w|zt0|i#9f%++TFQh9UhVK=YhEzVEJ2&X$Kfrtz|461I(pBMgdTk07Mo8P1}Jf ze}s^B7trtMcrD7B*aF#w5L)#c%a*d|>Kw>EHv)0T8OsJCpOXm8tb;sxA)rZQtXl~6 zXPW`tPY4P=4b+bzn*a@uo#^uNPJ4+rRFS8#AJc5E>>2u-$O1n=2Ij2#3 z#Q~(v!20foKt6}YBgZLB4>tTvVG7QpRnZ6d2cgy73}jwFTSqI9?uou@GlA3z94x2r zni@uFEYZEBY>JlzU08GKo$6P&L&_^EMwFG z#wDlt=GX+Pe~{l%(@B4(uj1QZ^Z-^K;yblh$nZ6M_ZkvtO(y@T8#%K4EPpxfZ-C6m z7}~*qv9SWM+xZ*6>mtW^S3d9WH2X^bFsqN2ea~3+ru6y`S%7M)^p^nYqnDi0v59?v zaD_3{Q;=5B_JR;WnLuHmRSO<>8-Ru=!EgH^z$;QPWd#FSp9q@{`T${~usw|A<7xoCJy}bO|roto(dbH@$j5@j_;?TaZkK>j|NK6QpUO0 z7|l+`vU>6IDr&E~`{K6`=sqNbiFbawL^hle$6qd|{TgwCn*q#N$f*Adqj8@iVR#x4 z;ibs?(E*o_%-fk7qd2&C1HCI$9R7v&$}1Iv-q-0&8>8)Q#g{hH%vh=Tdh};n_mFw^+lN@7K zf@@sn@2qTA-fnq^u3Cz6B7}yuIzlDCO0B;124mTnYT6dcJN=SsmJfAQy-Q`6m}!>y zsy2JC2b9H(CcCODa3hekO|?h=F3rm0s_ShwAY86`nD;Hs$OhHF-=mq~8LE2RN4gmV zwb1x?YWWn4dP?08&A@DR(jpSduTgC+a--QDtZuEmOlJG3TU&yF>W|dz(bN<99qQA2 zNuZoy^|{w605+;Wi%X;?yQ%(lcqUN7yGG;zb4S&W%>q@w%}wH5OtQN(&i#mS#cwoc zv*+q&SBw}jeZ%J;(3Bc?drHe0x1Bu+K;;ovwdn7x4tD#-MO|hL*DOpS$4${1W3C6y zo?eYfMj>+F*X(?fV6=m=BwjO6_$oPkim|RxGw?8u5>MCs>npk)`DZmFZ#V!;sOHY4 zdQxsg^XN$d%eFG+7igZAP+F{+{Q3k|La*1#_ev=swA$BcW6r47{mFHRir4yVBTIY_ zG8*mN`oiFMAK6fvS4EnaOPxGD#>*J#2#1c!Fd}VI z)SowuWzEUI@m~>r5^F4Uye`X_rVGz1FD+}(8EbWEwvvVj*X>l_{@`Ru;Qzg(6IFgs VONuE!_CJ<1SQXGeUcPeLe*iWa)E58% delta 2009 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 delta 2016 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 Ka|j>s&;1X0P-*l4 diff --git a/src/qm/greek.qm b/src/qm/greek.qm index 44ac2daa44df240caaeeb8ec297b123dc544f6f2..d533de21c074692a1d305cf050175fc9cca68812 100644 GIT binary patch delta 2752 zcmd^=`CF9N7016bmzQ~GVWtL9L4`qFAkt_AF#>8eiW&(TM65(jSOx@H;=l+ZG8%9l z_7~AY7F=*a)Bp+s3NE0Ms*e~k=7~mIwbd$BRGOG7^uYB=|APM1AKvFPcRBZ*`#tBL z`7V<^+RF0nWTy)3-WKstid6LcY;*+_d#$J3r%WjQczKXUCB1M9MpSC9*&T}Aor5kN{cYGY`9;C1vw z3j~tnkl(gx0A?HIT_IC|LMM6G3lU~yRLOsBodk?Oz+j<+W80YBn1{f7dCYrbINatDs|u&C-x;NVTR%A5`a9OewU z!@1O+t)D{G6YIiq5{l@@$QYLIYY(J$up-?LKNK2WMIj7sI(xV(u&*iM_w7UBs2pAA$^~9O#D96F-c~1qP ze8}mSC0NCh`L^?dY6iKT-Xz$+NCxV|g<;wCz^GPXQIIQ;`9R31bp$3?2-*Im&sdAF z=hZ>r*eIcVxEJ8-A?zFPg$0<9Dl}Ma04gR6E&f)3>lmRmx)g{n5juhyRpLY8smpVU zyWLvopp1CfS`S!e06sKu?&`E2?0Oj}xMf|FLXKCqOCMS}smksv#M37L%Pq-dHO1Ue ztSHH+FddI5_Fkay9q(}ZUgj*0;;cBS*q_rv>CtiezUC~JI4imptzIUeEM4)FpAV@! zoYU{5;=bKNs*gvC2X#e&{F*3kCuUC)1Hb8pCkmH~p$kURLwYKPCK30@#E;(#20myO z)5HD=1fCN!`WUd1^NYVr2Ep4LStT~y`V*aVTRcCym6}Dbc!|{z>%{i%W%Q0~Ip$lBO40*zKV0LiF1>ma>fN) zU|Ohh$v;ex9IYM9t8$dJWoa~bS=so6Y}H-L(++p(%wEo&CglwSX}0l}@=n)dDhZWp zNP!$!e^WKOq#T$yLN#%Q00b*k^Ggy)qf%8+Ngy@F9h_w@ss(OZs@%6#kykEJ$;5Gf zFruGxk(R?Jj^`0Oskbdt87{t{o))0Wc&i&2v5vFky6Vu+O~8(^s%q~=zy=3ZTecn5 zq{Nx&BfYkEG9P?b_0+N(s5Gd0Mpgs1wra&sRO(SzIrlzM+is+|(>>H4j#N=~w(2DL zV(KYv>MVy8;CJ&mEs}bh%NpRbdi7U za?&kptwu=wj!NF-sTr`cm3sOtjsHXvYHX7xJi-R>+^xx7(Lu?!XmTyXfx{`9d_Ss* zqGnB7840u{UUO+PIlzyat5atJY>eiY3nPGCwo<3UX?)H}&8x)%=~!jBTRiZN6n4q07hf;3w z(FTXwQ}el}U1Uuz^8ctU?2GV|KXdL{uWk4=lOF9H&Z8%^4KJrsz5a+99NHodlU zs|hHXuYGpSNRM@m_Se1}#8hz>g=qV)u*YB9d*>|XBK?L=QD#Lceyr1NCc~}GI=jC2 z5VBO~xP@}!ah!8Q3g_3(x?u?p)IFYX?m4e>UrUmGUM($Dj*{=cDXmpHIe+P{YjU7# z92%v&^eT}4mK$}w56R2NwT&3gBvSi_3R=$&5pA+c9zva&rZ>(nN_n! zc9@-DRjh?ZXK22PouuDKXje=Bj&rPzosrt(hnoABYv`aV+SW{q^|a{(J46P@-mEpU z%QScP&G;fYY3pBU>9?sOn<{cy&l*@IJm?fY-^^NRrO$0My99TU3Io>k{lU#YCRJ}V ztTGsr43VDtsKkV1{b$C+@Hj&}4UGDv#CU@~E-WG16c%kr(#OTDFzCaKVc{_m9(t28 z(&R3=#5+polN==PxIwZ2X{E(61VIQ!0QCK$9AixsP33QL^a)V#=4LH)i_^6B-*_Bn zCWMi1eNb?K-YqC5dU>)wI8h&9h)V8vR1*-l&+GqM?XCmP(uJhKHR_!MWnAvy|ApL= N?1)Q^%dTqY{{X&nS;GJT delta 2019 zcmXApdsq}z7{=e3*}55;fh@@|sYYnU-c*TH@s~kV~JPzkc(~dCvLX^S$r+{@Nm3%oeO} zTurh2$jQ-5ffo%xqQaQElhM-6SP=k3#sldEz=}{{W-0p~SP5~~10XHCI5#jlDF#mG zO|){1@xu(pdMlj1ivVKAGuDoRGE%9!vhE<)li)m!AMOpTnw4W*}uhQp!7l;zvmR{0k~G z9qVsXnKC^JwROPg-6(X61TxxCR9pzG^F-ZMU%=dj<^)>r_Z@m;ya7WL$1R}!1N=Gn zD3ZJP3O8(F3tqv5{@mnAR5&JsE6m(M9XiidMa>7c26Od;g8;vH&K@@gm^*~qFZTlb z&T&V7AOX*Ja~HI~0r6>S4>!`XEry?VECv{{h%xynpAR?S6Mw$wKGn@V%$KY?1Z+IX zm&JyW?moVJuY-4z!0uS#9ZNbetATOBHO9s6LgoZY%ZdbH>q_#^lpt7x-N~Rq zLaFhRKVTm&l)pg@DQgf8JCg&6hbYVdOoap624AZxUk(d-GlTrU<(rGAXc7k74l1T;2?b>1X5*iW>L@kclUQpFZc zF0jiXo|viud`5_l_$uJdU&Zza0VsJEhaTrGr{tymsDvbnVz3WyH1jP&ufgqXBkTy7;RIe z-CIwPJx0dh9>&tkjJ9_rhrb!9)<{2xjHm8;Glm?Nesh~o?_{j>$ET$L-zLiy#4VX} z*uIAt3+p~PD%?c&jFY3*5Nq<}*T+QwGmgmV%l-z!zLYbbaMo(Z?W{MxfHLaS@MlXl>fvI`QBe` zl>4D_&$*?QF?Pvec zUR{Uwn8$T;Xc}X6kM@T+>RGNyd#&R(MM6;q7W2RcUu9@z9T4QJ1ciz~grv-=TuDw{ zSLRiQ(Gc9m_}(5Re3*e+ldQy^KSPmui*bhU|D1``cJ|{yf8rgA`b{P7^aHZGRLOYy zA>g}#vEpxK@1s_rJVj{=TnJ<@Q%)7QQ6^Q!%q-Pe^0L?tDR=X0>8agOdQDA$tE*1> znW7%&$yl4BbKOX~*RR$2c~YY6Rk}5NB+U*NU5-Zz@YEc}yvw?>A!)!WPPZd$C(Xtz z-Swh4V4{nzbI}c&iT=9BHkuJWR$X@;^)1Vx7gH}%T~<4Q=py~pAZpa8R(*7g zGcdMRU-)J_h32BZFy9-f@6%gDC=;rrKUG5w+H^pFW-}GQW&O7krvSnT{l6!DfgM$9 zkK{F`K-70figbO>nYX+|*+^%cEik^_&R9^vSbto7O&%_lYzqZ!UFufZ%Thnh`B#-< zmD6kpc$F;9%Q8enxzn_{VOZ!yM;6u?N}ecs;~U2JwT70Z*%bR?#>P-XOXoyV`n%zm zpXfQLD-3tGn1PBFhI?(v)T-l#t|yA)I~hxM82*=BbJoyz?Koy4?OCH#qajOg8;zT3 zW1eJmdy@YJi;bRntfYvt=Hh~ zjmB0Fy2hRcTwAF68_{2x{BZNdNm diff --git a/src/qm/hindi.qm b/src/qm/hindi.qm index eedf40a78c87c6375867bc35792eebe8023ed3be..bb762cc7983add8a56daf63fdd5d8573cb737370 100644 GIT binary patch delta 2704 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 delta 2014 zcmXAqdsGy49L4X3X&NB9Wj zHTVd_>?E0{CzHY=vnV-fidjji$JC;irIiY$hS1l3e|^rGncsZx+f1q@%k0QgtH*Y70YJO%%b z0U%-@LZ&tY@n+SVGdqhPK}LK#Fm5)o?$GVnqsZTO9LS!Bq6?)!N)XDn-6f$ua2)-F z#yGI*I*lm|K%K4)@NGh!TRLEKpuVvVNVTHv%2*)jJUR;K{)j>h*~t(knd4IF{K#a^ z-9~aN4sro$op>4{PVT8F8f+cn>elW8{1$UNZ7D$RPHw+tGGM9Z+Vds=Q`)(AL-%OnW zEEwc(_RDZ0eJX#idkQdCFQA5A{M-@2E%+J`@Td^JAqRM9qcE*iBtv%yQCH4U+J}Xi z%}GGQC?R=cAh4=KSa5hfQ1*?m(zzN4Z(^K&mhq_sVeO1)dhfHsmZg-RXT8uc)g4HF zTWB_22%~`ggl+T4kitX4hc1*r%o?FL@^e6nV+`Idd|OcntcekReswF5_^!G{Fgxvi zngbzi^w>>Chf~w{Ya(D+qxsW9y|GW%+#cEwXuoC*9wTZB>3Bhrs6<}?LTg3${uRL5 zv7&b^8SJ%LOiT0wGWLsA9iBkQ7_rt$e)zPCdj{VGs;pw0FUbuuihC!7AqoCh#ZFB% zu(DA+Zq)#zhsEyvoxto}VsElQ&5ITP^0`gAKhlc5lz=5lJ2EQ|n5<)5zE?Zi?+hi; zrEM>x!E@|trpBx+iUdO0S)5@Du3gl9@F$&>i*#Kc zeUwlrhEU!NITJ>|93C#2#;v}U>o_C$r(h)*Hrn08-|g~yJ_bo7_5`YD4)}Y9J>qcj(vu@ zMZHv-9z$J?FHnBO&@hcUv9Q~4ayJv^sDPoY;VUl)hXy6Q!X%ijHt}(ei z=>PO|ljmm2!16I;<_C;LqfFjQJ*bOcFc$w}3aliH=AKbYb>sNbH`G?0*|OwK(=iYF z495Xe&tM$=Y0NPVU!y5e`4r2#=Jt!aaaMKEd$f8YepGu@!YY5&bHQkJW7+BU_Z{E6 F{|9t!O3(lR diff --git a/src/qm/korean.qm b/src/qm/korean.qm index 0fe9fbe61b86fe244b74a46d5619f3afe9aaded0..8872a823e7a6fca7594886d008eb2805c286f391 100644 GIT binary patch delta 2501 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 S=AB`ja diff --git a/src/qm/russian.qm b/src/qm/russian.qm index a117c29242bdb34887b6c8c896deb01f0a026233..0f9237c3f68f2c84095c02462528f25258f051f7 100644 GIT binary patch delta 2749 zcmeH|`CC-y7016b_uiR13o|i71q{OkWK*KZrm};$1;qp*21M&11A+(&A_Brla9G42jfGP2^G2&_*LB_Gx2`iA@@f8x&1kdS>1}Px}Y-$Nq4i&)oAa=iKl4 zzVEaS$^ZFGUh613Tjw-3&eQ{p*8z*~GnN<`D;pVi{0O9G1LbeioOs~%dSLZdVB|#z zGY5dOxpnJ8GnNcN@wpex+QhgofU#{i6xWi0jGr0z{Ta%DDZr#oD5r-2zj?-Z><`dh zSqlVP;Nf`*I9U#_u0bHN3jW~@K*4IsO=hs{nTYf^I)RXGEO<=Ad83itcpli`hJx$G zz{;^GX?z0Ia#(fdV@mTa%I;8_`oEw?Wd#CSQRA2jR5W3GT@6su1nZ4az={lX<_W^J(G>K?A#`wc5V?cCXsP@sC)|? zfp$^8{SoC|>nE=-Jq@gjk?+V%q`H5SH@5fEHfqK-NsLWe`OaFZR}~~bHG|TGm>Jhy zmG`^|0ybTi-*D&#rtOzMcqbw8h*-Y^GPc7sda;0GL8%w=^{1BcdfD=n*m zg#C;u>lx=&a8*&{p6nuSTYdxm@T%Zy!<~TQI<7%~9XMg-8h=XyNoCwe4%CqxBiA4O zDWE>a7;%#OvOJfJF~r^8w*x2~l;(2=%jWs~d;V5H)53Uo4}a^2Bw*MX{+>JeXj29M z==l-a#*;C^Ti|nPdEJ+SI-b(Ty(BmdtN=P+7TmU;2E4BebCW!QHRpxOE>|EjL)bc% z^chzr9DI5dI6hUddISSu9}9;AgE0po-a3Ugt=pvOrQe+IzW2|4rXf05-Z97ln(Tw2-80*^^t;dzU!NtICgYxT$ zFp^~fV}wchy<-ZnJyrR`2MvJyLs8sG+;~z1SY8n^S~5!eGgU%WiH00>QI zOmt)1e3Nlsme~I$+3Wai@w*{94>_NR4}ZE!=fF#RR+|Y*#NbAKwbIrATVk-V`Hcl-w zkvx^|lv2%FmlEKm_ZT-SH9KA{2bNZ8S`!bFrCl|*wwr;d)0!vg-_a%iSo7;)x-&dm zHBYUiTh$D$u<8r4{PIWIVat2zPB&|(P9UMib!jseIRHT^+L|T(WSSvu%@z;fT~1pY zL7u3+puM!01X}N-?b}ER@P+nD^b~;Ow2v>20$S>%yGldgW-sm2RDpEtbC6pmk?!7% zvu-gKL^Ez~XKeeU6e;?RD7*G9V7lvI=gwgc^-b|~4H=}RqQTOZ>hP^ZHme@13zLZfqN}%6xWJvU<(95{VKp6tcE)3Oblp#)sq$3a&A-y|s0-HJ z-CPVbzM^}0wU9bEM)!;D3$nc!YuD)PpRlJ#_u`vRkbu%_dgWf85~}t3jkIvXWWA&9 zJf!ILuA8VQ{)ZUf31@8nK<}3CLf(A9xYtMTS3#0lYNZsFxBS3asX}FNZ@Q%KaiPyR zd`;i?G?D&P=IdYlNLkX%)TZ~IhKAMl=1NcBboDbn6`2ZM=8l%P@ zjpE1KqY<_!A4^X(&55BW(9TGHG9Sk$@DVgJo#GSuczTbrzX#LG*%XhYnPC*O#baph z6pGE}C-4atdpHpO6o{h&!f3f|FwFLw7+^1JJQZjgnPi_gnPS2GWcZ0>5-8}2@tvBp z%2;S#X)Y`>XBx8#@>dv_6&7UVnU~T_p|Pl7so9uk%Fiw~Wt)qPc{xkWMpL0FBWID) z-&kCjS?nh*%N;4D=Z=#u1`U55Nl3;_7)hG{2xI$r62>k?ARqN#*^V{e>6F>v!vC> F?O%D&^tu25 delta 2012 zcmXApdsq}z7{=e3*WS)3OFze zeyu$~Y#su_DuC5jRWHulQVS$K>jZ+^klahlE6b5ybppuG$C~qI;MFQ*RrLYZ3}hes zgvwmThMQEzHWOB@1DIlm)h&T80F>ISz-xfx;uzqS&(XSq)*l{+fixe$aF*j1(f$#e zIrl`8yT`_jTik|OnBK|FoI!0?+htM`Uua zC6xR4dlE3An>(Yu2AD>x{oEu=MLa*ZJq?%`%ecnQ7r_m9`!rvAhw5&&@#X7}0$cX* zmCIvE_iudF{th}uVa#n~tT@N-C?mbvsr->>DidsC+#1dwe=rp&oW@^tZ3E^u@V6I5 z0L9(>?YlB8*x<+i(=iPQ%o9*V2ft_$+$P=t9v?4+6f6TgjY4>x2$%zf85hq{w=;#O zDi#83<_dA!#ske$gclEQ0UGBCuUW{=m&jdLS6)=#q^_4l1csZ%Mr@L+<|p{ zLWS{s5U_u>P_>i{v0WBEbfpfY7YbdGp99JP#_&VJcN1+ z&AtE!psQnSO4nSuz5p0{Omk}#O`H3Gm8qZx~9IM@m6-tmgM$hK*76ez9z!*POns5MlwCmNN=4a`6Fe6%+SP|_}4f3E`I-^nV}ijp8XaiJfzCsR&bN34yMmpmQ^M1Ll4O8o3Qpp5`AknT5R$|g>&3V|n$bQh@Gz-YqkA;0LhdSn4Z_AwT$(N&J#2xQ#Q*<+h1(w@32 zr6wTasID*RDzGs{_ir=J2w%JIzJq+T9MX%~-%#XVUZNkmwgX7%)Xxbeqb9fNm!-J^ zQ{(m4j4o>SQoXgvhbHM4`m%7!MCoMxsd_SKYpK4okP6@%{n^ObfFS65PmTeq6V!gm zJFu`se?LK_>j%5?mTBa>KjZu>jH{a&x4SbsRCT^QUMk-i1vGT4C9=20G1~RAO0mkT zG6Y9ciwnFBaf$9UZEhMCyU>wE!wltvijqe$R<{`1Qnt_|b!TijVrc7&B&F?!Uw)$J zP+DvF{S7mqrWpP@_X<5u)$q@tVp9pD^}6AI$+ZQB2bVrY46-APQoV)>Dn?@=ZOm^m zx((((-e~mPPCW>Ci}CeF#vK-;SEdI|iv-5nTgLG@WKmA9YS#Mm^@VDk)_YW?&3N2{ zuF+&ScHWN#mUkE*+@LCnCTh!}v(6v14Jm4E#$@NLRVjh0ziEW?;+sP_XU6U#um1oG Cs%78+ diff --git a/src/qm/spanish.qm b/src/qm/spanish.qm index ec1b0af54ee6b095e1e6ec1476748e00024473f8..f080fdc66a173036a648e39026b3f6719b94c133 100644 GIT binary patch delta 2764 zcmd^<`(I7@8pl6-t=8UaU)r0gP{)8NG!&2Wyq+>LW_namk;hKVUJ%qZt+f6wc6{(|$<`C+a1_x?QJ=lOh} zXRo>TcU-x%?0kjGxDVpy0>9G&t8Or6`7myn&A9UiAUX-ic}#0&0&^pP^(DaIS_om? zK=w}+TLTO!o{(Sj1ab#5?$2R7nhyD$NWf6Xcwhn)<7WX=N}-tT4-7cP*dRf3V+$}b z7ak)n1C1tlw!8$w7sDs03P?LI4VAgu_Jv^i!Y07K1uI_Dbjk`ORbK=OE+g%p6<8aB ztm-$wj&HE;%%8~28RR@AGnIctnX(=jZ$X)JG?1slj*2oMs}}VSMgnWLqs2t?1HMCV zya%A&ER!vz{ewbeE-~cpXGJpas8;+QQ*&h>%pk*tJF>D(wG^R3*`AmsK(Vjv*sw`} z&mviq(GOT~Saw?M1sZ0^&VNe|y#KT8y7GG|8)w_qz2X}f7neku7xYfX& zdp7|n+QU6?Yz00H<6bNc0m=fn7u_Ok$X&$!+BOC7i{(*F2Pbv$&SQQACJ*NW3Jiej zT|O{`0=Y7fvFautyjP$A-{EIGxJB8Y&Cjk{3}h(y$Zey6RlBEHmIMGa41zC6eUu(CuX@3S( z;f%q{_`A8uB#a;Uf9~H2WR8(yd3W3Pu@0a4)C1}u#v_XyI-Zb1`)_gR97Z}STHw&t zdkj$CWDI&JI3&~die^DIlg!SzFSvBC0h)S+p(S4cqw<8Ph!Ma>gRr5+4VWqyNYc)i9N#e z;ay}PQ!d=5jEwnB-hYJ=2ycC#4GU!Wp2@RkAvS z*qZw(YRbt?w-bs(m&kp$`;0*zjFl0L^<9c1r57nZ{TYLnFjnR>9`aSRO|$}^j8ohX z4y5R67=v9E-#afMZ`Fz?pH~6gRZ-kUEX)$aPrk$ilx-Gc7JJe|dMw6d68Gha%O*zx zb4tbaaX$m|KN2_eah@0B?gq&y1lSC*V(UNtKxuFizwv6LBC=m>=bMN|@%qaZKtLkn z{J$}7Kg+nkMZCR;#)u4$9C7#=TC;Z;ceQ{0Yj3FP@Sl zd{l!gIABA%%B!ZHeEh3w(o6w}h*B-AG1D7rRz=i=15u5Pd)ifty|tv=A*zIH?LhDq z#@YAnoQJGfHqhixd`1!;uQFcgrkWP4+VI{>VB}K9>O-m%ug(EgUaH1`C}7i8)#Var z(&QXQTdUL~cefo%Q#~*Kl%86%s@Jm-aPm?s?vvCL<}w~gRXY`s-|L>JecVV?;d`IdB`r*De4?3#b4`mg|xBYozA)M zJw#UM+=?hCJ_i^#buiZ4(+xGdk~TXT>t^Ui=TXRPlcgofQQSd4DNpG>Z1*eOIaj*I zkpf-&+i)_k*1h|YtVBPeG&MhMYE_1;v>k&t<;n;>GLeQ9SP>5swakd4F(ZxWkq!%u z7^rPTs(n1cz9W%V8)@Yld(T9zwbZgu--HDFx^((m?5#N3okZ)+bW$dr*|&o1*z5=P z4aCz#Dt&r9vTrfi56z~&mHG+vA1#t7Ag6D-cc^Kd-eO#9v}76+^oeQaHTrZ*njyuQ zN*#+nGcDDqPl+=pS>uw7nfesdYNI~R5@#^Q`{=Ef1nX!89nwFPwn>A{?@6yszOpb$ zSLhNQfk=drNpCXP7n8ofg}!*K`p+%;JkLP}xnr`=_1*Koj=9Y;$B`HMh{!O#cZ4Zv z)f#i2&faF+#U<2OnpeDz?dfERx>N}1NZyH-W-TmLu Crxb+% delta 2016 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 diff --git a/src/renpy_extract.py b/src/renpy_extract.py index 8fe6bbd..4a35c38 100644 --- a/src/renpy_extract.py +++ b/src/renpy_extract.py @@ -71,6 +71,12 @@ def run(self): log_print(msg) +def is_path_string(str): + if ' ' not in str and '.' in str: + if '\\' in str or '/' in str: + return True + return False + def ExtractFromFile(p, is_open_filter, filter_length, is_skip_underline, is_py2): e = set() f = io.open(p, 'r+', encoding='utf-8') @@ -126,9 +132,6 @@ def ExtractFromFile(p, is_open_filter, filter_length, is_skip_underline, is_py2) if line_content.strip().startswith('default '): continue # log_print(line_content) - - suffix_list = ['.ogg', '.webp', '.png', '.ttf', '.otf', '.webm', '.svg', '.gif', '.jpg', '.wav', - '.mp3','.rpyc','.rpy','.db'] is_add = False d = EncodeBracketContent(line_content, '"', '"') if 'oriList' in d.keys() and len(d['oriList']) > 0: @@ -154,12 +157,8 @@ def ExtractFromFile(p, is_open_filter, filter_length, is_skip_underline, is_py2) skip = True # if not line_content.strip().startswith('text ') or line_content.strip().find(i) != 5: # skip = True - for suffix in suffix_list: - if cmp_i.endswith(suffix) == False: - continue - else: - skip = True - break + if is_path_string(cmp_i): + skip = True if skip: continue i = i[1:-1] @@ -200,12 +199,8 @@ def ExtractFromFile(p, is_open_filter, filter_length, is_skip_underline, is_py2) skip = True # if not line_content.strip().startswith('text ') or line_content.strip().find(i) != 5: # skip = True - for suffix in suffix_list: - if cmp_i.endswith(suffix) == False: - continue - else: - skip = True - break + if is_path_string(cmp_i): + skip = True if skip: continue i = i[1:-1] diff --git a/src/renpy_fonts.py b/src/renpy_fonts.py index a74bae1..3bccf8a 100644 --- a/src/renpy_fonts.py +++ b/src/renpy_fonts.py @@ -142,7 +142,7 @@ def ExtractFontContent(data): return data[index:] -def GenGuiFontsOriginal(p, tl_name, font_path): +def GenGuiFontsOriginal(p, tl_name, font_path, is_rtl_enabled): if p[len(p) - 1] != '/' and p[len(p) - 1] != '\\': p = p + '/' guiPath = p + 'tl/' + tl_name + '/gui.rpy' @@ -182,6 +182,10 @@ def GenGuiFontsOriginal(p, tl_name, font_path): f.close() template = template.replace('{tl_name}', tl_name) template = template.replace('{font_path}', 'fonts/' + font_path) + if is_rtl_enabled: + template = template.replace('{is_rtl_enabled}', 'True') + else: + template = template.replace('{is_rtl_enabled}', 'False') f = io.open(guiPath, 'w', encoding='utf-8') header = template # print(header) @@ -232,7 +236,7 @@ def replace_tl_folder(full_tl_path, font_name): f.close() -def GenGuiFonts(path, fp): +def GenGuiFonts(path, fp, is_rtl_enabled): index = path.rfind('tl\\') if index == -1: index = path.rfind('tl/') @@ -246,7 +250,7 @@ def GenGuiFonts(path, fp): log_print(path + ' no tl found2!') return tl = path[index + 3:index2] - GenGuiFontsOriginal(path[:index], tl, fp) + GenGuiFontsOriginal(path[:index], tl, fp, is_rtl_enabled) font_name = os.path.basename(fp) #replace_tl_folder(path[:index] + 'tl/' + tl, font_name) diff --git a/src/ts/arabic.ts b/src/ts/arabic.ts index ddae161..ba5f705 100644 --- a/src/ts/arabic.ts +++ b/src/ts/arabic.ts @@ -866,18 +866,18 @@ FontReplaceDialog - + select the directory you want to extract حدد الدليل الذي تريد استخراجه - + select the file font which supports the translated language حدد خط الملف الذي يدعم اللغة المترجمة - + is replacing font... يتم استبدال الخط... @@ -904,7 +904,17 @@ ... - + + Enable RTL (Right To Left) + تمكين RTL (من اليمين إلى اليسار) + + + + (Fix reversed font problem for some languages like arabic, urdu) + (إصلاح مشكلة الخط المعكوس لبعض اللغات مثل العربية والأردية) + + + replace font استبدال الخط @@ -1645,6 +1655,16 @@ Unpack all files (if disabled only script files will be unpacked) قم بفك ضغط جميع الملفات (إذا تم تعطيلها، فسيتم فك ضغط ملفات البرامج النصية فقط) + + + Enable RTL (Right To Left) + تمكين RTL (من اليمين إلى اليسار) + + + + (Fix reversed font problem for some languages like arabic, urdu) + (إصلاح مشكلة الخط المعكوس لبعض اللغات مثل العربية والأردية) + select the game file diff --git a/src/ts/bengali.ts b/src/ts/bengali.ts index 22b8c98..f07d7d1 100644 --- a/src/ts/bengali.ts +++ b/src/ts/bengali.ts @@ -866,18 +866,18 @@ FontReplaceDialog - + select the directory you want to extract আপনি নিষ্কাশন করতে চান ডিরেক্টরি নির্বাচন করুন - + select the file font which supports the translated language ফাইল ফন্ট নির্বাচন করুন যা অনুবাদিত ভাষা সমর্থন করে - + is replacing font... ফন্ট প্রতিস্থাপন করা হচ্ছে... @@ -904,7 +904,17 @@ ... - + + Enable RTL (Right To Left) + RTL সক্ষম করুন (ডান থেকে বামে) + + + + (Fix reversed font problem for some languages like arabic, urdu) + (আরবি, উর্দু মত কিছু ভাষার জন্য বিপরীত ফন্ট সমস্যা সমাধান করুন) + + + replace font ফন্ট প্রতিস্থাপন @@ -1645,6 +1655,16 @@ Unpack all files (if disabled only script files will be unpacked) সমস্ত ফাইল আনপ্যাক করুন (অক্ষম থাকলে শুধুমাত্র স্ক্রিপ্ট ফাইলগুলি আনপ্যাক করা হবে) + + + Enable RTL (Right To Left) + RTL সক্ষম করুন (ডান থেকে বামে) + + + + (Fix reversed font problem for some languages like arabic, urdu) + (আরবি, উর্দু মত কিছু ভাষার জন্য বিপরীত ফন্ট সমস্যা সমাধান করুন) + select the game file diff --git a/src/ts/chinese.ts b/src/ts/chinese.ts index f18840d..a7eabac 100644 --- a/src/ts/chinese.ts +++ b/src/ts/chinese.ts @@ -892,7 +892,17 @@ ... - + + Enable RTL (Right To Left) + 启用 RTL(从右到左) + + + + (Fix reversed font problem for some languages like arabic, urdu) + (修复阿拉伯语、乌尔都语等某些语言的字体反转问题) + + + replace font 替换字体 @@ -913,18 +923,18 @@ 在此处输入或选择或拖动要替换字体的目录。示例:F:\GameName\game\tl\language - + select the directory you want to extract 选择你要解压的目录 - + select the file font which supports the translated language 选择支持翻译语言的文件字体 - + is replacing font... 正在更换字体... @@ -1653,6 +1663,16 @@ Unpack all files (if disabled only script files will be unpacked) 解压所有文件(如果禁用,则仅解压脚本文件) + + + Enable RTL (Right To Left) + 启用 RTL(从右到左) + + + + (Fix reversed font problem for some languages like arabic, urdu) + (修复阿拉伯语、乌尔都语等某些语言的字体反转问题) + select the game file diff --git a/src/ts/default.ts b/src/ts/default.ts index bb87182..43771f5 100644 --- a/src/ts/default.ts +++ b/src/ts/default.ts @@ -843,18 +843,18 @@ FontReplaceDialog - + select the directory you want to extract - + select the file font which supports the translated language - + is replacing font... @@ -881,7 +881,17 @@ - + + Enable RTL (Right To Left) + + + + + (Fix reversed font problem for some languages like arabic, urdu) + + + + replace font @@ -1522,6 +1532,16 @@ Unpack all files (if disabled only script files will be unpacked) + + + Enable RTL (Right To Left) + + + + + (Fix reversed font problem for some languages like arabic, urdu) + + select the game file diff --git a/src/ts/french.ts b/src/ts/french.ts index f05b225..94842e6 100644 --- a/src/ts/french.ts +++ b/src/ts/french.ts @@ -866,18 +866,18 @@ FontReplaceDialog - + select the directory you want to extract sélectionnez le répertoire que vous souhaitez extraire - + select the file font which supports the translated language sélectionnez la police du fichier qui prend en charge la langue traduite - + is replacing font... remplace la police... @@ -904,7 +904,17 @@ ... - + + Enable RTL (Right To Left) + Activer RTL (de droite à gauche) + + + + (Fix reversed font problem for some languages like arabic, urdu) + (Correction d'un problème de police inversée pour certaines langues comme l'arabe, l'ourdou) + + + replace font remplacer la police @@ -1645,6 +1655,16 @@ Unpack all files (if disabled only script files will be unpacked) Décompressez tous les fichiers (s'ils sont désactivés, seuls les fichiers de script seront décompressés) + + + Enable RTL (Right To Left) + Activer RTL (de droite à gauche) + + + + (Fix reversed font problem for some languages like arabic, urdu) + (Correction d'un problème de police inversée pour certaines langues comme l'arabe, l'ourdou) + select the game file diff --git a/src/ts/german.ts b/src/ts/german.ts index 1059088..08b20d5 100644 --- a/src/ts/german.ts +++ b/src/ts/german.ts @@ -866,18 +866,18 @@ FontReplaceDialog - + select the directory you want to extract Wählen Sie das Verzeichnis aus, das Sie extrahieren möchten - + select the file font which supports the translated language Wählen Sie die Dateischriftart aus, die die übersetzte Sprache unterstützt - + is replacing font... ersetzt Schriftart... @@ -904,7 +904,17 @@ ... - + + Enable RTL (Right To Left) + RTL (von rechts nach links) aktivieren + + + + (Fix reversed font problem for some languages like arabic, urdu) + (Problem mit umgekehrter Schriftart für einige Sprachen wie Arabisch und Urdu behoben) + + + replace font Schriftart ersetzen @@ -1557,6 +1567,16 @@ Unpack all files (if disabled only script files will be unpacked) Alle Dateien entpacken (wenn deaktiviert, werden nur Skriptdateien entpackt) + + + Enable RTL (Right To Left) + RTL (von rechts nach links) aktivieren + + + + (Fix reversed font problem for some languages like arabic, urdu) + (Problem mit umgekehrter Schriftart für einige Sprachen wie Arabisch und Urdu behoben) + select the game file diff --git a/src/ts/greek.ts b/src/ts/greek.ts index 330feb3..c698497 100644 --- a/src/ts/greek.ts +++ b/src/ts/greek.ts @@ -843,18 +843,18 @@ FontReplaceDialog - + select the directory you want to extract επιλέξτε τον κατάλογο που θέλετε να εξαγάγετε - + select the file font which supports the translated language επιλέξτε τη γραμματοσειρά του αρχείου που υποστηρίζει τη μεταφρασμένη γλώσσα - + is replacing font... αντικαθιστά τη γραμματοσειρά... @@ -881,7 +881,17 @@ ... - + + Enable RTL (Right To Left) + Ενεργοποίηση RTL (Δεξιά προς Αριστερά) + + + + (Fix reversed font problem for some languages like arabic, urdu) + (Διόρθωση προβλήματος αντίστροφης γραμματοσειράς για ορισμένες γλώσσες όπως τα αραβικά, τα ουρντού) + + + replace font αντικαταστήστε τη γραμματοσειρά @@ -1522,6 +1532,16 @@ Unpack all files (if disabled only script files will be unpacked) Αποσυσκευάστε όλα τα αρχεία (εάν είναι απενεργοποιημένα μόνο τα αρχεία σεναρίου θα αποσυμπιεστούν) + + + Enable RTL (Right To Left) + Ενεργοποίηση RTL (Δεξιά προς Αριστερά) + + + + (Fix reversed font problem for some languages like arabic, urdu) + (Διόρθωση προβλήματος αντίστροφης γραμματοσειράς για ορισμένες γλώσσες όπως τα αραβικά, τα ουρντού) + select the game file diff --git a/src/ts/hindi.ts b/src/ts/hindi.ts index 66a7fc4..7375595 100644 --- a/src/ts/hindi.ts +++ b/src/ts/hindi.ts @@ -866,18 +866,18 @@ FontReplaceDialog - + select the directory you want to extract वह निर्देशिका चुनें जिसे आप निकालना चाहते हैं - + select the file font which supports the translated language उस फ़ाइल फ़ॉन्ट का चयन करें जो अनुवादित भाषा का समर्थन करता है - + is replacing font... फ़ॉन्ट बदल रहा है... @@ -904,7 +904,17 @@ ... - + + Enable RTL (Right To Left) + RTL सक्षम करें (दाएं से बाएं) + + + + (Fix reversed font problem for some languages like arabic, urdu) + (अरबी, उर्दू जैसी कुछ भाषाओं के लिए उलटे फ़ॉन्ट की समस्या को ठीक किया गया) + + + replace font फ़ॉन्ट बदलें @@ -1645,6 +1655,16 @@ Unpack all files (if disabled only script files will be unpacked) सभी फ़ाइलें अनपैक करें (यदि अक्षम किया गया है तो केवल स्क्रिप्ट फ़ाइलें ही अनपैक होंगी) + + + Enable RTL (Right To Left) + RTL सक्षम करें (दाएं से बाएं) + + + + (Fix reversed font problem for some languages like arabic, urdu) + (अरबी, उर्दू जैसी कुछ भाषाओं के लिए उलटे फ़ॉन्ट की समस्या को ठीक किया गया) + select the game file diff --git a/src/ts/japanese.ts b/src/ts/japanese.ts index 6eb4ce1..8a5becc 100644 --- a/src/ts/japanese.ts +++ b/src/ts/japanese.ts @@ -866,18 +866,18 @@ FontReplaceDialog - + select the directory you want to extract 抽出したいディレクトリを選択します - + select the file font which supports the translated language 翻訳された言語をサポートするファイルフォントを選択します - + is replacing font... フォントを置き換えています... @@ -904,7 +904,17 @@ ... - + + Enable RTL (Right To Left) + RTL (右から左) を有効にする + + + + (Fix reversed font problem for some languages like arabic, urdu) + (アラビア語、ウルドゥー語などの一部の言語でフォントが反転する問題を修正) + + + replace font フォントを置き換える @@ -1645,6 +1655,16 @@ Unpack all files (if disabled only script files will be unpacked) すべてのファイルを解凍します(無効にするとスクリプト ファイルのみが解凍されます) + + + Enable RTL (Right To Left) + RTL (右から左) を有効にする + + + + (Fix reversed font problem for some languages like arabic, urdu) + (アラビア語、ウルドゥー語などの一部の言語でフォントが反転する問題を修正) + select the game file diff --git a/src/ts/korean.ts b/src/ts/korean.ts index 99770c1..ce7215b 100644 --- a/src/ts/korean.ts +++ b/src/ts/korean.ts @@ -632,7 +632,7 @@ The proxy server will not take effect for network detection, If you use a proxy server, the result of detecting inaccessibility here may not be accurate - 프록시 서버는 네트워크 감지에 적용되지 않습니다. 프록시 서버를 사용하는 경우 여기에서 접근 불가 감지 결과가 정확하지 않을 수 있습니다 + 프록시 서버는 네트워크 감지에 적용되지 않습니다. 프록시 서버를 사용하는 경우 여기에서 접근 불가 감지 결과가 정확하지 않을 수 있습니다 @@ -866,18 +866,18 @@ FontReplaceDialog - + select the directory you want to extract 추출하려는 디렉토리를 선택하십시오 - + select the file font which supports the translated language 번역된 언어를 지원하는 파일 글꼴을 선택하세요 - + is replacing font... 글꼴을 바꾸는 중입니다... @@ -904,7 +904,17 @@ ... - + + Enable RTL (Right To Left) + RTL(오른쪽에서 왼쪽으로) 활성화 + + + + (Fix reversed font problem for some languages like arabic, urdu) + (아랍어, 우르두어와 같은 일부 언어의 글꼴 반전 문제 수정) + + + replace font 글꼴 교체 @@ -1557,6 +1567,16 @@ Unpack all files (if disabled only script files will be unpacked) 모든 파일 압축 해제(비활성화되면 스크립트 파일만 압축 해제됨) + + + Enable RTL (Right To Left) + RTL(오른쪽에서 왼쪽으로) 활성화 + + + + (Fix reversed font problem for some languages like arabic, urdu) + (아랍어, 우르두어와 같은 일부 언어의 글꼴 반전 문제 수정) + select the game file diff --git a/src/ts/portuguese.ts b/src/ts/portuguese.ts index f61b3e5..18883ed 100644 --- a/src/ts/portuguese.ts +++ b/src/ts/portuguese.ts @@ -866,18 +866,18 @@ FontReplaceDialog - + select the directory you want to extract selecione o diretório que deseja extrair - + select the file font which supports the translated language selecione a fonte do arquivo que suporta o idioma traduzido - + is replacing font... está substituindo a fonte... @@ -904,7 +904,17 @@ ... - + + Enable RTL (Right To Left) + Habilitar RTL (da direita para a esquerda) + + + + (Fix reversed font problem for some languages like arabic, urdu) + (Corrigir problema de fonte invertida para alguns idiomas como árabe, urdu) + + + replace font substituir fonte @@ -1645,6 +1655,16 @@ Unpack all files (if disabled only script files will be unpacked) Descompacte todos os arquivos (se desativado, apenas os arquivos de script serão descompactados) + + + Enable RTL (Right To Left) + Habilitar RTL (da direita para a esquerda) + + + + (Fix reversed font problem for some languages like arabic, urdu) + (Corrigir problema de fonte invertida para alguns idiomas como árabe, urdu) + select the game file diff --git a/src/ts/russian.ts b/src/ts/russian.ts index b29d5ec..97995dc 100644 --- a/src/ts/russian.ts +++ b/src/ts/russian.ts @@ -866,18 +866,18 @@ FontReplaceDialog - + select the directory you want to extract выберите каталог, который вы хотите извлечь - + select the file font which supports the translated language выберите шрифт файла, который поддерживает переведенный язык - + is replacing font... заменяет шрифт... @@ -904,7 +904,17 @@ ... - + + Enable RTL (Right To Left) + Включить RTL (справа налево) + + + + (Fix reversed font problem for some languages like arabic, urdu) + (Исправлена ​​проблема с перевернутым шрифтом для некоторых языков, таких как арабский, урду) + + + replace font заменить шрифт @@ -1645,6 +1655,16 @@ Unpack all files (if disabled only script files will be unpacked) Распаковать все файлы (если отключено, будут распакованы только файлы скриптов) + + + Enable RTL (Right To Left) + Включить RTL (справа налево) + + + + (Fix reversed font problem for some languages like arabic, urdu) + (Исправлена ​​проблема с перевернутым шрифтом для некоторых языков, таких как арабский, урду) + select the game file diff --git a/src/ts/spanish.ts b/src/ts/spanish.ts index 02ed4a1..93cffe6 100644 --- a/src/ts/spanish.ts +++ b/src/ts/spanish.ts @@ -866,18 +866,18 @@ FontReplaceDialog - + select the directory you want to extract seleccione el directorio que desea extraer - + select the file font which supports the translated language seleccione la fuente del archivo que admita el idioma traducido - + is replacing font... está reemplazando la fuente... @@ -904,7 +904,17 @@ ... - + + Enable RTL (Right To Left) + Habilitar RTL (de derecha a izquierda) + + + + (Fix reversed font problem for some languages like arabic, urdu) + (Se soluciona el problema de fuente invertida para algunos idiomas como árabe y urdu) + + + replace font reemplazar fuente @@ -1649,6 +1659,16 @@ Unpack all files (if disabled only script files will be unpacked) Desempaquetar todos los archivos (si está deshabilitado, solo se descomprimirán los archivos de script) + + + Enable RTL (Right To Left) + Habilitar RTL (de derecha a izquierda) + + + + (Fix reversed font problem for some languages like arabic, urdu) + (Se soluciona el problema de fuente invertida para algunos idiomas como árabe y urdu) + select the game file diff --git a/src/ts/turkish.ts b/src/ts/turkish.ts index b983b75..b37f7aa 100644 --- a/src/ts/turkish.ts +++ b/src/ts/turkish.ts @@ -843,18 +843,18 @@ FontReplaceDialog - + select the directory you want to extract ayıklamak istediğiniz dizini seçin - + select the file font which supports the translated language çevrilmiş dili destekleyen dosya yazı tipini seçin - + is replacing font... yazı tipini değiştiriyor... @@ -881,7 +881,17 @@ ... - + + Enable RTL (Right To Left) + RTL'yi Etkinleştir (Sağdan Sola) + + + + (Fix reversed font problem for some languages like arabic, urdu) + (Arapça, Urduca gibi bazı dillerde ters yazı tipi sorununu düzeltin) + + + replace font yazı tipini değiştir @@ -1534,6 +1544,16 @@ Unpack all files (if disabled only script files will be unpacked) Tüm dosyaları paketinden çıkarın (devre dışı bırakılırsa yalnızca komut dosyası dosyaları açılır) + + + Enable RTL (Right To Left) + RTL'yi Etkinleştir (Sağdan Sola) + + + + (Fix reversed font problem for some languages like arabic, urdu) + (Arapça, Urduca gibi bazı dillerde ters yazı tipi sorununu düzeltin) + select the game file diff --git a/src/ts/urdu.ts b/src/ts/urdu.ts index ee1bbaa..8510f9b 100644 --- a/src/ts/urdu.ts +++ b/src/ts/urdu.ts @@ -866,18 +866,18 @@ FontReplaceDialog - + select the directory you want to extract وہ ڈائریکٹری منتخب کریں جسے آپ نکالنا چاہتے ہیں۔ - + select the file font which supports the translated language فائل کا فونٹ منتخب کریں جو ترجمہ شدہ زبان کو سپورٹ کرتا ہے۔ - + is replacing font... فونٹ بدل رہا ہے... @@ -904,7 +904,17 @@ ... - + + Enable RTL (Right To Left) + RTL کو فعال کریں (دائیں سے بائیں) + + + + (Fix reversed font problem for some languages like arabic, urdu) + (کچھ زبانوں جیسے عربی، اردو کے لیے الٹ فونٹ کا مسئلہ حل کریں) + + + replace font فونٹ تبدیل کریں @@ -1645,6 +1655,16 @@ Unpack all files (if disabled only script files will be unpacked) تمام فائلوں کو کھولیں (اگر غیر فعال ہو تو صرف اسکرپٹ فائلوں کو پیک کیا جائے گا) + + + Enable RTL (Right To Left) + RTL کو فعال کریں (دائیں سے بائیں) + + + + (Fix reversed font problem for some languages like arabic, urdu) + (کچھ زبانوں جیسے عربی، اردو کے لیے الٹ فونٹ کا مسئلہ حل کریں) + select the game file