dots


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