Izdanje uređivača teksta Vim 9.0

Nakon dvije i po godine razvoja, izašao je tekst editor Vim 9.0. Vim kod se distribuira pod vlastitom copyleft licencom, kompatibilnom sa GPL-om i omogućava neograničenu upotrebu, distribuciju i preradu koda. Glavna karakteristika Vim licence je vezana za vraćanje promjena - poboljšanja implementirana u proizvode trećih strana moraju se prenijeti na originalni projekat ako Vim održavatelj smatra da su ova poboljšanja vrijedna pažnje i podnese odgovarajući zahtjev. Po vrsti distribucije, Vim je klasifikovan kao Charityware, tj. Umjesto prodaje programa ili prikupljanja donacija za potrebe projekta, autori Vima traže da bilo koji iznos doniraju u dobrotvorne svrhe ako se korisniku program sviđa.

Vim 9 nudi novi jezik za razvoj skripti i dodataka - Vim9 Script, koji pruža sintaksu sličnu JavaScript-u, TypeScript-u i Javi. Nova sintaksa je lakša za početnike za učenje, ali nije kompatibilna sa starijim jezikom za skriptiranje. Istovremeno, podrška za prethodno korišteni jezik i kompatibilnost sa postojećim dodacima i skriptama su u potpunosti očuvani - stari i novi jezici su podržani paralelno. Nema planova za ukidanje podrške za stari jezik.

Osim prerade sintakse, Vim9 Script sada podržava kompajlirane funkcije, što može značajno povećati produktivnost. U sprovedenim testovima, funkcije kompajlirane u bajtkod omogućile su povećanje brzine izvršavanja skripte za 10-100 puta. Osim toga, Vim9 Script više ne obrađuje argumente funkcije kao povezane nizove, što je rezultiralo velikim opterećenjima. Funkcije su sada definirane korištenjem "def" izraza i zahtijevaju eksplicitnu listu argumenata i tipova povrata. Varijable se definiraju korištenjem "var" izraza s eksplicitnom indikacijom tipa.

Dijeljenje izraza u više redova više ne zahtijeva upotrebu obrnute kose crte. Mehanizam za rukovanje greškama je potpuno redizajniran. Ključna riječ "call" nije potrebna za pokretanje funkcija, ali "let" je potrebna za dodjelu vrijednosti. Kreiranje modula je pojednostavljeno - dodana je mogućnost izvoza pojedinačnih funkcija i varijabli za korištenje u drugim datotekama. Komentari su odvojeni znakom "#" umjesto dvostrukim navodnicima. Podrška za razred je planirana za buduća izdanja.

Ostale promjene uključuju:

  • Uključen je set shema boja.
  • Poboljšana podrška za provjeru pravopisa i dovršavanje unosa.
  • Dodane nove postavke: 'autoshelldir', 'cdhome', 'cinscopedecls', 'guiligatures', 'mousemoveevent', 'quickfixtextfunc', 'spelloptions', 'thesaurusfunc', 'xtermcodes'.
  • Dodane nove komande: argdedupe, balt, def, defcompile, disassemble, echoconsole, enddef, eval, export, final, import, var i vim9script.
  • Moguće je otvoriti terminal u iskačućem prozoru (popup-terminal) i odabrati šemu boja terminala.
  • Dodan način rada kanala za interakciju sa LSP (Language Server Protocol) serverom.
  • Dodata podrška za Haiku operativni sistem.

izvor: opennet.ru

Dodajte komentar