Vim සංස්කාරකයේ නවීකරණය කරන ලද අනුවාදයක් වන Neovim 0.7.0 නිකුත් කිරීම

Neovim 0.7.0 නිකුත් කර ඇත, Vim සංස්කාරකයේ දෙබලක විස්තාරණය සහ නම්‍යශීලී බව වැඩි කිරීම කෙරෙහි අවධානය යොමු කර ඇත. ව්‍යාපෘතිය වසර හතකට වැඩි කාලයක් Vim කේත පදනම ප්‍රතිනිර්මාණය කර ඇති අතර, එහි ප්‍රතිඵලයක් ලෙස කේත නඩත්තුව සරල කිරීම, නඩත්තු කරන්නන් කිහිප දෙනෙකු අතර ශ්‍රමය බෙදීමේ මාධ්‍යයක් සැපයීම, අතුරු මුහුණත මූලික කොටසෙන් වෙන් කිරීම (අතුරුමුහුණත විය හැකිය. අභ්‍යන්තරය ස්පර්ශ නොකර වෙනස් කර ඇත) සහ ප්ලගීන මත පදනම්ව නව විස්තීරණ ගෘහ නිර්මාණ ශිල්පයක් ක්‍රියාත්මක කරන්න. ව්‍යාපෘතියේ මුල් වර්ධනයන් Apache 2.0 බලපත්‍රය යටතේ බෙදාහරින අතර මූලික කොටස Vim බලපත්‍රය යටතේ බෙදා හැරේ. Linux (appimage), Windows සහ macOS සඳහා සූදානම් කළ එකලස් කිරීම් සූදානම් කර ඇත.

Neovim නිර්මාණය කිරීමට පෙළඹවූ Vim හි ඇති එක් ගැටළුවක් වූයේ C (C300) කේතයේ පේළි 89 කට වඩා වැඩි ගණනකින් සමන්විත එහි ඉදිමුණු, මොනොලිතික් කේත පදනමයි. Vim codebase හි සියලු සූක්ෂ්මතා තේරුම් ගන්නේ කිහිප දෙනෙකුට පමණක් වන අතර, සියලු වෙනස්කම් පාලනය කරනු ලබන්නේ එක් නඩත්තුකරුවෙකු විසිනි, එමඟින් සංස්කාරකය නඩත්තු කිරීම සහ වැඩිදියුණු කිරීම අපහසු වේ. GUI සඳහා සහය දැක්වීම සඳහා Vim හරය තුළ ගොඩනගා ඇති කේතය වෙනුවට, විවිධ මෙවලම් කට්ටල භාවිතයෙන් අතුරුමුහුණත් සෑදීමට ඔබට ඉඩ සලසන විශ්වීය ස්ථරයක් භාවිතා කිරීමට Neovim යෝජනා කරයි.

MessagePack ආකෘතිය භාවිතා කරන අන්තර්ක්‍රියා සඳහා Neovim සඳහා ප්ලගීන වෙනම ක්‍රියාවලි ලෙස දියත් කෙරේ. සංස්කාරකයේ මූලික සංරචක අවහිර නොකර, ප්ලගීන සමඟ අන්තර්ක්‍රියා අසමමුහුර්තව සිදු කෙරේ. ප්ලගිනය වෙත ප්‍රවේශ වීමට, TCP සොකට් එකක් භාවිතා කළ හැක, i.e. ප්ලගිනය බාහිර පද්ධතියක් මත ධාවනය කළ හැක. ඒ අතරම, Neovim Vim සමඟ පසුපසට අනුකූලව පවතී, Vimscript සඳහා දිගටම සහය දක්වයි (Lua විකල්පයක් ලෙස ඉදිරිපත් කෙරේ) සහ බොහෝ සම්මත Vim ප්ලගීන සඳහා සම්බන්ධතා සඳහා සහය දක්වයි. Neovim හි උසස් විශේෂාංග Neovim-විශේෂිත API භාවිතයෙන් සාදන ලද ප්ලගීනවල භාවිතා කළ හැක.

දැනට, නිශ්චිත ප්ලගීන 130 ක් පමණ දැනටමත් සකස් කර ඇත, විවිධ ක්‍රමලේඛන භාෂා (C++, Clojure, Perl, Python, Go, Java, Lisp, Lua, Ruby) සහ රාමු (Qt, ncurses, Node .js, Electron, GTK). පරිශීලක අතුරුමුහුණත් විකල්ප කිහිපයක් සංවර්ධනය වෙමින් පවතී. GUI ඇඩෝන බොහෝ ආකාරවලින් ප්ලගීන වලට සමාන වේ, නමුත් ප්ලගීන මෙන් නොව, ඒවා Neovim ශ්‍රිතවලට ඇමතුම් ආරම්භ කරන අතර, ප්ලගීන Neovim තුලින් කැඳවනු ලැබේ.

В новой версии предложена начальная поддержка удалённой работы, позволяющая запустить Neovim на сервере и подключаться к нему с клиентской системы, используя отдельный ui_client. Среди других изменений: прекращена поддержка Python 2, разрешено использовании Lua-функций в keymap, добавлены новые команды в API, значительно расширены возможности по использованию языка Lua для разработки плагинов и управления конфигурацией, улучшены средства диагностики проблем в коде, добавлена поддержка глобальной строки состояния, проведены оптимизации производительности. Расширены возможности встроенного LSP-клиента (Language Server Protocol), который можно использовать для выноса логики анализа и автодополнения кода на внешние серверы.

මූලාශ්රය: opennet.ru

අදහස් එක් කරන්න