From 8cd7d14a2c3d85277a7494e017de42f51a17cddb Mon Sep 17 00:00:00 2001 From: Simon Gardling Date: Wed, 17 Sep 2025 12:43:04 -0400 Subject: [PATCH] eww: fix currentWindow logic --- .../progs/eww/config/scripts/currentWindow.fish | 10 ---------- .../progs/eww/config/scripts/currentWindow.sh | 17 +++++++++++++++++ home-manager/progs/eww/config/statusbar.yuck | 2 +- 3 files changed, 18 insertions(+), 11 deletions(-) delete mode 100755 home-manager/progs/eww/config/scripts/currentWindow.fish create mode 100755 home-manager/progs/eww/config/scripts/currentWindow.sh diff --git a/home-manager/progs/eww/config/scripts/currentWindow.fish b/home-manager/progs/eww/config/scripts/currentWindow.fish deleted file mode 100755 index 4addf02..0000000 --- a/home-manager/progs/eww/config/scripts/currentWindow.fish +++ /dev/null @@ -1,10 +0,0 @@ -#!/usr/bin/env fish -name=$(niri msg focused-window | rg Title | sed -E "s/[[:space:]]+Title\: //g" | sed "s/\"//g") -proc_name=$(echo "$name" | head -c 55) - -# TODO! fix this logic, add a '...' at the end -if ["$name" != "$proc_name"] - proc_name="$proc_name..." -end - -echo "$proc_name" diff --git a/home-manager/progs/eww/config/scripts/currentWindow.sh b/home-manager/progs/eww/config/scripts/currentWindow.sh new file mode 100755 index 0000000..c57e8f0 --- /dev/null +++ b/home-manager/progs/eww/config/scripts/currentWindow.sh @@ -0,0 +1,17 @@ +#!/usr/bin/env bash +niri_data=$(niri msg --json focused-window) + +if [[ "$niri_data" == "null" ]]; then + exit 0 +fi + +name=$(echo "$niri_data" | jq -r '.["app_id"], .["title"]' | tr '\n' ' ' | sed 's/.$//') +proc_name=$(echo "$name" | head -c 55) + + +# TODO! fix this logic, add a '...' at the end +if [[ "$name" != "$proc_name" ]]; then + proc_name="$proc_name..." +fi + +echo "$proc_name" diff --git a/home-manager/progs/eww/config/statusbar.yuck b/home-manager/progs/eww/config/statusbar.yuck index b642953..1c3bbd6 100644 --- a/home-manager/progs/eww/config/statusbar.yuck +++ b/home-manager/progs/eww/config/statusbar.yuck @@ -34,7 +34,7 @@ :onchange command) (label :text "${value}%" :class color))) -(defpoll windowtitle :interval "1s" `scripts/currentWindow.fish`) +(defpoll windowtitle :interval "1s" `scripts/currentWindow.sh`) (defwidget window-title [] (label