我正在寻找在Jupyter Notebook中突出显示SQL代码的方法。 我只能突出显示SQL单元格魔术,但无法突出显示行魔术和自定义设置。
案例1(有效)
突出显示单元格魔法(以%%sql开头的单元格)
require(['notebook/js/codecell'], function(codecell) {
codecell.CodeCell.options_default.highlight_modes['magic_text/x-mssql'] = {'reg':[/^%%sql/]} ;
Jupyter.notebook.events.one('kernel_ready.Kernel', function(){
Jupyter.notebook.get_cells().map(function(cell){
if (cell.cell_type == 'code'){ cell.auto_highlight(); } }) ;
});
});
第二个案例(不起作用)
行魔法: 行以 %sql 开头
我的尝试: 将正则表达式更改为^%sql
,但它没有起效。
%sql select * from Products limit 5;
案例3(未能生效)
如何对自定义单元格进行语法高亮(以##%%开头的单元格)
我的尝试:尝试将正则表达式更改为^##%%sql
##%%sql
q = " select * from customer limit 2;"
execute_query(q,dbname)
示例图片
从图片中我们可以看到,单元格魔法 %sql 命令没有被突出显示。我想让它们突出显示。
![在此输入图片描述](https://istack.dev59.com/dh0p0.webp)
~/.jupyter/custom
文件夹中创建一个名为another-custom.js
的文件,就像这里所述:https://stackoverflow.com/questions/68340216/any-way-to-bring-back-sql-magic-syntax-highlighting-to-jupyterlab-notebook - A.Ametov~/.jupyter/custom/custom.js
文件中。 - igrinis