Ipythonノートブックで行の折り返しを有効にしようとしています。結果なしでグーグルで検索し、ターミナルでipython Notebook--helpと入力しました。これにより、構成ファイルの構成コマンドが大量に発生しますが、行の折り返しはありません。 ipnotebookにこの機能があるかどうか、ある場合はそれを有効にする方法を知っている人はいますか?どうぞよろしくお願いいたします。ありがとうございました。
@Mattが指摘したように、ラッピングを有効にするようにCodeMirrorを構成する必要があります。
ただし、これはcustom.js
に次の行を追加するだけで実現できます。
IPython.Cell.options_default.cm_config.lineWrapping = true;
したがって、すべてのセルをループする必要はありません。同様の方法で、 行番号 を有効にしたり、 インデントの深さ を設定したりできます(他のオプションについては、@ Mattによって投稿されたリンクを参照してください)。 custom.js
の場所はOSによって異なります(私のUbuntuマシンでは~/.ipython/profile_default/static/custom
です)。
IPython 3では、プレーンコールは機能しなくなったため、適切なイベントハンドラー内に設定を配置する必要があります。考えられる解決策は次のようになります。
define([
'base/js/namespace',
'base/js/events'
],
function(IPython, events) {
events.on("app_initialized.NotebookApp",
function () {
IPython.Cell.options_default.cm_config.lineWrapping = true;
}
);
}
);
Ipython 3でノートブックに行の折り返しを実装するために、 上記のリンクされた@Jakobの回答 と@Jakobの実際の回答を使用しました。私の場合、1行のコードを使用しても機能しませんでしたが、custom.js
に以下を追加すると機能します。
$([IPython.events]).on('app_initialized.NotebookApp', function(){
IPython.CodeCell.options_default['cm_config']['lineWrapping'] = true;
});
ほとんどのノートブックはCodemirrorを利用しているため、検索するオプションは これ 問題は、CodeMirrorに構成を渡す簡単な方法がないため、javascript un _custom.js
_は、構成を適切なオブジェクトに適用します。
頭のてっぺんから手を振る:_IPython.CodeCell.default_options.cm
_ les lineWrapping
をtrueに設定してから、IPython.notebook.get_cells()
(既にインスタンス化されたオブジェクト)をループしてeditor
属性を取得しますおよびsetOption('lineWrapping',true)
。
あなたはそれを行うJS拡張を作成し、提案する(そしてインスピレーションを得る)ことができます ここ 。