Keep track of your tv shows.
tvh
is a simple ncurses program for keeping track of your tv show episodes. It
works by creating a .tracker
file containing the last watched episode in every tv
show directory. It also keeps a log of the last watched shows.
tvh
is meant to be used as a wrapper for your video player.
Set tvh
as your default video player or use it from the command line as follows:
tvh myvideo.mkv
Now, when you want to watch the next episode of that tv show, you no longer have to navigate to the directory containing the files and try to remember which episode you last watched.
When tvh is launched without arguments:
If there is a .tracker
file in the current directory, the next episode of the
corresponding show is launched. Otherwise, a menu containing the latest tv shows you
watched pops up. Use vim/arrow keys to navigate, launch the next episode by pressing
l
/ right arrow. Other keybindings are:
• p
- displays the name of the previously watched episode
• n
- displays the name of the next episode
• f
- opens the directory of the episode in a file manager
• d
- deletes the entry from the history
Edit the core/config.h file and build the program.
You must change the VIDEO_PLAYER
field to match your video player.
Additionally you can change the other fields to match your setup and needs. These are
pretty self-explanatory.
A compiler with C++17 support (including support for the filesystem
library) (clang-7+,
gcc-8+), cmake 3.6+, git
ncursesw
For Ubuntu 18.04 all dependencies can be installed with this command:
sudo apt install cmake g++-8 libncursesw5-dev
It also might be necessary to set g++-8 as the default C++ compiler. On Ubuntu this
can be done with:
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-8 60
git clone https://github.com/ettom/tvh.git
cd tvh
mkdir build && cd build
cmake ..
make
sudo make install
By default, tvh
expects your tv show directories to be structured as follows:
series_name/season_number/episode_file
. It's not required to have a separate season
directory, if the show only has one season. In that case, all the episodes can just
be placed into the series_name
directory.
Season directories and episodes should follow a naming scheme:
• Season directory names have to start with S{season number:00}
eg. S01
, S10
• Episode filenames have to contain E{episode number:00}
eg. S01E01
, E01
, S10E10
, E10
This is currently not configurable, but hopefully will be in the future.