Neovim 0.4 איז בנימצא, אַ מאַדערנייזד ווערסיע פון ​​די Vim רעדאַקטאָר

ארויס מעלדונג נעאָווים 0.4, ответвления от редактора Vim, сфокусированного на повышении расширяемости и гибкости. Оригинальные наработки проекта פאַרשפּרייטן под лицензией Apache 2.0, а базовая часть под лицензией Vim.

В рамках проекта Neovim уже более пяти лет проводится переработка кодовой базы Vim, в результате которой вносятся изменения, упрощающие сопровождение кода, предоставляющие средства разделения труда между несколькими мэйнтейнерами, отделяющие интерфейс от базовой части (интерфейс можно менять не трогая внутренности) и реализующие новую расширяемую архитектуру на основе плагинов.

איינער פון די פראבלעמען מיט Vim וואָס פּראַמפּטיד די שאַפונג פון נעאָווים איז זיין בלאָוטיד, מאַנאַליטיק קאָד באַזע, קאַנסיסטינג פון מער ווי 300 שורות פון C (C89) קאָד. בלויז אַ ביסל מענטשן פֿאַרשטיין אַלע די נואַנסיז פון די Vim קאָדעבאַסע, און אַלע ענדערונגען זענען קאַנטראָולד דורך איין מאַינטערער, ​​וואָס מאכט עס שווער צו טייַנען און פֿאַרבעסערן דעם רעדאַקטאָר. אַנשטאָט דעם קאָד געבויט אין די Vim האַרץ צו שטיצן די GUI, Neovim לייגט אַ וניווערסאַל שיכטע וואָס אַלאַוז איר צו שאַפֿן ינטערפייסיז מיט פאַרשידן טאָאָלקיץ.

פּלוגינס פֿאַר נעאָווים זענען לאָנטשט ווי באַזונדער פּראַסעסאַז, פֿאַר ינטעראַקשאַן מיט וואָס די MessagePack פֿאָרמאַט איז געניצט. ינטעראַקשאַן מיט פּלוגינס איז ייסינגקראַנאַסלי דורכגעקאָכט, אָן בלאַקינג די יקערדיק קאַמפּאָונאַנץ פון דער רעדאַקטאָר. צו אַקסעס די פּלוגין, אַ TCP כאָלעל קענען זיין געוויינט, ד.ה. די פּלוגין קענען זיין לויפן אויף אַ פונדרויסנדיק סיסטעם. אין דער זעלביקער צייט, Neovim בלייבט קאַפּויער קאַמפּאַטאַבאַל מיט Vim, האלט צו שטיצן Vimscript (Lua איז געפֿינט ווי אַן אָלטערנאַטיוו) און שטיצט קאַנעקשאַנז פֿאַר רובֿ נאָרמאַל Vim פּלוגינס. די אַוואַנסירטע פֿעיִקייטן פון Neovim קענען זיין געוויינט אין פּלוגינס געבויט מיט נעאָווים-ספּעציפיש אַפּיס.

В настоящее время уже צוגעגרייט около 80 специфичных плагинов, доступны биндинги для создания плагинов и реализаций интерфейсов с использованием различных языков программирования (C++, Clojure, Perl, Python, Go, Java, Lisp, Lua, Ruby) и фреймворков (Qt5, ncurses, Node.js, Electron, GTK+). Развивается несколько вариантов пользовательского интерфейса. GUI-надстройки во многом напоминают плагины, но, в отличие от плагинов, они инициируют вызов функций Neovim, в то время как плагины вызываются из Neovim.

Некоторые из изменений в נייַ ווערסיע:

  • Добавлена большая порция новых функций API и событий интерфейса пользователя.
  • Добавлена новая стандартная библиотека Nvim-Lua для разработки плагинов на языке Lua.
  • Продолжено развитие протокола пользовательского интерфейса, выполняющего обновление информации на экране на уровне строк, а не отдельных символов.
  • Добавлена поддержка полноценных плавающих окон, которые могут размещаться в произвольном месте, прикрепляться, связываться с отдельными буферами редактирования, группироваться в режиме Multigrid.
  • Добавлена опция ‘pumblend’ для полупрозрачных выпадающих меню.

מקור: opennet.ru

לייגן אַ באַמערקונג