diff options
Diffstat (limited to '')
-rwxr-xr-x | home/config/sway/scripts.d/project.sh (renamed from home-config/sway/scripts.d/project.sh) | 17 |
1 files changed, 10 insertions, 7 deletions
diff --git a/home-config/sway/scripts.d/project.sh b/home/config/sway/scripts.d/project.sh index afb8507..84e1a8d 100755 --- a/home-config/sway/scripts.d/project.sh +++ b/home/config/sway/scripts.d/project.sh @@ -1,5 +1,7 @@ #!/usr/bin/env bash +PID=$$ + get_mode() { swaymsg -t get_outputs -r | jq ".[$1].modes[0]" } @@ -56,24 +58,25 @@ get_id() { i=0 while true; do NAME="$(get_name $i)" - if [ "$NAME" == "$1" ]; then + if [ $(echo "$NAME" | grep "^$1") ]; then echo "$i" - exit 0 + return 0 elif [ "$NAME" == "null" ]; then - exit 1 + return 1 fi ((i=i+1)) done } die() { - notify-send -u critical -t 3000 "Sway" "Failed to get display" + notify-send -u critical -t 3000 "Sway" "$1" + kill $PID } -PRIMARY=$(get_id "eDP-1") -EXTERNAL=$(get_id "DP-1" || get_id "HDMI-1") +PRIMARY=$(get_id "eDP-1" || die "Failed to get primary display") +EXTERNAL=$(get_id "DP" || get_id "HDMI" || die "Failed to get external display") -PRIMARY_SCALE=1.5 +PRIMARY_SCALE=$2 EXTERNAL_SCALE=1 set_monitors() { |