O fewn fframwaith y prosiect Neovim, mae sylfaen cod Vim wedi bod yn cael ei ail-weithio ers mwy na phum mlynedd, ac o ganlyniad mae newidiadau'n cael eu gwneud sy'n symleiddio cynnal a chadw cod, yn darparu modd o rannu llafur rhwng sawl cynhaliwr, gwahanu'r rhyngwyneb oddi wrth y rhan sylfaen (gellir newid y rhyngwyneb heb gyffwrdd â'r mewnol) a gweithredu un newydd
Un o'r problemau gyda Vim a ysgogodd greu Neovim oedd ei sylfaen cod chwyddedig, monolithig, yn cynnwys mwy na 300 mil o linellau o god C (C89). Dim ond ychydig o bobl sy'n deall holl naws sylfaen cod Vim, ac mae pob newid yn cael ei reoli gan un cynhaliwr, sy'n ei gwneud hi'n anodd cynnal a gwella'r golygydd. Yn lle'r cod sydd wedi'i ymgorffori yng nghraidd Vim i gefnogi'r GUI, mae Neovim yn cynnig defnyddio haen gyffredinol sy'n eich galluogi i greu rhyngwynebau gan ddefnyddio amrywiol becynnau cymorth.
Mae ategion ar gyfer Neovim yn cael eu lansio fel prosesau ar wahân, ar gyfer rhyngweithio y defnyddir y fformat MessagePack â nhw. Mae rhyngweithio ag ategion yn cael ei wneud yn anghydamserol, heb rwystro cydrannau sylfaenol y golygydd. I gael mynediad i'r ategyn, gellir defnyddio soced TCP, h.y. gellir rhedeg yr ategyn ar system allanol. Ar yr un pryd, mae Neovim yn parhau i fod yn gydnaws yn ôl â Vim, yn parhau i gefnogi Vimscript (cynigir Lua fel dewis arall) ac yn cefnogi cysylltiadau ar gyfer y mwyafrif o ategion Vim safonol. Gellir defnyddio nodweddion uwch Neovim mewn ategion a adeiladwyd gan ddefnyddio APIs penodol i Neovim.
Ar hyn o bryd yn barod
Rhai o'r newidiadau yn
- Ychwanegwyd cyfran fawr o swyddogaethau API newydd a digwyddiadau rhyngwyneb defnyddiwr.
- Ychwanegwyd llyfrgell safonol newydd Nvim-Lua ar gyfer datblygu ategion yn yr iaith Lua.
- Mae datblygiad y protocol rhyngwyneb defnyddiwr yn parhau, gan ddiweddaru gwybodaeth ar y sgrin ar lefel llinellau, yn hytrach na chymeriadau unigol.
- Cefnogaeth ychwanegol ar gyfer ffenestri arnofio llawn, y gellir eu gosod mewn unrhyw leoliad, eu cysylltu, eu cysylltu â byfferau golygu unigol, a'u grwpio yn y modd Multigrid.
- Ychwanegwyd opsiwn 'pumblend' ar gyfer cwymplenni tryloyw.
Ffynhonnell: opennet.ru