Что дают расширения
Видимую работу делают три расширения: одно для редактирования и запуска SPPX-постпроцессоров, одно для просмотра входных данных, одно для постпроцессоров на C#. Ассистент пользуется теми же командами, но это обычные возможности VS Code — здесь описано, чего от них ждать и где их найти.
Команды запускаются из палитры команд: F1 (или Ctrl+Shift+P), затем начните набирать название. Команды, у которых в названии есть (agent API), предназначены ассистенту — вручную они вам не нужны.
SPPX Postprocessor Tools
Редактирование
Откройте файл *.sppx — структура XML и код обработчиков подсвечиваются как два разных языка. XML-обвязка свёрнута, поэтому файл читается как список обработчиков с их кодом. Панель Outline перечисляет обработчики, подпрограммы и регистры и переходит к ним, F12 ведёт к определению, автодополнение и подсказки сигнатур охватывают встроенный язык, а синтаксические ошибки подчёркиваются по мере ввода.
Если VS Code восстановил старую раскладку сворачивания и файл выглядит непривычно, выполните SPPX: Unfold Code (reset folding to default layout).
Генерация УП
Панель Generate NC — основное рабочее место. При открытом файле *.sppx она вызывается кнопкой-треугольником в заголовке редактора — при наведении подсказка показывает SPPX: Generate NC Program — или одноимённой командой из палитры.
В панели:
- именованные конфигурации запуска — обрабатываемый проект CAM, выходной файл и собственные входные параметры постпроцессора, показанные с их заголовками, а не служебными именами;
- Run и ход выполнения во время генерации;
- ошибки и предупреждения в панели Problems, каждое со ссылкой на строку обработчика, которая его породила;
- сформированная программа со сравнением с предыдущим прогоном и с эталонной программой, которую вы укажете.
Кнопки рядом с Run открывают CLData текущей конфигурации в инспекторе: имя проекта — в боковой панели, стрелка — во вкладке под редактором. То же доступно командой SPPX: Inspect CLData of the Current Run Configuration.
Ещё две команды стоит знать: SPPX: Open in Postprocessors Generator IDE открывает тот же постпроцессор в InP, а SPPX: Clean Stored Run Data сбрасывает сохранённое состояние прогонов, если конфигурация пришла в негодность.
CLData Inspector
Здесь видно, что фактически приходит в постпроцессор. Его значок на панели активности открывает три представления:
- Files — файлы открытого проекта с количеством команд. Кнопки представления открывают проект CAM (
*.stcp,*.stc) или отдельный файл*.inpcld, повторно открывают недавний, перечитывают проект после перегенерации и открывают широкую вкладку инспектора в области редактора. - Commands — команды выбранного файла, сгруппированные по секциям структуры; в файлах подпрограмм УП — по границам подпрограмм.
Ctrl+Fв представлении или команда CLData: Find Command… ищет на стороне сервера, поэтому поиск остаётся пригодным и на файлах с сотнями тысяч команд. - Parameters —
Key = Valueдля выбранной команды: массив, именованные параметры и типизированное .NET-представление. Последнее включается и выключается командой CLData: Toggle .NET Parameter View.
Щёлкните параметр правой кнопкой, чтобы скопировать нужное для кода: Copy Name (sppx) и Copy Name (.NET) дают точную форму для вставки в обработчик, Copy Value — само значение. На команде Copy Caption копирует её человекочитаемое имя.
Ассистент может открыть здесь конкретный файл, команду или параметр, когда хочет вам что-то показать, — см. разработку в Visual Studio Code.
DotNet Posts
Для постпроцессоров на C#, с той же панелью Generate NC, что и у SPPX Tools: конфигурации, входные параметры, ход выполнения, результаты и сравнение.
Два способа начать генерацию:
- DotNet Posts: Generate NC Program или кнопка-треугольник в заголовке редактора для файла C# (в подсказке то же название) — работает с открытым в воркспейсе проектом постпроцессора и сам находит собранную сборку;
- DotNet Posts: Generate NC Program from DLL… или щелчок правой кнопкой на
.dllв Explorer — запускает скомпилированный постпроцессор без исходников. Несколько постпроцессоров можно держать в отдельных вкладках панели и сравнивать на одном проекте.
Команда DotNet Posts: Reveal Postprocessor Handler открывает обработчик нужной команды. Настройка dotnetPosts.autoBuild собирает проект перед каждым запуском, чтобы изменение не проверялось на устаревшей сборке.
Postprocessor Tools updater
Своего интерфейса у модуля обновления нет. Когда доступна новая версия, в панелях постпроцессора появляется действие обновления: согласитесь на него и перезагрузите окно. Та же проверка доступна из палитры — см. расширенную настройку.
Настройки
Страница параметров каждого расширения начинается с папки, в которую установлена CAM-система, — это единственная настройка, без которой ничего не работает. В расширенной настройке перечислены все три и выбор папки через диалог.