From d6f2adb6a938b241e9b20641b6f4a902bf59ce6b Mon Sep 17 00:00:00 2001
From: jzxc95 <907297917@qq.com>
Date: Wed, 8 Mar 2023 11:06:06 +0800
Subject: [PATCH] =?UTF-8?q?=E7=BF=BB=E8=AF=91=E6=96=87=E4=BB=B6=E5=9C=A8?=
=?UTF-8?q?=E7=BC=96=E8=AF=91=E6=97=B6=E7=94=9F=E6=88=90?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
kylin-nm.pro | 9 +++++++++
nmqrc.qrc | 4 ----
src/main.cpp | 11 ++++++++++-
translate_generation.sh | 15 +++++++++++++++
translations/kylin-nm_bo.qm | 1 -
translations/kylin-nm_bo_CN.qm | Bin 18013 -> 0 bytes
translations/kylin-nm_tr.qm | Bin 2010 -> 0 bytes
translations/kylin-nm_zh_CN.qm | Bin 11237 -> 0 bytes
8 files changed, 34 insertions(+), 6 deletions(-)
create mode 100755 translate_generation.sh
delete mode 100644 translations/kylin-nm_bo.qm
delete mode 100644 translations/kylin-nm_bo_CN.qm
delete mode 100644 translations/kylin-nm_tr.qm
delete mode 100644 translations/kylin-nm_zh_CN.qm
diff --git a/kylin-nm.pro b/kylin-nm.pro
index 7b52af76..1f13a7c2 100644
--- a/kylin-nm.pro
+++ b/kylin-nm.pro
@@ -12,3 +12,12 @@ TRANSLATIONS += \
translations/kylin-nm_tr.ts \
translations/kylin-nm_bo.ts \
translations/kylin-nm_bo_CN.ts
+
+CONFIG(release, debug|release) {
+ !system($$PWD/translate_generation.sh): error("Failed to generate translation")
+}
+
+qm_files.path = $${PREFIX}/share/kylin-nm/kylin-nm/
+qm_files.files = translations/*.qm
+
+INSTALLS += qm_files \
diff --git a/nmqrc.qrc b/nmqrc.qrc
index c379b198..aea1ec48 100644
--- a/nmqrc.qrc
+++ b/nmqrc.qrc
@@ -17,9 +17,6 @@
res/h/right-pwd.png
res/h/show-pwd.png
res/h/no-pwd-wifi.png
- translations/kylin-nm_bo.qm
- translations/kylin-nm_tr.qm
- translations/kylin-nm_zh_CN.qm
res/x/fly-mode-off.svg
res/x/fly-mode-on.svg
res/x/hot-spot-off.svg
@@ -128,6 +125,5 @@
res/s/conning-b/10.png
res/s/conning-b/11.png
res/s/conning-b/12.png
- translations/kylin-nm_bo_CN.qm
diff --git a/src/main.cpp b/src/main.cpp
index 2454937e..e8660476 100644
--- a/src/main.cpp
+++ b/src/main.cpp
@@ -127,7 +127,7 @@ int main(int argc, char *argv[])
QString locale = QLocale::system().name();
QTranslator trans_global;
qDebug() << "QLocale " << QLocale();
- if (trans_global.load(QLocale(), "kylin-nm", "_", ":/translations/"))
+ if (trans_global.load(QLocale(), "kylin-nm", "_", "/usr/share/kylin-nm/kylin-nm/"))
{
a.installTranslator(&trans_global);
qDebug()<<"Translations load success";
@@ -144,6 +144,15 @@ int main(int argc, char *argv[])
qWarning() << "QtBase Translations load fail";
}
+ QTranslator sdkTranslator;
+ if (sdkTranslator.load(QLocale(), "gui", "_", ":/translations/"))
+ {
+ a.installTranslator(&sdkTranslator);
+ qDebug()<<"SDK Translations load success";
+ } else {
+ qWarning() << "SDK Translations load fail";
+ }
+
while (!p_networkResource->NetworkManagerIsInited()) {
::usleep(1000);
}
diff --git a/translate_generation.sh b/translate_generation.sh
new file mode 100755
index 00000000..72f748b9
--- /dev/null
+++ b/translate_generation.sh
@@ -0,0 +1,15 @@
+#!/bin/bash
+
+ts_list=(`ls translations/*.ts`)
+source /etc/os-release
+version=(`echo $ID`)
+
+for ts in "${ts_list[@]}"
+do
+ printf "\nprocess ${ts}\n"
+ if [ "$version" == "fedora" ] || [ "$version" == "opensuse-leap" ] || [ "$version" == "opensuse-tumbleweed" ];then
+ lrelease-qt5 "${ts}"
+ else
+ lrelease "${ts}"
+ fi
+done
diff --git a/translations/kylin-nm_bo.qm b/translations/kylin-nm_bo.qm
deleted file mode 100644
index be651eed..00000000
--- a/translations/kylin-nm_bo.qm
+++ /dev/null
@@ -1 +0,0 @@
-<¸dÊÍ!¿`¡½Ý
\ No newline at end of file
diff --git a/translations/kylin-nm_bo_CN.qm b/translations/kylin-nm_bo_CN.qm
deleted file mode 100644
index fa4616056e740ac494a5b6c5bd2b3dbe9af2c91e..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001
literal 18013
zcmd5@3vgW3c|Jm~)#`C=NtPeT=33ZB7Do7mFpj|1!@?@IEL%b{<`G@(-jx=uc9q>L
z3mGRv0!-6jGL$!jwi6(vCQxESlBT7E(l8SWbZ9#6K+`0Uv=jmjFbM;NOz8KY|DOBU
zy(>$$OKOdER=fB7=Rg1ZwXJ_0UG$Id+;_)|%jY;A(mVviqF3qaDFd}2e#q;F<#GoUlczLxD7jaz33USAkmM%-xh06TMAT0d0n-R
z*YjT$YZrVTpMOJi-*BH07xaqmHpmz5jeTE;g|8R%{^cF`{LX@#?_2;pALVt^o`OeyP$R^;V+AjC-hw+-Y`9mRE?=P-e`uCt~
zw0P6y2l07|*V0UwIbi
ze6QrJAHFZdxu=y}k@<}f8!Ae!jUEEre<}ISk0B2gcbB|V`bgAnVZp@)C@A406%7$DY1X
zh^?uzZ~rOY7Y~*_7sA^3rLyNb-UpwqE&Iv(kAx_Dt?Z4*@c!zj%0859W4NmOHr(?)
zUaOzywQgUyt?*jl|0b`sgW--pz5sgkXxR98BlsERwe|Aw@K^VM|Dka7r5Az6nPKx1
z+^_2Ayw<7Vdg^D(ar
zzf#_H*Y}0k^2PG#;cd{9m&+fx`&l72ZYzJ}j@6LYZ}PhC-tuGm^e3{op&+>Zu?|5C;U2${$*TA2jRot`YdaS96KU)m^3Km!V
zZ9xX|c9_>qiz<$72Y=41s(7al@6Ru(T)GC&EqkMK=@qmduKe;CKHsvq@@s2av2VEY
znS-z^^?jB9Q#1+rJX}@q3-Gb2zpCPlpFl6JtJ-n|{MnqY8hGnc?0dWF`oi0Vs6NPR
zU3t};AAzo)c|u#8YQ}Rwgi(K@jXYlpS8d}p`(dqCT5KY20Ujp2y_Z7cTd
z#;cfit9I0WdI0;&@h-uOX_X;Ds|5d7cBGQA_=p~hr_CuNk_F_@nV_H+G^q4-8PQ~I0
zQ@5rk%z#4+4ryJuE?@3J97`9igfo&q0SI|X&?U*U6}!^%RlD}MP28<`MKFi(o361}
z>%}KT?q1CTL2&|h(0OSvfUdbqe%dadZrA!GynT2!BB3zL+T`jDF8nmHj3`3XW}#ANJ0c{S9U(f}n~v`{EK}Dz&HeF+nbA{8-5NFZq|Mfd
zk<_E{OeD46Oyh%iMvtV%Cnha3-K<}1Ce1V?Z(27dCKB<8F--hV>4vl0u=LT?xT&Yo
zx)hSBQ8R7o)2T^)ESZ{;5^JR=GnPCuo{Yx#$D@-*A|pSE24d74BwW|vs?1~}pCewM
zgg_o9Q%rjZOgLx@!4XNCey#G8G7#%1$TbY2D_zJXxXZTLh~8c)Tqh%dyC9Gx%q$cv
zP`l-OF{mRn50M+l*<*QhkGZ7Ap(tQ6Y?=`CZlF_^-MyQOj*a5t2KJu(jju0$+#tj
zD+WQbB{QSPllp`_RG&x~5ZyI+E;6bcke+yYB9*ov%xQ>gEM}T|W;8W{Crm36BtW7X
zr20CpNSeb|!8Np{ZP94j%t%vO(UCR{3pUR&rp+K2={=cg*70FUumSBV5R%DF)~8%_
ziXPGDXr9)VfD$DQE56^Y8aual
z^sWvD(+FM;fZGS8nIj`<$*Zzlv!u~6?xi*OjHDT{;;;uj#<(=;x#%^)w2`SHveAXf
zlqr))T69o;dH`hbK<+eS#$>|MFNWQjGNywut`pt3;(oCaCs>jMmw|{blyG*GddEcljHU?>rtLJ4>~2SUkCBMCzqylDv@&$fB&;MyGkrI7Lb
z$1cGYZU;eGypQs=vIM-WH*Ll;`9-@CTxA#44^q+<$QH%4TL70xACL%=hb0bHip>s$a66)~
z!Fbdf-5j*J!KVCxZCeL`A_*pmWCX(L1y$TJY9s@pv|_gstj|iZri+kZaX7p!0_;ez12_c02niBW
z`m)Kl%EsL5Z-=x?K?OFJ*;FXpejtzr)yh5~fb0}Wk?}C0jBJD6nal+43_CkrwiVNk
z8J}+Pz^A8M0-s)_jezysS%lD?Gb|_j-PWxmx$wLWZ~Ex(S2R(OYd{CKzC>LqNtC85JsG0Q*v6a
zabMgfHI_o{!T32{aTOBj4Wz#LajJ!$sYGZ97QyeAOFE2X#FR>#A4CJ_`4G_04kR2a
zp!GXqQED5~nUP9MLNS>rckz=)C8v+u#5f`eNg=*6n{=`Y-z^Z3APgWYWa80hl=HDN
z8dC6GLay|a&*l3hQlO-TjE1;9GyY%jv6Ii|u$$$P@X1Xm+TlgWc~X8z%+8n34r}*F
z<`Y%OJ(3zJn?UYji$m>;+7bz*R4HJd)_tiH0%$vCCW#47=C;r!tGet`f=7-kq_rSb
z>DS7g!%F30?1+PQT_bgw9Y&XAnF_orabcCIsUXa&57`7{kJg7v6QO{E)Da@;UXYC}
zE$P-_{6(L;tliQrGY3jDJShngz)W(UO1W$d!TcmLQUtknDq&Mf2KzxbYm%meZKzEZ
zLD6+~mRacu&lmRq3;4s-6x^*ZL&`_>*`_0*?uq>yozSE~i-IO>J6No!SixdQ86`e*
zI5^KvYLFi#V@TXALd6g6RAx4Q$S0K5_(7bi%)<|Lj#-C)^Qp}^{ILHJ*@hp3S!5di
z4Rg&hvUkrl!|?Av$?U=pY%c29a%$Dl1$U~|(S>}%>ga+vmFnn1RqEI>LlL0GEdmhJ
z+|8$69bMS%(&rqnxS(=0_GwfAAnVL^5!X{W<%SWr9^${rELG1%Z|>>2|G-nAJT5ZZ
zHA99vs!(whH1KABuAY0tBrecXjzIovpD+Hc?c=h@1PToCYxEsva>N={{>wdBhpVQ*
znZkx){2tIaS3IjQYFnXUXrXr?MmYnl2Q*WwD!%wm-UuW26j!o}2c9CWUoJ|oSK{xdG)KqIL-)&D)ZSsK)YS)n<
z4T0%yCQCv_!r2e9k+kmx7dh+kRu<>?jUq`uhQzCqF0{%v6#uC;7}a;Q^$>_saMiJg
zbwHL(2XRj&v*4nmSMX}ai~#Bb?yNw%SQG}GeFds)BtO&<2r3tN{Rp>?NihcSJf+;!
zFy(eH@t7<#bDXMT?H-oZ_aIlKY#J${olxrrH3les%%R7pz(ODWb({WPPfDUg_dJ5n
zToQ&ZnNGmB^z0;@Lq4@^2>_z(2pM42ukiQDUC=AWBxpNlmR(>;tIU{{n$X8lRmR9c
z?y+-YeR!u4hc8Y>Q&ZBG)CVBVu|=0BzpYR<&Pt`Y5S<044y^YMS@7tEd$&-ZcY-2o
zGqoBXhZJ#ceVI*nuKT)XmxB(LvFy^5CJnI*mZ+3{(-x14s8D7bP9>Rb!_!9E3-5_?+Z;5Pq9I_$jlcupkV{h&=#2N$W@|gY3M9Is_RQ)penB%D_AB
zx=4nv0I`YC6hO1$x_upDgCv7vc#5cp698q_#m}tMn}IsZhTkR+Xxk(s@?EUN%}cT%
zHsBt+Y*W+*9b@AZOdhJCV!%g|KMPEkHUg569o&WAMB^*vUlI9Qb@N?6>3TRqIoEyE
z;3(?&>Ky&*N_eu4ox3ZqVOP%6BetywU{He-S5r5LT~j{8Q^MjA0A-EOI=IzBsuJF1
z-7ILIoUvkBiz)okE
z&v<8XVhQAk_O^rdWCZ9+Y$jYQR@9S9N(-E|w;EE-L6~aHxO-svc!(?j+mrPeOZ^@r
zYUa3#EJXLAhcY4O0Lbboc~CZwOaiM9^-sN-Sroih_LpUyo+S%S!(Qa%+zT(ySVkJr
z(x@33)8nY9s?NW!IGP8s76&QAwoXd*6l#Qqn=+mZVlA^l>}oLun#Is{B8qT)Kv5cn
zm}&wlH^wC--3-d#kvqPaEt85f6_248l|n~(g2r!jl09c0Fo%36f~B+y$gq1wn^>O@
zUq^X@u^Q}cTmOHD)rJ$tYC}G(u9_7`l|^UENsdL0EGlgY=C7*App_;HNTv_tHOC)JA?ka&5Gdgyv+Gh}VOs{%tg7#8V(xKTx8n8$R1QX41I{AM
z=w!xkCS1I^WwktaDyo|Xrr16=iF5yOM5rfZq&Uo)5+RPOylXkHz0btNHJ*N2b4Q!rg<0c_-q_SUVUFuf%~2F@
z@Os^P{Eoo%;5WY$yM{;Nau~OS(G?Mij70_$uMHqzI^tZ3g8;{hQ72fs(Oi*iA~^E0
z6yAES4iXUS55Omr>+-UCVaI4Hg_#XQw-12f%zr{VlM*o07&aHU)UeNPoIq-zj6J<_
z3MwEsew-WC*eA!*sc}q>C(Pz%ImnQEuWDIsAf-~NhN~haovCpoWx?X9i*1mDUP!|6
z>`iD}Td!kNaxs{vhL*7U!?jR1%Ci>6+=DS_#q}x1<*>>-JWh6iSVGaVViwsD&p?4g
zs@m?P2^lhSW&v_Bol_*1yS>`6VQPHEC3UFRwnV{Ky~x?BM#|JgIZMYd5-^qyH5Wq!
z$d$->>KHvGCtP^gHAiXu;UCeEEM3eIa*8;-1L@hrHMM)padUjwuC&@IdhpFovX~k~
zW#&C$$g@ZuDyy3Y2tR3PmMlfWp<{qN@X1IX>MHYf~i4D
zu}Y>D+njO0V2JJ65MfN{-no=eU+-ZvK7h#{GCkfnb-r_IFDykWX-|7AOXkGPi|jKu
zWS`~Gw-S&x=rcp{hBgH@BofQ&AieIQH%qGlRr6pJHlD(>9
zGMz>oV0S!-;-&q@uygSyNmlhWIt~K}8W~7Vi|Hi9WuBpEO??fjBY^-dD(9hnK<7}d
z@$H*ax!Jd~M~sPSkwAEwgbW;YkZ1C2MbV)g(xFBlx7m*8GH90a0p#)2gtbe)Sr_kp
z*nAp&j)4ic&qQG;Ia{T7UJWRwiB(zLpGUoVF1V`MMPJTY!tauZ1U!m&DIruHI8|!z
z!m%#lRKwkEE2|OR+@|u^7&IV&W4_0Xh@`N6t^U%9v
zjlxW}&KXf%7J#Z_-#z2@42-_OBnQWXaiK{eN-%;N41wd$4z3m6FN_djD`*Vd*JEn{
zrYABnoeSxN+TOWf=D|(6wQz4*TGAz};KBDeHSO|TbY{^n&)w7vnO6hUL7gUwVx{NI
zN`EV<+q8?Cx*3)D62o>P0(WK=j@KBkavS5SMG_()j^7EgCAo&1asn<}@e~L7BsJ^p
zWy*52p{LN;N4dkD<3?jYik`HEb`7`p{TS5Qjv`-kJ}gP#ba?!mPg&Q|4|Z*U#=6Zy
zua0D=AE!%$V0WhwP4s!butc&t+jH3GtFJ5OHi4GObKI$s;~quB`^srB(v%Trd+4a`
zkyS+J9n7KH0|`P<)>VhEtWN2w|Efd65NvZhy@;wWvNyWJgM#u~xhTx_=!O2HWnJHY
G_WuI&NxWJB
diff --git a/translations/kylin-nm_tr.qm b/translations/kylin-nm_tr.qm
deleted file mode 100644
index 67ee71e84e40a9877474ba9e57722ceff1c227d1..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001
literal 2010
zcmc&!&ubGw6n@)owrQIFP+IX&aD@sL8fc+Z5e3t1YeUnd&}xu^IwsR}%w{)aCk-k3
zA6W3BsCW^7oCGhTy%c-tK~eCcH=%bGZ}rfkzL^c1wn?Scg9*EDXL#@XzBlvDoL)*F
ze*68w?e|B!Utf8+{COAv)&P7n_-ufB^Ep7nS5QAK0yNH5;w|u97{T#bH>y40Te*aJ
z_uZ(yg8r@>I9^p2?{onu%Wm`)m3PKH#D_{WEAc}^Xyq}^F1S&1)Tgl@h~KHcJn<9b
zlJDfqbu2qmiBH_9H2cPnm5|2>kc~mCA9SPE7g&7}#ky}TkM6DlsEOdmu{YRHXZx2{
z&YV^)z*|
z+|KJc>NvRbLWzG{C%q6x0R%xO5!8Ydz6
zlP!9+h;7ZXOr2Z}F5>CQRx#tYC6{OirV1elRkKFzf|S^juqa|%Vl27;kcS3Jd3kMk
zUTwL-V)IXV$eLm2a9M@Y;1o?23yhaNkGG*;7#0b~WVaOgqiJe!%&cFwYmc=IeaIlZ
zCyxd?FD2dQNJDUBot4b4E32YA&O5ZAr)Yt*S(YMPE?_PAP+f3w1_{iet#QW$opM#pS80<>{}>vknW0Xo`cjgR#osHj*!}d2B*Qruqx|-_C8*
zG`Z@zApq0Zintkao_!h;Ss}S2$wry$d4mzt&PZ?m)x8%?n*V(9)nfQz*UP~#2xXJM
E0d&EWGynhq
diff --git a/translations/kylin-nm_zh_CN.qm b/translations/kylin-nm_zh_CN.qm
deleted file mode 100644
index 2241f2ab984730fbb38ec50547a05dedbaeb4a46..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001
literal 11237
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
Nt|BEfR4gj!e*xpkE^z<=