Syntax definition rules for 1C:Enterprise 8 in TextMate format
Clone or download
Pull request Compare This branch is 128 commits ahead of nixel2007:master.
nixel2007 Merge pull request #299 from 1c-syntax/feature/fix-variable-assignment
Исправление подсветка присваивания без точки с запятой
Latest commit f68723f Aug 11, 2018
Permalink
Failed to load latest commit information.
.vscode Добавлены команды сбора пакетов в vsc Nov 3, 2016
spec Тест на возвращение подсветки после присвоения переменной без закрыва… Aug 11, 2018
src Вновь добавлены обработки по разбору файлов шаблонов в YAML Mar 8, 2016
.editorconfig Editorconfig added Jan 7, 2016
.gitignore FIx #265. Сравнение в условии на след строке не должно подсвечиваться… Mar 12, 2017
.travis.yml Подправил скрипт сборки Mar 12, 2017
1c-query.YAML-tmLanguage Изменена лексема "Внутреннее соединение" Dec 18, 2016
1c.YAML-tmLanguage Исправление подсветки для https://github.com/arkuznetsov/yabr/blob/37… Aug 11, 2018
CHANGELOG.md Changelog 1.9.2 Mar 14, 2017
CONTRIBUTING.md Обновлен раздел для Atom Dec 18, 2016
LICENSE.md Добавлена лицензия Dec 7, 2015
README.md Update README.md Jun 11, 2018
build.os Оптимизирована процедура сборки грамматик Nov 15, 2016
build_atom_snippets.js Для атома сделано добавление индекса к префиксу. Mar 10, 2016
build_st_snippets.js Добавлен вызов сбора сниппетов для VSC. Mar 6, 2016
build_vsc_snippets.js Убрано лишнее свойство Mar 6, 2016
package-lock.json package.lock Jun 27, 2018
package.json упрощенный скрипт сборки Jun 27, 2018
publish.os Процесс сборки пакетов переведен на gitrunner Nov 3, 2016
snippets.yml Fix #127. Исправлен триггер сниппета #Область Apr 14, 2016
ПарсингШаблонов.epf Вновь добавлены обработки по разбору файлов шаблонов в YAML Mar 8, 2016
РазборВДерево.epf Вновь добавлены обработки по разбору файлов шаблонов в YAML Mar 8, 2016

README.md

1c-syntax

Join the chat at https://gitter.im/xDrivenDevelopment/1c-syntax Build Status Greenkeeper badge

Syntax definition rules for 1C:Enterprise 8 for tmLanguage-based text editors (Sublime Text, Atom and VS Code).

Цель репозитория

Данный репозиторий создан для консолидации работ по развитию пакетов, добавляющих поддержку языка 1С:Предприятие 8 для текстовых редакторов Atom, Sublime Text и Visual Studio Code.
Под каждый из редакторов создан отдельный репозиторий и опубликован соответствующий пакет на площадке распространения пакетов:

Репозиторий Пакет
Sublime Text Package control
Atom Atom.io/packages
VS Code Marketplace

Разработка описания грамматики языка на основе формата TextMate ведется в специальном YAML-файле, описание которого и примеры использования вы можете найти здесь.

Связи с другими проектами

Проект 1c-syntax не органичивается репозиториями с описанием грамматики. В рамках наших активностей так же выполнялись/выполняются работы по направлениям:

  • Подсветка синтаксиса для Github: библиотека linguist
  • Подсветка синтаксиса GitLab: библиотека rouge и братский проект 1c-syntax-for-GitLab
  • Подсветка синтаксиса в редакторе Ace: репозиторий ace
  • Подсветка синтаксиса в редакторе Vim: репозиторий vim-language-1c-bsl за авторством @andreevlex
  • Подсветка синтаксиса в редакторах с поддержкой GtkSourceView: библиотека GtkSourceView, репозиторий gtksourceview-1c-bsl
  • Запуск скриптов OneScript в редакторе Atom: пакеты atom-script и atom-build
  • Модули подсветки brush-bsl и brush-sdbl для js библиотеки syntaxhighlighter. Эти модули должны работать в JIRA.

Планируются работы по направлениям:

  • Подсветка синтаксиса в редакторе CodeMirror - для поддержки подсветки в git-сервере BitBucket
  • Обновление подсветки в редакторе Highlight.js - для улучшенной поддержки подсветки в git-сервере Gogs и приведения идентификаторов языка к единому виду

Дополнительные возможности

Помимо, собственно, грамматики, мы пытаемся добавить в редакторы дополнительные возможности, которые могут упростить работу с 1С.
На данный момент список таких фич выглядит вот так:

Функциональность \ Поддержка в редакторах Atom Sublime Text VS Code
Подсветка текста запроса внутри модуля и отдельно Есть Есть Есть
Блочное комментирование через // Есть Есть Есть
Список процедур и функций текущего файла Есть Есть Есть
Список процедур и функций рабочего каталога Есть Есть Есть
Переход к определению процедур и функций Есть Есть Есть
Автодополнение процедур и функций глобального контекста Есть Есть Есть
Автодополнение процедур и функций, уникальных для OneScript Нет Нет Есть
Сниппеты (шаблоны текста) Есть Есть Есть
Использование автоматических отступов по ключевым словам Есть Есть Есть
Автоматическое выравнивание блока кода или файла целиком Есть Есть Есть
Разворачивание конструкций вида ++/+= и подобных по нажатию Tab Есть Есть Есть
Автоматическое добавление символа | при добавлении новой строки во время редактирования строкового литерала Есть Есть Есть
Автоматическое добавление символов // при добавлении новой строки во время редактирования комментария по нажатию Shift-Enter Есть Есть Есть
Запуск скриптов .os/.bsl с помощью OneScript Есть Есть Есть
Линтер на базе oscript -check Есть Есть Есть
Использование отступов в виде 4х-символьных табов Есть Есть Есть
Поиск мест использования процедур Нет Нет Есть
Информация о процедуре Нет Нет Есть
Предварительный просмотр определения процедуры Нет Нет Есть
Автодополнение через точку Нет Нет Есть
Подсказка по параметрам процедур Нет Нет Есть
Поиск определения Нет Нет Есть
Поддержка английского языка конфигурации Нет Нет Есть
Создание описания метода Нет Нет Есть
Синтакс-помощник по функциям глобального контекста Нет Нет Есть
Синтакс-помощник по методам oscript Нет Нет Есть
Автоматическая вставка скобок Нет Нет Есть
Динамические шаблоны Нет Нет Есть

Информацию об использовании каждой из возможностей вы найдете в README соответствующего редактора.

Сотрудничество

Если вы разработчик и хотите помочь с разработкой пакетов и/или грамматикой, пожалуйста, ознакомьтесь с гайдом для разработчиков.
Уже поставленные задачи по разработке можно найти на странице Issues данного репозитория.