Відповідь @Doug Harris лише частково правильна. Система за замовчуванням зберігає ваші локальні доповнення або переопределення до асоціацій файлів. Однак OS X поставляється з деякими системними асоціаціями за замовчуванням.
Якщо ви запустите, lsregister -dump
ви побачите, що викликає Служби запуску CoreTypes
та асоціації, надані програмами, які він знайде.
/System/Library/Frameworks/CoreServices.framework/Frameworks/LaunchServices.framework/Versions/Current/Support/lsregister -dump
Я не вичерпно просканував вихід. На цьому смітнику можуть бути й інші джерела, але велика кількість цих типів походить /System/Library/CoreServices/CoreTypes.bundle
. Там може бути файл простого тексту або пліст, де перераховуються типи. Асоціації, на які я вважаю, походять від сканування вмісту * .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'
...