# click interactions [[ "$BLOCK_INSTANCE" =~ "color" ]] && COLORS=True ## toggle long and short preview STATE="${HOME}/.config/i3blocks/modules/${1}.state" if [[ "$BLOCK_BUTTON" == 1 ]]; then if [[ -f "$STATE" ]]; then rm $STATE LONG=false else touch $STATE LONG=true fi else [[ -f "$STATE" ]] && LONG=true || LONG=false fi # global variables BAR=("▁" "▂" "▃" "▄" "▅" "▆" "▇" "█") INTERVAL=$((100 / ${#BAR[@]})) COLOR=("#64bc01" "#77a601" "#8a9101" "#9d7b00" "#b06701" "#c45100" "#d63c00" "#e92700") BW=("#565656" "#6d6d6d" "#848485" "#9c9c9c" "#b1b1b1" "#c7c7c7" "#dcdcdc" "#f5f5f6") # get $LOAD, $LONG_TEXT and $SHORT_TEXT source $HOME/.config/i3blocks/modules/${1}.sh # text if [[ "$LONG" = true || "$LONG_TEXT" == "off" ]]; then echo "$LONG_TEXT" echo "$SHORT_TEXT" else for i in "${!BAR[@]}"; do if [[ "$LOAD" -lt $((($i+1) * $INTERVAL)) ]]; then echo "${BAR[$i]}" echo "${BAR[$i]}" break fi done fi # colors for i in "${!BW[@]}"; do if [[ $LOAD -lt $((($i+1) * $INTERVAL)) ]]; then [[ $COLORS ]] && echo "${COLOR[$i]}" || echo "${BW[$i]}" fi done