Amabali amabini endlela u-ANKI anokukunceda ngayo ukuba ufunde ulwimi lwasemzini kwaye ulungiselele udliwano-ndlebe

Ndandisoloko ndikholelwa ukuba umdwebi wenkqubo owonqenayo ngumcwangcisi olungileyo. Ngoba? Kuba cela umntu osebenza nzima ukuba enze into, uya kuya ayenze. Kwaye umdwelisi onobuqili uya kuchitha amaxesha angama-2-3 ngaphezulu, kodwa uya kubhala iskripthi esiya kumenzela sona. Kungathatha ixesha elide ngokungekho ngqiqweni ukwenza oku okokuqala, kodwa ngemisebenzi ephindaphindiweyo le ndlela iya kuhlawula ngokukhawuleza. Ndizibona ndingumcwangcisi owonqenayo. Yayiyintshayelelo leyo, ngoku makhe sehle siye kwishishini.

Ibali lokuqala

Kwiminyaka embalwa edlulileyo ndandizibuza ukuba ndingasiphucula njani isiNgesi sam. Ayikho into eyathi qatha engqondweni ngaphezu kokufunda uncwadi. Ndathenga i-electronic reader, ndakhuphela iincwadi ndaza ndaqalisa ukufunda. Ngoxa ndifunda, ndandimana ndidibana namagama endingawaqhelanga. Ndaziguqulela ngoko nangoko ndisebenzisa izichazi-magama ezakhelwe kumfundi, kodwa ndaphawula into enye: amagama ayengafuni ukukhunjulwa. Xa ndidibana neli gama kwakhona kumaphepha ambalwa kamva, nge-90% enokwenzeka ndaphinda ndafuna ukuguqulelwa, njalo njalo rhoqo. Isigqibo yayikukuba akwanelanga ukuguqulela amagama angaqhelekanga ngelixa ufunda, kufuneka wenze enye into. Eyona ndlela ilungileyo iya kuba kukuyingenisa kubomi bemihla ngemihla kwaye uqalise ukuyisebenzisa, kodwa andihlali kwilizwe elithetha isiNgesi kwaye oku akunakwenzeka. Emva koko ndakhumbula ukuba ndakha ndafunda malunga Uphindaphindo lwezithuba.

Yintoni kwaye ityiwa ngantoni? Ngamafutshane, kukho oku ukulibala ijika, ukucaphula ngakumbi kwiWikipedia:

Sele ilibele kwiyure yokuqala ukuya kuthi ga kwi-60% yalo lonke ulwazi olufunyenweyo; kwiiyure ezili-10 emva kokunkqaya, i-35% yezinto ezifundiweyo zihlala zisenkumbulo. Emva koko inkqubo yokulibala iqhubela phambili kancinci, kwaye emva kweentsuku ezi-6 malunga ne-20% yenani elipheleleyo lama-syllables afundiweyo ahlala ememori, kwaye isixa esifanayo sihlala kwimemori emva kwenyanga.

Kwaye isiphelo sisuka apha

Izigqibo ezinokuthi zenziwe ngokusekelwe kule ngqungquthela kukuba ukukhumbula okusebenzayo kuyimfuneko ukuphinda izinto ezinkqayiweyo.

Ngoko size necebo uphindaphindo olushiyanayo.

АNKI yinkqubo yomthombo esimahla kwaye evuleleke ngokupheleleyo esebenzisa umbono wokuphindaphinda indawo. Ngamafutshane, amakhadi oonotsheluza ekhompyuter anombuzo kwelinye icala kunye nempendulo kwelinye. Kuba unokwenza imibuzo / iimpendulo usebenzisa rhoqo html/css/javascript, ngoko sinokutsho ukuba inamathuba angenasiphelo ngokwenene. Ukongeza, ukwandiswa ngokukhethekileyo iiplagi, yaye enye yazo iya kuba luncedo kakhulu kuthi kwixesha elizayo.

Ukwenza amakhadi ngesandla kude, kuyadinisa, kwaye kunethuba eliphezulu, emva kwexesha uya kulibala ngalo msebenzi, kwaye ke ngaxa lithile ndazibuza umbuzo, ngaba kunokwenzeka ukwenza lo msebenzi ngokuzenzekelayo. Impendulo nguewe, unako. Ndaye ndayenza. Ndiza kuthi ngoko nangoko, kungaphezulu I-POC (Ubungqina bengqiqo), kodwa enokusetyenziswa. Ukuba kukho umdla ovela kubasebenzisi kunye nabanye abaphuhlisi ababandakanyekayo, ngoko inokuziswa kwimveliso egqityiweyo enokuthi isetyenziswe nabasebenzisi abangafundanga. Ngoku, ukusebenzisa usetyenziso lwam kufuna ulwazi oluthile lwenkqubo.

Ndafunda iincwadi ndisebenzisa inkqubo IAaireader. Iyakwazi ukudibanisa izichazi-magama zangaphandle, kwaye xa uguqulela igama, igcina igama olibizele ukuguqulelwa kwifayile yombhalo. Ekuphela kwento eseleyo kukuguqulela la magama kunye nokwenza amakhadi e-ANKI.

Ekuqaleni ndazama ukusebenzisela ukuguqulela Isiguquleli sikaGoogle, Lingvo API njl. Kodwa izinto azizange zisebenze ngeenkonzo zasimahla. Ndiphelelwe umda wamahhala ngexesha lenkqubo yophuhliso, ukongeza, ngokwemiqathango yelayisenisi, andinalo ilungelo lokufihla amagama. Ngaxa lithile ndiye ndaqonda ukuba kufuneka ndiwaguqulele ngokwam amagama. Ngenxa yoko, kwabhalwa imodyuli dsl2html apho unokudibanisa khona DSL izichazi-magama kwaye ngubani owaziyo ukuba ziguqulelwa njani HTML ifomathi.

Le yindlela ungeniso lwesichazi-magama olujongeka ngayo kwi-*.html, ukhetho lwam xa kuthelekiswa nokhetho GoldenDict

Amabali amabini endlela u-ANKI anokukunceda ngayo ukuba ufunde ulwimi lwasemzini kwaye ulungiselele udliwano-ndlebe

Phambi kokuba ndikhangele igama kwizichazi-magama eziqhagamshelweyo, ndizisa kulo ifomu yesichazi-magama (lemma) usebenzisa ithala leencwadi I-Stanford CoreNLP. Enyanisweni, ngenxa yeli thala leencwadi, ndaqala ukubhala kwiJava kwaye isicwangciso sokuqala yayikukubhala yonke into kwiJava, kodwa kwinkqubo ndafumana ilayibrari. node-java apho ungenza ngokulula ikhowudi yeJava ukusuka kwi-nodejs kwaye enye ikhowudi ibhalwe kwiJavaScript. Ukuba bendifumene eli thala leencwadi ngaphambili, akukho nomgca omnye onokuthi ubhalwe kwiJava. Enye iprojekthi yecala eyazalwa kwinkqubo yindalo indawo yokugcina kunye namaxwebhu eDSL efunyenwe kumsebenzi womnatha kwifomati *.chm, waguqulwa waza wenziwa waba kwimo yobuthixo. Ukuba umbhali wefayile yoqobo ungumsebenzisi ngesiteketiso yozhic Xa ebona eli nqaku, ndimbulela kakhulu ngomsebenzi awenzileyo; ngaphandle kwamaxwebhu akhe, ngokuqinisekileyo ngendingazange ndiphumelele.

Ke, ndinegama kwisiNgesi, ungeniso lwalo lwesichazi-magama kwifomathi *.html, konke okuseleyo kukudibanisa yonke into, ukudala amanqaku e-ANKI ukusuka kuluhlu lwamagama kwaye uwafake kwi-database ye-ANKI. Ukwenzela le njongo le projekthi ilandelayo yenziwa idatha2anki. Ingathatha uluhlu lwamagama njengegalelo, ukuguqulela, ukwenza i-ANKI *.html amanqaku kwaye uwarekhode kwi-database ye-ANKI. Ekupheleni kwenqaku kukho imiyalelo malunga nendlela yokuyisebenzisa. Okwangoku, ibali lesibini kulapho uphinda-phindo olubekwe kwindawo lunokuba luncedo.

Ibali lesibini.

Bonke abantu abafuna i-specialty engaphezulu / engaphantsi, kuquka nabadwelisi benkqubo, bajongene nesidingo sokulungiselela udliwano-ndlebe. Uninzi lweengcamango ezibuzwayo kudliwano-ndlebe ongazisebenzisiyo kwimisebenzi yemihla ngemihla kwaye ziyalityalwa. Xa ndilungiselela udliwano-ndlebe, ndityhila amanqaku, incwadi, incwadi yereferensi, bendijongene nenyaniso yokuba kuthatha ixesha elininzi nengqalelo ukuhluza ulwazi osele usazi kuba alusoloko lubonakala kwaye kufuneka yifunde ngononophelo ukuze uqonde ukuba yintoni na. Xa ufika kwisihloko esifuna ngokwenene ukuphindaphinda, ngokuqhelekileyo kwenzeka ukuba sele udiniwe kwaye umgangatho wokulungiselela kwakho uhlupheka. Ngaxa lithile ndiye ndacinga, kutheni ungasebenzisi amakhadi e-ANKI kule nto? Ngokomzekelo, xa uthatha amanqaku ngesihloko, yenza ngokukhawuleza inqaku ngendlela yombuzo kunye nempendulo, kwaye xa uyiphinda, uya kukwazi ngokukhawuleza ukuba uyayazi impendulo yalo mbuzo okanye hayi.

Ingxaki kuphela eyavelayo yayikukuba ukuchwetheza imibuzo yayinde kakhulu kwaye iyindinisa. Ukwenza inkqubo ibe lula, idatha2anki iprojekthi ndongeze ukuguqula ukusebenza ku phawula okubhaliweyo kumakhadi e-ANKI. Konke okudingayo kukubhala ifayile enye enkulu apho imibuzo kunye neempendulo ziya kumakishwa ngokulandelelana kwangaphambi koonobumba, apho umhlalutyi uya kuqonda ukuba uphi umbuzo kwaye impendulo iphi.

Nje ukuba le fayile yenziwe, usebenzisa i-data2anki kwaye yenza amakhadi e-ANKI. Ifayile yoqobo kulula ukuyihlela kunye nokwabelana, udinga nje ukucima ikhadi elihambelanayo (a) kwaye uqhube inkqubo kwakhona, kwaye inguqulelo entsha iya kwenziwa.

Ukufakela kunye nokusetyenziswa

  1. Ukufakela i-ANKI + AnkiConnect

    1. Khuphela i-ANKI apha: https://apps.ankiweb.net/
    2. Faka iplagi ye-AnkiConnect: https://ankiweb.net/shared/info/2055492159

  2. isicwangciso idatha2anki

    1. Khuphela idatha2anki ukusuka kwindawo yokugcina i-github
      git clone https://github.com/anatoly314/data2anki
    2. Faka ukuxhomekeka
      cd data2anki && npm install
    3. Khuphela ukuxhomekeka kwejava https://github.com/anatoly314/data2anki/releases/download/0.1.0/jar-dependencies.zip
    4. Ukukhupha izinto jar-dependencies.zip kwaye ubeke imixholo yayo data2anki/java/jars

  3. Sebenzisa ukuguqulela amagama:

    1. Kwifayile idatha2anki/config.json:

      • kwisitshixo imo ngenisa ixabiso dsl2anki

      • kwisitshixo iimodyuli.dsl.anki.deckName ΠΈ iimodyuli.dsl.anki.modelName bhala ngokufanelekileyo Igama leDekhi ΠΈ model Igama (kufuneka sele senziwe ngaphambi kokudala amakhadi). Okwangoku kuphela uhlobo lwemodeli oluxhaswayo esiSiseko:

        Inamabala angaphambili nasemva, kwaye iya kudala ikhadi elinye. Umbhalo owufakayo Ngaphambili uya kuvela ngaphambili ekhadini, kwaye umbhalo owufaka ngasemva uya kuvela ngasemva ekhadini.

        liphi igama lokuqala? Ibala elingaphambili, kwaye inguqulelo iya kuba kwi Indawo yangasemva.

        Akukho ngxaki yokongeza inkxaso Ikhadi elisisiseko (kunye nekhadi elibuyiselwe umva), apho ikhadi le-reverse liya kudalwa igama kunye nokuguqulelwa, apho kusekelwe kwinguqulelo kuya kufuneka ukhumbule igama lokuqala. Konke okudingayo lixesha kunye nomnqweno.

      • kwisitshixo iimodyuli.dsl.dictionariesPath bhalisa uluhlu oluqhagamshelwe *.dsl izichazi-magama. Isichazi-magama ngasinye esiqhagamshelwe nguvimba weefayili apho iifayile zesichazi-magama zibekwe ngokuhambelana nefomathi: Isakhiwo sesichazi-magama seDSL

      • kwisitshixo iimodyuli.dsl.wordToTranslatePath ngenisa umendo kuluhlu lwamagama ofuna ukuwaguqulela.

    2. Qalisa ngesicelo se-ANKI esisebenzayo
      node data2ankiindex.js
    3. INZUZO!!!

  4. Ukusetyenziswa ekudaleni amakhadi ukusuka kuphawulo

    1. Kwifayile idatha2anki/config.json:

      • kwisitshixo imo ngenisa ixabiso markdown2anki
      • kwisitshixo iimodyuli.markdown.anki.deckName ΠΈ iimodyuli.dsl.anki.modelName bhala ngokufanelekileyo Igama leDekhi ΠΈ model Igama (kufuneka sele senziwe ngaphambi kokudala amakhadi). Kuba markdown2anki imowudi yohlobo kuphela oluxhaswayo esiSiseko.
      • kwisitshixo iimodyuli.markdown.selectors.startQuestionSelectors ΠΈ iimodyuli.markdown.selectors.startAnswerSelectors ubhala abakhethi ophawula ngabo isiqalo sombuzo kunye nempendulo, ngokulandelelanayo. Umgca onomkhethi ngokwawo awuzukwahlulwa kwaye awuyi kuphelela ekhadini; umhlaseli uya kuqalisa ukusebenza kumgca olandelayo.

        Umzekelo, eli khadi lombuzo/lempendulo:

        Amabali amabini endlela u-ANKI anokukunceda ngayo ukuba ufunde ulwimi lwasemzini kwaye ulungiselele udliwano-ndlebe

        Iyakujongeka ngolu hlobo kuphawulo:
        #UMBUZO# ## Umbuzo 5. Bhala umsebenzi we-mul oza kusebenza kakuhle xa ucetywa ngesintaksi silandelayo. ``` javascript console.log(mul(2)(3)(4)); // imveliso : 24 console.log (mul (4) (3) (4)); // imveliso : 48 ``` #IMPENDULO // imbuyekezo yomsebenzi ongachazwanga x * y * z; }; }; } ``` Apha `mul` umsebenzi wamkela impikiswano yokuqala kwaye ibuyisela umsebenzi ongachazwanga igama othatha iparameter yesibini kwaye ibuyisele umsebenzi ongachazwanga igama othatha iparameter yesithathu kwaye ibuyisela uphinda-phindo lweempikiswano ezigqithiswa ngokulandelelana Kwi Javascript umsebenzi ochaziweyo. ngaphakathi inofikelelo kuguquko lomsebenzi wangaphandle kwaye umsebenzi yinto yodidi lokuqala ukuze ibuyiswe ngumsebenzi ngokunjalo kwaye igqithiswe njengengxoxo komnye umsebenzi. - Umsebenzi ngumzekelo wohlobo lweNjongo - Umsebenzi unokuba neepropati kwaye unekhonkco emva kwindlela yomakhi wayo - Umsebenzi unokugcinwa njengento eguquguqukayo - Umsebenzi unokugqithiswa njengeparameter komnye umsebenzi - Umsebenzi ungagcinwa ubuyile komnye umsebenzi
        

        Umzekelo othathwe apha: 123-JavaScript-Udliwano-ndlebe-imibuzo

        Kukho kwakhona ifayile enemizekelo kwifolda yeprojekthi examples/markdown2anki-example.md

      • kwisitshixo iimodyuli.markdown.pathToFile
        bhala phantsi umendo wefayile apho *.md umbuzo/ifayile yempendulo

    2. Qalisa ngesicelo se-ANKI esisebenzayo
      node data2ankiindex.js
    3. INZUZO!!!

Nantsi indlela ekhangeleka ngayo kwifowuni ephathwayo:

Isiphumo

Amakhadi afunyenwe kwi-desktop version ye-ANKI adityaniswa ngaphandle kweengxaki ngelifu le-ANKI (esimahla ukuya kuthi ga kwi-100mb), emva koko unokuzisebenzisa kuyo yonke indawo. Kukho abathengi be-Android kunye ne-iPhone, kwaye unokuyisebenzisa kwisikhangeli. Ngenxa yoko, ukuba unexesha ongenanto yokuchitha kuyo, endaweni yokuskrola ngokungenanjongo kuFacebook okanye iikati kwi-Instagram, unokufunda into entsha.

Ipilo

Njengoko benditshilo, oku kungaphezulu kwe-POC esebenzayo onokuyisebenzisa kunemveliso egqityiweyo. Malunga ne-30% yomgangatho wokwahlulahlula we-DSL awuphunyezwanga, kwaye ke ngoko, umzekelo, ayilulo lonke ungeniso lwesichazi-magama olukwizichazi-magama olunokufunyanwa, kukho nombono wokuphinda uwubhale kuwo JavaScript, kuba ndifuna "ukuhambelana", kwaye ngaphandle koko, ngoku ayibhalwanga ngokufanelekileyo. Ngoku i-parser yakha umthi, kodwa ngokombono wam oku akuyomfuneko kwaye akufuneki ukuba nzima ikhowudi. IN markdown2anki Imowudi, imifanekiso ayicalulwanga. Ndiza kuzama ukusika kancinci kancinci, kodwa ekubeni ndizibhalela, ndiza kuqala ndisombulule iingxaki endizozinyathela ngokwam, kodwa ukuba kukho umntu ofuna ukunceda, wamkelekile. Ukuba unemibuzo malunga neprogram, ndiya kuvuya ukunceda ngemiba evulekileyo kwiiprojekthi ezifanelekileyo. Bhala ezinye izigxeko kunye neengcebiso apha. Ndiyathemba ukuba le projekthi iya kuba luncedo kumntu.

PS Ukuba uqaphela naziphi na iimpazamo (kwaye, ngelishwa, kukho ezinye), bhala kum kumyalezo womntu, ndiya kulungisa yonke into.

umthombo: www.habr.com

Yongeza izimvo