# Инструкция по отладке плагина Obsidian Из-за особенностей Obsidian (загрузка плагинов через `eval()`), прямая привязка точек останова (Breakpoints) в интерфейсе VS Code часто невозможна. Рекомендуется использовать встроенные инструменты разработчика Obsidian (Chrome DevTools). ## 1. Подготовка Убедитесь, что плагин запущен в режиме разработки. Это вшивает карты кода (Source Maps) прямо в файл, позволяя видеть TypeScript вместо скомпилированного JavaScript. ```bash npm run dev ``` ## 2. Способ «debugger» (рекомендуемый) Самый надежный способ остановиться в нужном месте кода: 1. В VS Code добавьте ключевое слово `debugger;` в нужную строку: ```typescript async onload() { debugger; // Выполнение остановится здесь console.log("Plugin loaded"); } ``` 2. В Obsidian откройте консоль разработчика: `Ctrl + Shift + I`. 3. Перезагрузите плагин (выключите и включите в настройках или нажмите `Ctrl + R` в окне консоли). 4. Obsidian автоматически замерит на этой строке и откроет вкладку **Sources** с вашим оригинальным `.ts` файлом. ## 3. Визуальные точки останова в Obsidian Если вы не хотите менять код: 1. Откройте консоль (`Ctrl + Shift + I`) в Obsidian. 2. **ВАЖНО**: Кликните по окну консоли и нажмите `Ctrl + R` (или `Cmd + R`) для полной перезагрузки интерфейса. Это очистит кэш Source Maps. 3. Перейдите на вкладку **Sources**. 4. В левой панели навигатора прокрутите в самый низ до появления папки `file://` или виртуальной папки с исходниками вашего проекта. 5. Там будет доступна чистая структура папки `src/` со всеми оригинальными `.ts` файлами. Вы можете открывать их и ставить синие точки останова кликом по номеру строки. ## 4. Быстрый поиск файлов (Ctrl + P) Самый верный способ найти ваш файл, если дерево не отображается: 1. Кликните в любом месте инструментов разработчика Obsidian. 2. Нажмите `Ctrl + P` (или `Cmd + P`). 3. Введите имя файла, например `main.ts` — он должен появиться в списке с пометкой `[sm]` (source map). ## 5. Если плагин все равно не виден в дереве Sources Запустите в консоли Obsidian: ```javascript app.plugins.plugins["llm-agent-plugin"].constructor ``` Кликните по результату (ссылке на функцию), и DevTools сам откроет нужный файл исходного кода. ## Вспомогательное подключение VS Code Файл `.vscode/launch.json` настроен так, что вы можете нажать **F5**, чтобы видеть логи Obsidian прямо в **Debug Console** VS Code. Это удобно для чтения ошибок, но ставить точки останова через VS Code все равно не получится — используйте методы выше.