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

Neovim 0.6.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 තුලින් කැඳවනු ලැබේ.

නව අනුවාදයේ සමහර වෙනස්කම්:

  • දේශීය විචල්‍ය සඳහා සහය vim ස්ක්‍රිප්ට් වෙත එක් කර ඇත, එහි විෂය පථය වත්මන් ස්ක්‍රිප්ට් මගින් පමණක් සීමා වේ.
  • ප්ලගින සංවර්ධනය සහ වින්‍යාස කළමනාකරණය සඳහා සැලකිය යුතු ලෙස වැඩිදියුණු කරන ලද Lua භාෂා සහාය. vim ස්ක්‍රිප්ට් වල, Lua ශ්‍රිතයන් ක්‍රම ලෙස ඇමතීමේ හැකියාව v:lua උපසර්ගය සඳහන් කිරීමෙන් එක් කර ඇත (උදාහරණයක් ලෙස, “arg1->v:lua.somemod.func(arg2)”).
  • බිල්ට්-ඉන් LSP සේවාලාභියාගේ (භාෂා සේවාදායක ප්‍රොටෝකෝලය) හැකියාවන් පුළුල් කර ඇත, එය විශ්ලේෂණ තර්කනය සහ කේත සම්පූර්ණ කිරීම බාහිර සේවාදායකයන් වෙත මාරු කිරීමට භාවිතා කළ හැක. විෂුවල් ස්ටුඩියෝ කේත සංස්කාරකය සඳහා සකස් කර ඇති විවිධ ක්‍රමලේඛන භාෂා සඳහා සූදානම් කළ හසුරුවන්නන් 150 කට වඩා භාවිතා කිරීමට LSP භාවිතය ඔබට ඉඩ සලසයි.
  • කේතයේ ගැටළු හඳුනා ගැනීම සඳහා වැඩිදියුණු කළ මෙවලම්. එවැනි පණිවිඩ හා සම්බන්ධ කේතය සහිත රෝග විනිශ්චය පණිවිඩවල පෙළ සහ පාවෙන කවුළු ප්‍රදර්ශනය කිරීමේ හැකියාව එක් කරන ලදී. LSP සේවාදායකය මගින් සම්ප්‍රේෂණය කරන ලද රෝග විනිශ්චය පණිවිඩ සැකසීම සපයනු ලැබේ.
  • අථත්‍ය තන්තු සඳහා සහය එක් කරන ලදී, උදාහරණයක් ලෙස, සේවා තොරතුරු සහිත කුට්ටි ප්‍රදර්ශනය කිරීමට භාවිතා කළ හැක.
  • විවිධ කාර්ය සාධන ප්‍රශස්තිකරණයන් සිදු කර ඇත, උදාහරණයක් ලෙස, උද්දීපනය කරන ලද කණ්ඩායම් නම් සඳහා හැෂ් වගුවක් සක්‍රීය කර ඇත.
  • Windows හි Windows 7 සහ 32-bit builds සඳහා වන සහය අත්හිටුවා ඇත.

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

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