Files
nc310-syntax/README.md
2025-08-20 23:46:28 +03:00

96 lines
6.0 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# BSNC Syntax & Highlighting
Расширение для Visual Studio Code, добавляющее полноценную подсветку синтаксиса, автодополнение и цветовую схему для программ ЧПУ в формате **BSNC / NC310**.
## ✨ Возможности
- **Подсветка G/Mкодов**
Разделение кода и числовой части, поддержка слитной и раздельной записи (`G1X0Y0F500`, `S600 M3` и т.д.).
- **Подсветка трёхбуквенных кодов в скобках**
(`UCG`, `UAO`, `URT`, `RPT`, `ERP` и др.) с разбором аргументов по типам: числа, переменные, строки.
- **Подсветка переменных E**
(`E30=0`, `ZE30`) с раздельным цветом для имени и значения.
- **Выделение начала и конца циклов**
`(RPT,...)` и `(ERP)` — яркие цвета для мгновенного поиска в коде.
- **Подсветка допустимых и недопустимых Gкодов**
Валидные коды из документации — обычный цвет, неизвестные — выделяются как ошибка.
- **Подсветка комментариев**
Однострочные (`; ...`) и блочные в скобках.
- **Встроенная цветовая схема**
Все цвета для токенов уже встроены в расширение, интерфейс VS Code не меняется.
## 📋 Поддерживаемые Gкоды
| Код | Описание |
|------|----------|
| G00 | Быстрое позиционирование |
| G01 | Линейная интерполяция |
| G02 | Круговая интерполяция по часовой стрелке |
| G03 | Круговая интерполяция против часовой стрелки |
| G04 | Выдержка времени, заданная в кадре |
| G06 | Сплайновая интерполяция |
| G09 | Замедление в конце кадра |
| G17 | Выбор плоскости интерполяции (оси 1 и 2) |
| G18 | Выбор плоскости интерполяции (оси 3 и 1) |
| G19 | Выбор плоскости интерполяции (оси 2 и 3) |
| G20 | Закрытие среды программирования GTL |
| G21 | Открытие среды программирования GTL |
| G27 | Непрерывная обработка с замедлением на углах |
| G28 | Непрерывная обработка без замедления на углах |
| G29 | Позиционирование от точки к точке |
| G33 | Нарезание резьбы с постоянным/переменным шагом |
| G34 | Нарезание резьбы с постоянным/переменным шагом |
| G35 | Синхронизированное начало движения со шпинделем |
| G40 | Отмена корректировки на профиле |
| G41 | Корректировка на профиле (инструмент слева) |
| G42 | Корректировка на профиле (инструмент справа) |
| G70 | Программирование в дюймах |
| G71 | Программирование в миллиметрах |
| G72 | Измерение точки с компенсацией радиуса |
| G73 | Измерение параметров отверстия |
| G74 | Измерение отклонения без компенсации радиуса |
| G79 | Программирование относительно нуля станка |
| G80 | Отмена постоянных циклов |
| G81 | Цикл сверления |
| G82 | Цикл растачивания |
| G83 | Цикл глубокого сверления |
| G84 | Цикл нарезания резьбы метчиком |
| G85 | Цикл рассверливания |
| G86 | Цикл развертывания |
| G89 | Цикл развертывания с остановкой |
| G90 | Абсолютное программирование |
| G91 | Программирование по приращениям |
| G93 | Подача в виде обратного времени |
| G94 | Подача в мм/мин или дюйм/мин |
| G95 | Подача в мм/оборот |
| G96 | Скорость вращения шпинделя, м/мин |
| G97 | Скорость вращения шпинделя, об/мин |
> ❗ Любые другие Gкоды будут подсвечены как **ошибочные**.
## 📦 Установка
1. Скачайте `.vsix` или установите из [Visual Studio Marketplace](#) (ссылка после публикации).
2. В VS Code: `Ctrl+Shift+P`**Extensions: Install from VSIX** → выберите файл.
3. Расширение активируется автоматически для файлов с кодом BSNC.
## 🚀 Использование
- Откройте файл программы ЧПУ (с расширением или без).
- Подсветка и цвета применяются автоматически.
- Сниппеты:
- `ucg``(UCG,2,X-33X33,Y-33Y33,Z-15Z0,1,-3)`
- `urt``(URT,0)`
- `rpt``(RPT,E0)`
- Недопустимые Gкоды будут выделены красным фоном.
## ⚙️ Кастомизация
Если хотите изменить цвета:
1. Откройте `settings.json`.
2. Добавьте свои правила в `editor.tokenColorCustomizations.textMateRules` — они перекроют встроенные.
## 📄 Лицензия
MIT — используйте, модифицируйте и делитесь.