Как проверить, открыто ли какое-либо окно в i3
Как я могу узнать, открыто ли какое-либо окно в i3 или нет? Например, проверьте, содержит ли какое-либо рабочее пространство какое-либо окно.
2 ответа
Решение
Вы можете проверить, открыто ли какое-либо "видимое" окно в i3, используя xdotool
: Вы можете установить xdotool с sudo pacman -S xdotool
WINDOWS=$(xdotool search --all --onlyvisible --desktop $(xprop -notype -root _NET_CURRENT_DESKTOP | cut -c 24-) "" 2>/dev/null)
NUM=$(echo "$WINDOWS" | wc -l)
if [ $NUM -eq 0 ]; then
echo "No windows open."
fi
Может быть попробовать i3-save-tree
, Вы должны установить perl-anyevent-i3
а также perl-json-xs
первый.
https://i3wm.org/docs/layout-saving.html
Пример:
$ i3-save-tree --workspace 10
// vim:ts=4:sw=4:et
{
"border": "pixel",
"current_border_width": 1,
"floating": "auto_off",
"geometry": {
"height": 720,
"width": 1366,
"x": 0,
"y": 0
},
"name": "Waterfox Start Page - Waterfox",
"percent": 1,
"swallows": [
{
// "class": "^Waterfox$",
// "instance": "^Navigator$",
// "title": "^Waterfox\\ Start\\ Page\\ \\-\\ Waterfox$",
// "transient_for": "^$",
// "window_role": "^browser$"
}
],
"type": "con"
}