Ponieważ otwieranie nowej karty jest tak trywialne, sugeruję, aby wykonywanie poleceń było tak trywialne, jak to możliwe, i robienie tego w staromodny sposób.
Wywołałeś dwa konkretne działania, więc popracujmy nad nimi. Zauważ, że zamierzam przyjmować wiele założeń opartych na tym, co wiem o Railsach, ale niekoniecznie specyficznych dla twojego projektu.
Krótko mówiąc, alias polecenia, aby zrobić to, co chcesz, lub utwórz prosty skrypt powłoki, aby zrobić to, co chcesz.
Utwórz skrypt powłoki o nazwie myapp.startz zawartością:
#!/bin/bash
cd Development/rails/myapp
# Do any common environment initializations here, such as RAILS_ENV=development
script/server
Prawdopodobnie będziesz musiał utworzyć plik o nazwie .bash_profile w swoim katalogu domowym lub zmodyfikować plik już istniejący i dodać wiersz podobny;
export PATH="$HOME/bin:${PATH}"
Następnie utwórz katalog bin w folderze domowym i przenieś do niego skrypt myapp.start. Upewnij się także, że właściciel ma bit wykonania przynajmniej ( chmod 700 myapp.start).
Następnie otwórz Terminal.app, wpisz myapp.starti masz uruchomione szyny. Możesz też wpisać, myaa następnie nacisnąć Tabi pozwolić autouzupełnianiu wypełnić resztę, nacisnąć return. Boom, serwer działa.
Według rozszerzenia możesz już zrozumieć, jak zrobić ogon pliku dziennika, ale i tak będę kontynuować. Utwórz inny plik w ~ / bin o nazwie myapp.taillog z zawartością:
#!/bin/bash
tail -F ~/Development/rails/myapp/logs/development.log
Ponownie, umieść go w folderze bin chmod 700 ~/bin/myapp.taillog, a następnie po uruchomieniu, a następnie serwer Rails, szybko naciśnij ⌘t, wpisz myapp.taillogi masz wydrukowany plik dziennika.
Dwa polecenia, dwa dodatkowe naciśnięcia klawiszy (otwieranie kart), może to wystarczy?
Są tutaj dwie bardzo oczywiste ulepszenia. Jednym z nich jest napisanie funkcji powłoki zdolnej do „odkrywania” nazw aplikacji railsowych, więc nie musisz pisać skryptu powłoki dla każdej z nich, napisanie pod-komendy zaprojektowanej do uruchomienia webbricka / wybranego serwera railsowego, i komendy do rutynowego wykonywania kilku kluczowych plików dziennika.
Drugie ulepszenie polega na tym, że prawdopodobnie możesz napisać AppleScript, który wykonuje niezbędną interakcję z terminalem i odpowiednie wykonywanie poleceń w każdym z nich. Ale szczerze mówiąc, ssę AppleScript i cały dzień pracuję w kodzie bash i perl, więc oferuję porady dotyczące moich umiejętności :).