如何将应用程序的所有窗口置于最前面?


8

有时我想将一个应用程序的所有窗口置于顶部。似乎当前在Unity中执行此操作的唯一方法是单独切换到每个窗口(通过使用alt-tab,单击启动器图标并选择每个窗口或最小化所有其他窗口)。我猜想可以使用wmctrl一起破解某些东西,但我希望有一个更简单的解决方案。


如果你没有任何anwser ..这是我用什么:sprunge.us/giih(基于活动的窗口焦点窗口,keybinded)和sprunge.us/MFCE(调用的应用程序名称一部分的说法,即fc nau对鹦鹉螺..)。
user55822 '07年

Answers:


1

如果只需要查找应用程序的所有窗口(每个窗口都有其内容的预览),则在启动器栏中两次单击应用程序的图标。第一次单击它将使应用程序的最新窗口处于活动状态,而第二次单击将为您提供所有应用程序窗口的预览。从技术上讲,这与“将它们带到顶部”并不相同,但是可以满足您的实际需求(例如,找到所有打开的电子邮件窗口)。


1

您可以为此使用wmctrl:

所有窗口都有一个快捷方式,例如,如果您只想撤消到桌面的操作:

wmctrl -k off

如果确实只需要启动一个特定的应用程序,则可以使用脚本,如下所示,但是它将在所有工作区中打开所有窗口。例如调出所有gnome终端,您可以做

pids=" $(pidof gnome-terminal) "
wmctrl -lp | while read id a pid b; do
  test "${pids/ $pid }" != "$pids" && wmctrl -i -a $id
done

0

基于@Lajos的出色答案,可与任何应用程序一起使用:

function showall {
  pids=" $(pidof $1) "
  wmctrl -lp | while read id a pid b
  do test "${pids/ $pid }" != "$pids" && wmctrl -i -a $id; done
}

然后这样称呼它:

showall gnome-terminal
showall nautilus
showall chrome
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.