Po dveh letih razvoja je bil izdan urejevalnik besedil Vim 9.2. Vimova koda se distribuira pod lastno licenco copyleft, ki je združljiva z licenco GPL in omogoča neomejeno uporabo, distribucijo in ponovno uporabo kode. Ključna značilnost licence Vim je klavzula o vračanju: izboljšave, implementirane v izdelke tretjih oseb, je treba vrniti v prvotni projekt, če vzdrževalec Vima meni, da so vredne pozornosti in odda zahtevo. Vim se distribuira kot dobrodelna programska oprema, kar pomeni, da avtorji Vima namesto prodaje programa ali zbiranja donacij za projekt zahtevajo donacije v poljubnem znesku v dobrodelne namene, če je uporabniku program všeč.
Glavne izboljšave:
- Grafični vmesnik (gvim) je bil posodobljen za podporo protokolu Wayland, vključno z možnostjo uporabe odložišča v okoljih, ki temeljijo na Waylandu.
- V sistemih, podobnih Unixu, je bila uvedena podpora za specifikacijo osnovnega imenika Freedesktop.org XDG in možnost uporabe imenika "~/.config/vim" za shranjevanje nastavitev.
- Uporabniški vmesnik vključuje navpično (stransko) ploščo z zavihki (tabpanel), ki jo je mogoče uporabiti kot alternativo vodoravni zgornji plošči.
- В графическом интерфейсе для Windows появилась поддержка тёмного режима оформления меню и заголовков. Улучшена поддержка полноэкранного режима и преложены более качественные пиктограммы в панели инструментов.
- Mehanizem samodokončanja v načinu vstavljanja zdaj podpira približno iskanje, kar omogoča nenatančna ujemanja (na primer napačno črkovane besede). Uvedena je bila tudi možnost neposrednega dokončanja besed, shranjenih v registrih (kombinacija CTRL-X CTRL-R prikaže meni za vstavljanje besed, shranjenih v registrih Vima). Parameter »completeopt« zdaj podpira naslednji zastavici: »nosort« za onemogočanje razvrščanja seznama predlogov in »nearest« za določanje prioritete besed blizu kazalca.
- Vključen je vgrajen vtičnik za interaktivno učenje (":Tutor"), ki jasno prikazuje informacije, omogoča nadaljevanje učenja po prekinjenem opravilu in lahko preveri pravilno izvedbo ukazov.
- Skriptni jezik zdaj vključuje vgrajeno podporo za naštevanja (Enum), generične funkcije (Generic) in nabore (Tuple). Vgrajene funkcije je zdaj mogoče klicati kot objektne metode. Razredom je bila dodana podpora za zaščiteni konstruktor _new(). Za prevajanje metod je zdaj na voljo ukaz »:defcompile«.
- V način razlikovanja je bil dodan algoritem »linematch«. Omogočen je z istoimensko možnostjo »diffopt« in poišče podobne dele vrstic ter jih poravna, da natančneje označi spremembe. Uvedena je bila možnost »diffanchors«, ki omogoča ročno definiranje »sider« za prisilno razdelitev datoteke na odseke, ki bodo primerjani neodvisno, s čimer se preprečijo primerjave napačnih delov kompleksnih datotek. Izboljšano je bilo označevanje posameznih sprememb znakov znotraj ene vrstice. Za konfiguracijo tega označevanja je bila v »diffopt« dodana možnost »inline«. Lahko sprejme vrednosti »inline:simple« (kot prej), »inline:char« (označevanje na ravni znakov) in »inline:word« (označevanje na ravni besed).

- Spremenjene privzete vrednosti parametrov:
- 'zgodovina' (50 => 200)
- 'backspace' ('indent,eol,start', tipično delovanje tipke Backspace)
- 'diffopt' ("notranje,polnilo" => "notranje,polnilo,zaprtje,hevristično-zamik,v vrstici:znak")
- 'velikost pisave' (10pt => 12pt, optimalno za monitorje z visoko ločljivostjo)
- 'showcmd' (Izklopljeno => Vklopljeno, ukazi so vedno vidni)
- 'ravnilo' (Izklopljeno => Vklopljeno, prikazuje položaj kurzorja)
Vir: opennet.ru
