#!/usr/bin/env bash profiles=( "Personal" "Development" "School" "Work" ) icons=( "~" "" "" "" ) profilem=$((${#profiles[@]}-1)) #echo ${#profiles[@]} #exit case $1 in next|prev) current_profile=$(cat "$(dirname $0)/data/active_profile") ;;& next) new_profile=$(( ${current_profile}+1 )) [[ "$new_profile" -eq "4" ]] && new_profile=0 ;;& prev) new_profile=$(( ${current_profile}-1 )) [[ "$new_profile" -eq "-1" ]] && new_profile=3 ;;& prev|next) op="${profiles[$new_profile]}" ;; *) for (( p="0"; p<=${profilem}; p++ ));do [[ $p -eq $profilem ]] && nl="" || nl="\n" wofilist="${wofilist}${icons[$p]} ${profiles[$p]}${nl}" done [[ -z $1 ]] && op=$( echo -e "${wofilist}" | wofi -i --dmenu --width 250 --height 320 | awk '{print $2}' ) || op="${1}" ;; esac profile_number="" case $op in Personal) p_number="" p_icon="~" ;; Development) p_number="1" p_icon="" ;; School) p_number="2" p_icon="" ;; Work) p_number="3" p_icon="" ;; *) exit 1 ;; esac for i in {1..10};do [[ "$i" -eq "10" ]] && k="0" || k=$i echo $k swaymsg 'bindsym $mod+'"$k"' workspace number "'"${p_number}${i}:${p_icon}"'"' done printf "%01d\n" "${p_number}" > "$(dirname $0)/data/active_profile" swaymsg 'workspace number "'"${p_number}"'"1:"'"${p_icon}"'"'