Der Dateimanager (standardmäßig Nautilus) verwendet den MIME-Typ einer Datei, um zu bestimmen, mit welchem Programm er geöffnet werden soll. Wenn eine Anwendung installiert ist, kann sie angeben, welche MIME-Typen sie öffnen kann, und den Befehl zum Öffnen der Dateien in der .desktop-Datei, in der sie abgelegt ist /usr/share/applications
. Dies ist die Datei, die für Menüs, Desktop-Verknüpfungen usw. verwendet wird.
Beispielsweise verfügt GIMP über die folgende .desktop-Datei:
[Desktop Entry]
Version=1.0
Type=Application
Name=GNU Image Manipulation Program
GenericName=Image Editor
Comment=Create images and edit photographs
Exec=gimp-2.7 %U
TryExec=gimp-2.7
Icon=gimp
Terminal=false
Categories=Graphics;2DGraphics;RasterGraphics;GTK;
X-GNOME-Bugzilla-Bugzilla=GNOME
X-GNOME-Bugzilla-Product=GIMP
X-GNOME-Bugzilla-Component=General
X-GNOME-Bugzilla-Version=2.7.2
X-GNOME-Bugzilla-OtherBinaries=gimp-2.7
StartupNotify=true
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;application/pdf;image/x-wmf;image/jp2;image/jpeg2000;image/jpx;image/x-xcursor;
Siehe das MimeType
Feld - hier werden die unterstützten MIME-Typen aufgelistet. Das Exec
Feld weist das System an, den Befehl zu verwenden gimp-2.7 %U
und '% U' durch die zu öffnenden Dateien zu ersetzen. (Hinweis: GIMP 2.7 ist eine Version, die ich von einem PPA installiert habe, also höher als die aktuelle Version in den Ubuntu-Repositories).
Wenn das Anwendungspaket installiert ist, extrahiert das System diese MIME-Typdaten in eine leichter zugängliche Datenbank, da das Durchsuchen der einzelnen .desktop-Dateien bei jedem Öffnen einer Datei zu lange dauern würde.
Dies teilt dem System mit, welche Anwendungen können für diesen MIME - Typ verwendet werden und bietet die Anwendungen in der ‚Öffnen mit‘ Liste. Der Standard ist an anderer Stelle definiert. Die Datei /usr/share/applications/defaults.list
enthält die Informationen für die Systemstandards. Sofern Sie nichts anderes auswählen, sind dies die Anwendungen, die beim 'Öffnen' einer Datei verwendet werden.
/usr/share/applications
.desktop
Dateien einen Befehl zum erneuten Erstellen dieser MIME-Datenbank, um neue Zuordnungen in Aktion zu sehen?sudo update-desktop-database
Siehe jarrpa.net/2011/10/28/…/usr/local/share/applications
. Ich denke, gtk sieht auch dort standardmäßig aus. Es funktioniert auf meinem System, aber es wurde seit Ubuntu 7.04 oder so aktualisiert (nicht neu installiert).Um die hervorragende Antwort von dv3500ea zu ergänzen, möchte ich einige Informationen darüber hinzufügen, was passiert, wenn Sie Ihre Assoziationen ändern.
Während die defaults.list (die Sie finden, indem Sie 'locate defaults.list' eingeben) die Liste der Anwendungen enthält, die jedem MIME-Typ zugeordnet sind, werden alle von Ihnen vorgenommenen Anpassungen in Ihrem Ausgangsverzeichnis in ~ / .local / gespeichert. share / applications / mimeapps.list. Wenn Sie also Zuordnungen hinzufügen oder entfernen oder die Standardzuordnung ändern, wird diese Datei aktualisiert.
Im GNOME Desktop System-Administrationshandbuch unter http://library.gnome.org/admin/system-admin-guide/stable/ wird mimeapps.list anscheinend nicht behandelt, aber ich habe die folgende Beschreibung unter http: //live.gnome gefunden .org / SysAdminGuideUpdate :
quelle
mimeapps.list
von Einträgen in der überschrieben wirddefaults.list
.~/.local/share/applications/mimeapps.list
, und laufende prozesse wie pcmanfm haben die änderungen ohne neustart übernommen. (mplayer.desktop läuft nur mit mplayer. Ich hatte einen, der von einem alten mplayer in / usr / local herumlag, denke ich. IDK, ob einMimeType=list;
benötigt wurde oder nicht.mimeapps.list
kann irgendwo in den folgenden Suchpfad sein: Specifications.freedesktop.org/mime-apps-spec/…Ich habe festgestellt, dass es auf meinem System (Debian Jessie) auch eine
~/.config/mimeapps.list
Verknüpfung gibt, die ich versehentlich erstellt habe, um einen bestimmten Dateityp mit gedit zu öffnen. Keine der Standardmethoden zur Korrektur (Standardanwendungseinstellungen, Thunar wird mit der Eigenschaft geöffnet ) hat dies widergespiegelt, aber gedit war die Standardanwendung.Ich konnte die Zeile entfernen
~/.config/mimeapps.list
und jetzt öffnet die richtige Anwendung die Datei.quelle
~/.config/mimeapps.list
.mimeapps.list
kann irgendwo in den folgenden Suchpfad sein: Specifications.freedesktop.org/mime-apps-spec/…Ich habe diesen Link bezüglich der Standardzuordnung gefunden, er könnte hilfreich sein. https://wiki.archlinux.org/index.php/Default_Applications
for global association:
pro Nutzerverband:
Die Syntax lautet wie folgt:
Im Abschnitt [Hinzugefügte Zuordnungen] werden bevorzugte (Standard-) Anwendungen in abnehmender Reihenfolge angegeben. was bedeutet, dass Desktopfile1 am meisten bevorzugt wird und DesktopfileN am wenigsten bevorzugt wird.
Der Abschnitt [Entfernte Verknüpfungen ] wird verwendet, um zuvor vererbte Verknüpfungen explizit zu entfernen.
quelle
/usr/share/applications/mimeapps.list
existiert nicht.mimeapps.desktop
mitdefaults.desktop
Ich konnte eine Assoziation wie folgt festlegen:
Sie können Assoziationen auch entfernen und andere Dinge tun:
man xdg-mime
Ich musste nicht rennen
sudo update-desktop-database
.quelle
Erstellen Sie eine Datei
truecrypt.desktop
in~/.local/share/applications
den folgenden Zeilen:Bearbeiten Sie dann die Datei
~/.local/share/applications/mimeapps.list
und fügen Sie die folgende Zeile hinzu:Ich habe den MIME-Typ von Truecrypt herausgefunden, indem ich diesen Befehl ausgeführt habe:
quelle
mimeapps.list
SuchpfadAndere haben diese Datei erwähnt, aber keiner hat ihren Speicherort genau erklärt.
Der freedesktop.org-Standard lautet unter https://specifications.freedesktop.org/mime-apps-spec/mime-apps-spec-1.0.html :
Die Standardwerte für diese Umgebungsvariablen finden Sie unter https://specifications.freedesktop.org/basedir-spec/basedir-spec-0.6.html :
$XDG_DATA_HOME
:$HOME/.local/share
$XDG_CONFIG_HOME
:$HOME/.config
$XDG_DATA_DIRS
: keine, angehängt anXDG_DATA_HOME
$XDG_CONFIG_DIRS
: keine, angehängt anXDG_CONFIG_HOME
Ältere Versionen von Ubuntu können dies möglicherweise nicht überprüfen.
~/.config
Versuchen Sie es also~/.local/share
auch.Befehle wie:
bearbeitet diese Dateien automatisch.
quelle
Für alle Benutzer:
Jeder Benutzer hat eine Konfigurationsdatei zum Überschreiben dieser Standardeinstellungen:
Unter https://specifications.freedesktop.org/mime-apps-spec/mime-apps-spec-1.0.1.html finden Sie Informationen zu Orten, die zum Überschreiben von Defauts verwendet werden können.
Sie müssen den MIME-Typ der Datei kennen, deren Zuordnung Sie ändern möchten.
Außerdem können alle Zuordnungen in der Befehlszeile bearbeitet und geändert werden, indem Folgendes verwendet wird:
quelle
Freedesktop.org (früher als X Desktop Group bezeichnet, daher die Abkürzung "XDG") ist die Gruppe, die derzeit solche X-Standards anwendet ( weitere Informationen finden Sie bei Wikipedia ).
In der Antwort von warvariuc wird bereits die Verwendung von xdg-mime wie folgt erwähnt :
Nachdem ich viel mit Bildbearbeitern und -betrachtern gespielt hatte, kam ich zu unterschiedlichen Bildbetrachtern für unterschiedliche Bildtypen mit fast keiner Konsistenz, insbesondere bei den selteneren Bildtypen.
Ich nahm den obigen Befehl und wies ihn jedem der von den Bildbetrachtern gesteuerten MIME-Typen zu und erstellte dann einen neuen,
image-viewer.desktop
indem ich einen von ihnen klonte (dies ist optional, Sie können lediglich Ihren Favoriten wiederverwenden). Als Nächstes habe ich manuell überprüft, ob keiner der MIME-Typen mit meiner neuen bevorzugten Anwendung nicht kompatibel ist. Schließlich habe ich diese Anwendung als Standard für alle MIME-Typen der anderen Anwendungen festgelegt:Dabei werden die
.desktop
Dateien für jeden der Betrachter untersucht ( in meinem Fall Ristretto , Geeqie und GThumb ), die MIME-Definition extrahiert (dieMimeType=
eine durch Semikolons getrennte Liste enthält), und das (zuvor übereinstimmende) Vorwort entfernt teilt die Liste in einen Eintrag pro Zeile auf.sort -u
Entfernt dann die redundanten Leitungen und gibt sie weiterxdg-mime
, um die neuen Standardeinstellungen festzulegen.(Wenn Sie dies testen möchten, bevor Sie es live ausführen, wechseln Sie
xargs
zuxargs echo
und es wird der resultierende Befehl gedruckt, anstatt ihn auszuführen.)Diese Technik sollte für alles funktionieren, was Sie für eine Ziel-App zurückfordern möchten. Sie müssen nicht einmal eine neue
.desktop
Datei erstellen (Sie können eine vorhandene Datei verwenden). Ich habe diesen zusätzlichen Schritt ausgeführt, damit ich, wenn ich unweigerlich meine Loyalität zwischen Bildvorschauprogrammen ändere, nur diese eine Datei ändern muss.quelle
Unter Ubuntu 18.04 habe ich folgende Rangfolge gefunden, von der stärksten zur schwächsten:
~/.local/share/applications/defaults.list
/usr/share/applications/defaults.list
~/.config/mimeapps.list
("Mit anderer Anwendung öffnen" aktualisiert dies.)~/.local/share/applications/mimeapps.list
mimeinfo.cache
Registrierung kompatibler Anwendungen, die aus den.desktop
in/usr/share/applications
und vorhandenen Dateien generiert/usr/local/share/applications
wurden und mit neu generiert werden könnenupdate-desktop-database
./etc/gnome/defaults.list
quelle