Есть ли что-нибудь более удобное, чем использование RCDefaultApp или Magic Launch, или просто многократное нажатие кнопок «Изменить все» на информационных панелях Finder?
Я думал о написании сценария оболочки, который изменял бы массивы CFBundleDocumentTypes в файлах Info.plist. Но у каждого приложения есть несколько ключей (иногда значок), которые необходимо изменить.
lsregister
нельзя использовать для внесения определенных изменений в базу данных Launch Services.
$ `locate lsregister` -h
lsregister: [OPTIONS] [ <path>... ]
[ -apps <domain>[,domain]... ]
[ -libs <domain>[,domain]... ]
[ -all <domain>[,domain]... ]
Paths are searched for applications to register with the Launch Service database.
Valid domains are "system", "local", "network" and "user". Domains can also
be specified using only the first letter.
-kill Reset the Launch Services database before doing anything else
-seed If database isn't seeded, scan default locations for applications and libraries to register
-lint Print information about plist errors while registering bundles
-convert Register apps found in older LS database files
-lazy n Sleep for n seconds before registering/scanning
-r Recursive directory scan, do not recurse into packages or invisible directories
-R Recursive directory scan, descending into packages and invisible directories
-f force-update registration even if mod date is unchanged
-u unregister instead of register
-v Display progress information
-dump Display full database contents after registration
-h Display this help