Версия: | 9.0 |
Дата релиза: | 28 июня 2022 |
Предыдущий релиз: | 8.2 от 13 декабря 2019 (пресс-релиз) |
Страница: | Vim |
Состоялся релиз легендарного текстового редактора Vim 9.0. Предыдущий релиз Vim 8.2 выходил два с половиной года назад в декабре 2019. Разработчики написали, что основное изменение в новом релизе связано с добавлением поддержки языка Vim9 script, а также отметили, что новый релиз более стабильный, чем все предыдущие. Рассмотрим основные изменения в новой версии.
Поддержка Vim9 script
Реализована поддержка нового скриптового языка Vim9 script.
Основная цель Vim9 script — кардинально повысить производительность. Команды нового языка компилируются в инструкции, что в результате увеличивает скорость выполнения в 10-100 раз.
Вторая задача Vim9 script — избежать специфических для Vim конструкций языка и приблизиться к широко используемым языкам программирования, таким как JavaScript, TypeScript и Java.
Внесенные изменения в скриптовый язык очень существенные, поэтому обратная совместимость с прошлыми версиями полностью отсутствует. При этом все предыдущие скрипты будут работать как и раньше и прекращение их поддержки не планируется.
Новые особенности скриптового языка
- Чтобы получить увеличение производительности, функции должны определяться с помощью ключевого слова def. Также требуется указание типов аргументов и возвращаемого значения.
- Переменные объявляются с помощью ключевого слова var и имеют тип.
- Продолжение строки теперь не требует использования обратной косой черты.
- Для вызова функций теперь не требуется использовать ключевое слово call
- Для присваиваний не требуется использование let
- Выражения запускаются без eval
- Разделение больших скриптов на части стало намного проще.
- Комментарии теперь начинаются с символа #. Прежний синтаксис, в котором использовались двойные кавычки мешал использованию строк.
- Получить справку по Vim9 script можно командой :help vim9
- И другие особенности...
Что еще
Новые опции:
- autoshelldir
- cdhome
- cinscopedecls
- guiligatures
- mousemoveevent
- quickfixtextfunc
- spelloptions
- thesaurusfunc
- xtermcodes
Новые команды:
- argdedupe
- balt
- def
- defcompile
- disassemble
- echoconsole
- enddef
- eval
- export
- final
- import
- var
- vim9script
Другие изменения:
- Новое всплывающее popup-меню, которое можно включить опцией wildoptions=pum.
- Добавлены цветовые схемы из официального репозитория https://github.com/vim/colorschemes Данные схемы корректно работают в различных терминалах.
- Поддержка открытия терминала во всплывающем окне.
- Улучшена функция автодополнения.
- Улучшена проверка правописания.
- Улучшены существующие команды, добавлены новые аргументы.
- Исправлено множество ошибок, включая утечки памяти и аварийный останов программы в различных ситуациях.
- И другие изменения...
Комментарии
21:50
08:54
22:45
:D
06:41
10:14
23:10
18:22
15:16
13:22
14:46
15:01
16:39