Проект позволяет анализировать и форматировать код 1С в конфигураторе. Инструмент основан на проекте BSL LS.
Установить приложение можно двумя способами:
java -jar phoenix-{version}.jar
где {version} - версия приложения.
Например:
java -jar phoenix-0.3.3.jar
После запуска приложения в конфигураторе нажимаем в модуле с кодом:
CTRL
+ I
- анализ кода на замечания.CTRL
+ K
- форматирование кода.CTRL
+ J
- "исправить все в модуле" - автоматическое исправление определенных замечаний (см. "Быстрые исправления").Так же стоит отметить, что анализ и форматирование работает по выделенному коду.
Настроки приложения размещены: Трей приложения -> Настройки. Доступно следующее:
Использовать BSL LS jar
- определяет, будет ли запущен BSL LS через java. По умолчанию выключено.Путь к JAVA
- путь к Java. Если значение java
- то берется из PATH системы.
Для запуска приложения требуется Java не ниже версии 11. Путь к BSL LS
- путь к приложению BSL LS. Либо это путь к jar файлу (если выключена опция Использовать BSL LS jar
), либо это
путь к файлу bsl-language-server.exe
.Свои настройки BSL LS
- признак использования своих настроек для BSL LS.Путь к настройкам BSL LS
- путь к настройкам BSL LS. По умолчанию .bsl-language-server.json
. Для работы полного пакета проверок требуется указать в конфигурационном файле путь к выгруженным метаданным. Группировать замечания
- при включенном флаге замечания группируются по их типу.Плагины поддержки 1С в SonarQube:
Есть возможность, используя SonarLint, проанализировать код 1С с помощью плагина 1С на сервере SonarQube. Для этого нужно добавить в конфигурационный файл приложения (%USER_NAME%\phoenixbsl\Configuration.json
) настройку проекта в projects
:
{
// ...
"projects": [
{
"name": "local",
"basePath": "C://Users//otymko//phoenixbsl//projects//context-collector//",
"useSonarLint": true,
"projectKey": "my-project1",
"serverUrl": "http://localhost:9000",
"serverId": "0000001",
"token": "58b7eaaa76be14d94e470ab28376f30f6cc95f55"
}
]
}
где свойства:
name
- имя проекта внутри приложенияbasePath
- путь к рабочему каталогу проекта, в дальнейшем каталог должен содержать исходники конфигурации в формате xml. Есть каталог не существует, то приложение его создаст.useSonarLint
- опция для включения SonarLint. Работает при правильно заполненных свойствах: projectKey
, serverUrl
, token
. Свойство serverId
пока не используется.projectKey
- ключ проекта в SonarQubeserverUrl
- адрес сервера SonarQube, например: https://open.checkbsl.org/serverId
- идентификатор сервера SonarQube, пока не используется.token
- токен безопасности, для подключения к SonarQube. Генерируется из профиля пользователя.После заполнения проекта выше, в приложении будет доступен выбор проекта (в главном окне). Для удобства замечания разделены на:
С помощью "Исправить все в модуле" можно автоматически исправить следующие замечания:
CanonicalSpellingKeywords
SpaceAtStartComment
SemicolonPresence
Разработка ведется по git flow. В разработке используется платформа JAVA не ниже 11 версии.
Идеи, фидбек, баги по проекту кидаем в раздел Досад Issues.
P.S. Зачем это, если есть Снегопат, Turboconf, SmartConfigurator и т.п.? Ответ -> использование языка Java, открытый исходный код, прокачка в разработке на Java.