From f1a6c62b37ef48ec8a7f4b6241d92c53b80764d6 Mon Sep 17 00:00:00 2001 From: Sander Land Date: Mon, 8 Jun 2020 18:36:34 +0200 Subject: [PATCH] fix to state, i18ize some errors --- CONTRIBUTORS | 1 + katrain/core/base_katrain.py | 2 +- katrain/core/engine.py | 23 +++----- katrain/core/game.py | 6 +- .../i18n/locales/de/LC_MESSAGES/katrain.mo | Bin 11465 -> 12013 bytes .../i18n/locales/de/LC_MESSAGES/katrain.po | 40 ++++++++++--- .../i18n/locales/en/LC_MESSAGES/katrain.mo | Bin 10674 -> 11151 bytes .../i18n/locales/en/LC_MESSAGES/katrain.po | 35 +++++++++--- .../i18n/locales/es/LC_MESSAGES/katrain.mo | Bin 11731 -> 12296 bytes .../i18n/locales/es/LC_MESSAGES/katrain.po | 54 +++++++++++++----- .../i18n/locales/fr/LC_MESSAGES/katrain.mo | Bin 11796 -> 12360 bytes .../i18n/locales/fr/LC_MESSAGES/katrain.po | 42 +++++++++++--- .../i18n/locales/ko/LC_MESSAGES/katrain.mo | Bin 12115 -> 12645 bytes .../i18n/locales/ko/LC_MESSAGES/katrain.po | 34 +++++++++-- 14 files changed, 177 insertions(+), 60 deletions(-) diff --git a/CONTRIBUTORS b/CONTRIBUTORS index 5c6be85..4410b82 100644 --- a/CONTRIBUTORS +++ b/CONTRIBUTORS @@ -8,6 +8,7 @@ Matthew Allred ("Kameone") for design of the v1.1 UI and providing MacOS install "bale-go" for implementing and calibrating the 'calibrated rank' AI. "nimets123" for the German translation and sound effects. "nowoowoo" for a fix to the parser for SGF files with extra line breaks. +Sergio Villegas ("serpiente") for the Spanish translation. Additional thanks to: "Seventeen" for explanatory youtube videos. diff --git a/katrain/core/base_katrain.py b/katrain/core/base_katrain.py index 17d09d5..182e021 100644 --- a/katrain/core/base_katrain.py +++ b/katrain/core/base_katrain.py @@ -121,7 +121,7 @@ class KaTrainBase: try: if "/" in setting: cat, key = setting.split("/") - return self._config[cat].get(key, default) + return self._config.get(cat,{}).get(key, default) else: return self._config[setting] except KeyError: diff --git a/katrain/core/engine.py b/katrain/core/engine.py index 6662731..6de691e 100644 --- a/katrain/core/engine.py +++ b/katrain/core/engine.py @@ -61,21 +61,18 @@ class KataGoEngine: exepath, exename = os.path.split(exe) if exepath and not os.path.isfile(exe): - self.katrain.log(f"KataGo binary {exe} does not exist, check general settings.", OUTPUT_ERROR) + self.katrain.log(i18n._('Kata exe not found').format(exe=exe), OUTPUT_ERROR) return # don't start elif not exepath and not any( os.path.isfile(os.path.join(path, exe)) for path in os.environ.get("PATH", "").split(os.pathsep) ): - self.katrain.log( - f"KataGo binary `{exe}` not found in PATH, check your environment variables or add the full path in general settings.", - OUTPUT_ERROR, - ) + self.katrain.log(i18n._('Kata exe not found in path').format(exe), OUTPUT_ERROR ) return # don't start elif not os.path.isfile(model): - self.katrain.log(f"Model {model} does not exist, check general settings.", OUTPUT_ERROR) + self.katrain.log(i18n._('Kata model not found').format(model), OUTPUT_ERROR) return # don't start elif not os.path.isfile(cfg): - self.katrain.log(f"KataGo config file {cfg} does not exist, check general settings.", OUTPUT_ERROR) + self.katrain.log(i18n._('Kata config not found').format(config=cfg), OUTPUT_ERROR) return # don't start self.command = f'"{exe}" analysis -model "{model}" -config "{cfg}" -analysis-threads {config["threads"]}' self.start() @@ -88,14 +85,10 @@ class KataGoEngine: self.command, stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE, shell=True ) except (FileNotFoundError, PermissionError, OSError) as e: - if not self.config["katago"].strip(): - self.katrain.log( - i18n._("Starting default Kata failed").format(command=self.command, error=e), OUTPUT_ERROR, - ) - else: - self.katrain.log( - i18n._("Starting Kata failed").format(command=self.command, error=e), OUTPUT_ERROR, - ) + self.katrain.log( + i18n._("Starting Kata failed").format(command=self.command, error=e), OUTPUT_ERROR, + ) + return # don't start self.analysis_thread = threading.Thread(target=self._analysis_read_thread, daemon=True).start() self.stderr_thread = threading.Thread(target=self._read_stderr_thread, daemon=True).start() diff --git a/katrain/core/game.py b/katrain/core/game.py index 536d918..55b877d 100644 --- a/katrain/core/game.py +++ b/katrain/core/game.py @@ -320,7 +320,7 @@ class Game: engine = self.engines[cn.next_player] if mode == "extra": visits = cn.analysis_visits_requested + engine.config["max_visits"] - self.katrain.controls.set_status(f"Performing additional analysis to {visits} visits") + self.katrain.controls.set_status(i18n._('extra analysis').format(visits=visits)) cn.analyze(engine, visits=visits, priority=-1_000, time_limit=False) return elif mode == "sweep": @@ -348,7 +348,7 @@ class Game: if (x, y) not in stones ] visits = engine.config["fast_visits"] - self.katrain.controls.set_status(f"Refining analysis of entire board to {visits} visits") + self.katrain.controls.set_status(i18n._('sweep analysis').format(visits=visits)) priority = -1_000_000_000 else: # mode=='equalize': if not cn.analysis_ready: @@ -357,7 +357,7 @@ class Game: analyze_moves = [Move.from_gtp(gtp, player=cn.next_player) for gtp, _ in cn.analysis["moves"].items()] visits = max(d["visits"] for d in cn.analysis["moves"].values()) - self.katrain.controls.set_status(f"Equalizing analysis of candidate moves to {visits} visits") + self.katrain.controls.set_status(i18n._('equalizing analysis').format(visits=visits)) priority = -1_000 for move in analyze_moves: cn.analyze( diff --git a/katrain/i18n/locales/de/LC_MESSAGES/katrain.mo b/katrain/i18n/locales/de/LC_MESSAGES/katrain.mo index ce4c251d3081bf478eede35404bdb90e06a54960..043f3b63891112a30262ccb26ae24ea38d7e66c1 100644 GIT binary patch delta 3316 zcmajg4QN$m9LMozZoX{Ot*LXCnn#_>mpNy?hZ?hqns2kDW+-{)J=24C_vpQM%Q@v@ z5DUXZRI-%JEYhqLmj;<)1g2$?ppvE{m}aIBW@#4H_jm7;qZf3XozL?;=Q;o9|Gb>- z@XV{T6KC6JtTX&<=C>=qg)LPxrZ}tFJcsFn@4YfXr-T+F@7hg#EBBmSF}?#e94m)!)baa4B}gmrw(~gX*`}){mkl za1Jx^8mj;An9lenk5MR_d{l=XNKU3dY9_-_fydbPDX4yx)+*HdVN}1xsEIV%=j)Km zY~q$o5Y>M#wr70vseNz?_2T!|8>ppgNuy?*kD5szRKJI~X~`#`5}t|bA3`n@=cfM8 zq6S`zin9gPZx1H);GlhQ9QDE_RNz~vz}a+CzfRm#?~UYUN>MWzjcsrua+$}tX#f|s zf{Rf7>QP(!9BPX;=CJ;1*hPZ|JZwFMTH+s2fqq7EF)gWR1|3lKB3mDVTxL8sP2fpX zf<7v49cr9L?1Hai2mCOX^(VIZk_LGOmFX4KOmCuQmQEA}YRgT5x}gry5LBRvsIOx- za+x}7BkKM2*3GEH{5H129SI5wxCa@_e1XYCPy<}C?P*L)GtWbd&k5LJKg$i^MHQ;5`mR+~? zKT+{A*&p@GM@_H@6=zhko&BFgfxc!IY6}9}A%RNZMbu0;-~!x<+On=R-iw2AK2E`D zxCe(~D@N1vQK*EUz#jNC7UOapr0@Sd3WM<+YAHJsUG*Xyh)-cRT!C~kTTy$rA0Nd} za4hB&7;_P)<0CkN6Uig96lpSRupe&66?g&@eJQx4c>rI)bezoJRedHExDvyt(|QXv zlQbS`WwNXVs4Xi*P2fS)(wAE+P+Kqy6{iOEe!L6&|2c)_G=y*p|A7wSE6Y327X4~_NQi=3N z#VJit&>oFOE#VCNpbC{~fLikPs6;j+i)G$LC3+ZjMlPbxMklgl5lk_%y`};g+xV#W zR-sm8JC4W1M-&E8$Y8XQI1E)^h#X||I_h)z0F~fD)aP~#HNaWafH$xdyKta5CT23K zJ`a`XdUS9%w#E~fsqgF3kB+rd~v1})jkci#|uy^vkE8T zmXfB=GW(`gPIBX}GdGA-`}3Sg5O=DB+DOPGTfN2J9h)3K;w*II^HaTRf{+((?!V?* zR&`Tt_O|q%-lAGJ>@V>n^BgzghU;T~%y^6AQTKMWsax)a7CEtJJa1uhTUz_;=?UdA zKKMJoYCr5b4XI?8IibLdCCBp?`>}YjvoP$rG0&Mh-Ba-6q0W!_@z^parK#|u)j_l-xwoN^ yANK=x`1T(D&l^oUiiT$lD$_Ygo(LAik9tm3;6_6%h64R-jDZ@w=|aD6)BXZ@RqJX1 delta 2673 zcmYM#eN5F=9LMnk+<1NxMG;MZ6pB1)EVZ1=KYU`g6r&b6`%tXuooBO5XR&0sGRPh0?uM8hR21LDg?UwSNHv3VeVE1+GRlY_R3`kXYs;)J)D`G@e7X>qZSQfLg(8sCG9{TR4T< zDm7MlF>1Vg>y|{;UrSd+g#ztI`j`q-rf=ACqb;98wfhP+gY&2ahf#sYQ3FlmG7P6N zk7flbv3%4-H=!o7J&E;K$K6z@;{nv+@#8{lM4kFpRJ$JQAS%Gm)(O-hoyJJKkBavX za+yRr&nJS4pO32Fs`b}Qi%~1#wN|4tu1C%AC~}z(xvAY3sFga0dVd}jXAqUhFQ^1> zqPAcP)$b8088QGq{2C34o5 zFQD3wpb{QO^}7=?VCHyGrs4EbfH>4Z%Tar^+LjAYfi|Ps6{2QVf?8Uitv`ZX=6!Bj z;xnlCU8sTkQ4<`-N`3zmJZP`>u;EM5iw7})MR*4{;Is77dmk#{W0-*_F%N@SfH(1J zOd&hwW_F^=CAbccM+)kwGw_4wF2*0PhvoO(#nG}?L;kcpLGbe)IXpC{ecQ_53k@u^x(JY z96Zcp^y@gMEJ$pO-`{IIe#dkdQSMk_%w@`bD~)-P@-c_?ze~k_(k|8eD@%P#w5{okA^n%Bs+S%TSAwg-UcA>MXn#;DPNn zA0SDacGM5f5OSGY+|)5sKfRaa^B20s1+GNCG?_G?d6h! z$M5qvWfyzPy^gom@wk0Hr@>Fp3ZM6ov$xFcajHGu8Yj!^E2nB*rMu2uUY+IasPNU+ gd8?}YzH+bcV1=*2AACN2CL!3iW}_<@n|~|pKRdG|{Qv*} diff --git a/katrain/i18n/locales/de/LC_MESSAGES/katrain.po b/katrain/i18n/locales/de/LC_MESSAGES/katrain.po index 5e6fa27..01a6411 100644 --- a/katrain/i18n/locales/de/LC_MESSAGES/katrain.po +++ b/katrain/i18n/locales/de/LC_MESSAGES/katrain.po @@ -443,13 +443,6 @@ msgstr "" msgid "Failed to load SGF" msgstr "SGF konnte nicht geladen werden. Parse Error: {error}" -msgid "Starting default Kata failed" -msgstr "" -"Der Start von KataGo mit Befehl '{command}' ist fehlgeschlagen mit Fehler " -"{error}.Wenn unter MacOS, konsultiere das Handbuch wie brew verwendet werden" -" soll, um KataGo zu installieren und füge es dann zu deinem Pfad oder " -"'engine/katago' Einstellungenhinzu." - msgid "Starting Kata failed" msgstr "" "Der Start von KataGo mit Befehl '{command}' ist fehlgeschlagen mit Fehler " @@ -573,3 +566,36 @@ msgstr "Kalibrierter Rang" #. TODO msgid "tab:info-details" msgstr "Details" + +#. TODO +msgid "sweep analysis" +msgstr "Analyzing entire board using {visits} visits/move" + +#. TODO +msgid "Kata exe not found" +msgstr "KataGo binary {exe} does not exist, please check general settings." + +#. TODO +msgid "Kata config not found" +msgstr "" +"KataGo config file {config} does not exist, please check general settings." + +#. TODO +msgid "Kata exe not found in path" +msgstr "" +"KataGo binary `{exe}` not found in your PATH, check your environment " +"variables or use the full path in general settings instead. Wenn unter " +"MacOS, konsultiere das Handbuch wie brew verwendet werden soll, um KataGo zu" +" installieren." + +#. TODO +msgid "extra analysis" +msgstr "Performing additional analysis to {visits} visits" + +#. TODO +msgid "Kata model not found" +msgstr "KataGo model {model} does not exist, please check general settings." + +#. TODO +msgid "equalizing analysis" +msgstr "Equalizing analysis of candidate moves to {visits} visits" diff --git a/katrain/i18n/locales/en/LC_MESSAGES/katrain.mo b/katrain/i18n/locales/en/LC_MESSAGES/katrain.mo index be61dcfcfd909bab1a570d5debd4c7e9ae8f2a20..1b817fdea36cd52d235db1ad1f39a982f963fb94 100644 GIT binary patch delta 3341 zcmajgeQXp(7{~D`1#AmaXf1D2SfISWCy2bNi%gs|oIV8d}+?yjY!kRyon z4+5wa5d{G;0gO?kN(?BGM0rURHIX1yj0u4#q995jf-m3S-2f2{kmWu*v$M}U^UU0J z&-8UOli%evUT^rfjsG3^U(`e`WBTUYvK6=eXt%|Ot)R8N|JM35awW}Qd@4Y8Gh^<>4%ixdV{;l zue+k&?}Hlm0P4MB+dmlk#Ber8!B|H@M3tNmma5fIm_kR^P!*MSvvtRW9bujwEKx~Jzkh#rb)ZVSe zNAX!4jo;v5?AXSbF?bdguQyo|(hS4yI0dV)5|f>{xxkGAxQdZaW8EK7l83&c< zn6A`cnM|ic8P7&?F$+*J80t@zruPoWOmS=)aFDXzJWszgCi z`diWiRk;C4ZuDRTD)1!xpcJ(=A=E@GQ6*l3Y_r*fO0*t(;W1>F%vIDL=XFcBhap{N zx@}jXR{lIbh{@Nu>B&t44#P~|9)zP%hb=&5`ZTJP>rfThj9Tdq)KBXBsKfddDzOZX zxK4iuRC@#}!5OFpm8VUbYHk|Su>zZ7Evh1GQJHQF^q22=tcpmEvth13iB^1ezc}`j2#zGWG!Ec*)fD)>o*mGXS EKa{cV%K!iX delta 2764 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 diff --git a/katrain/i18n/locales/es/LC_MESSAGES/katrain.po b/katrain/i18n/locales/es/LC_MESSAGES/katrain.po index e5e5142..936d3b6 100644 --- a/katrain/i18n/locales/es/LC_MESSAGES/katrain.po +++ b/katrain/i18n/locales/es/LC_MESSAGES/katrain.po @@ -441,12 +441,6 @@ msgstr "" msgid "Failed to load SGF" msgstr "Error al cargar SGF. Error de parseo: {error}" -msgid "Starting default Kata failed" -msgstr "" -"Al empezar KataGo con el comando '{command}' falla con error {error}. Si " -"estas en MacOS, ve el manual de como usar homebrew para instalar KataGo " -"primero, y ponerlo en tu ruta o en la configuración 'motor/katago'." - msgid "Starting Kata failed" msgstr "" "Empezando KataGo con el comando '{command}' fallo con error {error}. " @@ -559,20 +553,52 @@ msgstr "" "al centro. Para estrategia cuando la fase 'endgame' del tablero ha llegado." #. TODO -msgid "tab:info-details" -msgstr "Details" +msgid "aihelp:p:rank" +msgstr "" +"Picks moves at random from a limited selection of moves and plays the best " +"one. Stronger settings select the best move from a larger selection. Since " +"there is no 0 kyu/dan, 3 dan = -2 kyu." #. TODO -msgid "count down sound" -msgstr "Sound on" +msgid "Kata model not found" +msgstr "KataGo model {model} does not exist, please check general settings." + +#. TODO +msgid "equalizing analysis" +msgstr "Equalizing analysis of candidate moves to {visits} visits" + +#. TODO +msgid "Kata exe not found in path" +msgstr "" +"KataGo binary `{exe}` not found in your PATH, check your environment " +"variables or use the full path in general settings instead. Si estas en " +"MacOS, ve el manual de como usar homebrew para instalar KataGo primero" #. TODO msgid "ai:p:rank" msgstr "Calibrated Rank" #. TODO -msgid "aihelp:p:rank" +msgid "tab:info-details" +msgstr "Details" + +#. TODO +msgid "Kata exe not found" +msgstr "KataGo binary {exe} does not exist, check general settings." + +#. TODO +msgid "sweep analysis" +msgstr "Analyzing entire board using {visits} visits/move" + +#. TODO +msgid "count down sound" +msgstr "Sound on" + +#. TODO +msgid "Kata config not found" msgstr "" -"Picks moves at random from a limited selection of moves and plays the best " -"one. Stronger settings select the best move from a larger selection. Since " -"there is no 0 kyu/dan, 3 dan = -2 kyu." +"KataGo config file {config} does not exist, please check general settings." + +#. TODO +msgid "extra analysis" +msgstr "Performing additional analysis to {visits} visits" diff --git a/katrain/i18n/locales/fr/LC_MESSAGES/katrain.mo b/katrain/i18n/locales/fr/LC_MESSAGES/katrain.mo index 2dce86a7498c538ec136900ba9c7b2c3acfae33d..62e070a8288b16915cf255839d20a13cf79e993d 100644 GIT binary patch delta 3330 zcmaLYd2AGA7{~Fql%u7U+Hwd&VdN^%awR|j1wn!3II80r>m}6EHKS59Zi|{pFI2nX+_dBqPzldOwGSYdiE~r? zWvGEyq2g>twcCvez4*euIEw1ffC~ICDsUE!)UF*jm3tt$nE|MojKB<>h+O7TZW_Qv zt>6MwyDHSyE=O(A`c|yJD&C_)1Ab{ej#}bBQGqTZxtL}YG=tWta!*?xgj{AkH%(v$ zDnTC=w-Pl@4R*v0*c$ibu>Qn0hpCYDs7%kIW_lSlvvi^;P&PLO%10fdL8w3zQD4VX z$Ym<6HK_h;tea4W`7LaYI}$u7;BI6ra|n}(pawW=>(iK)W}b^$neNtpsDy{2W;_<@ zVji*YOHeBnvhNq6;?$rLNvz{R8E!=F$u`sgAEN>twB=){0e(RZcpj6V5ptPaqH3?Z zq52o1+6_ka8*S^SpyC!ISHk$VVlk@2OQ?+3qB?H1?n151epJHWq5>U54fqFY%l@(D zYp8gc?2p>DMNP0LD$WDRdiH-Z541J2P+JhO4HBpXUPjIIb)1Jgk;`_JxSf|-U&u!@^ja0_Z8-(yRC|Mfg5U_+|HoI}m{GHS_MFip1EbVMaK5>;Q0TB+wz z3BHKh(^}NlyouVDN5q|IE^KnWys zv%;2FTGyZgZ$x&*>_#Pc3i%dX z0+<1;3bY(h_f=-^wBpHb+;vJL;h;aq2}j~iFj5f?m}ITD(7R)mXe8ZYylU_~gDTt&sWIqM86V{y+7)IQn1cdv5Y7!rtE4z1#H|Q|8g!37md*ty^09*|wPD)$Q)}clyB5Iu*(D!7BMt Y&nbzx(Eux?;5UuiUkTN1D+;Ck51u&lh5!Hn delta 2656 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 Z;yL+YHxi&q3Vz4DJ(WTPe2%pDr%*O~U zwa;s;?;w}kbZ}P(M{ouX;%xj1r{mA4IsJy}@CM$G{$aj)3~GXjs5z(OEPN8Rp!FDl zmB?kPxhbw5LmA)fqM#WcKn?K0y$8nhp#lf3r;*E?<)*lwP!pa+#ob0tIDng;M0oZ{`Z8x%ba~u^vWS^fy#a}@Ud<)f25HBmv zfoe}ewWp)vpFy`eE})=}%TR%@*?I%gm)VP2$sr8J9#mXEYJe|M8T=jn zg!A&fiJpQ_#%Tvf)XXhfVkvZpCP#GgQX}JdNsj3ght(K8SJ5W(BUq zOsqx+p2DSg0hePG2SaBgi(8Do|BV#1;@6R6n0lm7vk%j;8=LV8YQU`zkWOsHct5s= z6RKahH|O{UY{Zk)yHJO5GqX^J%TO736_vqybhAj)MnNk&Y9Aa!1)f1JbB>!PcmuU1 zcd!qG`Nnea82*9b{N8FpexxHC7sT@GNqbcse-EfHb^78O;#ocQn)&44OTf?qR)e1| z^nG?&4;k|?^%syunzzx3owoi3DpRAV1xzA+n!Bh8#o+t7}xe}qa=kM)FYAF=fxP`?XTQ5~8@-w#eW>W@wmPQ%rx!?zZ-rTM5IrgCJh zW~bXWcu;#if(i^_`8rgwNEXdwsMEgzQ?VFzC|gk-eTSOJZPeBUE%Mc8S?8lB{0OFC zCUPE)yNbdx3eBj2PFcrMEAZo!kin=!7Gdkr$aypl2F|b5UoY2-o2@)cZrI0Y_2qT}2Ii z6B*F_jePOuKGKk`?>~lu0R~4>hn0m8lwQ zEvo-I48kT`Z^6)f8V;y{T{r`KkuS`gz&$vMT6yVW-wJ9`&l^$kU8szCPzyMN<#=ha zCnb(IdVj*xnd0;|9iD1ya85Nhdk+qJ57s$fDXiG+-M8E6?cY1mTRYX-KGD}ZxxL+) rSmY`$aTP7uQdm(~T$bqc)*beCw*D{DbKQ{};rS$~H_+3zWW?`ZDrz;^ diff --git a/katrain/i18n/locales/ko/LC_MESSAGES/katrain.po b/katrain/i18n/locales/ko/LC_MESSAGES/katrain.po index beb548f..3d8e0bf 100644 --- a/katrain/i18n/locales/ko/LC_MESSAGES/katrain.po +++ b/katrain/i18n/locales/ko/LC_MESSAGES/katrain.po @@ -435,11 +435,21 @@ msgstr "" msgid "Failed to load SGF" msgstr "SGF 파일을 불러올 수 없습니다. Parse Error: {error}" -msgid "Starting default Kata failed" +#. TODO +msgid "Kata config not found" msgstr "" -"'{command}'로 KataGo를 시작하던 중 {error} 오류가 발생했습니다. MacOS를 사용하고 계시다면, 어떻게 brew를 " -"이용해 KataGo를 설치하는지 설명서에서 확인하시고, 실행 파일을 path에 추가하거나 'engine/katago' 설정에 " -"추가하십시오." +"KataGo config file {config} does not exist, please check general settings." + +#. TODO +msgid "Kata model not found" +msgstr "KataGo Model {model} does not exist, please check general settings." + +#. TODO +msgid "Kata exe not found in path" +msgstr "" +"KataGo binary `{exe}` not found in your PATH, check your environment " +"variables or use the full path in general settings instead. MacOS를 사용하고 " +"계시다면, 어떻게 brew를 이용해 KataGo를 설치하는지 설명서에서 확인하세요." msgid "Starting Kata failed" msgstr "" @@ -553,3 +563,19 @@ msgstr "Calibrated Rank" #. TODO msgid "tab:info-details" msgstr "Details" + +#. TODO +msgid "sweep analysis" +msgstr "Analyzing entire board using {visits} visits/move" + +#. TODO +msgid "Kata exe not found" +msgstr "KataGo binary {exe} does not exist, check general settings." + +#. TODO +msgid "equalizing analysis" +msgstr "Equalizing analysis of candidate moves to {visits} visits" + +#. TODO +msgid "extra analysis" +msgstr "Performing additional analysis to {visits} visits"