~/Library/Preferences/com.apple.LaunchServices.plistइसे XML में कनवर्ट करने के बाद आप टेक्स्ट एडिटर में एडिट कर सकते हैं :
plutil -convert xml1 ~/Library/Preferences/com.apple.LaunchServices.plist
फिर LSHandlersसरणी में इस तरह की प्रविष्टियाँ जोड़ें :
<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>
आप mdlsफ़ाइल प्रकारों के यूटीआई और osascript -e 'id of app "AppName"'अनुप्रयोगों के बंडल पहचानकर्ताओं को देखने के लिए कुछ का उपयोग करने के लिए उपयोग कर सकते हैं ।
आप com.apple.LaunchServices.plistपुनः आरंभ करके परिवर्तन लागू कर सकते हैं । लॉग आउट करना और वापस अंदर जाना पर्याप्त नहीं है।
नोट : dutiअब सक्रिय विकास में नहीं है और इसके अनुरक्षकों द्वारा "असमर्थित" के रूप में लेबल किया गया है। कॉन्फ़िगरेशन अपडेट से अलग 2012 के बाद से इस परियोजना ने कोई बड़ी प्रगति नहीं देखी है। यह सोर्सफोर्ज से जीथब तक चला गया है। इस उत्तर को नए लिंक को शामिल करने के लिए अपडेट किया गया है।
मैं हालांकि डूटी का उपयोग भी करता हूं । मैंने इस तरह से (लगभग 100 लाइनों के साथ) एक फ़ाइल को बचाया है ~/.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
मेरे पास एक लॉन्चड एजेंट है जो बदले जाने पर duti ~/.dutiस्वचालित रूप से चलता ~/.dutiहै।
आप आमतौर पर फ़ाइल प्रकारों को निर्दिष्ट करने के लिए .jpgUTIs (जैसे public.jpg) के बजाय फ़ाइल नाम एक्सटेंशन (जैसे ) का उपयोग कर सकते हैं। dutiएक्सटेंशन को यूटीआई में परिवर्तित करता है जो अन्य एक्सटेंशन (जैसे .jpeg) पर भी लागू होता है । कुछ एक्सटेंशन जैसे .mkvऔर के लिए .tex, यूटीआई इस बात पर निर्भर करता है कि आवेदन किस एक्सटेंशन को पहले पंजीकृत करता है।
नवीनतम संस्करण का dutiएकमात्र स्रोत कोड शामिल है, लेकिन 1.5.0 भी एक इंस्टॉलर भी शामिल है।
brew install dutiस्थापित करने के लिएduti