VS Code 中的 Polyglot Notebook
什么是 Polyglot 编程?
Polyglot 编程是指使用多种编程语言来利用每种语言在不同任务上的优势。
什么是 Notebook?
Notebook 是交互式文件,允许混合可执行代码、可视化、方程和叙述性文本。Notebook 由代码单元格组成,可以轻松地快速迭代代码。Notebook 由开源项目 Jupyter 普及,已成为 Python 数据科学的事实标准工具,也是教授或学习新编程语言和快速原型设计的绝佳资源。
Polyglot Notebook
当 polyglot 编程遇到 notebooks 时,您就会得到 Polyglot Notebooks!与传统上通常与 Python 一起使用的 notebooks 不同,Polyglot Notebooks 扩展允许您在 Visual Studio Code 的同一个 notebook 中本地使用多种编程语言!再也不需要包装器库或魔术命令就可以在同一个 notebook 中使用您喜欢的语言了!

支持的语言
- C#
- F#
- PowerShell
- JavaScript
- HTML
- Mermaid
- SQL
- KQL(Kusto 查询语言)
功能
除了执行上述语言的代码外,您还可以利用
-
连接到 Microsoft SQL Server 数据库和 Kusto 集群并进行查询。
-
语言服务器支持,例如 IntelliSense、自动补全和语法高亮显示,每种语言都有。
-
语言之间的变量共享,确保 notebook 内的连续工作流程。(HTML 和 Mermaid 不支持变量共享)
-
变量浏览器,用于检查变量的状态以及存在的子内核变量。
-
与 Jupyter/JupyterLab 完全可移植.
要了解所有功能,请访问 VS Code Marketplace 中的 Polyglot Notebooks 扩展。
先决条件
要在 VS Code 中使用 Polyglot Notebooks,您需要
我为什么需要 .NET SDK?
Polyglot Notebooks 扩展由 .NET Interactive 提供支持,.NET Interactive 是一个基于 .NET 技术构建的尖端创新引擎,可以运行多种语言并共享它们之间的变量。在 Polyglot Notebooks 中,此引擎充当 notebook 的内核,这也是需要 .NET 9 SDK 的原因。
入门
-
要创建您的第一个 polyglot notebook,请打开命令面板(⇧⌘P (Windows、Linux Ctrl+Shift+P)),然后选择Polyglot Notebooks: Create new blank notebook,选择
.ipynb,然后选择您想开始使用的语言。您也可以通过创建新文件并为其指定
.ipynb扩展名来创建 notebook。在这种情况下,请确保在右上角将.NET Interactive 选为 notebook 的内核。
-
默认情况下,添加的单元格将与上面的单元格使用相同的语言。要更改语言,请选择单元格右下角的语言选择器。

-
开始编码!

处理数据
连接到 Microsoft SQL Server 数据库和 Kusto 集群并进行查询。
要获取有关连接和处理数据源的更详细说明,请访问 处理数据文档。

语言服务器支持
Polyglot Notebooks 中的每种语言都具有一流的编辑体验,支持语言服务器,例如自动补全、语法高亮和签名帮助。
变量共享和变量浏览器
使用 #!set 命令在语言之间共享变量,并使用变量浏览器检查每种语言的变量值。请注意,如果您之前使用的是 #!share 命令,它将继续工作。选择全局工具栏中的变量图标以打开变量浏览器。
要详细了解变量共享,请访问 变量共享文档。
功能请求和反馈
Polyglot Notebooks 扩展由 .NET Interactive 提供支持,您可以在 .NET Interactive GitHub 存储库中提供反馈并报告问题。