Commit 581ee75

xxwhirlpool  ·  2026-04-09 14:15:12 -0400 EDT
parent fd1f0ce
`music4coding`
1 files changed,  +71, -0
+71, -0
......@@ -0,0 +1,71 @@
1+#!/usr/bin/env bash
2+#
3+# mixtapes from musicForProgramming.net
4+# https://musicforprogramming.net
5+
6+# this is not all of the mixes cuz i'm lazy
7+
8+declare -A mixtapes=(
9+ ["1"]="https://datashat.net/music_for_programming_1-datassette.mp3"
10+ ["2"]="https://datashat.net/music_for_programming_2-sunjammer.mp3"
11+ ["3"]="https://datashat.net/music_for_programming_3-datassette.mp3"
12+ ["4"]="https://datashat.net/music_for_programming_4-com_truise.mp3"
13+ ["5"]="https://datashat.net/music_for_programming_5-abe_mangger.mp3"
14+ ["6"]="https://datashat.net/music_for_programming_6-gods_of_the_new_age.mp3"
15+ ["7"]="https://datashat.net/music_for_programming_7-tahlhoff_garten_and_untitled.mp3"
16+ ["8"]="https://datashat.net/music_for_programming_8-connectedness_locus.mp3"
17+ ["9"]="https://datashat.net/music_for_programming_9-datassette.mp3"
18+ ["10"]="https://datashat.net/music_for_programming_10-unity_gain_temple.mp3"
19+ ["11"]="https://datashat.net/music_for_programming_11-miles_tilmann.mp3"
20+ ["12"]="https://datashat.net/music_for_programming_12-forgotten_light.mp3"
21+ ["13"]="https://datashat.net/music_for_programming_13-matt_whitehead.mp3"
22+ ["14"]="https://datashat.net/music_for_programming_14-tahlhoff_garten_and_untitled.mp3"
23+ ["15"]="https://datashat.net/music_for_programming_15-dan_adeyemi.mp3"
24+ ["16"]="https://datashat.net/music_for_programming_16-silent_stelios.mp3"
25+ ["17"]="https://datashat.net/music_for_programming_17-graphplan.mp3"
26+ ["18"]="https://datashat.net/music_for_programming_18-konx_om_pax.mp3"
27+ ["19"]="https://datashat.net/music_for_programming_19-hivemind.mp3"
28+ ["20"]="https://datashat.net/music_for_programming_20-uberdog.mp3"
29+)
30+
31+# little header text graphic to show before playback
32+
33+gum_echo() {
34+ top=$(gum style --bold --foreground "#a6d189" --border none --width 50 --margin "1 0" --align center "musicForProgramming();")
35+ bottom=$(gum style --foreground "#f4b8e4" --border none --width 50 --margin "1 0" --align center "$@")
36+
37+ joingum=$(gum join --vertical --align center "$top" "$bottom")
38+ all=$(gum style --border-foreground "#99d1db" --border double --width 50 --padding "0 0" --align center "$joingum")
39+
40+ gum join --vertical "$all"
41+}
42+
43+# run the script
44+
45+choice() {
46+ choose=$(gum choose --header "mixtapes" {1..20} --height 20)
47+ case "$choose" in
48+ 1) gum_echo "datasette" && mpv "${mixtapes['1']}";;
49+ 2) gum_echo "sunjammer" && mpv "${mixtapes['2']}";;
50+ 3) gum_echo "datassette" && mpv "${mixtapes['3']}";;
51+ 4) gum_echo "com truise" && mpv "${mixtapes['4']}";;
52+ 5) gum_echo "abe mangger" && mpv "${mixtapes['5']}";;
53+ 6) gum_echo "gods of the new age" && mpv "${mixtapes['6']}";;
54+ 7) gum_echo "tahlhoff garten + untitled" && mpv "${mixtapes['7']}";;
55+ 8) gum_echo "connectedness locus" && mpv "${mixtapes['8']}";;
56+ 9) gum_echo "datassette" && mpv "${mixtapes['9']}";;
57+ 10) gum_echo "unity gain temple" && mpv "${mixtapes['10']}";;
58+ 11) gum_echo "miles tilmann" && mpv "${mixtapes['11']}";;
59+ 12) gum_echo "forgotten light" && mpv "${mixtapes['12']}";;
60+ 13) gum_echo "matt whitehead" && mpv "${mixtapes['13']}";;
61+ 14) gum_echo "tahlhoff garten + untitled" && mpv "${mixtapes['14']}";;
62+ 15) gum_echo "dan adeyemi" && mpv "${mixtapes['15']}";;
63+ 16) gum_echo "silent stelios" && mpv "${mixtapes['16']}";;
64+ 17) gum_echo "graphplan" && mpv "${mixtapes['17']}";;
65+ 18) gum_echo "konx om par" && mpv "${mixtapes['18']}";;
66+ 19) gum_echo "hivemind" && mpv "${mixtapes['19']}";;
67+ 20) gum_echo "uberdog" && mpv "${mixtapes['20']}";;
68+ esac
69+}
70+
71+choice