Kiedy uruchamiam skrypty R, robię coś innego na innym pulpicie. Jeśli nie sprawdzam często, nigdy nie wiem, kiedy coś się skończy. Czy istnieje sposób, aby wywołać sygnał dźwiękowy (np. Dźwięk systemowy) lub zmusić R do odtworzenia dźwięku lub powiadomienia warknięcia za pomocą jakiegoś kodu na końcu mojego skryptu?
149
beepr
pakiet działa jednak dobrze.Mam pakiet (
beepr
), którego jedynym celem jest wydawanie dźwięków powiadomień w języku R, który powinien działać na wielu platformach. Uruchom następujące, aby zainstalować beepr i wydać dźwięk:Więcej informacji na github: https://github.com/rasmusab/beepr
źródło
options(error = function() {beep(9)})
. Ale bardzo irytujące :)while (1) beepr::beep(3)
czy to było dla ciebie tak samo dziwne, jak dla mnie? :}W systemie MacOSX możesz pozwolić komputerowi mówić:
i możesz także zmienić sztuczny głos, który będzie mówił:
Możesz wybrać dowolny głos dostępny na Twoim komputerze. W Yosemite możesz zobaczyć, które głosy są zainstalowane w Preferencjach systemowych -> Dyktowanie i mowa -> Zamiana tekstu na mowę .
źródło
Powinieneś mieć go tweetem po zakończeniu: http://cran.r-project.org/web/packages/twitteR/index.html
źródło
alarm
nie działa na moim komputerze z systemem Windows, więc stworzyłem funkcję, która faktycznie hałasuje.To oczywiście może działać tylko w systemie Windows, ale nie gwarantuję, że będzie działać nawet na dowolnym komputerze z systemem Windows. Przetestowałem to tylko na moim komputerze, ale pomyślałem, że opublikuję go na wypadek, gdyby ktoś miał z tym ten sam problem,
alarm
co ja.źródło
alarm()
sprawia, że moja maszyna hałasuje (XP, interaktywne uruchamianie R)alarm()
nie działa na moim komputerze iz jakiegoś powodu tak.źródło
alarm
źródło, a zobaczysz, że to, co robi, to tylkocat("\a")
wezwanie.cat("foo\a")
. Może użytkownicy przeczytali to jakocat("Hello world!\n")
? Trudno powiedzieć ...Nie tylko to, możesz także umieścić epicką muzykę z YouTube, gdy program jest zakończony w pętli :) (dla Ubuntu / Debian :)
źródło
Użyj,
shell.exec("url")
aby otworzyć klip YouTube w systemie Windowsźródło
AKTUALIZACJA:
W systemie macOS 10.9 (Mavericks) i nowszym możesz publikować powiadomienia przy użyciu zwykłego AppleScript:
Eliminuje to potrzebę instalacji
terminal-notifier
, o której mowa poniżej.-
Mam zainstalowany terminal-notifier na moim Macu, aby otrzymywać powiadomienia na pulpicie z wiersza poleceń. Następnie możesz zakończyć wywołanie
system()
polecenia w ten sposób (oczywiście zmień ścieżkę):Możesz wywołać tę funkcję w ten sposób
aby otrzymać taką wiadomość:
Aktualizacja: polecenie zawarte w @ VLC
say
.źródło
Co powiesz na coś w miarę niezależnego od systemu operacyjnego dla systemów operacyjnych z graficznym interfejsem użytkownika i przeglądarkami internetowymi? Działa nawet na serwerze RStudio!
źródło
Lub jeśli używasz dystrybucji GNU / Linux i masz moduł pcspkr na czarnej liście (głośnik PC zawsze mnie denerwował), spróbuj połączyć
system
z jakimś dźwiękowym / wizualnym powiadomieniem, np.Możesz sprawdzić podręcznik zenity, jeśli wolisz alert w, powiedzmy, obszarze powiadomień ... Ale dzięki
system
funkcji możesz zrobić prawie wszystko: wysłać wiadomość e-mail, uruchomić inny skrypt, zrestartować komputersudo rm -rf *.*
itp. Cokolwiek ... i mam to na myśli.Ale to oznacza tylko IF używasz GNU / Linux (UNIX) lub dystrybucji, w przeciwnym razie kij do konkretnych poleceń systemu Windows, choć w tym przypadku, nie mogę dać ci wiele informacji ...
źródło
growlnotify
skrypt (w pakiecie z Growl ( growl.info ):system("growlnotify -t 'R script info' -m 'Finished!'")
Zainspirowana
beepr
, jest to funkcja, której obecnie używam do tego typu problemów: Dźródło
A może puszczasz muzykę?
źródło
spójrz na ten pakiet: RPushBullet
RPushbullet jest całkowicie darmowy i wieloplatformowy. Jeśli chodzi o twoje pytanie, możesz użyć tej biblioteki, aby wysłać wiadomość Push do przeglądarki, ale oczywiście staje się niesamowite, gdy potrzebujesz czegoś, co może Cię powiadomić, gdy Cię nie ma. Ponadto twórcą pakietu R jest ten sam, co dobrze znany Rcpp, Dirk Eddelbuettel. Powiedziałbym, że warto spróbować!
źródło
Możesz użyć
notify-send
polecenia:źródło
Z powodu tych wielu pomysłów stworzyłem rozwiązanie bez dostępu do Internetu, ponieważ pracuję z klientem VPN w systemie Windows. Odtwarza więc typowy dźwięk systemu Windows, który zwykle występuje w każdym systemie operacyjnym Windows.
Funkcja bez pętli
źródło