Edited at

Jupyterのセルにデフォルトで行番号を表示


Jupyterのセルにデフォルトで行番号を表示

僕は Jupyter Notebook を愛用しているのですが、セルの行番号を表示させるのにいちいちコマンドを入力して表示させるが嫌になったのでデフォルトで設定してみました。


動作

以下はipynbを新規作成した画面ですが、既に行番号が表示されているのがわかると思います。

image.png

そして、新しいセルを作成しても行番号は表示されたままです。

image.png

なお、もちろん一度ファイルを閉じ、jupyter-notebook を再起動しても再び行番号が表示されます。


環境


  • Ubuntu 16.04 LTS

  • Python3.5.2

  • jupyter 4.4.4

  • jupyter-notebook 5.6.0


コード

やることは簡単で以下のコードを ~/.jupyter/custom/custom.js に追記するだけです。

~/.jupyter/custom のファイルやディレクトリが無い方は以下のコマンドで作成し、新規 custom.js ファイルに書き込んでください。

※ ちなみにpyenv-virtualenvを使っている人の.jupyter/の場所は~/.pyenv/versions/<your-version>/etc/jupyter/です。


console

$ mkdir -p ~/.jupyter/custom



custom.js

// custom.js

//--------------------------------------------------------------------------------
// Display line numbers in code cell by default
//--------------------------------------------------------------------------------

var cell = Jupyter.notebook.get_selected_cell();
var config = cell.config;
var patch = {
CodeCell:{
cm_config:{lineNumbers:true}
}
}
config.update(patch)



参考