diff options
Diffstat (limited to '.local/bin/theme')
-rwxr-xr-x | .local/bin/theme/get-gradient | 13 | ||||
-rwxr-xr-x | .local/bin/theme/gradient.py | 24 |
2 files changed, 37 insertions, 0 deletions
diff --git a/.local/bin/theme/get-gradient b/.local/bin/theme/get-gradient new file mode 100755 index 0000000..91f9391 --- /dev/null +++ b/.local/bin/theme/get-gradient | |||
@@ -0,0 +1,13 @@ | |||
1 | #!/bin/sh | ||
2 | # Gets and sets a color gradient for cava | ||
3 | |||
4 | start="$1" | ||
5 | end="$2" | ||
6 | colors=$(~/.local/bin/theme/gradient.py $start $end 7) | ||
7 | |||
8 | num=1 | ||
9 | path="$HOME/.config/cava/config" | ||
10 | for color in $colors; do | ||
11 | sed -i "s/gradient_color_$num.*$/gradient_color_$num = '$color'/" $path | ||
12 | num=$((num+1)) | ||
13 | done | ||
diff --git a/.local/bin/theme/gradient.py b/.local/bin/theme/gradient.py new file mode 100755 index 0000000..f95bb07 --- /dev/null +++ b/.local/bin/theme/gradient.py | |||
@@ -0,0 +1,24 @@ | |||
1 | #!/usr/bin/python3 | ||
2 | # Gets a color gradient based on input color and number | ||
3 | # Depends on python3-colour | ||
4 | |||
5 | import colour,sys | ||
6 | |||
7 | if len(sys.argv) != 4: | ||
8 | print("arg error") | ||
9 | sys.exit(1) | ||
10 | |||
11 | start = sys.argv[1] | ||
12 | end = sys.argv[2] | ||
13 | num = int(sys.argv[3]) | ||
14 | |||
15 | grad = colour.color_scale(colour.hex2hsl(start),colour.hex2hsl(end),num) | ||
16 | grad_hex = [] | ||
17 | for hsl in grad: | ||
18 | grad_hex.append(colour.hsl2hex(hsl)) | ||
19 | |||
20 | for color in grad_hex: | ||
21 | sys.stdout.write(color + "\n") | ||
22 | |||
23 | |||
24 | |||