gnome-shell 下一个窗口命令行

gnome-shell 下一个窗口命令行

我试图制作一个通过热键切换窗口的脚本,我想看到的功能之一是“如果选择窗口处于活动状态,则切换到上一个窗口”

我尝试了以下方法:

#!/bin/bash
class=$1
command=$2
if xdotool search --classname "$class" > /dev/null ;then
        if xprop -id $(xdotool getactivewindow) | grep -q "WM_CLASS.*\".*$class.*\"";then
                 ### HERE ###
                :#xdotool key --clearmodifiers 'alt+Tab' 
        else
                wmctrl -x -a "$class"
        fi
else
        if [ -n "$command" ];then
                $command &
                disown
        fi
fi

在标记为 HERE 的字符串之后,我尝试将 alt+Tab 键发送到 wm,但它效果不好,因为当我这样做时,我仍然持有ctrl修饰符,这会导致切换器等待(或有时停止),所以我想只是告诉 gnome来切换窗口。

那么,有什么办法可以从 shell 切换回来吗?

答案1

我找到了一些扩展,它完成了我的脚本的一半工作,分叉它,修复它并添加我上面描述的功能,所以我认为这个问题可以结束。

https://github.com/CZ-NIC/run-or-raise/pull/10

简而言之,我用过

global.display.get_tab_list(0, null)[1];

为了获得lastWindow,所以我使用扩展api来聚焦它。

相关内容