refactor: new system basics

This commit is contained in:
2025-05-29 18:18:25 +02:00
parent f4ea18dc1a
commit c0ca42d166
92 changed files with 190009 additions and 12 deletions

78
utils/scratch Executable file
View File

@@ -0,0 +1,78 @@
#!/bin/bash
name="$1"
filename=/tmp/"$1"
bspc_write_nodeid() {
while true
do
flag=false
for id in $(bspc query -d focused -N -n .floating.sticky.hidden)
do
bspc query --node $id -T | grep -q $name && { echo $id > $filename; flag=true; break; }
done
[[ "$flag" == "true" ]] && break
sleep 0.1s
done
}
hide_all_except_current(){
for id in $(bspc query -d focused -N -n .floating.sticky.!hidden)
do
bspc query --node $id -T | grep -qv $name && bspc node $id --flag hidden=on
done
}
toggle_hidden() {
[ -e "$filename" ] || exit 1
hide_all_except_current
id=$(<$filename)
bspc node $id --flag hidden -f
}
create_terminal(){
st -c "$name" -n "$name" -e $1 &
}
set_sizes() {
files_window_id=$(xdotool search --class "files-scratch" | head -n 1)
if [ ! -z "$files_window_id" ]; then
echo "found $files_window_id"
xdo resize -w 1864 -h 982 "$files_window_id"
xdo move -x 28 -y 70 "$files_window_id"
fi
# bpytop_window_id=$(xdotool search --class "bpytop-scratch" | head -n 1)
# if [ ! -z "$bpytop_window_id" ]; then
# echo "found $bpytop_window_id"
# xdo resize -w 1100 -h 800 "$bpytop_window_id"
# xdo move -x 0 -y 0 "$bpytop_window_id"
# fi
}
if ! ps -ef | grep -q "[-]c $name"
then
bspc rule -a "$name" --one-shot state=floating sticky=on hidden=on
case "$name" in
"bpytop-scratch")
create_terminal bpytop
;;
"files-scratch")
create_terminal nnn
;;
"terminal-scratch")
create_terminal $SHELL
;;
"bc-scratch")
create_terminal bc
;;
*)
exit 1
esac
bspc_write_nodeid
toggle_hidden
else
toggle_hidden
fi
set_sizes