Noms d'applications du point de vue d'Ubuntu

8

Je me demandais comment Ubuntu est capable de trouver le nom correct d'une application. Par exemple, lorsque vous sélectionnez Open with -> Other applicationdans le menu contextuel, cette liste s'affiche.

liste d'applications

Comment un développeur apprend-il à Ubuntu le nom de son application et comment un autre développeur peut-il récupérer le nom d'une application dans le système? Je n'ai pas besoin de code réel, je m'intéresse plutôt au côté conceptuel des choses.


la source

Réponses:

8

Ceci est spécifié dans le fichier d'entrée de bureau d' une application . Les fichiers d'entrée de bureau sont des lanceurs pour l'application (le même format de fichier que les lanceurs que vous pouvez créer sur votre bureau) qui contiennent également diverses métadonnées. Lorsqu'une application est installée, ces fichiers d'entrée de bureau sont placés dans / usr / share / applications et je pense que leur contenu est également mis en cache pour améliorer la vitesse.

L'élément important de données défini ici est la liste des types MIME que l'application peut ouvrir. Ceci est défini dans la clé «MimeType» du fichier d'entrée du bureau. Par exemple, GIMP a les éléments suivants dans son entrée de bureau:

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;image/x-wmf;

Ceci spécifie une liste de types de fichiers que GIMP peut ouvrir.

Le nom de l'application est spécifié avec la touche 'Nom', par exemple.

Name=GIMP Image Editor

Comme vous pouvez le voir, il y a des icônes à côté des noms. Ceux-ci sont également spécifiés dans le fichier d'entrée du bureau sous la forme d'un nom d'icône (pour lequel le fichier correct est recherché à partir du thème d'icône) ou d'un chemin de fichier d'icône. GIMP a les éléments suivants:

Icon=gimp

Dans la boîte de dialogue 'Ouvrir avec -> Autre application', les applications recommandées sont les applications qui spécifient qu'elles sont capables d'ouvrir le type de fichier et les autres applications sont celles qui ne l'ont pas.

Une fois que vous avez choisi l'application, le gestionnaire de fichiers recherche comment exécuter l'application pour ouvrir le ou les fichiers. Il recherche la clé «Exec» dans l'entrée de bureau. GIMP possède la clé Exec suivante:

Exec=gimp-2.6 %U

Cela signifie que la commande:

gimp-2.6 %U

sera exécuté pour ouvrir le ou les fichiers %Uremplacés par une liste d'URL (normalement file: // urls) représentant les fichiers qui ont été sélectionnés pour l'ouverture. En plus de '% U', l'application peut utiliser '% u' pour une seule URL ou '% f' / '% F' pour un ou plusieurs chemins de fichier.

dv3500ea
la source
2

C'est assez simple. Il existe des fichiers .desktop qui contiennent ces informations:

[Desktop Entry]
Name=Image Viewer
Comment=Browse and rotate images
Exec=eog %U
Type=Application
Categories=GNOME;GTK;Graphics;RasterGraphics;Viewer;
MimeType=image/bmp;image/gif;image/jpeg;image/jpg;image/pjpeg;image/png;image/tiff;image/x-bmp;image/x-gray;image/x-icb;image/x-ico;image/x-png;image/x-portable-anymap;image/x-portable-bitmap;image/x-portable-graymap;image/x-portable-pixmap;image/x-xbitmap;image/x-xpixmap;image/x-pcx;image/svg+xml;image/svg+xml-compressed;image/vnd.wap.wbmp;

Vous pouvez les voir dans / usr / share / applications

Martin Ueding
la source