Menedżer plików (domyślnie Nautilus) używa typu MIME pliku, aby określić, za pomocą którego programu go otworzyć. Gdy aplikacja jest zainstalowana, może określić, jakie typy MIME może otworzyć, oraz polecenie, które należy użyć, aby otworzyć pliki w pliku .desktop, który jest umieszczony /usr/share/applications
. Jest to plik używany do menu, skrótów pulpitu itp.
Na przykład GIMP ma następujący plik .desktop:
[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;
Zobacz MimeType
pole - zawiera listę obsługiwanych typów MIME. Exec
Pole informuje system o użyciu polecenia gimp-2.7 %U
, zastępując „% U” plikami do otwarcia. (Uwaga: GIMP 2.7 to wersja, którą zainstalowałem z PPA, więc jest wyższa niż bieżąca wersja w repozytoriach Ubuntu).
Po zainstalowaniu pakietu aplikacji system wyodrębnia dane typu MIME do łatwiej dostępnej bazy danych, ponieważ przeglądanie każdego pliku .desktop zajęłoby zbyt dużo czasu, gdyby robiono to przy każdym otwarciu pliku.
Informuje to system, jakie aplikacje mogą być używane dla tego typu MIME, i podaje aplikacje z listy „Otwórz za pomocą”. Wartość domyślna jest zdefiniowana w innym miejscu. Plik /usr/share/applications/defaults.list
zawiera informacje o ustawieniach domyślnych systemu. O ile nie zdecydujesz inaczej, są to aplikacje używane podczas „otwierania” pliku.
/usr/share/applications
.desktop
plikach istnieje polecenie ponownego utworzenia tej bazy danych MIME, aby zobaczyć nowe powiązania w akcji?sudo update-desktop-database
Zobacz jarrpa.net/2011/10/28/…/usr/local/share/applications
. Myślę, że gtk też tam domyślnie szuka. Działa w moim systemie, ale został zaktualizowany (nie przeinstalowany) od wersji Ubuntu 7.04.Aby uzupełnić doskonałą odpowiedź dv3500ea, chciałbym dodać trochę informacji o tym, co stanie się, gdy zmienisz swoje skojarzenia.
Chociaż defaults.list (którą można znaleźć, wpisując „locate defaults.list”) udostępnia listę aplikacji powiązanych z każdym typem MIME, wszelkie dokonane dostosowania są przechowywane w katalogu domowym, w ~ / .local / udostępnij / aplikacje / mimeapps.list. Więc jeśli dodasz lub usuniesz powiązania lub zmienisz domyślne powiązanie, ten plik zostanie zaktualizowany.
Przewodnik administracji systemem GNOME Desktop pod adresem http://library.gnome.org/admin/system-admin-guide/stable/ nie wydaje się omawiać mimeapps.list, ale znalazłem następujący opis na http: //live.gnome .org / SysAdminGuideUpdate :
źródło
mimeapps.list
jest to nadpisywane przez wpisy wdefaults.list
.~/.local/share/applications/mimeapps.list
, a działające procesy takie jak pcmanfm pobierały zmiany bez ponownego uruchamiania. (mplayer.desktop to po prostu działa mplayer. Miałem jednego leżącego ze starej instalacji mplayera w / usr / local, chyba. IDK, jeśli posiadanieMimeType=list;
było potrzebne czy nie.mimeapps.list
może znajdować się w dowolnym miejscu w następującej ścieżce wyszukiwania: Specyfikacje.freedesktop.org/mime-apps-spec/...Odkryłem, że w moim systemie (Debian Jessie) jest też takie
~/.config/mimeapps.list
, które przypadkowo utworzyłem skojarzenie, aby otworzyć określony typ pliku za pomocą gedit. Żaden ze standardowych sposobów na poprawienie tego (domyślne ustawienia aplikacji, Thunar jest otwarty z właściwością) nie odzwierciedlał tego, ale gedit była aplikacją domyślną.Byłem w stanie usunąć linię
~/.config/mimeapps.list
i teraz właściwa aplikacja otwiera plik.źródło
~/.config/mimeapps.list
.mimeapps.list
może znajdować się w dowolnym miejscu w następującej ścieżce wyszukiwania: Specyfikacje.freedesktop.org/mime-apps-spec/...Znalazłem ten link dotyczący domyślnego skojarzenia, może być pomocny. https://wiki.archlinux.org/index.php/Default_Applications
dla globalnego stowarzyszenia:
na powiązanie użytkownika:
Składnia jest następująca:
Sekcja [Dodane powiązania] służy do określania preferowanych (domyślnych) aplikacji w malejących preferencjach. co oznacza, że desktopfile1 jest najbardziej preferowany, a desktopfileN jest najmniej preferowany. Sekcja
[Usunięte powiązania] służy do jawnego usuwania wszelkich odziedziczonych wcześniej powiązań.
źródło
/usr/share/applications/mimeapps.list
nie istnieje.mimeapps.desktop
siędefaults.desktop
Byłem w stanie ustawić takie stowarzyszenie:
Możesz także usuwać powiązania i wykonywać inne czynności:
man xdg-mime
Nie musiałem biegać
sudo update-desktop-database
.źródło
Utwórz plik
truecrypt.desktop
na~/.local/share/applications
następujące linie:następnie edytuj plik
~/.local/share/applications/mimeapps.list
i dodaj następujący wiersz:Znalazłem typ MIME Truecrypt, uruchamiając to polecenie:
źródło
mimeapps.list
ścieżka wyszukiwaniaInni wspomnieli o tym pliku, ale nikt nie wyjaśnił dokładnie jego lokalizacji.
Standard freedesktop.org mówi na https://specifications.freedesktop.org/mime-apps-spec/mime-apps-spec-1.0.html :
a następnie wartości domyślne tych zmiennych środowiskowych podano na stronie 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
: brak, dołączono doXDG_DATA_HOME
$XDG_CONFIG_DIRS
: brak, dołączono doXDG_CONFIG_HOME
Starsze wersje Ubuntu mogą nie sprawdzać
~/.config
, więc spróbuj~/.local/share
również.Polecenia takie jak:
automatycznie edytuje te pliki.
źródło
Dla wszystkich użytkowników:
Każdy użytkownik ma plik konfiguracyjny do zastąpienia tych wartości domyślnych:
zobacz także https://specifications.freedesktop.org/mime-apps-spec/mime-apps-spec-1.0.1.html, aby znaleźć miejsca, które mogą zostać użyte do zastąpienia defauts.
Musisz znać typ MIME pliku, który chcesz zmienić, to powiązanie.
Również wszystkie skojarzenia można zmienić w wierszu poleceń, używając:
źródło
Freedesktop.org (wcześniej nazywany X Desktop Group, stąd skrót „XDG”) to grupa, która obecnie kieruje się takimi standardami X ( więcej na Wikipedii ).
Odpowiedź warvariuc wspomina już o użyciu xdg-mime, takim jak:
Po wielu zabawach z edytorami obrazów i przeglądarkami skończyłem z różnymi przeglądarkami dla różnych typów obrazów, prawie bez konsekwencji, szczególnie wśród rzadszych typów obrazów.
Wziąłem powyższe polecenie i przypisałem je do każdego z typów MIME kontrolowanych przez przeglądarki zdjęć, a następnie utworzyłem nowy
image-viewer.desktop
, klonując jeden z nich (jest to opcjonalne, możesz jedynie ponownie użyć swojego ulubionego). Następnie ręcznie zweryfikowałem, że żaden z typów MIME nie będzie niezgodny z moją nową preferowaną aplikacją. Na koniec ustawiłem tę aplikację jako domyślną dla wszystkich typów MIME innych aplikacji:To bada
.desktop
pliki dla każdego z przeglądarek ( w moim przypadku Ristretto , Geeqie i GThumb ), wypakowuje definicję MIME (która jest poprzedzona przez,MimeType=
a następnie zawiera listę rozdzielaną średnikami), usuwa (wcześniej dopasowaną) etykietę przedmowy i dzieli listę na jeden wpis w wierszu.sort -u
następnie usuwa zbędne linie, a następnie są onexdg-mime
ustawione, aby ustawić nowe wartości domyślne.(Jeśli chcesz to przetestować przed uruchomieniem na żywo, zmień
xargs
naxargs echo
i wyświetli wynikowe polecenie zamiast go uruchomić).Ta technika powinna działać na wszystko, co chcesz odzyskać dla aplikacji docelowej. Nie musisz nawet tworzyć nowego
.desktop
pliku (możesz użyć istniejącego). Zrobiłem ten dodatkowy krok, więc gdy nieuchronnie zmieniam swoją lojalność między podglądami obrazów, muszę tylko zmienić ten jeden plik.źródło
W Ubuntu 18.04 kolejność pierwszeństwa jest następująca, od najsilniejszej do najsłabszej:
~/.local/share/applications/defaults.list
/usr/share/applications/defaults.list
~/.config/mimeapps.list
(„Otwórz za pomocą innej aplikacji” zaktualizuje to)~/.local/share/applications/mimeapps.list
mimeinfo.cache
rejestrze kompatybilnych aplikacji, które są generowane z.desktop
plików obecnych w/usr/share/applications
i/usr/local/share/applications
i można je zregenerować za pomocąupdate-desktop-database
./etc/gnome/defaults.list
źródło