Sto usando zsh e mi piace molto, ma lavoro molto con sorgenti Android che hanno script di compilazione che richiedono che bash sia valutato correttamente. Questi script devono essere forniti prima della compilazione e definire le variabili di ambiente e le funzioni shell utilizzate durante la compilazione.
Zsh non può procurarsi questi file, e se provo a rilasciare la emulate bash
mia shell diventa non funzionale con molti di questi errori ogni volta che colpisco lo spazio (sto usando oh-my-zsh, forse questa è una causa?):
url-quote-magic:24: bad pattern: ( ):/(|/localhost)/*
C'è un modo per me di non passare a bash per valutare questi file o di invocare un'istanza di bash e importare le nuove variabili / funzioni degli ambienti che ha definito durante l'approvvigionamento nella mia sessione zsh? O sono condannato a passare a bash ogni volta che devo lavorare su Android?
EDIT : ho trovato una risposta alla mia domanda. Sourcing di un file usando un'altra shell non sembra essere possibile, ma in caso di errore dei file macro Android, questa pagina ha portato una soluzione:
http://nilvec.com/building-cyanogen-from-source/
Fondamentalmente, semplicemente l'impostazione unsetopt nomatch
chiederà a zsh di smettere di lamentarsi dei caratteri jolly senza eguali, il che è abbastanza per portare a termine gli script. Rimarrà ancora un errore, sull'uso del complete
comando interno bash per aggiungere funzionalità di completamento a una macro Android, ma qui non è assolutamente critico.