αž€αžΆαžšαž…αŸαž‰αž•αŸ’αžŸαžΆαž™αž€αž˜αŸ’αž˜αžœαž·αž’αžΈαž“αž·αž–αž“αŸ’αž’αž’αžαŸ’αžαž”αž‘ Vim 9.0

αž”αž“αŸ’αž‘αžΆαž”αŸ‹αž–αžΈαž–αžΈαžšαž†αŸ’αž“αžΆαŸ†αž€αž“αŸ’αž›αŸ‡αž“αŸƒαž€αžΆαžšαž’αž—αž·αžœαžŒαŸ’αžαž“αŸ αž€αž˜αŸ’αž˜αžœαž·αž’αžΈαž“αž·αž–αž“αŸ’αž’αž’αžαŸ’αžαž”αž‘ Vim 9.0 αžαŸ’αžšαžΌαžœαž”αžΆαž“αž…αŸαž‰αž•αŸ’αžŸαžΆαž™αŸ” αž›αŸαžαž€αžΌαžŠ Vim αžαŸ’αžšαžΌαžœαž”αžΆαž“αž…αŸ‚αž€αž…αžΆαž™αž€αŸ’αžšαŸ„αž˜αž’αžΆαž‡αŸ’αž‰αžΆαž”αŸαžŽαŸ’αžŽαž…αž˜αŸ’αž›αž„αž†αŸ’αžœαŸαž„αžšαž”αžŸαŸ‹αžαŸ’αž›αž½αž“ αžŠαŸ‚αž›αžαŸ’αžšαžΌαžœαž‚αŸ’αž“αžΆαž‡αžΆαž˜αž½αž™ GPL αž“αž·αž„αž’αž“αž»αž‰αŸ’αž‰αžΆαžαž±αŸ’αž™αž€αžΆαžšαž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹ αž‚αŸ’αž˜αžΆαž“αžŠαŸ‚αž“αž€αŸ†αžŽαžαŸ‹ αž€αžΆαžšαž…αŸ‚αž€αž…αžΆαž™ αž“αž·αž„αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž‘αžΎαž„αžœαž·αž‰αž“αŸƒαž€αžΌαžŠαŸ” αž›αž€αŸ’αžαžŽαŸˆαžŸαŸ†αžαžΆαž“αŸ‹αž“αŸƒαž’αžΆαž‡αŸ’αž‰αžΆαž”αžŽαŸ’αžŽ Vim αž‚αžΊαž‘αžΆαž€αŸ‹αž‘αž„αž‘αŸ…αž“αžΉαž„αž€αžΆαžšαž”αž‰αŸ’αž…αŸ’αžšαžΆαžŸαž“αŸƒαž€αžΆαžšαž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžš - αž€αžΆαžšαž€αŸ‚αž›αž˜αŸ’αž’αžŠαŸ‚αž›αž”αžΆαž“αž’αž“αž»αžœαžαŸ’αžαž“αŸ…αž€αŸ’αž“αž»αž„αž•αž›αž·αžαž•αž›αž—αžΆαž‚αžΈαž‘αžΈαž”αžΈαžαŸ’αžšαžΌαžœαžαŸ‚αž•αŸ’αž‘αŸαžšαž‘αŸ…αž‚αž˜αŸ’αžšαŸ„αž„αžŠαžΎαž˜ αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž’αŸ’αž“αž€αžαŸ‚αž‘αžΆαŸ† Vim αž…αžΆαžαŸ‹αž‘αž»αž€αžαžΆαž€αžΆαžšαž€αŸ‚αž›αž˜αŸ’αž’αž‘αžΆαŸ†αž„αž“αŸαŸ‡αžŸαž˜αž“αžΉαž„αž‘αž‘αž½αž›αž”αžΆαž“αž€αžΆαžšαž™αž€αž…αž·αžαŸ’αžαž‘αž»αž€αžŠαžΆαž€αŸ‹ αž αžΎαž™αžŠαžΆαž€αŸ‹αžŸαŸ†αžŽαžΎαžŠαŸ‚αž›αžαŸ’αžšαžΌαžœαž‚αŸ’αž“αžΆαŸ” αžαžΆαž˜αž”αŸ’αžšαž—αŸαž‘αž€αžΆαžšαž…αŸ‚αž€αž…αžΆαž™ Vim αžαŸ’αžšαžΌαžœαž”αžΆαž“αž…αžΆαžαŸ‹αžαŸ’αž“αžΆαž€αŸ‹αž‡αžΆ Charityware, i.e. αž‡αŸ†αž“αž½αžŸαž±αŸ’αž™αž€αžΆαžšαž›αž€αŸ‹αž€αž˜αŸ’αž˜αžœαž·αž’αžΈ αž¬αž”αŸ’αžšαž˜αžΌαž›αž’αŸ†αžŽαŸ„αž™αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αžαž˜αŸ’αžšαžΌαžœαž€αžΆαžšαž“αŸƒαž‚αž˜αŸ’αžšαŸ„αž„ αž’αŸ’αž“αž€αž“αž·αž–αž“αŸ’αž’ វី αžŸαž»αŸ†αž±αŸ’αž™αž”αžšαž·αž…αŸ’αž…αžΆαž‚αž…αŸ†αž“αž½αž“αžŽαžΆαž˜αž½αž™αžŠαž›αŸ‹αžŸαž”αŸ’αž”αž»αžšαžŸαž‡αž“ αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž’αŸ’αž“αž€αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αž…αžΌαž›αž…αž·αžαŸ’αžαž€αž˜αŸ’αž˜αžœαž·αž’αžΈαž“αŸαŸ‡αŸ”

Vim 9 αž•αŸ’αžαž›αŸ‹αž“αžΌαžœαž—αžΆαžŸαžΆαžαŸ’αž˜αžΈαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž”αž„αŸ’αž€αžΎαžαžŸαŸ’αž‚αŸ’αžšαžΈαž” αž“αž·αž„αž€αž˜αŸ’αž˜αžœαž·αž’αžΈαž‡αŸ†αž“αž½αž™ - Vim9 Script αžŠαŸ‚αž›αž•αŸ’αžαž›αŸ‹αžœαžΆαž€αŸ’αž™αžŸαž˜αŸ’αž–αŸαž“αŸ’αž’αžŸαŸ’αžšαžŠαŸ€αž„αž‘αŸ…αž“αžΉαž„ JavaScript, TypeScript αž“αž·αž„ Java αŸ” αžœαžΆαž€αŸ’αž™αžŸαž˜αŸ’αž–αŸαž“αŸ’αž’αžαŸ’αž˜αžΈαž‚αžΊαž„αžΆαž™αžŸαŸ’αžšαž½αž›αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž’αŸ’αž“αž€αž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αžšαŸ€αž“ αž”αŸ‰αž»αž“αŸ’αžαŸ‚αžœαžΆαž˜αž·αž“αžαŸ’αžšαžΌαžœαž‚αŸ’αž“αžΆαž“αžΉαž„αž—αžΆαžŸαžΆαžŸαŸ’αž‚αŸ’αžšαžΈαž”αž…αžΆαžŸαŸ‹αž‘αŸαŸ” αž€αŸ’αž“αž»αž„αž–αŸαž›αž‡αžΆαž˜αž½αž™αž‚αŸ’αž“αžΆαž“αŸαŸ‡ αž€αžΆαžšαž‚αžΆαŸ†αž‘αŸ’αžšαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž—αžΆαžŸαžΆαžŠαŸ‚αž›αž”αžΆαž“αž”αŸ’αžšαžΎαž–αžΈαž˜αž»αž“ αž“αž·αž„αž—αžΆαž–αž†αž”αž‚αŸ’αž“αžΆαž‡αžΆαž˜αž½αž™αž€αž˜αŸ’αž˜αžœαž·αž’αžΈαž‡αŸ†αž“αž½αž™ αž“αž·αž„αžŸαŸ’αž‚αŸ’αžšαžΈαž”αžŠαŸ‚αž›αž˜αžΆαž“αžŸαŸ’αžšαžΆαž”αŸ‹αžαŸ’αžšαžΌαžœαž”αžΆαž“αžšαž€αŸ’αžŸαžΆαž‘αž»αž€αž™αŸ‰αžΆαž„αž–αŸαž‰αž›αŸαž‰ - αž—αžΆαžŸαžΆαž…αžΆαžŸαŸ‹ αž“αž·αž„αžαŸ’αž˜αžΈαžαŸ’αžšαžΌαžœαž”αžΆαž“αž‚αžΆαŸ†αž‘αŸ’αžšαžŸαŸ’αžšαž”αž‚αŸ’αž“αžΆαŸ” αž˜αž·αž“αž˜αžΆαž“αž‚αž˜αŸ’αžšαŸ„αž„αž”αž‰αŸ’αžˆαž”αŸ‹αž€αžΆαžšαž‚αžΆαŸ†αž‘αŸ’αžšαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž—αžΆαžŸαžΆαž…αžΆαžŸαŸ‹αž‘αŸαŸ”

αž”αž“αŸ’αžαŸ‚αž˜αž–αžΈαž›αžΎαž€αžΆαžšαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαžœαžΆαž€αŸ’αž™αžŸαž˜αŸ’αž–αŸαž“αŸ’αž’αž‘αžΎαž„αžœαž·αž‰ αž₯αž‘αžΌαžœαž“αŸαŸ‡ αžŸαŸ’αž‚αŸ’αžšαžΈαž” Vim9 αž‚αžΆαŸ†αž‘αŸ’αžšαž˜αž»αžαž„αžΆαžšαžŠαŸ‚αž›αž”αžΆαž“αž…αž„αž€αŸ’αžšαž„ αžŠαŸ‚αž›αž’αžΆαž…αž”αž„αŸ’αž€αžΎαž“αž•αž›αž·αžαž—αžΆαž–αž™αŸ‰αžΆαž„αž…αŸ’αžšαžΎαž“αŸ” αž“αŸ…αž€αŸ’αž“αž»αž„αž€αžΆαžšαž’αŸ’αžœαžΎαžαŸαžŸαŸ’αžαžŠαŸ‚αž›αž”αžΆαž“αž’αž“αž»αžœαžαŸ’αž αž˜αž»αžαž„αžΆαžšαžŠαŸ‚αž›αž”αžΆαž“αž…αž„αž€αŸ’αžšαž„αž‡αžΆ bytecode αž’αŸ’αžœαžΎαž±αŸ’αž™αžœαžΆαž’αžΆαž…αž”αž„αŸ’αž€αžΎαž“αž›αŸ’αž”αžΏαž“αž“αŸƒαž€αžΆαžšαž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αžŸαŸ’αž‚αŸ’αžšαžΈαž”αž–αžΈ 10 αž‘αŸ… 100 αžŠαž„αŸ” αž›αžΎαžŸαž–αžΈαž“αŸαŸ‡ αžŸαŸ’αž‚αŸ’αžšαžΈαž” Vim9 αž›αŸ‚αž„αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž’αžΆαž‚αž»αž™αž˜αŸ‰αž„αŸ‹αž˜αž»αžαž„αžΆαžšαž‡αžΆαž’αžΆαžšαŸαžŠαŸ‚αž›αž–αžΆαž€αŸ‹αž–αŸαž“αŸ’αž’αž‘αŸ€αžαž αžΎαž™ αžŠαŸ‚αž›αž”αžŽαŸ’αžαžΆαž›αž±αŸ’αž™αž˜αžΆαž“αž€αžΆαžšαž…αŸ†αžŽαžΆαž™αž›αžΎαžŸαŸ” αž₯αž‘αžΌαžœαž“αŸαŸ‡αž˜αž»αžαž„αžΆαžšαžαŸ’αžšαžΌαžœαž”αžΆαž“αž€αŸ†αžŽαžαŸ‹αžŠαŸ„αž™αž”αŸ’αžšαžΎαž€αž“αŸ’αžŸαŸ„αž˜ "def" αž αžΎαž™αž‘αžΆαž˜αž‘αžΆαžšαž”αž‰αŸ’αž‡αžΈαž‡αžΆαž€αŸ‹αž›αžΆαž€αŸ‹αž“αŸƒαž’αžΆαž‚αž»αž™αž˜αŸ‰αž„αŸ‹ αž“αž·αž„αž”αŸ’αžšαž—αŸαž‘αžαŸ’αžšαž‘αž”αŸ‹αŸ” αž’αžαŸαžšαžαŸ’αžšαžΌαžœαž”αžΆαž“αž€αŸ†αžŽαžαŸ‹αžŠαŸ„αž™αž”αŸ’αžšαžΎαž€αž“αŸ’αžŸαŸ„αž˜ "var" αž‡αžΆαž˜αž½αž™αž“αžΉαž„αž€αžΆαžšαž…αž„αŸ’αž’αž»αž›αž”αž„αŸ’αž αžΆαž‰αž”αŸ’αžšαž—αŸαž‘αž…αŸ’αž”αžΆαžŸαŸ‹αž›αžΆαžŸαŸ‹αŸ”

αž€αžΆαžšβ€‹αž”αŸ†αž”αŸ‚αž€β€‹αž€αž“αŸ’αžŸαŸ„αž˜β€‹αžαžΆαž˜β€‹αž”αž“αŸ’αž‘αžΆαžαŸ‹β€‹αž…αŸ’αžšαžΎαž“β€‹αž›αŸ‚αž„β€‹αžαž˜αŸ’αžšαžΌαžœβ€‹αž±αŸ’αž™β€‹αž”αŸ’αžšαžΎβ€‹αžŸαž‰αŸ’αž‰αžΆβ€‹αžαž™αž€αŸ’αžšαŸ„αž™β€‹αž‘αŸ€αžβ€‹αž αžΎαž™αŸ” αž™αž“αŸ’αžαž€αžΆαžšαžŠαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αž€αŸ†αž αž»αžŸαžαŸ’αžšαžΌαžœαž”αžΆαž“αžšαŸ€αž”αž…αŸ†αž‘αžΎαž„αžœαž·αž‰αž‘αžΆαŸ†αž„αžŸαŸ’αžšαž»αž„αŸ” αž–αžΆαž€αŸ’αž™αž‚αž“αŸ’αž›αžΉαŸ‡ "αž αŸ…" αž˜αž·αž“αžαŸ’αžšαžΌαžœαž”αžΆαž“αž‘αžΆαž˜αž‘αžΆαžšαžŠαžΎαž˜αŸ’αž”αžΈαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž˜αž»αžαž„αžΆαžšαž“αŸ„αŸ‡αž‘αŸαž”αŸ‰αž»αž“αŸ’αžαŸ‚ "αž’αž“αž»αž‰αŸ’αž‰αžΆαžαž±αŸ’αž™" αž‚αžΊαžαŸ’αžšαžΌαžœαž”αžΆαž“αž‘αžΆαž˜αž‘αžΆαžšαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αžΆαžšαž•αŸ’αžαž›αŸ‹αžαž˜αŸ’αž›αŸƒαŸ” αž€αžΆαžšαž”αž„αŸ’αž€αžΎαžαž˜αŸ‰αžΌαžŒαž»αž›αžαŸ’αžšαžΌαžœαž”αžΆαž“αž’αŸ’αžœαžΎαž±αŸ’αž™αžŸαžΆαž˜αž‰αŸ’αž‰ - αžŸαž˜αžαŸ’αžαž—αžΆαž–αž€αŸ’αž“αž»αž„αž€αžΆαžšαž“αžΆαŸ†αž…αŸαž‰αž˜αž»αžαž„αžΆαžšαž“αžΈαž˜αž½αž™αŸ— αž“αž·αž„αž’αžαŸαžšαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž”αŸ’αžšαžΎαž€αŸ’αž“αž»αž„αž―αž€αžŸαžΆαžšαž•αŸ’αžŸαŸαž„αž‘αŸ€αžαžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž“αŸ’αžαŸ‚αž˜αŸ” αž˜αžαž·αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αŸ†αž”αŸ‚αž€αžŠαŸ„αž™αžαž½αž’αž€αŸ’αžŸαžš "#" αž‡αŸ†αž“αž½αžŸαž±αŸ’αž™αž€αžΆαžšαžŠαž€αžŸαŸ’αžšαž„αŸ‹αž‘αŸ’αžœαŸαŸ” αž€αžΆαžšαž‚αžΆαŸ†αž‘αŸ’αžšαžαŸ’αž“αžΆαž€αŸ‹αžαŸ’αžšαžΌαžœαž”αžΆαž“αž‚αŸ’αžšαŸ„αž„αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αžΆαžšαž…αŸαž‰αž•αŸ’αžŸαžΆαž™αž“αžΆαž–αŸαž›αž’αž“αžΆαž‚αžαŸ”

αž€αžΆαžšαž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαž•αŸ’αžŸαŸαž„αž‘αŸ€αžαžšαž½αž˜αž˜αžΆαž“:

  • αžŸαŸ†αžŽαž»αŸ†αž“αŸƒαž–αžŽαŸŒαž…αž˜αŸ’αžšαž»αŸ‡αžαŸ’αžšαžΌαžœαž”αžΆαž“αžšαž½αž˜αž”αž‰αŸ’αž…αžΌαž›αŸ”
  • αž€αžΆαžšαž–αž„αŸ’αžšαžΉαž„αž€αžΆαžšαž‚αžΆαŸ†αž‘αŸ’αžšαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αžΆαžšαž–αž·αž“αž·αžαŸ’αž™αž’αž€αŸ’αžαžšαžΆαžœαž·αžšαž»αž‘αŸ’αž’ αž“αž·αž„αž€αžΆαžšαž”αŸ†αž–αŸαž‰αž€αžΆαžšαž”αž‰αŸ’αž…αžΌαž›αŸ”
  • αž”αžΆαž“αž”αž“αŸ’αžαŸ‚αž˜αž€αžΆαžšαž€αŸ†αžŽαžαŸ‹αžαŸ’αž˜αžΈαŸ– 'autoshelldir', 'cdhome', 'cinscopedecls', 'guiligatures', 'mousemoveevent', 'quickfixtextfunc', 'spelloptions', 'thesaurusfunc', 'xtermcodes'αŸ”
  • αž”αžΆαž“αž”αž“αŸ’αžαŸ‚αž˜αž–αžΆαž€αŸ’αž™αž”αž‰αŸ’αž‡αžΆαžαŸ’αž˜αžΈαŸ– argdedupe, balt, def, defcompile, disassemble, echoconsole, enddef, eval, export, final, import, var αž“αž·αž„ vim9scriptαŸ”
  • αžœαžΆαž’αžΆαž…αž’αŸ’αžœαžΎαž‘αŸ…αž”αžΆαž“αžŠαžΎαž˜αŸ’αž”αžΈαž”αžΎαž€αžŸαŸ’αžαžΆαž“αžΈαž™αž“αŸ…αž€αŸ’αž“αž»αž„αž”αž„αŸ’αž’αž½αž…αž›αŸαž…αž‘αžΎαž„ (αžŸαŸ’αžαžΆαž“αžΈαž™αž›αŸαž…αž‘αžΎαž„) αž αžΎαž™αž‡αŸ’αžšαžΎαžŸαžšαžΎαžŸαž–αžŽαŸŒαž…αž˜αŸ’αžšαž»αŸ‡αž“αŸƒαžŸαŸ’αžαžΆαž“αžΈαž™αŸ”
  • αž”αžΆαž“αž”αž“αŸ’αžαŸ‚αž˜αžšαž”αŸ€αž”αž†αžΆαž“αŸ‚αž›αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž’αž“αŸ’αžαžšαž€αž˜αŸ’αž˜αž‡αžΆαž˜αž½αž™αž˜αŸ‰αžΆαžŸαŸŠαžΈαž“αž˜αŸ LSP (Language Server Protocol) αŸ”
  • αž”αžΆαž“αž”αž“αŸ’αžαŸ‚αž˜αž€αžΆαžšαž‚αžΆαŸ†αž‘αŸ’αžšαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž”αŸ’αžšαž–αŸαž“αŸ’αž’αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžš Haiku αŸ”

αž”αŸ’αžšαž—αž–: opennet.ru

αž”αž“αŸ’αžαŸ‚αž˜αž˜αžαž·αž™αŸ„αž”αž›αŸ‹