「アプリケーションで開く」Nautilusダイアログで重複するエントリを削除する方法


14

この目障りなものを取り除くのに役立つ魔法のボタンが表示されてうれしいです:

代替テキスト

Debian のNautilus 2.30です(以前のバージョンでは、私が覚えている限り、そこにありました)。

回答:


9

このリストは、次の場所にある.desktopファイルを分析して作成されます。

/usr/share/applications
~/.local/share/applications

アプリケーションごとに複数のユースケースが存在する可能性があります。たとえば、bansheeデフォルトで3つの.desktopファイルを持つメディアプレーヤーを例にとります。

$ ls -1 /usr/share/applications/banshee*
/usr/share/applications/banshee-1-audiocd.desktop
/usr/share/applications/banshee-1.desktop
/usr/share/applications/banshee-1-media-player.desktop

これらのファイルの唯一の違いは、開始パラメーターとMimeTypeリストです。

  • banshee-1.desktop:一般的なメディアファイル
  • banshee-1-audiocd.desktop:オーディオCD
  • banshee-1-media-player.desktopオーディオプレーヤー(またが使用するrhythmboxvlcなど)

したがって、「開く」リスト(および「メインメニュー」)には3つの「Banshee Media Player」があります。

このスペースを埋めるもう1つの方法は、個人用の.desktopファイルをで作成することです~/.local/share/applications。手動で、またはツールを使用して。alacarte(または[メインメニュー]-> [メニューの編集]を右クリック)もその1つです。

alacarteでアプリケーションを作成または移動するたびに、新しい.desktopファイルが内に配置され~/.local/share/applicationsます。アプリケーションを無効にすると、「メインメニュー」から「削除」されますが、「アプリケーションから開く」リストからは削除されません。
しかし、「削除」ボタンは、.desktopファイルに同一のコピーを作成/usr/share/applications~/.local/share/applicationsて追加するHidden=trueことにより、システム全体の継承値を「上書き」します。

これらのエントリのうち2つを削除すると、次のalacarte結果が得られます。

$ ls -1 ~/.local/share/applications/banshee*
/home/user/.local/share/applications/banshee-1-audiocd.desktop
/home/user/.local/share/applications/banshee-1-media-player.desktop

エントリを削除する~/.local/share/applicationsと、既存の状態(3つのbansheeアイテム)に戻ります。

これらの2つのフォルダーに重複がない場合は、対応する.desktopファイルのオプションから重複を削除するかalacarte、遊んでみてくださいHidden=true


7

調べて~/.local/share/applications/usr/share/applicationsこれらの2つの場所から重複を削除できる場合。それは私のためにそれをしました。


私が唯一持っていることを注意jhbuild.desktopし、mimeapps.list〜/ .localの/ share / applicationsに。また、/ usr / share / applicationsにはだまされていないため、まだ問題が発生しています。
シェパン

2

私はこのスレッドが古いことを知っていますが、これは多くの人にとってワインが原因です。

rm ~/.local/share/applications/wine-extension*

この混乱をクリーンアップしてくれました。


1

このスレッドが古いことを認めて、私は自分でこの問題に困惑しました。個人的には、ファイルを削除したり、「クリーンアップ」を再生したりする必要はなく、現在のユーザー向けに微調整するだけだと感じました。複数の.desktopファイルがある場合、それぞれに一意の説明を付けることはできませんか?Linuxに関しては、特定のアプリ開発者はこのような単純なことを本当に見落としていましたか?

テキストエディタで.desktopファイルを開くと、[ 名前を付けて開く]メニューに表示される[ 名前]フィールドが見つかりました。そのため、私にとっては、問題を作成していることがわかっている.desktopファイル(たとえば、3つのBansheeファイル)を探しました。それぞれを見ると、違いはほとんどの場合、ショートカットが処理しているMIMEタイプに関係していました。これは、一部のプログラムがmimetypeに応じて異なるパラメーターを渡すことを好むためです。1つのインスタンスでのみ、古い.desktopファイルをクリーンアップせずにアプリケーションのアップグレードの結果として重複エントリを見つけました

その発見を武器に、既知の重複エントリの名前フィールドを変更して、これを反映させました。たとえば、BansheeがオーディオCDを処理するために特別に作成した.desktopファイルを編集するには、名前をそのように読みました。

バンシー(オーディオCD)

Rhythmboxも良い例です。CD+ MP3プレーヤーを処理するための個別の.desktopファイルがありますが、それぞれが同じように表示されます。私の推測では、1つのファイルがアプリケーションをロードし、ライブラリではなくユニットに焦点を合わせています。これは、MP3 / OGGファイルを処理するときにこれを発生させたくないので、名前を変更する価値があります。

とにかく、これは有用と思われるファイルを削除することなく、Open Withメニューがきれいに見えると思います。これらの変更がアプリケーションの更新間で持続するかどうかはまだわかりません...しかし、それらはスクリプト化することさえできる簡単で迅速な編集です。その場合、シェルは非常に役立ちます。たとえば、そのような重複したエントリを持つすべてのファイル名(およびパス)を表示するには:

grep -rl "^Name=Banshee$" /usr/share/applications

「Banshee」はもちろん、Open Withメニューに複数回表示されるものです。上に示した例では、アプリはGeanyと呼ばれていました。

これにより、結果ファイルをエディターに直接送信できます。あなたが正規表現の専門家でない場合、^および$はそれぞれ行頭と行末を指定します。これにより、システムは次のような行を検出しXGnome-FullName=Banshee Media Player なくなります。また、すでに修正されている可能性のあるエントリを検出できなくなります。


0

暗闇でのショットのようなものですが、エントリの1つをクリックして、スクリーンショットに表示されている[削除]ボタンをクリックしてみましたか?これですべてのエントリが削除された場合は、再度追加するだけで済みます。


0

Gnomeの[アプリケーション]メニューエディターを見て、ここから重複を削除することもできます。


重複を見たことがありますか?
シェパン

はい。一部のアプリケーションは、geanyのような「開く」ダイアログに表示される複製を作成します。gnomeの「アプリケーション」メニューを編集することで、ここから削除できます。メニュー、エディターのみ)。
ジェントルデビル
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.