Comment une application est choisie par rapport aux autres pour ouvrir un type de file particulier sous Linux

Plus tôt mes files text/xml étaient par défaut ouverts par firefox je pense. Pas sûr de cela parce que je ne me souviens pas exactement. Ensuite, je pense que j'ai installé geany et puis mes files text/xml ont toujours été ouverts par défaut par Geany jusqu'à l'installation de google-chrome . Maintenant, je vois qu'ils sont par défaut ouverts par google-chrome .

Jusqu'à présent, je n'ai pas pris la peine de vérifier quelles sont les applications par défaut associées à un type de file particulier.

Maintenant, quand je vérifie mon file /usr/share/applications/defaults.list je vois ceci:

 text/html=firefox.desktop;google-chrome.desktop text/xml=google-chrome.desktop; application/xhtml_xml=google-chrome.desktop; 

Mon browser par défaut est toujours défini sur firefox . La première ligne ci-dessus montre à la fois Firefox et Chrome pour le text/html mais pour le text/xml c'est seulement Chrome.

Je pense plus tôt que c'était Geany pour text/xml car c'est la raison par défaut de Geany pour ouvrir les files XML. Je ne suis pas sûr de cela parce que je n'ai jamais vérifié.

Des questions

  • Je me request comment ça se passe. Comment une application particulière est choisie plutôt qu'une autre.
  • Aussi comment le point-virgule ( ";" ) est lu dans le file.

J'utilise l'environnement de bureau Fedora 20-Mate.

Requête basée sur Réponse par slm

Basé sur la réponse par @slm, je vois mes types de files XML sont associés à Geany. Mais je les vois s'ouvrir avec Chrome à la place.

 $ xdg-mime query default application/xml geany.desktop $ 

Comme je l'ai mentionné ci-dessus, mon file /usr/share/applications/defaults.list montre

 text/xml=google-chrome.desktop; 

Alors, quelle est la différence et qui devrait primer?

J'utilise habituellement l'outil de command line xdg-mime pour déterminer quelles applications sont associées à un type MIME donné.

 $ xdg-mime query filetype IMAGE.PNG image/png $ xdg-mime query default image/png shotwell-viewer.desktop shutter.desktop 

Vous pouvez faire ceci une seule command comme ceci:

 $ xdg-mime query default $(xdg-mime query filetype IMAGE.PNG) shotwell-viewer.desktop shutter.desktop 

Vous pouvez modifier la valeur par défaut en utilisant mimeopen comme ceci:

 $ mimeopen -d ~/test.pdf Please choose a default application for files of type application/pdf 1) E-book Viewer (calibre-ebook-viewer) 2) Document Viewer (evince) 3) Xournal (xournal) 4) GNU Image Manipulation Program (gimp) 5) Xpdf PDF Viewer (xpdf) 6) Print Preview (evince-previewer) 7) Inkscape (inkscape) 8) calibre (calibre-gui) 9) Other... use application #2 Opening "/home/saml/Downloads/test.pdf" with Document Viewer (application/pdf) 

Remarque: en passant, les points-virgules sont là car il peut y avoir plusieurs associations pour un type MIME donné. Ainsi text/xml pourrait avoir google-chrome.desktop;firefox.desktop; car sa valeur indiquerait qu'il y a 2 applications qui peuvent gérer ce type particulier.

Les references

  • Comment get une list des applications associées à un file en utilisant la command line
  • Existe-t-il une command "open with" pour la command line?
  • xdg-open ouvre une application différente de celle spécifiée par la requête xdg-mime