Skip to content
| Marketplace
Sign in
Visual Studio Code>Other>pie-vscodeNew to Visual Studio Code? Get it now.
pie-vscode

pie-vscode

Maksim

|
82 installs
| (0) | Free
Working pie in vscode
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

pie-vscode

pie-vscode помогает разрабатывать конфигурации и расширения 1С в VS Code: запускать команды pie, выбирать рабочую базу, стартовать 1С, отлаживать код через dbgs и смотреть результаты замера производительности без ручной перекладки файлов между инструментами.

Расширение рассчитано на ежедневную работу разработчика 1С: открыть проект, выбрать базу, выполнить типовую команду, запустить отладку или замер и быстро понять результат.

Требования

  • VS Code версии 1.85.0 или выше.
  • Установленная платформа 1С:Предприятие 8.
  • Установленный Python и библиотека pie.
  • Проект с piefile.py для команд pie.
  • Для отладки: доступный dbgs из установленной платформы 1С.

Quick Start

  1. Установите расширение.
  2. Откройте проект с piefile.py в VS Code.
  3. Укажите минимальные настройки:
    • PieVscodeExt.platformForOpenPath
    • PieVscodeExt.platformForDumpPath
  4. Выберите базу в панели Список баз 1С.
  5. Нажмите Использовать текущую для работы pie.
  6. Выполните pie load, pie dump, pie build или запустите 1С из панели расширения.

После этих шагов расширение готово к базовой работе с проектом и выбранной базой. Для F5-отладки откройте Run and Debug, выберите 1C: Запуск с отладкой, поставьте breakpoint и нажмите F5. Если открыт .bsl файл и launch.json ещё не создан, F5 автоматически подготовит конфигурацию pie-1c и предложит выбрать базу.

Минимальная настройка

Обязательные настройки для первого запуска:

Настройка Назначение
PieVscodeExt.platformForOpenPath Путь к бинарникам платформы 1С для запуска 1С, конфигуратора и dbgs. Можно указать версию платформы или полный путь к каталогу bin.
PieVscodeExt.platformForDumpPath Путь к бинарникам платформы 1С для команд pie. Можно указать версию платформы или полный путь к каталогу bin.

Остальные настройки можно оставить по умолчанию и вернуться к ним, когда понадобятся профили, сервис обновлений, трассировка протокола или отдельные пути конфигурационных файлов.

Установка из исходников

npm install
npm run package

Готовый VSIX будет создан в папке build с именем вида pie-vscode-<version>.vsix.

Установить его можно через VS Code: Extensions -> ... -> Install from VSIX....

Возможности

Работа с pie

  • Запуск команд из piefile.py кнопками в Source Control: load, dump, build, up_version, up_build, build_at, dump_at, old_dump, form_code_validate.
  • Автоматический запуск pie через Python из venv, .venv или env, если виртуальное окружение лежит в корне workspace.
  • Подстановка версии из Configuration.xml в текст коммита при подъеме версии или сборки.
  • Ограничение работы расширения конкретной папкой через настройку PieVscodeExt.workspaceWorking.

Базы 1С

  • Чтение списка баз из ibases.v8i и 1cestart.cfg.
  • Выбор текущей базы для команд pie, запуска 1С и отладки.
  • Явное отображение записей, у которых путь к файловой базе больше не существует.
  • Обновление списка баз и удаление лишних записей из панели расширения.
  • Запуск 1С:Предприятия, конфигуратора и автономного сервера ibsrv для выбранной базы.
  • Закрытие процессов 1С кроссплатформенно: Windows, Linux и macOS.

Профили Pie

  • Создание профилей с параметрами базы, пользователя и запуска.
  • Запуск pie load, pie dump, 1С, конфигуратора и ibsrv из профиля.
  • Редактирование и удаление профилей из UI.
  • Хранение паролей профилей в VS Code SecretStorage, без записи пароля в настройки workspace.

Отладка 1С

  • Встроенный DAP-адаптер pie-1c для HTTP-отладки 1С через dbgs и протокол e1crdbg.
  • Сценарий F5: расширение запускает dbgs, стартует 1С с параметрами отладки, подключается к серверу, ждет debug targets и применяет breakpoints.
  • Автоматическая F5-конфигурация для .bsl файлов и проектов с Configuration.xml.
  • Attach к уже запущенному dbgs.
  • Breakpoints для .bsl, выгрузки конфигурации, расширений, внешних обработок .epf и отчетов .erf.
  • Call Stack с целями 1С: клиент, управляемый клиент, сервер, фоновые задания, HTTP-сервисы.
  • Variables, WATCH, hover expressions и scope Сеанс.
  • Step over, step in, step out, pause и continue.

Подробный маршрут отладки, launch.json, диагностика и ограничения описаны в docs/DEBUG.md.

Замер производительности и PFF

  • Запуск и остановка замера производительности во время активной debug-сессии.
  • Сохранение результата, который вернул dbgs.
  • Встроенный отчет по XML-результату замера: общее время, модули, строки, счетчики выполнения, время и проценты.
  • Readonly viewer для файлов .pff, сохраненных конфигуратором или инструментами 1С.
  • Сортировка строк замера по времени, проценту, количеству выполнений, модулю и номеру строки.
  • Сохранение ширины, порядка, видимости колонок и выбранной сортировки таблицы.
  • Фильтры по модулю, пути и тексту строки.
  • Переключатели клиентских строк, серверных строк и строк-вызовов функций/процедур.

Модули и обновления

  • Получение списка доступных модулей с сервиса обновлений.
  • Скачивание выбранного модуля в указанную папку.

Project hooks и команды проекта

  • Локальный файл .pie-vscode/project.json может добавить hooks к штатным командам расширения.
  • Поддержаны стадии before, after и instead.
  • Custom commands запускаются через команду Pie: Выполнить команду проекта.
  • Hooks работают только в trusted workspace и требуют подтверждения для проекта.
  • Скрипты запускаются отдельным Node-процессом с timeout, а вывод пишется в Output-канал Pie Project Hooks.

Все настройки

Настройки расширения находятся в разделе PieVscodeExt.

Настройка Назначение
PieVscodeExt.platformForOpenPath Путь к бинарникам платформы 1С для запуска 1С, конфигуратора и dbgs. Можно указать версию платформы или полный путь к каталогу bin.
PieVscodeExt.platformForDumpPath Путь к бинарникам платформы 1С для команд pie. Можно указать версию платформы или полный путь к каталогу bin.
PieVscodeExt.UrlUpdateService Адрес сервиса обновлений модулей.
PieVscodeExt.workspaceWorking Папка, в которой разрешена работа расширения. Если пусто, расширение работает в любом workspace.
PieVscodeExt.processCount Количество потоков для команд pie.
PieVscodeExt.ibUser Пользователь базы для сценариев запуска. Пароль задавайте через профиль Pie, чтобы он хранился в SecretStorage.
PieVscodeExt.pathConfigXml Путь к Configuration.xml для подстановки версии в текст коммита.
PieVscodeExt.PathConfigurationFile Папка с дополнительными конфигурационными файлами для запуска 1С.
PieVscodeExt.traceDebugProtocol Включает XML-трассировку e1crdbg в Output-канал 1C Debug Protocol.
PieVscodeExt.dbgsNotifyPath Advanced: путь к файлу --notify для запуска dbgs. Обычно не требуется.

Рабочие сценарии

Команды pie

Если в проекте есть виртуальное окружение venv, .venv или env, расширение запустит pie через Python из этого окружения. Для нового проекта:

python -m venv .venv
.venv\Scripts\activate
pip install pie

На Linux и macOS путь активации venv: .venv/bin/activate.

Профили

Используйте профиль Pie, если у вас несколько баз, пользователей или сценариев запуска. Пароль профиля хранится в SecretStorage и не попадает в настройки workspace.

Отладка и замер

Для обычной отладки достаточно сценария F5 из Quick Start. Во время активной debug-сессии можно запустить 1C: Начать замер производительности, выполнить сценарий в 1С и затем сохранить результат командой 1C: Завершить замер производительности. Файлы .pff можно открыть прямо в VS Code.

Project hooks

Чтобы добавить проектные сценарии, создайте .pie-vscode/project.json:

{
  "hooks": {
    "pie-vscode.load": {
      "before": "hooks/before-load.js",
      "after": "hooks/after-load.js"
    },
    "pie-vscode.dump": {
      "instead": "hooks/custom-dump.js"
    }
  },
  "commands": {
    "deploy-dev": {
      "title": "Deploy dev",
      "script": "commands/deploy-dev.js"
    }
  }
}

Пути скриптов считаются от .pie-vscode. Каждый скрипт получает JSON-контекст через stdin:

const fs = require('fs');
const context = JSON.parse(fs.readFileSync(0, 'utf8'));
console.log(context.command, context.currentBase);

Для первого запуска hooks расширение спросит подтверждение. Секреты и пароли в контекст не передаются.

Диагностика

  • Ошибки запуска 1С, dbgs, breakpoints и целей смотрите в Output-канале Pie 1C Debug.
  • XML-обмен с dbgs включается через PieVscodeExt.traceDebugProtocol или traceProtocol в launch.json.
  • Подробная диагностика отладки находится в docs/DEBUG.md.

Разработка

npm install
npm run verify

npm run verify запускает lint, compile, тесты, coverage gate и leak check.

Перед коммитом для staged diff используйте:

npm run check:secrets -- --staged

Обратная связь

Репозиторий: https://github.com/mussolene/pie-vscode-ext

Подходящие issue:

  • ошибка запуска команды или отладки;
  • база отображается не так, как ожидается;
  • breakpoint, variables или замер производительности дают непонятный результат;
  • нужен новый сценарий работы с pie или 1С.
  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2026 Microsoft