Le gestionnaire de fichiers (Nautilus, par défaut) utilise le type MIME d'un fichier pour déterminer le programme avec lequel l'ouvrir. Quand une application est installée, elle peut spécifier les types MIME qu’elle peut ouvrir et la commande à utiliser pour ouvrir les fichiers du fichier .desktop qui est placé dans /usr/share/applications
. C'est le fichier utilisé pour les menus, les raccourcis sur le bureau, etc.
Par exemple, GIMP contient le fichier .desktop suivant:
[Desktop Entry]
Version=1.0
Type=Application
Name=GNU Image Manipulation Program
GenericName=Image Editor
Comment=Create images and edit photographs
Exec=gimp-2.7 %U
TryExec=gimp-2.7
Icon=gimp
Terminal=false
Categories=Graphics;2DGraphics;RasterGraphics;GTK;
X-GNOME-Bugzilla-Bugzilla=GNOME
X-GNOME-Bugzilla-Product=GIMP
X-GNOME-Bugzilla-Component=General
X-GNOME-Bugzilla-Version=2.7.2
X-GNOME-Bugzilla-OtherBinaries=gimp-2.7
StartupNotify=true
MimeType=application/postscript;application/pdf;image/bmp;image/g3fax;image/gif;image/x-fits;image/pcx;image/x-portable-anymap;image/x-portable-bitmap;image/x-portable-graymap;image/x-portable-pixmap;image/x-psd;image/x-sgi;image/x-tga;image/x-xbitmap;image/x-xwindowdump;image/x-xcf;image/x-compressed-xcf;image/tiff;image/jpeg;image/x-psp;image/png;image/x-icon;image/x-xpixmap;image/svg+xml;application/pdf;image/x-wmf;image/jp2;image/jpeg2000;image/jpx;image/x-xcursor;
Voir le MimeType
champ - cela répertorie les types MIME pris en charge. Le Exec
champ indique au système d'utiliser la commande gimp-2.7 %U
, en remplaçant "% U" par les fichiers à ouvrir. (Remarque: GIMP 2.7 est une version que j'ai installée à partir d'un PPA, elle est donc supérieure à la version actuelle dans les référentiels Ubuntu).
Lorsque le package d'application est installé, le système extrait ces données de type MIME dans une base de données plus facilement accessible, car la recherche dans chaque fichier .desktop prendrait trop de temps si cette opération était effectuée chaque fois qu'un fichier était ouvert.
Cela indique au système quelles applications peuvent être utilisées pour ce type MIME et fournit les applications dans la liste "Ouvrir avec". La valeur par défaut est définie ailleurs. Le fichier /usr/share/applications/defaults.list
fournit les informations sur les valeurs par défaut du système. Sauf indication contraire de votre part, ce sont les applications utilisées lorsque vous «ouvrez» un fichier.
/usr/share/applications
.desktop
fichiers, existe-t-il une commande pour recréer cette base de données MIME afin de voir les nouvelles associations en action?sudo update-desktop-database
Voir jarrpa.net/2011/10/28/…/usr/local/share/applications
. Je pense que gtk y regarde aussi, par défaut. C'est le cas sur mon système, mais il a été mis à niveau (non réinstallé) depuis Ubuntu 7.04 ou à peu près.Pour compléter l'excellente réponse de dv3500ea, j'aimerais ajouter quelques informations sur ce qui se passe lorsque vous changez d'associations.
Alors que le fichier defaults.list (que vous pouvez localiser en tapant "localiser le fichier defaults.list") fournit la liste des applications associées à chaque type MIME, toutes les personnalisations que vous apportez sont stockées dans votre répertoire personnel, dans ~ / .local /. share / applications / mimeapps.list. Ainsi, si vous ajoutez ou supprimez des associations ou modifiez l'association par défaut, ce fichier est mis à jour.
Le Guide d’administration système de GNOME Desktop disponible à l’adresse http://library.gnome.org/admin/system-admin-guide/stable/ ne semble pas traiter de mimeapps.list, mais j’ai trouvé la description suivante sur http: //live.gnome. .org / SysAdminGuideUpdate :
la source
mimeapps.list
est remplacé par des entrées dans le fichierdefaults.list
.~/.local/share/applications/mimeapps.list
entrer dans s / vlc / mplayer / , et des processus en cours, tels que pcmanfm, ont enregistré les modifications sans redémarrer. (mplayer.desktop ne fait que lancer mplayer. J'imagine que j'en avais un qui traînait depuis une ancienne installation de mplayer installée dans / usr / local. IDK si vous en aviezMimeType=list;
besoin ou pas.mimeapps.list
pouvez vous trouver n'importe où dans le chemin de recherche suivant: specifications.freedesktop.org/mime-apps-spec/…J'ai trouvé que sur mon système (Debian Jessie), il y avait aussi
~/.config/mimeapps.list
une association que j'avais accidentellement créée pour ouvrir un type de fichier spécifique avec gedit. Aucune des méthodes standard pour corriger cela (paramètres de l'application par défaut, Thunar's open with property) ne le reflétait pas, mais gedit était l'application par défaut.J'ai pu supprimer la ligne
~/.config/mimeapps.list
et l'application correcte ouvre maintenant le fichier.la source
~/.config/mimeapps.list
.mimeapps.list
pouvez vous situer n'importe où dans le chemin de recherche suivant: specifications.freedesktop.org/mime-apps-spec/…J'ai trouvé ce lien concernant l'association par défaut, cela pourrait être utile. https://wiki.archlinux.org/index.php/Default_Applications
pour une association globale:
par association d'utilisateurs:
La syntaxe est la suivante:
La section [Added Associations] est utilisée pour spécifier les applications préférées (par défaut) avec une préférence décroissante. ce qui signifie que desktopfile1 est le plus préféré et desktopfileN est le moins préféré.
La section [Associations supprimées] permet de supprimer explicitement les associations héritées précédemment.
la source
/usr/share/applications/mimeapps.list
n'existe pas.mimeapps.desktop
pardefaults.desktop
J'ai pu créer une association comme celle-ci:
Vous pouvez également supprimer des associations et faire d'autres choses:
man xdg-mime
Je n'avais pas besoin de courir
sudo update-desktop-database
.la source
Créez un fichier
truecrypt.desktop
dans~/.local/share/applications
les lignes suivantes:puis éditez le fichier
~/.local/share/applications/mimeapps.list
et ajoutez la ligne suivante:J'ai découvert le type mime de Truecrypt en suivant cette commande:
la source
mimeapps.list
chemin de rechercheD'autres ont mentionné ce fichier, mais aucun n'a expliqué son emplacement avec précision.
Le standard freedesktop.org dit à l' adresse https://specifications.freedesktop.org/mime-apps-spec/mime-apps-spec-1.0.html :
Les valeurs par défaut de ces variables d’environnement sont ensuite indiquées à l’ adresse https://specifications.freedesktop.org/basedir-spec/basedir-spec-0.6.html :
$XDG_DATA_HOME
:$HOME/.local/share
$XDG_CONFIG_HOME
:$HOME/.config
$XDG_DATA_DIRS
: aucun, ajouté àXDG_DATA_HOME
$XDG_CONFIG_DIRS
: aucun, ajouté àXDG_CONFIG_HOME
Les anciennes versions d'Ubuntu peuvent ne pas être vérifiées
~/.config
, alors assurez-vous d'essayer~/.local/share
également.Des commandes comme:
éditera automatiquement ces fichiers.
la source
Pour tous les utilisateurs:
Chaque utilisateur a un fichier de configuration pour remplacer ces valeurs par défaut:
voir aussi https://specifications.freedesktop.org/mime-apps-spec/mime-apps-spec-1.0.1.html pour connaître les emplacements pouvant être utilisés pour remplacer des valeurs par défaut.
Vous devez connaître le type mime du fichier dont vous souhaitez modifier l'association.
De plus, toutes les associations peuvent être gérées-modifiées en ligne de commande en utilisant:
la source
Freedesktop.org (anciennement appelé le groupe de bureaux X, d'où l'abréviation "XDG") est le groupe qui utilise actuellement les normes X de ce type (en savoir plus sur Wikipedia ).
La réponse de warvariuc mentionne déjà l' utilisation de xdg-mime comme:
Après avoir beaucoup joué avec les éditeurs d’image et les lecteurs, je me suis retrouvé avec différents lecteurs pour différents types d’image avec une cohérence quasi nulle, en particulier parmi les types d’images plus rares.
J'ai pris la commande ci-dessus et l'ai affectée à chacun des types MIME contrôlés par les visualiseurs d'images, puis en ai créé un nouveau
image-viewer.desktop
en clonant l'un d'entre eux (facultatif, vous pouvez simplement réutiliser votre favori). Ensuite, j'ai vérifié manuellement qu'aucun des types MIME ne serait incompatible avec ma nouvelle application préférée. Enfin, j'ai défini cette application comme étant la valeur par défaut pour tous les types MIME des autres applications:Cela examine les
.desktop
fichiers de chacun des téléspectateurs ( Ristretto , Geeqie et GThumb dans mon cas), extrait la définition MIME (qui est préfacée parMimeType=
et contient ensuite une liste délimitée par des points-virgules), supprime le libellé de la préface (précédemment mis en correspondance) et divise la liste en une entrée par ligne.sort -u
puis supprime les lignes redondantes, puis on leur confiexdg-mime
les nouvelles valeurs par défaut.(Si vous voulez tester cela avant de le lancer en direct, changez
xargs
enxargs echo
et il imprimera la commande résultante au lieu de l'exécuter.)Cette technique devrait fonctionner pour tout ce que vous souhaitez récupérer pour une application cible. Vous n'avez même pas besoin de créer un nouveau
.desktop
fichier (vous pouvez utiliser un fichier existant). J'ai fait cette étape supplémentaire de sorte que, lorsque je change inévitablement d'allégeance entre les prévisualisateurs d'images, je dois simplement changer ce fichier.la source
Sur Ubuntu 18.04, j'ai constaté que l'ordre de priorité était le suivant: du plus fort au plus faible:
~/.local/share/applications/defaults.list
/usr/share/applications/defaults.list
~/.config/mimeapps.list
("Open With Other Application" mettra à jour cela)~/.local/share/applications/mimeapps.list
mimeinfo.cache
registre des applications compatibles, générée à partir des.desktop
fichiers présents dans/usr/share/applications
et/usr/local/share/applications
, et pouvant être régénérée à l'aide deupdate-desktop-database
./etc/gnome/defaults.list
la source