From b7badd721d292b3952bb8553314c55908a024e3d Mon Sep 17 00:00:00 2001 From: Sander Land Date: Wed, 3 Jun 2020 21:31:12 +0200 Subject: [PATCH] i18n beep --- katrain/__main__.py | 1 + katrain/config.json | 5 +- katrain/core/constants.py | 2 +- katrain/gui/controlspanel.py | 2 +- .../i18n/locales/en/LC_MESSAGES/katrain.mo | Bin 10379 -> 10369 bytes .../i18n/locales/en/LC_MESSAGES/katrain.po | 4 +- .../i18n/locales/fr/LC_MESSAGES/katrain.mo | Bin 11498 -> 11494 bytes .../i18n/locales/fr/LC_MESSAGES/katrain.po | 7 +- .../i18n/locales/haha/LC_MESSAGES/katrain.mo | Bin 11275 -> 11277 bytes .../i18n/locales/haha/LC_MESSAGES/katrain.po | 844 +++++++++--------- .../i18n/locales/ko/LC_MESSAGES/katrain.mo | Bin 11825 -> 11813 bytes .../i18n/locales/ko/LC_MESSAGES/katrain.po | 7 +- katrain/popups.kv | 8 +- 13 files changed, 440 insertions(+), 440 deletions(-) diff --git a/katrain/__main__.py b/katrain/__main__.py index 841a421..9797bca 100644 --- a/katrain/__main__.py +++ b/katrain/__main__.py @@ -483,6 +483,7 @@ class KaTrainApp(MDApp): def run_app(): app = KaTrainApp() signal.signal(signal.SIGINT, app.signal_handler) + try: app.run() except Exception as e: diff --git a/katrain/config.json b/katrain/config.json index 248f080..5639b75 100644 --- a/katrain/config.json +++ b/katrain/config.json @@ -18,11 +18,12 @@ "anim_pv_time": 0.5, "debug_level": 0, "lang": "en", - "version": "1.1.0" + "version": "1.1.1" }, "timer": { "byo_length": 30, - "byo_periods": 5 + "byo_periods": 5, + "sound": True }, "game": { "size": "19", diff --git a/katrain/core/constants.py b/katrain/core/constants.py index 00c31ee..7bd9799 100644 --- a/katrain/core/constants.py +++ b/katrain/core/constants.py @@ -1,6 +1,6 @@ VERSION = "1.1.1" HOMEPAGE = "https://github.com/sanderland/katrain" -CONFIG_MIN_VERSION = "1.1.0" +CONFIG_MIN_VERSION = "1.1.1" PLAYER_HUMAN, PLAYER_AI = "player:human", "player:ai" PLAYER_TYPES = [PLAYER_HUMAN, PLAYER_AI] diff --git a/katrain/gui/controlspanel.py b/katrain/gui/controlspanel.py index 9e9805c..1633275 100644 --- a/katrain/gui/controlspanel.py +++ b/katrain/gui/controlspanel.py @@ -114,7 +114,7 @@ class ControlsPanel(BoxLayout): now = time.time() byo_len = max(1, self.katrain.config("timer/byo_length")) byo_num = max(1, self.katrain.config("timer/byo_periods")) - sounds_on = max(1, self.katrain.config("timer/sounds",True)) + sounds_on = self.katrain.config("timer/sound", True) or True player = self.katrain.next_player_info ai = player.ai used_period = False diff --git a/katrain/i18n/locales/en/LC_MESSAGES/katrain.mo b/katrain/i18n/locales/en/LC_MESSAGES/katrain.mo index 992caf333fd5a1ee93cf2f099e11103c37aaafe1..11da12f3cef7d6d8f928aac7454808fd03890509 100644 GIT binary patch delta 1891 zcmXZcduYvJ9LMqRW;?rJGqZ!)?QCNs&L}KfqlR3Yt>u#2ib)fuW|=>9wm+sMgwgFe%mn#>u?MOvX~2gzHfKYMqU!@h6?0J|s7&oZeXm2!(})V>6e_^8n1WYO<8C95Jy8DD z@C-G<0BXTcs0hEKQXJ1K2Gdaeb5Z^LsBuNEeHk*uDo}xJbM<;u|HG(&gQ#(V%dXId ziZp~;pc{2YPh9;KYJzvD1;VHu{Y9lTh1Jxai&}UdFQt4r>iY)Nf;&+g+mE|h-;PjV z4*P*R<5&)SJ^FAB9>jd?#SHw43N(pX(l8bCun-Hd3XAXrYT?JO{WZ>{9!J!ZaXu!q zzLitZSyiJ3)F6*F@S29lu>o&lCi=NiSFsH5<1miG(8Q6Qb>Ri-&rz3fAG=b(2T&Vr zL}fCF39N4yDJV5X$)K{>JM)YQpe?@YJf-Xf1>g+o(8}Fh5d4mcdj0*HOvX*&#BWLYHjhl;n zvW2MrRj8fsLS?wl)f-TErO8MB^&v@ZV{%~V*a5hG|;g1e*-@u)C6CU|0Mg0S}>aM nmGTr+>ioDAi#yN7?TPA)Ntiq#wz9T59LMqR<{C5h%*@QL%WTWTw6H~yuEkIq*$_1umWQEx$0&a04~jp?6hdp- zAEef1g}O2!Tb}+QYib^%)%;<3Xk?W4$4>qFz0Ntm^YA_2bMCDxJyqIL8SN#R*}xdH zSR5H|mVn7flLastXS;gP)k{(RDpBLZI2w;*BG%(LY{CqTAdhwNio;$Uh2P@Mvyl}3 z(x8Dc%&LKDn2NJ71%o&q%TfLII_ps5&pI!mk9rfv;C0k|Ey!aXy#5D*n!h)}8~QLv zgLWFn?8?L>XD%w@0@Mx{B9E=$rG6Vxnc9Z>9!AYmhYI8zD!_|47O$el-9a9E;JJpE zs0n&d3w}mLIDkrV9Ip|WiJBlA)h{14Zh>oGh77UQs6e*3`hHaZ6R3deQRBQuS7=5> z8bK}a2z5p;T)i7L!AH~r{iq#j6{U0>sy!RE@H}2hc?s(KdenkdsEyU&F4nh`6qw6? zqRu#$124w_uEIl@i%)P8en$nG%q$Zz19Pwl^RWWw;~CV#PhI;PoI!mQQKw@erm()1 zQqWm#MGe@2Ja&-RG(3&9cnh;IpBr@pS7AF2;xLS)4ehKQFH?Vox`g}Kl>)9sZL|)R z$$E@ueQThg)HJ&e5mf4)qbBG<9mOYX#eOWqMz--7f8jlBpTJKHkMNuOf@P$q6N@vs zA5knu`kql=&MuB(nxFhDk_!}cDVk7ce-i_E7Zu1mQ~>>`Kz}1^*@($QXB|L|n~Qw1 zMX3H2sGaXbWjO5W2T^zB*ktmr5A`&#DZ7A5Q7h`UKSTxi)U|h^Chl|XKTt=aXf@7{ zI>G|vRBSOS&~=!HA=KGlK^^Vw0QpzLTNS2$90yvFI)ph4h^ihwX?!bN24m(gs(v8Yk zA7*1TF9no~%D^1dd_h!TD^c^5x%N${qx8194k1(^hf%3Nk4j+!YKON_6F)-z++Lyr z8AKn(k|e6yK(&7j#mZ1yPGCdKKMGm55dZ)H diff --git a/katrain/i18n/locales/en/LC_MESSAGES/katrain.po b/katrain/i18n/locales/en/LC_MESSAGES/katrain.po index 4d60fe0..e8c848c 100644 --- a/katrain/i18n/locales/en/LC_MESSAGES/katrain.po +++ b/katrain/i18n/locales/en/LC_MESSAGES/katrain.po @@ -253,8 +253,8 @@ msgstr "Time per Byo-yomi Period" msgid "byoyomi periods" msgstr "Number of Periods" -msgid "count down sounds" -msgstr "Count Down Sounds" +msgid "count down sound" +msgstr "Sound on" #. submit button msgid "update timer" diff --git a/katrain/i18n/locales/fr/LC_MESSAGES/katrain.mo b/katrain/i18n/locales/fr/LC_MESSAGES/katrain.mo index 8240345ab13b34616c84028bec614f9c5655f6c1..1a8a054746dc1f38ce617fd513014bf74458eae7 100644 GIT binary patch delta 1897 zcmXZcdrZzz9LMo*RF57!N-FoF6uPm=jAevr`6pv8x%{D8TBMZAOrBiFSf*@fBx^Iv ztu0}g>+qK`HX1f&Wn!Lh0&gIXz2wy&JJE|@edf1*6n@j7 zfg#MQfzdbwQ!x^=a40T8_1oaAMvXt>tjA#LO&E&jQ1e|z9(%;=e;}y&I|um#Km4LW zJM}WVGBL`Tgo=1FYKNJ~V>!IkZv`q-g{a>vQ1euy0;xjAM0=${=j&(GkO>LQKrr;$UiEl89^{tnJ z&dSG4(SS%Cj`64oXW}m0gxX0jwxB1*>@{A;zF5Z%B}O}jJMlc~5~dQZGCKuzgqawE z^U%xswt#{h}#bao@zicRv7i=JA+}xya^iJ8GVWMDnl8&`bkC+hgY!*C8S)a4AQjF5z6%1XUP{ zr%{2P#b9i4?QO_4v0FF+UtlW!L1MJz@qvIA`Y9-7Rj9}>pi3QENlRK#~tseXl8umd%)8?`{t z#6U`;kT1-#Pzx(>P>Xpc4HotSHYu}9;SAz<$4mG|W!>|#spZmw54T&HBtfA@ zi6EuElv09Gi4R5z5kUk6(e@C9gbx)_+CtFx*Bv;V&&-@z{_~$Xqa|Y{{biE^)68sq zs#!Ef#hS(8bfn1^;B;K>>V8+>it1N}8efM~@GQn-E6&6ooQ*@sV=sBd;3#_WTdV~v zio#zSG|UXqj7=I zhd(rEr!mZ~Ow4m;q9V>k?Qk9PSRpU<+lk85e$@9m)I32{AZ@4s+c6QlP~+|)k39&u zhUcgW-k}y8Lq#}_N^uOYNSuqBAPv0q-p}v=(7OX&RtR4@tzBN9hC%>>Cqms;C;~-APHf|^}+7%39ALYqj`{?PXy8Jnjn~ zn$Kpi*~ih~tyHsJ_+SC~*O~Yh@ylsK)DAWvW2^)@6+402`FT`^I#B<0FA|GALiKx( z+4voGcNV6F0?$Tma1Cl>e$>Va)5yO*Y^Q-!uu@b2M^Klr5w-9IRG^)x4E3TWx{G-@ zjNC{2ftolnJ@ntlqs}}7m*RG0^L7$7Pggqm*JZd#13}vp=U3MuF(Y&-Q&E?&05w4n zJ=l#3^ah6GZPz}CTob#Gi}599VOS=A2 z19E&efh#bDRn)#2BXJKZzzWpSRHN?DDbx{OL>+nHDg~wD9xCDyRI1;g7W{-7IDuLq zVo4~a$;cmO8&M0Dq8InNdZn`tHE#nFtF@p4972AOfIXx@w(Tt{6O+k{&N3IZ!+caG z$}s{DIcv~M{Wx-&?X%P4idRSJnCQtB+OriYS)V4oph_==lf48Mzn$ diff --git a/katrain/i18n/locales/fr/LC_MESSAGES/katrain.po b/katrain/i18n/locales/fr/LC_MESSAGES/katrain.po index b704d1c..61066cb 100644 --- a/katrain/i18n/locales/fr/LC_MESSAGES/katrain.po +++ b/katrain/i18n/locales/fr/LC_MESSAGES/katrain.po @@ -250,6 +250,9 @@ msgstr "Secondes par période" msgid "byoyomi periods" msgstr "Nombre de périodes" +msgid "count down sound" +msgstr "Activer le son" + #. submit button msgid "update timer" msgstr "Confirmer" @@ -594,7 +597,3 @@ msgstr "" "Le coup {move} a été annulé car il perdait {points_lost:.1f} points. Vous " "pouvez survoler le coup pour voir la réfutation. Veuillez jouer un nouveau " "coup." - -#. TODO -msgid "count down sounds" -msgstr "Count Down Sounds" diff --git a/katrain/i18n/locales/haha/LC_MESSAGES/katrain.mo b/katrain/i18n/locales/haha/LC_MESSAGES/katrain.mo index c2889e9bbe1c4daf7cc03447b6679b1e337e82cf..f14021b19731d3850c94d3c8bc0b106ecbc605a2 100644 GIT binary patch delta 1923 zcmXZcTS!zv9LMo7*R<8PG|g15m;d}{cF&fcFKw?J6Pjp@ z`7z#@aTxD0W&$Q7O(qjl&~NLjZG9`MUj-&(5R>pUYQ9T28C%hdoycRJ^Gd{b=*F)e z6EX=D{?edcHLe4B zOqcSnhC$Q>FHsAAL`C==m0~xqc$|jnpM~m|hZ?uswr@a&m~E&)_S*U(RR0E4z?V?t zLM^s%4;5)AYJtb7GwQSTA=CtKQ44%V?dTsWrD?3D_AJ!G`Mi|!BGmU%)Pnm_8>`1! z);En5(rNgGGjJjYz6<@h9nWJPj$jt1Fj^BX#aXx>bFmup@hYywKIAbTqEx#N7vm0` ziRUnb_03%h+G!7JzyRvjzQ+YPh8uJo{Wu%j@Bu!6_LPI zF)YId2dVFH=!FY1qf17RG@5SI;k>{(_z|^Y3JKLpb5Ic#po5!{-IyBGxCYF|D>xe2 zEE1_h>8C-te1)oiK++IEjGddL~5Tr5Lf$E~QG?6&Q7sENqTW? z7`3s_Nb*cvhO$?{jr9vEWB*Wx?aqm2CLI-+AN8|Xhx4%# z70?A#25zC|3w2OXWId>fp4$&2sI&ZLzsGUl3M37c`g~Lh*PwQ|2Q_g$>UY(M3Zw%S zXdfov5b6)%4YFRye4;R&hTo_ZPMI6+umKfuF{-@^btIQj0e9K<0aO4wAN5Z~Eu4+o z;R=k$P1a&`Q!mFvQ(??L3c550M;kbE)W9ax54sukL+-To0`lpmz8!VD_n;O$ib{DC zDsyeP3A-ZK$JMwZ@g7%Fj1x(k>Wcxtw=y=y3H!Z^Bi%DrxDtcaL1#-{eRZHV7>@Pz fCKLw_)mA!z+Q_gk9Gg%dsB>xphpQq-a>B0vi0;Oc delta 1920 zcmXZdX-Jeo9LMod7mv2I)w0sG&DHEwGb-sK(GHPb*n!$fX;D$Dq$T;nhl&yk4cvmn zqJ!Q9-Afb{6=6w93Ee?qkysQ_L`Vlk-=90MJfE3)=J?Nl=Fz6I17#O0!yS(?rf-lj zF&G_dOdQ4|O(qTFF~`;mY`p~4uM#!B76;-!9E<@>#M79J*O8xj!NZNcH~_!L8plLa z_)CKZMl!1g4#Odsg$Y=I!?6_AuiCl`HNM5#hA!%-F%r+9=DUdeOb3ttKv47d#yO!E ze`wH7-OR2`q*}+KBF;taa1Qb_#XQt+B`Q-JQ15F|^Xx(eatIY*D-Oj|sBzbjpSk1M zh9{^A-k=uzgo>~am0~xKC`>_3kb&x#jT$%8wl746n8m0-Dr|iRs(&LY-~eizbJ7;h zqawYITA&?uMvrX$6>5U_s0F^FcBEC5(nM5y25RAHJe2Yx)cbPOf*VmA+m3$LH~T3J zqv02(qK5-tg*mtkn=uP}FdY*ZtqJom4Hw`f+>BH42+qYv$j`(PrP|Xm7nkEGY{C(& zZ_ZKBPCHNo9;0sU2b_oz+@J=`!3?~Bm+%?h#YUo6#ujlyldu#|;WpHchmHsZoQB%y zWF&c}2!|9>SV4i!n`+x(53;stLrriAmD-zl6}xaHHnLhL_5?;pCOZ!)EhK^YVH^e< zd`!K}%SVY5Mu(QXjHJ=DqYmdKj>V6t6+I+WD`lc0%0n*}qrSf_sBwF73?4@HzmY~F zbtn&MP%dAi>K{2hJY11%%tf8@I@BTVw)G1*o_d$9|3>XRiP>jk4(hh~ku;lQsKBnGGIt-9fj7wc zn=eT6jLRV(x?W?@i{;4Nrry?%qXN2(%FJ8qS5(ISp$f}FpyqR~P*7y;sEMB17w=GK`OUtM;J_6~0xI=WP$|qu?Qk_};%zty8&QE=K?T~0 z(fAzo2ca8T&oQ4Vq|opamBPevp$_v<5tpFaD^N$$f(rPSZSO(_@DJ5Lp6zPkbkq)K zU=$WvOK<@7a&(&t{vA=!rK#?3;EynBU=!+tK8pH~ui5(a384v=pl` weighted away from " -"the last move and plays the best one. Plays top move if policy value is " -"above `pick_override` to avoid obvious mistakes. A higher `stddev` makes it " -"play further away." - -msgid "general settings" -msgstr "ㅋㅋGeneral Settings" - -msgid "general:debug_level" -msgstr "ㅋㅋDebug level in the console" - -msgid "ai:p:local" -msgstr "ㅋㅋLocal Style" - -msgid "avoids replaying" -msgstr "" -"ㅋㅋAvoids replaying\n" -"identical games" - -msgid "ai:p:territory" -msgstr "ㅋㅋTerritorial Style" - -msgid "wait-before-equalize" -msgstr "" -"ㅋㅋWait for initial analysis to complete before requesting a refinement." - -msgid "Copied SGF to clipboard." -msgstr "ㅋㅋCopied SGF to clipboard." - -msgid "Info:AI thoughts" -msgstr "ㅋㅋAI thought process: {thoughts}" - -msgid "Starting Kata failed" -msgstr "" -"ㅋㅋStarting KataGo with command '{command}' failed with error {error}. Please" -" make sure the 'katago' value under 'engine' in settings points to the " -"correct KataGo executable." +msgid "analysis:equalize" +msgstr "ㅋㅋEqualize visits of potential moves" msgid "Engine died unexpectedly" msgstr "" "ㅋㅋEngine died unexpectedly without sending output, possibly due to out of " "memory: {error}" -msgid "menu:settings" -msgstr "ㅋㅋGeneral & Engine Settings" +msgid "general settings" +msgstr "ㅋㅋGeneral Settings" -msgid "save dots" -msgstr "ㅋㅋSave in SGF" +msgid "ai:p:local" +msgstr "ㅋㅋLocal Style" -msgid "ai:scoreloss" -msgstr "ㅋㅋScore Loss" - -msgid "player:human" -msgstr "ㅋㅋHuman" - -msgid "menu:playersetup" -msgstr "ㅋㅋPlayer Setup" - -msgid "tab:notes" -msgstr "ㅋㅋNotes" - -msgid "Jigo" -msgstr "ㅋㅋJigo" - -msgid "komi" -msgstr "ㅋㅋKomi" - -msgid "general:debug_level:hint" -msgstr "ㅋㅋSet to 1 when reporting errors" - -msgid "stats:pointslost" -msgstr "ㅋㅋPoints Lost" - -msgid "menu:load" -msgstr "ㅋㅋLoad Game" - -msgid "engine:wide_root_noise" -msgstr "ㅋㅋWide root noise (increases variety of moves considered)" - -msgid "engine:katago" -msgstr "ㅋㅋPath to KataGo executable" - -msgid "teacher settings" -msgstr "ㅋㅋEdit Teacher Settings" - -msgid "Info:undo predicted PV" -msgstr "ㅋㅋPredicted follow-up: {pv}" +msgid "point loss threshold" +msgstr "ㅋㅋPoint loss greater than" msgid "chinese" msgstr "ㅋㅋChinese" -msgid "update settings" -msgstr "ㅋㅋUpdate Settings" +msgid "load sgf rewind" +msgstr "ㅋㅋRewind to start" -msgid "ai:default" -msgstr "ㅋㅋKataGo" +msgid "save dots" +msgstr "ㅋㅋSave in SGF" -msgid "show dots" -msgstr "ㅋㅋShow dots" +msgid "ai-ponder" +msgstr "" +"ㅋㅋThis simply indicates the Engine status, going from green (idle) to orange" +" (processing queries). It turns red when the engine has crashed or fails to " +"start." msgid "ruleset" msgstr "ㅋㅋRules" -msgid "Analyzing move..." -msgstr "ㅋㅋAnalyzing move..." +msgid "non square board hint" +msgstr "ㅋㅋUse x:y (e.g. 19:9) for non-square size" + +msgid "menu:save" +msgstr "ㅋㅋSave Game" + +msgid "new game" +msgstr "ㅋㅋStart New Game" + +msgid "menu:load" +msgstr "ㅋㅋLoad Game" + +msgid "byoyomi length" +msgstr "ㅋㅋTime per Byo-yomi Period" + +msgid "player:ai" +msgstr "ㅋㅋAI" + +msgid "menu:aisettings" +msgstr "ㅋㅋAI Settings" + +msgid "sgf written" +msgstr "ㅋㅋSGF with analysis written to {file_name}" + +msgid "load sgf fast analysis" +msgstr "ㅋㅋUse fast analysis" + +msgid "btn:Analyze" +msgstr "ㅋㅋAnalysis Options" + +msgid "load sgf title" +msgstr "ㅋㅋLoad SGF File to Analyze" + +msgid "ai:policy" +msgstr "ㅋㅋPolicy" + +msgid "show last n dots" +msgstr "" +"ㅋㅋShow dots for the last\n" +" moves" + +msgid "engine:fast_visits" +msgstr "ㅋㅋMaximum number of visits in fast analysis" + +msgid "engine:max_visits" +msgstr "ㅋㅋMaximum number of visits in analysis" + +msgid "teacher settings" +msgstr "ㅋㅋEdit Teacher Settings" + +msgid "count down sound" +msgstr "ㅋㅋSound on" + +msgid "stats:pointslost" +msgstr "ㅋㅋPoints Lost" + +msgid "Copied SGF to clipboard." +msgstr "ㅋㅋCopied SGF to clipboard." + +msgid "Info:point loss" +msgstr "ㅋㅋEstimated point loss: {points_lost:.1f}" + +msgid "analysis:topmoves" +msgstr "" +"ㅋㅋTop\n" +"Moves" + +msgid "engine:wide_root_noise:hint" +msgstr "" +"ㅋㅋUse 0.02-0.1 to show\n" +"more possible moves" + +msgid "Info:best move" +msgstr "ㅋㅋMove was predicted best move" + +msgid "analysis:policy" +msgstr "" +"ㅋㅋPolicy\n" +"Moves" + +msgid "ai:p:tenuki" +msgstr "ㅋㅋTenuki Style" + +msgid "Info:undo predicted PV" +msgstr "ㅋㅋPredicted follow-up: {pv}" + +msgid "ai settings" +msgstr "ㅋㅋAdvanced AI Settings" + +msgid "stats:winrate" +msgstr "ㅋㅋWin Rate" + +msgid "ai:p:territory" +msgstr "ㅋㅋTerritorial Style" + +msgid "engine:wide_root_noise" +msgstr "ㅋㅋWide root noise (increases variety of moves considered)" + +msgid "analysis:territory" +msgstr "" +"ㅋㅋExpected\n" +"Territory" + +msgid "engine:katago" +msgstr "ㅋㅋPath to KataGo executable" + +msgid "wait-before-equalize" +msgstr "" +"ㅋㅋWait for initial analysis to complete before requesting a refinement." + +msgid "closedlabel:movestats" +msgstr "ㅋㅋMove Stats" + +msgid "menu:support" +msgstr "ㅋㅋSupport" + +msgid "Failed to import from clipboard" +msgstr "" +"ㅋㅋFailed to import game from clipboard: {error}\n" +"Clipboard contents: {contents}..." + +msgid "btn:Analysis" +msgstr "ㅋㅋAnalysis" + +msgid "aga" +msgstr "ㅋㅋAGA" + +msgid "teaching undo message" +msgstr "" +"ㅋㅋUndid move {move} as it lost {points_lost:.1f} points. Hover over the move" +" to see expected refutation. Please try again." + +msgid "menu:newgame" +msgstr "ㅋㅋNew Game" + +msgid "move" +msgstr "ㅋㅋMove {number}" + +msgid "board-game-end" +msgstr "" +"ㅋㅋgame\n" +"end" + +msgid "No analysis available" +msgstr "ㅋㅋNo analysis available" + +msgid "aihelp:p:influence" +msgstr "" +"ㅋㅋPicks moves biased above the `threshold` line and plays the best one. " +"Increase `line_weight` to penalize moves near the edge more. Stops strategy " +"after the 'endgame' fraction of the board is filled." + +msgid "tab:info" +msgstr "ㅋㅋInfo" + +msgid "engine:config" +msgstr "ㅋㅋPath to KataGo config file" + +msgid "ai:default" +msgstr "ㅋㅋKataGo" + +msgid "lock ai when playing" +msgstr "" +"ㅋㅋDisable top moves\n" +" while in play mode" + +msgid "player:type" +msgstr "ㅋㅋPlayer" + +msgid "show dots" +msgstr "ㅋㅋShow dots" + +msgid "closedlabel:info¬es" +msgstr "ㅋㅋMove Info & Notes" + +msgid "Info:top move" +msgstr "ㅋㅋPredicted top move was {top_move} ({score})." + +msgid "aihelp:scoreloss" +msgstr "" +"ㅋㅋPlays moves that lead to more points lost with lower probability. Likely " +"to play more varied/weaker with higher visits settings." + +msgid "num undos" +msgstr "ㅋㅋNumber of undos" + +msgid "ai:p:weighted" +msgstr "ㅋㅋPolicy Weighted" + +msgid "analysis:sweep" +msgstr "ㅋㅋFast analysis of all moves" + +msgid "update teacher" +msgstr "ㅋㅋUpdate Feedback Settings" + +msgid "japanese" +msgstr "ㅋㅋJapanese" + +msgid "btn:Play" +msgstr "ㅋㅋPlay" + +msgid "ai:p:pick" +msgstr "ㅋㅋBlinded Policy" + +msgid "aihelp:p:territory" +msgstr "" +"ㅋㅋPicks moves biased below the `threshold` line and plays the best one. " +"Increase `line_weight` to penalize moves near the center more. Stops " +"strategy after the 'endgame' fraction of the board is filled." + +msgid "timer settings" +msgstr "ㅋㅋAdjust Timer Settings" + +msgid "file not found" +msgstr "ㅋㅋPath does not exist" + +msgid "config file path" +msgstr "ㅋㅋAll options are saved in {file}" + +msgid "game:teach" +msgstr "ㅋㅋTeaching Game" + +msgid "Failed to load SGF" +msgstr "ㅋㅋFailed to load SGF. Parse Error: {error}" + +msgid "gametype" +msgstr "ㅋㅋGame Type" + +msgid "update ai settings" +msgstr "ㅋㅋUpdate AI Settings" + +msgid "aihelp:default" +msgstr "" +"ㅋㅋFull strength KataGo AI. Strength is affected by `max visits` and `model`" +" in the general settings `engine` section and engine configuration file. No " +"options are available here." msgid "Starting default Kata failed" msgstr "" @@ -143,26 +284,51 @@ msgstr "" "MacOS, see the manual on how to use brew to install katago first, and add it" " to your path or 'engine/katago' setting." +msgid "aihelp:p:pick" +msgstr "" +"ㅋㅋPicks `pick_n + pick_frac * ` at random and plays " +"the best one. For `pick_frac=1` plays like the `Policy` AI. Plays top move " +"if policy value is above `pick_override` to avoid obvious mistakes." + +msgid "show ai dots" +msgstr "" +"ㅋㅋShow dots/SGF comments\n" +" for AI players" + +msgid "menu:lang" +msgstr "ㅋㅋLanguage" + +msgid "Info:PV" +msgstr "ㅋㅋPV: {pv}" + msgid "tab:points" msgstr "ㅋㅋPoint Loss" -msgid "pass-button-text" -msgstr "ㅋㅋPass" +msgid "analysis:extra" +msgstr "ㅋㅋDeeper analysis" -msgid "ai settings" -msgstr "ㅋㅋAdvanced AI Settings" +msgid "SGF start message" +msgstr "" +"ㅋㅋMoves marked 'X' indicate the top move according to KataGo, those with a " +"square are moves that lose less than 0.5 points" + +msgid "general:sgf_load" +msgstr "ㅋㅋPath for loading SGF files" msgid "ai:jigo" msgstr "ㅋㅋKataJigo" -msgid "analysis:aimove" -msgstr "ㅋㅋForce AI Move" +msgid "engine settings" +msgstr "ㅋㅋKataGo Engine Settings" -msgid "board size" -msgstr "ㅋㅋBoard size" +msgid "komi" +msgstr "ㅋㅋKomi" -msgid "tab:winrate" -msgstr "ㅋㅋWin Rate" +msgid "general settings title" +msgstr "ㅋㅋGeneral and Engine Settings" + +msgid "byoyomi periods" +msgstr "ㅋㅋNumber of Periods" msgid "aihelp:p:weighted" msgstr "" @@ -172,72 +338,50 @@ msgstr "" "without randomness, and `lower_bound` determines the lower bound policy " "value that is allowed." -msgid "strength:dan" -msgstr "ㅋㅋd" +msgid "engine:katago:hint" +msgstr "ㅋㅋLeave blank to use included executable" -msgid "byoyomi length" -msgstr "ㅋㅋTime per Byo-yomi Period" +msgid "Analyzing move..." +msgstr "ㅋㅋAnalyzing move..." -msgid "tab:score" -msgstr "ㅋㅋScore" +msgid "update timer" +msgstr "ㅋㅋUpdate Timer" -msgid "sgf written" -msgstr "ㅋㅋSGF with analysis written to {file_name}" +msgid "engine:model" +msgstr "ㅋㅋPath to KataGo model file" -msgid "game:teach" -msgstr "ㅋㅋTeaching Game" - -msgid "menu:lang" -msgstr "ㅋㅋLanguage" - -msgid "clear cache" -msgstr "ㅋㅋClear Cache" +msgid "dot color" +msgstr "ㅋㅋColour (fixed)" msgid "aihelp:jigo" msgstr "" "ㅋㅋWill try to win by a set amount of points (default 0.5), without further " "restrictions." -msgid "Info:policy rank" -msgstr "ㅋㅋMove was #{rank} according to policy ({probability:.2%})." +msgid "strength:dan" +msgstr "ㅋㅋd" -msgid "update ai settings" -msgstr "ㅋㅋUpdate AI Settings" +msgid "stats:pointsgained" +msgstr "ㅋㅋPoints Gained" -msgid "menu:support" -msgstr "ㅋㅋSupport" +msgid "handicap" +msgstr "ㅋㅋHandicap" -msgid "dot color" -msgstr "ㅋㅋColour (fixed)" - -msgid "Failed to load SGF" -msgstr "ㅋㅋFailed to load SGF. Parse Error: {error}" - -msgid "update teacher" -msgstr "ㅋㅋUpdate Feedback Settings" - -msgid "menu:newgame" -msgstr "ㅋㅋNew Game" - -msgid "New Game title" -msgstr "ㅋㅋSetup New Game" - -msgid "Info:top move" -msgstr "ㅋㅋPredicted top move was {top_move} ({score})." - -msgid "show last n dots" +msgid "aihelp:p:tenuki" msgstr "" -"ㅋㅋShow dots for the last\n" -" moves" +"ㅋㅋPicks `pick_n + pick_frac * ` weighted away from " +"the last move and plays the best one. Plays top move if policy value is " +"above `pick_override` to avoid obvious mistakes. A higher `stddev` makes it " +"play further away." -msgid "num undos" -msgstr "ㅋㅋNumber of undos" +msgid "engine:max_time" +msgstr "ㅋㅋMaximum time for analysis" -msgid "ai-ponder" -msgstr "" -"ㅋㅋThis simply indicates the Engine status, going from green (idle) to orange" -" (processing queries). It turns red when the engine has crashed or fails to " -"start." +msgid "Info:policy best" +msgstr "ㅋㅋTop policy move was {move} ({probability:.1%})." + +msgid "game:normal" +msgstr "ㅋㅋNormal Game" msgid "aihelp:p:local" msgstr "" @@ -245,287 +389,143 @@ msgstr "" "last move and plays the best one. Plays top move if policy value is above " "`pick_override` to avoid obvious mistakes." -msgid "analysis:extra" -msgstr "ㅋㅋDeeper analysis" +msgid "tab:score" +msgstr "ㅋㅋScore" -msgid "byoyomi periods" -msgstr "ㅋㅋNumber of Periods" +msgid "strength:kyu" +msgstr "ㅋㅋk" -msgid "show ai dots" +msgid "clear cache" +msgstr "ㅋㅋClear Cache" + +msgid "ai:scoreloss" +msgstr "ㅋㅋScore Loss" + +msgid "Starting Kata failed" msgstr "" -"ㅋㅋShow dots/SGF comments\n" -" for AI players" +"ㅋㅋStarting KataGo with command '{command}' failed with error {error}. Please" +" make sure the 'katago' value under 'engine' in settings points to the " +"correct KataGo executable." -msgid "ai:p:pick" -msgstr "ㅋㅋBlinded Policy" +msgid "pass-button-text" +msgstr "ㅋㅋPass" -msgid "ai:policy" -msgstr "ㅋㅋPolicy" - -msgid "restarting engine" -msgstr "ㅋㅋRestarting Engine after Settings Change." - -msgid "menu:clocksettings" -msgstr "ㅋㅋTimer Settings" - -msgid "analysis:equalize" -msgstr "ㅋㅋEqualize visits of potential moves" - -msgid "engine:max_time" -msgstr "ㅋㅋMaximum time for analysis" - -msgid "closedlabel:info¬es" -msgstr "ㅋㅋMove Info & Notes" - -msgid "aihelp:p:pick" +msgid "avoids replaying" msgstr "" -"ㅋㅋPicks `pick_n + pick_frac * ` at random and plays " -"the best one. For `pick_frac=1` plays like the `Policy` AI. Plays top move " -"if policy value is above `pick_override` to avoid obvious mistakes." +"ㅋㅋAvoids replaying\n" +"identical games" -msgid "Info:score" -msgstr "ㅋㅋScore: {score}" +msgid "general:debug_level:hint" +msgstr "ㅋㅋSet to 1 when reporting errors" -msgid "japanese" -msgstr "ㅋㅋJapanese" - -msgid "engine settings" -msgstr "ㅋㅋKataGo Engine Settings" - -msgid "general settings title" -msgstr "ㅋㅋGeneral and Engine Settings" - -msgid "engine:katago:hint" -msgstr "ㅋㅋLeave blank to use included executable" - -msgid "Info:best move" -msgstr "ㅋㅋMove was predicted best move" - -msgid "file not found" -msgstr "ㅋㅋPath does not exist" - -msgid "analysis:policy" -msgstr "" -"ㅋㅋPolicy\n" -"Moves" - -msgid "Select AI" -msgstr "ㅋㅋSelect AI strategy to configure" - -msgid "SGF Notes Hint" -msgstr "ㅋㅋYour SGF notes for this position here." - -msgid "load sgf rewind" -msgstr "ㅋㅋRewind to start" - -msgid "Info:winrate" -msgstr "ㅋㅋWin rate: {winrate}" - -msgid "move" -msgstr "ㅋㅋMove {number}" - -msgid "menu:save" -msgstr "ㅋㅋSave Game" - -msgid "board-pass" -msgstr "ㅋㅋpass" - -msgid "aistrategy" -msgstr "ㅋㅋAI Strategy" - -msgid "load sgf fast analysis" -msgstr "ㅋㅋUse fast analysis" - -msgid "engine:fast_visits" -msgstr "ㅋㅋMaximum number of visits in fast analysis" - -msgid "player:ai" -msgstr "ㅋㅋAI" - -msgid "menu:manual" -msgstr "ㅋㅋManual" - -msgid "analysis:sweep" -msgstr "ㅋㅋFast analysis of all moves" - -msgid "board-game-end" -msgstr "" -"ㅋㅋgame\n" -"end" - -msgid "undo-button-text" -msgstr "ㅋㅋUndo" - -msgid "aihelp:p:territory" -msgstr "" -"ㅋㅋPicks moves biased below the `threshold` line and plays the best " -"one.Increase `line_weight` to penalize moves near the center more. Stops " -"strategy after the 'endgame' fraction of the board is filled." - -msgid "engine:model" -msgstr "ㅋㅋPath to KataGo model file" - -msgid "korean" -msgstr "ㅋㅋKorean" - -msgid "closedlabel:scoregraph" -msgstr "ㅋㅋScore Graph" +msgid "ai:p:influence" +msgstr "ㅋㅋInfluential Style" msgid "analysis:dots" msgstr "" "ㅋㅋShow\n" "Dots" -msgid "non square board hint" -msgstr "ㅋㅋUse x:y (e.g. 19:9) for non-square size" +msgid "menu:manual" +msgstr "ㅋㅋManual" -msgid "lock ai when playing" +msgid "general:sgf_save" +msgstr "ㅋㅋPath for saving SGF files" + +msgid "Jigo" +msgstr "ㅋㅋJigo" + +msgid "update settings" +msgstr "ㅋㅋUpdate Settings" + +msgid "Info:AI thoughts" +msgstr "ㅋㅋAI thought process: {thoughts}" + +msgid "Info:policy rank" +msgstr "ㅋㅋMove was #{rank} according to policy ({probability:.2%})." + +msgid "aihelp:policy" msgstr "" -"ㅋㅋDisable analysis\n" -" while in play mode" - -msgid "general:anim_pv_time" -msgstr "ㅋㅋTime between moves when animating a sequence" - -msgid "stats:score" -msgstr "ㅋㅋEstimated Score" - -msgid "new game" -msgstr "ㅋㅋStart New Game" - -msgid "update timer" -msgstr "ㅋㅋUpdate Timer" - -msgid "Info:policy best" -msgstr "ㅋㅋTop policy move was {move} ({probability:.1%})." - -msgid "handicap" -msgstr "ㅋㅋHandicap" - -msgid "closedlabel:movestats" -msgstr "ㅋㅋMove Stats" - -msgid "stats:pointsgained" -msgstr "ㅋㅋPoints Gained" - -msgid "Info:point loss" -msgstr "ㅋㅋEstimated point loss: {points_lost:.1f}" - -msgid "tab:info" -msgstr "ㅋㅋInfo" - -msgid "gametype" -msgstr "ㅋㅋGame Type" - -msgid "ai:p:weighted" -msgstr "ㅋㅋPolicy Weighted" - -msgid "menu:aisettings" -msgstr "ㅋㅋAI Settings" - -msgid "btn:Analysis" -msgstr "ㅋㅋAnalysis" - -msgid "SGF start message" -msgstr "" -"ㅋㅋMoves marked 'X' indicate the top move according to KataGo, those with a " -"square are moves that lose less than 0.5 points" - -msgid "player:type" -msgstr "ㅋㅋPlayer" - -msgid "aihelp:default" -msgstr "" -"ㅋㅋFull strength KataGo AI. Strength is affected by `max_visits` and `model`" -" in the general settings `engine` section and engine configuration file. No " -"options are available here." - -msgid "analysis:territory" -msgstr "" -"ㅋㅋExpected\n" -"Territory" - -msgid "No analysis available" -msgstr "ㅋㅋNo analysis available" - -msgid "point loss threshold" -msgstr "ㅋㅋPoint loss greater than" - -msgid "ai:p:influence" -msgstr "ㅋㅋInfluential Style" - -msgid "aihelp:p:influence" -msgstr "" -"ㅋㅋPicks moves biased above the `threshold` line and plays the best " -"one.Increase `line_weight` to penalize moves near the edge more. Stops " -"strategy after the 'endgame' fraction of the board is filled." - -msgid "ai:p:tenuki" -msgstr "ㅋㅋTenuki Style" +"ㅋㅋPlays the top move from the policy network, without any reading. Strength " +"is mainly affected by `model` in engine settings. The opening moves setting " +"affects how many moves in the opening are more random." msgid "menu:teachsettings" msgstr "ㅋㅋTeaching Game Settings" -msgid "aga" -msgstr "ㅋㅋAGA" +msgid "stats:score" +msgstr "ㅋㅋEstimated Score" -msgid "btn:Analyze" -msgstr "ㅋㅋAnalyze" +msgid "menu:clocksettings" +msgstr "ㅋㅋTimer Settings" -msgid "Info:PV" -msgstr "ㅋㅋPV: {pv}" +msgid "Info:score" +msgstr "ㅋㅋScore: {score}" -msgid "stats:winrate" +msgid "closedlabel:scoregraph" +msgstr "ㅋㅋScore Graph" + +msgid "Info:winrate" +msgstr "ㅋㅋWin rate: {winrate}" + +msgid "SGF Notes Hint" +msgstr "ㅋㅋYour SGF notes for this position here." + +msgid "menu:settings" +msgstr "ㅋㅋGeneral & Engine Settings" + +msgid "tab:notes" +msgstr "ㅋㅋNotes" + +msgid "general:anim_pv_time" +msgstr "ㅋㅋTime between moves when animating a sequence" + +msgid "analysis:aimove" +msgstr "ㅋㅋForce AI Move" + +msgid "board-pass" +msgstr "ㅋㅋpass" + +msgid "player:human" +msgstr "ㅋㅋHuman" + +msgid "aistrategy" +msgstr "ㅋㅋAI Strategy" + +msgid "korean" +msgstr "ㅋㅋKorean" + +msgid "menu:playersetup" +msgstr "ㅋㅋPlayer Setup" + +msgid "New Game title" +msgstr "ㅋㅋSetup New Game" + +msgid "tab:winrate" msgstr "ㅋㅋWin Rate" -msgid "engine:max_visits" -msgstr "ㅋㅋMaximum number of visits in analysis" +msgid "engine:time:hint" +msgstr "ㅋㅋTime in seconds" + +msgid "undo-button-text" +msgstr "ㅋㅋUndo" + +msgid "board size" +msgstr "ㅋㅋBoard size" + +msgid "Select AI" +msgstr "ㅋㅋSelect AI strategy to configure" + +msgid "general:debug_level" +msgstr "ㅋㅋDebug level in the console" msgid "Info:teaching undo" msgstr "ㅋㅋMove was automatically undone in teaching mode." -msgid "load sgf title" -msgstr "ㅋㅋLoad SGF File to Analyze" - -msgid "engine:time:hint" -msgstr "ㅋㅋTime in seconds" +msgid "restarting engine" +msgstr "ㅋㅋRestarting Engine after Settings Change." msgid "analysis:nextmoves" msgstr "" "ㅋㅋNext\n" "Moves" - -msgid "strength:kyu" -msgstr "ㅋㅋk" - -msgid "general:sgf_save" -msgstr "ㅋㅋPath for saving SGF files" - -msgid "Failed to import from clipboard" -msgstr "" -"ㅋㅋFailed to import game from clipboard: {error}\n" -"Clipboard contents: {contents}..." - -msgid "aihelp:scoreloss" -msgstr "" -"ㅋㅋPlays moves that lead to more points lost with lower probability. Likely " -"to play more varied/weaker with higher visits settings." - -msgid "timer settings" -msgstr "ㅋㅋAdjust Timer Settings" - -msgid "engine:wide_root_noise:hint" -msgstr "" -"ㅋㅋUse 0.02-0.1 to show\n" -"more possible moves" - -msgid "config file path" -msgstr "ㅋㅋAll options are saved in {file}" - -msgid "teaching undo message" -msgstr "" -"ㅋㅋUndid move {move} as it lost {points_lost:.1f} points. Hover over the move" -" to see expected refutation. Please try again." - -msgid "count down sounds" -msgstr "ㅋㅋCount Down Sounds" diff --git a/katrain/i18n/locales/ko/LC_MESSAGES/katrain.mo b/katrain/i18n/locales/ko/LC_MESSAGES/katrain.mo index 04c7ecfc6d30911c646b4bbe79aa0ca257c776c8..fa5e2fd8b2aadc3ee0aae749f0c4e672840df425 100644 GIT binary patch delta 1889 zcmXZcc}P@I6vy#Xnl@u@ zY835F5J?0U2K|wL6h#|EmXK6JQV}K9_t#t)-sj!>?mhRsbMKoQrLCpc*AMg$HM1X) zW*!WWGKKw zgI{#$O}#`{CB``?p)#J1dc!%$&lYphxYejiZ9qM*LdB^;C2|;*U<;1I)2Mm3k)O4z z{_1#w3h)NCU=J$8@2C=cxrF0b)c7RSxD3?1T-TqEOtB(VB4w_<12w)5m2e|!p8u4) zxq`~H4Yj}n)E+%{?H8y3U8n_mQE&7YRnk$crv4<4Jy?L%!v6W+j+Sd2w{TYcDyN~C41*>Y^794jy~ zA^3b+P%(xRKi}$nuZgR^JayZjT=$xobbDwyBJ2tYiAegQ1!U>7v%ieH{@Jd z#FXF`Bx5S=eAL!dp%UAJir0+V(&OmCTd1wMhpM>$5jPs}3OO&I}@qLM%cBID=X+fST8iTDTKE_zd~7?JcV0eeQW0SyOqxWpb0tg94m~yHSBVa1lO7 zFD6n)nTkpz8?|r&s!}D+Rj35kIya!^ZFN?o=Iz2bTVQsOn?^b=p-PyS9?X0>@}*fR oYC<)tQnjcva{?>zX5fftTWBCWDn2&sb6x$X^OpmeDSyKM0bk{|MgRZ+ delta 1902 zcmXZcduYvJ9LMo5j$PT6ZOr9tY;&72a?REp%4o$ljXL~cOLCdZ=2H9P*HQ?%&Hgyq zAI2v0$FfFbg_cZ;k|dLaOzuTiZp-`QJaziLp6B^Jm+$j^p5JK=b_6e14fYbvtbe#! zG)Bdl#bXlEWSN+RGh993>Z?%ws!-!=aTp%J1Z=<*Y{7KwLVos?M=bVX41S9<&!Q;& zr9lHDm{kK)aRg4sWDH;$R-pRraMq*7pK_i-AN3ZDz&6x;myw_K@c17HYW}`>FZ|*+ z4ccievnvzhoRd%y=c9I5fc$I)5A_S8GPM!)z7{o4Jt~mXr~pGa63?N=T}OV_?YV}> zs0m)67W{yUupgD;SRRo$7BxW@s$U*z+(OsB3>jjjs6Z-ReGjVtK~%sEsBvDiE3~5` z?LsYZ2X#gdUHutqf;XrIzM^)dRg}^cRC^X`;W<2%@?zBcwWtL*p*FS~x3In)rl5%W zaSHl4@FSRqHQ0p(sxvAZt5Fj-Vg|P2SnR=t_!f&XgXl)%7Mz6#a30=3-HGp*#`+dR zO*@`|Y|3(xIjj)pV>uqhW2gnwQ^^W0!i+)eikmrv`t(uZ1@p0+dI{SyyWT~sPDfUHQ{sAAIp1W(>9cgp#U>c zmu)uc2m`2oYmgYN*40C(qrI9<{?+j-4Z1|W9KLlMR!Ct1FUqk9kE14jgvIz8V{jUIlygym zEJiI{j>^;q=SEZjo1HsR(H1akqHv0aYp4`1&kaYu9{JL26KcSIRHja% s?o1o*!ke9;=xx41HJuT0>1m09?YpaM{Y$p*t@f8utg7kE$sUOO2VhCLDgXcg diff --git a/katrain/i18n/locales/ko/LC_MESSAGES/katrain.po b/katrain/i18n/locales/ko/LC_MESSAGES/katrain.po index 25cc1ba..f646ae4 100644 --- a/katrain/i18n/locales/ko/LC_MESSAGES/katrain.po +++ b/katrain/i18n/locales/ko/LC_MESSAGES/katrain.po @@ -244,6 +244,9 @@ msgstr "초읽기 시간" msgid "byoyomi periods" msgstr "초읽기 횟수" +msgid "count down sound" +msgstr "소리" + #. submit button msgid "update timer" msgstr "시간 설정 갱신" @@ -535,7 +538,3 @@ msgstr "" msgid "teaching undo message" msgstr "" "{points_lost:.1f}집 손해이므로 {move}을/를 물렀습니다. 커서를 올려 상대의 대응책을 보십시오. 다시 두어 주세요." - -#. TODO -msgid "count down sounds" -msgstr "Count Down Sounds" diff --git a/katrain/popups.kv b/katrain/popups.kv index 58f898c..8f2e5de 100644 --- a/katrain/popups.kv +++ b/katrain/popups.kv @@ -237,8 +237,8 @@ MDGridLayout: cols: 2 rows: 3 - spacing: CP_SPACING - size_hint: 1,2 + spacing: 1.5 * CP_SPACING + size_hint: 1,2.5 DescriptionLabel: text: i18n._('byoyomi length') AnchorLayout: @@ -252,10 +252,10 @@ text: "5" input_property: "timer/byo_periods" DescriptionLabel: - text: i18n._('count down sounds') + text: i18n._('count down sound') AnchorLayout: LabelledCheckBox: - input_property: "timer/sounds" + input_property: "timer/sound" AnchorLayout: size_hint: 1,1 AutoSizedRoundedRectangleButton: