2016-04-21 67 views
16

在iPython Notebook中,是否可以禁用長輸出的自動滾動?或者至少在自動滾動設置之前爲輸出長度設置一個閾值?禁用iPython Notebook Autoscrolling

嘗試下面的命令

%%javascript 
IPython.OutputArea.auto_scroll_threshold = 9999; 

,但它給出了一個錯誤

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

您可以編輯配置文件......在此期間,如果你點擊的結果酒吧的一側,它會從'autoscroll'旋轉到'expanded'到'hidden'。 –

回答

0

在,你可以hack a cell to autorun,你可以添加以下細胞類似的方法:

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

這會將auto_scroll_threshold設置爲-1,這意味着永遠不會自動滾動。

這適用於我信任的筆記本電腦(例如jupyter trust notebook.ipynb),不知道是否任何單元格在不受信任的筆記本中執行。

0

這聽起來像你的jupyter筆記本電腦的安裝是以某種方式配置錯誤。我可以確認你正在運行的命令應該工作。 the jupyter project github中有幾個相關問題,您可能會發現有助於進一步解決問題的線程。

18

要禁用自動滾動,在筆記本電池執行這個JavaScript執行其他細胞前:

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

還有一個IPython的筆記本擴展,disable_autoscroll,你可以用一個更永久的改變。請按照ipython issue #2172瞭解最新的細節。

+0

這對我不起作用,當我運行這個時,我得到與OP一樣的錯誤。 – frmsaul

+0

@frmsaul您使用的是哪種版本的IPython筆記本?在jupyter notebook 5.x(和4.x)中仍然適用於我。 – mtd

0

run all命令禁用滾動至底部,執行此代碼:

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