Come rimuovere le voci duplicate nella finestra di dialogo Nautilus "Apri con"?


14

Sarebbe bello essere mostrato il pulsante magico che mi aiuterà a rimuovere questo pugno nell'occhio:

testo alternativo

È Nautilus 2.30 su Debian (ed è stato lì nelle versioni precedenti, per quanto posso ricordare).

Risposte:


9

Questo elenco viene creato analizzando i file .desktop situati in:

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

Potrebbe esserci più di un caso d'uso per applicazione, ad esempio il lettore multimediale bansheeche ha tre file .desktop per impostazione predefinita:

$ 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

L'unica differenza tra questi file è il parametro iniziale e l'elenco MimeType.

  • banshee-1.desktop: File multimediali generali
  • banshee-1-audiocd.desktop: CD audio
  • banshee-1-media-player.desktopLettore audio (utilizzato anche da rhythmbox, vlc, e altri)

Quindi abbiamo tre "Banshee Media Player" nell'elenco "Apri con" (e forse anche nel "Menu principale").

L'altro modo di riempire questo spazio è creare file .desktop personali in ~/.local/share/applications. O manualmente o utilizzando uno strumento. alacarte(o fare clic con il tasto destro su 'Menu principale' -> 'Modifica menu') è uno di quelli.

Ogni volta che crei o sposti un'applicazione all'interno alacarte, viene inserito un nuovo file .desktop ~/.local/share/applications. La disabilitazione di un'applicazione la "rimuoverà" dal "Menu principale", ma non dall'elenco "Apri con".
Ma il pulsante 'Elimina' lo fa, creando una copia identica da /usr/share/applicationsdentro ~/.local/share/applicationse aggiungendoHidden=true al file .desktop, "sovrascrivendo" quindi i valori ereditati a livello di sistema.

L'eliminazione di due di queste voci dai alacarterisultati in:

$ 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

La rimozione di qualsiasi voce ~/.local/share/applicationsverrà ripristinata allo stato preesistente (trebanshee voci).

Se davvero non hai duplicati in quelle due cartelle, prova a rimuovere alacarteo riprodurre i duplicati con l' Hidden=trueopzione nei file .desktop corrispondenti.


7

Se guardi dentro ~/.local/share/applicationse /usr/share/applicationspuoi rimuovere i duplicati da quei due posti. Che ha fatto per me.


Nota che ho solo jhbuild.desktope mimeapps.listin ~ / .local / share / applicazioni . E non ci sono duplicati in / usr / share / applicazioni e sto ancora riscontrando il problema.
Tshepang,

2

So che questo thread è vecchio, ma questo è causato dal vino per molti.

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

ripulito questo casino per me.


1

Riconoscendo che questa discussione è vecchia, sono rimasto perplesso da questo problema. Personalmente ho ritenuto che eliminare i file o riprodurre "cleanup" non fosse necessario, così come lo era solo modificare le cose per l'utente corrente. Se esiste più di 1 file .desktop, ognuno non può avere una descrizione univoca? Per quanto riguarda Linux, alcuni sviluppatori di app hanno davvero trascurato cose semplici come questa?

Ho scoperto che se apri i file .desktop in un editor di testo, il campo Nome è ciò che viene visualizzato nel menu "Apri con". Quindi, per me, ho cercato i file .desktop che sapevo stessero creando il problema (ad esempio, i 3 file Banshee). Osservando ognuno di essi, la differenza ha quasi sempre a che fare con i mimetipi che la scorciatoia sta gestendo. Questo perché alcuni programmi preferiscono passare parametri diversi a seconda del mimetipo. Solo in 1 caso ho trovato voci duplicate il risultato di un aggiornamento dell'applicazione che non cancella il suo vecchio file .desktop

Grazie a quella scoperta, ho modificato i campi Nome delle voci duplicate conosciute per riflettere questo. Ad esempio, modificando il file .desktop che Banshee deve specificamente gestire i CD audio , ho fatto il nome letto come tale:

Banshee (CD audio)

Rhythmbox è anche un buon esempio, in quanto ha un file .desktop separato specifico per la gestione di lettori CD + MP3, ma ognuno si presenta allo stesso modo. La mia ipotesi è che il file 1 carica l'applicazione e mette a fuoco l'unità piuttosto che la tua libreria. Vale la pena rinominare, quindi, poiché non si vorrebbe che ciò accadesse durante la gestione dei file MP3 / OGG.

Ad ogni modo, penso che questo renda pulito il menu Apri con senza solo eliminare i file che sembrano essere utili. Se questi cambiamenti persistono o meno tra gli aggiornamenti dell'applicazione è ancora da vedere ... ma si tratta di modifiche semplici e veloci che potrebbero persino essere scritte. Il guscio aiuta enormemente in quel caso. Ad esempio, per vedere tutti i nomi di file (con percorso) con tali voci duplicate:

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

Dove "Banshee" è ovviamente ciò che appare più di una volta nel menu Apri con. Nell'esempio fornito in alto, l'app si chiamava Geany.

Con questo, puoi inviare i file risultanti direttamente al tuo editor. Se non sei un esperto di espressioni reg, ^ e $ specificano rispettivamente l'inizio e la fine della riga. Ciò impedisce al sistema di trovare linee come XGnome-FullName=Banshee Media Player Evita anche di trovare voci che potresti aver già corretto.


0

Una specie di scatto al buio, ma hai provato a fare clic su una delle voci e sul pulsante Rimuovi come mostrato nello screenshot? Se questo rimuove tutte le voci, puoi semplicemente aggiungerlo nuovamente.


0

Puoi anche consultare l'editor di menu "Applicazioni" di Gnome e rimuovere i duplicati da qui.


Hai mai visto duplicati lì?
Tshepang,

Sì. Alcune applicazioni creano duplicati che appaiono nella finestra di dialogo "Apri con" come Geany per te e posso rimuoverli da qui modificando il menu Applicazioni di Gnome (in cui sono presenti ma nascosti, quindi non li vedi semplicemente sfogliando il menu, solo nell'editor).
gentledevil,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.