updated README
This commit is contained in:
parent
70127c6918
commit
bde3e58618
56
README
56
README
@ -4,42 +4,66 @@ viewing and interacting with YouTube videos.
|
||||
Dependencies:
|
||||
- curl(1)
|
||||
- jq(1)
|
||||
- mpv(1)
|
||||
- yt-dlp(1)
|
||||
|
||||
Variables:
|
||||
Environment Variables:
|
||||
$DEBUG
|
||||
- Set this variable to get debug output to stderr
|
||||
|
||||
$PLAYER
|
||||
- Set this variable to a video player that can utilize yt-dlp to playback
|
||||
videos from YouTube
|
||||
|
||||
$YTPICK
|
||||
- Set this variable to a dmenu-compatible picker for use with the pick
|
||||
subcommand.
|
||||
subcommand
|
||||
|
||||
$YT_PL_DIR
|
||||
- Set this variable to the directory where playlists should be stored; defaults
|
||||
to $XDG_DATA_HOME/yt
|
||||
|
||||
|
||||
Usage:
|
||||
yt add | archive | cache | clone | music | pick | play | queue | verify
|
||||
yt add | archive | cache | clone | list | localsearch | new | pick | play | queue | search | sync | verify
|
||||
|
||||
add uri file
|
||||
add uri playlist
|
||||
- Adds a video by URI to a playlist
|
||||
|
||||
archive uri...
|
||||
- Archives a video on the Wayback Machine
|
||||
- Archives videos on the Wayback Machine
|
||||
|
||||
cache uri...
|
||||
- Caches a video title
|
||||
cache video...
|
||||
- Caches video titles
|
||||
|
||||
clone uri file
|
||||
clone uri [playlist]
|
||||
- Clones a YouTube playlist to a file
|
||||
|
||||
music uri...
|
||||
- Downloads a video as audio, splitting it by chapter
|
||||
list
|
||||
- lists local playlists
|
||||
|
||||
pick file...
|
||||
localsearch
|
||||
- uses $YTPICK to search for videos from the local cache
|
||||
|
||||
new playlist...
|
||||
- creates new playlists
|
||||
|
||||
pick playlist...
|
||||
- Opens $PICKER to a list of videos in a file
|
||||
|
||||
play uri...
|
||||
- Plays a video, caching its title first
|
||||
- Plays videos, caching their titles first
|
||||
|
||||
queue file...
|
||||
- Queues a playlist
|
||||
queue playlist...
|
||||
- Queues playlists
|
||||
|
||||
verify file...
|
||||
search term [count]
|
||||
- Searches YouTube for term and returns count results
|
||||
|
||||
sync [playlist]
|
||||
- If a playlist is specified, sync that playlist with its remote YouTube
|
||||
counterpart; otherwise, sync all playlists with remotes
|
||||
|
||||
verify playlist...
|
||||
- Verifies that all the videos in a playlist are existent on YouTube, and if
|
||||
they aren’t, attempts to replace the URI with one from the Wayback Machine. If
|
||||
the video isn’t available on the Wayback Machine, it comments the video link. It
|
||||
|
16
yt
16
yt
@ -47,7 +47,7 @@ P="$(printf '%s\n' "$YT_PL_DIR" | sed 's;\/;\\/;g')"
|
||||
|
||||
argv0="$0"
|
||||
com="$1"
|
||||
u='add | archive | clone | list | new | pick | play | search | sync | verify'
|
||||
u='add | archive | clone | list | localsearch | new | pick | play | search | sync | verify'
|
||||
FMT='%(title)s – %(channel)s (%(duration>%H:%M:%S)s) [%(webpage_url)s]'
|
||||
WBAPI='https://archive.org/wayback/available?url='
|
||||
|
||||
@ -117,7 +117,7 @@ clone() { # clones a YouTube playlist to a file
|
||||
n=1
|
||||
|
||||
while test -z "$title"; do
|
||||
title="$(yt-dlp -s -I "$n" --print '%(playlist)s' "$1" || true)"
|
||||
title="$(yt-dlp -s -I "$n" --print '%(playlist)s' "$1" 2>/dev/null || true)"
|
||||
n="$((n + 1))"
|
||||
done
|
||||
|
||||
@ -149,6 +149,11 @@ list() {
|
||||
test -z "$choices" || pick "$choices"
|
||||
}
|
||||
|
||||
localsearch() {
|
||||
test -n "$1" && usage 'localsearch'
|
||||
$YTPICK <"$cachefile"
|
||||
}
|
||||
|
||||
menu() {
|
||||
playlist="$(ls "$YT_PL_DIR" | sed 's/\.m3u//g' | sed -n '/[^.old]/p' \
|
||||
| $YTPICK)"
|
||||
@ -255,11 +260,6 @@ search() {
|
||||
fi
|
||||
}
|
||||
|
||||
localsearch() {
|
||||
test -n "$1" && usage 'localsearch'
|
||||
$YTPICK <"$cachefile"
|
||||
}
|
||||
|
||||
sync() {
|
||||
if test -z "$1"
|
||||
then
|
||||
@ -354,4 +354,6 @@ done
|
||||
|
||||
test -n "$com" && shift || usage "$u"
|
||||
|
||||
printf '%s\n' "$u" | grep "$com" >/dev/null || usage "$u"
|
||||
|
||||
"$com" "$@"
|
||||
|
Loading…
Reference in New Issue
Block a user