Files
renamer/README.md
sHa 305dd5f43e feat: restructure renamer package and implement media extraction features
- Updated `pyproject.toml` to reflect new package structure.
- Created `renamer/__init__.py` to initialize the package.
- Implemented `RenamerApp` in `renamer/app.py` for the main application interface.
- Added constants for video extensions in `renamer/constants.py`.
- Developed `MediaExtractor` class in `renamer/extractor.py` for extracting metadata from media files.
- Created various extractor classes in `renamer/extractors/` for handling filename, metadata, and media info extraction.
- Added formatting classes in `renamer/formatters/` for displaying media information and proposed filenames.
- Implemented utility functions in `renamer/utils.py` for detecting file types and extracting media track information.
- Introduced `OpenScreen` in `renamer/screens.py` for user input of directory paths.
- Enhanced error handling and user feedback throughout the application.
2025-12-25 03:10:40 +00:00

1.8 KiB

Renamer - Media File Renamer and Metadata Editor

A terminal-based (TUI) application for scanning directories, viewing media file details, and managing file metadata. Built with Python and Textual.

Features

  • Recursive directory scanning for video files
  • Tree view navigation with keyboard and mouse support
  • File details display (size, extensions, metadata)
  • Command-based interface with hotkeys
  • Container type detection using Mutagen

Installation

Prerequisites

  • Python 3.11+
  • UV package manager

Install UV (if not already installed)

curl -LsSf https://astral.sh/uv/install.sh | sh

Install the Application

# Clone or download the project
cd /path/to/renamer

# Install dependencies and build
uv sync

# Install as a global tool
uv tool install .

Usage

Running the App

# Scan current directory
renamer

# Scan specific directory
renamer /path/to/media/directory

Commands

  • q: Quit the application
  • o: Open directory selection dialog
  • s: Rescan current directory

Navigation

  • Use arrow keys to navigate the file tree
  • Mouse clicks supported
  • Select a video file to view its details in the right panel

Development

Setup Development Environment

# Install in development mode
uv sync

# Run directly (development)
uv run python main.py

# Or run installed version
renamer

Running Without Rebuilding (Development)

# Run directly from source (no installation needed)
uv run python main.py

# Or run with specific directory
uv run python main.py /path/to/directory

Uninstall

uv tool uninstall renamerq

Supported Video Formats

  • .mkv
  • .avi
  • .mov
  • .mp4
  • .wmv
  • .flv
  • .webm
  • .m4v
  • .3gp
  • .ogv

Dependencies

  • textual: TUI framework
  • mutagen: Media metadata detection