Go to file
zvon d2f39eb358 Fix possible nullptr error
Turns out `vswprintf` doesn't behave like `sprintf` and doesn't return
required buffer size if provided with NULL and 0 buffer length. It's
weird that it worked so far.
2020-04-16 11:54:44 +02:00
gtk Formatting 2020-04-15 12:36:59 +02:00
rapidjson@8f4c021fa2 Replace 3rd party libraries with submodules 2020-04-15 13:32:59 +00:00
sqlite-amalgamation@1757028edf Replace 3rd party libraries with submodules 2020-04-15 13:32:59 +00:00
translations CLI+GTK: show progress when cleaning database 2020-04-13 19:58:57 +02:00
unix Formatting 2020-04-01 16:13:39 +02:00
windows Formatting 2020-04-15 12:36:59 +02:00
.clang-format Include sorting causes problems on windows 2020-04-15 11:45:10 +02:00
.gitignore gitignore: ignore locale 2020-04-01 14:36:54 +02:00
.gitlab-ci.yml CI: fixed yaml 2020-04-15 15:51:02 +02:00
.gitmodules Replace 3rd party libraries with submodules 2020-04-15 13:32:59 +00:00
filesystem.hpp Filesystem: removed useless include 2020-01-18 21:20:40 +01:00
functions.cpp Fix possible nullptr error 2020-04-16 11:54:44 +02:00
functions.hpp CLI+GTK: show progress when cleaning database 2020-04-13 19:58:57 +02:00
LICENSE Guess I should set a license 2018-10-08 20:51:52 +00:00
main.cpp Use UTF-8 in windows console 2020-04-15 10:53:37 +02:00
Makefile Replace 3rd party libraries with submodules 2020-04-15 13:32:59 +00:00
network.hpp Network: windows needs WinInet.h to be included AFTER Windows.h 2020-02-25 10:09:22 +01:00
progress.cpp Formatting 2020-04-01 16:13:39 +02:00
progress.hpp Progress: define message numbers, fix message sending 2020-02-25 10:10:40 +01:00
README.md Replace 3rd party libraries with submodules 2020-04-15 13:32:59 +00:00
resources_linux.h CLI+GTK: show progress when cleaning database 2020-04-13 19:58:57 +02:00
resources_windows.h CLI+GTK: show progress when cleaning database 2020-04-13 19:58:57 +02:00
small.ico New icon 2019-05-18 13:45:36 +02:00
sqlitepp.hpp Replace 3rd party libraries with submodules 2020-04-15 13:32:59 +00:00
tv_rename_gui.desktop Fix desktop file, add uninstall to Makefile 2019-05-18 15:05:06 +02:00
tv_rename_gui.ico New icon 2019-05-18 13:45:36 +02:00
tv_rename_stringtable.rc CLI+GTK: show progress when cleaning database 2020-04-13 19:58:57 +02:00
tv_rename.cpp Replace 3rd party libraries with submodules 2020-04-15 13:32:59 +00:00
tv_rename.hpp Formatting 2020-04-01 16:13:39 +02:00
tv_rename.rc Resource and rc files make a triumphant return 2020-04-01 13:58:01 +02:00
tv_rename.svg Add desktop file for linux 2019-05-18 13:45:46 +02:00

Rename TV Show files

This program downloads episode names from http://thetvdb.com and adds them as a suffix to the appropriate files

For this to work your file needs to contain the season and episode number (in accordance to thetvdb) in this format: S#E# (doesn't matter if lower or upper case)

The program only supports the aired order so far

Usage

Enter the directory in which the files you want to rename are (you can have subdirectories with different seasons, just not different shows) and call the program

Arguments:

-s, --show - Name of the show

-n, --season - Seasons to be renamed (numbers separated by space or 'all' for all seasons in the directory and sub directories)

-p, --show-path - Path to the show's directory

-c, --correct-path - Don't ask if path is correct

-t, --trust - Don't prompt before changing file names

-x, --linux - Don't replace characters that are illegal in NTFS

-l, --lang - Language of the episode titles

--print_langs - Print available languages

--name-pattern - Pattern by which the files should be renamed

  • %filename - original filename
  • %show - show name from thetvdb
  • %epname - episode name from thetvdb
  • %season - season number, possible to specify leading 0 like this: %2season (number means how many leading zeros)
  • %episode - episode number, possible to specify leading 0 like this: %3season (number means how many leading zeros)

Installation

For installation of command line version you'll need:

  • libcurl-dev (or your distro's equivalent)
  • some sort of C++ compiler (clang++ for example)
  • make

When you have all prerequisites installed you need to do this sequence of commands:

git clone 'https://gitlab.com/zvon/tv_rename_cpp'
cd tv_rename_cpp
git submodule update --init
make
sudo make install

For installation of GUI version you'll need:

  • libcurl-dev (or your distro's equivalent)
  • some sort of C++ compiler (clang++ for example)
  • make
  • libgtkmm (or your distro's equivalent)

When you have all prerequisites installed you need to do this sequence of commands:

git clone 'https://gitlab.com/zvon/tv_rename_cpp'
cd tv_rename_cpp
git submodule update --init
make gui
sudo make install_gui

You can uninstall both versions by running either sudo make uninstall or sudo make uninstall_gui

3rd party libraries

This project uses the following 3rd party libraris: