Skip to content
| Marketplace
Sign in
Visual Studio Code>Other>TryCatch HelperNew to Visual Studio Code? Get it now.
TryCatch Helper

TryCatch Helper

Fedor

| (0) | Free
Wrap selected code in try/catch
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

TryCatch Helper -- лабораторная работа №3

исполнитель: Фоменко Фёдор Иванович

группа: M3105

1. Техническое задание

  • Разработать расширение для Visual Studio Code.
  • Подготовить отчет:
    • кратко описать структуру IDE в разрезе подключения к ней сторонних функциональных возможностей
    • разместить исходный код на GitHub
    • написать README
  • Составить документацию кода

2. Разработка

Расширение разработано на TypeScript с использованием API Visual Studio Code.

Основная логика реализована в команде tryCatchHelper.wrapSelection. При её вызове расширение получает активный редактор и выделенный диапазон, формирует новую конструкцию try/catch и заменяет исходный фрагмент кода.

Отступы определяются на основе настроек редактора: используются табуляции либо заданное количество пробелов. После успешной замены создаются два выделения, позволяющие одновременно редактировать вхождения error в блоке catch.

Если редактор отсутствует, выделение пустое или операция редактирования не выполнена, расширение сообщает об этом пользователю.

3. Архитектура расширения

Расширение использует механизм регистрации команд VS Code. При активации регистрируется команда tryCatchHelper.wrapSelection, обработчик которой выполняет основную логику.

Последовательность работы:

flowchart TD
    A[Активация расширения] --> B[Регистрация команды]
    B --> C[Вызов команды]
    C --> D{Активный редактор существует?}
    D -- Нет --> E[Уведомление]
    D -- Да --> F{Есть выделение?}
    F -- Нет --> G[Уведомление]
    F -- Да --> H[Получение кода и настроек отступов]
    H --> I[Формирование try/catch]
    I --> J[Замена выделенного фрагмента]
    J --> K{Редактирование успешно?}
    K -- Нет --> L[Уведомление об ошибке]
    K -- Да --> M[Выделение вхождений error]

Для взаимодействия с редактором используются объекты TextEditor, TextDocument, Selection и метод editor.edit(). Команда и её горячая клавиша объявляются в package.json.

4. Ограничения

Текущая версия ориентирована на синтаксис try/catch, используемый в JavaScript и TypeScript. Формирование конструкции для других языков программирования не реализовано. Корректность обработки исключений и совместимость с конкретным фрагментом кода зависят от исходного кода и контекста его использования.

5. Технологии

  • TypeScript
  • Visual Studio Code Extension API
  • Node.js и npm
  • Mermaid для красивенькой блоксхемы
  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
  • Your Privacy Choices
  • Consumer Health Privacy
© 2026 Microsoft