Esegui plutil -convert xml1 ~/Library/Preferences/com.apple.launchservices.plist
e aggiungi una voce come questa sotto LSHandlers:
<dict>
<key>LSHandlerContentType</key>
<string>public.unix-executable</string>
<key>LSHandlerRoleAll</key>
<string>com.macromates.textmate</string>
</dict>
Puoi anche cambiare l'applicazione predefinita per i file normali senza estensione:
<dict>
<key>LSHandlerContentType</key>
<string>public.plain-text</string>
<key>LSHandlerRoleAll</key>
<string>com.macromates.textmate</string>
</dict>
È possibile applicare le modifiche riavviando. Basta disconnettersi e rientrare non sembra funzionare. È anche possibile ricostruire il database dei servizi di avvio, ma ha l'effetto collaterale che vengono visualizzati nuovamente gli avvisi sull'apertura delle applicazioni per la prima volta.
Un'altra opzione è aggiungere qualcosa di simile a un duti file di configurazione:
com.macromates.textmate public.unix-executable all
com.macromates.textmate public.plain-text all
Per rendere questa domanda più ricercabile, ecco il messaggio di errore Finder quando tenti di cambiare l'applicazione predefinita per gli script eseguibili:
The operation can’t be completed.
An unexpected error occurred (error code -50).