|
| 1 | +# Plugin Redesign - Version 4.0 |
| 2 | + |
| 3 | +## 🎉 Major Improvements |
| 4 | + |
| 5 | +This redesign brings significant UX improvements, better performance, and more flexible sync options. |
| 6 | + |
| 7 | +--- |
| 8 | + |
| 9 | +## ✨ New Features |
| 10 | + |
| 11 | +### 1. **Improved Settings UI** |
| 12 | + |
| 13 | +#### Tab-Based Organization |
| 14 | +Settings are now organized into clear tabs: |
| 15 | +- **General**: Default settings, scan directory, ignored files |
| 16 | +- **Note Types**: Configure note type mappings with searchable table |
| 17 | +- **Folders**: Folder-specific deck and tag settings with search |
| 18 | +- **Syntax**: Customize syntax markers |
| 19 | +- **Advanced**: Actions and import/export settings |
| 20 | + |
| 21 | +#### Searchable Tables |
| 22 | +- Both Note Types and Folders tables now have search functionality |
| 23 | +- Quickly find specific note types or folders without scrolling |
| 24 | + |
| 25 | +#### Folder Picker |
| 26 | +- **Browse Button** next to Scan Directory field |
| 27 | +- Visual folder selection instead of typing paths |
| 28 | +- Prevents typos and makes configuration easier |
| 29 | + |
| 30 | +#### Import/Export Settings |
| 31 | +- **Export** your settings to JSON file for backup |
| 32 | +- **Import** settings from JSON file to restore or share configurations |
| 33 | + |
| 34 | +--- |
| 35 | + |
| 36 | +### 2. **Flexible Sync Commands** |
| 37 | + |
| 38 | +Three new sync options with keyboard shortcuts: |
| 39 | + |
| 40 | +| Command | Description | Use Case | |
| 41 | +|---------|-------------|----------| |
| 42 | +| **Sync Current File** | Sync only the active file | Quick updates to single file | |
| 43 | +| **Sync Current Folder** | Sync all files in current folder | Work on specific project/topic | |
| 44 | +| **Sync Entire Vault** | Sync all files (or scan directory) | Full sync (existing behavior) | |
| 45 | + |
| 46 | +**How to use:** |
| 47 | +1. Via Command Palette (Ctrl/Cmd + P): |
| 48 | + - "Obsidian to Anki: Sync Current File" |
| 49 | + - "Obsidian to Anki: Sync Current Folder" |
| 50 | + - "Obsidian to Anki: Sync Entire Vault" |
| 51 | + |
| 52 | +2. Via Context Menu (Right-click): |
| 53 | + - Right-click on any markdown file → "Sync to Anki" |
| 54 | + - Right-click on any folder → "Sync Folder to Anki" |
| 55 | + |
| 56 | +3. Via Ribbon Icon (same as before): |
| 57 | + - Click the Anki icon to sync entire vault |
| 58 | + |
| 59 | +--- |
| 60 | + |
| 61 | +### 3. **Progress Tracking** |
| 62 | + |
| 63 | +#### Visual Progress Modal |
| 64 | +- Shows real-time progress during sync |
| 65 | +- Displays current operation status |
| 66 | +- Shows percentage and file counts |
| 67 | +- Can be cancelled if needed |
| 68 | + |
| 69 | +#### Status Bar Indicator |
| 70 | +- New status bar item shows sync state: |
| 71 | + - 📝 **Anki** - Idle, ready to sync |
| 72 | + - 🔄 **Syncing...** - Sync in progress |
| 73 | + - ✅ **Synced** - Sync completed successfully (3s timeout) |
| 74 | + - ❌ **Error** - Sync failed |
| 75 | + |
| 76 | +--- |
| 77 | + |
| 78 | +### 4. **Performance Improvements** |
| 79 | + |
| 80 | +#### Better File Processing |
| 81 | +- Shows number of changed files before processing |
| 82 | +- Skips unchanged files (using hash comparison) |
| 83 | +- "No changes detected" notification when nothing to sync |
| 84 | + |
| 85 | +#### Improved Error Handling |
| 86 | +- Clear error messages when Anki is not running |
| 87 | +- Better feedback on connection issues |
| 88 | +- Graceful degradation on errors |
| 89 | + |
| 90 | +#### Batch Processing |
| 91 | +- Files are processed in optimized batches |
| 92 | +- Progress updates show current batch |
| 93 | + |
| 94 | +--- |
| 95 | + |
| 96 | +## 🎨 UI/UX Improvements |
| 97 | + |
| 98 | +### Modern Design |
| 99 | +- Cleaner tab interface |
| 100 | +- Better visual hierarchy |
| 101 | +- Improved spacing and typography |
| 102 | +- Consistent use of Obsidian's design tokens |
| 103 | + |
| 104 | +### Better Feedback |
| 105 | +- More informative notifications |
| 106 | +- Success messages show number of files synced |
| 107 | +- Clear error messages with actionable hints |
| 108 | +- Progress modal prevents user confusion |
| 109 | + |
| 110 | +### Accessibility |
| 111 | +- Keyboard navigation in folder picker |
| 112 | +- Search inputs are properly labeled |
| 113 | +- Better contrast for status indicators |
| 114 | + |
| 115 | +--- |
| 116 | + |
| 117 | +## 🛠️ Technical Improvements |
| 118 | + |
| 119 | +### New Components |
| 120 | +- `TabContainer` - Reusable tab interface |
| 121 | +- `SearchableTable` - Tables with built-in search |
| 122 | +- `FolderSuggester` - Fuzzy folder picker modal |
| 123 | +- `ProgressModal` - Progress tracking UI |
| 124 | + |
| 125 | +### Code Organization |
| 126 | +- UI components in `src/ui/` folder |
| 127 | +- Cleaner separation of concerns |
| 128 | +- Better TypeScript types |
| 129 | +- Improved error handling |
| 130 | + |
| 131 | +### Backward Compatibility |
| 132 | +- All existing features preserved |
| 133 | +- Settings automatically migrate |
| 134 | +- Old workflows still work |
| 135 | + |
| 136 | +--- |
| 137 | + |
| 138 | +## 📝 Migration Notes |
| 139 | + |
| 140 | +### Settings |
| 141 | +- Settings format unchanged - no migration needed |
| 142 | +- New import/export feature available for backup |
| 143 | +- Old settings file backed up as `settings-old.ts.backup` |
| 144 | + |
| 145 | +### Commands |
| 146 | +- Old "Scan Vault" command renamed to "Sync Entire Vault" |
| 147 | +- Ribbon icon behavior unchanged |
| 148 | +- All existing hotkeys still work |
| 149 | + |
| 150 | +--- |
| 151 | + |
| 152 | +## 🔮 Future Enhancements |
| 153 | + |
| 154 | +Potential improvements for future versions: |
| 155 | +- Auto-sync on file save (optional) |
| 156 | +- Sync queue for multiple operations |
| 157 | +- Detailed sync logs/history |
| 158 | +- Conflict resolution UI |
| 159 | +- More granular progress tracking |
| 160 | +- Sync profiles/presets |
| 161 | + |
| 162 | +--- |
| 163 | + |
| 164 | +## 🐛 Known Issues |
| 165 | + |
| 166 | +None at this time. Please report issues on GitHub. |
| 167 | + |
| 168 | +--- |
| 169 | + |
| 170 | +## 📚 How to Contribute |
| 171 | + |
| 172 | +1. Test the new features |
| 173 | +2. Report bugs or suggest improvements |
| 174 | +3. Submit pull requests |
| 175 | +4. Share your custom configurations |
| 176 | + |
| 177 | +--- |
| 178 | + |
| 179 | +## 🙏 Credits |
| 180 | + |
| 181 | +Original plugin by Pseudonium |
| 182 | +Redesign improvements: Enhanced UX, new sync commands, progress tracking |
| 183 | + |
| 184 | +--- |
| 185 | + |
| 186 | +**Enjoy the improved Obsidian to Anki experience!** 🎉 |
0 commit comments