Dato che è così banale aprire una nuova scheda, ti suggerisco di rendere l'esecuzione dei tuoi comandi il più banale possibile, e di farlo alla vecchia maniera.
Hai chiamato due azioni specifiche, quindi lavoriamo con quelle. Nota che sto facendo molte ipotesi basandomi su ciò che so di Rails, ma non necessariamente specifico per il tuo progetto.
Per farla breve, crea un comando alias per fare ciò che vuoi o crea uno script shell banale per fare ciò che vuoi.
Crea uno script di shell denominato myapp.start
, con i contenuti:
#!/bin/bash
cd Development/rails/myapp
# Do any common environment initializations here, such as RAILS_ENV=development
script/server
Probabilmente dovrai anche creare un file chiamato .bash_profile nella tua home directory, o modificarne uno già esistente, e aggiungere una riga come;
export PATH="$HOME/bin:${PATH}"
Quindi, crea una directory bin nella tua cartella home e sposta lo script myapp.start in essa. Assicurati inoltre che il proprietario esegua il bit al minimo ( chmod 700 myapp.start
).
Quindi, apri Terminal.app, digita myapp.start
e hai le guide in esecuzione. In alternativa, digita m y a quindi premi Tab e lascia che il completamento automatico completi il resto, premi return . Boom, server in esecuzione.
Per estensione, potresti già capire come eseguire un file di log in coda, ma continuerò comunque. Crea un altro file in ~ / bin chiamato myapp.taillog, con i contenuti:
#!/bin/bash
tail -F ~/Development/rails/myapp/logs/development.log
Ancora una volta, mettilo nella cartella bin, chmod 700 ~/bin/myapp.taillog
, quindi dopo aver avviato il server di rails, premi rapidamente ⌘ t , digita myapp.taillog
, e hai un file di registro in fase di stampa.
Due comandi, due tasti aggiuntivi (aprendo le schede), forse è sufficiente?
Ci sono due miglioramenti molto ovvi qui. Uno è quello di scrivere una funzione di shell in grado di "scoprire" i nomi delle app di rails, quindi non è necessario scrivere uno script di shell per ciascuno, la scrittura di un sottocomando progettato per avviare webbrick / il server di scelta dei rails, e comandi per tail -Fing di alcuni file di registro chiave di routine.
Il secondo miglioramento è che è probabile che tu possa scrivere un AppleScript che comporti l'interazione terminale necessaria e l'esecuzione appropriata dei comandi all'interno di ognuno. Ma sinceramente, succhio AppleScript e lavoro in codice bash e codice perl tutto il giorno, quindi offro consigli pertinenti al mio set di competenze:).