2016-04-21 20 views
16

In ipython Notebook, ist es möglich, die Autoscrolling langer Ausgänge zu deaktivieren? Oder setzen Sie mindestens einen Schwellenwert für die Ausgabelänge, bevor die Autoscrolling-Funktion aktiviert wird?Disable ipython Notebook Autoscrolling

Versuchte den folgenden Befehl

%%javascript 
IPython.OutputArea.auto_scroll_threshold = 9999; 

aber es gibt einen Fehler

Javascript error adding output! 
SyntaxError: Unexpected identifier 
See your browser Javascript console for more details. 
+0

Sie können möglicherweise die Config-Datei ... In der Zwischenzeit bearbeiten, wenn Sie sich auf der Seite der Ergebnisleiste klicken, es wird von "Autoscroll" zu "expanded" zu "hidden" rotieren. –

Antwort

0

Auf ähnliche Art und Weise, die Sie hack a cell to autorun, erhalten Sie folgende Zelle hinzufügen:

%%javascript 
require(
     ["notebook/js/outputarea"], 
     function (oa) { 
      oa.OutputArea.auto_scroll_threshold = -1; 
      console.log("Setting auto_scroll_threshold to -1"); 
     }); 

was wird die auto_scroll_threshold zu -1 was bedeuten s niemals Autoscroll.

Dies funktioniert auf meinen Notebooks, die vertrauenswürdig sind (z. B. jupyter trust notebook.ipynb), nicht sicher, ob beliebige Zellen in nicht vertrauenswürdigen Notebooks ausgeführt werden.

0

Es klingt wie Ihre Installation von jupyter Notebook in irgendeiner Weise falsch konfiguriert ist. Ich kann bestätigen, dass der Befehl, den Sie ausführen, funktionieren sollte. Es gibt mehrere verwandte Probleme in the jupyter project github mit Threads, die für die weitere Problembehandlung hilfreich sein könnten.

%%javascript 
IPython.OutputArea.prototype._should_scroll = function(lines) { 
    return false; 
} 

Es gibt auch eine ipython Notebook-Erweiterung, disable_autoscroll, können Sie sich für eine dauerhafte Veränderung verwenden:

18

Um die automatische Scrollen, führen Sie diese Javascript in einem Notebook-Zelle vor anderen Zellen ausgeführt zu deaktivieren. Folgen Sie ipython issue #2172 für die neuesten Details.

+0

Dies funktioniert nicht für mich, wenn ich dies ausführen, bekomme ich den gleichen Fehler wie OP. – frmsaul

+0

@frmsaul Welche Version von IPython verwenden Sie? Funktioniert immer noch für mich in jupyter Notebook 5.x (und 4.x). – mtd

0

zu blättern nach unten nach run all Befehl zu deaktivieren, führen Sie diesen Code:

%%javascript 
require("notebook/js/notebook").Notebook.prototype.scroll_to_bottom = function() {}