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

9

Tengo algunos archivos con la 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 configuré como predeterminada, a pesar de que hay otro editor de texto que puede abrir archivos PHP y para el cual configuré los archivos con esas extensiones. para resaltar como 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 Drupal); lo que quiero es agregar esa extensión a las reportadas para la UTI "public.php-script".

kiamlaluno
fuente
Estoy ansioso por saber esto también : lo más cerca que he estado preguntando sobre UTI y servicios de lanzamiento en SuperUser ...
bmike
Creo que usar RCDefaultApp como respondió Kungi es el camino. Pero si cree que esa (s) extensión (es) particular (es) debería (n) asignarse a estos tipos de contenido, podría considerar escribir a los creadores de la aplicación para proponer que se incluya eso.
Agos

Respuestas:

3

No hay una forma segura y aconsejable 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 sus aplicaciones admiten con el sistema operativo en el primer lanzamiento.

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

Dicho esto, ya ha encontrado la única forma documentada que Apple ofrece para anular los edictos de la base de datos de Launch Services. Si quieres cavar más profundo y tomar el camino menosviajado Aquí se admiten algunos consejos.

Hay un archivo .plist que gobierna 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 de menú contextual Abrir con no deseadas. Pero eso es lo contrario de lo que buscas.

Es una lista binaria, pero puede convertirla 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ños y lo más probable es que el SO lo sobrescriba en algún momento.

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

Samuel Mikel Bowles
fuente
3

La alternativa a la solución mencionada por Gerry es el panel de preferencias RCDefaultApp . Es gratis y le permite configurar toda la conexión Aplicación-> Tipo de contenido, Aplicación-> URL en su Sistema.

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

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

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

Gerry
fuente
2
Intenté esto, pero el único efecto es cambiar la aplicación predeterminada para esos archivos, aunque quiero mantener la aplicación predeterminada, pero mostrar otra aplicación en la lista de las aplicaciones que se muestran en el submenú "Abrir con".
kiamlaluno