From f8571e98d90df097769efb9d8404806f413e438e Mon Sep 17 00:00:00 2001 From: Daniel <48409433+darkeddie@users.noreply.github.com> Date: Mon, 20 May 2024 02:30:01 +0000 Subject: Add Shuffle to RofiBeats.sh --- config/hypr/UserScripts/RofiBeats.sh | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) (limited to 'config/hypr/UserScripts/RofiBeats.sh') diff --git a/config/hypr/UserScripts/RofiBeats.sh b/config/hypr/UserScripts/RofiBeats.sh index 1cf2a445..5753857b 100755 --- a/config/hypr/UserScripts/RofiBeats.sh +++ b/config/hypr/UserScripts/RofiBeats.sh @@ -79,11 +79,19 @@ play_online_music() { mpv --shuffle --vid=no "$link" } +# Main function for shuffling local music +shuffle_local_music() { + notification "Shuffle local music" + + # Play music in $mDIR on shuffle + mpv --shuffle --vid=no "$mDIR" +} + # Check if an online music process is running and send a notification, otherwise run the main function -pkill mpv && notify-send -u low -i "$iDIR/music.png" "Online Music stopped" || { +pkill mpv && notify-send -u low -i "$iDIR/music.png" "Music stopped" || { # Prompt the user to choose between local and online music -user_choice=$(printf "Play from Online Stations\nPlay from Music Folder" | rofi -dmenu -config ~/.config/rofi/config-rofi-Beats-menu.rasi -p "Select music source") +user_choice=$(printf "Play from Online Stations\nPlay from Music Folder\nShuffle from Music Folder" | rofi -dmenu -config ~/.config/rofi/config-rofi-Beats-menu.rasi -p "Select music source") case "$user_choice" in "Play from Music Folder") @@ -92,6 +100,9 @@ user_choice=$(printf "Play from Online Stations\nPlay from Music Folder" | rofi "Play from Online Stations") play_online_music ;; + "Shuffle from Music Folder") + shuffle_local_music + ;; *) echo "Invalid choice" ;; -- cgit v1.2.3 From bbb2c6d524df11b439ab3f79b31a80b06635fda2 Mon Sep 17 00:00:00 2001 From: JaKooLit Date: Mon, 20 May 2024 12:21:33 +0900 Subject: tweaked Rofi-Beats --- config/hypr/UserScripts/RofiBeats.sh | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) (limited to 'config/hypr/UserScripts/RofiBeats.sh') diff --git a/config/hypr/UserScripts/RofiBeats.sh b/config/hypr/UserScripts/RofiBeats.sh index 5753857b..5349930e 100755 --- a/config/hypr/UserScripts/RofiBeats.sh +++ b/config/hypr/UserScripts/RofiBeats.sh @@ -1,12 +1,14 @@ #!/bin/bash +# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ ## +# This script Rofi Beats (Super Shift M) -# Directory music folder +# Directory music folder for Local Music mDIR="$HOME/Music/" # Directory for icons iDIR="$HOME/.config/swaync/icons" -# Online Stations +# Online Stations. Edit as required / want here declare -A online_music=( ["AfroBeatz 2024 🎧"]="https://www.youtube.com/watch?v=7uB-Eh9XVZQ" ["Lofi Girl ☕️🎶"]="https://play.streamafrica.net/lofiradio" @@ -22,7 +24,6 @@ declare -A online_music=( ["Korean Drama OST 📻🎶"]="https://youtube.com/playlist?list=PLUge_o9AIFp4HuA-A3e3ZqENh63LuRRlQ" ) -# Local Music # Populate local_music array with files from music directory and subdirectories populate_local_music() { local_music=() @@ -60,7 +61,7 @@ play_local_music() { notification "$choice" # Play the selected local music file using mpv - mpv --shuffle --vid=no "$file" + mpv --vid=no "$file" } # Main function for playing online music @@ -81,7 +82,7 @@ play_online_music() { # Main function for shuffling local music shuffle_local_music() { - notification "Shuffle local music" + notification "Shuffle Play Local music" # Play music in $mDIR on shuffle mpv --shuffle --vid=no "$mDIR" @@ -91,7 +92,7 @@ shuffle_local_music() { pkill mpv && notify-send -u low -i "$iDIR/music.png" "Music stopped" || { # Prompt the user to choose between local and online music -user_choice=$(printf "Play from Online Stations\nPlay from Music Folder\nShuffle from Music Folder" | rofi -dmenu -config ~/.config/rofi/config-rofi-Beats-menu.rasi -p "Select music source") +user_choice=$(printf "Play from Online Stations\nPlay from Music Folder\nShuffle Play from Music Folder" | rofi -dmenu -config ~/.config/rofi/config-rofi-Beats-menu.rasi -p "Select music source") case "$user_choice" in "Play from Music Folder") @@ -100,7 +101,7 @@ user_choice=$(printf "Play from Online Stations\nPlay from Music Folder\nShuffle "Play from Online Stations") play_online_music ;; - "Shuffle from Music Folder") + "Shuffle Play from Music Folder") shuffle_local_music ;; *) -- cgit v1.2.3 From 5f8eeeb4419fb18acc02b9bf84d36caa94844aa8 Mon Sep 17 00:00:00 2001 From: JaKooLit Date: Mon, 20 May 2024 17:17:33 +0900 Subject: to resolve conflict --- config/hypr/UserScripts/RofiBeats.sh | 37 ++++++++++++++++++++---------------- 1 file changed, 21 insertions(+), 16 deletions(-) (limited to 'config/hypr/UserScripts/RofiBeats.sh') diff --git a/config/hypr/UserScripts/RofiBeats.sh b/config/hypr/UserScripts/RofiBeats.sh index 5349930e..04af7222 100755 --- a/config/hypr/UserScripts/RofiBeats.sh +++ b/config/hypr/UserScripts/RofiBeats.sh @@ -1,14 +1,12 @@ #!/bin/bash -# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ ## -# This script Rofi Beats (Super Shift M) -# Directory music folder for Local Music +# Directory music folder mDIR="$HOME/Music/" # Directory for icons iDIR="$HOME/.config/swaync/icons" -# Online Stations. Edit as required / want here +# Online Stations declare -A online_music=( ["AfroBeatz 2024 🎧"]="https://www.youtube.com/watch?v=7uB-Eh9XVZQ" ["Lofi Girl ☕️🎶"]="https://play.streamafrica.net/lofiradio" @@ -24,6 +22,7 @@ declare -A online_music=( ["Korean Drama OST 📻🎶"]="https://youtube.com/playlist?list=PLUge_o9AIFp4HuA-A3e3ZqENh63LuRRlQ" ) +# Local Music # Populate local_music array with files from music directory and subdirectories populate_local_music() { local_music=() @@ -50,18 +49,24 @@ play_local_music() { exit 1 fi - # Find the corresponding file path based on user's choice - for (( i=0; i<"${#filenames[@]}"; i++ )); do + # Find the corresponding file path based on user's choice and set that to play the song then continue on the list + for (( i=0; i<"${#filenames[@]}"; ++i )); do if [ "${filenames[$i]}" = "$choice" ]; then - file="${local_music[$i]}" + + notification "$choice" + # For some reason wont start playlist at 0 + if [[ $i -eq 0 ]]; then + # Play the selected local music file using mpv + mpv --loop-playlist --vid=no "$mDIR" + + else + file=$i + # Play the selected local music file using mpv + mpv --playlist-start="$file" --loop-playlist --vid=no "$mDIR" + fi break fi done - - notification "$choice" - - # Play the selected local music file using mpv - mpv --vid=no "$file" } # Main function for playing online music @@ -82,17 +87,17 @@ play_online_music() { # Main function for shuffling local music shuffle_local_music() { - notification "Shuffle Play Local music" + notification "Shuffle local music" # Play music in $mDIR on shuffle - mpv --shuffle --vid=no "$mDIR" + mpv --shuffle --loop-playlist --vid=no "$mDIR" } # Check if an online music process is running and send a notification, otherwise run the main function pkill mpv && notify-send -u low -i "$iDIR/music.png" "Music stopped" || { # Prompt the user to choose between local and online music -user_choice=$(printf "Play from Online Stations\nPlay from Music Folder\nShuffle Play from Music Folder" | rofi -dmenu -config ~/.config/rofi/config-rofi-Beats-menu.rasi -p "Select music source") +user_choice=$(printf "Play from Online Stations\nPlay from Music Folder\nShuffle from Music Folder" | rofi -dmenu -config ~/.config/rofi/config-rofi-Beats-menu.rasi -p "Select music source") case "$user_choice" in "Play from Music Folder") @@ -101,7 +106,7 @@ user_choice=$(printf "Play from Online Stations\nPlay from Music Folder\nShuffle "Play from Online Stations") play_online_music ;; - "Shuffle Play from Music Folder") + "Shuffle from Music Folder") shuffle_local_music ;; *) -- cgit v1.2.3 From 8f5c2af4cff0e5fae763e3f65b2cf90bacc85647 Mon Sep 17 00:00:00 2001 From: JaKooLit Date: Mon, 20 May 2024 17:27:21 +0900 Subject: Tweaked Rofi Beats --- config/hypr/UserScripts/RofiBeats.sh | 34 ++++++++++++++++++---------------- 1 file changed, 18 insertions(+), 16 deletions(-) (limited to 'config/hypr/UserScripts/RofiBeats.sh') diff --git a/config/hypr/UserScripts/RofiBeats.sh b/config/hypr/UserScripts/RofiBeats.sh index 04af7222..7fed687f 100755 --- a/config/hypr/UserScripts/RofiBeats.sh +++ b/config/hypr/UserScripts/RofiBeats.sh @@ -1,12 +1,14 @@ #!/bin/bash +# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ ## +# For Rofi Beats to play online Music or Locally save media files -# Directory music folder +# Directory local music folder mDIR="$HOME/Music/" # Directory for icons iDIR="$HOME/.config/swaync/icons" -# Online Stations +# Online Stations. Edit as required declare -A online_music=( ["AfroBeatz 2024 🎧"]="https://www.youtube.com/watch?v=7uB-Eh9XVZQ" ["Lofi Girl ☕️🎶"]="https://play.streamafrica.net/lofiradio" @@ -22,7 +24,6 @@ declare -A online_music=( ["Korean Drama OST 📻🎶"]="https://youtube.com/playlist?list=PLUge_o9AIFp4HuA-A3e3ZqENh63LuRRlQ" ) -# Local Music # Populate local_music array with files from music directory and subdirectories populate_local_music() { local_music=() @@ -52,13 +53,14 @@ play_local_music() { # Find the corresponding file path based on user's choice and set that to play the song then continue on the list for (( i=0; i<"${#filenames[@]}"; ++i )); do if [ "${filenames[$i]}" = "$choice" ]; then + + notification "$choice" - notification "$choice" # For some reason wont start playlist at 0 if [[ $i -eq 0 ]]; then # Play the selected local music file using mpv - mpv --loop-playlist --vid=no "$mDIR" - + mpv --loop-playlist --vid=no "$mDIR" + else file=$i # Play the selected local music file using mpv @@ -69,6 +71,14 @@ play_local_music() { done } +# Main function for shuffling local music +shuffle_local_music() { + notification "Shuffle local music" + + # Play music in $mDIR on shuffle + mpv --shuffle --loop-playlist --vid=no "$mDIR" +} + # Main function for playing online music play_online_music() { choice=$(printf "%s\n" "${!online_music[@]}" | rofi -i -dmenu -config ~/.config/rofi/config-rofi-Beats.rasi -p "Online Music") @@ -85,19 +95,11 @@ play_online_music() { mpv --shuffle --vid=no "$link" } -# Main function for shuffling local music -shuffle_local_music() { - notification "Shuffle local music" - - # Play music in $mDIR on shuffle - mpv --shuffle --loop-playlist --vid=no "$mDIR" -} - # Check if an online music process is running and send a notification, otherwise run the main function pkill mpv && notify-send -u low -i "$iDIR/music.png" "Music stopped" || { # Prompt the user to choose between local and online music -user_choice=$(printf "Play from Online Stations\nPlay from Music Folder\nShuffle from Music Folder" | rofi -dmenu -config ~/.config/rofi/config-rofi-Beats-menu.rasi -p "Select music source") +user_choice=$(printf "Play from Online Stations\nPlay from Music Folder\nShuffle Play from Music Folder" | rofi -dmenu -config ~/.config/rofi/config-rofi-Beats-menu.rasi -p "Select music source") case "$user_choice" in "Play from Music Folder") @@ -106,7 +108,7 @@ user_choice=$(printf "Play from Online Stations\nPlay from Music Folder\nShuffle "Play from Online Stations") play_online_music ;; - "Shuffle from Music Folder") + "Shuffle Play from Music Folder") shuffle_local_music ;; *) -- cgit v1.2.3