我正在为数据库课程编写Jupyter笔记本;大多数单元格将包含SQL代码,我使用IPython SQL magic。目前,我必须在每个单元格前加%%sql
。有没有办法避免在每个单元格之前键入%%sql
,将其设为默认值?
我发现了一个相关的问题 How do I set up default cell magics for every ipython notebook cell?。但是,我无法为Jupyter找到一个SQL内核。
答案 0 :(得分:6)
Jupyter docs告诉您如何编辑CodeMirror设置。 CodeMirror有一个名为value
的选项,用于确定CodeMirror单元格的默认值(doc link)。
因此,在~/.jupyter/nbconfig/notebook.json
粘贴以下代码:
{
"CodeCell": {
"cm_config": {
"value": "%%sql"
}
}
}
现在每个新单元格中都会有%%sql
。显然,这个解决方案适用于任何单元魔术或者您可能希望代码单元具有的任何默认值。