Neovim 0.6.0, útgáfa af Vim ritlinum sem einbeitir sér að því að auka sveigjanleika og möguleika á að auka teygjanleika, hefur verið gefin út. Verkefnið hefur verið að endurvinna Vim kóðagrunninn í meira en sjö ár og kynnt breytingar sem einfalda viðhald kóða, bjóða upp á verkfæri til að skipta vinnu milli margra viðhaldsaðila, aðskilja viðmótið frá kjarnanum (viðmótið er hægt að breyta án þess að snerta innri þættina) og innleiða nýja, teygjanlega, viðbótabyggða arkitektúr. Upprunalega verk verkefnisins er leyfisveitt undir Apache 2.0 leyfinu og kjarnahlutinn er leyfisveittur undir Vim leyfinu. Fullbúnar byggingar eru tiltækar fyrir ... Linux (mynd af forriti), Windows и macOS.
Eitt af vandamálunum við Vim sem olli stofnun Neovim var uppblásinn, einlitur kóðagrunnur hans, sem samanstendur af meira en 300 þúsund línum af C (C89) kóða. Aðeins fáir skilja öll blæbrigði Vim kóðagrunnsins og öllum breytingum er stjórnað af einum umsjónarmanni, sem gerir það erfitt að viðhalda og bæta ritstjórann. Í stað kóðans sem er innbyggður í Vim kjarna til að styðja við GUI, leggur Neovim til að nota alhliða lag sem gerir þér kleift að búa til viðmót með ýmsum verkfærasettum.
Viðbætur fyrir Neovim eru settar af stað sem aðskilin ferli, fyrir samskipti sem MessagePack sniðið er notað við. Samskipti við viðbætur fara fram ósamstillt, án þess að hindra grunnþætti ritilsins. Til að fá aðgang að viðbótinni er hægt að nota TCP fals, þ.e. hægt er að keyra viðbótina á ytra kerfi. Á sama tíma er Neovim afturábak samhæft við Vim, heldur áfram að styðja Vimscript (Lua er í boði sem valkostur) og styður tengingar fyrir flestar staðlaðar Vim viðbætur. Hægt er að nota háþróaða eiginleika Neovim í viðbætur sem eru byggðar með Neovim-sértækum API.
Eins og er hafa um 130 sértækar viðbætur þegar verið útbúnar, bindingar eru fáanlegar til að búa til viðbætur og útfæra viðmót með því að nota ýmis forritunarmál (C++, Clojure, Perl, Python, Go, Java, Lisp, Lua, Ruby) og ramma (Qt, ncurses, Node .js, Electron, GTK). Nokkrir notendaviðmótsvalkostir eru í þróun. GUI viðbætur eru mjög eins og viðbætur, en ólíkt viðbætur, hefja þær símtöl í Neovim aðgerðir, en viðbætur eru kallaðar innan frá Neovim.
Sumar breytingarnar í nýju útgáfunni:
- Stuðningur fyrir staðbundnar breytur hefur verið bætt við vim forskriftir, umfang þeirra takmarkast aðeins af núverandi forskrift.
- Verulega endurbættur Lua tungumálastuðningur fyrir viðbótaþróun og stillingarstjórnun. Í vim skriftum hefur hæfileikinn til að kalla Lua aðgerðir sem aðferðir verið bætt við með því að tilgreina v:lua forskeytið (til dæmis „arg1->v:lua.somemod.func(arg2)“).
- Getu innbyggða LSP (Language Server Protocol) biðlarans hefur verið aukin, sem hægt er að nota til að flytja rökfræði greiningar og kóðunar til ytri kerfa. netþjónarMeð því að nota LSP er hægt að nota meira en 150 tilbúna meðhöndlunaraðila fyrir ýmis forritunarmál, undirbúna fyrir kóðaritilinn Visual Studio Code.
- Bætt verkfæri til að greina vandamál í kóða. Bætti við möguleikanum á að birta texta greiningarskilaboða og fljótandi glugga með kóða sem tengist slíkum skilaboðum. Vinnsla greiningarskilaboða sem send eru af LSP þjóninum er veitt.
- Bætt við stuðningi við sýndarstrengi, sem hægt er að nota til dæmis til að birta kubba með þjónustuupplýsingum.
- Ýmsar hagræðingar hafa verið gerðar, til dæmis er kjötkássatafla virkjuð fyrir auðkennd hópnöfn.
- Stuðningur hefur verið hættur Windows 7 og 32-bita samsetningar fyrir Windows.
Heimild: opennet.ru
