205 votes

Existe-t-il un moyen de faire en sorte que R émette un bip/joue un son à la fin d'un script ?

Quand je lance des scripts R, je vais faire autre chose sur un autre bureau. Si je ne vérifie pas fréquemment, je ne sais jamais quand quelque chose est terminé. Existe-t-il un moyen d'invoquer un bip (comme un bip système) ou d'amener R à jouer un son ou à notifier un grognement via un code à la fin de mon script ?

223voto

Rasmus Bååth Points 627

J'ai un paquet ( beepr ) dans le seul but de créer des sons de notification en R qui devraient fonctionner sur toutes les plates-formes. Exécutez ce qui suit pour installer beepr et faire un son :

install.packages("beepr")
library(beepr)
beep()

Plus d'informations sur github : https://github.com/rasmusab/beepr

1 votes

Hey Rasmus, ça a l'air cool. Je pensais demander ici puisque cette page a beaucoup de visibilité : est-ce que beepr peut être appelé depuis les options, i.e. options(error=beepr(sound=9)) ? L'appeler après une exécution réussie est utile U& je vais l'utiliser, mais aussi ce serait génial de l'appeler si le code se plante... Merci !

7 votes

Bien sûr ! Il suffit de l'intégrer dans une fonction comme celle-ci : options(error = function() {beep(9)}) . Super irritant cependant :)

0 votes

Merci mon pote, je l'installe maintenant !

107voto

deinst Points 8706
alarm()

El alarme fonction. Elle fonctionne en envoyant \a à la console

1 votes

Simple et parfait, mais inutile si vous avez désactivé le haut-parleur du PC. Bien que je n'ai aucune idée de la façon dont il fonctionne sous Windows.

0 votes

@Mulone : cela fonctionne pour moi, MacOSX 10.11.1, R 3.2.2 ; vous entendez le faible son "poump".

12 votes

Cela ne fonctionne pas pour moi sous Windows 7, x64, R 3.2.2. Le site beepr Le paquet ci-dessous fonctionne pourtant bien.

72voto

VLC Points 279

Sous MacOSX, vous pouvez laisser l'ordinateur parler :

system("say Just finished!")

et vous pouvez aussi changer la voix artificielle qui parlera :

system("say -v Kathy Just finished!")

Vous pouvez choisir n'importe quelle voix qui est disponible sur votre ordinateur. Sur Yosemite, vous pouvez voir quelles voix sont installées dans Préférences système -> Dictée et parole -> Texte à la parole .

53voto

Ken Williams Points 4686

Vous devriez avoir un tweet quand c'est fait : http://cran.r-project.org/web/packages/twitteR/index.html

2 votes

Ken : C'est f'ing brillant ! Maintenant je n'ai même plus besoin de traîner dans la même pièce. Je peux aller à l'happy hour et boire une bière ou deux jusqu'à ce que je voie un dm disant que le code est fait ! Je viens de l'essayer et ça marche très bien.

29voto

mpk Points 181

cat('Hello world ! \a ')

0 votes

Désolé Mario, mais cela ne m'aide pas du tout. Si je peux voir l'écran, je peux certainement dire quand c'est terminé. Je n'ai pas besoin de sortir quelque chose de plus. Je cherchais quelque chose d'audible. Désolé d'avoir abîmé votre réponse (je n'arrive pas à l'annuler).

8 votes

Pourquoi ce sujet est-il rétrogradé ? Regarde le alarm source et vous verrez que ce qu'il fait est juste une cat("\a") appeler.

0 votes

Eh bien, que savez-vous... voici une description : Donne un signal sonore ou visuel à l'utilisateur. mais c'est la même chose que cat("foo\a") . Peut-être que les utilisateurs ont lu ceci comme cat("Hello world!\n") ? Difficile à dire...

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X