¿Cómo puedo asociar una extensión de archivo con un tipo de contenido?

Tengo algunos archivos con extensión "módulo" e "inc", que son archivos PHP. Cuando trato de abrirlos, la lista de aplicaciones que pueden abrirlos muestra solo la aplicación que he configurado como aplicación predeterminada, aunque hay otro editor de texto que puede abrir archivos PHP, y para el cual he configurado los archivos con esas extensiones. para ser resaltado como lo son los archivos PHP.

captura de pantalla

Si abro el cuadro de diálogo "Obtener información", selecciono otra aplicación en "Abrir con" y luego hago clic en "Cambiar todo..." lo que obtengo es lo siguiente.

captura de pantalla

captura de pantalla

Lo que quiero obtener es lo que se muestra en la siguiente captura de pantalla, que muestra el menú "Abrir con" para otro tipo de archivo:

captura de pantalla

¿Hay alguna forma de asociar esas extensiones al tipo de contenido utilizado para los archivos PHP?
Alternativamente, ¿cómo puedo mostrar, en la lista de aplicaciones que se muestran en el menú "Abrir con", todas las aplicaciones que pueden abrir archivos PHP, cuando Finder aún no lo hace?

Explicaré lo que quiero obtener usando una captura de pantalla de RCDefaultApp.

captura de pantalla

Un archivo que usa "módulo" como extensión es un archivo PHP, en mi caso (es un módulo de Drupal); lo que quiero es agregar esa extensión a las reportadas para la UTI "public.php-script".

Estoy ansioso por saber esto también : lo más cerca que he estado preguntando sobre UTI y Launch Services en SuperUser...
Creo que usar RCDefaultApp como respondió Kungi es el camino. Pero si cree que esas extensiones en particular deberían asignarse a estos tipos de contenido, podría considerar escribir a los creadores de la aplicación para proponer incluir eso.

Respuestas (3)

No existe una forma segura y recomendable de lograr lo que busca porque esta función del sistema operativo está controlada por la base de datos de Launch Services. Los desarrolladores registran los tipos de archivo que admiten sus aplicaciones con el sistema operativo en el primer lanzamiento.

La mejor manera de arreglar esto es solicitar al desarrollador que agregue soporte para la extensión de archivo en una versión futura de su aplicación.

Dicho esto, ya ha encontrado la única forma documentada que ofrece Apple para anular los edictos de la base de datos de Launch Services. Si quieres profundizar más y tomar el camino menosviajadocompatibles aquí hay algunos consejos.

Hay un archivo .plist que rige parte de lo que hace Launch Services ubicado en: ~/Library/Preferences/com.apple.LaunchServices.plist

Apple señala que eliminar esta lista puede eliminar las opciones no deseadas del menú contextual Abrir con. Pero eso es lo contrario de lo que buscas.

Es un .plist binario, pero puede convertirlo a una versión xml y experimentar un poco para ver si puede encontrar una receta para lograr lo que busca. Esto no es aconsejable, podría causar daño y lo más probable es que el sistema operativo lo sobrescriba en algún momento.

También hay una herramienta escondida un poco más en el sistema operativo llamada lsregister que podría ser útil para explorar las conexiones de Launch Services. Aquí hay una explicación útil de lsregister y sus opciones .

La alternativa a la solución mencionada por Gerry es el panel de preferencias RCDefaultApp . Es gratis y le permite configurar todas las aplicaciones->tipo de contenido, aplicación->conexión URL en su sistema.

En el panel "Aplicaciones" de RCDefaultApp, puede establecer qué tipo de archivo admite una aplicación específica cuando marca "php" con su editor; también se mostrará en el menú "Abrir con".

No permite añadir una extensión a las asociadas a una UTI oa un tipo de contenido. Permite cambiar la aplicación predeterminada que abre archivos, que es esencialmente lo que ya permite Finder; la diferencia es que con RCDefaultApp lo cambias desde el mismo lugar (el panel de preferencias).
@ kiamlaluno, pero puede crear una nueva moduleextensión y luego asociarla con su aplicación. O cual es el problema con esto??
El problema no es asociar una extensión a una aplicación, que se convertiría en la aplicación por defecto de esa extensión; el problema es tener automáticamente la lista de aplicaciones en "Abrir con" rellenada automáticamente. Si ve la tercera captura de pantalla que usé en la pregunta, se muestran Xcode, Dashcode y Console para la extensión ".inc", pero no he asociado esas aplicaciones con la extensión.

En el menú contextual, elija Obtener información, seleccione el programa que desea usar en el panel "Abrir con:" y haga clic en "Cambiar todo..."

Intenté esto, pero el único efecto es cambiar la aplicación predeterminada para esos archivos, mientras que quiero mantener la aplicación predeterminada, pero mostrando otra aplicación en la lista de aplicaciones que se muestran en el submenú "Abrir con".