gedit
Jessie、Debian 8のGnomeデスクトップでテキストファイル(.txt)をダブルクリックするたびに、既存のgeditウィンドウとは無関係に新しいウィンドウを開くことができますか?
a.txt が既に gedit ウィンドウに開いているとし、Debian 8 Jessie の Gnome デスクトップで b.txt をダブルクリックします。残念ながら、デフォルトでは、b.txtはa.txtと同じウィンドウのタブで開きます。
b.txt
しかし、a.txtの既存のウィンドウとb.txtの新しいウィンドウの2つのウィンドウがあるように、geditの新しいウィンドウで開きたいと思います。
Gnomeが以下のように「-s」オプションを使用してgeditを呼び出す場合
gedit -s b.txt
これb.txt
は新しいウィンドウで開き、a.txtは既存のウィンドウに残ります。
しかし、Gnomeは "-s"オプションを使わずにデフォルトでgeditを呼び出すようです。
構成ファイル
/usr/share/applications/org.gnome.gedit.desktop
実行指示が含まれています。
Exec=gedit %U
だから私はそれを次のように変更しました。
Exec=gedit -s %U
次のコマンドを渡してコンピュータを再起動します。
cd /usr/share/applications
su # similar to sudo
mv org.gnome.gedit.desktop org.gnome.gedit.desktop.bak
perl -pe 's/Exec=gedit %U/Exec=gedit -s %U/' org.gnome.gedit.desktop.bak > org.gnome.gedit.desktop
diff org.gnome.gedit.desktop org.gnome.gedit.desktop.bak
しかし、このアプローチは失敗しました。 b.txt は、a.txt と同じウィンドウのタブで引き続き開きます。ついています。あなたの助けが必要です。
geditのデフォルトモードは「シングルウィンドウ、マルチタブ」です。 「マルチウィンドウ」モードが必要です。
しかし、以下の役に立たない方法は、geditを「タブなしシングルウィンドウ」モードに切り替えますが、これは私が望むものではありません。
gsettings set org.gnome.gedit.preferences.ui show-tabs-mode 'never'
この「gsettings」アプローチでは、デスクトップでb.txtをダブルクリックするたびに、geditは自動的にa.txtを閉じ、a.txtの既存のウィンドウを再利用してb.txtを開きます。したがって、これは「複数のウィンドウ」とは反対の「シングルウィンドウ、タブなし」モードです。
(ところで、「show-tabs-mode」のデフォルトは「auto」です。)
ベストアンサー1
Exec
.desktopファイルのキー変更が機能しないのは、geditがDBusを有効にしたためです。これは、セッションのDBusデーモンを介して開始され、オープンファイルを指定するためにアクティブ化可能なプログラムへの汎用DBusインターフェースを提供することを意味します。DBusActivatable
キーをに変更すると、これが発生するのを防ぎますfalse
。
また、システム全体のファイルを直接変更するよりも、変更したい.desktopファイルのコピーをホームディレクトリに作成し、それを使用してシステム全体のファイルを上書きすることをお勧めします。これにより、配布パッケージが更新されたときにシステムのバージョンが上書きされるのを防ぎます。これを行うには、単にコピーするだけ/usr/share/applications/org.gnome.gedit.desktop
です~/.local/share/applications/org.gnome.gedit.desktop
。このパスのファイルは、システム全体のディレクトリにある同じ名前のファイルを上書きします。
--new-window
また、新しいウィンドウを開くために使用できる2つのフラグ、または間には重要な違いもあります-s
。どちらもファイルを新しいウィンドウで開くようにしますが、-s
各ウィンドウは独自のプロセスにも属します。すべてのウィンドウは、使用時に--new-window
同じgeditプロセスを共有します。
最後に、ファイルマネージャで複数のファイルを選択して開くときに機能することを確認するには、キーをもう一度変更する必要がありますExec
。これは%U
、このコマンドの引数として複数のURLが許可されることを意味し、これはファイルマネージャが次のようにコマンドを実行することを意味しますgedit --new-window file1.txt file2.txt
。これにより、2つのタブを持つ新しいウィンドウが作成されます。これを今すぐ変更すると、%u
ファイルマネージャアプリケーションに単一のURLのみを引数として受け入れるように指示するので、毎回別のファイルを引数として使用してコマンドを複数回実行します。これについて詳しくは、次をご覧ください。Freedesktop Desktopはじめに仕様。