Fa'asa'olotoina o le Neovim 0.6.0, o se fa'aonaponei fa'aonaponei o le fa'atonu Vim

Neovim 0.6.0 ua faʻasaʻolotoina, o se tui o le Vim faatonu na taulaʻi i le faʻalauteleina o le faʻalauteleina ma le fetuutuunai. O le poloketi o loʻo toe faʻaaogaina le Vim code base mo le sili atu ma le fitu tausaga, o se taunuuga o suiga ua faia e faafaigofie ai le tausiga o tulafono, maua ai se auala e vaeluaina ai galuega i le va o le tele o tagata tausia, vavae ese le atinaʻe mai le vaega autu (o le atinaʻe e mafai ona suia e aunoa ma le paʻi atu i totonu) ma faʻatino se fausaga fou faʻalauteleina e faʻavae i luga o plugins. O uluai atinaʻe o le poloketi o loʻo tufatufa atu i lalo o le Apache 2.0 laisene, ma o le vaega autu o loʻo tufatufa atu i lalo o le laisene Vim. O fa'apotopotoga ua saunia ua saunia mo Linux (appimage), Windows ma macOS.

O se tasi o faʻafitauli ma Vim na mafua ai le fausiaina o Neovim o lona faʻamaʻi, monolithic code base, e aofia ai le sili atu ma le 300 afe laina o le C (C89) code. E naʻo ni nai tagata e malamalama i faʻamatalaga uma o le Vim codebase, ma o suiga uma e pulea e le tasi e tausia, lea e faigata ai ona tausia ma faʻaleleia le faatonu. Nai lo le faʻailoga ua fausia i totonu o le Vim core e lagolago ai le GUI, Neovim e faʻatatau i le faʻaaogaina o se laulau lautele e mafai ai ona e fatuina fesoʻotaʻiga e faʻaaoga ai meafaigaluega eseese.

O mea fa'apipi'i mo Neovim ua fa'alauiloaina o ni faiga eseese, mo le fegalegaleai lea e fa'aoga ai le MessagePack format. Fegalegaleaiga ma plugins e faia asynchronously, e aunoa ma le poloka o vaega autu o le faatonu. Ina ia maua le faʻapipiʻi, e mafai ona faʻaogaina se socket TCP, i.e. e mafai ona tamoe le plugin i luga o se faiga fafo. I le taimi lava e tasi, o loʻo tumau pea Neovim i tua e fetaui ma Vim, faʻaauau ona lagolagoina Vimscript (Lua e ofoina atu e fai ma sui) ma lagolagoina fesoʻotaʻiga mo le tele o faʻapipiʻi Vim masani. E mafai ona fa'aogaina foliga fa'apitoa a Neovim i fa'apipi'i fausia e fa'aaoga ai API fa'apitoa Neovim.

I le taimi nei, e tusa ma le 130 faʻapipiʻi faʻapitoa ua uma ona saunia, faʻapipiʻi avanoa mo le fatuina o plugini ma le faʻaogaina o fesoʻotaʻiga e faʻaaoga ai gagana eseese polokalame (C ++, Clojure, Perl, Python, Go, Java, Lisp, Lua, Ruby) ma faʻatulagaga (Qt, ncurses, Node .js, Electron, GTK). O lo'o fa'atupuina le tele o avanoa fa'aoga. GUI faʻaopoopoga e pei o plugins, ae le pei o plugins, latou te amataina valaʻau i galuega Neovim, aʻo faʻapipiʻi e valaʻau mai totonu o Neovim.

O nisi o suiga i le lomiga fou:

  • Lagolago mo suiga faʻapitonuʻu ua faʻaopoopoina i vim scripts, o lona lautele e faʻatapulaʻaina e naʻo le tusitusiga o loʻo iai nei.
  • Ua matua fa'aleleia atili le lagolago i le gagana Lua mo le atina'eina o masini ma le fa'atonutonuina o fa'atonuga. I vim scripts, ua fa'aopoopoina le tomai e vala'au ai Lua e fai ma metotia e ala i le fa'ama'otiina o le v:lua prefix (fa'ata'ita'iga, “arg1->v:lua.somemod.func(arg2)”).
  • O le gafatia o le LSP ua fausia i totonu (Language Server Protocol) ua faʻalauteleina, lea e mafai ona faʻaaogaina e faʻafeiloaʻi ai le suʻesuʻeina o faʻamatalaga ma le faʻamaeʻaina o code i sapalai fafo. O le faʻaaogaina o le LSP e mafai ai ona e faʻaogaina le sili atu ma le 150 tagata faʻapipiʻi saunia mo gagana polokalame eseese ua saunia mo le faatonu o le Visual Studio Code.
  • Faʻaleleia meafaigaluega mo le suʻeina o faʻafitauli ile code. Faʻaopoopo le tomai e faʻaalia ai le tusitusiga o faʻamatalaga faʻamaonia ma faʻamalama faʻafefe ma faʻailoga e fesoʻotaʻi ma ia feʻau. O lo'o tu'uina atu le fa'agaioiina o fe'au fa'ama'i e tu'uina atu e le server LSP.
  • Faʻaopoopoina le lagolago mo manoa faʻapitoa, lea e mafai ona faʻaaogaina, mo se faʻataʻitaʻiga, e faʻaalia poloka ma faʻamatalaga auaunaga.
  • Ua faia le tele o fa'ata'ita'iga o fa'atinoga, mo se fa'ata'ita'iga, ua fa'agaoioi le laulau hash mo igoa fa'ailoga vaega.
  • Lagolago mo le Windows 7 ma le 32-bit fau o Windows ua fa'agata.

puna: opennet.ru

Faaopoopo i ai se faamatalaga