从 Unity 打开新窗口(Firefox)

从 Unity 打开新窗口(Firefox)

我正在使用多个工作区。每当我单击 Unity 工具栏中的 Firefox 图标时,它都会将我带到当前打开 Firefox 的工作区,这是一个有用的功能。但是,每次单击 Firefox 图标时,我都希望 Firefox 中打开一个新窗口。我知道可以右键单击图标并单击“打开新窗口”,但我希望“打开新窗口”为默认设置。

这是我今天早上实施的一个糟糕的黑客攻击,但我想学习一个更优雅的解决方案。

首先我创建了一个名为火狐浏览器并将其放在我的主目录 /home/user 中

#!/bin/bash

firefox &

我使文件可执行,然后使用 gnome-desktop-item-edit 命令创建一个 .desktop 文件并将其放在桌面上

$ sudo gnome-desktop-item-edit /home/user/Desktop --create-new

我输入了以下字段

Name: MyFox
Command: /home/user/openfirefox

这在我的桌面上创建了一个 .desktop 文件。现在,每当我双击 MyFox.desktop 文件时,每次都会打开一个新的 Firefox 窗口。

那么,有没有更优雅的方式来做我想做的事情?也许如果我编辑 /usr/share/applications/firefox.desktop,我可以更改默认值?也许我可以更改 Unity 设置?

注意:我也知道,您只需按转移键打开新窗口,但我只是想知道是否有办法将其设为默认。如果这是一个不切实际的要求,我只能用 shift 和 MyFox.desktop 来做

答案1

我认为您可以将.desktop在桌面上创建的文件放入启动器中。

如果没有,请将其放入~/.local/share/applications/,下次登录时它将出现在 Unity 中,然后您就可以将其放入启动器中。

答案2

我们将为您的用户帐户复制 Firefox 启动器,并通过-new-windowfirefox命令添加参数来修改默认操作。

首先,我们将原始文件复制firefox.desktop到主目录中的正确文件夹中:

cp /usr/share/applications/firefox.desktop ~/.local/share/applications/

其次,我们可以使用以下命令简单地修改正确的行:

sed -i 's/%u/-new-window %u/' ~/.local/share/applications/firefox.desktop

%u这将在文件中搜索出现的,并将其替换为-new-window %u。这样做之所以有效,是因为%u参数 place-holder 只在Exec默认操作的行中出现一次。修改后的行是:

  • 从:Exec=firefox %u
  • 到:Exec=firefox -new-window %u

重要提示:您需要注销并重新登录以重新启动 Unity!
否则,Unity 将无法识别主目录中的新文件,该文件应覆盖系统范围的文件,并且您将看不到任何变化。

相关内容