Sie können ~/Library/Preferences/com.apple.LaunchServices.plistin einem Texteditor nach der Konvertierung in XML Folgendes bearbeiten :
plutil -convert xml1 ~/Library/Preferences/com.apple.LaunchServices.plist
Fügen Sie dem LSHandlersArray dann solche Einträge hinzu :
<dict>
<key>LSHandlerContentType</key>
<string>com.adobe.pdf</string>
<key>LSHandlerRoleAll</key>
<string>net.sourceforge.skim-app.skim</string>
</dict>
<dict>
<key>LSHandlerContentTag</key>
<string>mkv</string>
<key>LSHandlerContentTagClass</key>
<string>public.filename-extension</string>
<key>LSHandlerRoleAll</key>
<string>org.videolan.vlc</string>
</dict>
Mit können mdlsSie die UTIs von Dateitypen und osascript -e 'id of app "AppName"'die Bundle- IDs von Anwendungen anzeigen .
Sie können Änderungen anwenden, com.apple.LaunchServices.plistindem Sie neu starten. Abmelden und wieder einloggen ist nicht genug.
HINWEIS : dutibefindet sich nicht mehr in der aktiven Entwicklung und wurde von den Betreuern als "nicht unterstützt" gekennzeichnet. Abgesehen von Konfigurationsaktualisierungen hat das Projekt seit 2012 keine größeren Fortschritte erzielt. Es ist von Sourceforge nach Github umgezogen. Diese Antwort wurde aktualisiert und enthält die neuen Links.
Ich benutze aber auch Duti . Ich habe eine Datei wie diese (mit ca. 100 Zeilen) gespeichert als ~/.duti:
org.gnu.Emacs public.plain-text all # .txt, .text, plain text files without an extension
org.gnu.Emacs public.unix-executable all # executable scripts
com.SequentialX.Sequential .jpg all
org.videolan.vlc .mkv all
Ich habe einen launchd-Agenten, der duti ~/.dutiautomatisch ausgeführt wird, wenn er ~/.dutigeändert wird.
Normalerweise können Sie Dateinamenerweiterungen (wie .jpg) anstelle von UTIs (wie public.jpg) verwenden, um Dateitypen anzugeben. dutikonvertiert die Erweiterungen in UTIs, die auch für andere Erweiterungen gelten (z. B. .jpeg). Bei einigen Erweiterungen wie .mkvund .texhängt die UTI davon ab, welche Anwendung die Erweiterung zuerst registriert hat.
Die neueste Version von enthält dutinur Quellcode, aber 1.5.0 enthält auch ein Installationsprogramm.
brew install dutiZum Installieren verwendenduti