Tukunga o Neovim 0.7.0, he putanga hou o te ētita Vim

Kua tukuna a Neovim 0.7.0, he marau o te etita Vim e aro ana ki te whakanui ake i te whanui me te ngawari. Neke atu i te whitu nga tau e mahi ana te kaupapa nei i te turanga waehere Vim, na te mea ka puta nga huringa hei whakamaarama i te tiaki i nga waehere, ka taea te wehewehe i nga mahi i waenga i nga kai tiaki, wehe i te atanga mai i te waahanga turanga (ka taea te atanga. ka whakarereke me te kore e pa ki nga roto) me te whakatinana i tetahi hoahoanga whakawhanui hou i runga i nga taapiri. Ko nga whanaketanga taketake o te kaupapa ka tohatohahia i raro i te raihana Apache 2.0, ka tohatohahia te waahanga taketake i raro i te raihana Vim. Kua rite nga huihuinga kua rite mo te Linux (appimage), Windows me te macOS.

Ko tetahi o nga raruraru ki a Vim i akiaki i te hanganga o Neovim ko tona pupuhi, te turanga waehere monolithic, neke atu i te 300 mano nga rarangi o te waehere C (C89). He torutoru noa nga tangata e mohio ana ki nga ahuatanga katoa o te Vim codebase, a ko nga huringa katoa e whakahaeretia ana e te kaitiaki kotahi, he uaua ki te pupuri me te whakapai ake i te ētita. Engari i te waehere i hangaia ki roto i te Vim matua hei tautoko i te GUI, ka whakaaro a Neovim ki te whakamahi i tetahi paparanga ao e taea ai e koe te hanga hononga ma te whakamahi i nga momo kete taputapu.

Ko nga monomai mo Neovim ka whakarewahia hei tukanga motuhake, mo te taunekeneke ki te whakamahi i te whakatakotoranga MessagePack. Ko te taunekeneke me nga mono ka mahia i te wa kotahi, me te kore e aukati i nga waahanga taketake o te ētita. Hei uru atu ki te mono, ka taea te whakamahi i te turanga TCP, i.e. ka taea te whakahaere i te mono i runga i te punaha o waho. I te wa ano, ka noho whakamuri a Neovim ki a Vim, ka tautoko tonu i a Vimscript (Kei te tukuna a Lua hei rereke) me te tautoko i nga hononga mo te nuinga o nga taputapu Vim paerewa. Ka taea te whakamahi i nga ahuatanga matatau a Neovim i roto i nga monomai i hangaia ma te whakamahi i nga API motuhake a Neovim.

I tenei wa, tata ki te 130 nga taputapu motuhake kua oti te whakarite, kei te waatea nga here mo te hanga monomai me te whakatinana i nga hononga ma te whakamahi i nga momo reo whakamaori (C++, Clojure, Perl, Python, Go, Java, Lisp, Lua, Ruby) me nga anga (Qt, ncurses, Node .js, Electron, GTK). He maha nga whiringa atanga kaiwhakamahi kei te whakawhanakehia. Ko nga taapiri GUI he rite ki nga monomai, engari kaore i rite ki nga mono, ka timata nga waea ki nga mahi Neovim, i te wa e karangahia ana nga mono mai i roto i te Neovim.

Ko te putanga hou e tuku tautoko tuatahi mo nga mahi mamao, ka taea e koe te whakahaere i a Neovim i runga i te tūmau me te hono atu ki a ia mai i te punaha kiritaki ma te whakamahi i tetahi ui_client motuhake. Ko etahi atu huringa ko: kua whakakorehia te tautoko mo te Python 2, kua whakaaetia te whakamahi i nga mahi Lua i roto i te mapi matua, kua taapirihia nga whakahau hou ki te API, kua tino whakawhānuihia te kaha ki te whakamahi i te reo Lua mo te whakawhanake i nga monomai me te whakahaere whirihoranga, Ko nga taputapu mo te tirotiro i nga raru i roto i te waehere kua pai ake, kua taapirihia te tautoko mo te pae mana o te ao, kua mahia nga mahi arotautanga. Kua whakawhänuihia nga kaha o te kiritaki LSP kua hangaia (Kawa Tūmau Reo), ka taea te whakamahi ki te whakawhiti i te arorau tātari me te whakaoti waehere ki nga kaitoro o waho.

Source: opennet.ru

Tāpiri i te kōrero