Siideynta Neovim 0.6.0, nooca la casriyeeyay ee tafatiraha Vim

Neovim 0.6.0 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. Kulamo diyaarsan ayaa loo diyaariyey Linux (appimage), Windows iyo macOS.

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:

  • Taageerada doorsoomayaasha maxalliga ah ayaa lagu daray qoraallada vim, kuwaas oo baaxadda ay xaddidan tahay oo keliya qoraalka hadda jira.
  • Taageerada luqadda Lua oo si weyn loo hagaajiyay ee horumarinta plugin iyo maareynta qaabeynta. Qoraallada vim, awoodda loogu yeero hawlaha Lua sida hababka ayaa lagu daray iyadoo la qeexayo horgalaha v: lua (tusaale, "arg1-> v: lua.somemod.func(arg2)").
  • Awoodaha macmiilka LSP-ku-dhisan (Protocol Server Protocol) ayaa la balaariyay, kaas oo loo isticmaali karo in lagu wareejiyo macquulka falanqaynta iyo dhamaystirka koodka server-yada dibadda. Isticmaalka LSP wuxuu kuu ogolaanayaa inaad isticmaasho in ka badan 150 gacan-qabayaal diyaarsan oo loogu talagalay luqadaha barnaamijyada kala duwan ee loo diyaariyey tifaftiraha Code Studio Code.
  • Qalabka la hagaajiyay ee lagu ogaado dhibaatooyinka koodka. Waxaa lagu daray awoodda lagu soo bandhigo qoraalka farriimaha ogaanshaha iyo daaqadaha sabbaynaya ee leh koodka la xidhiidha farriimahaas. Hagaajinta fariimaha ogaanshaha ee uu gudbiyo server-ka LSP ayaa la bixiyaa.
  • Taageero lagu daray xargaha dalwaddii, kuwaas oo loo isticmaali karo, tusaale ahaan, si loo muujiyo baloogyada macluumaadka adeegga.
  • Waxqabadyo kala duwan ayaa la sameeyay, tusaale ahaan, miiska xashiishku waxa loo dajiyay magacyada kooxda la iftiimiyay.
  • Taageerada dhismooyinka Windows 7 iyo 32-bit ee Windows waa la joojiyay.

Source: opennet.ru

Add a comment