Vous n'êtes pas identifié(e).
L'icône rouge permet de télécharger chaque page du wiki visitée au format PDF et la grise au format ODT →
- Pour choisir, voir les autres Tags possibles dans l'Atelier.
Nota :
Contributeurs, les sont là pour vous aider, supprimez-les une fois le problème corrigé ou le champ rempli !
Souvent, on aime bien changer l'application qui est utilisée lorsque qu'on ouvre un fichier depuis son gestionnaire de fichier (nautilus, dolphin, caja, pcmanfm).
La plupart du temps, lorsque que le type de fichier est courant, cela se fait facilement
Mais parfois, cela ne fonctionne pas comme on voudrait.
J'ai notamment eu des difficultés lorsque j'ai voulu définir gvim pour ouvrir les fichiers avec l'extension .dsp
; j'avais la moitié des mes fichiers.dsp
qui s'ouvrait avec gvim et l'autre qui s'ouvrait avec leafpad.
En effet, contrairement aux systèmes Windows, les types de fichiers ne sont pas uniquement déterminés par les extensions.
Il me fallait donc d'abord créer un type MIME pour mon extension avant de pouvoir y associer une application par défaut.
L'écriture de ce tutoriel à été motivée par la difficulté à trouver la bonne manière de faire.
Lors de mes recherches, j'ai en effet trouvé plein de réponses qui n'étaient plus d'actualité.
Les informations qui concerne les types mime sont rassemblé dans des dossiers mime
qui se trouvent à plusieurs endroit :
XDG_DATA_HOME
ou dans le dossier $HOME/.local/share
si cette variable n'est pas défini. Cela permet de définir un type mime pour un utilisateur en particulier.XDG_DATA_DIRS
ou dans les dossiers /usr/local/share
et /usr/share
si cette variable n'est pas défini. Cela permet de définir un type mime pour tout le monde.
Dans cet exemple, on va définir un type mime pour l'utilisateur courant, on va donc dans le dossier ~/.local/share/mime
.
Ensuite, dans le dossier packages
, créer un nouveau fichier x-extension-dsp.xml
.
Le nom du fichier n'a pas d'importance, vous pouvez le nommer comme vous voulez.
Ce fichier aura le contenu suivant :
<?xml version="1.0" encoding="UTF-8"?> <mime-info xmlns="http://www.freedesktop.org/standards/shared-mime-info"> <mime-type type="text/x-dsp"> <comment>dsp file</comment> <glob-deleteall/> <glob pattern="*.dsp"/> </mime-type> </mime-info>
Les éléments importants sont :
<mime-type type=“text/x-dsp”>
* début de définition du type MIME. type
contient le nom complet du type MIME. text/x-dsp
, le type principal est text
et le sous-type est x-dsp
. x-
de x-dsp
est une convention qui indique qu'il ne s'agit pas d'un sous-type officiel.comment
: bloc contenant une description courte du type MIME (ex : “PNG image”).glob-deletetall
: ne pas garder les “pattern” défini précédemment.glob pattern=“*.dsp”
: l'attribut pattern
contient un motif qui permet de déterminer le type MIME en fonction du nom de fichier. Ici on indique que tous les fichiers se terminant par “.dsp” sont du type “text/x-dsp”.Une fois votre fichier xml terminé utilisez la commande suivante :
update-mime-database ~/.local/share/mime
vérification avec un fichier .dsp :
xdg-mime query filetype un_fichier.dsp
Si la commande répond text/x-dsp
, c'est gagné, vous avez créé votre propre type MIME. Vous pouvez maintenant y associer des applications.
Si vous voulez avoir plus d'information sur la création de type mime (notamment sur comment créer un type mime basé sur le contenu d'un fichier )suivez ce lien (anglais) https://specifications.freedesktop.org/shared-mime-info-spec/shared-mime-info-spec-0.18.html#idm140001680036896
L'association entre un type mime et des applications va influencer les applications proposées pour ouvrir un fichier lorsque vous faite un clique droit dessus depuis votre navigateur de fichier. Les informations d'associations entre un types mime et une application se trouvent dans deux types d'endroit, les fichiers .desktop et les fichiers mimeapps.list.
cette partie est purement explicative, on ne vas rien modifier. Retenez juste les dossiers où on trouve les .desktop, on y fait référence par la suite.
Les fichiers .desktop servent à décrire certaine information à propos d'un programme : son nom, comment il apparaît dans les menus, son icône … ainsi que les types mime supporté par cette application. On trouve ces fichiers dans des dossiers applications qu'on trouve à plusieurs endroit :
XDG_DATA_HOME
ou dans le dossier $HOME/.local/share
si cette variable n'est pas défini. Ces informations concerne l'utilisateur courant uniquement.XDG_DATA_DIRS
ou dans les dossiers /usr/local/share
et /usr/share
si cette variable n'est pas défini. Ces informations concerne tout le monde.Exemple de fichier desktop :
[Desktop Entry] Name=Vim GenericName=Text Editor ... TryExec=vim Exec=vim %F Terminal=true Type=Application Keywords=Text;editor; Icon=gvim Categories=Utility;TextEditor; StartupNotify=false MimeType=text/english;text/plain;text/x-makefile;text/x-c++hdr;text/x-c++src;text/x-chdr;text/x-csrc;text/x-java;text/x-moc;text/x-pascal;text/x-tcl;text/x-tex;application/x-shellscript;text/x-c;text/x-c++;
Dans l'exemple ci dessus MimeType
déclare différent type mime pouvant être ouvert avec vim.
Pour plus d'info sur les fichiers desktop :
Pour commencer, il y à deux types de fichiers mimeapps.list :
$desktop-mimeapps.list
, ils servent uniquement à déclarer des applications par défaut en fonction du gestionnaire de bureau. $desktop
et à remplacer par le nom d'un gestionnaire de bureau en minuscule (kde, gnome, xfce …)mimeapps.list
, ils sont valable quelque soit le gestionnaire de bureau. Ils servent à déclarer des nouvelles associations, à en supprimer des existantes et à déclarer des applications par défaut.On trouve ces fichiers à plusieurs endroits :
$XDG_CONFIG_HOME
ou dans $HOME/.config
si la variable n'est pas défini. Propre à l'utilisateur. C'est probablement le fichier mimeapps.list
de ce dossier qui sera modifié lorsque vous définissez une application par défaut depuis un navigateur de fichier.$XDG_CONFIG_DIRS
ou dans /etc/xdg
si cette variable n'est pas défini. Valable pour tout les utilisateurs.$XDG_DATA_HOME
ou dans $HOME/.local/share
si la variable n'est pas défini. Propre à l'utilisateur, déprécié.$XDG_DATA_DIRS
ou dans usr/local/share/
et /usr/share/
si cette variable n'est pas défini. On trouve ici les configurations par défaut fourni par la distribution.Les fichiers mimeapps.list peuvent contenir 3 sections : une section pour ajouter des associations, une sections pour enlever des associations, et une section pour définir des applications par défaut.
la section concernée commence par [Added Associations]
. Pseudo-exemple pour la syntax :
[Added Associations] mimetype1=foo1.desktop;foo2.desktop;foo3.desktop; mimetype2=foo4.desktop;
Les associations ainsi défini ajouteront généralement des applications dans la liste qui affiche lorsque vous faite un clique-droit sur un fichier depuis un navigateur de fichier.
la section concernée commence par [Removed Associations]
. Pseudo-exemple pour la syntax :
[Removed Associations] mimetype1=foo5.desktop;
Les entrée ainsi défini supprimerons généralement des applications dans la liste qui affiche lorsque vous faite un clique-droit sur un fichier depuis un navigateur de fichier. Cela sert notamment à masquer une association défini dans un fichier .desktop.
la section concernée commence par [Default Applications]
. Pseudo-exemple pour la syntaxe :
[Default Applications] mimetype1=default1.desktop;default2.desktop;
Dans ce pseudo exemple, lorsque vous tentez d'ouvrir un fichier de type mimetype1
, si le fichier default1.desktop
sera utilisée pour ouvrir le fichier. Sinon, default2.desktop
est utilisé. Enfin si aucun fichier .desktop n'est trouvé ou défini, les associations sont utilisées.
Ce tuto est basée sur les spécifications freedesktop.org, notamment: