Yn it ramt fan it Neovim-projekt is de Vim-koadebasis foar mear as fiif jier op 'e nij bewurke, wêrtroch't wizigingen makke wurde dy't koade-ûnderhâld ferienfâldigje, in middel leverje om arbeid te ferdielen tusken ferskate ûnderhâlders, skiede de ynterface fan 'e basis diel (de ynterface kin feroare wurde sûnder oanreitsje de internals) en útfiere in nij
Ien fan 'e problemen mei Vim dy't de skepping fan Neovim oanmoedige wie syn opblaasde, monolityske koadebasis, besteande út mear as 300 tûzen rigels fan C (C89) koade. Allinich in pear minsken begripe alle nuânses fan 'e Vim-koadebase, en alle wizigingen wurde regele troch ien ûnderhâlder, wat it dreech makket om de bewurker te behâlden en te ferbetterjen. Ynstee fan de koade ynboud yn 'e Vim-kearn om de GUI te stypjen, stelt Neovim foar om in universele laach te brûken wêrmei jo ynterfaces kinne meitsje mei ferskate toolkits.
Plugins foar Neovim wurde lansearre as aparte prosessen, foar ynteraksje wêrmei it MessagePack-formaat wurdt brûkt. Ynteraksje mei plugins wurdt asynchronysk útfierd, sûnder de basiskomponinten fan 'e bewurker te blokkearjen. Om tagong te krijen ta de plugin kin in TCP-socket brûkt wurde, d.w.s. de plugin kin wurde útfierd op in ekstern systeem. Tagelyk bliuwt Neovim efterút kompatibel mei Vim, bliuwt Vimscript stypje (Lua wurdt oanbean as alternatyf) en stipet ferbiningen foar de measte standert Vim-plugins. De avansearre funksjes fan Neovim kinne brûkt wurde yn plugins boud mei Neovim-spesifike API's.
Op it stuit al
Guon fan 'e feroarings yn
- In grut part fan nije API-funksjes en eveneminten foar brûkersynterface tafoege.
- In nije standertbibleteek Nvim-Lua tafoege foar it ûntwikkeljen fan plugins yn 'e Lua-taal.
- De ûntwikkeling fan it protokol foar brûkersynterface giet troch, bywurkjen fan ynformaasje op it skerm op it nivo fan rigels, ynstee fan yndividuele karakters.
- Stipe tafoege foar folweardige driuwende finsters, dy't op elke lokaasje kinne wurde pleatst, taheakke, keppele oan yndividuele bewurkingsbuffers, en groepeare yn Multigrid-modus.
- Opsje 'pumblend' tafoege foar trochsichtige útklapmenu's.
Boarne: opennet.ru