You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何取消GNOME对同类型特定Xorg应用及程序窗口实例的分组?

我之前也被GNOME的窗口分组折腾过好几次——明明是同一个程序的不同实例,却被强行捆在一起,Alt+Tab切换的时候找起来特别麻烦。下面给你两种实用的解决办法,分别对应全局取消所有应用分组,以及只针对特定Xorg应用(比如Eclipse)单独设置:

方法一:全局禁用GNOME窗口分组

这个方法会让所有应用的多窗口都独立显示,不管是任务面板、图标还是Alt+Tab切换都不会再分组:

  1. 修改Alt+Tab切换的分组设置
    打开终端,执行以下命令:

    gsettings set org.gnome.shell.window-switcher group-apps false
    

    执行后,Alt+Tab切换时就会显示所有独立窗口,不再按应用分组。

  2. 修改任务面板(Dash to Dock)的分组设置
    如果你用的是默认的Dash to Dock扩展,还需要关闭窗口合并:

    gsettings set org.gnome.shell.extensions.dash-to-dock merge-all-windows false
    

    这样任务栏上的图标会为每个窗口单独显示,不会合并成一个。

如果之后想恢复默认设置,把上面命令里的false改成true即可。

方法二:针对特定Xorg应用(如Eclipse)单独取消分组

如果你不想全局修改,只想让某些应用的多窗口独立,可以通过修改应用的桌面启动文件,给不同实例设置不同的窗口类名(WM_CLASS),让GNOME把它们识别为不同应用:

  1. 复制应用的桌面文件
    首先找到Eclipse的系统桌面文件,通常在/usr/share/applications/eclipse.desktop,复制一份到用户专属的应用目录,避免修改系统文件:

    cp /usr/share/applications/eclipse.desktop ~/.local/share/applications/eclipse-instance1.desktop
    
  2. 编辑桌面文件内容
    用文本编辑器打开复制后的文件,修改以下两处:

    • 修改Name字段,方便区分不同实例:
      Name=Eclipse Instance 1
      
    • 修改Exec字段,在启动命令前添加WM_CLASS环境变量,给这个实例指定唯一的窗口类名:
      Exec=env WM_CLASS=Eclipse-Instance1 /path/to/your/eclipse/eclipse
      
      (注意把/path/to/your/eclipse/替换成你实际的Eclipse安装路径)
  3. 创建多个实例的启动入口
    如果你需要多个独立的Eclipse窗口,可以重复上面的步骤,复制多份桌面文件,分别把Name改成Eclipse Instance 2,WM_CLASS改成Eclipse-Instance2,以此类推。

这样每次通过不同的桌面文件启动Eclipse,GNOME就会把它们当成完全独立的应用,不会再分组了。

内容的提问来源于stack exchange,提问作者piegames

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.19 08:50:48