Metadata-Version: 2.1
Name: tempren
Version: 0.2.0
Summary: Template-based renaming utility
Home-page: https://github.com/idle-code/tempren
License: GPL-3.0-or-later
Keywords: batch-renaming,cli,filename
Author: Paweł Żukowski
Author-email: p.z.idlecode@gmail.com
Requires-Python: >=3.7,<4.0
Classifier: Development Status :: 3 - Alpha
Classifier: Environment :: Console
Classifier: Intended Audience :: End Users/Desktop
Classifier: Intended Audience :: System Administrators
Classifier: License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)
Classifier: Natural Language :: English
Classifier: Operating System :: POSIX
Classifier: Operating System :: POSIX :: Linux
Classifier: Operating System :: Unix
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Topic :: System :: Filesystems
Classifier: Topic :: Utilities
Requires-Dist: Unidecode (>=1.2.0,<2.0.0)
Requires-Dist: antlr4-python3-runtime (>=4.9.2,<5.0.0)
Requires-Dist: pathvalidate (>=2.4.1,<3.0.0)
Requires-Dist: pydantic (>=1.8.1,<2.0.0)
Description-Content-Type: text/markdown

# [WIP] Tempren - template-based batch file renaming utility
[![Build Status](https://travis-ci.org/idle-code/tempren.svg?branch=develop)](https://travis-ci.org/idle-code/tempren)
[![codecov](https://codecov.io/gh/idle-code/tempren/branch/develop/graph/badge.svg?token=1CR2PX6GYB)](https://codecov.io/gh/idle-code/tempren)

**This project is currently in a Work-In-Progress stage so if you are looking for working solution... keep looking.**

TODO: Summary

## Features
- Template-based filename/path generation
- Configurable file selection
- Metadata-based sorting


## Install
```console
$ pip install [--user] poetry
$ poetry install
```

## TODO: Usage

**Note: When playing with tempren make sure to use `--dry-run` (`-d`) flag so that the actual files are not accidentally changed.**

Tempren have two main modes of operation: **name** and **path**.

In the **name** mode, the template is used for filename generation only.
This is useful if you want to operate on files specified on the command line or in a single directory.

With **path** mode, the template generates a whole path (relative to the input directory).
This way you can sort files into dynamically generated catalogues.
### Template syntax
#### Pipe list sugar
### Name mode
### Path mode
### Filtering
#### Glob filtering
#### Regex filtering
#### Template filtering
#### Case sensitiveness and filter inversion
### Sorting

### Testing
Tests are written with a help of [pytest](https://docs.pytest.org/en/latest/). Just enter repository root and run:
```console
$ pytest
```

## Contribution
Code conventions are enforced via [pre-commit](https://pre-commit.com/). It is listed in development depenencies so if you are able to run tests - you should have it installed too.
To get started you will still need to install git hooks via:
```console
$ pre-commit install
```
Now every time you invoke `git commit` a series of cleanup scripts will run and modify your patchset.

### TODO: Tags development

