2.1 KiB
2.1 KiB
Project: Media File Renamer and Metadata Editor (Python TUI with Textual)
TODO Steps:
- ✅ Set up Python project structure with UV package manager
- ✅ Install dependencies: textual, mutagen, pymediainfo, python-magic, pathlib for file handling
- ✅ Implement recursive directory scanning for video files (*.mkv, *.avi, *.mov, *.mp4, *.wmv, *.flv, *.webm, etc.)
- ✅ Detect real media container type using mutagen and python-magic
- ✅ Create Textual TUI application with split layout (left: file tree, right: file details)
- ✅ Implement file tree display with navigation (keyboard arrows, mouse support)
- ✅ Add bottom command bar with 'quit', 'open directory', 'scan' commands
- ✅ Display file details on right side: file size, extension from filename, extension from metadata, file date
- ✅ Add functionality to select files in the tree and update right panel
- ✅ Implement detailed metadata display including video/audio/subtitle tracks with colors
- ✅ Add custom tree styling with file icons and colored guides
- ✅ Add scrollable details panel
- ✅ Handle markup escaping for file names with brackets
- ✅ Implement file renaming functionality with confirmation dialog
- ✅ Add proposed name generation based on metadata extraction
- ✅ Add help screen with key bindings and usage information
- ✅ Add tree expansion/collapse toggle functionality
- ✅ Add file refresh functionality to reload metadata for selected file
- ✅ Optimize tree updates to avoid full reloads after renaming
- ✅ Add loading indicators for metadata extraction
- ✅ Add error handling for file operations and metadata extraction
- 🔄 Implement blue highlighting for changed parts in proposed filename display (show differences between current and proposed names)
- 🔄 Implement build script to exclude dev commands (bump-version, release) from distributed package
- Implement metadata editing capabilities (future enhancement)
- Add batch rename operations (future enhancement)
- Add configuration file support (future enhancement)
- Add plugin system for custom extractors/formatters (future enhancement)