.dotfiles/.bin/host-mode##hostname.portalo

48 lines
1.2 KiB
Plaintext
Raw Normal View History

#!/usr/bin/env bash
modes="std
single
2024-06-13 16:29:58 +00:00
single-sec
2024-06-24 13:25:15 +00:00
zellij"
portalo_mode_std () {
echo "Loading portalo standard screen layout"
yadm config --unset-all local.class monitor-single
yadm config --unset-all local.class monitor-single-sec
}
portalo_mode_single () {
echo "Loading portalo single screen layout"
yadm config --unset-all local.class monitor-single-sec
yadm config --add local.class monitor-single
}
portalo_mode_single_sec () {
echo "Loading portalo single screen layout on secondary screen"
yadm config --unset-all local.class monitor-single
yadm config --add local.class monitor-single-sec
}
2024-06-24 13:25:15 +00:00
portalo_mode_zellij () {
layout_dir="$HOME/.config/zellij/layouts"
2024-06-13 16:29:58 +00:00
layouts=$(\ls -1 "$layout_dir")
layout=$(echo "$layouts" | $DMENU -p "layout")
if [ -n "$layout" ]; then
2024-06-24 13:25:15 +00:00
$TERMINAL -e zellij --layout="$layout_dir/$layout"
2024-06-13 16:29:58 +00:00
fi
}
if [ -z "$1" ]; then
mode=$(echo "$modes" | $DMENU -p "mode")
else
mode=$1
fi
case $mode in
"std") portalo_mode_std ;;
"single") portalo_mode_single ;;
"single-sec") portalo_mode_single_sec ;;
2024-06-24 13:25:15 +00:00
"zellij") portalo_mode_zellij ;;
*) echo "'$mode' is not a valid mode (single, std)" ;;
esac