Famoahana ny Neovim 0.6.0, dika maoderina amin'ny tonian-dahatsoratra Vim

Neovim 0.6.0 dia navotsotra, sampana iray amin'ny tonian-dahatsoratra Vim mifantoka amin'ny fampitomboana ny fanitarana sy ny flexibility. Ny tetikasa dia nanamboatra ny fototry ny code Vim nandritra ny fito taona mahery, vokatry ny fanovana natao izay manamora ny fikojakojana ny kaody, manome fomba fisarahana amin'ny mpiasa maromaro, manasaraka ny interface amin'ny ampahany fototra (ny interface dia mety ho niova tsy nikitika ny anatiny) ary mametraha maritrano vaovao azo itarina miorina amin'ny plugins. Ny fivoarana voalohany amin'ny tetikasa dia zaraina amin'ny alΓ lan'ny lisansa Apache 2.0, ary ny ampahany fototra dia zaraina amin'ny alΓ lan'ny fahazoan-dΓ lana Vim. Ny fivoriambe efa vita dia voaomana ho an'ny Linux (appimage), Windows ary macOS.

Ny iray amin'ireo olana amin'ny Vim izay nanosika ny famoronana Neovim dia ny fototry ny kaody monolithic, izay misy andalana C (C300) maherin'ny 89 arivo. Olona vitsivitsy ihany no mahatakatra ny nuance rehetra ao amin'ny Vim codebase, ary ny fanovana rehetra dia fehezin'ny mpikarakara iray, ka sarotra ny mitazona sy manatsara ny tonian-dahatsoratra. Raha tokony ho ny kaody natsangana ao amin'ny Vim core hanohanana ny GUI, Neovim dia manolotra soso-kevitra amin'ny fampiasana sehatra manerantany izay ahafahanao mamorona interface amin'ny fampiasana fitaovana isan-karazany.

Plugins ho an'ny Neovim dia natomboka ho dingana misaraka, ho an'ny fifandraisana izay ampiasaina ny MessagePack format. Ny fifandraisana amin'ny plugins dia atao asynchronously, tsy manakana ny singa fototra amin'ny tonian-dahatsoratra. Mba hidirana amin'ny plugin dia azo ampiasaina ny socket TCP, i.e. ny plugin dia azo atao amin'ny rafitra ivelany. Mandritra izany fotoana izany, i Neovim dia mijanona ho mifanaraka amin'ny Vim, manohy manohana an'i Vimscript (Lua dia atolotra ho solony) ary manohana fifandraisana amin'ny ankamaroan'ny plugins Vim mahazatra. Ny endri-javatra mandroso Neovim dia azo ampiasaina amin'ny plugins natsangana amin'ny alΓ lan'ny API manokana Neovim.

Amin'izao fotoana izao, eo amin'ny 130 eo ho eo ny plugins manokana efa nomanina, misy fatorana amin'ny famoronana plugins sy fampiharana interface amin'ny fampiasana fiteny fandaharana isan-karazany (C ++, Clojure, Perl, Python, Go, Java, Lisp, Lua, Ruby) ary frameworks (Qt, ncurses, Node .js, Electron, GTK). Safidy mpampiasa interface tsara maro no amboarina. Ny fanampim-panampiana GUI dia mitovy amin'ny plugins, fa tsy toy ny plugins, izy ireo no manomboka antso amin'ny fiasa Neovim, fa ny plugins dia antsoina avy ao anatin'ny Neovim.

Ny sasany amin'ireo fiovana amin'ny dikan-teny vaovao:

  • Π’ vim-скрипты Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Ρ… ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…, ΠΎΠ±Π»Π°ΡΡ‚ΡŒ видимости для ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π° Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΌ скриптом.
  • Π—Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° языка Lua для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΠ»Π°Π³ΠΈΠ½ΠΎΠ² ΠΈ управлСния ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠ΅ΠΉ. Π’ vim-скриптах Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Π²Ρ‹Π·ΠΎΠ²Π° Lua-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΊΠ°ΠΊ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² Ρ‡Π΅Ρ€Π΅Π· ΡƒΠΊΠ°Π·Π°Π½ΠΈΠ΅ прСфикса v:lua (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Β«arg1->v:lua.somemod.func(arg2)Β»).
  • Π Π°ΡΡˆΠΈΡ€Π΅Π½Ρ‹ возмоТности встроСнного LSP-ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° (Language Server Protocol), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для выноса Π»ΠΎΠ³ΠΈΠΊΠΈ Π°Π½Π°Π»ΠΈΠ·Π° ΠΈ автодополнСния ΠΊΠΎΠ΄Π° Π½Π° внСшниС сСрвСры. ΠŸΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ LSP позволяСт ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π±ΠΎΠ»Π΅Π΅ 150 Π³ΠΎΡ‚ΠΎΠ²Ρ‹Ρ… ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² для Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… языков программирования, ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²Π»Π΅Π½Π½Ρ‹Ρ… для Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π° ΠΊΠΎΠ΄Π° Visual Studio Code.
  • Π£Π»ΡƒΡ‡ΡˆΠ΅Π½Ρ‹ срСдства диагностики ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ Π² ΠΊΠΎΠ΄Π΅. Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Π²Ρ‹Π²ΠΎΠ΄Π° тСкста диагностичСских сообщСний ΠΈ ΠΏΠ»Π°Π²Π°ΡŽΡ‰ΠΈΡ… ΠΎΠΊΠΎΠ½ с ΠΊΠΎΠ΄ΠΎΠΌ, связанным с ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹ΠΌΠΈ сообщСниями. ΠžΠ±Π΅ΡΠΏΠ΅Ρ‡Π΅Π½Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° диагностичСских сообщСний, ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Π΅ΠΌΡ‹Ρ… LSP-сСрвСром.
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Ρ… строк, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, для Π²Ρ‹Π²ΠΎΠ΄Π° Π±Π»ΠΎΠΊΠΎΠ² со слуТСбной ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠ΅ΠΉ.
  • ВнСсСны Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, задСйствована Ρ…ΡΡˆ Ρ‚Π°Π±Π»ΠΈΡ†Π° для подсвСчиваСмых ΠΈΠΌΡ‘Π½ Π³Ρ€ΡƒΠΏΠΏ.
  • ΠŸΡ€Π΅ΠΊΡ€Π°Ρ‰Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Windows 7 ΠΈ 32-разрядных сборок для Windows.

Source: opennet.ru

Add a comment