No me gustaría asociar VLC con todos los tipos que admite (como mp3, iso o utf), pero he agregado esto a un duti archivo de configuración:
org.videolan.vlc .avi all
org.videolan.vlc .flac all
org.videolan.vlc .flv all
org.videolan.vlc .mkv all
org.videolan.vlc .mov all
org.videolan.vlc .mp4 all
org.videolan.vlc .mpg all
org.videolan.vlc .wmv all
duti convierte las extensiones que se enumeran en las declaraciones de UTI a UTI automáticamente, por lo que puede especificar los tipos como .jpg
en lugar de public.jpeg
. Ver com.apple.LaunchServices.plist. Las IU de algunas extensiones como .mkv dependen de las aplicaciones que se instalaron primero.
Muchas aplicaciones solo enumeran UTI (LSItemContentTypes) y no extensiones (CFBundleTypeExtensions) en el Info.plist. Esto listaría las UTI y las extensiones de impresión asociadas con ellas:
dump=$(/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/LaunchServices.framework/Versions/A/Support/lsregister -dump); plutil -convert xml1 /Applications/TextEdit.app/Contents/Info.plist -o - | sed -n '/LSItemContentTypes/,/\/array/p' | sed -En 's|.*string>(.*)</string.*||p' | while read u; do awk "/uti: *$u/,/tags:/" <<< "$dump"; done | sed -En 's/[[:space:]]*tags: *(.+)//p' | sed $'s/, /\\n/g' | grep '^\.' | sort -u