@ Дуг Харрис ответ только частично правильно. Система по умолчанию хранит ваши локальные дополнения или переопределения для ассоциаций файлов. Однако OS X поставляется с некоторыми стандартными общесистемными ассоциациями.
Если вы запустите lsregister -dump
вы увидите, что Launch Services называет CoreTypes
и ассоциации, предоставляемые приложениями, которые он находит.
/System/Library/Frameworks/CoreServices.framework/Frameworks/LaunchServices.framework/Versions/Current/Support/lsregister -dump
Я не полностью отсканировал вывод. В этом дампе могут быть указаны другие источники, но большое количество этих типов взято из /System/Library/CoreServices/CoreTypes.bundle
. Там, где перечислены типы, может быть простой текстовый файл или файл plist. Я полагаю, что ассоциации связаны со сканированием содержимого * .app в известных местоположениях приложений. Вот где Launch Services понимает, что TextWrangler является редактором многих типов файлов:
--------------------------------------------------------------------------------
bundle id: 10928
path: /Applications/TextWrangler.app
name: TextWrangler
identifier: com.barebones.textwrangler (0x8000008d)
...
library items:
--------------------------------------------------------
claim id: 20216
name: TextWrangler text document
rank: Default
roles: Editor
flags: relative-icon-path
icon: Contents/Resources/TextWranglerTextDoc.icns
bindings: .a, .asm, .asp, .bashrc, .c, .c++, .cc, .cfm, .conf, .cp, .cpp, .cshrc, .css, .cxx, .equ, .f, .f77, .for, .ftn, .h, .h++, .hpp, .htm, .html, .inc, .j, .java, .js, .jsp, .log, .m, .mm, .p, .pas, .pch, .pch++, .php, .php3, .pl, .plist, .plx, .pm, .ppu, .r, .rb, .rez, .rhtml, .rss, .s, .sql, .shtm, .shtml, .tcl, .tcshrc, .text, .txt, .wml, .xhtml, .xml, .xsl, .xslt, .yaml, 'TEXT'
...