Lëshimi i redaktuesit të tekstit Vim 9.0

Pas dy vjet e gjysmë zhvillimi, redaktori i tekstit Vim 9.0 u lëshua. Kodi Vim shpërndahet nën licencën e tij copyleft, i pajtueshëm me GPL dhe lejon përdorimin, shpërndarjen dhe ripërpunimin e pakufizuar të kodit. Tipari kryesor i licencës Vim lidhet me rikthimin e ndryshimeve - përmirësimet e zbatuara në produktet e palëve të treta duhet të transferohen në projektin origjinal nëse mirëmbajtësi Vim i konsideron këto përmirësime të denja për vëmendje dhe paraqet një kërkesë përkatëse. Sipas llojit të shpërndarjes, Vim klasifikohet si Charityware, d.m.th. Në vend që të shesin programin ose të mbledhin donacione për nevojat e projektit, autorët e Vim kërkojnë të dhurojnë çdo shumë për bamirësi nëse përdoruesi i pëlqen programi.

Vim 9 ofron një gjuhë të re për zhvillimin e skripteve dhe shtojcave - Vim9 Script, i cili ofron sintaksë të ngjashme me JavaScript, TypeScript dhe Java. Sintaksa e re është më e lehtë për të mësuar nga fillestarët, por nuk është e përputhshme me gjuhën e vjetër të shkrimit. Në të njëjtën kohë, mbështetja për gjuhën e përdorur më parë dhe përputhshmëria me shtojcat dhe skriptet ekzistuese ruhen plotësisht - gjuhët e vjetra dhe të reja mbështeten paralelisht. Nuk ka plane për të ndërprerë mbështetjen për gjuhën e vjetër.

Përveç ripërpunimit të sintaksës, Vim9 Script tani mbështet funksionet e përpiluara, të cilat mund të rrisin ndjeshëm produktivitetin. Në testet e kryera, funksionet e përpiluara në bytecode bënë të mundur rritjen e shpejtësisë së ekzekutimit të skriptit me 10-100 herë. Përveç kësaj, Vim9 Script nuk përpunon më argumentet e funksionit si grupe të lidhura, gjë që rezultoi në shpenzime të mëdha. Funksionet tani përcaktohen duke përdorur një shprehje "def" dhe kërkojnë një listë të qartë të argumenteve dhe llojeve të kthimit. Variablat përcaktohen duke përdorur një shprehje "var" me një tregues të qartë të llojit.

Ndarja e shprehjeve nëpër rreshta të shumtë nuk kërkon më përdorimin e një pjerrësie të prapme. Mekanizmi i trajtimit të gabimeve është ridizajnuar plotësisht. Fjala kyçe "thirrje" nuk kërkohet për të ekzekutuar funksionet, por "le" kërkohet për caktimin e vlerave. Krijimi i moduleve është thjeshtuar - është shtuar aftësia për të eksportuar funksione dhe variabla individuale për përdorim në skedarë të tjerë. Komentet ndahen nga një karakter "#" në vend të thonjëzave të dyfishta. Mbështetja e klasës është planifikuar për publikimet e ardhshme.

Ndryshime të tjera përfshijnë:

  • Përfshihet një grup skemash ngjyrash.
  • Mbështetje e përmirësuar për kontrollin drejtshkrimor dhe përfundimin e të dhënave.
  • U shtuan cilësime të reja: 'autoshelldir', 'cdhome', 'cinscopedecls', 'guiligatures', 'mousemoveevent', 'quickfixtextfunc', 'spelloptions', 'thesaurusfunc', 'xtermcodes'.
  • U shtuan komanda të reja: argdedupe, balt, def, defcompile, disassemble, echoconsole, enddef, eval, export, final, import, var dhe vim9script.
  • Është e mundur të hapni terminalin në një dritare pop-up (popup-terminal) dhe të zgjidhni skemën e ngjyrave të terminalit.
  • U shtua modaliteti i kanalit për ndërveprim me serverin LSP (Protokolli i Serverit të Gjuhës).
  • Mbështetje e shtuar për sistemin operativ Haiku.

Burimi: opennet.ru

Shto një koment