ç§ã¯æ æ°ãªããã°ã©ããŒãåªããããã°ã©ããŒã§ãããšåžžã«ä¿¡ããŠããŸããã ãªãïŒ ãªããªããåãè ã«äœããããŠãã ãããšé Œããšã圌ã¯ãããããã«è¡ãããã§ãã ãããŠãæ æ°ãªããã°ã©ããŒã¯ 2 ïœ 3 åã®æéãè²»ãããŸããããããèªåã«ä»£ãã£ãŠå®è¡ããã¹ã¯ãªãããäœæããŸãã åããŠãããè¡ãã«ã¯éåžžã«é·ãæéãããããããããŸããããã¿ã¹ã¯ãç¹°ãè¿ããšããã®ã¢ãããŒãã¯éåžžã«æ©ãææãäžããŸãã ç§ã¯èªåèªèº«ãæ ãè ã®ããã°ã©ããŒã ãšæã£ãŠããŸãã å眮ãã¯ãããããã§ãæ¬é¡ã«å ¥ããŸãããã
第äžè©±
æ°å¹Žåãç§ã¯ã©ãããã°è±èªãäžéãããããšãã§ããã ããããšèããŸããã æåŠãèªãããšä»¥äžã«è¯ãããšã¯æãã€ããŸããã§ããã é»åãªãŒããŒãè³Œå ¥ããæ¬ãããŠã³ããŒãããŠèªã¿å§ããŸããã èªãã§ãããšãç¥ããªãåèªã次ã ãšåºãŠããŸããã ãªãŒããŒã«å èµãããŠããèŸæžã䜿çšããŠããã«ç¿»èš³ããŸããããåèªãèŠããããããªããšããç¹åŸŽãããããšã«æ°ã¥ããŸããã æ°ããŒãžåŸã«åã³ãã®åèªã«åºäŒã£ããšãã90%ã®ç¢ºçã§åã³ç¿»èš³ãå¿ èŠã«ãªãããããæ¯åèµ·ãããŸããã çµè«ãšããŠã¯ãèªã¿ãªããç¥ããªãåèªãåã«ç¿»èš³ããã ãã§ã¯ååã§ã¯ãªããäœãå¥ã®ããšãããå¿ èŠããããšããããšã§ããã çæ³çãªã®ã¯æ¥åžžç掻ã«å°å ¥ããŠäœ¿ãå§ããããšã§ãããç§ã¯è±èªåã«äœãã§ããªãã®ã§ãããã¯ç¡çã§ãããã ããã§ããã€ãŠèªãã ããšãæãåºããŸãã .
ããã¯äœã§ããããããŠäœãšäžç·ã«é£ã¹ãŸããïŒ èŠããã«ããããããšããã ããŠã£ãããã£ã¢ããããã«åŒçš:
ãã§ã«æåã® 60 æé以å ã«ãåãåã£ããã¹ãŠã®æ å ±ã®æå€§ 10% ãå¿ããããæèšããŠãã 35 æéåŸã«ã¯ãåŠãã å 容㮠6% ãèšæ¶ã«æ®ã£ãŠããŸãã ãã®åŸãå¿ããããã»ã¹ã¯ãã£ãããšé²ã¿ã20æ¥åŸã«ã¯æåã«åŠç¿ããé³ç¯ã®ç·æ°ã®çŽXNUMXïŒ ãèšæ¶ã«æ®ããXNUMXãæåŸã«ã¯åéãèšæ¶ã«æ®ããŸãã
ãããŠããããã®çµè«ã¯
ãã®æ²ç·ã«åºã¥ããŠå°ãåºãããçµè«ã¯ã广çã«æèšããã«ã¯ãæèšããå 容ãç¹°ãè¿ãå¿ èŠããããšããããšã§ãã
ããã§ç§ãã¡ã¯ã¢ã€ãã¢ãæãã€ããŸãã .
ã¯ãééããããç¹°ãè¿ãã®ã¢ã€ãã¢ãå®è£ ãããå®å šã«ç¡æã®ãªãŒãã³ãœãŒã¹ ããã°ã©ã ã§ãã ç°¡åã«èšããšãã³ã³ãã¥ãŒã¿åããããã©ãã·ã¥ ã«ãŒãã«ã¯ãçé¢ã«è³ªåããããããçé¢ã«çããèšèŒãããŠããŸãã éåžžã®è³ªå/åçãã§ããã®ã§ã html/css/javascript, ããããã°ãæ¬åœã«ç¡éã®å¯èœæ§ãç§ããŠãããšèšããŸãã ããã«ãç¹å¥ãªæ¡åŒµãå¯èœã§ãã ããã®ãã¡ã®XNUMXã€ã¯å°æ¥ç§ãã¡ã«ãšã£ãŠéåžžã«åœ¹ç«ã€ã§ãããã
æåã§ã«ãŒããäœæããã®ã¯é·ããŠéå±ã§ããã°ãããããšãã®ã¿ã¹ã¯ã®ããšãå¿ããŠããŸãå¯èœæ§ãé«ããããããæç¹ã§ãã®ã¿ã¹ã¯ãèªååããããšã¯å¯èœãããšèªåããŸããã çãã¯ãã¯ããã§ããŸããã§ãã ãããŠãç§ã¯ããããããŸããã ããã«èšããŸãããã以äžã§ã ãã§ã䜿ãããã®ã ãŠãŒã¶ãŒã®é¢å¿ããããä»ã®éçºè ãé¢äžããã°ãæè¡çã«æç²ã®ãŠãŒã¶ãŒã§ã䜿çšã§ãã宿åã«ä»äžããããšãã§ããŸãã ãã®ãŠãŒãã£ãªãã£ã䜿çšããã«ã¯ãããã°ã©ãã³ã°ã®ç¥èãå¿ èŠã§ãã
ããã°ã©ã ã䜿çšããŠæ¬ãèªã¿ãŸã ã å€éšèŸæžãšæ¥ç¶ããæ©èœããããåèªã翻蚳ãããšã翻蚳ã®ããã«åŒã³åºããåèªãããã¹ã ãã¡ã€ã«ã«ä¿åããŸãã æ®ã£ãŠããã®ã¯ããããã®åèªã翻蚳ã㊠ANKI ã«ãŒããäœæããããšã ãã§ãã
æåã¯ç¿»èš³ã«äœ¿ãããšããŸãã , çããããç¡æãµãŒãã¹ã§ã¯ããŸããããŸããã§ããã éçºäžã«ç¡æå¶éã䜿ãåã£ãŠããŸããããã«ã©ã€ã»ã³ã¹æ¡é ã«ããã°ãã¯ãŒãããã£ãã·ã¥ããæš©å©ããããŸããã§ããã ããæç¹ã§ãåèªãèªåã§ç¿»èš³ããå¿ èŠãããããšã«æ°ã¥ããŸããã ãã®çµæãã¢ãžã¥ãŒã«ãäœæãããŸãã æ¥ç¶ã§ããã®ã¯ ãããŠãããã倿ããæ¹æ³ã誰ãç¥ã£ãŠããŸããïŒ HTML ãã©ãŒãããã
* ã®èŸæžãšã³ããªã¯æ¬¡ã®ããã«ãªããŸãã.htmlããç§ã®ãªãã·ã§ã³ãšæ¯èŒãããªãã·ã§ã³

æ¥ç¶ãããèŸæžã§åèªãæ¢ãåã«ããã®åèªã 峿žé€šã䜿ã£ãŠ ã å®éããã®ã©ã€ãã©ãªã®ãããã§ãç§ã¯ Java ã§æžãå§ããŸãããåœåã®èšç»ã§ã¯ãã¹ãŠã Java ã§æžãäºå®ã§ãããããã®éçšã§ãã®ã©ã€ãã©ãªãèŠã€ããŸããã ããã䜿çšãããšãnodejs ãã Java ã³ãŒããæ¯èŒçç°¡åã«å®è¡ã§ããã³ãŒãã®äžéšã¯ JavaScript ã§èšè¿°ãããŠããŸãã ãã£ãšæ©ããã®ã©ã€ãã©ãªãèŠã€ããŠããããJava ã§äžè¡ãæžãããªãã£ãã§ãããã ãã®éçšã§çãŸããããäžã€ã®ãµã€ããããžã§ã¯ããã ãããã¯ãŒã¯äžã§ * ã®åœ¢åŒã§èŠã€ãããŸãã.chmã倿ãããç¥ã®åœ¢ã«ããããããŸããã å ã®ãã¡ã€ã«ã®äœæè ãããã¯ããŒã ã®ãŠãŒã¶ãŒã§ããå Žå ãšãžã㯠圌ããã®èšäºãèŠããšããç§ã¯åœŒã®ãããŸã§ã®ä»äºã«ãšãŠãæè¬ããŠããŸããåœŒã®ææžããªããã°ãããããæåããŠããªãã£ãã§ãããã
ã€ãŸãã* ãšãã圢åŒã®è±èªã®åèªãèŸæžã«ç»é²ãããŠããŸãã.htmlã, æ®ã£ãŠããã®ã¯ããã¹ãŠããŸãšããŠãåèªã®ãªã¹ããã ANKI èšäºãäœæããANKI ããŒã¿ããŒã¹ã«å ¥åããããšã ãã§ãã ãã®ç®çã®ããã«ã次ã®ãããžã§ã¯ããäœæãããŸãã ã åèªã®ãªã¹ããå ¥åã翻蚳ãäœæããããšãã§ããŸã *.htmlã èšäºãåéããANKI ããŒã¿ããŒã¹ã«èšé²ããŸãã èšäºã®æåŸã«ã¯äœ¿ç𿹿³ãèšèŒãããŠããŸãã ãããŸã§ã®éãXNUMX çªç®ã®è©±ã§ã¯ãééããããç¹°ãè¿ãã圹ç«ã¡ãŸãã
XNUMXçªç®ã®è©±ã
ããã°ã©ããŒãå«ããå€ããå°ãªããè³æ Œã®ããå°éåéãæ¢ããŠãããã¹ãŠã®äººã¯ã颿¥ã®æºåãããå¿ èŠæ§ã«çŽé¢ããŸãã 颿¥ã§è³ªåãããæŠå¿µã®å€ãã¯ãæ¥åžžæ¥åã§ã¯äœ¿çšãããå¿ãå»ãããŠããŸããŸãã 颿¥ã®æºåãããªãããã¡ã¢ãæ¬ãåèæžãããã£ãŠãããšããã§ã«ç¥ã£ãŠããæ å ±ãéžãåããã®ã«å€å€§ãªæéãšæ³šæãå¿ èŠã§ãããšããäºå®ã«çŽé¢ããŸããããããäœã§ããããçè§£ããããã«æ³šææ·±ãèªãã§ãã ããã æ¬åœã«ç¹°ãè¿ãå¿ èŠããããããã¯ã«çŽé¢ãããšãããã§ã«ç²ããŠããŠæºåã®è³ªãäœäžããŠããããšããããããŸãã ããæç¹ã§ãããã«ã ANKI ã«ãŒãã䜿çšããŠã¯ã©ãã ããããšèããŸããã ããšãã°ããããããã¯ã«ã€ããŠã¡ã¢ããšããšãã«ãããã«è³ªåãšåçã®åœ¢åŒã§ã¡ã¢ãäœæãããããç¹°ãè¿ããšããã®è³ªåã®çããç¥ã£ãŠãããã©ãããããã«ããããŸãã
å¯äžã®åé¡ã¯ã質åãå ¥åããã®ãéåžžã«é·ããŠéå±ã ãšããããšã§ããã ããã»ã¹ãç°¡åã«ããããã«ã 倿æ©èœã远å ãããããžã§ã¯ã ANKI ã«ãŒãå ã®ããã¹ãã å¿ èŠãªã®ã¯ã質åãšåçãæå®ã®æåã·ãŒã±ã³ã¹ã§ããŒã¯ããã XNUMX ã€ã®å€§ããªãã¡ã€ã«ãäœæããããšã ãã§ããããã«ãããããŒãµãŒã¯è³ªåãã©ãã«ãããåçãã©ãã«ããã®ããçè§£ã§ããŸãã
ãã®ãã¡ã€ã«ãäœæãããããdata2anki ãå®è¡ãããšãANKI ã«ãŒããäœæãããŸãã å ã®ãã¡ã€ã«ã¯ç·šéãå ±æãç°¡åã§ã察å¿ããã«ãŒããæ¶å»ããŠããã°ã©ã ãå床å®è¡ããã ãã§ãæ°ããããŒãžã§ã³ãäœæãããŸãã
ã€ã³ã¹ããŒã«ãšäœ¿çš
ANKI + AnkiConnect ã®ã€ã³ã¹ããŒã«
- ããããANKIãããŠã³ããŒãããŠãã ãã:
- AnkiConnect ãã©ã°ã€ã³ãã€ã³ã¹ããŒã«ããŸãã
ã€ã³ã¹ããŒã«
- ããŠã³ããŒãäž githubãªããžããªãã
git clone https://github.com/anatoly314/data2anki - äŸåé¢ä¿ãã€ã³ã¹ããŒã«ãã
cd data2anki && npm install - Javaã®äŸåé¢ä¿ãããŠã³ããŒããã
- 鿢± jar-äŸåé¢ä¿.zip ãããŠãã®å 容ãããã«çœ®ããŸã data2anki/java/jar
- ããŠã³ããŒãäž githubãªããžããªãã
åèªã翻蚳ããããã«äœ¿çšããŸãã
ãã¡ã€ã«å data2anki/config.json:
éµã®äžã« ã¢ãŒã å€ãå ¥åããŠãã ãã dsl2anki
éµã®äžã« modules.dsl.anki.deckName О modules.dsl.anki.modelName ããã«å¿ããŠæžã О (ã«ãŒããäœæããåã«ãã§ã«äœæãããŠããå¿ èŠããããŸã)ã çŸåšãã¢ãã«ã¿ã€ãã®ã¿ããµããŒããããŠããŸã Basic:
衚ãšè£ã®ãã£ãŒã«ãããããXNUMX æã®ã«ãŒããäœæãããŸãã ãFrontãã«å ¥åããããã¹ãã¯ã«ãŒãã®è¡šé¢ã«è¡šç€ºããããBackãã«å ¥åããããã¹ãã¯ã«ãŒãã®è£é¢ã«è¡šç€ºãããŸãã
å ã®èšèã¯ã©ãã«ãããŸããïŒ ããã³ããã£ãŒã«ããç¿»èš³ã¯æ¬¡ã®ãšããã§ã ããã¯ãã£ãŒã«ã.
ãµããŒãã远å ããŠãåé¡ãããŸãã ããŒã·ã㯠(ããã³ãªããŒã¹ã«ãŒã)ãåèªãšç¿»èš³ã®éåŒãã«ãŒããäœæããã翻蚳ã«åºã¥ããŠå ã®åèªãèŠããå¿ èŠããããŸãã å¿ èŠãªã®ã¯æéãšæ¬²æã ãã§ãã
éµã®äžã« modules.dsl.dictionariesPath connect * ã䜿çšããŠé åãç»é²ããŸã.dsl èŸæžã æ¥ç¶ãããåèŸæžã¯ã次ã®åœ¢åŒã«åŸã£ãŠèŸæžãã¡ã€ã«ãé 眮ããããã£ã¬ã¯ããªã§ãã
éµã®äžã« modules.dsl.wordToTranslatePath 翻蚳ãããåèªã®ãªã¹ããžã®ãã¹ãå ¥åããŸãã
- ANKI ã¢ããªã±ãŒã·ã§ã³ãå®è¡ããç¶æ
ã§èµ·åããŸã
node data2ankiindex.js - å©çïŒïŒïŒ
ããŒã¯ããŠã³ããã«ãŒããäœæããããã®çšé
ãã¡ã€ã«å data2anki/config.json:
- éµã®äžã« ã¢ãŒã å€ãå ¥åããŠãã ãã ããŒã¯ããŠã³2ã¢ã³ã
- éµã®äžã« modules.markdown.anki.deckName О modules.dsl.anki.modelName ããã«å¿ããŠæžã О (ã«ãŒããäœæããåã«ãã§ã«äœæãããŠããå¿ èŠããããŸã)ã ã®ããã« ããŒã¯ããŠã³2ã¢ã³ã ã¢ãŒãã®ã¿ã¢ãã«ã¿ã€ãããµããŒããããŠããŸã Basic.
éµã®äžã« modules.markdown.selectors.startQuestionSelectors О modules.markdown.selectors.startAnswerSelectors 質åãšåçã®éå§ãããããããŒã¯ããã»ã¬ã¯ã¿ãŒãäœæããŸãã ã»ã¬ã¯ã¿ãŒèªäœãå«ãè¡ã¯è§£æããããã«ãŒãã«åã蟌ãŸããããšã¯ãªããããŒãµãŒã¯æ¬¡ã®è¡ããåäœãéå§ããŸãã
ããšãã°ããã®è³ªå/åçã«ãŒãã¯æ¬¡ã®ãšããã§ãã

ããŒã¯ããŠã³ã§ã¯æ¬¡ã®ããã«ãªããŸãã
#QUESTION# ## 質å 5. æ¬¡ã®æ§æã§åŒã³åºããšæ£ããåäœãã mul 颿°ãäœæããŠãã ããã ```javascript console.log(mul(2)(3)(4)); // åºå : 24 console.log(mul(4)(3)(4)); // åºå : 48 ``` #ANSWER# 以äžã«ã³ãŒãã瀺ãããã®åŸã«ãã®åäœã®èª¬æã瀺ããŸãã ```javascript function mul (x) { return function (y) { // å¿å颿° return function (z) { // ç¡å颿° return x * y * z; }; }; ããã§ã`mul` 颿°ã¯æåã®åŒæ°ãåãåããXNUMX çªç®ã®ãã©ã¡ãŒã¿ãåãå¿å颿°ãè¿ããXNUMX çªç®ã®ãã©ã¡ãŒã¿ãåãç¡å颿°ãè¿ããé£ç¶ãã Javascript 颿°ã§æž¡ãããåŒæ°ã®ä¹ç®ãè¿ããŸãã inside ã¯å€éšã®é¢æ°å€æ°ã«ã¢ã¯ã»ã¹ã§ãã function ã¯ãã¡ãŒã¹ãã¯ã©ã¹ãªããžã§ã¯ãã§ããããã颿°ã«ãã£ãŠè¿ãããå¥ã®é¢æ°ã®åŒæ°ãšããŠæž¡ãããšãã§ããŸãã - 颿°ã¯ãªããžã§ã¯ãåã®ã€ã³ã¹ã¿ã³ã¹ã§ã - 颿°ã¯ããããã£ãæã€ããšãã§ãããã®ã³ã³ã¹ãã©ã¯ã¿ãŒ ã¡ãœãããžã®ãªã³ã¯ãæã€ããšãã§ããŸã - 颿°ã¯å€æ°ãšããŠä¿åã§ããŸã - 颿°ã¯ãã©ã¡ãŒã¿ãšããŠå¥ã®é¢æ°ã«æž¡ãããšãã§ããŸã - 颿°ã¯å¥ã®é¢æ°ããè¿ãããããããæç²ããäŸ:
ãããžã§ã¯ããã©ã«ããŒã«ã¯ãµã³ãã«ãå«ããã¡ã€ã«ããããŸã
examples/markdown2anki-example.md- éµã®äžã« modules.markdown.pathToFile
ãã¡ã€ã«ãžã®ãã¹ãæžãçããŸããããã§ *.md 質å/åçãã¡ã€ã«
- ANKI ã¢ããªã±ãŒã·ã§ã³ãå®è¡ããç¶æ
ã§èµ·åããŸã
node data2ankiindex.js - å©çïŒïŒïŒ
æºåž¯é»è©±ã§ã¯æ¬¡ã®ããã«è¡šç€ºãããŸãã

çµæ
ANKIã®ãã¹ã¯ãããçã§åãåã£ãã«ãŒãã¯ANKIã¯ã©ãŠãïŒ100MBãŸã§ç¡æïŒãšã·ãŒã ã¬ã¹ã«åæããããã®åŸã¯ã©ãã§ã䜿çšã§ããŸãã Android О iPhoneãã©ãŠã¶äžã§ã䜿çšã§ããŸããã§ããããæéãæãŠäœããŠãããšãã¯ãFacebookãæŒ«ç¶ãšã¹ã¯ããŒã«ããããInstagramã§ç«ã®åçãèŠãããã代ããã«ãäœãæ°ããããšãåŠã¶ããšãã§ããŸãã
ãã£ããŒã¬
å ã»ã©ãè¿°ã¹ãããã«ãããã¯å®æåãšãããããå®éã«äœ¿çšã§ããå®çšç㪠POC ã§ãã DSL ããŒãµãŒæšæºã®çŽ 30% ã¯å®è£ ãããŠããªãããã ã«æžãæãããšããèãæ¹ããããŸãã JavaScriptãããäžè²«æ§ããå¿ èŠã§ãããããã«ãä»ã¯ããŸãæé©ã«æžãããŠããªãããã§ãã çŸåšãããŒãµãŒã¯ããªãŒãæ§ç¯ããŠããŸãããç§ã®æèŠã§ã¯ãããã¯äžèŠã§ãããã³ãŒããè€éã«ããå¿ èŠã¯ãããŸããã ã§ ããŒã¯ããŠã³2ã¢ã³ã ã¢ãŒãã§ã¯ãç»åã¯è§£æãããŸããã å°ããã€åã£ãŠãããŸãããèªåã®ããã«æžããŠããã®ã§ããŸãã¯èªåãèžãåé¡ã解決ããŠãããŸãããããå©ããŠãã ããæ¹ãããã£ããããŸããããã©ããã ããã°ã©ã ã«ã€ããŠã質åãããããŸããããé¢é£ãããžã§ã¯ãã®æªè§£æ±ºã®åé¡ã«ã€ããŠåãã§è§£æ±ºãããŠããã ããŸãã ãã®ä»ã®æ¹å€ãææ¡ãããã«æžããŠãã ããã ãã®ãããžã§ã¯ãã誰ãã®åœ¹ã«ç«ã€ããšãé¡ã£ãŠããŸãã
PS äœãééãã«æ°ã¥ããå Žå㯠(æ®å¿µãªããééãããããŸãã)ãå人ã¡ãã»ãŒãžã§ç§ã«æžããŠãã ããããã¹ãŠä¿®æ£ããŸãã
åºæïŒ habr.com

