mirror of
https://github.com/ksyasuda/aniwrapper.git
synced 2025-12-07 14:53:37 -08:00
fix continue and add delete from playlist
made it so playlist file is specified directly in ani-cli instead of going with the default
This commit is contained in:
80
aniwrapper
80
aniwrapper
@@ -4,8 +4,8 @@
|
||||
|
||||
CMD=/usr/local/bin/ani-cli
|
||||
DEFAULT_DOWNLOAD="$HOME/Videos/sauce"
|
||||
DEFAULT_PLAYLIST="$HOME/Videos/sauce/playlists/playlist.txt"
|
||||
CFG_DIR="$XDG_CONFIG_HOME/aniwrapper"
|
||||
DEFAULT_PLAYLIST="$CFG_DIR/playlists/playlist.txt"
|
||||
CFG_FILE="meh.rasi"
|
||||
VERBOSE=0
|
||||
|
||||
@@ -100,9 +100,9 @@ case "$selection" in
|
||||
[ "$choice" == "$quit" ] && quit
|
||||
selection=$(printf "%s\n" "$choice" | awk '{ print $1 }')
|
||||
if [[ "$selection" == "1." ]]; then
|
||||
# -----------------------------------------------------------------------
|
||||
# ------------------------------------------------------------------
|
||||
# watch playlist
|
||||
# -----------------------------------------------------------------------
|
||||
# ------------------------------------------------------------------
|
||||
log "Playlist mode"
|
||||
options="1. From file|2. Streaming|3. Quit"
|
||||
choice=$(printf "%s\n" "${options[@]}" |
|
||||
@@ -113,9 +113,9 @@ case "$selection" in
|
||||
log "Selection: $choice"
|
||||
selection=$(printf "%s\n" "$choice" | awk '{ print $1 }')
|
||||
if [[ "$selection" == "1." ]]; then
|
||||
# -------------------------------------------------------------------
|
||||
# --------------------------------------------------------------
|
||||
# watch playlist from file (downloaded videos)
|
||||
# -------------------------------------------------------------------
|
||||
# --------------------------------------------------------------
|
||||
log "Watching playlist from file"
|
||||
PLAYLIST_DIR="$HOME/Videos/sauce"
|
||||
log "Default playlist directory: $PLAYLIST_DIR"
|
||||
@@ -127,24 +127,80 @@ case "$selection" in
|
||||
log "Choice" "$choice"
|
||||
run -P "$PLAYLIST_DIR/$choice"
|
||||
elif [[ "$selection" == "2." ]]; then
|
||||
# -------------------------------------------------------------------
|
||||
# --------------------------------------------------------------
|
||||
# watch playlist of 'queued' videos to stream
|
||||
# -------------------------------------------------------------------
|
||||
# --------------------------------------------------------------
|
||||
log "Watching from 'queue'"
|
||||
choice=$(rofi -dmenu \
|
||||
-config "$CFG_DIR/$CFG_FILE" \
|
||||
-l 1 -p "Enter path to playlist file (or leave blank for default):")
|
||||
if [[ "$choice" ]]; then
|
||||
PLAYLIST_FILE="$choice"
|
||||
else
|
||||
PLAYLIST_FILE="$DEFAULT_PLAYLIST"
|
||||
fi
|
||||
run -p
|
||||
fi
|
||||
elif [[ "$selection" == "2." ]]; then
|
||||
# -----------------------------------------------------------------------
|
||||
# ------------------------------------------------------------------
|
||||
# add to playlist
|
||||
# -----------------------------------------------------------------------
|
||||
# ------------------------------------------------------------------
|
||||
log "Add to playlist"
|
||||
run -a
|
||||
choice=$(rofi -dmenu \
|
||||
-config "$CFG_DIR/$CFG_FILE" \
|
||||
-l 1 -p "Enter path to playlist file (or leave blank for default):")
|
||||
if [[ "$choice" ]]; then
|
||||
PLAYLIST_FILE="$choice"
|
||||
else
|
||||
PLAYLIST_FILE="$DEFAULT_PLAYLIST"
|
||||
fi
|
||||
run -a "$PLAYLIST_FILE"
|
||||
elif [[ "$selection" == "3." ]]; then
|
||||
# -----------------------------------------------------------------------
|
||||
# delete from playlist
|
||||
# -----------------------------------------------------------------------
|
||||
log "Not implemented yet"
|
||||
run -r
|
||||
log "Delete from playlist"
|
||||
choice=$(rofi -dmenu \
|
||||
-config "$CFG_DIR/$CFG_FILE" \
|
||||
-l 1 -p "Enter path to playlist file (or leave blank for default):")
|
||||
if [[ "$choice" ]]; then
|
||||
PLAYLIST_FILE="$choice"
|
||||
else
|
||||
PLAYLIST_FILE="$DEFAULT_PLAYLIST"
|
||||
fi
|
||||
[ "$VERBOSE" -eq 1 ] && log "playlist file: $PLAYLIST_FILE"
|
||||
lines=""
|
||||
cnt=0
|
||||
while read -r line
|
||||
do
|
||||
if [[ "$cnt" -eq 0 ]]; then
|
||||
lines="$((cnt + 1)). $line"
|
||||
else
|
||||
lines="$lines|$((cnt + 1)). $line"
|
||||
fi
|
||||
((cnt++))
|
||||
done < "$PLAYLIST_FILE"
|
||||
choice=$(rofi -dmenu -l 12 \
|
||||
-sep '|' \
|
||||
-config "$CFG_DIR/$CFG_FILE" -p "Choose episode to delete:" \
|
||||
<<< "${lines[*]}")
|
||||
log "choice: $choice"
|
||||
selection=$(awk '{print $1}' <<< "$choice")
|
||||
idx=${selection//\./}
|
||||
log "index selected: $idx"
|
||||
log "deleting entry: $idx"
|
||||
if [[ -z "$idx" ]]; then
|
||||
log "no entry selected"
|
||||
exit 1
|
||||
fi
|
||||
sed -ie "$idx"d "$PLAYLIST_FILE"
|
||||
if [ "$?" -eq 0 ]; then
|
||||
log "$selection deleted from playlist"
|
||||
exit 0
|
||||
else
|
||||
log "there was a problem deleting $choice"
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
;;
|
||||
5.)
|
||||
|
||||
Reference in New Issue
Block a user