aboutsummaryrefslogtreecommitdiffstats
path: root/hm/soispha/pkgs/scripts/specific/ytcc/yts
diff options
context:
space:
mode:
Diffstat (limited to 'hm/soispha/pkgs/scripts/specific/ytcc/yts')
-rwxr-xr-xhm/soispha/pkgs/scripts/specific/ytcc/yts140
1 files changed, 0 insertions, 140 deletions
diff --git a/hm/soispha/pkgs/scripts/specific/ytcc/yts b/hm/soispha/pkgs/scripts/specific/ytcc/yts
deleted file mode 100755
index 5a22a2c9..00000000
--- a/hm/soispha/pkgs/scripts/specific/ytcc/yts
+++ /dev/null
@@ -1,140 +0,0 @@
-#!/usr/bin/env dash
-
-# shellcheck source=/dev/null
-SHELL_LIBRARY_VERSION="2.0.13" . %SHELL_LIBRARY_PATH
-
-TASK_UUID=ce4f9e07-8324-4570-8be6-967955e9271e
-# these are used in version()
-AUTHORS="Soispha"
-YEARS="2023"
-NAME="neorg"
-
-help_text="
-# Commands:
-# w, watch <id> = watch id
-# d, drop <id> = mark id as watched
-# p, pick <id> = leave id as is; This is a noop
-#
-# These lines can be re-ordered; they are executed from top to bottom.
-# vim: ft=gitrebase"
-
-help() {
-cat << EOF
-A help script to make selecting videos to play for ytcc easier.
-
-USAGE:
- $NAME [OPTIONS] [COMMAND]
-
-OPTIONS:
- --help | -h
- Display this help and exit.
-
- --version | -v
- Display version and copyright information and exit.
-COMMANDS:
- order MODE
- Select the ordering mode.
-ARGUMENTS:
- MODE := date | raw
- date will sort descending by publishing date,
- whilest raw esxposes the ytcc interface. See
- the help info of the 'ytcc list --help'
- '--order-by' option for more details.
-EOF
-}
-
-for arg in "$@"; do
- case "$arg" in
- "--help")
- help;
- exit 0;
- ;;
- "--version")
- version;
- exit 0;
- ;;
- esac
-done
-
-if [ -n "$1" ]; then
- case "$1" in
- "order")
- shift 1;
- case "$1" in
- "date")
- set -- "--order-by" "publish_date" "desc"
- oder_mode_set=true;
- ;;
- "raw")
- shift 1;
- if [ -n "$1" ]; then
- [ -z "$2" ] && die "A first argument to 'order raw' requires a second"
- set -- "--order-by" "$1" "$2"
- fi
- oder_mode_set=true;
- ;;
- *)
- die "'$1' is not a valid subcommand for 'order'; See '--help' for a list";
- ;;
- esac
- ;;
- *)
- die "'$1' is not a valid subcommand; See '--help' for a list";
- ;;
- esac
-fi
-
-# Set the default ordering mode
-[ -z "$oder_mode_set" ] && set -- "--order-by" "publish_date" "desc"
-
-table="$(ytcc --output json list "$@" | jq --raw-output 'map("pick \(.id) \(.title) (\(.playlists | map(.name) | join(", "))) [\(.duration | gsub("^\\s+|\\s+$";""))]") | join("\n")')"
-
-selection_file="$(mktmp)";
-
-# This is trapped on EXIT
-# shellcheck disable=SC2317
-cleanup() {
- task stop "$TASK_UUID"
-}
-trap cleanup EXIT
-task start "$TASK_UUID"
-
-echo "$table" > "$selection_file";
-echo "$help_text" >> "$selection_file";
-
-$EDITOR "$selection_file"
-
-is_first=true;
-while read -r line; do
- cmd="$(echo "$line" | awk '{print $1}')";
- case "$cmd" in
- "" )
- # An empty line, simply ignore it
- ;;
- "#")
- # This is a comment, do nothing here
- ;;
- "pick" | "p")
- # noop do nothing here
- ;;
- "drop" | "d")
- id="$(echo "$line" | awk '{print $2}')";
- ytcc mark "$id";
- dbg "Marked as watched: $id"
- ;;
- "watch" | "w")
- id="$(echo "$line" | awk '{print $2}')";
- if [ "$is_first" = "true" ]; then
- set -- "$id"
- else
- set -- "$@" "$id"
- fi
- dbg "Added to be watched: $id"
- is_first=false
- ;;
- esac
-done < "$selection_file"
-
-[ -n "$1" ] && ytc "id" "$@";
-exit 0;
-# vim: ft=sh