¿Cómo eliminar entradas duplicadas en el diálogo Nautilus 'Abrir con'?


14

Sería bueno que me mostraran el botón mágico que me ayudará a eliminar esta monstruosidad:

texto alternativo

Es Nautilus 2.30 en Debian (y ha estado allí en versiones anteriores hasta donde puedo recordar).

Respuestas:


9

Esta lista se crea analizando archivos .desktop ubicados en:

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

Puede haber más de un caso de uso por aplicación, por ejemplo, el reproductor multimedia bansheeque tiene tres archivos .desktop de forma predeterminada:

$ 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

La única diferencia entre esos archivos es el parámetro de inicio y la lista MimeType.

  • banshee-1.desktop: Archivos multimedia generales
  • banshee-1-audiocd.desktop: CD de audio
  • banshee-1-media-player.desktopReproductor de audio (también utilizado por rhythmbox, vlc, y otros)

Así que tenemos tres 'Banshee Media Player' en la lista 'Abrir con' (y quizás también en el 'Menú principal').

La otra forma de llenar este espacio es creando archivos personales .desktop ~/.local/share/applications. De forma manual o mediante el uso de una herramienta. alacarte(o haga clic con el botón derecho en 'Menú principal' -> 'Editar menú') es uno de esos.

Cada vez que crea o mueve una aplicación dentro alacarte, se coloca un nuevo archivo .desktop dentro ~/.local/share/applications. Deshabilitar una aplicación la "eliminará" del 'Menú principal', pero no de la lista 'Abrir con'.
Pero el botón 'Eliminar' lo hace, al crear una copia idéntica desde /usr/share/applicationsdentro ~/.local/share/applicationsy agregar Hidden=trueal archivo .desktop, "sobrescribiendo" los valores heredados de todo el sistema.

Eliminar dos de esas entradas de los alacarteresultados en:

$ 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 eliminación de cualquier entrada ~/.local/share/applicationsrevertirá al estado preexistente (tres bansheeelementos).

Si realmente no tiene ningún duplicado en esas dos carpetas, intente eliminar cualquier duplicado alacarteo jugar con la Hidden=trueopción en los archivos .desktop correspondientes.


7

Si observa ~/.local/share/applicationsy /usr/share/applicationspuede eliminar duplicados de esos dos lugares. Eso lo hizo por mí.


Tenga en cuenta que solo tengo jhbuild.desktopy mimeapps.listen ~ / .local / share / aplicaciones . Y, no hay engaños en / usr / share / aplicaciones , y todavía estoy experimentando el problema.
tshepang

2

Sé que este hilo es viejo, pero esto es causado por el vino para muchos.

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

Limpió este desastre para mí.


1

Reconociendo que este hilo es antiguo, este problema me dejó perplejo. Personalmente, sentí que era innecesario eliminar los archivos o jugar "limpieza", ya que solo estaba retocando cosas para el usuario actual. Si hay más de 1 archivo .desktop, ¿no puede cada uno tener una descripción única? En lo que respecta a Linux, ¿ciertos desarrolladores de aplicaciones han pasado por alto cosas simples como esta?

Descubrí que si abres los archivos .desktop en un editor de texto, el campo Nombre es lo que se muestra en el menú "Abrir con". Entonces, para mí, busqué los archivos .desktop que sabía que creaban el problema (por ejemplo, los 3 archivos Banshee). Al observar cada uno, la diferencia casi siempre tuvo que ver con qué tipos de mime está manejando el acceso directo. Esto se debe a que algunos programas prefieren pasar diferentes parámetros según el tipo MIME. Solo en 1 instancia encontré entradas duplicadas como resultado de una actualización de la aplicación que no limpió su antiguo archivo .desktop

Armado con ese descubrimiento, cambié los campos de Nombre de las entradas duplicadas conocidas para reflejar esto. Por ejemplo, editando el archivo .desktop que Banshee tiene específicamente para manejar CD de audio , hice que el nombre se leyera así:

Banshee (CD de audio)

Rhythmbox también es un buen ejemplo, ya que tiene un archivo .desktop separado específicamente para manejar reproductores de CD + MP3, pero cada uno muestra lo mismo. Supongo que el archivo 1 carga la aplicación y se enfoca en la unidad en lugar de en su biblioteca. Vale la pena renombrarlo, ya que no querrá que esto suceda al manejar sus archivos MP3 / OGG.

De todos modos, creo que esto hace que el menú Abrir con se vea limpio sin solo eliminar archivos que parecen ser útiles. Aún no se ha visto si estos cambios persisten o no entre las actualizaciones de la aplicación ... pero son ediciones simples y rápidas que incluso podrían ser programadas. El caparazón ayuda enormemente en ese caso. Por ejemplo, para ver todos los nombres de archivo (con ruta) con tales entradas duplicadas:

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

Donde "Banshee" es, por supuesto, lo que aparece más de una vez en el menú Abrir con. En el ejemplo proporcionado arriba, la aplicación se llamaba Geany.

Con esto, puede enviar los archivos resultantes directamente a su editor. Si no es un experto en expresiones de registro, ^ y $ especifican el comienzo de la línea y el final de la línea, respectivamente. Esto evita que el sistema encuentre líneas como XGnome-FullName=Banshee Media Player También evita que encuentre entradas que ya haya arreglado.


0

Una especie de tiro en la oscuridad, pero ¿has intentado hacer clic en una de las entradas y hacer clic en el botón Eliminar como se ve en la captura de pantalla? Si esto elimina todas las entradas, puede volver a agregarlo.


0

También puede buscar en el editor de menú "Aplicaciones" de Gnome y eliminar los duplicados desde aquí.


¿Alguna vez has visto duplicados allí?
tshepang

Si. Algunas aplicaciones crean duplicados que aparecen en el cuadro de diálogo "abrir con" como geany para usted y puedo eliminarlos desde aquí editando el menú de aplicaciones de gnome (en el que están presentes pero ocultos, por lo que no los ve simplemente navegando por el menú, solo en editor).
gentledevil
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.