dotfiles/.local/bin/tools/startmpv
Alexander Bocken 6907760e58
various changes
modified:   .config/coc/history.json
	modified:   .config/gtk-2.0/gtkfilechooser.ini
	modified:   .config/newsboat/config
	modified:   .config/nvim/init.vim
	modified:   .config/qutebrowser/autoconfig.yml
	modified:   .config/qutebrowser/qsettings/QtProject.conf
	modified:   .config/zsh/.zshrc
	modified:   .local/bin/castscreen
	modified:   .local/bin/dmenuvpn
	modified:   .local/bin/statusbar/internet
	deleted:    .local/bin/tools/bright
	modified:   .local/bin/tools/ce
	modified:   .local/bin/tools/hover
	modified:   .local/bin/tools/ripper
	modified:   .local/bin/tools/startmpv
	modified:   .zprofile
2020-10-28 13:48:43 +01:00

15 lines
929 B
Bash
Executable File

#!/bin/zsh
# this script uses https://github.com/maxime-aknin/youtube-playlist-video-ids to gather video ids
# please install this first and specify the path to this cloned repo below
js_playlist_index_loc="$HOME/src/youtube-playlist-video-ids"
# The above mentioned script needs Youtube API access, (see the repo for more info on that)
# I've saved my API key in my password manager, I reccomend you to do something similar.
API_key="$(pass show 'Misc/Youtube Data API v3')"
if echo "$1" | grep -qE 'youtube.*list'; then
playlist_id="$( echo "$1" | perl -pe "s|^.*?(\?\|&)list=(.*?)|\2|; s|&index=[0-9]+||" )"
notify-send "startmpv" "Searching for all videos in playlist..."
npm start --prefix "$js_playlist_index_loc" -- --api-key "$API_key" --playlist-id $playlist_id | sed 's/^/https:\/\/www.youtube.com\/watch?v=/' | xargs mpv || notify-send "startmpv" "An error has occured with playlist $playlist_id"
else
mpv "$1"
fi