#!/bin/sh # From https://github.com/tardypad/dotfiles/blob/1ea889a6d98b44d97fcf183e97ec2933dafef8b2/files/scripts/sway/sway-subscribe-events-run#L3 # Working on rewrite of https://aduros.com/blog/hacking-i3-automatic-layout/ # and potentionally even https://aduros.com/blog/hacking-i3-window-promoting/ { swaymsg -t subscribe -m '[ "workspace" ]' | while read -r EVENT; do CHANGE=$( echo "${EVENT}" | jq -r '.change' ) if [ "${CHANGE}" != 'focus' ] \ && [ "${CHANGE}" != 'urgent' ]; then sway-renumber-workspaces fi if [ "${CHANGE}" = 'focus' ] \ || [ "${CHANGE}" = 'move' ]; then pkill -x -RTMIN+8 i3blocks fi done }& { swaymsg -t subscribe -m '[ "window" ]' | jq --unbuffered 'select(.change == "focus").container.id' | while read -r CURRENT_WINDOW; do pkill -x -RTMIN+8 i3blocks swaymsg "[con_id=${PREV_WINDOW}] mark --add _prev" > /dev/null PREV_WINDOW="${CURRENT_WINDOW}" done }&