aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/i3blocks/.local/bin/i3blocks-title
diff options
context:
space:
mode:
Diffstat (limited to 'i3blocks/.local/bin/i3blocks-title')
-rwxr-xr-xi3blocks/.local/bin/i3blocks-title17
1 files changed, 17 insertions, 0 deletions
diff --git a/i3blocks/.local/bin/i3blocks-title b/i3blocks/.local/bin/i3blocks-title
new file mode 100755
index 0000000..c014adc
--- /dev/null
+++ b/i3blocks/.local/bin/i3blocks-title
@@ -0,0 +1,17 @@
+#!/bin/sh
+
+into_block='{
+ "full_text": (.name[0:50] // ""),
+ "short_text": ([.app_id, .window_title, .name] | map(select(. != null and . != "")) | (first // "") | .[0:25]),
+}'
+
+swaymsg -t get_tree | jq -c '.. | select(.focused? == true and .type == "con") | '"$into_block"
+
+swaymsg --monitor -t subscribe '["window", "workspace"]' | jq -c --unbuffered '
+ select((.change | test("close|focus|title")) and (.current.type == "workspace" or .container.focused)) |
+ if .current.type == "workspace" or .change == "close" then
+ { "full_text": "" }
+ else
+ .container | '"$into_block"'
+ end
+'