Исправил неверный сниппет, обновление мини-документации

This commit is contained in:
2025-08-21 02:42:30 +03:00
parent d8c806761c
commit eef9e86662
3 changed files with 146 additions and 7 deletions

147
README.md
View File

@@ -78,12 +78,151 @@
- Откройте файл программы ЧПУ (с расширением или без). - Откройте файл программы ЧПУ (с расширением или без).
- Подсветка и цвета применяются автоматически. - Подсветка и цвета применяются автоматически.
- Сниппеты:
- `ucg``(UCG,2,X-33X33,Y-33Y33,Z-15Z0,1,-3)`
- `urt``(URT,0)`
- `rpt``(RPT,E0)`
- Недопустимые Gкоды будут выделены красным фоном. - Недопустимые Gкоды будут выделены красным фоном.
# 🛠 BSNC Syntax & Snippets
Расширение для **Visual Studio Code**, добавляющее:
- Подсветку синтаксиса для управляющих программ BSNC / NC310
- Автодополнение с готовыми сниппетами для G/Mкодов, циклов, переходов, подпрограмм, резьбы и перемещений
- Встроенную цветовую схему для токенов (интерфейс VS Code не меняется)
---
## 📦 Установка
1. Склонируйте репозиторий или скачайте `.vsix` файл.
2. В VS Code: `Ctrl+Shift+P`**Extensions: Install from VSIX** → выберите файл.
3. Расширение активируется автоматически для файлов с кодом BSNC.
---
## ⚡️ Сниппеты
Все сниппеты вызываются по **префиксу** — достаточно ввести его и выбрать шаблон из автодополнения.
Плейсхолдеры `${1:...}` позволяют быстро вводить значения, переходя по `Tab`.
---
### 🔧 Управляющие конструкции
| Префикс | Шаблон | Назначение |
|--------|--------|------------|
| `ucg` | `(UCG,2,X-33X33,Y-33Y33,Z-15Z0,1,-3)` | Универсальный геометрический элемент |
| `urt` | `(URT,0)` | Цикл URT |
| `rpt` | `(RPT,E0)` | Начало цикла повторений |
| `erp` | `(ERP)` | Завершение цикла |
| `dis` | `(DIS,"Описание")` | Комментарий или описание кадра |
| `evar` | `E30=0` | Объявление переменной |
---
### 🔁 Переходы
| Префикс | Шаблон | Условие |
|--------|--------|---------|
| `bnc` | `(BNC,LABEL)` | Безусловный переход |
| `bgt` | `(BGT,VAR1,VAR2,LABEL)` | Если VAR1 > VAR2 |
| `blt` | `(BLT,VAR1,VAR2,LABEL)` | Если VAR1 < VAR2 |
| `beq` | `(BEQ,VAR1,VAR2,LABEL)` | Если VAR1 = VAR2 |
| `bne` | `(BNE,VAR1,VAR2,LABEL)` | Если VAR1 ≠ VAR2 |
| `bge` | `(BGE,VAR1,VAR2,LABEL)` | Если VAR1 ≥ VAR2 |
| `ble` | `(BLE,VAR1,VAR2,LABEL)` | Если VAR1 ≤ VAR2 |
---
### 🔩 Перемещения
| Префикс | Шаблон | Назначение |
|--------|--------|------------|
| `g0` | `G0X0Y0Z0` | Быстрое позиционирование |
| `g1` | `G1 X0.0 Y0.0 Z0.0 F200` | Линейное перемещение |
---
### 🧵 Резьба G33
| Префикс | Шаблон | Тип резьбы |
|--------|--------|------------|
| `g33` | `G33 Z3 K6` | Постоянный шаг |
| `g33r` | `G33 Z3 K6 R120` | Многозаходная — 2-й заход |
| `g33r3` | `G33 Z3 K6 R240` | Многозаходная — 3-й заход |
| `g33i+` | `G33 Z3 K6 I1` | Возрастающий шаг |
| `g33i-` | `G33 Z3 K6 I-1` | Убывающий шаг |
| `g33u` | `G33 U3 K6` | Коническая резьба |
| `g33ir` | `G33 Z3 K6 I1 R120` | Переменный шаг + отклонение |
---
### 🧵 Резьба G34
| Префикс | Шаблон | Тип резьбы |
|--------|--------|------------|
| `g34` | `G34 Z3 K6` | Постоянный шаг |
| `g34r` | `G34 Z3 K6 R120` | Многозаходная — 2-й заход |
| `g34r3` | `G34 Z3 K6 R240` | Многозаходная — 3-й заход |
| `g34i+` | `G34 Z3 K6 I1` | Возрастающий шаг |
| `g34i-` | `G34 Z3 K6 I-1` | Убывающий шаг |
| `g34u` | `G34 U3 K6` | Коническая резьба |
| `g34ir` | `G34 Z3 K6 I1 R120` | Переменный шаг + отклонение |
| `g34g09` | `G34 Z3 K6 G09` | С торможением в конце |
---
### 🛠️ Циклы сверления и нарезания
| Префикс | Шаблон | Назначение |
|--------|--------|------------|
| `g83` | `G83 R5 Z-15 I2 K0.8 J1.0` | Глубокое сверление с дроблением |
| `g83tmr` | `G83 R5 Z-15 I2 TMR=2` | Сверление с выдержкой времени |
| `g84` | `G84 R5 Z-15 K2` | Нарезание резьбы с датчиком |
| `g84f` | `G84 R5 Z-15 F280` | Нарезание резьбы без датчика |
---
### 📐 Плоскости интерполяции
| Префикс | Шаблон | Плоскость |
|--------|--------|-----------|
| `g17` | `G17` | XY |
| `g18` | `G18` | XZ |
| `g19` | `G19` | YZ |
---
### 📏 Координатные системы
| Префикс | Шаблон | Назначение |
|--------|--------|------------|
| `g90` | `G90` | Абсолютная система |
| `g91` | `G91` | Приращения |
| `g79` | `G79 X0 Z0` | Относительно нуля станка |
---
### 📂 Подпрограммы
| Префикс | Шаблон | Назначение |
|--------|--------|------------|
| `cls` | `(CLS,P800/MP2)` | Вызов подпрограммы из памяти MPx |
| `cls0` | `(CLS,P800)` | Вызов без указания памяти |
---
### 🔄 Шпиндель
| Префикс | Шаблон | Направление |
|--------|--------|-------------|
| `s0` | `S600,M3` | По часовой стрелке |
| `s1` | `S600,M4` | Против часовой стрелки |
---
## 📄 Лицензия
MIT — используйте, модифицируйте и делитесь.
## ⚙️ Кастомизация ## ⚙️ Кастомизация
Если хотите изменить цвета: Если хотите изменить цвета:

View File

@@ -2,7 +2,7 @@
"name": "nc310-syntax", "name": "nc310-syntax",
"displayName": "Balt-System PLC Syntax", "displayName": "Balt-System PLC Syntax",
"description": "Подсветка, цвета и сниппеты Baltsystem PLC", "description": "Подсветка, цвета и сниппеты Baltsystem PLC",
"version": "1.0.1", "version": "1.0.2",
"publisher": "andrewkydev", "publisher": "andrewkydev",
"repository": { "repository": {
"type": "git", "type": "git",

View File

@@ -314,12 +314,12 @@
}, },
"S — вращение шпинделя по часовой стрелке": { "S — вращение шпинделя по часовой стрелке": {
"prefix": "s0", "prefix": "s0",
"body": ["S${1:LABEL},M3"], "body": ["S${1:LABEL}M3"],
"description": "Установка скорости шпинделя по часовой стрелке" "description": "Установка скорости шпинделя по часовой стрелке"
}, },
"S1 — вращение шпинделя против часовой стрелки": { "S1 — вращение шпинделя против часовой стрелки": {
"prefix": "s1", "prefix": "s1",
"body": ["S${1:LABEL},M4"], "body": ["S${1:LABEL}M4"],
"description": "Установка скорости шпинделя против часовой стрелки" "description": "Установка скорости шпинделя против часовой стрелки"
} }