Jak powiązać typ MIME z programem obsługi w OS X?

4

Jak dodać nowy typ MIME w OS X?

DŻEM
źródło
Nie jest jasne, o czym mówisz. Dodaj nowy typ MIME, aby co dokładnie się stało?
David Schwartz,
Aby była obsługiwana przez jakąś aplikację, zobacz moją odpowiedź @DavidSchwartz
slhck

Odpowiedzi:

6

Najłatwiej byłoby pobrać i zainstalować RCDefaultApp . Przejdź do Preferencji systemowych »Domyślne aplikacje , a następnie zakładkę Typy MIME .

Wpisz swój nowy typ MIME w polu tekstowym poniżej, naciśnij +przycisk i wybierz program obsługi.


Za pomocą wiersza polecenia musisz edytować ~/Library/Preferences/com.apple.LaunchServices.plistlistę preferencji. W jego tablicy LSHandlersmusisz wstawić Dictionaryzawierający nowy typ MIME jako:

  • LSHandlerContentTag - typ MIME
  • LSHandlerContentTagClass, który jest public.mime-type
  • LSHandlerRoleAll, który określa identyfikator pakietu aplikacji, która go obsługuje, np org.videolan.vlc. Identyfikator pakietu można znaleźć, sprawdzając .appfolder i znajdującą się na Info.plistnim listę preferencji.

slhck
źródło
Czy istnieje sposób, aby zrobić to samo z wiersza poleceń? Być może poprzez edycję mime.types?
JAM
Zobacz moją zaktualizowaną odpowiedź. Ty mówisz apache2/mime.types? Nie jestem pewien, czy masz to edytować. Czy możesz wyjaśnić, dlaczego musisz go edytować? Jaki jest twój kontekst? Bez kontekstu ciężko ci pomóc.
slhck
Niesamowita odpowiedź ... Zastanawiasz się, czy wiesz, które aplikacje mogą dodać w ten sposób? Nie widzę żadnych w moim, LSHandlersktórzy używają tego formatu ... Czy to dlatego, że LSHandlerContentType(z wartościami takimi jak „public.css” zamiast „text / css”) jest do tego preferowany? ( apple.stackexchange.com/a/9883/206073 wydaje się sugerować taką preferencję, przynajmniej w przypadku porównania LSHandlerContentTypez „public.filename-extension” LSHandlerContentTagClass)
Brett Zamir
Ostatnie pytanie zadane teraz na apple.stackexchange.com/questions/328325/…
Brett Zamir
1
@BrettZamir Dobre pytanie - to poza moją wiedzą. Być może w międzyczasie zmieniono domyślną (moja odpowiedź pochodzi z 2012 r.).
slhck
1

Aby wyświetlić mime-typeplik w terminalu:

file --mime-type -b file-name
Mostafiz Rahman
źródło