feat: Update documentation and versioning for v0.6.0; enhance AI assistant reference
This commit is contained in:
65
README.md
65
README.md
@@ -1,18 +1,23 @@
|
||||
# Renamer - Media File Renamer and Metadata Editor
|
||||
# Renamer - Media File Renamer and Metadata Viewer
|
||||
|
||||
A terminal-based (TUI) application for scanning directories, viewing media file details, and renaming files based on extracted metadata. Built with Python and Textual.
|
||||
A powerful terminal-based (TUI) application for managing media collections. Scan directories, view detailed metadata, browse TMDB catalog information with posters, and intelligently rename files. Built with Python and Textual.
|
||||
|
||||
**Version**: 0.5.10
|
||||
|
||||
## Features
|
||||
|
||||
- Recursive directory scanning for video files
|
||||
- Tree view navigation with keyboard and mouse support
|
||||
- Detailed metadata extraction from multiple sources (MediaInfo, filename parsing, embedded metadata)
|
||||
- Intelligent file renaming with proposed names based on metadata
|
||||
- Color-coded information display
|
||||
- Command-based interface with hotkeys
|
||||
- Extensible extractor and formatter system
|
||||
- Support for video, audio, and subtitle track information
|
||||
- Confirmation dialogs for file operations
|
||||
### Core Capabilities
|
||||
- **Dual Display Modes**: Switch between Technical (codec/track details) and Catalog (TMDB metadata with posters)
|
||||
- **Recursive Directory Scanning**: Finds all video files in nested directories
|
||||
- **Tree View Navigation**: Keyboard and mouse support with expand/collapse
|
||||
- **Multi-Source Metadata**: Combines MediaInfo, filename parsing, embedded tags, and TMDB API
|
||||
- **Intelligent Renaming**: Proposes standardized names based on extracted metadata
|
||||
- **Persistent Settings**: Configurable mode and cache TTLs saved to `~/.config/renamer/`
|
||||
- **Advanced Caching**: File-based cache with TTL (6h extractors, 6h TMDB, 30d posters)
|
||||
- **Terminal Poster Display**: View movie posters in your terminal using rich-pixels
|
||||
- **Color-Coded Display**: Visual highlighting for different data types
|
||||
- **Confirmation Dialogs**: Safe file operations with preview and confirmation
|
||||
- **Extensible Architecture**: Modular extractor and formatter system for easy extension
|
||||
|
||||
## Installation
|
||||
|
||||
@@ -48,14 +53,16 @@ renamer
|
||||
renamer /path/to/media/directory
|
||||
```
|
||||
|
||||
### Commands
|
||||
### Keyboard Commands
|
||||
- **q**: Quit the application
|
||||
- **o**: Open directory selection dialog
|
||||
- **s**: Rescan current directory
|
||||
- **f**: Refresh metadata for selected file
|
||||
- **s**: Scan/rescan current directory
|
||||
- **f**: Force refresh metadata for selected file (bypass cache)
|
||||
- **r**: Rename selected file with proposed name
|
||||
- **p**: Toggle tree expansion (expand/collapse all)
|
||||
- **h**: Show help screen
|
||||
- **^p**: Open command palette (settings, mode toggle)
|
||||
- **Settings**: Access via action bar (top-right corner)
|
||||
|
||||
### Navigation
|
||||
- Use arrow keys to navigate the file tree
|
||||
@@ -67,9 +74,14 @@ renamer /path/to/media/directory
|
||||
### File Renaming
|
||||
1. Select a media file in the tree
|
||||
2. Press **r** to initiate rename
|
||||
3. Review the proposed new name
|
||||
3. Review the proposed new name in the confirmation dialog
|
||||
4. Press **y** to confirm or **n** to cancel
|
||||
5. The file will be renamed and the tree updated automatically
|
||||
5. The file will be renamed and the tree updated automatically (cache invalidated)
|
||||
|
||||
### Display Modes
|
||||
- **Technical Mode**: Shows codec details, bitrates, track information, resolutions
|
||||
- **Catalog Mode**: Shows TMDB data including title, year, rating, overview, genres, and poster
|
||||
- Toggle between modes via Settings menu or command palette (^p)
|
||||
|
||||
## Development
|
||||
|
||||
@@ -88,8 +100,19 @@ For development setup, architecture details, debugging information, and contribu
|
||||
- .ogv
|
||||
|
||||
## Dependencies
|
||||
- textual: TUI framework
|
||||
- pymediainfo: Detailed media track information
|
||||
- mutagen: Embedded metadata extraction
|
||||
- python-magic: MIME type detection
|
||||
- langcodes: Language code handling
|
||||
- **textual** ≥6.11.0: TUI framework
|
||||
- **pymediainfo** ≥6.0.0: Detailed media track information
|
||||
- **mutagen** ≥1.47.0: Embedded metadata extraction
|
||||
- **python-magic** ≥0.4.27: MIME type detection
|
||||
- **langcodes** ≥3.5.1: Language code handling
|
||||
- **requests** ≥2.31.0: HTTP client for TMDB API
|
||||
- **rich-pixels** ≥1.0.0: Terminal image display
|
||||
- **pytest** ≥7.0.0: Testing framework
|
||||
|
||||
### System Requirements
|
||||
- **Python**: 3.11 or higher
|
||||
- **MediaInfo Library**: System dependency for pymediainfo
|
||||
- Ubuntu/Debian: `sudo apt install libmediainfo-dev`
|
||||
- Fedora/CentOS: `sudo dnf install libmediainfo-devel`
|
||||
- Arch Linux: `sudo pacman -S libmediainfo`
|
||||
- macOS/Windows: Automatically handled by pymediainfo
|
||||
|
||||
Reference in New Issue
Block a user