Files
hyprland/config/hypr/UserScripts/WaybarCava.sh
T
2023-12-30 21:19:06 +05:45

30 lines
636 B
Bash
Executable File

# #! /bin/bash
#----- Optimized bars animation without much CPU usage increase --------
bar="▁▂▃▄▅▆▇█"
dict="s/;//g"
# Calculate the length of the bar outside the loop
bar_length=${#bar}
# Create dictionary to replace char with bar
for ((i = 0; i < bar_length; i++)); do
dict+=";s/$i/${bar:$i:1}/g"
done
# Create cava config
config_file="/tmp/bar_cava_config"
cat >"$config_file" <<EOF
[general]
bars = 10
[output]
method = raw
raw_target = /dev/stdout
data_format = ascii
ascii_max_range = 7
EOF
# Read stdout from cava and perform substitution in a single sed command
cava -p "$config_file" | sed -u "$dict"