動機
基本的に楽できるところは楽にするというスタンスではあるけれど、入力補完系は目的のものが入力できなかった場合のリカバリがかえって手間になることがあって個人的には好きではない(入力候補が見える程度で良い)。
特に括弧の自動入力については、括弧内の入力を終えた時にカーソルを移動しなければならいため、結局手動で括弧の入力する時と手間が変わらない。
また、私は Jupyter Notebook では autopep8 を使用している。
この時、括弧を行を跨ぐように改行すると、インデントが崩れることがあり、その修正に結構な労力を割かれる。
ということで、 Jupyter Notebook 上の括弧の自動補完を切ることにした。
手順
Jupyter Notebook 上で次のコードを実行する。
from notebook.services.config import ConfigManager
c = ConfigManager()
c.update('notebook',
{"CodeCell": {"cm_config": {"autoCloseBrackets": False}}})
実行すると ~/.jupyter/nbconfig/notebook.json
が更新されて自動補完をオフにできる。
~/.jupyter/nbconfig/notebook.json
{
"Cell": {
"cm_config": {
"lineNumbers": false,
"autoCloseBrackets": false
}
},
"load_extensions": {
"jupyter-autopep8/jupyter-autopep8": true
},
"CodeCell": {
"cm_config": {
"autoCloseBrackets": false
}
}
}
"autoCloseBrackets": false
となっていることがわかる。
Jupyter Notebook で上記手順を行うのが面倒な場合には直接 notebook.json を編集すればよい。