diff --git a/docs/Integration with Tasks plugin.md b/docs/Integration with Tasks plugin.md new file mode 100644 index 0000000..3e2603d --- /dev/null +++ b/docs/Integration with Tasks plugin.md @@ -0,0 +1,5 @@ +There is partial integration with the Tasks plugin. +The goal is to add or remove a timestamp on checkboxes modified by the current plugin. In theory, if other tags appear, it should work as well. + +Unfortunately, their current Tasks API does not provide a method to set a specific symbol or checkbox state, but it does offer a method to emulate a “click” on the checkbox. +Therefore, under certain specific transition settings in the Tasks plugin, this will not work — for example, when it is impossible to transition from the current state to the completed state. \ No newline at end of file diff --git a/docs/changelog.md b/docs/changelog.md index 16fd3ff..55cccef 100644 --- a/docs/changelog.md +++ b/docs/changelog.md @@ -7,7 +7,9 @@ nav_order: 3 ## [1.2.0] - 2025-XX-XX ### Added - Added Feature: **Logging Toggle:** Add a setting to enable/disable detailed logging for debugging purposes. -- added Feature **File/Folder Scope Filter:** Implement settings to include or exclude specific files or folders where the plugin should be active. +- Added Feature **File/Folder Scope Filter:** Implement settings to include or exclude specific files or folders where the plugin should be active. +- Added Feature: **Support Non-Checkbox Nodes:** Added support for list-item and plain text inside the checkbox tree +- Added [Integration with Tasks plugin]("Integration with Tasks plugin.md") ## [1.1.0] - 2025-05-05 ### Added diff --git a/docs/index.md b/docs/index.md index ce8db06..c4bc6f3 100644 --- a/docs/index.md +++ b/docs/index.md @@ -24,6 +24,7 @@ This provides flexibility in how you manage your task lists, allowing you to cus * [Roadmap](roadmap.md) * [Installation Guide](installation.md) * [Contributing Guide](contributing.md) +* [Integration with Tasks plugin]("Integration with Tasks plugin.md") ### Acknowledgments * [Obsidian](https://obsidian.md/) — a platform for creating and organizing notes. @@ -48,6 +49,7 @@ This provides flexibility in how you manage your task lists, allowing you to cus * [Планы (Roadmap)](roadmap.md) * [Руководство по установке](installation.md) * [Руководство для контрибьюторов](contributing.md) +* [Интеграция с Tasks plugin]("Integration with Tasks plugin.md") ### Благодарности * [Obsidian](https://obsidian.md/) — платформа для создания и организации заметок. diff --git a/docs/roadmap.md b/docs/roadmap.md index 0ee9534..afdf003 100644 --- a/docs/roadmap.md +++ b/docs/roadmap.md @@ -14,14 +14,11 @@ This document outlines the development status and future plans for the Checkbox * [Feature] **File/Folder Scope Filter:** Implement settings to include or exclude specific files or folders where the plugin should be active. * [Feature] **Logging Toggle:** Add a setting to enable/disable detailed logging for debugging purposes. -* [Feature] **Support Non-Checkbox Nodes:** Allow regular list items (e.g., `- Parent Item` without `[ ]`) to function as structural nodes within the hierarchy for synchronization logic. * [Feature] **Configurable Checkbox Character (Auto-Update):** Add a setting to define which character is used to mark checkboxes when automatically updated by the plugin. -* [Tech] **Overhaul List Parsing Logic:** Replace the current line-based parsing with a more robust tree-based approach to improve accuracy and maintainability. ## Future Ideas / Backlog * [Feature] **List Reordering Functionality:** Explore and potentially implement list item reordering features, possibly inspired by approaches like [obsidian-checkboxReorder](https://github.com/Erl-koenig/obsidian-checkboxReorder) (e.g., moving completed items). -* [Tech] **Improve Change Detection:** Investigate using a library like `jsdiff` to more accurately detect and react to specific changes within files, potentially improving performance and reliability. * [Tech] **Refactor Settings Handling:** Change how settings are used internally. Instead of passing the settings object by reference, create a new instance of `CheckboxUtils` (or relevant class) when settings are modified to ensure proper state isolation and updates. --- diff --git a/docs/settings.md b/docs/settings.md index 212cf8d..afa5f34 100644 --- a/docs/settings.md +++ b/docs/settings.md @@ -118,6 +118,12 @@ These settings control when and how the synchronization logic runs. - **Включено:** Автоматически синхронизирует состояния чекбоксов при загрузке/открытии файлов и сразу после применения настроек плагина. Это обеспечивает консистентность, но может влиять на производительность в очень больших хранилищах или файлах. *(Требует перезапуска Obsidian или перезагрузки настроек для полного вступления в силу)*. - **Отключено (По умолчанию):** Синхронизация происходит только тогда, когда вы *вручную* изменяете состояние чекбокса в Obsidian. Это поведение по умолчанию для минимизации потенциального влияния на производительность. +### File Scope & Filtering +- **Правила игнорирования файлов (стиль .gitignore)** + - Этот параметр позволяет определить, какие файлы и папки должен обрабатывать Checkbox Sync. Если список шаблонов пуст, плагин будет обрабатывать все файлы Markdown в вашем хранилище. + - Фильтрация использует **синтаксис .gitignore** и работает на основе библиотеки [`ignore`](https://github.com/kaelzhang/node-ignore). + + ### Разработка / Отладка - **Включить Отладочное Логирование (Enable console log)**