In Firefox 38.8.0 ESR unter Debian Lenny mit GNOME 2 stellte ich fest, dass die über XDG verknüpfte Anwendung (beschrieben in der Antwort des OP ) nur beim Öffnen einer heruntergeladenen Datei von Downloads in der Bibliothek verwendet wird.
Und selbst dort liefert die Implementierung inkonsistente Ergebnisse, xdg-open
da sie GNOME-spezifische Pfade ignoriert (in meinem Fall /usr/share/gnome/applications/defaults.list
ein Symlink zu /etc/gnome-vfs-2.0/defaults.list
). Ich musste application/pdf=evince.desktop
in meinem angeben ~/.local/share/applications/defaults.list
. (Beachten Sie, dass defaults.list
in verschmolzen wurde mimeapps.list
in neueren Versionen von XDG.)
Anstelle von XDG werden Metamail-Funktionen (Mailcap) verwendet, um die zugeordnete Anwendung für die folgenden Anwendungsfälle aufzulösen:
- Öffnen der heruntergeladenen Datei aus dem Download-Bereich (wird angezeigt, nachdem Sie in der Symbolleiste auf den Download-Button geklickt haben)
- Standardanwendung im Dropdown-Menü für den Dateidownload
- Standardanwendung in der Dropdown-Liste unter Einstellungen → Anwendungen (
about:preferences#applications
)
Die Einstellung in about:preferences#applications
wird beim Navigieren zu einer URL mit diesem Inhaltstyp verwendet, sofern der Download nicht erzwungen wird.
Mailcap ist ein Mechanismus, der älter als XDG ist und seine Wurzeln in E-Mail hat, wo auch MIME herkommt. Das run-mailcap
Dienstprogramm ist analog zu xdg-open
. Seine Konfiguration umfasst drei Dateien (in absteigender Reihenfolge):
~/.mailcap
- Benutzereingaben
/etc/mailcap.order
- Bestellspezifikation für systemweite Einträge
/etc/mailcap
- Systemweite Einträge (gleiches Format wie Benutzereinträge)
Zusammen erstellen sie eine Liste einzeiliger Einträge, die die Anwendung angeben, die für einen bestimmten MIME-Typ verwendet werden soll. Die Einträge werden von oben nach unten abgeglichen, was zuerst kommt, hat also Vorrang.
Um die Priorität von Einträgen systemweit zu ändern, müssen Sie sie bearbeiten /etc/mailcap.order
und ausführen update-mime
.
Um einige der Einträge zu überschreiben oder Ihre eigenen systemweiten Einträge festzulegen, müssen Sie den oberen Abschnitt (der für manuell erstellte Einträge vorgesehen ist) von bearbeiten /etc/mailcap
und ausführen update-mime
. Siehe die Kommentare im oberen Abschnitt.
Verwenden Sie für Benutzereingaben und Überschreibungen ~/.mailcap
. Die Änderungen werden sofort wirksam. Nein ~/.mailcap.order
existiert; Wenn Sie die Priorität von Einträgen ändern möchten, ordnen Sie sie physisch neu an (sofern vorhanden ~/.mailcap
) oder überschreiben Sie sie mit der bevorzugten Version (sofern vorhanden /etc/mailcap
).
Siehe man update-mime
, man mailcap
und man mailcap.order
.
Beachten Sie, dass einige Anwendungen allgemeine Dienstprogramme (wie z. B. x-www-browser
oder pager
) verwenden, anstatt die bevorzugte Anwendung zu erkennen. Möglicherweise müssen Sie update-alternatives
einen ähnlichen Mechanismus verwenden, um die bevorzugte Implementierung eines allgemeinen Dienstprogramms in Ihrer Distribution auszuwählen. Um eine systemweit bevorzugte Alternative für einen bestimmten Benutzer zu überschreiben, legen Sie Umgebungsvariablen wie EDITOR
(oder VISUAL
) PAGER
und fest BROWSER
. Sie werden von sensible-browser
anderen, häufig spezifischeren Tools (z . B. git commit
Verwendungen EDITOR
und VISUAL
) unterstützt.