Scegli un'app predefinita per l'apertura di file senza estensione?


27

È possibile impostare un'applicazione predefinita per aprire i file senza estensione? Non mi riferisco a file con estensioni nascoste, ma quelli completamente privi un interno - ad esempio README, CHANGELOG, mbox, etc.

"Apri con" => "Cambia tutto" su questi file non funziona, restituendo l'errore mostrato di seguito:

Apri con / Cambia tutto - Fallito

Idealmente, vorrei che il sistema provasse ad aprire tutti questi file in TextMate. So che posso trascinare i file sulle icone del Dock per aprirli in app specifiche, ma sto cercando una soluzione più fluida di quella (soprattutto perché ho il mio nascondiglio automatico del Dock, che lo rende molto più ingombrante).

Conosco il plug -in QLStephen QuickLook che può abilitare QuickLook per alcuni di questi file, ma preferirei una soluzione con funzionalità di selezione / copia / modifica.

Risposte:


12

Puoi aggiungere un'applicazione predefinita per public.plain-text in ~ / Library / Preferences / com.apple.LaunchServices.plist.

defaults write com.apple.LaunchServices LSHandlers -array-add '{LSHandlerContentType=public.plain-text;LSHandlerRoleAll=com.apple.textedit;}' '{LSHandlerContentType=public.unix-executable;LSHandlerRoleAll=com.apple.textedit;}'

Riavvia per applicare le modifiche (disconnettersi e riconnettersi non è sufficiente).

Ho aggiunto questo a un file di configurazione duti :

com.apple.textedit public.plain-text all
com.macromates.textmate public.unix-executable all

5
Questo sembra buono, più dettagli di ciò che sta accadendo qui ad un livello superiore sarebbero belli. Un'introduzione, cosa sta succedendo nel passaggio 1, ecc.
MrDaniel,

4

Puoi farlo usando Magic Launch. Dopo l'installazione, è possibile creare regole da avviare in base a vari criteri. Devi creare una regola per le app di testo in cui l'estensione è vuota. È possibile impostare una logica più complessa se necessario.

http://michelf.com/software/magic-launch/


Hai ragione - ho dovuto creare una regola personalizzata per gestire i file con estensioni vuote ... ma sembra aver funzionato - grazie! L'unico aspetto negativo è che è $ 13. Non ho problemi a pagare per buone app, ma è un po 'ripido considerando che sto cercando solo questa funzione.
Austin,

0

Dai un'occhiata a RCDefaultApp (freeware).

RCDefaultApp è un riquadro delle preferenze di Mac OS X 10.2 o superiore che consente all'utente di impostare l'applicazione predefinita utilizzata per vari schemi URL, estensioni di file, tipi di file, tipi MIME e identificatori di tipo uniforme (o UTI; solo MacOS 10.4).


1
Mi piace che sia gratuito, ma non c'è modo di impostare un'app predefinita per i file senza estensione. L'uso dei tipi MIME può approssimare un po 'questo, ma poi cambia l'app predefinita di tutti i file di testo, non solo quelli senza estensione. Grazie comunque per il suggerimento - forse aiuterà qualcun altro.
Austin,

0

Un po 'tardi, la domanda "Come evitare l'apertura di file non tipizzati nel terminale" è un po' vecchia. Tuttavia:

Le soluzioni di cui sopra comportano la modifica delle regole esistenti, che possono avere effetti collaterali indesiderati. Trovo che il modo più semplice sia sfruttare le regole esistenti per i file non tipizzati e modificare i permessi dei file per ottenere il risultato che desidero.

In particolare: disattiva il bit eseguibile sul file, perché è questo che dice al servizio file di aprirsi con il terminale con "chmod -x nomefile" dove nomefile è ... il nomefile.

Questo può essere automatizzato in una certa misura (con cautela): nel mio caso, ho molti file README su una macchina. Posso usare "trova" per trovare tutti i file "LEGGIMI". E quindi usa "awk" per costruire un comando per rimuovere il bit eseguibile su tutti loro come segue:

find /$HOME -iname 'README' | awk '{ print "chmod -x " $0 }'

digita quello nel terminale se vuoi controllare quali file verranno cambiati: l'output consisterà in un elenco per ogni README trovato simile a questo:

chmod -x //Users/jimpsmith/things/README

E per modificare tutte quelle autorizzazioni eseguire tutte queste linee assegnandole una commissione per bash come segue:

find /$HOME -iname 'README' | awk '{ print "chmod -x " $0 }' | bash

Fai solo attenzione a usare i caratteri jolly in modo troppo libero e scopri di aver rimosso accidentalmente il bit eseguibile da alcuni eseguibili che corrispondono erroneamente.


Un modo più semplice sarebbe semplicemente correre

find /$HOME -iname 'README' -exec chmod -x '{}' \;`

o (per vedere cosa sarebbe successo)

find /$HOME -iname 'README' -exec echo chmod -x '{}' \;`

1
In qualche modo non riesco a capire come questo risolva il problema indicato nella domanda. README, ChangeLog ecc. Di solito non hanno il bit x impostato per iniziare comunque. Il problema è che OS X si basa su suffissi per identificare l'applicazione con cui aprire il file e questi file non hanno un suffisso.
Nohillside
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.