From 842fe1035323c5962f76ce10c595ce0d90c6bf04 Mon Sep 17 00:00:00 2001 From: Shunsuke Shibayama Date: Thu, 18 Aug 2022 16:31:35 +0900 Subject: [PATCH] Add language target: simplified/traditional chinese Ready for multilingualization. See /doc/EN/dev_guide/i18n_messages.md. --- Cargo.toml | 10 + assets/screenshot_i18n_messages.png | Bin 0 -> 213423 bytes compiler/erg_common/Cargo.toml | 2 + compiler/erg_common/deserialize.rs | 23 ++- compiler/erg_common/error.rs | 14 +- compiler/erg_common/macros.rs | 14 +- compiler/erg_common/serialize.rs | 14 +- compiler/erg_common/value.rs | 4 +- compiler/erg_compiler/Cargo.toml | 2 + compiler/erg_compiler/error.rs | 297 ++++++++++++++++++---------- compiler/erg_compiler/lower.rs | 8 +- compiler/erg_parser/Cargo.toml | 2 + compiler/erg_parser/error.rs | 25 ++- compiler/erg_parser/lex.rs | 63 ++++-- compiler/erg_parser/parse.rs | 47 +++-- doc/EN/dev_guide/i18n_messages.md | 59 ++++++ doc/JA/dev_guide/i18n_messages.md | 58 ++++++ 17 files changed, 459 insertions(+), 183 deletions(-) create mode 100644 assets/screenshot_i18n_messages.png create mode 100644 doc/EN/dev_guide/i18n_messages.md create mode 100644 doc/JA/dev_guide/i18n_messages.md diff --git a/Cargo.toml b/Cargo.toml index 82bd96bb..ea085632 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -29,6 +29,16 @@ japanese = [ "erg_parser/japanese", "erg_compiler/japanese", ] +simplified_chinese = [ + "erg_common/simplified_chinese", + "erg_parser/simplified_chinese", + "erg_compiler/simplified_chinese", +] +traditional_chinese = [ + "erg_common/traditional_chinese", + "erg_parser/traditional_chinese", + "erg_compiler/traditional_chinese", +] [dependencies] erg_common = { version = "0.2.5", path = "./compiler/erg_common" } diff --git a/assets/screenshot_i18n_messages.png b/assets/screenshot_i18n_messages.png new file mode 100644 index 0000000000000000000000000000000000000000..1936492b3383f940c87f59bd504f198aced8631f GIT binary patch literal 213423 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 z z*Ue!`IAq@A{Jk%VQ8&`Pl~MvT<5BK&`Ro_ugLxI-+YgNWISBXT(f;(kLd$(Q{LXfB z3)C@F(iaoC{zr4MD3kvc@PjgYqVq3R@uKY0Z{85bRnyf^hHa~0L8f<6TLzpx`jtZk z^NYa#71Hp`J$hK24KNha^I!Pi}q^cloQnY_yQ zzN&aVW*WNyfO)R?a36;8u2Q)0Kz6}98+}HX8lhseWYl2N-XlD?@yGK1pFU3%;*1CT z@2?G5MPqGp&oE%NooPOrC9@ty3R=_M>#up!yZ`AZ@8fnp>VgW9q(-WwuLGjCG!Wnt zr>R!9A1cLHLamW^)_SV^NsA@&a(;m)q(mpZf-l*d+_vX^}dI)0n9 z`le9G_73%N;{VDo3U2WJ?@O}iQ|kpclSR;7PsQf(qr!CWwd!qov&P>8$I!t6N>3Ab z_MMQVN~|2LfOE)@PE-gsE6w7|t6;&bFU-_&lP`9w)MXS^IIo$0_nx!xQR96jVA4LH}WPLrfaIWHNzO?@$aq}EwFK|dhp$3 zqYE$4PmMkAbRAK3n2W#N>)~!Z%78I|1U`r+BTU_7?ZQd*S zjhjKfBU#Qo{Ua%WJo87#Ie8{HljXJ(WBTjBHxU6hJnhE^z5PG94QE}mKWV6x^2}nq zfOg>H=z$RYbI!-rT;shzf^R$l^ffC82E@y3;R4y*Zz?!S&0VhCh+wfMI(4Y=i1|~g zP>g2LrW($XtW&KL0o(D0-!+5dZ~wX?ppc(jE|PK$f)FJtLp8lO0Tv9+5J;!zh7@UD z@Vlw|HTQ`-F~Uv$1rV@5~I_MH)SE$A)CVCS!g@uPYRQYrXw zWvQoKk2UP>ZEl=FWK>h8gvX^Yi8fjb(z1y4A*nvXI!fQw9P2SB-(6O zr4@HAbw#V4>wS`lOngY*eOn8G3xtSK&t+j>uE`N%7(=%2+*Z-Nl#0FYq42#;;`4WV z!?Nb%t&yLxj*Yr|qr)$21Dafh51kZ9xU9~^Wq;uNDr7=*oAGguO&&6BNSJ{CmZATz z{M%f;JdEL%?l8O(cWnTkx#sHXfdh2AEGB_;ryOo8a5cLQbXX14wW;W#=ihk4gSpq0 z^Q;w837Lmdp&=S6fAUj*)%en;CbxiGFthW>kg)ntZNRfd7N+3^e$O$3v#*6EGv1=` zR3xWqIHYwL!SGfWk~)OzG|B>dR!E(6T|waYs_NT_W`qtFVHMF@Ga3XbHFFFyN~X^6 zUmoNJp=oyR^mK>WkugH=PEa1;x;jU?HJx@&wlr%LjJ?n;H@W-h7Gg-jc@Kc21Me~9 z3QZf46K?@~2ZAoT1--y}vTp#xEPNjh@Hba}MCjHy7Xj zl7O1Y2XOB}LEyzEJ!oxQu^s9y3%F<*QqXt5G?(C^=E>XLh!DT6f14VTsqhc%{LVZ3 zN9oTCHJ#T!clN?Q=;1ndX8=2O<*piv+K`O*5%h~GmZsrmdt9?H-xfc{LTbH44av)& zGK)uXq)tCVGh|#bl|i-EGCC68AeU2u+MRU2hbT#g z^S+avZRa7C61pi>E0O#D{zdMm*bI_jeIfZ-p*Rb~2n@PLKF=YIkKU2BQyuT%Y1^6S zZJyK`bphEcFDWkqGnh~J>QZijYEp?%&>}Do@E^#PQPKr?n&MqX1XTLG5VTs=aU&+; zPE}5zAzRpUA1W(zHn95v#=1$+asY?ie-gw2rYJ-I=$t6GNpj0(NcRmu=shTPxrGtq zqF3De3QB=8LjQUx6tT`=?2Bhl#|yTWR1NxUGBW@FdvLJ>O*~R{6tHag_?vgFOQL~o z`$j*vw)<$OF(Ird_}rHaCJy;Av9f~);QrCkTN2F4B?uX^$q?RHQoQ#SNgy-ahM9Z}R59^Q+wi>NT5@s9XYc7h zb-PB0!H7i4Vu=oBz^DlN1{}C(1`NkLg*9tHTTJgzl zodv0#*VB2p)9G0;>V3Y3@R4T?_={)UM!d6Q1G0P%FaPw*Gg!ubB#Mm4B5jL|vu?tw zwO3s+=CurClIFe?QO=*MQD{bB+~b(*F6j2CyV%G#`u&&Pc%QRjd4eBDWAC>5&)yLq zi-DlIN&5Ii@|Ny1FS*%v4-@urU+mL-(D_tUOGG^ToSi-1`HPEngPiOEb8KO)C>6e< z(<4=TL!i@o=ILbSOz(fS?z)=fy*_2M#W=Pc@I?phlf^kI)vyAP|_y_sI~Xc)Nmv??U{ntJbS3$QTW*Zf1t>vVrQ z%kX(6tfOeb0Z*;?F1n6CcHt#q8TxF@8(GwPp(-T&tYsCXy;~C3L+`$fNB&_L{WVpQ zy(wY5M-fA_&n zAXZ9MSrO`;3zwiHza(ey{?I`*CFhdb$xElhzL_Zu=LjQC!f_Ygc8?GD=bpD^X`-J> z?(ayk$yDjRV`ZEDRDiLpc`p9B^I=e3mfUNjvvCg->r$eV5yjHV(q>*6I`=8wvU4sQgbmE{KYeZIXO&D1by2afa&yJ0G`#%|b=4RATIzTSzc z!;y%GgBQ$=%%5ge%%Zd~{GUfg?o?sR|6_lhF6{aI#w0i}MQ3E+in=P-+j7DS^=b0F zQ5eKurFh4eg&r}y6RCfXIw`rlO&9;$9TmdQJCTRGCnMxI_YE$m61 zFT4@OSkz&vPd&F#y_e27y9k8-#@+?5~;;W}~8{q$)aOV2MJ&;P@|AyL6Bbw|Jbry-)S-%VlLisIL zu*R3qMv>M zMLj4nw8dLS>|)vVrq&2qVwha}2(3I>)C9Xy(H`;;=u{SXEZk1jlykox$L+h@mXwVE ztNr@%Ctq^N06uhltC7D6T5Oi=QpIRxym-$DS6`hU-n2ye5C-%vIrdQh7j@dB=dTRy zffX0(GK>MH3U{x4A3F}h&FtU55vKz(e#}0BAT0wtB;Dwlwks3iHV+EId({~$DCccA%(RQ0J{ZWenLAoRHUD1)Q139mhCAKHs0O{O-!u_$j$n%;qF zgkk_s`rB<9!CO(2DSJ7^>VaQr0F<2@tQ zH(SR!&pmw`VN$5fcM_pSZ^}O6`;JVZ^ztub+R9_ytLI?#HR-4wl&OG&jitB7{E0|G zK7n1FRAVLq##H>=B!|ZuyR4}R*^cVQ@!u2nCW^%JDyn22Mq?DnZ+#04^jTot#D%Zq zx`|h@+9yety%6rhVsUpajsMk16@p;QV`?Bzo8MrXlye4rHUj`sr0?o0CTDr!9D7Z5>@)DPa!T#n z=6}B+ys}1<_0UW%^q1#UN+cG4S~B_*2i4V~S{)BUncTu|H&0mZ3Jb-(DvCxt zHGeb^c7`40Cv?OoYyaAbcc8x2bJxS{Sc46WL~pO>pEK$&mT7^9oRH-%dl$K`G;B}B z_=$(A#*bFSoCpRRi@1OatBu}??FTnFSiV0#p$-$?ar^wcnuxBf2eB9NIo5sBV;P5@ z*e0F`X#H?Axe{Tt@9BzMC_{Gg@g8v^^&)ZFWs5#y_YcmT8x#REDYhyP`8~U(GXOHZ z3_eVknoF36cSRtZf4t-TS3L>LC>|cwdLM>A0 z|L7ZK#VLKlF-Xsbv$RuL{guSyd(vO9JNFNFunUVXNlfoe8SoAB<-BZVgjh&;zpGtF zJ{D_tjq36#4nH`g5OP}DY_n(Lr>urh`&_(Iql7+r!MU-SS}w9SV+pU}#{m4zL6RkY z?B_dcw;y-UD4_Tk&8b&Z7j0Q^pST>M@i?HtuCEI*S{&*+5 zkbM;SICf6abMcQdr4JdHUyFN&&b=?=X&29^-n=(-!jUJ1$)cBP9j857{6ML-$I;S! zpvm=n*`O5XvBrGNI5t}cq?9vu5W8!vF_iIN(|zRd{9`mmN1@H%t#REyK3@9D)r?x- z7c#Zb1FKqjaX^uki_xF zxn^No!&iJY7H3&e$Vxp)&+m4Ob@jfPU0Q;%+mwvOgFIGdC?BRNS;UlXM^WuZ+RV zvk)b6JG@8H3{Za@i zau#Nh2W#F#`0d6LX}4cd_8~2fu{0-pRW?<>0?*D#-a@3Sv95OTZ>Wi##H*B0wY-Y< zbR+Fwqf9VA8N`O96RCmcdsSMhDwiFiql;g=E*GvJJ%kZ}E8F<}05{j$gu&s1W-KMH zMXN(@tE^jOWf5WAeqpdH>iSYNKj&L(vEQ;RWu^6K5{iD$4y^Q$_wLmr$-w9H-GncS z&2XRN7iw9saRUEgd0g2`zx_^Wm<)c>jRX$od#i&TL9sX@;E~999nav|`8La%qotqr zWXFSgTb8AQ_HA@usj2A_2xWzdxpt_E05_5KJ#n0q5qxa7io51eU{AtIJ|tr@f?I@>+_|<&L0|@@SVqNXY){@fv~X&I5^01|t-0%u!FiLpthWtM=NnE1;7? zI6)#x-XG?!!T*#=^4~Z9s-t)*I~Ol68`|tC@Y04>j}+Dg6I)uvTjiqTU8;npx>x0pD}UTwPUSZ#t4bG%jKeJb#`L(_ ziWhU8yqzfekAjmPDUhKnEaxe&s>WPEj7Cx zt8x7yzYeX991WX=#V5I--F8i7N$Sa3-zrw#fOZTWe#rP;jYygt&N^b;V_Ga8wi>+J za3a<37c1W%oRk~79|yDQ!+0Fh`ucGu549mh2N4mqgZK^%{~`@x{sS0A8nq(HNiK0> zP+%A@>D!xV(DH5p6s`bRc22)fl@tMhXnOEf)te9W8B&CbezlsE>EGrjkpW$=2eAE& z+!uacJNqnzjQyy4Qf)U^UPOLP%?^Fa=@T<fJgC+5~kFFBMv; zF1fYrs=h(jvUW7Z&Dg<|BnrH9C(*}m+o=XwD<996pHBh8v~v*uDbP~cUbJK0%)`CY zBO$i?GLWA}9^1XiHJ>p{%6s39SQr&$>nZIha8v*9nlM%(-tgdXg>~@yT`EH6Y4_ON)l#H;>6&J;^ z$Y7X%>DnwWr?}TOVuW*)adWFMkt>twxOry=lWf$(p&fVoY~LdZH5)e(x)& zW7=$^@wMoe<(}(nN6*3gk=fl0MyjOM=sa~W8}5l;LB`}4lfPm~6ALzXsJPBObc;?_M}X^_A!iCW*a2Pafvr!Y3ggsMvEQ`g%iJDCAoY!R@?oREv)uuf3iz<9h;5}-E2pR(tlD6 zjm5hh*1k?V*FGPxK2`3p!{d^RhWK=);~1vc_l9n2Xb4Q+pY&h_~MkXT@(b&m$hX z;qZ*?t$&;qclptwvB{#cBJqa-%SXEm%rPT+S46rf=_XKE+UO{oSN2GX^_G35;qV-{o1=Oh@EU2b?Q(1bNx1svl3M2CV#~n2bp5jK8&Cpz@kR z?~{+__JB8@q4)e`px7SEn+lfEq3JhY7EK>Nc{R8|YUf}ZIEnJcPM|82cW%LSE^@F_ z-=qEp`0P9WMFl%}yUi&tQ_;SfTB)z;*w2mQ*c{1;B<$S%eZFx-ssR=r2M>`MoA2L0E?UjLjlIetLguqK_5)~f^RAiK-r%XPf^4yJ@Mw;uq5cQTOutp z(QsLI<89)v=6g3OnW(@OF<^Td0SDO}3VQx$vlXeYYrHlP2cYabb?;{JNSEVoTq2{X z7#_l&Pqfp8z{_hGNgS2>V$`wG_mg-QYN&PlHc5DENSdq?18)!sTQqfRJeF0DGn6SC zQDg6$fImBe-v%5mUjeA?Sc1q;U93c@S#RxngS@*3(*Q>TM36^srqtv+?|K-z5+g^C8&iG;>5%fndoVf^HZBx2kE=CDmK!NGY3-;(r6( zB79hvta|wtI$MD;Jw$Ue?Vb*DhQn#CDW;;uK>dZouYq7}iSE~Mkm1g1Rq1Z&ft^1E zRcuEEGgvstYPb3qWiPaDT|u!vcf)d8Yu--P)x#Q$zBTCp<8+;4SzoP3;v^QrJHBq* z)WC|Jm*r*q;rd;!ULO2M>LkLHU;(V5qVC@qafT|2iw>^r{~IB+2KVKfxA;hM&p2CC zLhOVjSH1arje{m|t(N2ccq*o@y`NNKkP`j4Udu3av;wc%32fAGyBMjs;>_v`%zuB8Y)s$e|=j^OcJJ*x-S< zaW1ObCi&^gQF!THaMgk5A9D4xRHjWD!KF;LG^`73&f2_bXK(E|>SFC|q0v?*Kcf#$ z8k+FBMeZ|VQF^55X6eim+kd8wvu~fDZ&-L4uCTY-6~gi z)HZ@#PD{F}ONxp_#Pf8zk*0$smIGHVY%HGX(lxP3WT&&1Q?k^59n^rsA6`Y3HaN zRg}G&mV7+jFo$NAj8kaK$8!v0aC%dO@=zapfPw61&mmyP^)lc?%5>=J1Crg-osKa6 zGk*ft8-7|nuo*vzQqr!u}vCIkPa?D14}0CKWB z$7iw@9pGE%e_-c(OXBtTP$Ep|CGfb}+zOhKLD3`J&Mo6KE`tZ-ub=|8Y?nzlr~rx_N(I!ADfn=MoUTVH1WK6 z(fJLZu5HS(>G<0A9cYdAc#eu(Qgj}Y*Wv$|x8rLDTqAPg4Rv>q=Di~IQ&p=-Kdo zO~6Rr$iU9MYLUd%e-f{hVK~LRSL3$11sDLd8SvwNlbTx?wG2g=^m_G=A8 z*i-4fL^({BAAayHt@^zBxUj&nslp`3Ey8G7X}OVZ7R^z{3`?UiMT#t`lyDOBj7LWy zv!*M=9_bXTQ(~iqoXWG4E<)})(Ypm*!j)pYk4K}MDGc{QpNhwtw#J?4d&OA9IRnFa~vL6NxE5Z zhg*2aWWn5{&qds}q_ZXAW+Dg(9nir*Li8tgP?L>$UspBCDmoN-PXm94z6W%-G) zz{u78n|c{%F*PVzQBr%|Zvx5`@;Xmc?qw<@9N@n-QjBSDx|D5<+5g(s)}!x5th=hD7{(+8}jNU-qv4qd?kurrMFf6u=jP#e$Pa~+5tLe zVW0aE#Cm5<+BDe_{Vw8OFzsbaJe^d0A>8v1Ba4imkL^FWdK)4-0g{?=wv&w(kmWa? zKc_+{B_RCA311faAp({dzURC1a%cMq_|H2chgXTMkUZ>50$H?6XBFj}Y^ILM_7`7z zT&GoCU78YQ=L7LE+i8=fe^%W&`J&qzW$__>YwwHTsIFEk6g>uV{L&Fs!CV&QcX7(4oiF3E~|ku!6DeY?&n$<%M$j`S2L}) zzQ`vm@NolWn;x|%WasSpMOqrzAY)aAXf7IgJrPAVmrYT|0785Uh^8X`@0+dy#Swb& z&2c5p{VRltx4C_-*4@NjeC60kP=Q?tCp8}d_3Z*dn#yMr6(M|P^#P3_%yA8L#0PjD z`-#7K*<(#OcOzJgJ43niTbB(l#WZ@eYx}Nv8_RNzF{ zKdb_-tEvXp%zf)rP90C<#IL+{bStgi8uR|ld|5Ly70PlvLRF_xNiq7zr~enqTn3@0 zTvVa+zKaQfkfbfj6S;-V`PJQs6lkxMl$d+v(uG@1pY36INh8EW|KCP|T&O$ulUYP*+qlQ)FH++ucduqgfnEiM!=;o5_+n>E)6#fulSB;xGzS{`jdg}=QYxsIo zuS|?V<}={@R}WU!{W#A#)~URlbG-XMt{ny4ts;cimtL^Su-`0=i$%7j-OznUAI9Kz z!@}I6zcME^^}e^co~W#dsBP_w=*gPwEEIEPxbSFEUm@Oz@)(rlFq3VEFX!1rcuxOt zL4eC;0%L>+(Cyu|LgA-h1j{;+h~9X})Yj^_&K=m-@&~XAr6id0J?I?P8DDAHIItniBK!N82hNb&>^?6zg|l?;os%!-eD zWapLrZJsuvDYt%9O)`f`Rcj*TKPTBcIbN z$%^zDONB3x)O+D+*L5wZEeeF?&W#JIV1k5kht874#`Q#%XUJ%ThMS}gbvpaT$7QD1 z-t0L%aCf4?L$R^-S7?jbo8F)o-&FRueMwZsbO5@pFwYOB84u@VQ{HduFfQa9z%Qsb z>yr~nRmnNX^QW5$>Dk|YXwD9`I6%XPr- z+4a3%Us2iSPGwd4U4s96=Du({NFX!T`q;?)K?tf%o%5BbmJl(uBKX{868xlr-s$=* z^UNLY;mNVn<)Nw#|J7hZ=3a^T%BnHNggura-sj0%dZGveoHVVNSOW5>b#w=L2zzER zo2W}*l%iObALC7TX%rFfHZ$@-<~la-k1IyTKboxITle~U?< zTZ7(bD;);ku`@02f_`lj+trG0_8vX{aKz$mzTII-SB9nCi+?L>}CWla;ZLQdacNvq853@vrTHX0I-_bp$5?Q_x2YYy#~+y#;n@G4tJlU?_CTdS}#5QxGy&M6^-kC?m^>y&}HiW zVSF9oSm;tF#NmV9Nr?Y94l8IMf$>*Iak^JaV&FFHY+xh&X&x6l9^RZE0nV4kYaAV$ zB8Co5Y8JMQ|rU~W6^P>4pSck z0{WBiR`df>iu)3vZD8xiUIVGo@Pou<~4>^w<8pE7zV;kFkyFQ=q@AkXhet*IH^}Ox9*X#X!J@1dl zLvGIEDba4dsX`dlF`JPhH0bz77OCN~y!5=z*EcMd*73U#{59iNHCsWR_ zb@O%&YO;FVhtlp*KAw3X^a7k@%+~Sr~LoQE)Bt)&%#qlYC6#35f!uPff>VqYjQ%W5I z=<0Kmo80!y=lpc|X;Va7DC(pW$@$aS504&bCJcX7$k5Sm0lLO|! z476Iu7N8JVP*kc_K7VsyP)S*EC#lRFII-K)YBY?=*;Eev_yYlj(Qh}o24)B919P!_h&iX{$yJ!-7+ub+i z{EaiOlB8RGr`Pc9^CGmlZlmqdh1UWojosE-ooubhqKaVO4mVNCU+}+3npOZW;-`q= zX~IhNEKM@~QbhqIHIT7ys0^%xr#p}%PtM%@Ot6ybvh;N8+pqAk@#~fr;#PXE51Gkx zviy!We&shnmyEwgN_~|9ZBR6x97g_@1((?idp#P+eyZFJFG`ijGTCjb$iOuaI)s9< z%gf;NDb)%&g%~9Kj4c)YRJQ1AuR^w%SdUl zgt6eioH!l+eYrEHH%R|cdU0>wL-A>%sT~x1szbnCWGi0o3HdP~I z2n0VF2^e9DZM;_ZT|;)L;_KQF-(0@Plz3t6IG84uMU}48Kl|pvhyD0H)Hx+T zHc%nhCB0dI)bhHq_7n@p@KA;3&1U|_g=!|PWv&nAZnFHTW*7PwF|acGtR1qTR%7fPA^b*N2N3^a5!aqGk& z*zK8*BXSS)i{UzTpWm7+K$-BovK;MSmi&Bt`C#_2)6@=preh%6K#6>d@s`KYaW26= zTK4yjmGWKa49Ykk^Bg@|ApiS=eEC+c>`-7aHe5H*s`R=i!1Y4V@w~JcpH*QMzolkneA;k zBJir(*z%M5Wf{{ktVe0v4kZJz8oWp!QnlsG+ z{rRmsn%ICBYj(u_1$8NgKm(@U#K~=W+)A$snn4GRL=Zeb*+aS!s*W`V8~b#cw>Gx6 zAdh#M4Dg>n@|uGri3K-;QhJXNK)8`(mpN4%andg&-*E3zqX!$xdgg|#VG*?Ex<`G( zt7|^YGp+@aT8CYoV zc1$FrACLhrPCXQ(A*K{EKbHZcG*{FA>7}OZn&ha0pC*bqI;uPVxa`zJ z`gL~mSIi!;lw&i@sw#Akpb$=d3vly{JMz@L1?>O2f>;3X13sEpk;S>C$Te?Y@Df6P zi^!c_VKO$J4a<2=M~Q|v=gl-LnR6G!p--)Yx%~!N?Z*3ukY>V0wazqOE3VRNSP$mp6h&cb`(O@AV$d}NyQ1l9HEvhLBW zKMc;N2xXO6i#V~AmO@nZr^wIG%zTrnlusN{N zjlahO-X1^69|U6V1qxl)YJUUr$&B481xaznpN8?x&B8qaxh)klRP^%c zc^D!ne$00)>-Rg(0p!KP;9v4G$PBZEzLKDcO@g)csfS3F{xnvU-oN6t_2vztI^t>X z9lNn#5BCv#wmeN^OTL6ZbqZc-582lvh4MRkEe_Nc-2iu1FjB*zpjrElB+!xZTjS?n zYY;$cK?*NW;)Z7_A2+})r)#CVDJt#Rnc@FD4OjR2oVaCFuh6fc%HaL(=ZBM*S8*%z3CeSTBFM&qZ%^@88f>{Dn zhLp!%RlwnY9cGqw4u7M!QN*9*Jz-&BC&&ly6Aa8$?wP>*U#B6&ggW@PS&mf+S=mQhE$p~l8((noy8n9hyR$#TF zPrPZ=5yC_~_)#K3OnqtQNgtoLbMy^CU5VcSi&&?=xEo`)(%kuNAsI0WJF4sh-2|qtlv>1^gfX$WK z*ic?&u_QNapMG!n{c}V>=OKe=TMvPyl{`!BkMIS2PMKAqLiFK?NB%cLq?)>#7Jjqx zGTFf&-LRXHj^p6SIO6E|2~W<;u7<6I5rg>m9AMY;mE<%9>By$)5yA--Aot7Wh2Q;= zTKmfe7n(inh!(Ix^XT|Mm*bSXuVxrb{S*1NMakY3bmMGoGUHcvOYbj~sQC#n6XNxnUZ@w_Ez(>3J7S7ATqV&Ey?{;CxpIDmTX zcK(NP!J)oHs4eNeGWU@Q(%{hivIK|GjQO~JzO>nQqrPah#ohB_$g}z+V2YnQ7vi=c zWY38#1r@Mqs^|6Bp;4O}>)~7MYs%`te zPyS2NvjA3jePD}$$b?^b7;&?f($n4yPF;A`d0B*!zV)I$Yj2rkM6jnmHt~O+JS(#o zta<_40}P$+W|5z`87CO_tt`j%{+Sv8k=yPSuw{^8^^9;K&L}f6&>um&`NJ{K>KPf99tfO;);~HRkmGR}WFLnUl0X!iN5ge|;22*gMZtKxz$m2htuw zy*@cM_Sze&VUc=532zB!O4B~T=erIVsxWRGXtbnqV5&3 zyNq-FKlO&lq#+gwMX(EfV5>~Y3xuZ;9I|I1`L7XHwT=!VcxiYX@lI#z|=Pws?q-|;-FrI6_&0~#ZWHnzQ`bc^8X|W#Zf*gp2wTMqgbXs!y`TA+57iD z`%E4}n{hgkc@d*}7Qu%Exnx=wWsNK&jnjM8>raVRNtUGo0sc-5hO1)3JQAto^&dvD zwyV}LbyK&hLl+5!pnccrag`Vm#_-79x;ix=^%)%bk)*BqGY>BnlsPs%li6_70zu80 zVE`H}B{=@y1=C=wuqTs1@>Jya%s}J77I3SaHu58&_nE@kfkCkV`2ZuI<ZPl~C&A<+^}ZQkTO7nm?9@n<1SslrM>*EfI_oeERHh9IAOD zDX+I7W4kKxtjgFIWTrqP*PCWbH8`}=@DmaL(GuI4Y4NZ}^y0n*d+EMDp7 z?X87b6fFkx>K3cx1Nb+U7cVUswM)om29GSxCCM(?6r>XBEQdflOE))db0| zAK#M&By7zUtF_uqMB{nx0H(&`0~JsKD1A@a0^g)ddQn};8T5Lhby;!mZ^65zcU0Lw z?K$(OMNnSzGyMKQZZlQ6tq&{xJVGOnLdkNPDv)w`9NBd5HqEHlM?@bGZty^begtFAY%9L4JR-A)b zjI}9Br3T3vs#$wpul#Q+UM92Wh*AMqw$8KlVJR$Z

1Scd}hXPz|Lq15?n?rh4Pm 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 z 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 literal 0 HcmV?d00001 diff --git a/compiler/erg_common/Cargo.toml b/compiler/erg_common/Cargo.toml index 418aca0c..45d3dcb1 100644 --- a/compiler/erg_common/Cargo.toml +++ b/compiler/erg_common/Cargo.toml @@ -14,6 +14,8 @@ homepage = "https://erg-lang.github.io/" [features] debug = [] japanese = [] +simplified_chinese = [] +traditional_chinese = [] [dependencies] atty = "0.2.14" diff --git a/compiler/erg_common/deserialize.rs b/compiler/erg_common/deserialize.rs index cb29b67f..e0f8212e 100644 --- a/compiler/erg_common/deserialize.rs +++ b/compiler/erg_common/deserialize.rs @@ -58,8 +58,8 @@ impl DeserializeError { 0, fn_name!(), switch_lang!( - "the loaded .pyc file is broken", - "読み込んだ.pycファイルは破損しています" + "japanese" => "読み込んだ.pycファイルは破損しています", + "english" => "the loaded .pyc file is broken", ), ) } @@ -69,14 +69,14 @@ impl DeserializeError { 0, fn_name!(), switch_lang!( - format!( + "japanese" => format!( + "{}型オブジェクトを予期しましたが、 読み込んだオブジェクトは{}型です", + expect, found + ), + "english" => format!( "expect a {} object, but the deserialized object is {}", expect, found ), - format!( - "{}型オブジェクトを予期しましたが、 読み込んだオブジェクトは{}型です", - expect, found - ) ), ) } @@ -228,8 +228,8 @@ impl Deserializer { 0, fn_name!(), switch_lang!( - format!("cannot deserialize this object: {}", other), - format!("このオブジェクトは復元できません: {}", other) + "japanese" => format!("このオブジェクトは復元できません: {}", other), + "english" => format!("cannot deserialize this object: {}", other), ), )), } @@ -300,7 +300,10 @@ impl Deserializer { return Err(DeserializeError::new( 0, fn_name!(), - switch_lang!("failed to load bytes", "バイト列の読み込みに失敗しました"), + switch_lang!( + "japanese" => "バイト列の読み込みに失敗しました", + "english" => "failed to load bytes", + ), )); } let len = Self::deserialize_u32(v); diff --git a/compiler/erg_common/error.rs b/compiler/erg_common/error.rs index d5cc76bb..af737181 100644 --- a/compiler/erg_common/error.rs +++ b/compiler/erg_common/error.rs @@ -321,10 +321,16 @@ impl ErrorCore { } pub fn bug(errno: usize, loc: Location, fn_name: &str, line: u32) -> Self { - Self::new(errno, CompilerSystemError, loc, switch_lang!( - format!("this is a bug of Erg, please report it to https://github.com/...\ncaused from: {fn_name}:{line}"), - format!("これはErgのバグです、開発者に報告して下さい (https://github.com/...)\n{fn_name}:{line}より発生") - ), None) + Self::new( + errno, + CompilerSystemError, + loc, + switch_lang!( + "japanese" => format!("これはErgのバグです、開発者に報告して下さい (https://github.com/...)\n{fn_name}:{line}より発生"), + "english" => format!("this is a bug of Erg, please report it to https://github.com/...\ncaused from: {fn_name}:{line}"), + ), + None, + ) } } diff --git a/compiler/erg_common/macros.rs b/compiler/erg_common/macros.rs index bb22604b..592e3949 100644 --- a/compiler/erg_common/macros.rs +++ b/compiler/erg_common/macros.rs @@ -58,11 +58,17 @@ macro_rules! impl_display_for_enum_with_variant { /// マクロはパラメータを展開しないので、format!のロスがなくなる #[macro_export] macro_rules! switch_lang { - ($en: expr, $jp: expr $(,)*) => {{ - if cfg!(feature = "japanese") { - $jp + ( + $should_english: literal => $msg: expr, + ) => {{ $msg }}; + ( + $lang_name: literal => $msg: expr, + $($rest_lang_name: literal => $rest_msg: expr,)+ + ) => {{ + if cfg!(feature = $lang_name) { + $msg } else { - $en + switch_lang!($($rest_lang_name => $rest_msg,)+) } }}; } diff --git a/compiler/erg_common/serialize.rs b/compiler/erg_common/serialize.rs index a4d2717b..af1f517f 100644 --- a/compiler/erg_common/serialize.rs +++ b/compiler/erg_common/serialize.rs @@ -49,14 +49,14 @@ pub enum DataTypePrefix { StopIter = b'S', // 0x53 Ref = b'r', /* unsized objects (ref counted) */ - Long = b'l', // 0x6C + len: u32 + payload: 2*len+3byte (~ -2^31-1 && 2^31 ~) - Str = b's', // 0x73 + len: u32 + payload - ShortAscii = b'z', // 0x7A + len: u8 + payload - ShortAsciiInterned = b'Z', // 0x5A + len: u8 + payload - Unicode = b'u', // 0x75 + len: u32 + payload + Long = b'l', // 0x6C + len: u32 + payload: 2*len+3byte (~ -2^31-1 && 2^31 ~) + Str = b's', // 0x73 + len: u32 + payload + ShortAscii = b'z', // 0x7A + len: u8 + payload + ShortAsciiInterned = b'Z', // 0x5A + len: u8 + payload + Unicode = b'u', // 0x75 + len: u32 + payload Interned = b't', // 0x74 + len + payload - SmallTuple = b')', // 0x29 + len: u8 + payload - Tuple = b'(', // 0x28 + len: u32 + payload + SmallTuple = b')', // 0x29 + len: u8 + payload + Tuple = b'(', // 0x28 + len: u32 + payload Code = b'c', // 0x63 /* Erg specific prefix */ Builtin = b'b', // 0x62 + str diff --git a/compiler/erg_common/value.rs b/compiler/erg_common/value.rs index bcd348d5..d4c7ac2a 100644 --- a/compiler/erg_common/value.rs +++ b/compiler/erg_common/value.rs @@ -326,8 +326,8 @@ impl ValueObj { panic!( "{}", switch_lang!( - format!("this object cannot be serialized: {other}"), - format!("このオブジェクトはシリアライズできません: {other}") + "japanese" => format!("このオブジェクトはシリアライズできません: {other}"), + "english" => format!("this object cannot be serialized: {other}"), ) ) } diff --git a/compiler/erg_compiler/Cargo.toml b/compiler/erg_compiler/Cargo.toml index 9a141d04..7de1b1f3 100644 --- a/compiler/erg_compiler/Cargo.toml +++ b/compiler/erg_compiler/Cargo.toml @@ -13,6 +13,8 @@ homepage = "https://erg-lang.github.io/" # when "debug" feature is turned on, that of parser will also be turned on. debug = [ "erg_common/debug", "erg_parser/debug" ] japanese = [ "erg_common/japanese", "erg_parser/japanese" ] +simplified_chinese = [ "erg_common/simplified_chinese", "erg_parser/simplified_chinese" ] +traditional_chinese = [ "erg_common/traditional_chinese", "erg_parser/traditional_chinese" ] [dependencies] erg_common = { version = "0.2.5", path = "../erg_common" } diff --git a/compiler/erg_compiler/error.rs b/compiler/erg_compiler/error.rs index c2f45080..cf221c0e 100644 --- a/compiler/erg_compiler/error.rs +++ b/compiler/erg_compiler/error.rs @@ -138,10 +138,20 @@ impl CompileError { fn_name: &str, line: u32, ) -> Self { - Self::new(ErrorCore::new(errno, CompilerSystemError, loc, switch_lang!( - format!("this is a bug of the Erg compiler, please report it to https://github.com/...\ncaused from: {fn_name}:{line}"), - format!("これはErg compilerのバグです、開発者に報告して下さい (https://github.com/...)\n{fn_name}:{line}より発生") - ), None), input, "".into()) + Self::new( + ErrorCore::new( + errno, + CompilerSystemError, + loc, + switch_lang!( + "japanese" => format!("これはErg compilerのバグです、開発者に報告して下さい (https://github.com/...)\n{fn_name}:{line}より発生"), + "english" => format!("this is a bug of the Erg compiler, please report it to https://github.com/...\ncaused from: {fn_name}:{line}"), + ), + None, + ), + input, + "".into(), + ) } pub fn stack_bug( @@ -151,14 +161,24 @@ impl CompileError { block_id: usize, fn_name: &str, ) -> Self { - Self::new(ErrorCore::new(0, CompilerSystemError, loc, switch_lang!( - format!("the number of elements in the stack is invalid (num of elems: {stack_len}, block id: {block_id})\n\ - this is a bug of the Erg compiler, please report it (https://github.com/...)\n\ - caused from: {fn_name}"), - format!("スタックの要素数が異常です (要素数: {stack_len}, ブロックID: {block_id})\n\ - これはコンパイラのバグです、開発者に報告して下さい (https://github.com/...)\n\ - {fn_name}より発生") - ), None), input, "".into()) + Self::new( + ErrorCore::new( + 0, + CompilerSystemError, + loc, + switch_lang!( + "japanese" => format!("スタックの要素数が異常です (要素数: {stack_len}, ブロックID: {block_id})\n\ + これはコンパイラのバグです、開発者に報告して下さい (https://github.com/...)\n\ + {fn_name}より発生"), + "english" => format!("the number of elements in the stack is invalid (num of elems: {stack_len}, block id: {block_id})\n\ + this is a bug of the Erg compiler, please report it (https://github.com/...)\n\ + caused from: {fn_name}"), + ), + None, + ), + input, + "".into(), + ) } pub fn feature_error(input: Input, loc: Location, name: &str, caused_by: Str) -> Self { @@ -168,8 +188,9 @@ impl CompileError { FeatureError, loc, switch_lang!( - format!("this feature({name}) is not implemented yet"), - format!("この機能({name})はまだ正式に提供されていません") + "japanese" => format!("この機能({name})はまだ正式に提供されていません"), + "simplified_chinese" => format!("该功能({name})还没有正式提供"), + "english" => format!("this feature({name}) is not implemented yet"), ), None, ), @@ -195,10 +216,19 @@ impl TyCheckError { } pub fn checker_bug(errno: usize, loc: Location, fn_name: &str, line: u32) -> Self { - Self::new(ErrorCore::new(errno, CompilerSystemError, loc, switch_lang!( - format!("this is a bug of the Erg compiler, please report it to https://github.com/...\ncaused from: {fn_name}:{line}"), - format!("これはErg compilerのバグです、開発者に報告して下さい (https://github.com/...)\n{fn_name}:{line}より発生") - ), None), "".into()) + Self::new( + ErrorCore::new( + errno, + CompilerSystemError, + loc, + switch_lang!( + "japanese" => format!("これはErg compilerのバグです、開発者に報告して下さい (https://github.com/...)\n{fn_name}:{line}より発生"), + "english" => format!("this is a bug of the Erg compiler, please report it to https://github.com/...\ncaused from: {fn_name}:{line}"), + ), + None, + ), + "".into(), + ) } pub fn feature_error(loc: Location, name: &str, caused_by: Str) -> Self { @@ -208,8 +238,8 @@ impl TyCheckError { FeatureError, loc, switch_lang!( - format!("this feature({name}) is not implemented yet"), - format!("この機能({name})はまだ正式に提供されていません") + "japanese" => format!("この機能({name})はまだ正式に提供されていません"), + "english" => format!("this feature({name}) is not implemented yet"), ), None, ), @@ -238,8 +268,8 @@ impl TyCheckError { NameError, loc, switch_lang!( - format!("{name} is already declared"), - format!("{name}は既に宣言されています") + "japanese" => format!("{name}は既に宣言されています"), + "english" => format!("{name} is already declared"), ), Option::::None, ), @@ -255,12 +285,18 @@ impl TyCheckError { found_t: &Type, ) -> Self { let name = readable_name(name); - Self::new(ErrorCore::new(0, TypeError, loc, - switch_lang!( - format!("{name} was declared as {GREEN}{spec_t}{RESET}, but an {RED}{found_t}{RESET} object is assigned"), - format!("{name}は{GREEN}{spec_t}{RESET}型として宣言されましたが、{RED}{found_t}{RESET}型のオブジェクトが代入されています") - ), Option::::None), - caused_by + Self::new( + ErrorCore::new( + 0, + TypeError, + loc, + switch_lang!( + "japanese" => format!("{name}は{GREEN}{spec_t}{RESET}型として宣言されましたが、{RED}{found_t}{RESET}型のオブジェクトが代入されています"), + "english" => format!("{name} was declared as {GREEN}{spec_t}{RESET}, but an {RED}{found_t}{RESET} object is assigned"), + ), + Option::::None, + ), + caused_by, ) } @@ -272,8 +308,8 @@ impl TyCheckError { TypeError, loc, switch_lang!( - format!("the type of {name} is not specified"), - format!("{name}の型が指定されていません") + "japanese" => format!("{name}の型が指定されていません"), + "english" => format!("the type of {name} is not specified"), ), None, ), @@ -291,8 +327,8 @@ impl TyCheckError { let hint = similar_name.map(|n| { let n = readable_name(n); switch_lang!( - format!("exists a similar name variable: {n}"), - format!("似た名前の変数があります: {n}") + "japanese" => format!("似た名前の変数があります: {n}"), + "english" => format!("exists a similar name variable: {n}"), ) .into() }); @@ -302,8 +338,8 @@ impl TyCheckError { NameError, loc, switch_lang!( - format!("{RED}{name}{RESET} is not defined"), - format!("{RED}{name}{RESET}という変数は定義されていません") + "japanese" => format!("{RED}{name}{RESET}という変数は定義されていません"), + "english" => format!("{RED}{name}{RESET} is not defined"), ), hint, ), @@ -321,8 +357,8 @@ impl TyCheckError { let hint = similar_name.map(|n| { let n = readable_name(n); switch_lang!( - format!("has a similar name attribute: {n}"), - format!("似た名前の属性があります: {n}") + "japanese" => format!("似た名前の属性があります: {n}"), + "english" => format!("has a similar name attribute: {n}"), ) .into() }); @@ -332,8 +368,8 @@ impl TyCheckError { AttributeError, loc, switch_lang!( - format!("{obj_t} object has no attribute {RED}{name}{RESET}"), - format!("{obj_t}型オブジェクトに{RED}{name}{RESET}という属性はありません") + "japanese" => format!("{obj_t}型オブジェクトに{RED}{name}{RESET}という属性はありません"), + "english" => format!("{obj_t} object has no attribute {RED}{name}{RESET}"), ), hint, ), @@ -353,12 +389,12 @@ impl TyCheckError { NotImplementedError, callee.loc(), switch_lang!( - format!( + "japanese" => format!( + "{callee}は{param_ts}を引数に取る呼び出し可能オブジェクトではありません" + ), + "english" => format!( "{callee} is not a Callable object that takes {param_ts} as an argument" ), - format!( - "{callee}は{param_ts}を引数に取る呼び出し可能オブジェクトではありません" - ) ), None, ), @@ -373,10 +409,19 @@ impl TyCheckError { expect: &Type, found: &Type, ) -> Self { - Self::new(ErrorCore::new(0, TypeError, loc, switch_lang!( - format!("the type of {name} is mismatched:\nexpected: {GREEN}{expect}{RESET}\nbut found: {RED}{found}{RESET}"), - format!("{name}の型が違います。\n予期した型: {GREEN}{expect}{RESET}\n与えられた型: {RED}{found}{RESET}") - ), None), caused_by) + Self::new( + ErrorCore::new( + 0, + TypeError, + loc, + switch_lang!( + "japanese" => format!("{name}の型が違います。\n予期した型: {GREEN}{expect}{RESET}\n与えられた型: {RED}{found}{RESET}"), + "english" => format!("the type of {name} is mismatched:\nexpected: {GREEN}{expect}{RESET}\nbut found: {RED}{found}{RESET}"), + ), + None, + ), + caused_by, + ) } pub fn return_type_error( @@ -386,10 +431,19 @@ impl TyCheckError { expect: &Type, found: &Type, ) -> Self { - Self::new(ErrorCore::new(0, TypeError, loc, switch_lang!( - format!("the return type of {name} is mismatched:\nexpected: {GREEN}{expect}{RESET}\nbut found: {RED}{found}{RESET}"), - format!("{name}の戻り値の型が違います。\n予期した型: {GREEN}{expect}{RESET}\n与えられた型: {RED}{found}{RESET}") - ), None), caused_by) + Self::new( + ErrorCore::new( + 0, + TypeError, + loc, + switch_lang!( + "japanese" => format!("{name}の戻り値の型が違います。\n予期した型: {GREEN}{expect}{RESET}\n与えられた型: {RED}{found}{RESET}"), + "english" => format!("the return type of {name} is mismatched:\nexpected: {GREEN}{expect}{RESET}\nbut found: {RED}{found}{RESET}"), + ), + None, + ), + caused_by, + ) } pub fn uninitialized_error(loc: Location, caused_by: Str, name: &str, t: &Type) -> Self { @@ -399,8 +453,8 @@ impl TyCheckError { NameError, loc, switch_lang!( - format!("{name}: {t} is not initialized"), - format!("{name}: {t}は初期化されていません") + "japanese" => format!("{name}: {t}は初期化されていません"), + "english" => format!("{name}: {t} is not initialized"), ), None, ), @@ -409,10 +463,19 @@ impl TyCheckError { } pub fn argument_error(loc: Location, caused_by: Str, expect: usize, found: usize) -> Self { - Self::new(ErrorCore::new(0, TypeError, loc, switch_lang!( - format!("the number of positional arguments is mismatched:\nexpected: {GREEN}{expect}{RESET}\nbut found: {RED}{found}{RESET}"), - format!("ポジショナル引数の数が違います。\n予期した個数: {GREEN}{expect}{RESET}\n与えられた個数: {RED}{found}{RESET}") - ), None), caused_by) + Self::new( + ErrorCore::new( + 0, + TypeError, + loc, + switch_lang!( + "japanese" => format!("ポジショナル引数の数が違います。\n予期した個数: {GREEN}{expect}{RESET}\n与えられた個数: {RED}{found}{RESET}"), + "english" => format!("the number of positional arguments is mismatched:\nexpected: {GREEN}{expect}{RESET}\nbut found: {RED}{found}{RESET}"), + ), + None, + ), + caused_by, + ) } pub fn match_error(loc: Location, caused_by: Str, expr_t: &Type) -> Self { @@ -422,8 +485,8 @@ impl TyCheckError { TypeError, loc, switch_lang!( - format!("not all patterns of type {expr_t} are covered"), - format!("{expr_t}型の全パターンを網羅していません") + "japanese" => format!("{expr_t}型の全パターンを網羅していません"), + "english" => format!("not all patterns of type {expr_t} are covered"), ), None, ), @@ -438,8 +501,8 @@ impl TyCheckError { TypeError, loc, switch_lang!( - format!("failed to infer the type of {expr}"), - format!("{expr}の型が推論できません") + "japanese" => format!("{expr}の型が推論できません"), + "english" => format!("failed to infer the type of {expr}"), ), None, ), @@ -463,8 +526,8 @@ impl TyCheckError { AssignError, loc, switch_lang!( - format!("cannot assign twice to the immutable variable {name}"), - format!("定数{name}には再代入できません") + "japanese" => format!("定数{name}には再代入できません"), + "english" => format!("cannot assign twice to the immutable variable {name}"), ), None, ), @@ -487,18 +550,18 @@ impl TyCheckError { TypeError, loc, switch_lang!( - format!( + "japanese" => format!( + "{name}に渡された引数の数が多すぎます。 +必要な引数の合計数: {GREEN}{params_len}{RESET}個 +渡された引数の数: {RED}{pos_args_len}{RESET}個 +キーワード引数の数: {RED}{kw_args_len}{RESET}個" + ), + "english" => format!( "too many arguments for {name}: total expected params: {GREEN}{params_len}{RESET} passed positional args: {RED}{pos_args_len}{RESET} passed keyword args: {RED}{kw_args_len}{RESET}" ), - format!( - "{name}に渡された引数の数が多すぎます。 -必要な引数の合計数: {GREEN}{params_len}{RESET}個 -渡された引数の数: {RED}{pos_args_len}{RESET}個 -キーワード引数の数: {RED}{kw_args_len}{RESET}個" - ) ), None, ), @@ -519,8 +582,8 @@ passed keyword args: {RED}{kw_args_len}{RESET}" TypeError, loc, switch_lang!( - format!("{name}'s argument {RED}{arg_name}{RESET} is passed multiple times"), - format!("{name}の引数{RED}{arg_name}{RESET}が複数回渡されています") + "japanese" => format!("{name}の引数{RED}{arg_name}{RESET}が複数回渡されています"), + "english" => format!("{name}'s argument {RED}{arg_name}{RESET} is passed multiple times"), ), None, ), @@ -541,9 +604,9 @@ passed keyword args: {RED}{kw_args_len}{RESET}" TypeError, loc, switch_lang!( - format!("{name} got unexpected keyword argument {RED}{param_name}{RESET}"), - format!("{name}には予期しないキーワード引数{RED}{param_name}{RESET}が渡されています") - ), + "japanese" => format!("{name}には予期しないキーワード引数{RED}{param_name}{RESET}が渡されています"), + "english" => format!("{name} got unexpected keyword argument {RED}{param_name}{RESET}"), + ), None, ), caused_by, @@ -558,8 +621,8 @@ passed keyword args: {RED}{kw_args_len}{RESET}" UnusedWarning, loc, switch_lang!( - format!("{YELLOW}{name}{RESET} is not used"), - format!("{YELLOW}{name}{RESET}は使用されていません") + "japanese" => format!("{YELLOW}{name}{RESET}は使用されていません"), + "english" => format!("{YELLOW}{name}{RESET} is not used"), ), None, ), @@ -580,10 +643,19 @@ passed keyword args: {RED}{kw_args_len}{RESET}" (None, Some(r)) => r, (None, None) => Location::Unknown, }; - Self::new(ErrorCore::new(0, TypeError, loc, switch_lang!( - format!("unification failed:\nlhs: {YELLOW}{lhs_t}{RESET}\nrhs: {YELLOW}{rhs_t}{RESET}"), - format!("型の単一化に失敗しました:\n左辺: {YELLOW}{lhs_t}{RESET}\n右辺: {YELLOW}{rhs_t}{RESET}") - ), None), caused_by) + Self::new( + ErrorCore::new( + 0, + TypeError, + loc, + switch_lang!( + "japanese" => format!("型の単一化に失敗しました:\n左辺: {YELLOW}{lhs_t}{RESET}\n右辺: {YELLOW}{rhs_t}{RESET}"), + "english" => format!("unification failed:\nlhs: {YELLOW}{lhs_t}{RESET}\nrhs: {YELLOW}{rhs_t}{RESET}"), + ), + None, + ), + caused_by, + ) } pub fn re_unification_error( @@ -599,10 +671,19 @@ passed keyword args: {RED}{kw_args_len}{RESET}" (None, Some(r)) => r, (None, None) => Location::Unknown, }; - Self::new(ErrorCore::new(0, TypeError, loc, switch_lang!( - format!("re-unification failed:\nlhs: {YELLOW}{lhs_t}{RESET}\nrhs: {YELLOW}{rhs_t}{RESET}"), - format!("型の再単一化に失敗しました:\n左辺: {YELLOW}{lhs_t}{RESET}\n右辺: {YELLOW}{rhs_t}{RESET}") - ), None), caused_by) + Self::new( + ErrorCore::new( + 0, + TypeError, + loc, + switch_lang!( + "japanese" => format!("型の再単一化に失敗しました:\n左辺: {YELLOW}{lhs_t}{RESET}\n右辺: {YELLOW}{rhs_t}{RESET}"), + "english" => format!("re-unification failed:\nlhs: {YELLOW}{lhs_t}{RESET}\nrhs: {YELLOW}{rhs_t}{RESET}"), + ), + None, + ), + caused_by, + ) } pub fn subtyping_error( @@ -618,17 +699,35 @@ passed keyword args: {RED}{kw_args_len}{RESET}" (None, Some(r)) => r, (None, None) => Location::Unknown, }; - Self::new(ErrorCore::new(0, TypeError, loc, switch_lang!( - format!("subtype constraints cannot be satisfied:\nsubtype: {YELLOW}{sub_t}{RESET}\nsupertype: {YELLOW}{sup_t}{RESET}"), - format!("部分型制約を満たせません:\nサブタイプ: {YELLOW}{sub_t}{RESET}\nスーパータイプ: {YELLOW}{sup_t}{RESET}") - ), None), caused_by) + Self::new( + ErrorCore::new( + 0, + TypeError, + loc, + switch_lang!( + "japanese" => format!("部分型制約を満たせません:\nサブタイプ: {YELLOW}{sub_t}{RESET}\nスーパータイプ: {YELLOW}{sup_t}{RESET}"), + "english" => format!("subtype constraints cannot be satisfied:\nsubtype: {YELLOW}{sub_t}{RESET}\nsupertype: {YELLOW}{sup_t}{RESET}"), + ), + None, + ), + caused_by, + ) } pub fn pred_unification_error(lhs: &Predicate, rhs: &Predicate, caused_by: Str) -> Self { - Self::new(ErrorCore::new(0, TypeError, Location::Unknown, switch_lang!( - format!("predicate unification failed:\nlhs: {YELLOW}{lhs}{RESET}\nrhs: {YELLOW}{rhs}{RESET}"), - format!("述語式の単一化に失敗しました:\n左辺: {YELLOW}{lhs}{RESET}\n右辺: {YELLOW}{rhs}{RESET}") - ), None), caused_by) + Self::new( + ErrorCore::new( + 0, + TypeError, + Location::Unknown, + switch_lang!( + "japanese" => format!("述語式の単一化に失敗しました:\n左辺: {YELLOW}{lhs}{RESET}\n右辺: {YELLOW}{rhs}{RESET}"), + "english" => format!("predicate unification failed:\nlhs: {YELLOW}{lhs}{RESET}\nrhs: {YELLOW}{rhs}{RESET}"), + ), + None, + ), + caused_by, + ) } pub fn has_effect>(expr: &Expr, caused_by: S) -> Self { @@ -638,8 +737,8 @@ passed keyword args: {RED}{kw_args_len}{RESET}" HasEffect, expr.loc(), switch_lang!( - format!("this expression causes a side-effect"), - format!("この式には副作用があります") + "japanese" => format!("この式には副作用があります"), + "english" => format!("this expression causes a side-effect"), ), None, ), @@ -659,14 +758,14 @@ passed keyword args: {RED}{kw_args_len}{RESET}" MoveError, name_loc, switch_lang!( - format!( + "japanese" => format!( + "{RED}{name}{RESET}は{}行目ですでに移動されています", + moved_loc.ln_begin().unwrap() + ), + "english" => format!( "{RED}{name}{RESET} was moved in line {}", moved_loc.ln_begin().unwrap() ), - format!( - "{RED}{name}{RESET}は{}行目ですでに移動されています", - moved_loc.ln_begin().unwrap() - ) ), None, ), diff --git a/compiler/erg_compiler/lower.rs b/compiler/erg_compiler/lower.rs index f15d0bde..b204821f 100644 --- a/compiler/erg_compiler/lower.rs +++ b/compiler/erg_compiler/lower.rs @@ -62,13 +62,13 @@ impl ASTLowerer { expr.loc(), self.ctx.name.clone(), switch_lang!( - "the evaluation result of the expression is not used", - "式の評価結果が使われていません", + "japanese" => "式の評価結果が使われていません", + "english" => "the evaluation result of the expression is not used", ), Some( switch_lang!( - "if you don't use the value, use `discard` function", - "値を使わない場合は、discard関数を使用してください", + "japanese" => "値を使わない場合は、discard関数を使用してください", + "english" => "if you don't use the value, use `discard` function", ) .into(), ), diff --git a/compiler/erg_parser/Cargo.toml b/compiler/erg_parser/Cargo.toml index 3753d02a..6c6af346 100644 --- a/compiler/erg_parser/Cargo.toml +++ b/compiler/erg_parser/Cargo.toml @@ -12,6 +12,8 @@ homepage = "https://erg-lang.github.io/" [features] debug = [ "erg_common/debug" ] japanese = [ "erg_common/japanese" ] +simplified_chinese = [ "erg_common/simplified_chinese" ] +traditional_chinese = [ "erg_common/traditional_chinese" ] [dependencies] erg_common = { version = "0.2.5", path = "../erg_common" } diff --git a/compiler/erg_parser/error.rs b/compiler/erg_parser/error.rs index 694beeb9..a7874e48 100644 --- a/compiler/erg_parser/error.rs +++ b/compiler/erg_parser/error.rs @@ -21,10 +21,16 @@ impl LexError { } pub fn compiler_bug(errno: usize, loc: Location, fn_name: &str, line: u32) -> Self { - Self::new(ErrorCore::new(errno, CompilerSystemError, loc, switch_lang!( - format!("this is a bug of the Erg compiler, please report it to https://github.com/mtshiba/erg\ncaused from: {fn_name}:{line}"), - format!("これはErg compilerのバグです、開発者に報告して下さい (https://github.com/mtshiba/erg)\n{fn_name}:{line}より発生") - ), None)) + Self::new(ErrorCore::new( + errno, + CompilerSystemError, + loc, + switch_lang!( + "japanese" => format!("これはErg compilerのバグです、開発者に報告して下さい (https://github.com/mtshiba/erg)\n{fn_name}:{line}より発生"), + "english" => format!("this is a bug of the Erg compiler, please report it to https://github.com/mtshiba/erg\ncaused from: {fn_name}:{line}"), + ), + None, + )) } pub fn feature_error(errno: usize, loc: Location, name: &str) -> Self { @@ -33,8 +39,9 @@ impl LexError { FeatureError, loc, switch_lang!( - format!("this feature({name}) is not implemented yet"), - format!("この機能({name})はまだ正式に提供されていません") + "japanese" => format!("この機能({name})はまだ正式に提供されていません"), + "simplified_chinese" => format!("该功能({name})还没有正式提供"), + "english" => format!("this feature({name}) is not implemented yet"), ), None, )) @@ -45,7 +52,11 @@ impl LexError { errno, SyntaxError, loc, - switch_lang!("invalid syntax", "不正な構文です"), + switch_lang!( + "japanese" => "不正な構文です", + "simplified_chinese" => "无效的语法", + "english" => "invalid syntax", + ), None, )) } diff --git a/compiler/erg_parser/lex.rs b/compiler/erg_parser/lex.rs index 456a2b68..9c35e5fe 100644 --- a/compiler/erg_parser/lex.rs +++ b/compiler/erg_parser/lex.rs @@ -266,8 +266,8 @@ impl Lexer /*<'a>*/ { 0, comment.loc(), switch_lang!( - "invalid unicode character (bi-directional override) in comments", - "不正なユニコード文字(双方向オーバーライド)がコメント中に使用されています" + "japanese" => "不正なユニコード文字(双方向オーバーライド)がコメント中に使用されています", + "english" => "invalid unicode character (bi-directional override) in comments", ), None, )); @@ -298,7 +298,10 @@ impl Lexer /*<'a>*/ { Some(Err(LexError::syntax_error( 0, space.loc(), - switch_lang!("invalid indent", "インデントが不正です"), + switch_lang!( + "japanese" => "インデントが不正です", + "english" => "invalid indent", + ), None, ))) } else if self.prev_token.is(Newline) { @@ -317,11 +320,14 @@ impl Lexer /*<'a>*/ { return Some(Err(LexError::syntax_error( 0, token.loc(), - switch_lang!("indentation is too deep", "インデントが深すぎます"), + switch_lang!( + "japanese" => "インデントが深すぎます", + "english" => "indentation is too deep", + ), Some( switch_lang!( - "The code is too complicated. Please split the process.", - "コードが複雑すぎます。処理を分割してください" + "japanese" => "コードが複雑すぎます。処理を分割してください", + "english" => "The code is too complicated. Please split the process", ) .into(), ), @@ -359,7 +365,10 @@ impl Lexer /*<'a>*/ { Some(Err(LexError::syntax_error( 0, invalid_dedent.loc(), - switch_lang!("invalid indent", "インデントが不正です"), + switch_lang!( + "japanese" => "インデントが不正です", + "english" => "invalid indent", + ), None, ))) } @@ -529,9 +538,9 @@ impl Lexer /*<'a>*/ { 0, token.loc(), switch_lang!( - "invalid unicode character (bi-directional override) in string literal", - "不正なユニコード文字(双方向オーバーライド)が文字列中に使用されています" - ), + "japanese" => "不正なユニコード文字(双方向オーバーライド)が文字列中に使用されています", + "english" => "invalid unicode character (bi-directional override) in string literal", + ), None, )); } @@ -542,8 +551,8 @@ impl Lexer /*<'a>*/ { 0, token.loc(), switch_lang!( - "the string is not closed by \"", - "文字列が\"によって閉じられていません" + "japanese" => "文字列が\"によって閉じられていません", + "english" => "the string is not closed by \"", ), None, )) @@ -590,7 +599,10 @@ impl Iterator for Lexer /*<'a>*/ { Some(Err(LexError::syntax_error( 0, token.loc(), - switch_lang!("no such operator: <.", "<.という演算子はありません"), + switch_lang!( + "japanese" => "<.という演算子はありません", + "english" => "no such operator: <.", + ), None, ))) } @@ -764,8 +776,17 @@ impl Iterator for Lexer /*<'a>*/ { Some(Err(LexError::syntax_error( 0, token.loc(), - switch_lang!("cannot use a tab as a space", "タブ文字は使用できません"), - Some(switch_lang!("use spaces", "スペースを使用してください").into()), + switch_lang!( + "japanese" => "タブ文字は使用できません", + "english" => "cannot use a tab as a space", + ), + Some( + switch_lang!( + "japanese" => "スペース( )を使用してください", + "english" => "use spaces ( )", + ) + .into(), + ), ))) } // TODO: @@ -788,8 +809,8 @@ impl Iterator for Lexer /*<'a>*/ { 0, token.loc(), switch_lang!( - format!("`{}` cannot be defined by user", &token.content), - format!("`{}`はユーザー定義できません", &token.content) + "japanese" => format!("`{}`はユーザー定義できません", &token.content), + "english" => format!("`{}` cannot be defined by user", &token.content), ), None, ))); @@ -802,8 +823,8 @@ impl Iterator for Lexer /*<'a>*/ { 0, token.loc(), switch_lang!( - format!("back quotes (`) not closed"), - format!("バッククォート(`)が閉じられていません") + "japanese" => format!("バッククォート(`)が閉じられていません"), + "english" => format!("back quotes (`) not closed"), ), None, ))) @@ -819,8 +840,8 @@ impl Iterator for Lexer /*<'a>*/ { 0, token.loc(), switch_lang!( - format!("invalid character: '{invalid}'"), - format!("この文字は使用できません: '{invalid}'") + "japanese" => format!("この文字は使用できません: '{invalid}'"), + "english" => format!("invalid character: '{invalid}'"), ), None, ))) diff --git a/compiler/erg_parser/parse.rs b/compiler/erg_parser/parse.rs index 8dc2f35b..a8612d8c 100644 --- a/compiler/erg_parser/parse.rs +++ b/compiler/erg_parser/parse.rs @@ -439,7 +439,10 @@ impl Parser { let err = ParseError::syntax_error( 0, loc, - switch_lang!("failed to parse a block", "ブロックの解析に失敗しました"), + switch_lang!( + "japanese" => "ブロックの解析に失敗しました", + "english" => "failed to parse a block", + ), None, ); Err(err) @@ -496,8 +499,8 @@ impl Parser { 0, self.peek().unwrap().loc(), switch_lang!( - "Cannot use type bounds in a declaration of a variable", - "変数宣言で型制約は使えません" + "japanese" => "変数宣言で型制約は使えません", + "english" => "Cannot use type bounds in a declaration of a variable", ), None, ); @@ -509,16 +512,6 @@ impl Parser { self.skip(); Some(self.try_reduce_type_spec()?) } else { - if self.cur_is(Colon) { - self.warns.push(ParseError::syntax_warning(0, name.loc(), switch_lang!( - "Since it is obvious that the variable is of type `Type`, there is no need to specify the type.", - "変数がType型であることは明らかなので、型指定は不要です。" - ), Some(switch_lang!( - "Are you sure you're not confusing it with subclass declaration (<:)?", - "サブクラスの宣言(<:)ではありませんか?" - ).into()) - )); - } None } } else if self.cur_is(Colon) { @@ -663,8 +656,8 @@ impl Parser { 0, t.loc(), switch_lang!( - "Binary operators cannot be used in left-values", - "左辺値の中で中置演算子は使えません" + "japanese" => "左辺値の中で中置演算子は使えません", + "english" => "Binary operators cannot be used in left-values", ), None, ); @@ -754,9 +747,10 @@ impl Parser { return Err(ParseError::syntax_error( 0, param.loc(), + // TODO: switch_lang! "non-default argument follows default argument", None, - )) + )); } (false, false) => { non_default_params.push(param); @@ -768,8 +762,8 @@ impl Parser { 0, t.loc(), switch_lang!( - "Binary operators cannot be used in parameters", - "仮引数の中で中置演算子は使えません" + "japanese" => "仮引数の中で中置演算子は使えません", + "english" => "Binary operators cannot be used in parameters", ), None, ); @@ -1015,18 +1009,21 @@ impl Parser { fn validate_const_expr(&mut self, expr: Expr) -> ParseResult { match expr { - Expr::Lit(l) => Ok(ConstExpr::Lit(l)), + Expr::Lit(l) => Ok(ConstExpr::Lit(l)), Expr::Accessor(Accessor::Local(local)) => { let local = ConstLocal::new(local.symbol); Ok(ConstExpr::Accessor(ConstAccessor::Local(local))) } // TODO: App, Array, Record, BinOp, UnaryOp, - other => { - Err(ParseError::syntax_error(0, other.loc(), switch_lang!( - "this expression is not computable at the compile-time, so cannot used as a type-argument", - "この式はコンパイル時計算できないため、型引数には使用できません", - ), None)) - } + other => Err(ParseError::syntax_error( + 0, + other.loc(), + switch_lang!( + "japanese" => "この式はコンパイル時計算できないため、型引数には使用できません", + "english" => "this expression is not computable at the compile-time, so cannot used as a type-argument", + ), + None, + )), } } diff --git a/doc/EN/dev_guide/i18n_messages.md b/doc/EN/dev_guide/i18n_messages.md new file mode 100644 index 00000000..7736ce80 --- /dev/null +++ b/doc/EN/dev_guide/i18n_messages.md @@ -0,0 +1,59 @@ +# Multilingualization of Messages + +Erg is working on making all messages (start, option, doc, hint, warning, error messages, etc.) multilingual within the language. +This project is open to anyone without detailed knowledge of Rust or Erg. Your participation is always welcome. + +Here is how to translate them. + +## Search `switch_lang!` + +In the Erg source code, look for the item `switch_lang!` (use grep or your editor's search function). +You should find something like this: + +```rust +switch_lang!( + "japanese" => format!("この機能({name})はまだ正式に提供されていません"), + "english" => format!("this feature({name}) is not implemented yet"), +), +``` + +This message is currently supported only in Japanese and English. Let's add a simplified Chinese message as a test. + +## Add a New Message + +Add translated messages as you see the content in other languages. Don't forget the comma (`,`) last. + +```rust +switch_lang!( + "japanese" => format!("この機能({name})はまだ正式に提供されていません"), + "simplified_chinese" => format!("该功能({name})还没有正式提供"), + "english" => format!("this feature({name}) is not implemented yet"), +), +``` + +Note that English is the default and must come last. +The `{name}` part is a Rust formatting feature that allows you to embed the contents of a variable (`name`) into a string. + +## Build + +Now, let's build with the `--features simplified_chinese` option. + +screenshot_i18n_messages + +We did it! + +## FAQ + +Q: What does a specification like `{RED}{foo}{RESET}` mean? +A: {RED} and subsequent letters will be displayed in red. {RESET} will restore the color. + +Q: If I want to add my language, how do I replace the `"simplified_chinese" =>` part? + +The following languages are currently supported: + +* "english" (default) +* "japanese" +* "simplified_chinese" +* "traditional_chinese" + +If you would like to add languages other than these, please make a request. diff --git a/doc/JA/dev_guide/i18n_messages.md b/doc/JA/dev_guide/i18n_messages.md new file mode 100644 index 00000000..675d3f3d --- /dev/null +++ b/doc/JA/dev_guide/i18n_messages.md @@ -0,0 +1,58 @@ +# Multilingualization of Messages + +Ergはメッセージ(スタート、オプション、ドキュメント、ヒント、警告、エラーメッセージなど)の多言語化を進めています。 +このプロジェクトは、RustやErgの詳しい知識がなくても参加することができます。ぜひ協力をお願いします。 + +以下に、多言語化の方法を説明します。 + +## `switch_lang!`を探す + +Ergのソースコードの中で、`switch_lang!`という項目を探します(grepやエディタの検索機能を使ってください)。 +以下のようなものが見つかるはずです。 + +```rust +switch_lang!( + "japanese" => format!("この機能({name})はまだ正式に提供されていません"), + "english" => format!("this feature({name}) is not implemented yet"), +), +``` + +このメッセージは現在、日本語と英語のみでサポートされています。試しに簡体字のメッセージを追加してみましょう。 + +## メッセージを追加する + +他の言語の内容を見ながら、翻訳されたメッセージを追加してください。最後にカンマ(`,`)を忘れないでください。 + +```rust +switch_lang!( + "japanese" => format!("この機能({name})はまだ正式に提供されていません"), + "simplified_chinese" => format!("该功能({name})还没有正式提供"), + "english" => format!("this feature({name}) is not implemented yet"), +), +``` + +なお、英語はデフォルトであり、必ず最後に来るようにします。 +`{name}` の部分は Rust のフォーマット機能で、変数の内容 (`name`) を文字列に埋め込むことができます。 + +## Build + +では、`--features simplified_chinese` オプションを付けてビルドしてみましょう。 + +screenshot_i18n_messages + +やりましたね! + +## FAQ + +Q: `{RED}{foo}{RESET}` のような指定は何を意味するのでしょうか? +A: {RED}以降が赤色で表示されます。{RESET}で色を元に戻します。 + +Q: 自分の言語を追加したい場合、`"simplified_chinese" =>`の部分はどのように置き換えればよいですか? +A: 現在、以下の言語がサポートされています。 + +* "english" (デフォルト) +* "japanese" (日本語) +* "simplified_chinese" (簡体字中国語) +* "traditional_chinese"(繁体字中国語) + +これら以外の言語を追加したい場合は、リクエストしてください。