Czy jest jakiś sposób, aby odznaka pojawiła się na ikonie terminala w Docku po zakończeniu wykonywania polecenia?

11

Obecnie mam aplikację AppleScript, która otwiera okna terminala i wykonuje polecenia. Chciałbym, aby ikona aplikacji pojawiła się na ikonie terminala w Docku po zakończeniu polecenia. Potrzebuję tego, ponieważ często muszę ponownie uruchamiać polecenia, gdy się zatrzymują. czy to możliwe? Zasadniczo moja aplikacja AppleScript pobiera zmienną podaną przez użytkownika i podłącza ją do polecenia terminalu. Za każdym razem, gdy korzystam z aplikacji, otwiera nowe okno terminala (zamierzone). Chciałbym, aby odznaka pojawiła się po zakończeniu komendy Terminala.

Eli Greenberg
źródło
Czy potrzebujesz plakietki, czy byłbyś zadowolony z saypolecenia werbalnego ostrzegającego, sygnału dźwiękowego, powiadomienia o warczeniu, terminala zmieniającego kolor lub czegoś innego?
W dowolny sposób mogę powiedzieć, że polecenie zostało zakończone. Okna terminalu są zawsze za wszystkimi moimi innymi oknami, więc denerwowanie musi być sprawdzane. Wolałbym jednak powiadomienie, które pozostanie, dopóki czegoś nie zrobię. Powiadomienie słowne prawdopodobnie nie zadziałałoby, gdybym wstał i nie było mnie w pobliżu. Dobrze?
Eli Greenberg,
Zapoznaj się z poniższymi rozwiązaniami (prawdopodobnie będą oparte na programie Growl) i dodaj linię AppleScript, aby przenieść bieżące okno na pierwszy plan. Niestety, wszystkie Terminale przesuną się na przód (myślę), ale okno, które wywołało zdarzenie, będzie znajdować się przed nimi wszystkimi.
Zwróć uwagę, że iTerm2 ma to, triggersco może uczynić to bardzo łatwym i eleganckim w konfiguracji: iterm2.com/triggers.html

Odpowiedzi:

14

Począwszy od systemu Mac OS X 10.7 Lion, terminal ma dokładnie tę funkcję.

Jeśli emitujesz dzwonek (BEL, Control-G) w zakładce lub oknie w tle, ikona Docku aplikacji terminalu pokaże znaczek z liczbą „nieprzeczytanych” dzwonków

Znaczek dzwonka w aplikacji Terminal ikona Dock

a ikona dzwonka jest wyświetlana w zakładce terminalu

Wskaźnik dzwonka w zakładce terminala w tle

(Jeśli w oknie jest tylko jedna karta, wybierz Widok> Pokaż pasek kart, aby wyświetlić kartę, która wyświetla także inne informacje o stanie).

Dotyczy to również zminimalizowanych okien.

Po przesunięciu okna do przodu lub wybraniu zakładki tła wskaźnik dzwonka jest usuwany z zakładki, a liczba odznak spada.

Chris Page
źródło
Oczywiście, to tylko Lew, haha.
Eli Greenberg,
3

Jeśli chcesz zaakceptować odpowiedź na bardziej ogólne pytanie „czy istnieje możliwość powiadomienia mnie, gdy coś zakończy się w oknie terminala”, odpowiedź brzmi: tak.

Jeśli korzystasz z Growl , możesz wywołać linię poleceń ze skryptu, który wyśle ​​powiadomienie do Growl. Na przykład:

do shell script "sleep 1h"
do shell script "growlnotify --sticky --message \"I'm all done sleeping for an hour! Did you forget about me?\" --wait"

Skrypt nie zostanie zamknięty, dopóki nie usuniesz powiadomienia z ekranu.

Możesz nawet użyć tej --nameopcji, aby nadać skryptowi unikalną nazwę, a następnie w Growl dostosować sposób wyświetlania i obsługi zdarzeń generowanych przez tę nazwaną aplikację. Mogą wytwarzać różne rodzaje wyskakujących okienek na ekranie, mogą wysyłać Ci e-maile, mogą wysyłać wiadomości za pośrednictwem iChat, przekazują wydarzenie do Growl na innej maszynie, jeśli korzystasz z Prowl na swoim iDevice, mogą nawet przesyłać dalej powiadomienie na iDevice za pośrednictwem powiadomień push.

Nie do końca odpowiedź, której szukasz, ale mam nadzieję, że spełnia twoje potrzeby.

GrowlNotify w akcji


Ian C.
źródło