焦点:新开放的航站楼

焦点:新开放的航站楼

我在 archlinux 3.17.3-1 上使用 gnome-shell 3.14。我有一个键盘快捷键 (ctrl+alt+T) 来打开 xfce4 终端。

我的问题是,当我触发此快捷方式时,焦点不会设置在新打开的终端上。我尝试添加到我的.zshrc

[[ -n "$DISPLAY" ]] && wmctrl -i -a $(wmctrl -l | grep Terminal | tail -n 1 | cut -d ' ' -f1)

这种方法很管用……直到我尝试在终端中打开多个选项卡。打开新选项卡时,.zshrc运行并将焦点移至最后一个终端,这可能不是我当前正在处理的终端。

因此,我从文件中删除了该命令.zshrc,并尝试编辑使用快捷键盘执行的命令

xcfe4-terminal&
sleep 0.1
wmctrl -i -a $(wmctrl -l | grep Terminal | tail -n 1 | cut -d ' ' -f1)

我尝试增加睡眠时间,但仍然没有效果(焦点未设置)

因此我有两个问题:

  • 是否有可能以某种方式让脚本获取运行该脚本的 xfce4 终端的窗口 id?

  • 是否可以在打开 xfce4 终端时运行命令(例如,如果它在终端中,.zshrc即使它不在终端中)。我尝试了该--execute选项,但它不符合我的需求,因为它只运行聚焦命令,并给我留下一个无用的窗口

答案1

我知道这个帖子已经有 3 年了,但最近我从 Plasma 转到 Cinnamon 时也遇到了同样的问题。这就是我想到的

将其添加到您的.zshrc(或任何其他 shell 配置文件)

xdotool windowactivate $(xdotool search --onlyvisible --class 'xfce4-terminal' | tail -n1) &>/dev/null

答案2

我也遇到过这个问题。我已将键盘快捷键更改为, xfce4-terminal --disable-server 现在终端似乎可以正确获得焦点。

相关内容