diff options
| author | trainytrain <trainytrain@rape.lol> | 2021-05-09 01:29:07 -0700 |
|---|---|---|
| committer | trainytrain <trainytrain@rape.lol> | 2021-05-09 01:29:07 -0700 |
| commit | c765e68f05bfe9f0d2e4990bdc8dfabf11cdbc87 (patch) | |
| tree | 1dd446298beeb5d1a411d5516689dee8c2ee26ee /herbstluftwm/scripts/lasttag.sh | |
init
Diffstat (limited to 'herbstluftwm/scripts/lasttag.sh')
| -rwxr-xr-x | herbstluftwm/scripts/lasttag.sh | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/herbstluftwm/scripts/lasttag.sh b/herbstluftwm/scripts/lasttag.sh new file mode 100755 index 0000000..dd89314 --- /dev/null +++ b/herbstluftwm/scripts/lasttag.sh @@ -0,0 +1,25 @@ +#!/usr/bin/env bash + +# usage: start this script in anywhere your autostart (but *after* the +# emit_hook reload line) + +# to switch to the last tag, call: herbstclient emit_hook goto_last_tag +# or bind it: herbstclient keybind Mod1-Escape emit_hook goto_last_tag + +hc() { "${herbstclient_command[@]:-herbstclient}" "$@" ;} +hc --idle '(tag_changed|goto_last_tag|reload)' \ + | while read line ; do + IFS=$'\t' read -ra args <<< "$line" + case ${args[0]} in + tag_changed) + lasttag="$tag" + tag=${args[1]} + ;; + goto_last_tag) + [ "$lasttag" ] && hc use "$lasttag" + ;; + reload) + exit + ;; + esac + done |
