複数のワークスペースを使用しています。 UnityツールバーのFirefoxアイコンをクリックすると、Firefoxが現在開いているワークスペースが表示され、便利な機能です。ただし、Firefoxのアイコンをクリックするたびに、Firefoxで新しいウィンドウを開きたいのですが。アイコンを右クリックして[新しいウィンドウを開く]をクリックできることはわかっていますが、[新しいウィンドウを開く]をデフォルトにしたいのですが。
ここに私が今朝実装したひどいハックがありますが、もっとエレガントな解決策を学びたいです。
まず、openfirefoxというスクリプトを作成し、ホームディレクトリ/ 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で対処します
.desktop
ファイル-デスクトップで作成した-ランチャー内。
そうでない場合は、~/.local/share/applications/
、次のログイン時にUnityに表示され、Launcherに配置できます。
ユーザーアカウントのFirefoxランチャーのコピーを作成し、firefox
コマンドに-new-window
引数を追加してデフォルトのアクションを変更します。
まず、元の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
引数のプレースホルダーは、デフォルトアクションのExec
行に1回だけ表示されるため、これは機能します。変更された行は次のとおりです。
Exec=firefox %u
Exec=firefox -new-window %u
重要:いったんログアウトしてから再度ログインしてUnityを再起動する必要があります!
それ以外の場合、Unityはシステム全体のファイルをオーバーライドする必要のある新しいファイルがホームディレクトリにあることを認識せず、変更は表示されません。