2014-02-25 4 views
10

Wie bekomme ich IPython, um mich zu benachrichtigen, wenn ein Befehl ausgeführt wurde? Kann ich es nutzen, um die Glocke/Alarm oder Pop-up zu verwenden? Ich bin mit Anaconda auf iTerm auf OS X 10.8.5.Benachrichtigen, wenn Ausführung/Befehl abgeschlossen ist

+0

Haben Sie diese automatisch mit jedem Befehl geschehen soll, oder nur, wenn Sie einige 'notify_me()' am Ende des Befehls geben? – asmeurer

Antwort

1

Mit der neuesten Version von iTerm, können Sie die Warnung auf nächste Marke Funktionalität der shell integration verwenden können.

0

Neuere Versionen von iTerm Benachrichtigungen an Notification Center senden, wenn es Ausgabe in einem nicht sichtbaren Tab ist. Sie werden standardmäßig in das Benachrichtigungscenter eingeklappt, Sie können sie jedoch ändern, um auf dem Bildschirm in den Benachrichtigungseinstellungen in den Systemeinstellungen zu bleiben.

+0

Das hat nie für mich funktioniert. Müssen Sie knurren kaufen und installieren? – psquid

+0

@Psquid sehe meine andere Antwort. – asmeurer

3

Verwenden Sie IPython Notebook oder IPython vom Terminal? Wenn Sie IPython Notebook verwenden, schlage ich die Erweiterung von https://github.com/sjpfenninger/ipython-extensions verfügbar benachrichtigen mit (aufzuschreiben verfügbar here)

+0

Danke, aber ich wollte etwas für das Terminal. – psquid

0

Als Alternative habe ich eine einfache Modul/Dekorateur Funktion auf Funktion

Beispiel (nur auf MAC funktioniert) abgeschlossen benachrichtigen:

from ipynotifyer import notifyOnComplete as nf 


@nf() 
def divide_by_five(): 
    return 5/5 

@nf(timer=True) 
def divide_by_ten(): 
    return 5/10 

https://github.com/Casyfill/ipython_notifier

4

Endlich mal jemand created a nice library for it.

Sie es einfach installieren:

pip install jupyternotify 

Import es in Ihrem Notebook:

import jupyternotify 
ip = get_ipython() 
ip.register_magics(jupyternotify.JupyterNotifyMagics) 

und einen magischen Befehl verwenden:

%%notify 
import time 
time.sleep(5) 

und erhalten eine schöne Meldung:

enter image description here

Git-Seite zeigt auch, wie es automatisch geladen wird.