xdg-open (Русский)

From ArchWiki
Revision as of 06:36, 5 February 2015 by Masterslave (talk | contribs) (mailcap)
Jump to: navigation, search

Tango-preferences-desktop-locale.pngЭта страница нуждается в сопроводителеTango-preferences-desktop-locale.png

Статья не гарантирует актуальность информации. Помогите русскоязычному сообществу поддержкой подобных страниц. См. Команда переводчиков ArchWiki

xdg-open это независимый инструмент для настройки использования пользовательских приложений по умолчанию. Многие приложения вызывают внутреннюю команду xdg-open.

В средах рабочего стола (например, GNOME, KDE, или Xfce), xdg-open просто передает аргументы файл-открывалке окружения рабочего стола (gvfs-open, kde-open, или exo-open соответственно), а это значит, что ассоциации остаются за средой рабочего стола. Если среда рабочего стола не будет обнаружена (например, при использовании только оконного менеджера, такого как Openbox), xdg-open будет использовать собственные конфигурационные файлы.

Установка

xdg-open является частью пакета xdg-utils, доступного в официальных репозиториях. xdg-open используется только в пользовательской сессии рабочего стола и не следует запускать с правами администратора.

Если вы планируете запускать xdg-open без окружения рабочего стола, рекомендуется также установить perl-file-mimeinfo или xdg-utils-mimeoAUR, либо mimeoAUR из AUR как более быструю альтернативу.

Конфигурация

xdg-open использует файл конфигурации, упомянутый в Default Applications. Вы можете редактировать этот файл, используя комманду xdg-mime. Чтобы узнать mime-тип требуемого существующего файла, наберите xdg-mime query filetype file.ext. И наоборот, чтобы узнать какой ярлык приложения соответствует mime-типу, запустите xdg-mime query default mime/type. К общим типам относятся: inode/directory (файловый менеджер), image/jpeg (просмотрщик JPEG изображений), application/pdf (PDF просмотрщик).

Чтобы изменить ассоциированное приложение, выполните xdg-mime default application.desktop mime/type. Например для установки Thunar в качестве файлового менеджера по умолчанию, запустите:

$ xdg-mime default Thunar.desktop inode/directory

Можно задать сразу несколько mime-типов для связи с одним приложением. Следующий пример позволит сделать Emacs вызываемым для всех возможных текстовых файлов:

$ xdg-mime default emacs.desktop $(grep '^text/*' /usr/share/mime/types)

Установка браузера по умолчанию

Tango-emblem-important.pngПравильность информации, представленной в этой статье или разделе, оспариваетсяTango-emblem-important.png

Причина: Для браузеров имеется много различных MIME-типов (обсуждение: Talk:Xdg-open (Русский)#)

Чтобы установить стандартное приложение, открывающее http(s):// ссылки (замените browser.desktop. на предпочитаемый вами браузер .desktop, например, firefox.desktop или chromium.desktop):

$ xdg-mime default browser.desktop x-scheme-handler/http
$ xdg-mime default browser.desktop x-scheme-handler/https

Для .html файлов:

$ xdg-mime default browser.desktop text/html

Другой способ:

$ xdg-settings set default-web-browser browser.desktop

Чтобы проверить изменения, попробуйте зайти по адресу через xdg-open:

$ xdg-open https://archlinux.org

perl-file-mimeinfo

xdg-open использует perl-file-mimeinfo в качестве запасного варианта ("generic") если не обнаружена среда рабочего стола. Он может быть вызван непосредственно:

$ mimeopen -d /path/to/file

Будет задан вопрос, какое приложение использовать при открытии /path/to/file:

Please choose a default application for files of type text/plain
       1) notepad  (wine-extension-txt)
       2) Leafpad  (leafpad)
       3) OpenOffice.org Writer  (writer)
       4) gVim  (gvim)
       5) Other...

Выбранное приложение будет обработчиком по умолчанию для данного типа файлов. Mimeopen устанавливается в /usr/bin/perlbin/vendor/mimetype.

Аналоги

замена xdg-open

Название пакета Метод Основан на Файл конфигурации
busking-gitAUR Регулярные выражения perl-file-mimeinfo пользовательский
linopenAUR file пользовательский
mimeoAUR MIME-типы, регулярные выражения file mimeapps.list, defaults.list; пользовательский необязателен
mimi-gitAUR file пользовательский
easeAUR MIME-типы, названия файлов, регулярные выражения база данных SQLite или file, perl-file-mimeinfo и др. база данных SQLite или mimeapps.list
ayrAUR MIME-типы, названия файлов, регулярные выражения file либо perl-file-mimeinfo и др. mimeapps.list, defaults.list
sx-open Регулярные выражения file, регулярные выражения bash пользовательский
Примечание: Вышеуказанные аналоги могут быть символически ссылаться на xdg-open директорию до /usr/bin в переменной $PATH (например, ln -s /usr/bin/sx-open /usr/local/bin/xdg-open). Однако, некоторые приложения могут быть жестко привязаны к /usr/bin/xdg-open. В таком случае установите xdg-utils-no-openAUR из AUR и скопируйте с заменой в /usr/bin/xdg-open.

mailcap

Tango-view-fullscreen.pngЭта статья или раздел нуждается в расширенииTango-view-fullscreen.png

Причина: При использовании run-mailcapAUR совместно с xdg-open может возникнуть зацикливание, в результате которого обе утилиты будут вызывать друг друга. [1] It should then clearly not be combined with the below file to prevent endless loops (обсуждение: Talk:Xdg-open (Русский)#)

Формат файла.mailcap используется программами работы с электронной почтой, такими как mutt и sylpheed. Чтобы они использовали возможности xdg-open, отредактируйте ~/.mailcap:

~/.mailcap
*/*; xdg-open "%s

mimetype

mimetype в пакете perl-file-mimeinfo может показать некоторую mimetype-связанную информацию о файле.

Например:

$ mimetype file.ext

выведет mime-тип этого файла,

$ mimetype -d file.extension

выведет описание этого mime-типа.

Если утилите xdg-open не удается обнаружить среду рабочего стола, то она будет выполнять комманду file -i, использующую для определения mime-типа только содержимое файла, в результате чего некоторые типы файлов определяются неправильно. При наличии mimetype xdg-open будет использовать его для лучшего результата определения, т.к. mimetype использует информацию общей базе данных mime info.

Переменные окружения

Некоторые переменные окружения, такие как BROWSER, DE и DESKTOP_SESSION, изменят поведение по умолчанию xdg-open. См. Переменные окружения для получения дополнительной информации.