- Восстановлена работоспособность встроенного синтакс-помощника
- Исправлена ошибка запуска BSL Language Server в каталоге, содержащем пробел
- Добавлено свойство, позволяющее переопределить путь установки BSL Language Server по умолчанию
- Добавлена проверка на наличие кириллических символов в пути к каталогу установки BSL Language Server под ОС Windows
- Список изменений последней версии BSL LS доступен по ссылке
- Реализована автоматическая установка и обновление BSL Language Server.
- Изменения к последней версии BSL LS доступны по ссылке
- Запуск BSL LS по умолчанию больше не требует установленной java. Запуск через конкретную версию jar-файла доступен в настройках плагина
- Обновлен BSL Language Server до версии 0.12.3:
- Исправлена фильтрация диагностик по режиму совместимости
- Исправления публикации плагина
- Обновлен BSL Language Server до версии 0.12.2:
- Размер расширения сокращен в 2 раза
- Существенно увеличена скорость работы, уменьшено потребление не-отдаваемой оперативной памяти
- Форматтер теперь обрезает незначимые символы справа в комментариях
- Добавлена возможность игнорирования диагностик в коде с помощью аннотаций
BSLLS-выкл
- Добавлены новые диагностики и быстрые исправления, улучшена работа имеющихся диагностик
- Исправлены обнаруженные ошибки
- Обновлен BSL Language Server до версии 0.11.0:
- Добавлена возможность игнорирования диагностик в коде с помощью аннотаций
BSLLS-выкл
- Добавлены новые диагностики и быстрые исправления, улучшена работа имеющихся диагностик
- Добавлена возможность игнорирования диагностик в коде с помощью аннотаций
- Обновлен BSL Language Server до версии 0.10.2:
- Исправлен расчет когнитивной сложности для логических выражений
- Издатель расширения изменен на
1c-syntax
- Обновлен BSL Language Server до версии 0.10.1:
- BREAKING CHANGE По умолчанию процесс расчета диагностик теперь запускается только при сохранении файла. Для возвращения старого поведения (при редактировании файла) используйте конфигурационный файл, свойство computeDiagnostics в значении onType
- Добавлен показ Когнитивной сложности над определением процедуры/функции
- Добавлены новые диагностики и быстрые исправления, улучшена работа имеющихся диагностик
- Для конфигурационного файла добавлена json-схема. Подробнее - на сайте проекта
- Исправлены ошибки форматирования аннотаций и многострочных строк
- Обновлен BSL Language Server до версии 0.9.1:
- Добавлены "быстрые исправления" для диагностик, в том числе "Fix all" - исправление всех диагностик указанного типа в текущем файле
- В символы документа теперь выводятся и области
- Добавлены новые диагностики, улучшена работа имеющихся диагностик
- Исправлены обнаруженные ошибки
- Обновлен BSL Language Server до версии 0.8.0:
- добавлен обработчик
textDocument/documentSymbol
- вывод символов документа - процедур, функций и переменных, объявленных черезПерем
. - добавлены диагностики
- убран вывод в лог сообщений об ошибках парсинга файлов
- исправлены обнаруженные ошибки
- добавлен обработчик
- Расширение теперь пакуется в бандл с помощью webpack - снижено время открытия и активации расширения
- Обновлен BSL Language Server:
- добавлен обработчик
textDocument/foldingRange
- расчет сворачиваемых областей. Доступно сворачивание многострочных комментариев, инструкций препроцессору#Если ... #КонецЕсли
,#Область ... #КонецОбласти
, процедур и функций, блочных конструкцийЕсли
/Пока
и т.п.
- добавлен обработчик
- Исправлена ошибка дублирования комментария в начале файла при выполнении форматирования документа
- Добавлена обработка пробелов и абсолютных путей в настройках запуска BSL Language Server и java
Расширение начинает медленно переезжать на BSL Language Server.
Внимание! Для работы BSL Language Server требуется установленная Java SE версии 8 или новее!
- Добавлено подключение BSL Language Server версии 0.6.1
- Добавлен вывод диагностик об ошибках, отлавливаемых BSL Language Server
- Форматирование документа и блока кода переведено на BSL Language Server по умолчанию
- Добавлены настройки, позволяющие задавать:
- пути к исполняемым файлам java и BSL LS
- возможность включения "старого" механизма форматирования
- Добавлен Синтакс-Помощник OneScript.Web
- В систему автодополнения, подсказки параметров и всплывающей подсказки добавлена обработка метода ПриСозданииОбъекта у классов OneScript
- Добавлена подсказка по сигнатурам стандартных классов 1C и OneScript (в конструкторе и при вызове методов). Методы показываются при условии, что переменная класса названа так же, как и класс
- Модули и классы OneScript из рабочего каталога теперь добавляются в систему автодополнения, если структура каталогов удовлетворяет "Соглашению о структуре каталогов библиотек OneScript"
- Добавлена обработка перехода к определению процедуры (F12) на конструкторе класса OneScript
- Синтакс-Помощник OneScript обновлен до 1.0.21
- Синтакс-Помощник 1С обновлен до 8.3.13
- Исправления найденных ошибок
- Добавлена подсветка аннотаций для OneScript
- Добавлена команда генерации описания ко всем экспортным процедурам/функциям текущего файла
- Добавлен показ текущего метода на нижней панели
- Синтакс-помощник OneScript обновлен до версии 1.0.19
- Обновлены все зависимости
- Очень плодотворный рефакторинг (огромное спасибо @bambr1975)
- Сниппеты описаний процедур/функций больше не добавляют имя процедуры в комментарий после конца метода
- Частичная поддержка работы в нескольких рабочих пространствах
- Генерация описания метода корректно заполняет имена параметров
- Задачи сборки и проверки не подсвечивали ошибки в файле
- Исправлены падения заполнения кэша библиотека в случае, если библиотека содержит несколько файлов
lib.config
- Починена команда переключения контекстов в Синтакс-помощнике
- Требуемая версия VSCode повышена до 1.17.0
- Добавлено управление сворачиванием областей по маркерам
#Область ... #КонецОбласти
и//{ ... //}
- Обновлен синтакс-помощник 1С:Предприятие и OneScript
- Удалена команда
Create tasks.json for current workspace
. Вместо нее используется TasksApi VSCode 1.17 - На базе TasksApi реализованы стандартные команды работы со скриптами. Добавлено автоопределение задач opm, а так же стандартные команды запуска тестирования с помощью фреймворков
1bdd
и1testrunner
. - Добавлена настройка
language-1c-bsl.autoDetect
, отвечающая за автоопределение задач для opm. По умолчанию включено - Добавлена команда
Выровнять блок пробелами
- Добавлена команда
QuickOpen
для быстрого поиска перехода к модулям объектов/менеджеров/команд/общих и т.д. - Переработано представление информации о типах значений параметров в автодополнении и при наведении на метод
- В автодополнение и информацию при наведении на метод добавлено указание наличия
Знач
у параметра метода и значение по умолчанию - Автоформатирование выделенного блока теперь приводит ключевые слова к каноническому написанию
- Deep refactoring всего, до чего добрались руки
- Значительно был переработан синтакс-помощник и механизм его рендера
- Добавлена информация по экспортным методам библиотек OneScript, написанных на OneScript
- Добавлена возможность импорта информации об экспортных методах библиотек OneScript, написанных на C#
- Для библиотек OneScript добавлен показ README.md с github-репозитория библиотеки
- Добавлен вывод информации об экспортных методах 1С конфигурации. Имеется группировка по метаданным и по подсистемам
- Добавлены системные перечисления перечисления 1С
- В режиме редактирования файлов OneScript добавлена информация об уникальных для OneScript значениях перечислений (например,
КодировкаТекста.UTF8NoBOM
)
- Исправлена ошибка редактирования документа, пока еще не загружен плагин, которая могла привести к остановке работы плагина
- Исправлена ошибка анализа установленных библиотек OneScript, приводяющая к остановке работы системы автодополнения
- Автокомплит по библиотекам oscript теперь работает в режиме открытия отдельного файла
- Формат отступов (табуляция, 4 символа) теперь устанавливается штатными средствами VSCode 1.10+
- Вставка символов
//
при редактировании комментария переведена наshift+enter
как и планировалось изначально - Скорректирована процедура открытия синтакс-помощника
- Исправлена принудительная вставка символа табуляции при разворачивании конструкций вида
a++
- теперь учитываются настройки редактора - Исправлена подсветка сравнений в условиях при использовании переносов строки
- Исправление ошибки обновления на 1.9.0
- В работу системы автодополнения добавлены библиотеки OneScript. Работают:
- Переход к определению
- Информация о процедуре
- Предварительный просмотр определения процедуры
- Автодополнение через точку
- Подсказка по параметрам процедур
- Имеющиеся ограничения:
- Требуется установка пакета oscript-config из opm
- В библиотеке OneScript должен присутствовать файл lib.config
- Для работы автодополнения классов имя переменной должно совпадать с именем класса
- Исправлена ошибка редкого открытия неверного файла при совершении перехода к определению на процедуры с совпадающими названиями
- Исправлена неверная подсветка отдельно стоящего ключевого слова
СОЕДИНЕНИЕ
в запросе - Поправлена работа подсветки в конструкции
ЕСТЬ НЕ NULL
в запросе - В шаблоне задач для запуска OneScript расширена обработка вложенных сообщений об ошибках
- Автодополнение по стандартным перечислениям теперь работает не только после знака
=
- Добавлено автодополнение по значениям стандартных перечислений
- В Синтакс-помощник OneScript добавлены пропущенные функции работы с типами
- Исправлено переключение контекстов в Синтакс-помощнике
- Исправлено открытие Синтакс-помощника по функциям, отличным от файловых операций
- Исправлена ошибка открытия Синтакс-помощника по функции под курсором
- Исправлена работа всплывающей подсказки после наведения на глобальные функции
- Исправлена редкая ошибка формирования комментариев к функциям
- Исправлена ошибка подсветки нескольких переменных через одно ключевое слово
Перем
- Исправлена ошибка определения глобальных классов
AdRepresentation
иПанельЗадачОС
- Перевод строки внутри
()
теперь добавляет отступ - Автовставка закрывающей скобки теперь учитывает настройку
editor.autoClosingBrackets
и работает только в языке1C (BSL)
- Для языка запросов добавлены расширения файлов
sdbl
иquery
- Исправлена ошибка определения запроса внутри
bsl
файла, если запрос написан в английском синтаксисе - Исправлена подсветка операторов
ИТОГИ ПО
,ДЛЯ ИЗМЕНЕНИЯ
,ТОЛЬКО ИЕРАРХИЯ
в английском синтаксисе - Обновлены зависимости пакетов
- Добавлены процедуры и перечисления, добавленные в 1С:Предприятие 8.3.9
- Добавлена поддержка аннотаций (
&Перед(...)
и прочих) - Добавлена возможность подсветки круглых скобок в темах, которые это поддерживают. Использумые пространства имен:
punctuation.bracket.begin.bsl
иpunctuation.bracket.end.bsl
- Добавлена возможность автовставки
//
после перевода строки при нажатииshift+enter
в строке комментария - Исправлена ошибка определения
ПОЛНОЕ ВНЕШНЕЕ СОЕДИНЕНИЕ
в запросе - Доработано определение границы слов для чисел
- Определение GUID убрано из грамматики
- Исправлено отображение подсказки по параметрам процедур для VSC 1.6
- Исправлен переход по ссылкам Синтакс-помощника в VSC 1.6
- Исправлены падения из-за ошибок релиза 1.7.1
- Исправлен неработавший отступ назад при наборе закрывающих операторных скобок (
КонецЕсли
и прочие). Для работы требуется активировать настройку"editor.formatOnType": true
вsettings.json
. - Расширено описание Синтакс-Помощника для некоторых методов
OneScript
- Добавлена возможность автоматически разворачивать конструкции вида
++
/+=
и подобных по нажатию наTab
- Добавлено автоформатирование текста по
Shift-Alt-F
- Исправлено отображение секции
Примеры
в синтакс-помощнике
- Исправлена некорректная работа всплывающей подсказки в VSC 1.3.0
- Исправлен показ параметров в синтаксис-помощнике
- Добавлен синтаксис-помощник по методам OneScript
- Добавлена структура классов и процедур для OneScript (полностью) и 1С (частично)
- Добавлены автодополнение, подсказа при наведении, поддержка подсказки параметров при вводе для процедур и функций OneScript
- Добавлено автодополнение классами после оператора
Новый
- Добавлена команда быстрого создания файла
tasks.json
- Исправлено зависание обновления кэша при редактировании файлов со смешанным режимом переносов строк
- В варианты запуска скриптов oscript добавлен режим
-check
- Иcправлена работа автодополнения, перехода к определению в новосозданных несохраненных файлах
- Добавлена поддержка новых классов 8.3.8. Обновлена справка по методам.
- Добавлено определение и подсветка присваивания переменных
- Исправлена некорректная обработка абсолютного пути к точке входа в окружение
oscript
в настройкеlinterEntryPoint
- Добавлена возможность оборачивать выделенный текст в конструкции вида
Если Тогда ... КонецЕсли;
с помощью динамических шаблонов - Исправлено ошибочное попадание ключевого слова Процедура/Функция как первого параметра, если определение процедуры/функции занимает несколько строк
- Исправлено отображение Синтаксис-помощника на светлой теме
- Исправлено ошибочное определение операторов языка (например,
ССЫЛКА
) после ключевого словаКАК
- При автодополнении курсор позиционируется после скобок, если у процедуры нет параметров
Новая система автодополнения для конфигураций, разложенных на исходные файлы, и скриптов .os
Полное описание новых возможностей смотрите здесь.
-
Переход к определению
-
Поиск мест использования процедур
-
Информация о процедуре
-
Предварительный просмотр определения процедуры
-
Автодополнение через точку
-
Подсказка по параметрам процедур
-
Поиск определения
-
Поддержка английского языка конфигурации
-
Создание описания метода
-
Синтаксис-помощник по функциям глобального контекста
-
Добавлены настройки для работы с OneScriptLint и системой автодополнения
-
Автоматическая вставка скобок
-
Исправлено сохранение новых файлов в грамматике
1C (Query)
- Исправлена установка отступов по умолчанию для VS Code >1.0.0
- Исправлены неработавшие сниппеты
#Область
и#Region
- Исправлена подсветка классов и свойств глобального контекста, имеющих символ точки после вызова
- Исправлено ошибочное срабатывание подсветки запроса внутри модуля на текст вида
selected
вместоselect
- Исправлено определение начала и конца ключевых слов и функций
- Добавлена поддержка разделителей в литералах типа "Дата"
- Исправлена регистрозависимость конструкции
#Использовать
- Исправлено определение даты в одинарных кавычках
- Исправлено определение двух двойных кавычек внутри строки в тексте запроса. Теперь они корректно определяются как
constant.character.escape
и выделяются цветом
- Добавлены сниппеты (шаблоны текста). За основу взяты стандартные шаблоны текста конфигуратора
- Добавлено определение переменных, объявленных через
Перем
, какvariable
. - Добавлена подсветка парных скобок при выделении
- Исправлено определение двух двойных кавычек внутри строки. Теперь они корректно определяются как
constant.character.escape
и выделяются цветом - Исправлено определение закомментированной строки текста запроса
- Исправлено определение указателей на процедуры и функции, когда в файле используются LF-переносы строк (случайный пропуск релиза 1.2.3)
- Добавлена возможность проверки синтаксиса файлов
*.os
и*.bsl
(опционально), используя интерпретаторOneScript
- Исправлено определение указателей на процедуры и функции, когда в файле используются LF-переносы строк
- Исправлена ошибка определения комментариев внутри текста запроса в тексте модуля, приводившая к комментированию текста за пределами запроса
- Исправлено ошибочное определение ключевых слов внутри строк в тексте запроса
- Исправлено прерывание работы подсветки текста запроса при использовании двойных кавычек в тексте запроса
- Добавлена подсветка текста запроса внутри текста модуля
- Добавлена подсветка синтаксиса языка запросов. Доступна по имени
1C (Query)
в списке языков - Исправлено определение
#КонецОбласти
, которое могло приводить присвоению цвета, отличного от#Область
- Добавлена подсветка #Область/#КонецОбласти
- Добавлено автодополнение по процедурам и функциям глобального контекста
- Добавлены автоматические вставка и удаление отступов при использовании блочных конструкций (например,
Если ... Тогда
) - Добавлена настройка отступов по умолчанию - используются жесткие табы размером в 4 символа
- Исправлено зависание при переносе строки в многострочных строках
- Исправлено удаление отступов при переносе строки
- Исправлено задвоение процедур при просмотре списка процедур и функций текущего файла
- Скорректировано определение дат, как цифр в одинарных кавычках
- Добавлена возможность перехода к определению функции
- Добавлена возможность просмотра списка процедур и функций текущего файла
- Исправлена ошибка вставки символа
|
при сработавшем автодополнении
- Исправлено определение комментария внутри строкового литерала
- Добавлена возможность запуска файлов
.bsl
/.os
через интерпретатор OneScript - Добавлена автоматическая вставка символа
|
при переводе строки во время редактирования строкового литерала - Исправлена подсветка комментария в последней строке файла
- Добавлено определение всех процедур, функций и свойств, относящихся к глобальному контексту
- Исправлена подсветка одиночного
Для
- Добавлена возможность блочного комментирования через
//
- Исправлена ошибка подсветки, если сразу после определения функции идет запятая
- Корректная обработка буквы
ё
- Добавлены функции по работе со строками, появившиеся в 8.3.6
- Исправлена подсветка составных директив компиляции (например,
&НаСервереБезКонтекста
) - Исправлена ошибка зацикливания при определении значений по-умолчанию в заголовках процедур и функций
- Добавлены проверки на наличие пробелов в определения процедур/функций и
Перем
- Технические изменения для поддержки различными парсерами
- Добавлено определение функции "Новый"
Перем
теперь определяется какstorage.type.var
- Исправлено определение ключевого слова
Экспорт
при объявлении переменной - Исправлено ложное включение открывающей скобки в
support.function
- Исправлено определение экранированных кавычек в строке
- Добавлены английские синонимы ключевых слов
- Добавлено определение инструкций препроцессору (#Если ... Тогда)