From 02cb10555818cb82cec815f94bc324bcea6d4ab9 Mon Sep 17 00:00:00 2001 From: litianci Date: Mon, 12 Sep 2022 14:54:23 +0800 Subject: [PATCH 1/3] Add a new gemstone --- docs/gemstones/images/string_color_image1.png | Bin 0 -> 24079 bytes docs/gemstones/string_color.md | 92 ++++++++++++++++++ 2 files changed, 92 insertions(+) create mode 100644 docs/gemstones/images/string_color_image1.png create mode 100644 docs/gemstones/string_color.md diff --git a/docs/gemstones/images/string_color_image1.png b/docs/gemstones/images/string_color_image1.png new file mode 100644 index 0000000000000000000000000000000000000000..8ce1abceb5bfcbf12260c0696b9f37147b605a25 GIT binary patch literal 24079 zcmdqJWmwb;*TxHibO{2Yk`mGa3eu@`gGdZrlF~7Bh@gZZ3=PWA!cYU!-3Ur|hs4kf z4d)NK-|gP-^PITO`E))wUZ7k!0)KvkwuR_3O^_H_2~&)zIrpja<+@w7U3S$#cfsab zLSF6+`PzVHh20D|um6y5C0SP<>hnD(e$j9=>Ml4uYQD(9DZlo)%$AC=FR_G7PWsU; z2?^}hNFri6y-u7_Y8Ecw;e0cSyouXy50O;l0kY6Fgp7hiu_Hyj(!N~0{?H?IAXN=@>*(HlSGWCskV;Uv?(A5ky6n(jOzdGv zC`C)Dh&@lD=0riwy3XCbt1uN*X9F*vh7&|=@j$;;1g zIj%8QR;fyrxEBPP$G_Ynua7pW-e5orQI5W>sTkxyP>a2%kt52!kf|pC&(XFjog@;A zU|~G8o}@P;yilUUq`!1|BhzH!FCDx^O2V%1Vj%dOC9c*Ug7n2WlvhK#qZ zD25}{D7!rx#l;PYl&5^DwX60eJ&t2XHq?k+PvA!`)NUm$BKjYQL=;=2pAlP+o7=aB zDkX6g6GG%{7BE(oZatr;)TQGZ(<4@0U#NP=>X|5+P5qFRG?v@9QKCACD6*AsItH1X zXcr&baS2^6a{ih)n$|Ya^+I|DBH()t4jm-?82unZX|Orq{K&`jNQN1_d+UIbY5M~D zD!-O=i?yWNJ+x-GrsH%gr)V?*CIRj+a@p`Tj8@G3oI#w`^bgVDW*7M{72Hia&KHmoBtN*4Ogh)e7O(eZ#FhEP#B7a6O`G8dYoY48KsyF!{&`qh9yb=f6f1JsI`qEk z#t`|C+y0_#p@2ZW#*V>^iY?O;O~K7m!E7qFVx;TRQf62*akPuIh5?F;cx%&0X3rW) zz<6cfZOts^F|%Z6{eyZnfpth8VWry(J!jjbAJXl8KAA#_w$e*WE38}UxXDR+pgsoC z=#C6ug$W3DQ8og38rxwFeogSEuid321O({3%wBGGtv%rdv8I8!>#ZY_GRN`5fl zz<7tEd;OjORD9ZfkG>o_i^eY>&SDP!Z`il>N9 zgF_xadBQN})Y-bitST_~kwkor!xik8ZFe#Od%#+X^3^!nQb(hpIW8p~AoE&rJ`V;#14^BFTNQvs_A`=F= zXa!s)nyLf0C1l_)G^e^NkD@2O>!<^7>fhzdU&w!t$j8eeCwxr|-UxC*Q(i z%t+04$3De6>J%(#e%$Y1_0_&!*=(2iVRX`Ok0zZqh2?d(%1-)hImtvGJ3LfBmfH znMBMugkV515;SHz2D=H$nD}ra?kej#OKWVLvv`s}M4WUSPOnTpU3M>-zb?;Gp{<>+ zq~wb`EoV)H0tw|EjXQdGOjo~CEu0*5`hK0niJowM@#SPx{~cQ6{Zd`W+tJ}>)P*YT zHzRpd+;F&3AHU*T3Kb7}T!fiw=V?2hSOXf&a~9qg+DNIRt7U7HNirCM%k3f+Kp~RXa+BC z)uePB@{^BR1|Ub_hi@OF@y3hInQ%4GPG5%!xmU%anPOT%(v8!PhOswh?&c;RLEa>Dd&t?$yo?6HeLa?JJcq4w!`X(wj>q>B zZ9k(mkVr;@z#+Lc#=(Xi{*>+wKCZI&Er4eTyqLJ=U+pUoIN&1v#GV%Jxc5pv1rzH# z@;aXDK9z-MbFK~*kq4G69#`(X?)gA&Eqp2wyV7jN%;@siGfJAxp<@}8t2dv`$i!i@ znNXBOj6qpNOC66RVX$!a`KFCx?fqvV;k{7;)Z=~i8r}j-oR0o`L3=}>Xo9u8(8@ucaHH}aPeI&A7@x$V51S9dvu`!Pr4 zVzCr>+t*mN-`@Y=8TvN$@k@)4qn{++GuwNYsuKy{B|<|#+34$(`{I&-Pr~&3j+yP} zrnN(B?vTAD=D_{IlMDRQpNxP=4{uW%$NS27oKyB~4Jf$(aZiUUAi0bKo-qYXyzW@G#2p3we zljh4u{sE5O-_q+C32@Qv_H%CSwmjJ37XGO?zJp_1y~zYJIBMbT{ZL9pmMs?8eR-;L zAl>2-q1MVaQ6C&C>>ZpRk}%(hK`D9}+d@_o=S&estx9JYTz(RLuOB>n!wt*zTP%5N ztrJ>}S3EPu_Ipn12axmG#Ij=%39+;uBobrI*sObf6@lw1I}>gFIgm)Po>Vl*JO2JE z|E1a!qjXhT6Y3yusN46sFLf&MQ3{Ks$meVKNl*`axl<3;aft%>VYbaK?siRF#uyhl zvt&Zy6MH>w?xvVLx$!C;7#s|=%iA}fw~(ux$=FNoJn;9wAzK5TSw6#}rN4JuR6^$A zrz?dR%GtX0F;2;)RB-xO1?z-1@#_aF`KrTb@q-S5KFZJRYmz>z>kh_Lnn~b~9hLE6ETUj>=lrIy;`;bKOZfA11$DW}jrkNULYA*|DkaMz(qK~&*3ZruVeBypTv zU+VE2Uq0D}oelCD^YCMnVZ{b@pR_Tu*mca0^i)0`s$e#*1}>T{`wflCCmZdKx|&ix zBZCW-55;A+7w5)eJH5rxYZOj6Ip5{9i_GmPk3E88-U#OQ6L3#|Sks?h&Tx6F6Qg%2 zL$@mWM4(E9Erw6*zHTPD zAKUEY*!;7QD&cPULs*Zjh(z?eZ)>@2Tnx@9b7`2mIvAX8Z{fm&m;u9)utkk`#QqZwKwz?o;`ZBR3ZMBx$xtSxtQM5pU*<{DUrHEB||^r2Rq-Ssy_P( z87GMAzMHp^*xJr4qwgU8D8|k=iv}xISTVt>I!Kiiqh3$*^NBb`#8`oF za5^F(YPSx55tV;JK0wLPw=r_~W8UP5n_iFJGFr=q@(Tm3>=d5dcDpUL^JW63c*<4= z#^cH9tY_!G0(5E?-lP&CHB1s-A89`VuMurJ=i+I^dIUAO7?$U2<@cqv^xNn!&R$y& z%LaC9N{Bp>hCV|@(}ak#DZP#Bnn$2@f>z!v0YF0F7tC|D!4f^$HR z#^_wem%ZnuKW5^%v2B=Eme|6;^Du<`s6d?5n@pc%o)oBgY&_s$hnUe0i}q8{y!3T# z{8e_p7PE&wK~X9aI}d__h{LF9=|3Lr(yefwf6;l4(0$N%;T+?2W`0pYtRTWqhv{pb z^YKN?lR6Jjh|s}Ic>hO^nt zGtuE|)##AN+Tp7stAFFbu=}k&q$8N~y$Y_QztUYssipUrm<-6Y!=6X6kt`S;OZ>LX z&kYPJ^YtkSBUnkN>KP%zA*lwb4<)OssOkc@s%YUb$$B244@~s*IY&rxJ#Agav^vYL zXBKubU9#*KP8sio(|NDTS^4DPQLJvW4_p4UjcTYn>>0L%W7EL{GsHxJEKtxzeXKgX zuCmW;a|iLh+12L?6FvNhI+);>@k*t}=B>Nf z!*3iY4P~9)_-JR{5S~EnD|KGS)Mk;sa&DeV zC~H=4KKZk^#0g0qX?;YT9fSL-9}3=Bfm-5-D+358un}LmsHC^L`L5v5Zp+=SSgqw2 zW_n@a>BS=*-nLdk3Ct}*+mUb$~~8?2sTlu*5iuh3+nvn$}3~NL6N740e)Mi?9sV)DapB)WxYnr)&hX zPb=nIYFz_oJ-&njcF(ikZHd=Aj~tb;8Y9j<0(WOwkM4q?@?~>najCI$jl+?&O6GJkqxDioA$d}ccaxX$7I|# zl)%aD(TL>RB>IaAHBkG>pc{>|gLCXHS@Bs``I4)dglXg!V~U< z{w`vQr&$ugjrrv8TpyJ;CcMS%tYyOR=4d9DD9lA0PHX}H^PBaDBj&NE0=r#+3U}~} z_deQnB~=o%P$Lv^^IM~Ked@0jB(J~?Dv8EtUo*)bmeV$q!lv9!#oAHDAp8!r6~DUK zMgl5>gn01~w@@J(3$W~WY}3*FS{BfoZsX*iDuf7yc&apZ#haz+mhDi2??zAz67JPa z;bB_Zno_S##1Qi7>2n#JVy8Dnl^a~xU|=&iBz)BUp29WRP47)h5d@vIt~MMUBaHh0 zS@El#*$L%Kkxi+dDjH%rpS|D6>6`_2zgLCrfS@6WrY|YS{ox=*Q*z9dB%x3GorQVJ;g% z=%{aMue;7(yrSZ*v8IZOTk~KqcAshj@>tOUe&)p+DKw(NLb214LbrESTg6s(!^TE7 zx>>lFr<^YViBChF-Tl3=Fl6iNx6CZ$L3imrXjtFg1Jw44`dM)_xurOJf)6voBTz>* zzH_s8_n(-F8T*-tiMR}jT~~G=$2fE}h3_p>-U!*{b8mLZZa4z0Oze1@NtpeGTQT zCy7NC#^0~gIzvrexv%<3#P?){GLpaQqL@RwI#X9kuxBHMaCN%&15Qm51ty^i$&HzM zw{|~i1L}e;jnkU>Ko>zF?(30FBK=&7P0`u9&tRFayC-R$GoT5*XQEs1V?$zqQ>arI z5_?to=*3yN-InV0+^!>GF&nE=@~{|+z)Ua(Cb!L_`;${smCf~mNFs_SUllyely+}L z>wU2+8~k=ceO=_r_q9LOOmgAh>W+E$wY;4<2PJ?Xu}k)^5}#k`pk9}4I5^kgV3|$LNpKC;L-RtgF zAaCERKjX#XY8`^%Tu<{>3QyE4LC}{&w=Zvt*-Z}Psx~jkW4XAoFYy{DT5Ch3M1kFj zyj;#&S|j*mlsDlS#~WeBUy8v0EM^VQe&E~tL^V*#gnaU4-NUW*(lj|TIg6hN^m1{p zJ&GcoL2H%=CGGJzz$8C{xegI_z3#C?Fr(Y{aY)9@dh@I3`*Lc zEw@OM5e)uJMe`xLrFEVIWU*1o-)_B9Z4etWBYFoa5Ixd+(dzd5oO*ThdbT4J3Gk5O7n@!Z_Ooz5wwf>UAbXU(nuSk$DY_l~@=3B|i zM*n>C)kNR7?t?it6I1L|D|dGYB4fe`Q{nP4023f&h_gJ^J`yXANQt6pD1rd=_n{A! zdjC+Kg#Ir<{>)ms;|))0oC|qfCK*udQmj^H1G0zoNZ94FsD?=19U90=S>_$@Cq6sm zYwoZ0a(`YtsoZ##;%@pG53%NXL{PW>X0Wb2+0mCySw==>r{L(>`g7TZ&O>=bO_GLE z-o@CK{OKYOG1`4J#{n&BwJUk920!wNeS4_$k%m60_atAV?)0Ua0TJrPURZw{A$ub= z^N-yP5``?JSh@;^ip7z=XhBVXLEIgn-YPwolc9AOqF!&L1kO_W=;_JpkY_aRp1j4z zQxn9iHgQOYfgvPPSXnLY05%O35uchMe0ifpqkPM)3Z(XQyGiFzSWyuR&ufpP`tdZm zxpZ+KYgYwZ>4>X4e0yB1&+iu9hqu79xk&!zlG8mMvWM+-}TJ&F(@)gMmTg&MGB1r<6i*1fpbJ^1hPW_U!--;CSX z+T0;bi*7B1e6h5&8pT0=M`IhS6x5PbNZ_cS!0~g)RX~{epA&pUWCs_UHn>9faE&v3 zLwpmqnsYDaKg{oz5&n7w!`ExuWX9?WT@^m2p?zu$5=zNe3Z8fWM=1!G`a7hvg$3i~ z+_DG@UZD<>@9)xAR&KTfsK;*^Pt!_>=e|zJatJ>ty)=Q`#(b+CzVwPN*|itSy9G}C z_W(znrsTE|{1)M;`Z$MX>r1+R}G}-kT|qs*Q@h?*6`QG-vS}$SI!YtX&Y9G;TxV| zr4&A%d9G=|rABbyAxq=qi+lurfxOv|wh$=OaAvu`EG3^t+^`NJg~4`87so1_uj6p^ z;Bb2U=&g;F@}+Zval>ClpX-z&RI%onP{gyySY$3-_hLj5vDZWz_*O?N9HM(<)Oe zcl}ast=%TwWwy4RP%=|QVRd;_6{tbL0!n@Den6$Bug0*hGxH%{3ej&`G9=Dnf0AR* zVADCMB@5Mfjz6j!I@?yB>6%Lc=DTkV7gQXsxL`85WKANcx3ws-upE+tQ=3&23h8Bq zA64b?l`N~jINj2r^~lc4c5vEQSR;t)k9O3a+AS|be*Rujek>R+77%RTY7ZIjw2ES% zekx67@2OE<=F0|t;>CQmE)Y^3E56#)~d-RQF(74Lu@~D%{{tqp0k(0+W{_LGB7n|3p2x* zUJ5!191LpM&EnhWcQ*jGR}q-y>ZA><^;FpKXe5>oiw61CY^FeX>#+#?rJa{tfyoVw zX=j%)L%8jYUWQ)gaVDtfobHbG<|GuIlak2qlV-KN$>}aVAz|RX(l0}1Xo%>I{r&w> z>jVlFk(OO4w-1P^dx+?#O0=OK`*$*Xf4VZfCaNllmK$=F972bKRJp}ijq!2}Hq0y1{;=>$!-N;#*z4;M#2o=U-5PbM0sH%o^fdfjBwgrSs^>VCC~*9g;P| zxVb0QOmKfQl_kru=^@M8!|?KQIWx0N9n94=F_gBKv`1ab!Ggi=MIWiA z&C|9i)J&A6%un0c5v-c^n#29CLIp3dK0aqLeLdtJ3+sNRJdn?_L8)F1bI|9QDi-Xk z+hPBrvE|1)Wro1fEU$JM~%H5<+C>K>p4aXiYIy(PdokNEjhhPd9@ zWvx{2dp^S1Q*B$$=w1zj#Y?Mzy*sEi<+q-sDY$!VyUxs<1bh(gz@>V+yAK@{=k2Gg z9-vw&HWg%Q4I<|!;ly6d_*psiI)U}3ZP*Y?_Lc1y&bo-EFCjx)5P z8kg6+s(TL;74uL}EOt@XxGZYMuKE0+UH=m!>m*Jo*?}^ih{VzvjWd?VhjvK{Au&MR z-8c!reD{c|{pKu)AUDx4c)`{xDJq?~qeu&^S@osRIA?tLYMrX{3(8J*JpM6uzmCO(h*?VG=eNjug@7oE%S5AbgSR))GV6((oEl3juM zau)L$$gknj&A#gQok~1%AhavO?KiO^M8`2hamnj_D(;bq&^ptIP4IIXGYZWvg+;H! z;$BKug94)r=eLSRh-=10XR=?glGR15^vWNihU6fw&9*%4dX2R7R*Lero(==vkr;C9%{oEn0vxhhe33~?XGD{={I=|&Vfq^P z+h?5|3()f`x8sUFs`B(6_7Vdwq}0?~(y-6IqjSsxT9(S(h7!_XCxO0|SYgI?0zzK% zv2>1%;;y-yFZ2(lL~vo)J2=+_0(fwjH53N09y9tiVEm&v|F!`B&@uD!JJnltr=~me zt&a1dOydm44xJ2;4&ZaF)Lz^EI{MxRn*57VM|&tw7+oe&l8nHg5c?R%RMi*LE+Zfd zVBHWpfv>oAvsZMaf;X9gudBX0x%vp$OTK;kwmWVO8`Hgj{?jbbuJ@@eD=Qn-4I-+a zx8AuY>QmE|wwin!K#fsp5~*@q(o{IdImYQu9<3Ye2^OiH@ood>){bL=UdbHSfbrTe z7i%DOEv89Pm9@J z7K!x=ZVB~WLB@q}J{Hv1$ZHHyZ`6#DTTl>t>%sF;hE=ZLzJW!u!<$_>&iXS)O>w9HwLe87fQm&$jeqL!`3tD}1r>OMtNO9X*E#Irp&_7ToxY1>%1TNG z?sg?FKA^Akb4SIZtPw2}wi<#8ta?WxGy`$8OShtvpE>Gi~x4Hau>^OIFs_=~c z^~TQ+XJF+nRGmRA8F;~GvWD>Ztqhxs}7>;M<3Rm@n>VgM`q!T7wv3BkO-vjT_ z%B%~)@}M}#hC9>`0xb`*wb0ITQLN&QTD?z9Y>|S*M$q@T+^&xjwBADNjLUZ^}z&?HZf(!?awm zc5Z0RTX3h>0@KfnI*@)qjJeF4?{)@f*{Y3}eG--=7ci@!2Cy}v`J4XuVDLMeK&}{+ z6+yop;i=S8(2A!Ba`9a`6DaAJ>H)0}?e_f2l40K)_4txctxdSqWerfD8|q-3XNL*n zTK4;jGF;eSjxtHm6|4M1J#$@jbz{;9A%z5D6yrT*ee%xWUS)5g6Lm=Dx*#Y4`$)fh zYt38f9u_t?@RF>c$n%YIUF6c@ynD z5O&3;ZOi~jceQTFVSjlJ+teV#%=oa;wJxN7e$WCPUx9SqUI%31jsKB_L&MzVtaoQ< zf{w@x-p$0x2>mxd8n)h@L9u67<*Ud6j*1*Gv(y@CcAH#QQ$H0jx6J&)%n3gvCRXrb z^?AqIy=ZA21)A&OdGjEspRcQr}(QipOJw2LR({DYOdN;tyqd&bLT9-OKNSjgpbWA)T940J^ zH7#EJHH3>0(s^oU#<6pl(QMV$65Z2=1=45{F(CR z&llHZTgV!PdUW~$eguUko}GJuwfr}8ZLN04cQaP<&KKI+dA|kWo0jdU{;$`}%U&av zh10E6v%FJ)qXKztT~XU9UDz>x=RA?F_DQQ`Y+)~aUdZDHg$xQM1J&~>c#aQ^)y)di zEQ@V(wQR&OhJ`LMoMH7D?Uh4a)IxX{?USw!acr#sc<=@nI-m>zEyeqPrVJY$ovIU1 z6gUcsMs~0K>Eiwqtwu*13k56o50W{NwlUg^#-kOKmTjoT-vB)KGt0)5?B9yD0 zN?2hoTm_eASX6hC(z*Re#f73}zH=OB%<4FS^BCriEepmOR_Hx(!>$$Vd_wC0oWhm0~5gh|~_^-N z1L)RQ^Id7=UD{yD|4_Wu%J#7#^`$Sy%gJ0-trx;vEA5wcDi_`!SRJqT4a>WMcbica z*1n?hHX|h_emm1c_VCf)tKF0LuxK8O$Y@-HJGAQNS)v*-0>>(RHBw!9XWpLgu8pdT z`QMA(l4howXjpbEQT@WY>iG0v#;%0`Q?On-$^TmFJQ17W|G9({y^*}H#>D)Y8ruM; z3V$oEgSx(0k>L16N|&tnF$B%DvDP*eH3Ic`)NEbzN+2o-=If-MHIiKm#J=~>$4cQ&XgPa`%I1$+CtbGT*DiEO@65-+ksdIH9OAXF z@-h+dG%t_e%!ZG_UKH>tK0sAOfC#(Pf zBJ+(wxqmKq^>g6ov9pji9`{(-DFOU5M}?;jX)f#xmz>Taoff(*zGKj9ImN*VT3?pm|4Vv%%_b)ZI6%*;(4$ zf#z5aK~HJ82oQD9Na^xs{|fu+K-FTiwSbZHdYnI|YJW@dx-sbA;^69BLGrS%!6t_p z5bQv*pUUk+|`s}QO4Xq^956_BxOE*2Mn;^iIr=y*#enA+^%8dUpo2LKRRg( zS!~C&7F^t>e$oZSt;k*KznoyRP3f#KOZfLZpRtDnkufSj7fyIOEq*uFAE=ZnJzKP4+@qj3&fA3`AblUrBvAGs_U=zQH9n2_yz=1VlFC}b79$+ z*>cYb%_E}F?*TG~s3s7Zqq-jRT(hIdpUY!C<7-iE5xq!9y~koiMHnSmtUw{m{ z;byqicGJavByVF-1M@)4slbJw9lVdVjbLi$w)wSf9nLOH4A2<8ai^)(Ta{-}j4Ll| zHH}T{hBeL~v^YuVlP>H-9uJXNt$oJZ{mGWd9@BT`h z(Yj>H&C)n;UwlWNWpXVo+1YJ=0Ad3pzh`@0(+(q)?N3JhuU6o8S>T-gdx0!<&~4F| zXS^EhIqb1-hwca2t&S^=fxqP3G{%}ewwfGQw>jILplP|SH6OAqyW+h+k5}t=B@!$& zZk=S72QEQY;yrlvXK&NPUcz&A*$onP*x{PD{=G(`bH_QnsaQ3CUTfMD@m{j86;N_%mwc8FZVW+yGXG*e>4;-X@7;|@znM=_XmShzRl1`=g|Ox% zxsGH{-N~xeba5=AICVzX>;N5RW4yZxtuzKnRAiW~wPbxZ@ zc<_^O{U3p|RQFN^WGz(Nc3mi1ma^xm$@1~OZWXbM#bt*4e~X+&3W^Q>ikv0kVj{KO z72j%Y8)eZy0v=lAZ>%5Rl8~YOV-vilJzR;~KabN6f$i-iqTl+kXatM-zURLqXliFH z)7}bz<60#(j#KSY0Ns(KaGd$Uy&G{psCHVx`m8EC&FyNt`!juK}+ur_|lx? zMM*XydlcGkbGjwAU1Pt4X4$S#84q~vlJdVYC@-}$o$>Em+uxEn3xlT_1Y zscfLH8rS$I{mDOp8<_P}uU`4l;v!0rPaqKCj6;&VBEtG;gFYuX(_ z@Gci*`<*)&SeW2D-Sx3mH%p1p^zb|Cz2ujMi>T%I%J$5*W5_)@=y< zeA~0_e)@0*ezkm=dCtcIUtL=Wr?09v;6ulqpr=$*Gf-w^$t;1DM;XRK;daF%C59eG zLt8?h8PNp}g?@0nKOEv-y#rLV=bBsb2%8OzO#j~7veudT<>Az}zH_N@f@3?cj2ayQ zH+~uHFU)`EM_XYgN7)}|Gh2!M!Xj7XPvc(^=Tn)I>%6=g@VQ1ZWY+MT47d#6tTP=E zbW5=eA3~xQ>0VI!w$cX?OjC~+>ePyPR6b;VHMKaNN-qxgGqmGhB1FD${Zp{F^d$)P z%Ueb>pO-<^{l}7K`dHj(JKkd%HfmjS%WInrih!pZXs|UG9uX zWVI$zKlu~+cAgUN{(BaQ`a##CGOsy-YI9dQNw?BpT3vN~zgTCyK!ry~HDAKpCaH&x zyqSvRS5GilIpdxO;wL>o{Dj;2b8TFL<D62x z%QVWrsd7D=0h)|rtGqf)`nL`JsI~9&0!e%Rq}D-_+XTb2CgRfaTBR3rWloIn`9KTJ zEBD1*+96a{zoKI7v&a$kh&;6P+3y@#mc%Ov@^;V=`L6d9`81{f#dH^PONYc1{?4H2 zSQAB_eWU#&gVKEAX!m*3&sX%ze^c%SF%hc2GAP3)_UpegD9sA8hO^BIq5my|V*Gf{ zVOV4D-W)bF*&)Z7KX48>_wQj1Ei1{}WI}pAN8UTX2`+GZIaDKaQG3ixp}!}~%*tFL zKQ%B}sj3fhs;H@6f|WS0%lG#WJ#5Z*gG9^Zf||cX+!OHBSqgVK?8-te-Gu+sh>Vz=ru~!c%SNw{o3}w2g>G-`q#JG-~{%u%m zL-q0iOvS(ubVP2je3mFMqTQ`S@j_U2TJJKQZR{+lOI9$nP?k#1xE*wpPbtT%%r|CaW9tvvE@o3TluUyM@7 z8-2qeL=?#C(4;pKoovR_M^{j*yW83h0@!kDOHhKl4slPm^))(O{ZRR5?nZSK7>UNo z28yuaei1KRcfT35c&y3yvWe#jkWC$){Dkyq_1pc_KRjfKEe`=jQ>lZ;!HF7xXvkASvEzrWLs`O z+W5Qfp{EE>FqogO45xa(Nv27&c?;f*_oL8(=M%qFf6d{b^g{%oJ2PQ3>0w;g$a!?| z;=|*Yfh8qnZ5-i*02Z(n{^lw>SLSLT3%Iu*wU+6rX*-_WV8B`!G-hz z8>gl6fv{p7f4!1C%CL>EF5s?@G1uP|DEeiG+Z-yGf+LGf+)#YO`TWf?@a{oxba4sF!#;4h2t>G3!LCMfgzg8YUk;A z?Hj|X65o+FTXH_+fRu?>pr!9XM+($)y?7cjNp9}<4!gxh4{@<;G*AOg7<}@=J?z3L zgv9+B=a(vN#TQ>m&Dq!D!x3SwET1H&Nj!u;{++q8)a?TjH-FFeJJ zH*3Qa>=opYG#-@?z@avmyMfjk34jS8#PT03D*#Lk!N6`XHrnHU*CIE_4$*&riU#{I zWx3vk8)+T%VCz;@1boBGnF&`|m1Vv}Fi`^nUCx-p@JOlDH0$e-e1A5zI>`+N1EF4y@I(0d zHfN4^Dwoy!+L9|Wk>yuG_O7x#d$szK{nk1mRs*_1pU=Q`fHt=`cj#9~F=%H(UU5bS z6npk4CHXt@7@O|=gcy86jnU!ji0G!!0s|(}EjCsCgcz?NdL}f?zk+q7aZK4wgSNU* zQ~3-q_C+J!_UNlq`LP89!~#iEa!MbcIQTy|t9P%Qs=& z2@Q+6MYJm;g`M){Os0x)^Ap+9f%d~bt%d$nnmki`VH;cevZ(<-)ULs zk^ksQJ=D=)clL6Op;dgTKZ0NNnlO&a_q96N$5ARh5)6}9*sZKpeCIg@;*&Q8zas`1 zqvl)t*k8vlId#Y+M$H!!q1vvj=mqYlX@4hX$9)cbS!nCkBRa@#;%R^|itlXq&p_?k zZtV!TUfEmb$y|GSm(5%BYcE9h$cIEXwuw_%2V?N!zstHixu*89g5O6>?HW!HimHLQ z10CJ{DMc%b`($@&DHqOz4lG_HuTr>858gsd)E$q=Rp5 zrLX++Q0D4B?aIE5Q5Mm@dk=^&ogK{v5-t`s6U0op&4AcvPNxr{1qI)x@3sFUMlv#! zB^cqW;{r`Z2{dS{QtoTUc0LaVGoEtSp+n{p436DpNVE zRZSokuUl@Tdd!m&Bf;?V`2?mNc(YdIN1fs~i}@QjmYQ}FFU9JE5pV!E zdTq6kC@ZX8x#J&xWOy`k0Y@)aDOpTP=O~@D$FHLC?(r&+v4@G~Zym3sX{D{Cf(uX3 z+bP|W6;cE=mwOU`7$!lGC30iTN@8|UT^TOF;7#d!wqup1^|aaSnl2EXzGPb-PhBsp zRys#T#p=vfPAfzozMU+etX`%p25yUzuPciO)VxF^RXboaxCWR-@PA2kE~6*;3o6<=(n8K7^wJ~lR0YwbkG@}MVHm8fuDRT~3u)ehabb>m-d!N4)!%5S28 z%84FG{mH;e@TFbdv3a%mjsuW=7aJ|U58fzN)78CNJ}iiZn656_e&y${@~=;ub>012 zO?%?GSXK`D`1!-PtS3sdbz47-28)a!RkeHDB8Fd&m67oAivLEb4J>K>UCtL^s zR`)Dm_R*5>kD5d>qssifZ7`*}OCZNAsNn^BGK?;>ibl)FWdlm`gRNg!PTH#=KlMJP znu<}W00EMXgD$EVlMu{z3Ho~1rCWcFus>zHwx=Jd1NQVI_5aW8X@A7NR{C}wh^YfE~{{DXB-?YR2>}cn|lS_+K4@Q%}uVb&n_Yo6%R#pb&AmO~namzRO_n_tFFP^`@V+4V=|JDl04s8@&tXHuK%>?YH5X*tF5!;F>M!=4D#RuXw z*N$YYmVWN=N?#ghN=iz}<;7_}f`Z39M;R-983@&UY-@YYfATW}2%t)3sDjyfwwnk9 zHy$nRBzr6;Tph^GQQpfvgm)j%&>&G_ef4WPB z_o?f3cTq@wsybWuYNpe+6Cnf2IdQKYbGaZDoknpj=Z9swY+-cO8pC zs;YD2zjFACoiYCkw}z(u=}Mx~zO)j2$kVF$Gw%AJP5|gIK}+3`eC7MpQUp}wWQc>t ze_YG95Yk2g*Rp@#*BBc@0b==Gk`Qif-u@0+s~%Nj473g_kMo0(%!~}le_z+s^&Xow zQA}qgQ9NmtI{W{B{N?|uzx*3s{t6aswGdVWt!DEG+Rt=hu2AB6%GwS9bAKOU`#&iG z{b@OA;Nrcn&*U}k-7PRf%jLfHPP2FJR}0ce`w>DM#a7@8XuOJF_6lNn`;P#Z>rv?| zTJ$u2jLKn*LHqbX7D5QNHD-|(dpHeNW_ORq79z#hf3ZLRjx*0&9>NjJH{+%5bGAU8 z525zJ9zXpN=>ttI3GgXm)BCDoSGCGW!S4tKu_kP8+KrXHim5fjpfWfBiXw-cFVk@~ z6OyM#_o!HUWobJ!yFQ(xTy?AdV!d92Qr+jMnL5wSe^w|XJdjXibXrp8HE=)gz4OjM zgYYLCJG*AL&nbdw=D62wu&$e23PRLfGV>3Qq z2k@i|sLX=*@Z{v~Jc^oKSU2F3Xs^FGfUPOoZreTTIGl7+9s`1YOF0=4YG|jy2>F>9z;c(51vlUUM)WWl)g-BLqc1;Y z8VFR-0$iC9iPqpQPJ_2Jw@zBABWsc4-P1`ax$4<@b=y=QfU&M|P8%SWO_io~xycCR zd~g6ihuZh7_^wUvtgX3zO=geO84D|GZ2J7pZjp4Lt(T}eR(xMjh>tN(5W$U`TxdjW zK`BI(703n>@6F1U4R$v%_ql^lGcN1HW0^twgzsAkv7Kt-F-Zt|Z<>v+n5F31OxI}R z%ed2To2yO8;h%GVko}r0)<9z#Z|X;$=`S6$WkLKj2$KJzproRwVTtjG>coFkd{U*n zoeKQ$M{~x))OaA#JEdqlq7_Y1QXB z>K~_*9E~;LF`=Uy@5RErp4BRocaPK|pDcZ9TyXr1`3QaVSi*&5|7JhdLzP#jH=BJTwAEabVPSB$EB|IdF8sB9m?nYC5YdEEc!s=bN=^g+ zQ+HY^u4L?C9NOyA4nl}_o$cyO`dZF}N;I*VZ=C;s#+jLA+Bl@a5EO8Dl#hsh(N;q3<_SA01tflMm^f=W$@rhaia075 z2HOJ?Qc1u(EwG1dR?Ws9#Y24t0}cp_4rjyzaesY;VJWSeeRqO!@M%3}0@IS0ivkEd z>!}4w691{MTv;)^PKk-QcO5vrgW;(4E$0rXXik^ib(Q0Q{_W-4#+U@;`-L`{xUt;) zd~=jNQuv$L$BR^qJaub6^A6BxH7SApel+)w8Ba(&yE#E93RMPU$mF1M`7>d|&E0ZPh#_l!gB>m{#R|_x zueKHpxEAnvMek>OkH*d>-iw?8F~;+QvOK_{1#^gv!J)hKy<}wz1x5m!tByAztS)?m zWB&)O1mSS(CV|UU8=0osK`YvuQ1aBQ=q4Du<1_6olm!1jW3j#!D*Q;7nz_tl(I+rU zRJB*&27InVh{+cIH%Khg+>51~s_~oH8P6LW+GSZ*OTC_c~>F zQdt&LM-s=y-UfbQ#M`>$g~Q%P*G-zJL>ooP)8g<@kaeqD_mMmT{O$cV6LHsR7nKcj zd;Mhj794qSa#IN7%7?dmsuvwAV@Z8{2Uu1CiV@%V*VWIU^`7s{xeF z@b>wga&U0}FH_V`I{k&$(4-1B$`Krp+ z#RcJGi}`lc%NUcVATVaSpEHv3y?w^(t%w^JhE=`&>O_8-0te_Ef1I8+YrMZ=YAV&c z*`$NL3(^3#H%c0=&1M|I=R#XBm<5xQ_n#U~_1UZ#GED(X%kh#f+!L^BooA`STpbB6 zj1R39j5{092dd(aZD#ilnSkLdJMGF3X~C<+FGO$z$hGwB^Qvp;_|5tPcmsk^MK{W& zB`sfphqZ#@Uplh7Fa+El&xk)bV$V+5xgy(lB|3ys#A*l^X}JBdJ=;KPEDfDf%)q~d$xJOlt~i?dr*crEV$W7 zu)gHk@_+gXOuUp{PN~qLn?+tjhW;vd0prDumA+|k`@M?8%M){Se|(89iEB$1?6cZb zuC0$`*if!iL*For)(eI1<12d#>;h6lhehCi2f&FX?|Lxrf3t?+Dg4!-c_NF9D>fa} z*2gP8%ah`sFXGL!YLt8Up|Ev+(G8BZ&xRIF#k00nz>IX^3Li3KzGa zmvh`HM(V$9$M4c;c}(#;ovG?#(~9}?^+t!#bO<0d&lPTT4%oh%9ZcMPn+jc-!Uxk_ znLi_NZzAs|R#!*f6+-gmfvqSaT=%c0pbhToVvX}g`D>-~(CA4}0$Y=@Wqtbn?Z|hJ zBLBZ{<@AR*o}G3n%`fV!qUs4&GGp%OwZ!r4in7lRhim=qN(Hrr-eo$Eh;!|2(;XF3 zf1GN5KEFi%lUgO)<4OnSnq zlIp=e-ksk-NE(V#4k)~Hk)6BTt7cU+8Tjh?n#K!7Wf=Zb{C3)_4ox)P?F#v$Z8KB= z!cGlR3F@z-94LxAB}cNfE;^r3d#|*|-Yc^`+jNqeB}99n_tKh_K&VSGHq#^FsN-5{^>R{n{@lrm!g|#q`RT@)y`QTd);PIV?wUeGb{4JOFwxA4XfBV1PAHiM zU`%m&{_nc;0`G>DwnlpF>nDCPmpIS@JCyQ!u%GY&w*6(kbM|to5u{m#H2#m}nEaEgrYaEVpDy+<@e5h!7wX+qJYpyLtxE=k8_mWEYz~L`vZ_POhjzqQp znABouIs(AAVjpXAYL`Q%Xr6Ez?ML~^aPdz2?J`QpKc=%~mEbo%fbe7|n&-H+cZ-zJ zS3*`Vz?VoLfFtl(pazQQbh0aUD_8EyiSH6p86IfNvy4}rjd`~kxR(_1i!$>VMzlX= zOes0ps`zYL@6L;`F+Iw5F~*q;q|V(FU;56RsuSq7O#Kc0(8%N&Sgqjpjf2cG_R#t_p$;~s(k45lXPQMJXmNowJR75%!u-tyEz^))6(&~ zP$!erNe{Hq%q#6Ep@L8Y-$n(0p$X<)FAAB`anfV$%^V=X! zgQ(p&M$piMM#|NI`ZbkUgOTbtSyvn3^U`vN@U|y|k$QI1D}4m*(fa6;w7`tU8D{a1 zNk=4f>i4B+pPwl>p~|*S5*E{(H|sX%3lr#%hneljDD(4wb!D0i!a~_?}&unx8$00oV6TSAgt8?ve6R%jB)~(OVvo9izY4Oc2WAA>d zbr=!(9DK(8GV=uX3ZFXG)Ikgz6Obu@G4It&{~#&-u;9M!uGIJjUY$1?%pJ{-3cbD@ zv_^G57#gce><;ZpR0Wlh$9eMJpLD#ce;sy)A@HW4d^+>RHII;Ss@XH0GGtc}Hg(~0 z4OPG6ZDUGTJ56j>2pg*Ry$VavL6JaSkncC0a7O6WL%Gcw)2E8aFP%dPfGJCaS5d{p z1s$u!#1rVh8*@y!s#d%=7y%Ob|5wWD-dc`{zhblE+}#5GC5{p JP=Gxf`X9PdJmLTV literal 0 HcmV?d00001 diff --git a/docs/gemstones/string_color.md b/docs/gemstones/string_color.md new file mode 100644 index 0000000000..12a72219db --- /dev/null +++ b/docs/gemstones/string_color.md @@ -0,0 +1,92 @@ +--- +titie: About the color of the string +author: tianci li +update: 2022-09-12 +--- + +# Introduction + +When we download bash scripts that have been written by others in our daily work, sometimes some key strings are marked with special colors, How can this effect be achieved by writing in a script? + +## Font color + +| **color code** | **describe** | +| :---: | :---: | +| 30 | black | +| 31 | red | +| 32 | green | +| 33 | yellow | +| 34 | blue | +| 35 | purple | +| 36 | Dark green | +| 37 | white | + +## Background color of font + +| **Background color code** | **describe** | +| :---: | :---: | +| 40 | black | +| 41 | Crimson | +| 42 | green | +| 43 | yellow | +| 44 | blue | +| 45 | purple | +| 46 | Dark green | +| 47 | white | + +## Display mode + +| **code** | **describe** | +| :---: | :---: | +| 0 |Terminal default settings| +| 1 |Highlight| +| 4 |Underline| +| 5 |Currsor blinks| +| 7 |Reverse display| +| 8 | hide | + +## Mode of execution + +* **\033[1;31;40m** +"1" indicates the display mode, which is optional. "31" indicates the font color. "40m" indicates the font background color + +* **\033[0m** +Restore the terminal default color, that is, cancel the color setting + +## Script example + +We can write a script to observe the color change. + +```bash +#!/bin/bash +# Font color cycle +for color1 in {31..37} + do + echo -e "\033[0;${color1};40m---hello! world---\033[0m" + done + +echo "-------" + +# Background color cycle +for color2 in {40..47} + do + echo -e "\033[30;${color2}m---hello! world---\033[0m" + done + +echo "-------" + +# Cycle of display mode +for color3 in 0 1 4 5 7 8 + do + echo -e "\033[${color3};37;40m---hello! world---\033[0m" + done +``` + +```bash +Shell > chmod a+x color_set.sh +Shell > ./color_set.sh +``` + +The effect is as follows: + +![image1](./images/string_color_image1.png) \ No newline at end of file From 3133b04f4f578cdbafa2bd6f9dc13ecc1578e4f8 Mon Sep 17 00:00:00 2001 From: sspencerwire Date: Mon, 12 Sep 2022 08:25:02 -0500 Subject: [PATCH 2/3] Very minor changes * fix one sentence structure issue * finish meta plus remove "updated" meta which is now automatic --- docs/gemstones/string_color.md | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/docs/gemstones/string_color.md b/docs/gemstones/string_color.md index 12a72219db..8bb4207261 100644 --- a/docs/gemstones/string_color.md +++ b/docs/gemstones/string_color.md @@ -1,12 +1,16 @@ --- titie: About the color of the string author: tianci li -update: 2022-09-12 +contributors: Steven Spencer +tested with: 8.6, 9.0 +tags: + - bash + - color --- # Introduction -When we download bash scripts that have been written by others in our daily work, sometimes some key strings are marked with special colors, How can this effect be achieved by writing in a script? +When we download bash scripts that have been written by others in our daily work, sometimes some key strings are marked with special colors. How can this effect be achieved by writing in a script? ## Font color @@ -89,4 +93,4 @@ Shell > ./color_set.sh The effect is as follows: -![image1](./images/string_color_image1.png) \ No newline at end of file +![image1](./images/string_color_image1.png) From dc82b4999a50e422bdcace7e4cea20c57f9dd64d Mon Sep 17 00:00:00 2001 From: sspencerwire Date: Mon, 12 Sep 2022 08:26:38 -0500 Subject: [PATCH 3/3] Create string_color.md * fix one sentence structure issue * finish meta plus remove "updated" meta which is now automatic