Имена приложений с точки зрения Ubuntu

Я задавался вопросом, как Ubuntu может выяснить имя собственное приложения. Например, когда Вы выбираете Open with -> Other application из контекстного меню Вам дарят этот список.

app list

Как разработчик преподает Ubuntu название их приложения, и как другой разработчик может получить название приложения от системы? Мне не нужен фактический код, скорее я просто интересуюсь концептуальной стороной вещей.

8
задан 9 August 2011 в 12:00

2 ответа

Это указано в настольном файле записи приложения. Настольные файлы записи являются средствами запуска для приложения (тот же формат файла как средства запуска, которые можно создать на рабочем столе), которые также содержат различные метаданные. Когда приложение установлено, эти настольные файлы записи помещаются в/usr/share/applications, и я думаю, что их содержание также кэшируется для улучшения скорости.

Важная часть данных, определенных здесь, является списком типов MIME, которые может открыть приложение. Это определяется в 'MimeType', вводят настольный файл записи. Например, GIMP имеет следующее в своей настольной записи:

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;

Это указывает список типов файлов, которые может открыть GIMP.

Имя приложения указано с ключом 'Имени', например.

Name=GIMP Image Editor

Как Вы видите, существуют значки рядом с именами. Они также указаны в настольном файле записи как любой имя значка (для которого корректный файл ищется от знаковой темы), или путь файла значка. GIMP имеет следующее:

Icon=gimp

В 'Открытый с-> Другое приложение' диалоговое окно, Рекомендуемые приложения являются приложениями, которые указывают, что они могут открыть тип файла, и Другие Приложения - те, которые не имеют.

При выборе приложения файловый менеджер ищет, как запустить приложение для открытия файла (файлов). Это ищет 'Исполнительный' ключ в настольной записи. GIMP имеет следующий Исполнительный ключ:

Exec=gimp-2.6 %U

Это означает что команда:

gimp-2.6 %U

будет выполнен для открытия файла (файлов) с %U замененный списком URL (обычно URL file://) представление файлов, которые были выбраны для открытия. В дополнение к '%U' приложение может использовать '%u' для единственного URL или '%f' / '% F' для единственного/нескольких пути (путей) к файлу.

8
ответ дан 23 November 2019 в 05:40

Это довольно легко. Существуют .desktop файлы, которые содержат эту информацию:

[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;

Вы видите их в/usr/share/applications

2
ответ дан 23 November 2019 в 05:40

Другие вопросы по тегам:

Похожие вопросы: