ืฉื ื™ ืกื™ืคื•ืจื™ื ืขืœ ืื™ืš ANKI ื™ื›ื•ืœื” ืœืขื–ื•ืจ ืœืš ืœืœืžื•ื“ ืฉืคื” ื–ืจื” ื•ืœื”ืชื›ื•ื ืŸ ืœืจืื™ื•ืŸ

ืชืžื™ื“ ื”ืืžื ืชื™ ืฉืžืชื›ื ืช ืขืฆืœืŸ ื”ื•ื ืžืชื›ื ืช ื˜ื•ื‘. ืœืžื”? ื›ื™ ืชื‘ืงืฉ ืžืขื•ื‘ื“ ืงืฉื” ืœืขืฉื•ืช ืžืฉื”ื•, ื”ื•ื ื™ืœืš ื•ื™ืขืฉื” ืืช ื–ื”. ื•ืžืชื›ื ืช ืขืฆืœืŸ ื™ื‘ืœื” ืคื™ 2-3 ื™ื•ืชืจ ื–ืžืŸ, ืื‘ืœ ื™ื›ืชื•ื‘ ืชืกืจื™ื˜ ืฉื™ืขืฉื” ืืช ื–ื” ื‘ืฉื‘ื™ืœื•. ื–ื” ืขืฉื•ื™ ืœืงื—ืช ื–ืžืŸ ืœื ืกื‘ื™ืจ ืœืขืฉื•ืช ื–ืืช ื‘ืคืขื ื”ืจืืฉื•ื ื”, ืื‘ืœ ืขื ืžืฉื™ืžื•ืช ื—ื•ื–ืจื•ืช ื•ื ืฉื ื•ืช ื”ื’ื™ืฉื” ื”ื–ื• ืชืฉืชืœื ืžื”ืจ ืžืื•ื“. ืื ื™ ืžื—ืฉื™ื‘ ืืช ืขืฆืžื™ ื›ืžืชื›ื ืช ืขืฆืœืŸ. ื–ื• ื”ื™ื™ืชื” ื”ื”ืงื“ืžื”, ืขื›ืฉื™ื• ื‘ื•ืื• ื ื™ื’ืฉ ืœืขื ื™ื™ื ื™ื.

ืกื™ืคื•ืจ ืจืืฉื•ืŸ

ืœืคื ื™ ื›ืžื” ืฉื ื™ื ืชื”ื™ืชื™ ืื™ืš ืื ื™ ื™ื›ื•ืœ ืœืฉืคืจ ืืช ื”ืื ื’ืœื™ืช ืฉืœื™. ืฉื•ื ื“ื‘ืจ ืœื ืขืœื” ื‘ื“ืขืชื™ ื™ื•ืชืจ ืžืงืจื™ืืช ืกืคืจื•ืช. ืจื›ืฉืชื™ ืงื•ืจื ืืœืงื˜ืจื•ื ื™, ื”ื•ืจื“ืชื™ ืกืคืจื™ื ื•ื”ืชื—ืœืชื™ ืœืงืจื•ื. ื‘ืžื”ืœืš ื”ืงืจื™ืื” ื ืชืงืœืชื™ ื›ืœ ื”ื–ืžืŸ ื‘ืžื™ืœื™ื ืœื ืžื•ื›ืจื•ืช. ืžื™ื“ ืชืจื’ืžืชื™ ืื•ืชื ื‘ืืžืฆืขื•ืช ื”ืžื™ืœื•ื ื™ื ื”ืžื•ื‘ื ื™ื ื‘ืงื•ืจื, ืื‘ืœ ืฉืžืชื™ ืœื‘ ืœืชื›ื•ื ื” ืื—ืช: ื”ืžื™ืœื™ื ืœื ืจืฆื• ืœื”ื™ื–ื›ืจ. ื›ืฉื ืชืงืœืชื™ ื‘ืžื™ืœื” ื”ื–ื• ืฉื•ื‘ ื›ืžื” ืขืžื•ื“ื™ื ืžืื•ื—ืจ ื™ื•ืชืจ, ื‘ืกื‘ื™ืจื•ืช ืฉืœ 90% ืฉื•ื‘ ื ื–ืงืงืชื™ ืœืชืจื’ื•ื, ื•ื–ื” ืงืจื” ื‘ื›ืœ ืคืขื. ื”ืžืกืงื ื” ื”ื™ื™ืชื” ืฉืœื ืžืกืคื™ืง ืคืฉื•ื˜ ืœืชืจื’ื ืžื™ืœื™ื ืœื ืžื•ื›ืจื•ืช ื‘ื–ืžืŸ ื”ืงืจื™ืื”, ืฆืจื™ืš ืœืขืฉื•ืช ืžืฉื”ื• ืื—ืจ. ื”ืืคืฉืจื•ืช ื”ืื™ื“ื™ืืœื™ืช ืชื”ื™ื” ืœื”ื›ื ื™ืก ืื•ืชื• ืœื—ื™ื™ ื”ื™ื•ืžื™ื•ื ื•ืœื”ืชื—ื™ืœ ืœื”ืฉืชืžืฉ ื‘ื•, ืื‘ืœ ืื ื™ ืœื ื’ืจ ื‘ืžื“ื™ื ื” ื“ื•ื‘ืจืช ืื ื’ืœื™ืช ื•ื–ื” ืœื ืกื‘ื™ืจ. ื•ืื– ื ื–ื›ืจืชื™ ืฉืงืจืืชื™ ืคืขื ืขืœ ื—ื–ืจื” ืžืจื•ื•ื—ืช.

ืžื” ื–ื” ื•ืขื ืžื” ืื•ื›ืœื™ื ืื•ืชื•? ื‘ืงื™ืฆื•ืจ, ื™ืฉ ืืช ื–ื” ืขืงื•ืžืช ืฉื›ื—ื”, ืฆื™ื˜ื•ื˜ ื ื•ืกืฃ ืžื•ื™ืงื™ืคื“ื™ื”:

ื›ื‘ืจ ื‘ืฉืขื” ื”ืจืืฉื•ื ื”, ืขื“ 60% ืžื›ืœ ื”ืžื™ื“ืข ื”ืžืชืงื‘ืœ ื ืฉื›ื—, 10 ืฉืขื•ืช ืœืื—ืจ ื”ืฉื™ื ื•ืŸ, 35% ืžืžื” ืฉื ืœืžื“ ื ืฉืืจ ื‘ื–ื™ื›ืจื•ืŸ. ื•ืื– ืชื”ืœื™ืš ื”ืฉื›ื—ื” ืžืžืฉื™ืš ืœืื˜, ื•ืœืื—ืจ 6 ื™ืžื™ื ื ืฉืืจ ื‘ื–ื™ื›ืจื•ืŸ ื›-20% ืžืกืš ื”ื”ื‘ืจื•ืช ืฉื ืœืžื“ื• ื‘ืชื—ื™ืœื”, ื•ืื•ืชื• ื›ืžื•ืช ื ืฉืืจืช ื‘ื–ื™ื›ืจื•ืŸ ืœืื—ืจ ื—ื•ื“ืฉ.

ื•ื”ืžืกืงื ื” ืžื›ืืŸ

ื”ืžืกืงื ื•ืช ืฉื ื™ืชืŸ ืœื”ืกื™ืง ืขืœ ืกืžืš ืขืงื•ืžื” ื–ื• ื”ืŸ ืฉืœืฆื•ืจืš ืฉื™ื ื•ืŸ ื™ืขื™ืœ ื™ืฉ ืฆื•ืจืš ืœื—ื–ื•ืจ ืขืœ ื”ื—ื•ืžืจ ื”ืžืฉื•ื ืŸ.

ืื– ื”ื’ืขื ื• ืœืจืขื™ื•ืŸ ื—ื–ืจื” ืžืจื•ื•ื—ืช.

ืื ืงื™ ื”ื™ื ืชื•ื›ื ืช ืงื•ื“ ืคืชื•ื— ื•ื—ื™ื ืžื™ืช ืœื—ืœื•ื˜ื™ืŸ ื”ืžื™ื™ืฉืžืช ืืช ื”ืจืขื™ื•ืŸ ืฉืœ ื—ื–ืจื” ืžืจื•ื•ื—ืช. ื‘ืžื™ืœื™ื ืคืฉื•ื˜ื•ืช, ืœื›ืจื˜ื™ืกื™ ืคืœืืฉ ืžืžื•ื—ืฉื‘ื™ื ื™ืฉ ืฉืืœื” ื‘ืฆื“ ืื—ื“ ื•ืชืฉื•ื‘ื” ื‘ืฆื“ ื”ืฉื ื™. ืžื›ื™ื•ื•ืŸ ืฉืืชื” ื™ื›ื•ืœ ืœืขืฉื•ืช ืฉืืœื•ืช/ืชืฉื•ื‘ื•ืช ื‘ืืžืฆืขื•ืช ืจื’ื™ืœ html/css/javascript, ืื– ืื ื—ื ื• ื™ื›ื•ืœื™ื ืœื•ืžืจ ืฉื™ืฉ ืœื• ื‘ืืžืช ืืคืฉืจื•ื™ื•ืช ื‘ืœืชื™ ืžื•ื’ื‘ืœื•ืช. ื‘ื ื•ืกืฃ, ื–ื” ื ื™ืชืŸ ืœื”ืจื—ื‘ื” ืขื ืžื™ื•ื—ื“ ืชื•ืกืคื™ื, ื•ืื—ื“ ืžื”ื ื™ื”ื™ื” ืฉื™ืžื•ืฉื™ ืžืื•ื“ ืขื‘ื•ืจื ื• ื‘ืขืชื™ื“.

ื™ืฆื™ืจื” ื™ื“ื ื™ืช ืฉืœ ืงืœืคื™ื ื”ื™ื ืืจื•ื›ื”, ืžื™ื™ื’ืขืช, ื•ืขื ืกื‘ื™ืจื•ืช ื’ื‘ื•ื”ื”, ืœืื—ืจ ื–ืžืŸ ืžื” ืชืฉื›ื—ื• ืžื”ืžืฉื™ืžื” ื”ื–ื•, ื•ืœื›ืŸ ื‘ืฉืœื‘ ืžืกื•ื™ื ืฉืืœืชื™ ืืช ืขืฆืžื™ ืืช ื”ืฉืืœื”, ื”ืื ื ื™ืชืŸ ืœื‘ืฆืข ืื•ื˜ื•ืžืฆื™ื” ืฉืœ ื”ืžืฉื™ืžื” ื”ื–ื•. ื”ืชืฉื•ื‘ื” ื”ื™ื ื›ืŸ, ืืชื” ื™ื›ื•ืœ. ื•ืื ื™ ืขืฉื™ืชื™ ืืช ื–ื”. ืื ื™ ืื’ื™ื“ ืžื™ื“, ื–ื” ื™ื•ืชืจ POC (ื”ื•ื›ื—ืช ื”ืจืขื™ื•ืŸ), ืืš ื ื™ืชืŸ ืœื”ืฉืชืžืฉ ื‘ื”ื. ืื ื™ืฉ ืขื ื™ื™ืŸ ืฉืœ ืžืฉืชืžืฉื™ื ื•ืžืคืชื—ื™ื ืื—ืจื™ื ืžืขื•ืจื‘ื™ื, ืื– ืืคืฉืจ ืœื”ื‘ื™ื ืื•ืชื• ืœืžื•ืฆืจ ืžื•ื’ืžืจ ืฉืืคื™ืœื• ืžืฉืชืžืฉื™ื ืฉืื™ื ื ื™ื•ื“ืขื™ื ืงืจื•ื ื•ื›ืชื•ื‘ ืžื‘ื—ื™ื ื” ื˜ื›ื ื™ืช ื™ื›ื•ืœื™ื ืœื”ืฉืชืžืฉ ื‘ื•. ื›ืขืช, ื”ืฉื™ืžื•ืฉ ื‘ื›ืœื™ ื”ืฉื™ืจื•ืช ืฉืœื™ ื“ื•ืจืฉ ื™ื“ืข ืžืกื•ื™ื ื‘ืชื›ื ื•ืช.

ืงืจืืชื™ ืกืคืจื™ื ื‘ืืžืฆืขื•ืช ื”ืชื•ื›ื ื” ืงื•ืจื ืื•ื•ื™ืจ. ื™ืฉ ืœื• ื™ื›ื•ืœืช ืœื—ื‘ืจ ืžื™ืœื•ื ื™ื ื—ื™ืฆื•ื ื™ื™ื, ื•ื›ืืฉืจ ืืชื” ืžืชืจื’ื ืžื™ืœื”, ื”ื•ื ืฉื•ืžืจ ืืช ื”ืžื™ืœื” ืฉืงืจืืช ืœืชืจื’ื•ื ืœืงื•ื‘ืฅ ื˜ืงืกื˜. ื›ืœ ืžื” ืฉื ื•ืชืจ ื”ื•ื ืœืชืจื’ื ืืช ื”ืžื™ืœื™ื ื”ืœืœื• ื•ืœื™ืฆื•ืจ ื›ืจื˜ื™ืกื™ ANKI.

ื‘ื”ืชื—ืœื” ื ื™ืกื™ืชื™ ืœื”ืฉืชืžืฉ ืœืชืจื’ื•ื ื’ื•ื’ืœ ืชืจื’ื•ื, API ืฉืœ Lingvo ื•ื›ื• ' ืื‘ืœ ื“ื‘ืจื™ื ืœื ื”ืกืชื“ืจื• ืขื ืฉื™ืจื•ืชื™ื ื‘ื—ื™ื ื. ืžื™ืฆื™ืชื™ ืืช ืžื’ื‘ืœืช ื”ื—ื•ืคืฉ ื‘ืžื”ืœืš ืชื”ืœื™ืš ื”ืคื™ืชื•ื—, ื‘ื ื•ืกืฃ, ืขืœ ืคื™ ืชื ืื™ ื”ืจื™ืฉื™ื•ืŸ, ืœื ื”ื™ื™ืชื” ืœื™ ื”ื–ื›ื•ืช ืœืื—ืกืŸ ืžื™ืœื™ื ื‘ืžื˜ืžื•ืŸ. ื‘ืฉืœื‘ ืžืกื•ื™ื ื”ื‘ื ืชื™ ืฉืื ื™ ืฆืจื™ืš ืœืชืจื’ื ืืช ื”ืžื™ืœื™ื ื‘ืขืฆืžื™. ื›ืชื•ืฆืื” ืžื›ืš, ื ื›ืชื‘ ืžื•ื“ื•ืœ dsl2html ืฉืืœื™ื• ืืชื” ื™ื›ื•ืœ ืœื”ืชื—ื‘ืจ ืžื™ืœื•ื ื™ DSL ื•ืžื™ ื™ื•ื“ืข ืœื”ืžื™ืจ ืื•ืชื HTML ืคื•ึผืจืžึธื˜.

ื›ืš ื ืจืื” ืขืจืš ื‘ืžื™ืœื•ืŸ ื‘-*Html., ื”ืื•ืคืฆื™ื” ืฉืœื™ ืœืขื•ืžืช ื”ืื•ืคืฆื™ื” GoldenDict

ืฉื ื™ ืกื™ืคื•ืจื™ื ืขืœ ืื™ืš ANKI ื™ื›ื•ืœื” ืœืขื–ื•ืจ ืœืš ืœืœืžื•ื“ ืฉืคื” ื–ืจื” ื•ืœื”ืชื›ื•ื ืŸ ืœืจืื™ื•ืŸ

ืœืคื ื™ ืฉืื ื™ ืžื—ืคืฉ ืžื™ืœื” ื‘ืžื™ืœื•ื ื™ื ืžื—ื•ื‘ืจื™ื, ืื ื™ ืžื‘ื™ื ืื•ืชื” ืฆื•ืจืช ืžื™ืœื•ืŸ (ืœืžื”) ื‘ืืžืฆืขื•ืช ื”ืกืคืจื™ื™ื” ืกื˜ื ืคื•ืจื“ CoreNLP. ืœืžืขืฉื”, ื‘ื’ืœืœ ื”ืกืคืจื™ื™ื” ื”ื–ื•, ื”ืชื—ืœืชื™ ืœื›ืชื•ื‘ ื‘ื’'ืื•ื•ื” ื•ื”ืชื›ื ื•ืŸ ื”ืžืงื•ืจื™ ื”ื™ื” ืœื›ืชื•ื‘ ื”ื›ืœ ื‘ื’'ืื•ื•ื”, ืื‘ืœ ืชื•ืš ื›ื“ื™ ื›ืš ืžืฆืืชื™ ืืช ื”ืกืคืจื™ื™ื” node-java ื‘ืขื–ืจืชื• ื ื™ืชืŸ ืœื‘ืฆืข ื‘ืงืœื•ืช ื™ื—ืกื™ืช ืงื•ื“ Java ืž-nodejs ื•ื—ืœืง ืžื”ืงื•ื“ ื›ืชื•ื‘ ื‘-JavaScript. ืื ื”ื™ื™ืชื™ ืžื•ืฆื ืืช ื”ืกืคืจื™ื™ื” ื”ื–ื• ืงื•ื“ื ืœื›ืŸ, ืืฃ ืฉื•ืจื” ืื—ืช ืœื ื”ื™ื™ืชื” ื ื›ืชื‘ืช ื‘ื’'ืื•ื•ื”. ืคืจื•ื™ืงื˜ ืฆื“ื“ื™ ื ื•ืกืฃ ืฉื ื•ืœื“ ื‘ืชื”ืœื™ืš ื”ื•ื ื”ื™ืฆื™ืจื” ืžืื’ืจ ืขื ืชื™ืขื•ื“ DSL ืืฉืจ ื ืžืฆื ื‘ืจืฉืช ื‘ืคื•ืจืžื˜ *.chm, ื”ื•ืžืจ ื•ื”ื•ื‘ื ืœืฆื•ืจื” ืืœื•ื”ื™ืช. ืื ื”ืžื—ื‘ืจ ืฉืœ ื”ืงื•ื‘ืฅ ื”ืžืงื•ืจื™ ื”ื•ื ืžืฉืชืžืฉ ืœืคื™ ื›ื™ื ื•ื™ ื™ื•ื–'ื™ืง ื›ืฉื”ื•ื ืจื•ืื” ืืช ื”ืžืืžืจ ื”ื–ื”, ืื ื™ ืžื•ื“ื” ืœื• ืžืื•ื“ ืขืœ ื”ืขื‘ื•ื“ื” ืฉื”ื•ื ืขืฉื”, ืœืœื ื”ืชื™ืขื•ื“ ืฉืœื•, ืกื‘ื™ืจ ืœื”ื ื™ื— ืฉืœื ื”ื™ื™ืชื™ ืžืฆืœื™ื—.

ืื–, ื™ืฉ ืœื™ ืžื™ืœื” ื‘ืื ื’ืœื™ืช, ื”ืขืจืš ืฉืœื” ื‘ืžื™ืœื•ืŸ ื‘ืคื•ืจืžื˜ *Html., ื›ืœ ืฉื ื•ืชืจ ื”ื•ื ืœื—ื‘ืจ ื”ื›ืœ ื‘ื™ื—ื“, ืœื™ืฆื•ืจ ืžืืžืจื™ ANKI ืžืจืฉื™ืžืช ื”ืžื™ืœื™ื ื•ืœื”ื›ื ื™ืก ืื•ืชื ืœืžืื’ืจ ื”ืžื™ื“ืข ืฉืœ ANKI. ืœืฉื ื›ืš ื ื•ืฆืจ ื”ืคืจื•ื™ืงื˜ ื”ื‘ื data2anki. ื–ื” ื™ื›ื•ืœ ืœืงื—ืช ืจืฉื™ืžื” ืฉืœ ืžื™ืœื™ื ื›ืงืœื˜, ืœืชืจื’ื, ืœื™ืฆื•ืจ ANKI *Html. ืžืืžืจื™ื ื•ืœืชืขื“ ืื•ืชื ื‘ืžืื’ืจ ื”ืžื™ื“ืข ืฉืœ ANKI. ื‘ืกื•ืฃ ื”ืžืืžืจ ื™ืฉ ื”ื•ืจืื•ืช ื›ื™ืฆื“ ืœื”ืฉืชืžืฉ ื‘ื•. ื‘ื™ื ืชื™ื™ื, ื”ืกื™ืคื•ืจ ื”ืฉื ื™ ื”ื•ื ื”ืžืงื•ื ืฉื‘ื• ื—ื–ืจื•ืช ืžืจื•ื•ื—ื•ืช ื™ื›ื•ืœื•ืช ืœื”ื™ื•ืช ืฉื™ืžื•ืฉื™ื•ืช.

ื”ืกื™ืคื•ืจ ื”ืฉื ื™.

ื›ืœ ื”ืื ืฉื™ื ืฉืžื—ืคืฉื™ื ื”ืชืžื—ื•ืช ืžื•ืกืžื›ืช ื™ื•ืชืจ/ืคื—ื•ืช, ื›ื•ืœืœ ืžืชื›ื ืชื™ื, ืžืชืžื•ื“ื“ื™ื ืขื ื”ืฆื•ืจืš ืœื”ืชื›ื•ื ืŸ ืœืจืื™ื•ืŸ. ืจื‘ื™ื ืžื”ืžื•ืฉื’ื™ื ืฉื ืฉืืœื™ื ื‘ืจืื™ื•ื ื•ืช ืื™ื ืš ืžืฉืชืžืฉ ื‘ืชืจื’ื•ืœ ื”ื™ื•ืžื™ื•ืžื™ ื•ื”ื ื ืฉื›ื—ื™ื. ื‘ื”ื›ื ื•ืช ืœืจืื™ื•ืŸ, ื“ืคื“ื•ืฃ ื‘ืคืชืงื™ื, ืกืคืจ, ืกืคืจ ืขื™ื•ืŸ, ื ืชืงืœืชื™ ื‘ืขื•ื‘ื“ื” ืฉืœื•ืงื— ื”ืจื‘ื” ื–ืžืŸ ื•ืชืฉื•ืžืช ืœื‘ ืœื ืคื•ืช ืžื™ื“ืข ืฉืืชื” ื›ื‘ืจ ื™ื•ื“ืข ื›ื™ ื–ื” ืœื ืชืžื™ื“ ื‘ืจื•ืจ ื•ืฆืจื™ืš ืงืจื ืื•ืชื• ื‘ืขื™ื•ืŸ ื›ื“ื™ ืœื”ื‘ื™ืŸ ืžื” ื–ื”. ืœื ืจืœื•ื•ื ื˜ื™. ื›ืฉืžื’ื™ืขื™ื ืœื ื•ืฉื ืฉื‘ืืžืช ืฆืจื™ืš ืœื—ื–ื•ืจ ืขืœื™ื•, ืงื•ืจื” ืœื ืคืขื ืฉื›ื‘ืจ ืขื™ื™ืคื™ื ื•ืื™ื›ื•ืช ื”ื”ื›ื ื” ื ืคื’ืขืช. ื‘ืฉืœื‘ ืžืกื•ื™ื ื—ืฉื‘ืชื™, ืœืžื” ืœื ืœื”ืฉืชืžืฉ ื’ื ื‘ื›ืจื˜ื™ืกื™ ANKI ื‘ืฉื‘ื™ืœ ื–ื”? ืœื“ื•ื’ืžื”, ื›ืืฉืจ ืจื•ืฉืžื™ื ื”ืขืจื•ืช ืขืœ ื ื•ืฉื, ืฆื•ืจ ืžื™ื“ ื”ืขืจื” ื‘ืฆื•ืจืช ืฉืืœื” ื•ืชืฉื•ื‘ื”, ื•ืœืื—ืจ ืžื›ืŸ ื›ืฉืชื—ื–ื•ืจ ืขืœื™ื”, ืชื“ืข ืžื™ื“ ืื ืืชื” ื™ื•ื“ืข ืืช ื”ืชืฉื•ื‘ื” ืœืฉืืœื” ื–ื• ืื• ืœื.

ื”ื‘ืขื™ื” ื”ื™ื—ื™ื“ื” ืฉื”ืชืขื•ืจืจื” ื”ื™ื™ืชื” ืฉื”ืงืœื“ืช ืฉืืœื•ืช ื”ื™ื™ืชื” ืžืื•ื“ ืืจื•ื›ื” ื•ืžื™ื™ื’ืขืช. ื›ื“ื™ ืœื”ืงืœ ืขืœ ื”ืชื”ืœื™ืš, data2anki ืคืจื•ื™ืงื˜ ื”ื•ืกืคืชื™ ืคื•ื ืงืฆื™ื•ื ืœื™ื•ืช ื”ืžืจื” - ื˜ืงืกื˜ ื‘ื›ืจื˜ื™ืกื™ ANKI. ื›ืœ ืžื” ืฉืฆืจื™ืš ื–ื” ืœื›ืชื•ื‘ ืงื•ื‘ืฅ ืื—ื“ ื’ื“ื•ืœ ืฉื‘ื• ืฉืืœื•ืช ื•ืชืฉื•ื‘ื•ืช ื™ืกื•ืžื ื• ื‘ืจืฆืฃ ืงื‘ื•ืข ืžืจืืฉ ืฉืœ ืชื•ื•ื™ื, ืฉื‘ืืžืฆืขื•ืชื• ื”ืžื ืชื— ื™ื‘ื™ืŸ ื”ื™ื›ืŸ ื”ืฉืืœื” ื•ืื™ืคื” ื”ืชืฉื•ื‘ื”.

ื‘ืจื’ืข ืฉืงื•ื‘ืฅ ื–ื” ื ื•ืฆืจ, ืืชื” ืžืคืขื™ืœ ืืช data2anki ื•ื”ื•ื ื™ื•ืฆืจ ื›ืจื˜ื™ืกื™ ANKI. ืงืœ ืœืขืจื•ืš ื•ืœืฉืชืฃ ืืช ื”ืงื•ื‘ืฅ ื”ืžืงื•ืจื™, ืืชื” ืจืง ืฆืจื™ืš ืœืžื—ื•ืง ืืช ื”ื›ืจื˜ื™ืก(ื™ื) ื”ืžืชืื™ืžื™ื ื•ืœื”ืคืขื™ืœ ืืช ื”ืชื•ื›ื ื™ืช ืฉื•ื‘, ื•ืชื™ื•ื•ืฆืจ ื’ืจืกื” ื—ื“ืฉื”.

ื”ืชืงื ื” ื•ืฉื™ืžื•ืฉ

  1. ื”ืชืงื ืช ANKI + AnkiConnect

    1. ื”ื•ืจื“ ืืช ANKI ืžื›ืืŸ: https://apps.ankiweb.net/
    2. ื”ืชืงืŸ ืืช ื”ืชื•ืกืฃ AnkiConnect: https://ankiweb.net/shared/info/2055492159

  2. ื”ืชืงื ื” data2anki

    1. ื”ื•ืจื“ data2anki ืžืžืื’ืจ github
      git clone https://github.com/anatoly314/data2anki
    2. ื”ืชืงื ืช ืชืœื•ืช
      cd data2anki && npm install
    3. ื”ื•ืจื“ ืชืœื•ื™ื•ืช ื‘-Java https://github.com/anatoly314/data2anki/releases/download/0.1.0/jar-dependencies.zip
    4. ืžืคืจืงื™ื jar-dependencies.zip ื•ืœื”ื›ื ื™ืก ืืช ืชื•ื›ื ื• data2anki/java/jars

  3. ื”ืฉืชืžืฉ ืœืชืจื’ื•ื ืžื™ืœื™ื:

    1. ื‘ืงื•ื‘ืฅ data2anki/config.json:

      • ื‘ืžืคืชื— ืžืฆื‘ ื”ื–ืŸ ืืช ื”ืขืจืš dsl2anki

      • ื‘ืžืคืชื— modules.dsl.anki.deckName ะธ modules.dsl.anki.modelName ืœื›ืชื•ื‘ ื‘ื”ืชืื ืฉื ื”ืกื™ืคื•ืŸ ะธ ืฉื ื“ื’ื (ื™ืฉ ืœื™ืฆื•ืจ ื›ื‘ืจ ืœืคื ื™ ื™ืฆื™ืจืช ื›ืจื˜ื™ืกื™ื). ื›ืจื’ืข ืจืง ืกื•ื’ ื”ื“ื’ื ื ืชืžืš ื‘ืกื™ืกื™:

        ื™ืฉ ืฉื“ื•ืช ืงื“ืžื™ื™ื ื•ืื—ื•ืจื™ื™ื, ื•ื™ื™ืฆื•ืจ ื›ืจื˜ื™ืก ืื—ื“. ื˜ืงืกื˜ ืฉืชื–ื™ืŸ ืžืงื“ื™ืžื” ื™ื•ืคื™ืข ื‘ื—ื–ื™ืช ื”ื›ืจื˜ื™ืก, ื•ื˜ืงืกื˜ ืฉืชื–ื™ืŸ ื‘ื’ื‘ ื™ื•ืคื™ืข ื‘ื’ื‘ ื”ื›ืจื˜ื™ืก.

        ืื™ืคื” ื”ืžื™ืœื” ื”ืžืงื•ืจื™ืช ืฉื“ื” ืงื“ืžื™, ื•ื”ืชืจื’ื•ื ื™ื”ื™ื” ื‘ ืฉื“ื” ืื—ื•ืจื™.

        ืื™ืŸ ื‘ืขื™ื” ืœื”ื•ืกื™ืฃ ืชืžื™ื›ื” ื›ืจื˜ื™ืก ื‘ืกื™ืกื™ (ื•ื”ืคื•ืš), ืฉื‘ื• ื™ื™ื•ื•ืฆืจ ืงืœืฃ ื”ืคื•ืš ืœืžื™ืœื” ื•ืœืชืจื’ื•ื, ื›ืืฉืจ ืขืœ ืกืžืš ื”ืชืจื’ื•ื ืชืฆื˜ืจืš ืœื–ื›ื•ืจ ืืช ื”ืžื™ืœื” ื”ืžืงื•ืจื™ืช. ื›ืœ ืžื” ืฉืืชื” ืฆืจื™ืš ื–ื” ื–ืžืŸ ื•ืจืฆื•ืŸ.

      • ื‘ืžืคืชื— modules.dsl.dictionariesPath ืœืจืฉื•ื ืžืขืจืš ืขื ืžื—ื•ื‘ืจ *.dsl ืžื™ืœื•ื ื™ื. ื›ืœ ืžื™ืœื•ืŸ ืžื—ื•ื‘ืจ ื”ื•ื ืกืคืจื™ื™ื” ืฉื‘ื” ืžืžื•ืงืžื™ื ืงื‘ืฆื™ ื”ืžื™ืœื•ืŸ ื‘ื”ืชืื ืœืคื•ืจืžื˜: ืžื‘ื ื” ืžื™ืœื•ืŸ DSL

      • ื‘ืžืคืชื— modules.dsl.wordToTranslatePath ื”ื–ืŸ ืืช ื”ื ืชื™ื‘ ืœืจืฉื™ืžืช ื”ืžื™ืœื™ื ืฉื‘ืจืฆื•ื ืš ืœืชืจื’ื.

    2. ื”ืคืขืœ ื›ืืฉืจ ืืคืœื™ืงืฆื™ื™ืช ANKI ืคื•ืขืœืช
      node data2ankiindex.js
    3. ืจื•ื•ื—!

  4. ืžืฉืžืฉ ืœื™ืฆื™ืจืช ื›ืจื˜ื™ืกื™ื ืž-markdown

    1. ื‘ืงื•ื‘ืฅ data2anki/config.json:

      • ื‘ืžืคืชื— ืžืฆื‘ ื”ื–ืŸ ืืช ื”ืขืจืš markdown2anki
      • ื‘ืžืคืชื— modules.markdown.anki.deckName ะธ modules.dsl.anki.modelName ืœื›ืชื•ื‘ ื‘ื”ืชืื ืฉื ื”ืกื™ืคื•ืŸ ะธ ืฉื ื“ื’ื (ื™ืฉ ืœื™ืฆื•ืจ ื›ื‘ืจ ืœืคื ื™ ื™ืฆื™ืจืช ื›ืจื˜ื™ืกื™ื). ืœ markdown2anki ืžืฆื‘ ืจืง ืกื•ื’ ื”ื“ื’ื ื ืชืžืš ื‘ืกื™ืกื™.
      • ื‘ืžืคืชื— modules.markdown.selectors.startQuestionSelectors ะธ modules.markdown.selectors.startAnswerSelectors ืืชื” ื›ื•ืชื‘ ืกืœืงื˜ื•ืจื™ื ืื™ืชื ืืชื” ืžืกืžืŸ ืืช ืชื—ื™ืœืช ื”ืฉืืœื” ื•ื”ืชืฉื•ื‘ื”, ื‘ื”ืชืืžื”. ื”ืฉื•ืจื” ืขื ื”ื‘ื•ืจืจ ืขืฆืžื• ืœื ืชื ืชื— ื•ืœื ืชื’ื™ืข ืœื›ืจื˜ื™ืก; ื”ืžื ืชื— ื™ืชื—ื™ืœ ืœืขื‘ื•ื“ ืžื”ืฉื•ืจื” ื”ื‘ืื”.

        ืœื“ื•ื’ืžื”, ื›ืจื˜ื™ืก ืฉืืœื”/ืชืฉื•ื‘ื” ื–ื”:

        ืฉื ื™ ืกื™ืคื•ืจื™ื ืขืœ ืื™ืš ANKI ื™ื›ื•ืœื” ืœืขื–ื•ืจ ืœืš ืœืœืžื•ื“ ืฉืคื” ื–ืจื” ื•ืœื”ืชื›ื•ื ืŸ ืœืจืื™ื•ืŸ

        ื–ื” ื™ื™ืจืื” ื›ืš ื‘-markdown:
        #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) { // anonymous function return function (z) { // ืคื•ื ืงืฆื™ื” ืื ื•ื ื™ืžื™ืช ืžื—ื–ื™ืจื” x * y * z; }; }; } ``` ื›ืืŸ ื”ืคื•ื ืงืฆื™ื” `mul` ืžืงื‘ืœืช ืืช ื”ืืจื’ื•ืžื ื˜ ื”ืจืืฉื•ืŸ ื•ืžื—ื–ื™ืจื” ืืช ื”ืคื•ื ืงืฆื™ื” ื”ืื ื•ื ื™ืžื™ืช ืฉืœื•ืงื—ืช ืืช ื”ืคืจืžื˜ืจ ื”ืฉื ื™ ื•ืžื—ื–ื™ืจื” ืืช ื”ืคื•ื ืงืฆื™ื” ื”ืื ื•ื ื™ืžื™ืช ืฉืœื•ืงื—ืช ืืช ื”ืคืจืžื˜ืจ ื”ืฉืœื™ืฉื™ ื•ืžื—ื–ื™ืจื” ืืช ื”ื›ืคืœ ืฉืœ ื”ืืจื’ื•ืžื ื˜ื™ื ืฉืžื•ืขื‘ืจื™ื ื‘ืจืฆืฃ ื‘ืคื•ื ืงืฆื™ื” Javascript ืžื•ื’ื“ืจืช ืœ- inside ื™ืฉ ื’ื™ืฉื” ืœืžืฉืชื ื” ื”ืคื•ื ืงืฆื™ื” ื”ื—ื™ืฆื•ื ื™ืช ื•ื”ืคื•ื ืงืฆื™ื” ื”ื™ื ืื•ื‘ื™ื™ืงื˜ ื”ืžื—ืœืงื” ื”ืจืืฉื•ื ื” ื›ืš ืฉื ื™ืชืŸ ืœื”ื—ื–ื™ืจ ืื•ืชื• ื’ื ืขืœ ื™ื“ื™ ื”ืคื•ื ืงืฆื™ื” ื•ืœื”ืขื‘ื™ืจ ืื•ืชื• ื›ืืจื’ื•ืžื ื˜ ื‘ืคื•ื ืงืฆื™ื” ืื—ืจืช. - ืคื•ื ืงืฆื™ื” ื”ื™ื ืžื•ืคืข ืžืกื•ื’ Object - ืคื•ื ืงืฆื™ื” ื™ื›ื•ืœื” ืœื”ื™ื•ืช ื‘ืขืœืช ืžืืคื™ื™ื ื™ื ื•ื™ืฉ ืœื” ืงื™ืฉื•ืจ ื—ื–ืจื” ืœืฉื™ื˜ืช ื”ื‘ื ืื™ ืฉืœื” - ืคื•ื ืงืฆื™ื” ื™ื›ื•ืœื” ืœื”ื™ื•ืช ืžืื•ื—ืกื ืช ื›ืžืฉืชื ื” - ืคื•ื ืงืฆื™ื” ื™ื›ื•ืœื” ืœืขื‘ื•ืจ ื›ืคืจืžื˜ืจ ืœืคื•ื ืงืฆื™ื” ืื—ืจืช - ืคื•ื ืงืฆื™ื” ื™ื›ื•ืœื” ืœื”ื™ื•ืช ื—ื–ืจ ืžืคื•ื ืงืฆื™ื” ืื—ืจืช
        

        ื“ื•ื’ืžื” ืฉื ืœืงื—ื” ืžื›ืืŸ: 123-JavaScript-ืจืื™ื•ืŸ-ืฉืืœื•ืช

        ื™ืฉ ื’ื ืงื•ื‘ืฅ ืขื ื“ื•ื’ืžืื•ืช ื‘ืชื™ืงื™ื™ืช ื”ืคืจื•ื™ืงื˜ examples/markdown2anki-example.md

      • ื‘ืžืคืชื— modules.markdown.pathToFile
        ืจืฉื•ื ืืช ื”ื ืชื™ื‘ ืœืงื•ื‘ืฅ ืฉื‘ื• *.md ืงื•ื‘ืฅ ืฉืืœื•ืช/ืชืฉื•ื‘ื•ืช

    2. ื”ืคืขืœ ื›ืืฉืจ ืืคืœื™ืงืฆื™ื™ืช ANKI ืคื•ืขืœืช
      node data2ankiindex.js
    3. ืจื•ื•ื—!

ื›ืš ื–ื” ื ืจืื” ื‘ื˜ืœืคื•ืŸ ื ื™ื™ื“:

ืชื•ืฆืื”

ื›ืจื˜ื™ืกื™ื ื”ืžืชืงื‘ืœื™ื ื‘ื’ืจืกืช ื”ืฉื•ืœื—ืŸ ื”ืขื‘ื•ื“ื” ืฉืœ ANKI ืžืกื•ื ื›ืจื ื™ื ืœืœื ื‘ืขื™ื•ืช ืขื ืขื ืŸ ANKI (ื—ื™ื ื ืขื“ 100MB), ื•ืื– ืืชื” ื™ื›ื•ืœ ืœื”ืฉืชืžืฉ ื‘ื”ื ื‘ื›ืœ ืžืงื•ื. ื™ืฉื ื ืœืงื•ื—ื•ืช ืขื‘ื•ืจ ืื ื“ืจื•ืื™ื“ ื•ืื™ื™ืคื•ืŸ, ื•ืืชื” ื™ื›ื•ืœ ืœื”ืฉืชืžืฉ ื‘ื• ื’ื ื‘ื“ืคื“ืคืŸ. ื›ืชื•ืฆืื” ืžื›ืš, ืื ื™ืฉ ืœืš ื–ืžืŸ ืฉืื™ืŸ ืœืš ืžื” ืœื‘ื–ื‘ื– ืขืœื™ื•, ืื– ื‘ืžืงื•ื ืœื’ืœื•ืœ ืœืœื ืžื˜ืจื” ื‘ืคื™ื™ืกื‘ื•ืง ืื• ื‘ื—ืชื•ืœื™ื ื‘ืื™ื ืกื˜ื’ืจื, ืชื•ื›ืœ ืœืœืžื•ื“ ืžืฉื”ื• ื—ื“ืฉ.

ืืคื™ืœื•ื’

ื›ืคื™ ืฉืฆื™ื™ื ืชื™, ื–ื” ื™ื•ืชืจ POC ืขื•ื‘ื“ ืฉืืชื” ื™ื›ื•ืœ ืœื”ืฉืชืžืฉ ื‘ื• ืžืืฉืจ ืžื•ืฆืจ ืžื•ื’ืžืจ. ื›-30% ืžืชืงืŸ ืžื ืชื— DSL ืื™ื ื• ืžื™ื•ืฉื, ื•ืœื›ืŸ, ืœื“ื•ื’ืžื”, ืœื ื ื™ืชืŸ ืœืžืฆื•ื ืืช ื›ืœ ื”ืขืจื›ื™ื ื‘ืžื™ืœื•ื ื™ื ืฉื ืžืฆืื™ื ื‘ืžื™ืœื•ื ื™ื, ื™ืฉ ื’ื ืจืขื™ื•ืŸ ืœื›ืชื•ื‘ ืื•ืชื• ืžื—ื“ืฉ JavaScript, ื›ื™ ืื ื™ ืจื•ืฆื” "ืขืงื‘ื™ื•ืช", ื•ื—ื•ืฅ ืžื–ื”, ืขื›ืฉื™ื• ื–ื” ืœื ื›ืชื•ื‘ ื‘ืฆื•ืจื” ื”ื›ื™ ืื•ืคื˜ื™ืžืœื™ืช. ืขื›ืฉื™ื• ื”ืคืจืกืจ ื‘ื•ื ื” ืขืฅ, ืื‘ืœ ืœื“ืขืชื™ ื–ื” ืžื™ื•ืชืจ ื•ืœื ืฆืจื™ืš ืœืกื‘ืš ืืช ื”ืงื•ื“. IN markdown2anki ื‘ืžืฆื‘, ื”ืชืžื•ื ื•ืช ืื™ื ืŸ ืžื ื•ืชื—ื•ืช. ืื ืกื” ืœื—ืชื•ืš ืœืื˜ ืœืื˜, ืื‘ืœ ืžื›ื™ื•ื•ืŸ ืฉืื ื™ ื›ื•ืชื‘ ืœืขืฆืžื™, ืื ื™ ืงื•ื“ื ื›ืœ ืืคืชื•ืจ ืืช ื”ื‘ืขื™ื•ืช ืฉืื ื™ ื‘ืขืฆืžื™ ืื“ืจื•ืš ืขืœื™ื”ืŸ, ืื‘ืœ ืื ืžื™ืฉื”ื• ืจื•ืฆื” ืœืขื–ื•ืจ, ืื– ืืชื” ืžื•ื–ืžืŸ. ืื ื™ืฉ ืœื›ื ืฉืืœื•ืช ืœื’ื‘ื™ ื”ืชื›ื ื™ืช, ืืฉืžื— ืœืขื–ื•ืจ ื‘ื‘ืขื™ื•ืช ืคืชื•ื—ื•ืช ื‘ืคืจื•ื™ืงื˜ื™ื ื”ืจืœื•ื•ื ื˜ื™ื™ื. ื›ืชื•ื‘ ื›ืืŸ ื‘ื™ืงื•ืจืช ื•ื”ืฆืขื•ืช ืื—ืจื•ืช. ืื ื™ ืžืงื•ื•ื” ืฉื”ืคืจื•ื™ืงื˜ ื”ื–ื” ื™ื”ื™ื” ืฉื™ืžื•ืฉื™ ืœืžื™ืฉื”ื•.

ื .ื‘. ืื ืืชื” ืžื‘ื—ื™ืŸ ื‘ืฉื’ื™ืื•ืช ื›ืœืฉื”ืŸ (ื•ืœืฆืขืจื™, ื™ืฉ ื›ืืœื”), ื›ืชื•ื‘ ืœื™ ื‘ื”ื•ื“ืขื” ืื™ืฉื™ืช, ืื ื™ ืืชืงืŸ ื”ื›ืœ.

ืžืงื•ืจ: www.habr.com

ื”ื•ืกืคืช ืชื’ื•ื‘ื”