ANI-CLI(1)

πŸ“¦
version 4.14.0 Β· 2 versions
, in debian trixie, ubuntu resolute, ubuntu stonking

✨ ANI-CLI(1) β€” User Commands ✨ πŸŽ€

Okay so bestie, the manual name is ani-cli and it's all about watching anime straight from the commandline πŸ¦‹ It's giving terminal main character energy, no cap πŸ’…

🌸 NAME 🌸

  • ani-cli β€” watch anime from the commandline πŸ’–

🧚 SYNOPSIS 🧚

ani-cli [OPTIONS]

πŸ’œ DESCRIPTION πŸ’œ

Ngl, this is a shell script that lets you browse and search anime right from your terminal ✨ It scrapes the site allanime, so you know where the tea is coming from πŸ“

Without any options, ani-cli defaults to iina on macOS, flatpak mpv on Steamdeck, mpv apk on android, vlc on iOS, and mpv media player everywhere else. Iykyk πŸ™ˆ

πŸŽ€ OPTIONS πŸŽ€

  • -e, --episode, -r, --range <episode> β€” Pick the episode numbers you want to watch πŸ¦‹ If you give a range, quote it or separate the numbers with a non-numeric character (eg. -), bestie.
  • -c, --continue β€” Pick up where you left off, straight from your history πŸ”₯
  • -d, --download β€” Download the episode πŸ’Ύ
  • -D, --delete β€” Delete your history πŸ’€
  • -l, --logview β€” Show the logs πŸ‘€
  • -h, --help β€” Show a summary of the options 🫢
  • -q, --quality <best|worst|360|480|720|1080> β€” Set the video quality. The default is best, obviously πŸ‘‘
  • -s, --syncplay β€” Watch anime together with your friends using Syncplay πŸ₯Ή (works with mpv only)
  • -U, --update β€” Fetch an update from GitHub 🌈
  • -v, --vlc β€” Use VLC as the media player 🎬
  • -S, --select-nth <index> β€” Select the nth entry ✨
  • -N, --nextep-countdown β€” Print a countdown to the next episode as the last episode in the list. This happens if the history is after the current episode 😭
  • --dub β€” Play the dubbed version. Without this flag, it'll always play the subbed version 🎧
  • --rofi β€” Use rofi instead of fzf for the interactive menu πŸͺŸ
  • --skip β€” Use ani-skip to skip the intro of the episode (mpv only) ⏭️
  • --no-detach β€” Don't detach the player. Useful for in-terminal playback (mpv only) πŸ“Ί
  • --exit-after-play β€” Exit the player and return the player exit code. Super useful for non-interactive scenarios (mpv only) πŸ€–
  • --skip-title <title> β€” Specify the title to use for ani-skip 🏷️

🌈 ENVIRONMENT VARIABLES 🌈

Okay so ani-cli v4 has env vars for the unstable, untested, and niche features, on top of everything that has an option. Command-line options take precedence over env vars. These are all subject to change, so stay on your toes πŸ’…

  • ANI_CLI_MODE β€” Controls the scraped media's mode. Valid options are sub or dub. Default is sub 🎧
  • ANI_CLI_DOWNLOAD_DIR β€” Controls the directory where files are downloaded. Default is the current dir πŸ“
  • ANI_CLI_QUALITY β€” Controls the scraped media's quality. Check allanime for valid options, or set it to worst or best. Default is best πŸ‘‘
  • ANI_CLI_PLAYER β€” Sets the player ani-cli uses. Can be debug (prints links), download (equivalent to -d), android_mpv (apk and am start), android_vlc (apk and am start), flatpak_mpv (for flatpak), catt (for streaming to TV), or any player that can play URLs. For defaults, see "working without arguments" πŸŽ₯
  • ANI_CLI_EXTERNAL_MENU β€” Controls the frontend of ani-cli. Can be 0 (uses fzf) or 1 (uses rofi dmenu). Default is 0 πŸͺŸ
  • ANI_CLI_EXTERNAL_MENU_NORMAL_WINDOW β€” Controls the way rofi displays the window. Can be 0 (no additional arguments passed to rofi) or 1 (the menu shows as a normal window, and the -normal-window argument is passed to rofi). Default is 0 πŸͺŸ
  • ANI_CLI_LOG_EPISODE β€” Controls the logging feature for playback. Can be 1 (logs) or 0 (doesn't log). Default is 1 πŸ“
  • ANI_CLI_MULTI_SELECTION β€” Controls the multi flag for the chosen frontend. Default is -m for fzf and --multi-select for rofi dmenu 🫧
  • ANI_CLI_HIST_DIR β€” Controls the directory ani-cli uses to store history. A /ani-cli subfolder is created there for the histfile if it doesn't exist. Default is $XDG_STATE_HOME if set, $HOME/.local/state if not πŸ“š
  • ANI_CLI_DEFAULT_SOURCE β€” Controls the default source. Valid is history (equivalent to -c); everything else means search. Default is search πŸ”
  • ANI_CLI_SKIP_INTRO β€” Controls whether ani-skip is used to skip intros (works with mpv only). Can be 0 (disabled) or 1 (enabled). Default is 0 ⏭️
  • ANI_CLI_NO_DETACH β€” Controls whether mpv is detached from the main process for playback. This can be useful with terminal renderers such as kitty (works with mpv only). Can be 0 (disabled) or 1 (enabled). Default is 0 🐱
  • ANI_CLI_SKIP_TITLE β€” Overrides the anime title to query for skip times. Can be any string value. Default is empty, which resolves to the anime title as given by ani-cli 🏷️

πŸ¦‹ EPISODE SELECTION πŸ¦‹

Multiple episodes can be chosen using the multi-selection mode of fzf (or whatever alternative frontend you're using). Check their instructions for how to do this πŸ’–

🚨 BUGS 🚨

Something feeling off? Head to the GitHub issue tracker: https://github.com/pystardust/ani-cli/issues πŸ›

ani-cli is licensed under the GNU General Public License v3.0 πŸ’œ

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. 🫢

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. πŸ™

You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>. 🌸


Bestie, that's the whole tea ✨ ani-cli, version January 2023, cute as ever πŸŽ€πŸ’–

πŸ“¦ where this page comes from