¿Hacer que las asociaciones de archivos inicien una cierta extensión, pero con un programa de consola?

Es posible usar el menú del botón derecho en "Abrir con" para obtener la opción de elegir una aplicación para abrir una determinada extensión de archivo. A continuación, puede decir "Abrir siempre con esto" .

Eso funciona si el programa está empaquetado como un paquete OS/X (que en realidad es un directorio que contiene muchas cosas debajo del capó). Pero, ¿hay una manera fácil de hacerlo para que se pueda usar un programa de consola normal para abrirlo pasando la ruta del archivo como el primer parámetro en la línea de comando?

Incluso si activa "Todas las aplicaciones", deja Abrir en gris en los programas de la consola.

¿Es este el tipo de cosa que requeriría un script de Automator de algún tipo, o hay otra forma?

Respuestas (3)

Crear nueva aplicación en Automator

Localice la acción "Ejecutar AppleScript" y arrástrela al área de flujo de trabajo

Editar AppleScript:

on run {input, parameters}
    tell application "Terminal"
        activate
        do script with command "[YOUR_SHELL_COMMAND] " & (input as string)
    end tell
end run

Guárdelo y utilícelo en el cuadro de diálogo "Abrir con"

Sí, debe envolver el programa de la consola en algo que lo convierta en una aplicación para Mac, siendo Automator la forma más fácil.

Seleccione 'Nuevo' en el menú Archivo de Automator y cree una aplicación. Las aplicaciones en Automator reciben automáticamente los archivos y carpetas seleccionados.

Solo necesita una sola acción de Automator, "Ejecutar script de Shell". El cuerpo de la acción es el comando de la consola. Luego lo configura para pasar la entrada como argumentos.

Una vez que lo guarde, puede usarlo en un cuadro de diálogo "Abrir con", pero tendrá que buscarlo usando la selección "Otro".

http://duti.org : una herramienta de línea de comandos para seleccionar aplicaciones predeterminadas para tipos de documentos y esquemas de URL en Mac OS X.

Ver también: http://duti.org/documentation.html