使用 Bash 创建符合 EWMH/NetWM 标准的桌面

使用 Bash 创建符合 EWMH/NetWM 标准的桌面

我想开发一个脚本来添加/重命名/删除桌面,也可能为它们分配快捷方式。喜欢这个寻呼机https://github.com/BurntSushi/pager-multihead。有办法通过 Bash 做到这一点吗?

答案1

您可以使用wmctrlxdotool来添加和删除桌面。

这两种工具都只能更改桌面数量。这意味着您必须首先获得桌面的数量。

num_of_desk=$(wmctrl -d | wc -l)
num_of_desk=$(xdotool get_num_desktops)

然后你必须将数字加一才能添加新桌面

wmctrl -n $(( num_of_desk + 1 ))
xdotool set_num_desktops $(( num_of_desk + 1 ))

或减一以删除最后一个桌面

wmctrl -n $(( num_of_desk - 1 ))
xdotool set_num_desktops $(( num_of_desk - 1 ))

这两种工具都不允许您重命名桌面或者重新排列它们。

相关内容