Skip to content

A Command Line Interface to browse and watch anime locally.

Notifications You must be signed in to change notification settings

b1337xyz/fzfanime

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

fzfanime

A Command Line Interface to browse and watch anime locally.

Usage: fzfanime.sh [options ...]

Options:
    -u --update             Update/create $DB
    -p --player <player>    Video player (default: mpv)
    -b --backend <backend>  Image preview (default: ueberzug) (available: ueberzug kitty feh viu chafa)
    -f --fallback <backend> If $DISPLAY is unset fallback to <backend> (default: viu)
    -c --clean              Remove entries where .fullpath does not exist
    -e --edit               Edit the config file
    -q --quit-on-play       Quit fzf when playing
    -h --help               Show this message

Notes:
    - --option=value is not supported, use --option value
    - $DB generated using Anilist APIv2 -> https://anilist.gitbook.io/anilist-apiv2-docs
      and Jikan APIv4 -> https://api.jikan.moe/v4/anime
    - By default AniList is used as main database

$DB format:

{
  "<Anime> (1998)": {
    "mal_id": 400,
    "is_adult": false,
    "title": "Anime",
    "year": 1998,
    "genres": ["Action", ...],
    "episodes": 24,
    "score": 74,
    "image": "<local path to the image>",
    "type": "TV",
    "rated": "R+",
    "duration": 25,
    "studios": ["Sunrise", ...],
  }
}, ...

Dependencies

Image Preview (optional)

Setup

Arch Linux

sudo pacman -Syu git python python-pip python-virtualenv fzf jq ueberzug --needed

Debian

sudo apt install git python3 python3-pip python3-virtualenv fzf jq ueberzug -y
git clone --depth=1 https://github.com/b1337xyz/fzfanime.git
cd fzfanime
python3 -m venv venv
source venv/bin/activate
python3 -m pip install -U -r requirements.txt
bash fzfanime.sh

Settings


demo

Key bindings

alt-c   : Continue watching
alt-s   : Shuffle list
alt-a   : Add current line to `$WATCHED_FILE`
alt-d   : Remove current line from `$WATCHED_FILE`
alt-u   : Unlist entries from `$WATCHED_FILE`
alt-m   : Menu mode
ctrl-l  : Load `$ANIMEHIST`
ctrl-w  : Load `$WATCHED_FILE`
ctrl-v  : Select `type`
alt-p   : Select `path`
alt-r   : Select `rated`
alt-b   : Sort by size
alt-l   : Sort by ctime (time of last modification of file)
ctrl-e  : Sort by episodes
ctrl-g  : Sort by genre
ctrl-s  : Sort by score
ctrl-y  : Sort by year
ctrl-a  : List only available entries
ctrl-h  : List only entries rated Rx
ctrl-b  : Go to first item of the list
ctrl-t  : Go to last item of the list
ctrl-p  : Play current line with `$PLAYER`
ctrl-r  : Reload
ctrl-n  : Delete anime path (!!! use with caution !!!) (requires `dmenu`)
end     : Preview bottom
home    : Preview top

About

A Command Line Interface to browse and watch anime locally.

Topics

Resources

Stars

Watchers

Forks