Neovim 0.5, nooca la cusboonaysiiyay ee tafatiraha Vim, ayaa diyaar ah

Ka dib ku dhawaad ​​laba sano oo horumarineed, Neovim 0.5 ayaa la sii daayay, fargeeto ah tifaftiraha Vim oo diiradda saaraya kordhinta dabacsanaanta iyo dabacsanaanta. Mashruucu wuxuu dib u shaqeynayay saldhigga Vim code in ka badan toddobo sano, taas oo ka dhalatay isbeddellada la sameeyay kuwaas oo fududeynaya dayactirka koodhka, bixinta habka loo qaybiyo shaqada ee u dhexeeya dhowr ilaaliye, kala sooca interface ka qaybta aasaasiga ah (interface-ka ayaa noqon kara). bedelay adiga oo aan taaban gudaha) oo hirgeli qaab dhismeed cusub oo la fidin karo oo ku saleysan plugins. Horumarka asalka ah ee mashruuca waxaa lagu qaybiyaa shatiga Apache 2.0, iyo qaybta aasaasiga ah waxaa lagu qaybiyaa shatiga Vim.

Mid ka mid ah dhibaatooyinka Vim ee keenay abuurista Neovim waxay ahayd bararsan, saldhigga koodhka monolithic, oo ka kooban in ka badan 300 kun oo xariiq oo C (C89) ah. Kaliya dad yar ayaa fahma dhammaan nuucyada Vim codebase, iyo dhammaan isbeddelada waxaa maamula hal ilaaliye, taas oo adkeynaysa in la ilaaliyo oo la hagaajiyo tifaftiraha. Halkii koodka lagu dhex dhisay Vim core si uu u taageero GUI, Neovim wuxuu soo jeedinayaa isticmaalka lakabka caalamiga ah kaas oo kuu ogolaanaya inaad abuurto is-dhexgal adigoo isticmaalaya qalab kala duwan.

Plugins for Neovim waxaa loo bilaabay sidii habab kala duwan, oo loogu talagalay isdhexgalka kaas oo qaabka MessagePack loo isticmaalo. Isdhexgalka plugins waxaa loo fuliyaa si isku mid ah, iyada oo aan la xannibin qaybaha aasaasiga ah ee tifaftiraha. Si aad u gasho plugin, godad TCP ayaa la isticmaali karaa, i.e. Plugin waxaa lagu maamuli karaa nidaamka dibadda. Isla mar ahaantaana, Neovim wuxuu sii ahaanayaa dib u dhac ku yimaada Vim, wuxuu sii wadaa inuu taageero Vimscript (Lua waxaa loo bixiyaa beddelka) wuxuuna taageeraa isku xirka fiilooyinka caadiga ah ee Vim. Tilmaamaha horumarsan ee Neovim waxa loo isticmaali karaa plugins la dhisay iyadoo la isticmaalayo APIs-gaar ah Neovim.

Waqtigan xaadirka ah, qiyaastii 130 plugins gaar ah ayaa horay loo diyaariyey, xirmooyinka ayaa diyaar u ah abuurista plugins iyo hirgelinta isdhexgalka iyadoo la adeegsanayo luqadaha barnaamijyada kala duwan (C ++, Clojure, Perl, Python, Go, Java, Lisp, Lua, Ruby) iyo qaab-dhismeedka (Qt, ncurses, Node .js, Electron, GTK). Dhawr ikhtiyaari is-dhexgal isticmaale ayaa la soo saarayaa. GUI add-ons waxay la mid yihiin plugins, laakiin waxay ka duwan yihiin plugins, waxay bilaabaan wicitaanada hawlaha Neovim, halka plugins laga soo wacayo gudaha Neovim.

Qaar ka mid ah isbeddellada nooca cusub:

  • Waxaa lagu daray macmiil LSP ku dhex dhisan (Protocol Server Protocol) gudaha Lua, kaas oo loo isticmaali karo in lagu xidho adeegyada dibadda ee falanqaynta iyo dhamaystirka koodka.
  • Waxaa lagu daray API si loo xakameeyo naqshadaynta qoondaynta.
  • Waxaa lagu soo daray API si loo isticmaalo summada la dheereeyey si ay ula socdaan isbeddelada heerka byte.
  • Taageerada la balaariyay ee Lua ahaan luqad ahaan horumarinta plugin iyo maareynta qaabeynta.
  • Taageero tijaabo ah oo lagu daray mishiinka baarkinka geed-joogaha.

Source: opennet.ru

Add a comment