Vydání textového editoru Vim 9.0

Po dvou a půl letech vývoje byl vydán textový editor Vim 9.0. Kód Vim je distribuován pod vlastní copyleftovou licencí, kompatibilní s GPL a umožňující neomezené použití, distribuci a přepracování kódu. Hlavní rys licence Vim souvisí s reverzí změn – vylepšení implementovaná v produktech třetích stran musí být převedena do původního projektu, pokud správce Vimu považuje tato vylepšení za hodná pozornosti a předloží odpovídající žádost. Podle typu distribuce je Vim klasifikován jako Charityware, tzn. Místo prodeje programu nebo sbírání darů pro potřeby projektu autoři Vimu žádají o darování jakékoli částky na charitu, pokud se uživateli program líbí.

Vim 9 nabízí nový jazyk pro vývoj skriptů a pluginů – Vim9 Script, který poskytuje syntaxi podobnou JavaScriptu, TypeScriptu a Javě. Nová syntaxe je pro začátečníky snazší se naučit, ale není zpětně kompatibilní se starým skriptovacím jazykem. Zároveň je plně zachována podpora dříve používaného jazyka a kompatibilita se stávajícími pluginy a skripty – paralelně jsou podporovány starý i nový jazyk. Ukončit podporu starého jazyka se neplánuje.

Kromě přepracování syntaxe nyní Vim9 Script podporuje kompilované funkce, které mohou výrazně zvýšit produktivitu. V provedených testech umožnily funkce zkompilované do bajtkódu zvýšit rychlost provádění skriptu 10-100krát. Kromě toho Vim9 Script již nezpracovává argumenty funkcí jako přidružená pole, což vedlo k velkým režijním nákladům. Funkce jsou nyní definovány pomocí výrazu "def" a vyžadují explicitní seznam argumentů a návratových typů. Proměnné jsou definovány pomocí výrazu "var" s explicitním označením typu.

Rozdělení výrazů na více řádků již nevyžaduje použití zpětného lomítka. Mechanismus zpracování chyb byl zcela přepracován. Klíčové slovo "call" není vyžadováno pro spuštění funkcí, ale "let" je vyžadováno pro přiřazení hodnot. Zjednodušila se tvorba modulů – přibyla možnost exportu jednotlivých funkcí a proměnných pro použití v jiných souborech. Komentáře jsou místo dvojitých uvozovek odděleny znakem „#“. Podpora třídy je plánována pro budoucí vydání.

Mezi další změny patří:

  • Součástí je sada barevných schémat.
  • Vylepšená podpora pro kontrolu pravopisu a dokončování zadávání.
  • Přidána nová nastavení: 'autoshelldir', 'cdhome', 'cinscopedecls', 'guiligatures', 'mousemoveevent', 'quickfixtextfunc', 'spelloptions', 'thesaurusfunc', 'xtermcodes'.
  • Přidány nové příkazy: argdedupe, balt, def, defcompile, disassemble, echoconsole, enddef, eval, export, final, import, var a vim9script.
  • Terminál je možné otevřít ve vyskakovacím okně (popup-terminal) a vybrat barevné schéma terminálu.
  • Přidán kanálový režim pro interakci se serverem LSP (Language Server Protocol).
  • Přidána podpora pro operační systém Haiku.

Zdroj: opennet.ru

Přidat komentář