¿Alguna forma de get la list "Abrir con …" a través de AppleScript?

Quiero crear un AppleScript que obtenga la selección del Finder y muestre una list de aplicaciones que son capaces de abrirlo.

En otras palabras, ¿hay alguna manera de get la list de aplicaciones que aparece cuando utiliza el submenu contextual "Abrir con>" de Finder?

  • Carpeta gris en iCloud Drive
  • ¿Cómo se pueden escribir los posts cada vez que abro una aplicación específica?
  • Eliminar icons de colors en Finder
  • Mostrar / etc dir pero NO usando 'AppleShowAllFiles'. ¿Posible?
  • ¿Cómo configurar Finder para permitirme cambiar el nombre de los files de puntos?
  • ¿Encuadernar el button DualShock 4 a AppleScript?
  • ¿Puedo separar la window QuickLook del Finder?
  • ¿Cómo puedo eliminar el espacio en blanco inicial / final de los nombres de file en Automator?
  • Restaurar la basura (~ / .Trash /)?
  • Aplicación "drag n drop" para convertir imágenes a la cadena base64 (para desarrollo web)
  • ¿Cuál es la forma más fácil de automatizar el inicio de session en un website?
  • Vaciar la basura, con el file en uso: ¿Hay alguna diferencia entre 'omisión' y 'continuar'?
  • One Solution collect form web for “¿Alguna forma de get la list "Abrir con …" a través de AppleScript?”

    Una opción sería usar AllApplications en un script de shell:

    tell application "Finder" set p to POSIX path of (item 1 of (get selection) as text) end tell set l to do shell script "~/bin/AllApplications -path " & quoted form of p & " | sed 's/.*\\///g;s/\\.app$//g' | sort -f | uniq" set answer to choose from list (paragraphs of l) without multiple selections allowed if answer is false then return set a to item 1 of answer set p to path to application a tell application "Finder" to open selection using p 

    También puede usar Eventos del sistema para get las aplicaciones desde el menu Abrir con:

     tell application "System Events" to tell process "Finder" set l to name of menu items of menu 1 of menu item "Open With" of menu 3 of menu bar 1 end tell set text item delimiters to linefeed set l2 to do shell script "grep -vx 'missing value' <<< " & quoted form of (l as text) & " | grep -vx Other… | sed -E 's/ \\([^)]*\\)$//g;s/ \\(default\\)$//g;s/\\.app$//g' | sort -f | uniq" set answer to choose from list (paragraphs of l2) without multiple selections allowed if answer is false then return set a to item 1 of answer set p to (path to application a) tell application "Finder" to open selection using p 

    Realmente no probé las secuencias de commands, pero probablemente se vean afectadas por rdar: // 9406282: la selección de scripts de Finder puede referirse a un valor falso que no está correlacionado con la IU .

    Preguntas relacionadas en Super User:

    • Acceda al menu "Abrir con" del Buscador desde la línea de command (para completar la pestaña)
    • ¿Es posible consultar la database de services de lanzamiento para las aplicaciones que abrirán un file arbitrario o tipo de UTI?
    Loving Apple Products like poisoning (iPhone, iPad, iMac, Macbook, iWatch).