docs: update README with known issues and debugging info

main
borja (aider) 2 months ago
parent d75ccc32eb
commit 5ffa18860e

@ -20,13 +20,22 @@ A Neovim plugin that provides enhanced TODO list management with smart handling
🐛 **Current Bugs:** 🐛 **Current Bugs:**
- Tab indentation handling still uses feedkeys and needs refactoring - Tab indentation handling still uses feedkeys and needs refactoring
- Shift-Tab behavior may not be consistent with spaces vs tabs - Shift-Tab behavior may not be consistent with spaces vs tabs
- Enter key (<CR>) handling has several issues:
- Doesn't properly handle empty lines after TODO items
- Cursor positioning can be incorrect in some cases
- Outdenting behavior is inconsistent
- Edge cases with mixed indentation (spaces + tabs) not fully handled - Edge cases with mixed indentation (spaces + tabs) not fully handled
- Cursor positioning could be improved in some scenarios - Cursor positioning could be improved in several scenarios
- Debug output is currently only enabled for Tab/Shift-Tab but not other operations
## Roadmap ## Roadmap
📌 **Planned Improvements:** 📌 **Planned Improvements:**
- [ ] Refactor tab indentation to use proper buffer operations - [ ] Refactor tab indentation to use proper buffer operations
- [ ] Fix Enter key handling for all cases
- [ ] Add consistent debug output for all operations
- [ ] Improve cursor positioning logic
- [ ] Handle empty lines and edge cases better
- [ ] Add support for numbered lists - [ ] Add support for numbered lists
- [ ] Add support for nested TODO items with proper indentation - [ ] Add support for nested TODO items with proper indentation
- [ ] Add visual selection operations for multiple TODOs - [ ] Add visual selection operations for multiple TODOs
@ -50,6 +59,28 @@ Using [lazy.nvim](https://github.com/folke/lazy.nvim):
} }
``` ```
## Debugging Recommendations
To help diagnose issues, you can:
1. Add `debug_line()` calls to key functions like `press_enter()`
2. Create a debug mode that can be toggled via:
```lua
local debug_mode = false
```
3. Make debug output more structured with timestamps and operation types
4. Log cursor positions before/after operations
5. Add validation of line states after modifications
Example debug output format:
```
[DEBUG] [TIMESTAMP] [OPERATION]
Line: 42
Before: {indent=" ", marker="-", is_todo=true}
After: {indent=" ", marker="-", is_todo=true}
Cursor: {lnum=42, col=6} -> {lnum=43, col=4}
```
## Configuration ## Configuration
Default configuration: Default configuration:

Loading…
Cancel
Save