I-Neovim 0.4, inguqulo yesimanje yomhleli we-Vim, iyatholakala

eshicilelwe ukukhululwa I-Neovim 0.4, imfoloko evela kumhleli we-Vim, kugxilile ekwandiseni ukunwebeka nokuvumelana nezimo. Ukuthuthukiswa kwangempela kwephrojekthi ukubhebhetheka ngaphansi kwelayisensi ye-Apache 2.0, kanye nengxenye eyisisekelo ngaphansi kwelayisensi ye-Vim.

Ngaphakathi kohlaka lwephrojekthi ye-Neovim, isisekelo sekhodi ye-Vim sesilokhu sisebenza kabusha iminyaka engaphezu kwemihlanu, ngenxa yalokho izinguquko ezenziwayo ezenza kube lula ukugcinwa kwekhodi, zinikeze indlela yokuhlukanisa umsebenzi phakathi kwabanakekeli abambalwa, kuhlukanise isixhumi esibonakalayo ku ingxenye eyisisekelo (i-interface ingashintshwa ngaphandle kokuthinta abangaphakathi) futhi isebenzise entsha izakhiwo ezandayo ngokusekelwe kuma-plugin.

Enye yezinkinga nge-Vim edale ukuthi kudalwe i-Neovim isisekelo sayo sekhodi ekhukhumele, esine-monolithic, ehlanganisa imigqa engaphezu kwezinkulungwane ezingama-300 yekhodi C (C89). Abantu abambalwa kuphela abaqonda wonke ama-nuances we-Vim codebase, futhi zonke izinguquko zilawulwa umnakekeli oyedwa, okwenza kube nzima ukugcina nokuthuthukisa umhleli. Esikhundleni sekhodi eyakhelwe ku-Vim core ukusekela i-GUI, i-Neovim ihlongoza ukusebenzisa isendlalelo sendawo yonke esikuvumela ukuthi udale izixhumanisi usebenzisa amathuluzi ahlukahlukene.

Ama-plugin e-Neovim ethulwa njengezinqubo ezihlukene, zokusebenzelana lapho kusetshenziswa ifomethi ye-MessagePack. Ukusebenzisana nama-plugin kwenziwa ngokulinganayo, ngaphandle kokuvimbela izingxenye eziyisisekelo zomhleli. Ukuze ufinyelele i-plugin, isokhethi ye-TCP ingasetshenziswa, i.e. i-plugin ingasebenza kusistimu yangaphandle. Ngasikhathi sinye, i-Neovim ihlala ihlehla ihambisana ne-Vim, iyaqhubeka nokusekela i-Vimscript (i-Lua inikezwa njengenye indlela) futhi isekela ukuxhumana kwama-plugin amaningi we-Vim ajwayelekile. Izici ezithuthukile ze-Neovim zingasetshenziswa kuma-plugin akhiwe kusetshenziswa ama-Neovim-specific API.

Okwamanje vele ilungisiwe cishe ama-plugin athile angama-80, ukubophezela kuyatholakala ekudaleni ama-plugin nokusebenzisa ukuxhumana kusetshenziswa izilimi zokuhlela ezahlukahlukene (C++, Clojure, Perl, Python, Go, Java, Lisp, Lua, Ruby) kanye nezinhlaka (Qt5, ncurses, Node.js, I-electron, GTK+). Izinketho zokusetshenziswa kubonwa ezimbalwa ziyathuthukiswa. Izengezo ze-GUI zifana nama-plugin, kodwa ngokungafani nama-plugin, aqala izingcingo eziya emisebenzini ye-Neovim, kuyilapho ama-plugin ebizwa kusukela ngaphakathi kwe-Neovim.

Ezinye zezinguquko ku inguqulo entsha:

  • Kwengezwe ingxenye enkulu yemisebenzi emisha ye-API nemicimbi yokusebenzelana komsebenzisi.
  • Kwengezwe umtapo wolwazi omusha we-Nvim-Lua wokuthuthukisa ama-plugin ngolimi lwesiLua.
  • Ukuthuthukiswa kwephrothokholi yokusebenzelana komsebenzisi kuyaqhubeka, kubuyekezwa ulwazi esikrinini ezingeni lemigqa, kunezinhlamvu ngazinye.
  • Ukwesekwa okwengeziwe kwamafasitela antantayo agcwele ngokugcwele, angabekwa kunoma iyiphi indawo, anamathiselwe, axhunywe kumabhafa wokuhlela angawodwana, futhi ahlanganiswe kumodi ye-Multigrid.
  • Kwengezwe inketho ye-'pumblend' yamamenyu okwehla akhanyayo.

Source: opennet.ru

Engeza amazwana