现已推出!阅读关于 11 月的新功能和修复的信息。

VS Code 中的多语言 Notebooks

什么是多语言编程?

多语言编程是一种利用多种编程语言的优势,为不同的任务使用不同编程语言的做法。

什么是 Notebooks?

Notebooks 是交互式文件,允许混合可执行代码、可视化、方程式和叙述文本。Notebooks 由代码单元格组成,可以轻松快速地迭代代码。由开源项目 Jupyter 推广,它们已成为 Python 数据科学 的事实工具,并且是教授或学习新编程语言和快速原型设计的重要资源。

多语言 Notebooks

当多语言编程遇到 Notebooks 时,您将获得多语言 Notebooks!与通常用于 Python 的传统 Notebooks 不同,多语言 Notebooks 扩展允许您在 Visual Studio Code 的同一个 Notebook 中以原生方式使用多种编程语言!无需再使用包装器库或魔术命令即可在同一个 Notebook 中使用您喜欢的语言!

Polyglot Notebooks Extension

支持的语言

  • C#
  • F#
  • PowerShell
  • JavaScript
  • HTML
  • Mermaid
  • SQL
  • KQL(Kusto 查询语言)

特性

除了执行上述语言的代码之外,您还可以利用

  • 连接到 Microsoft SQL Server 数据库和 Kusto 群集并从中查询

  • 语言服务器支持,例如 每种语言 的 IntelliSense、自动完成和语法突出显示。

  • 语言之间的变量共享,确保 Notebook 中的持续工作流。(变量共享不适用于 HTML 和 Mermaid)

  • 变量资源管理器,用于检查变量的状态和子内核中存在的变量。

  • Jupyter/JupyterLab 之间的完全可移植性.

要了解所有功能,请访问 VS Code Marketplace 多语言 Notebooks 扩展。

先决条件

要在 VS Code 中使用多语言 Notebooks,您需要

为什么需要 .NET SDK?

多语言 Notebooks 扩展由 .NET Interactive 提供支持,它是一个基于 .NET 技术构建的前沿创新引擎,可以运行多种语言并在它们之间共享变量。在多语言 Notebooks 中,此引擎充当 Notebook 的内核,也是需要 .NET 7 SDK 的原因。

入门

  1. 要创建您的第一个多语言 Notebook,请打开命令面板(⇧⌘P(Windows、Linux Ctrl+Shift+P),然后选择 多语言 Notebooks:创建新的空白 Notebook,选择 .ipynb,然后选择您要开始使用的语言。

    您还可以通过创建新文件并为其提供扩展名 .ipynb 来创建 Notebook。在这种情况下,请确保在右上角选择 .NET Interactive 作为 Notebook 的内核。

    Kernel Picker

  2. 默认情况下,添加的单元格将与上面的单元格使用相同的语言。要更改语言,请选择单元格右下角的语言选择器。

    Cell Language Picker

  3. 开始编码!

    Example of Polyglot Notebook

处理数据

连接到 Microsoft SQL Server 数据库和 Kusto 群集并从中查询。

要获取有关连接数据源和使用数据源的更详细说明,请访问 处理数据 文档。

Connecting to SQL Example

语言服务器支持

多语言 Notebooks 中的每种语言都通过语言服务器支持获得一流的编辑体验,例如自动完成、语法突出显示和签名帮助。

变量共享和变量资源管理器

使用 #!set 命令在语言之间共享变量,并使用变量资源管理器检查每种语言的变量值。请注意,如果您之前使用的是 #!share 命令,它将继续工作。选择全局工具栏中的 变量 图标以打开变量资源管理器。

要了解有关变量共享的更多信息,请访问 变量共享 文档。

功能请求和反馈

多语言 Notebooks 扩展由 .NET Interactive 提供支持,您可以在 .NET Interactive GitHub 存储库 上提供反馈并输入问题。