Come posso associare un'estensione di file a un tipo di contenuto?


9

Ho alcuni file con estensione "module" e "inc", che sono file PHP. Quando provo ad aprirli, l'elenco delle applicazioni che possono aprirle mostra solo l'applicazione che ho impostato come applicazione predefinita, anche se esiste un altro editor di testo che può aprire file PHP e per il quale ho impostato i file con quelle estensioni per essere evidenziato come file PHP.

immagine dello schermo

Se apro la finestra di dialogo "Ottieni informazioni", seleziona un'altra applicazione in "Apri con", quindi faccio clic su "Cambia tutto ..." quello che ottengo è il seguente.

immagine dello schermo

immagine dello schermo

Quello che voglio ottenere è quello mostrato nello screenshot seguente, che mostra il menu "Apri con" per un altro tipo di file:

immagine dello schermo

C'è un modo per associare quelle estensioni al tipo di contenuto utilizzato per i file PHP?
In alternativa, come posso mostrare, nell'elenco delle applicazioni mostrate nel menu "Apri con", tutte le applicazioni che possono aprire file PHP, quando Finder non lo fa già?

Spiegherò cosa voglio ottenere usando uno screenshot di RCDefaultApp.

immagine dello schermo

Un file che utilizza "module" come estensione è un file PHP, nel mio caso (è un modulo Drupal); quello che voglio è aggiungere quell'estensione a quelle segnalate per l'UTI "public.php-script".


Sono ansioso di sapere anche questo - il più vicino a cui ho avuto domande su UTI e Launch Services su SuperUser ...
bmike

Penso che usare RCDefaultApp come Kungi abbia risposto sia il modo. Ma se ritieni che tali estensioni particolari debbano essere associate a questi tipi di contenuti, potresti prendere in considerazione l'idea di scrivere ai produttori di app per proporlo.
Agos,

Risposte:


3

Non esiste un modo sicuro e consigliabile per ottenere ciò che si desidera perché questa funzione del sistema operativo è controllata dal database dei Servizi di avvio. Gli sviluppatori registrano i tipi di file supportati dalle loro applicazioni con il sistema operativo al primo avvio.

Il modo migliore per risolvere questo problema è richiedere allo sviluppatore di aggiungere supporto per l'estensione del file in una versione futura della loro applicazione.

Detto questo, hai già trovato l'unico modo documentato che Apple offre per ignorare gli editti del database dei Servizi di lancio. Se vuoi scavare più a fondo e prendere meno stradaviaggiato supportati qui ci sono alcuni suggerimenti.

Esiste un file .plist che regola parte di ciò che Launch Services fa in: ~ / Library / Preferences / com.apple.LaunchServices.plist

Apple rileva che la rimozione di questo plist può eliminare le opzioni di menu contestuale Apri con indesiderate. Ma questo è l'opposto di quello che stai cercando.

È una .plist binaria ma potresti convertirla in una versione xml e sperimentare un po 'per vedere se riesci a trovare una ricetta per ottenere quello che cerchi. Questo non è consigliabile, potrebbe causare danni e molto probabilmente verrà sovrascritto dal sistema operativo a un certo punto.

C'è anche uno strumento nascosto un po 'più in profondità nel sistema operativo chiamato lsregister che potrebbe essere utile per esplorare l'impianto idraulico di Launch Services. Ecco una spiegazione utile di lsregister e delle sue opzioni .


3

L'alternativa alla soluzione menzionata da Gerry è il riquadro delle preferenze di RCDefaultApp . È gratuito e ti consente di impostare tutte le applicazioni-> Tipo di contenuto, Applicazione-> Connessione URL sul tuo sistema.

Nel riquadro "App" di RCDefaultApp è possibile impostare i tipi di file supportati da applicazioni specifiche quando si seleziona "php" con il proprio editor, che verrà visualizzato anche nel menu "Apri con".


Non consente di aggiungere un'estensione a quelle associate a una UTI o a un tipo di contenuto. Permette di cambiare l'applicazione predefinita che apre i file, che è essenzialmente ciò che Finder già consente; la differenza è che con RCDefaultApp lo cambi dallo stesso posto (il pannello delle preferenze).
kiamlaluno,

@ kiamlaluno - ma puoi creare una nuova moduleestensione e quindi associarla alla tua app. O qual è il problema con questo ??
Rene Larsen,

Il problema non è associare un'estensione a un'applicazione, che diventerebbe l'applicazione predefinita per tale estensione; il problema è avere automaticamente l'elenco delle applicazioni pre-popolate in "Apri con". Se vedi il terzo screenshot che ho usato nella domanda, Xcode, Dashcode e Console sono mostrati per l'estensione ".inc", ma non ho associato quelle applicazioni con l'estensione.
kiamlaluno,

0

Nel menu di scelta rapida, scegli Ottieni informazioni, seleziona il programma da utilizzare nel riquadro "Apri con:" e fai clic su "Cambia tutto ..."


2
Ho provato questo, ma l'unico effetto è cambiare l'applicazione predefinita per quei file, mentre voglio mantenere l'applicazione predefinita, ma mostrando un'altra applicazione nell'elenco delle applicazioni mostrate nel sottomenu "Apri con".
Kiamlaluno,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.