v263.4702.0
-
:test_tube: расширение «Kotlin by JetBrains» v0.0.12 для VS Code
Включает Kotlin Language Server, встроенный для использования с Visual Studio Code.
Расширение также доступно в VS Code Marketplace и реестре OpenVSX.
-
:card_index_dividers: Архив Kotlin LSP для автономного использования
Автономная версия Kotlin Language Server для редакторов, отличных от VS Code.
История изменений
[!NOTE]
Расширение «Kotlin by JetBrains» теперь доступно в реестре Open VSX.
Его можно установить в Cursor, VSCodium и другие форки VS Code. <!-- LSP-1425, LSP-1227 -->
JetBrains также выпустила «Java and Kotlin by IntelliJ IDEA», поддерживающее оба языка.
Если установить его, когда уже установлено «Kotlin by JetBrains», появится предложение удалить это расширение.
Это ожидаемое поведение. Два языковых сервера не должны работать одновременно. <!-- LSP-1422 -->
Подробнее: https://www.jetbrains.com/help/intellij-vscode/About-instance.html.
[!IMPORTANT]
При первом запуске расширения теперь предлагается выбрать регион и параметры обмена данными.
Языковой сервер не запустится, пока не будут выбраны оба параметра.
Позже их можно изменить в настройках VS Code. <!-- LSP-1344, LSP-550, LSP-1424 -->
🛠 Возможности LSP
- Большинство Kotlin-намерений из плагина Kotlin для IntelliJ теперь доступны в Kotlin LSP. <!-- LSP-569 -->
<!-- LSP-157, LSP-1216, LSP-1255, LSP-1403, LSP-1753, LSP-1624 -->
- Над функцией Kotlin
main теперь отображаются CodeLens для ее запуска или отладки. <!-- LSP-1321, LSP-1323 -->
- Действие «Организовать импорты» теперь доступно как действие с исходным кодом. <!-- LSP-1212 -->
- Автодополнение динамических шаблонов теперь работает в Kotlin (например,
main, sout или if). <!-- LSP-1622 -->
- Теперь можно перемещать файлы Kotlin, сохраняя корректность импортов и ссылок в других файлах. <!-- LSP-1319 -->
- Перемещение целых папок пока не поддерживается.
- Поиск символов в рабочей области теперь находит символы в библиотеках. <!-- LSP-1179 -->
- Новый виджет в строке состояния показывает состояние сервера и позволяет перезапустить его. <!-- LSP-1170 -->
🐞 Запуск и отладка
- Расширение читает
launch.json и может запускать приложения JVM. <!-- LSP-1207, LSP-1051 -->
- Автодополнение работает в консоли отладки. Оценка выражения больше не останавливается на этапе «Сбор данных».
<!-- LSP-1304, LSP-451 -->
📦 Импорт и системы сборки
- Теперь можно импортировать несколько проектов из одной рабочей области. В настройке
intellij.projects
перечислены проекты, их системы сборки и пути. Это подходит для монорепозитория и каталога,
содержащего несколько независимых проектов. Подробнее:
https://www.jetbrains.com/help/intellij-vscode/Project-import.html. <!-- LSP-960, LSP-1302 -->
- Рабочая область теперь перезагружается автоматически при изменении и сохранении скрипта сборки. Новая настройка управляет перезагрузкой:
всегда перезагружать, сначала спрашивать или никогда не перезагружать. Также добавлены команды «Повторно импортировать
проект» и «Очистить кэш и перезапустить».
- Синхронизация Gradle теперь по умолчанию загружает исходный код библиотек. Это позволяет переходить к исходному коду
библиотеки. Первая синхронизация занимает больше времени. <!-- LSP-1192 -->
- Сервер использует Gradle Tooling API 9.5.0. <!-- LSP-1095 -->
- При импорте Gradle используется JRE языкового сервера, если не задана
JAVA_HOME. Импорт Maven теперь
учитывает запись java-home настройки intellij.projects.
<!-- LSP-1148, LSP-1497 -->
- Maven: импортер учитывает аргументы компилятора, а лишние предупреждения о JAR-файлах устранены.
Импорт Maven работает в Windows. <!-- LSP-940, LSP-489, LSP-1560 -->
- Улучшен импорт рабочей области с несколькими корневыми папками. Расширение также сообщает, когда в корне проекта
присутствует более одной системы сборки. <!-- LSP-1409, LSP-1407, LSP-1615 -->
- Теперь при индексировании прогресс отображается в процентах. <!-- LSP-1256, LSP-883 -->
- Вывод инструмента сборки направляется в отдельный канал вывода VS Code. <!-- LSP-679 -->
- Расширение теперь активируется автоматически, если где-либо в проекте есть файл сборки. <!-- LSP-1000 -->
⌨️ Редактор и ввод текста
- Дополнительные исправления клавиши Enter в строковом шаблоне. Нажатие Enter больше не вставляет неверную конкатенацию строк.
<!-- LSP-1141, LSP-1367, LSP-1391, LSP-1392 -->
- Действие «Переключить комментарий строки» снова работает. <!-- LSP-1176 -->
🚀 Производительность
- Индексирование ускорено, зависаний во время и после импорта проекта стало меньше.
Локальные проверки также выполняются быстрее. <!-- LSP-115, LSP-1235, LSP-1248, LSP-278 -->
🐛 Исправления ошибок
- Импорт проекта Android Gradle больше не завершается ошибкой
ClassCastException. Исправлена проблема
https://github.com/Kotlin/kotlin-lsp/issues/243. <!-- LSP-1561 -->
- Windows: база данных анализатора перемещена из перемещаемого профиля в
%LOCALAPPDATA%. Исправлена проблема https://github.com/Kotlin/kotlin-lsp/issues/215. <!-- LSP-1004 -->
- Теперь сервер закрывает дескрипторы файлов ОС для открываемых им файлов JAR. <!-- LSP-244 -->
- Сервер использует настройки прокси VS Code. <!-- LSP-1532 -->
- Множество других небольших улучшений и исправлений ошибок.
Официальный выпуск: https://github.com/Kotlin/kotlin-lsp/releases/tag/kotlin-lsp/v263.4702.0
Данные версии Homebrew: https://formulae.brew.sh/api/cask/kotlin-lsp.json