#!/usr/bin/env bash modes="monitor-std monitor-single monitor-single-sec monitor-fhd zellij" portalo_mode_monitor () { echo "Loading portalo monitor layout ${1:-std}" yadm config --unset-all local.class monitor-single yadm config --unset-all local.class monitor-single-sec yadm config --unset-all local.class monitor-fhd if [ -n "$1" ]; then yadm config --add local.class "$1" fi } portalo_mode_zellij () { layout_dir="$HOME/.config/zellij/layouts" layouts=$(\ls -1 "$layout_dir") layout=$(echo "$layouts" | $DMENU -p "layout") if [ -n "$layout" ]; then $TERMINAL -e zellij --layout="$layout_dir/$layout" fi } if [ -z "$1" ]; then mode=$(echo "$modes" | $DMENU -p "mode") else mode=$1 fi case $mode in "monitor-std") portalo_mode_monitor ;; "monitor-single") portalo_mode_monitor "$mode" ;; "monitor-single-sec") portalo_mode_monitor "$mode" ;; "monitor-fhd") portalo_mode_monitor "$mode" ;; "zellij") portalo_mode_zellij ;; *) echo "'$mode' is not a valid mode (single, std)" ;; esac