Perché non posso utilizzare i bundle .app collegati simbolicamente in / Applicazioni come predefiniti nella finestra di dialogo 'apri con'?

5

Ho installato emacs con homebrew , con il flag --cocoa , che rende homebrew creare un pacchetto .app in% codice%. Ho simulato il bundle .app in /usr/local/Cellar/emacs/<version>/Emacs.app , per facilitarne l'apertura. Il problema è che quando provo ad impostare associazioni di file per i file, non posso impostare Emacs.app come predefinito (il pulsante Aggiungi è disattivato):

Ora potrei semplicemente copiare o spostare il pacchetto .app in /Applications/ , ma questo mi richiederebbe di copiarlo di nuovo ogni volta che emacs viene aggiornato tramite homebrew. C'è un altro modo per risolvere questo?

    
posta oyvindio 04.02.2011 - 11:03
fonte

5 risposte

6

Non so perché, ma ho capito che se faccio il collegamento simbolico alla directory Contents, le associazioni funzionano bene.

Cioè faccio quanto segue in una finestra di terminale, usando la mia cartella Applicazioni personali come esempio:

% mkdir ~/Applications/Emacs.app
% ln -s /usr/local/Cellar/emacs/23.2/Emacs.app/Contents ~/Applications/Emacs.app

Qualcosa sul mettere il link simbolico all'interno di Emacs.app ottiene il riconoscimento del pacchetto.

    
risposta data 11.09.2012 - 05:27
fonte
4

Strano. Ho appena installato emacs tramite brew e ha aggiornato automaticamente la finestra di dialogo "apri con" per includere Emacs.app; Ma dovresti essere in grado di fare quanto segue: Subito dopo aver aperto la finestra di dialogo "scegli una applicazione", premi "/" per ottenere una finestra "vai alla cartella". Inserisci il seguente percorso:

/usr/local/Cellar/emacs/

e da lì passare a Emacs.app (nella versione corrente dovrebbe essere /usr/local/Cellar/emacs/23.2/Emacs.app) e selezionarlo come applicazione predefinita.

========

Potresti eseguire il seguente comando per vedere se Emacs è registrato nel tuo DB LaunchServices?

/System/Library/Frameworks/CoreServices.framework/Frameworks/LaunchServices.framework/Support/lsregister -dump | grep Emacs

    
risposta data 04.02.2011 - 13:22
fonte
1

Se non è qualcosa che fai spesso, puoi navigare nel posto in cui Emacs.app è veramente e assegnarlo da lì.

Hai provato a cambiare il menu a discesa "Abilita: Applicazioni consigliate"? Credo che ci sia un'opzione "Tutte le applicazioni". Forse questo ti permetterà di selezionare il tuo alias.

Hai detto che hai linkato l'app. Hai utilizzato ln -s ? Se sì, hai provato a utilizzare un alias?

-
Non so homebrew molto bene, ma sembra che tu possa estendere homebrew con comandi esterni .

Prova a cercare se riesci a ottenere il file .app aggiornato e cp a /Applications .

    
risposta data 04.02.2011 - 11:10
fonte
1

La mia soluzione è creare un collegamento simbolico di /usr/local/Cellar in /Applications . Quindi, puoi trovare l'emacs.app che devi usare con la finestra di dialogo "Apri con" (in /Applications/Cellar ).

In alternativa, puoi utilizzare RCDefault (un'app gratuita) per configurare l'associazione dell'estensione del file.

    
risposta data 21.11.2011 - 09:48
fonte
0

I percorsi esatti per le tue applicazioni non dovrebbero avere importanza. Una volta aperta l'applicazione e chiusa una volta, dovrebbe aggiungerla al tuo database LaunchServices.

Prova a ricostruire il tuo database LaunchServices inserendo il seguente comando di terminale:

/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/\
LaunchServices.framework/Versions/A/Support/lsregister -kill -r -domain\
local -domain system -domain user

Dopo aver fatto questo, apri MacVim. Dovrebbe quindi popolare le opzioni Apri con .... Nota che MacVim non si associa automaticamente a molti tipi di file (diversamente da, ad esempio, BBEdit, che si presenta come opzione predefinita per quasi tutti i tipi di file), solo i file di testo, di codice e di tipo html tendono a

    
risposta data 03.12.2011 - 16:35
fonte

Leggi altre domande sui tag