summaryrefslogtreecommitdiff
path: root/herbstluftwm/sphtop
diff options
context:
space:
mode:
authorzachir <zachir@librem.one>2022-10-05 22:00:32 -0500
committerzachir <zachir@librem.one>2022-10-05 22:00:32 -0500
commitf39d735e2ba625a31a7dbf6fb8bdd62501379ad1 (patch)
treed17c96714c930e0b8bc75616cc9c81b961ed5aa0 /herbstluftwm/sphtop
Initial Commit
Diffstat (limited to 'herbstluftwm/sphtop')
-rwxr-xr-xherbstluftwm/sphtop18
1 files changed, 18 insertions, 0 deletions
diff --git a/herbstluftwm/sphtop b/herbstluftwm/sphtop
new file mode 100755
index 0000000..2d55a9f
--- /dev/null
+++ b/herbstluftwm/sphtop
@@ -0,0 +1,18 @@
+#!/bin/sh
+scratchpad=/tmp/herbstluftwm:sphtop
+if xdotool search --onlyvisible --classname 'sphtop'; then
+ if [ $(herbstclient list_monitors | grep '[FOCUS]' | cut -d\" -f2) = $(herbstclient attr clients.$(cat $scratchpad) | grep 's - - tag' | awk '{ print $6 }' | sed 's/"//g') ]; then
+ xdotool search -onlyvisible -classname 'sphtop' windowunmap
+ exit
+ fi
+fi
+if [ -f $scratchpad ]; then
+ if ! herbstclient bring $(cat $scratchpad); then
+ xdotool search -classname 'sphtop' windowmap && exit
+ fi
+fi
+if ! xdotool search --classname 'sphtop' windowmap; then
+ setsid -f st -t 'sphtop' -n 'sphtop' -- zsh -c htop
+ xdotool search -sync -onlyvisible -classname 'sphtop'
+ herbstclient attr clients.focus.winid > $scratchpad
+fi