你的第一个扩展

在本主题中,我们将教你构建扩展的基本概念。请确保你已安装 Node.jsGit

首先,使用 YeomanVS Code 扩展生成器来搭建一个可用于开发的 TypeScript 或 JavaScript 项目脚手架。

  • 如果你不想安装 Yeoman 供以后使用,请运行以下命令

    npx --package yo --package generator-code -- yo code
    
  • 相反,如果你想全局安装 Yeoman 以便重复运行,请运行以下命令

    npm install --global yo generator-code
    
    yo code
    

对于 TypeScript 项目,请填写以下字段

# ? What type of extension do you want to create? New Extension (TypeScript)
# ? What's the name of your extension? HelloWorld
### Press <Enter> to choose default for all options below ###

# ? What's the identifier of your extension? helloworld
# ? What's the description of your extension? LEAVE BLANK
# ? Initialize a git repository? Y
# ? Which bundler to use? unbundled
# ? Which package manager to use? npm

# ? Do you want to open the new folder with Visual Studio Code? Open with `code`

在编辑器中,打开 src/extension.ts 并按下 F5,或从命令面板(⇧⌘P(Windows、Linux Ctrl+Shift+P)运行命令 Debug: Start Debugging。这将在一个新的 Extension Development Host 窗口中编译并运行该扩展。

在新窗口的命令面板(⇧⌘P(Windows、Linux Ctrl+Shift+P)中运行 Hello World 命令

你应该会看到 Hello World from HelloWorld! 的通知弹出。成功!

如果你在调试窗口中看不到 Hello World 命令,请检查 package.json 文件,并确保 engines.vscode 版本与已安装的 VS Code 版本兼容。

开发扩展

让我们对消息进行一些修改

  1. extension.ts 中将消息从 "Hello World from HelloWorld!" 更改为 "Hello VS Code"。
  2. 在新窗口中运行 Developer: Reload Window
  3. 再次运行 Hello World 命令。

你应该会看到更新后的消息显示出来。

以下是一些你可以尝试的想法

  • 在命令面板中为 Hello World 命令起一个新的名字。
  • 贡献另一个在信息框中显示当前时间的命令。贡献点是你对 package.json 扩展清单 进行的静态声明,用于扩展 VS Code,例如向你的扩展添加命令、菜单或键绑定。
  • vscode.window.showInformationMessage 替换为另一个 VS Code API 调用,以显示警告消息。

调试扩展

VS Code 内置的调试功能使调试扩展变得轻而易举。通过点击代码行左侧的空白槽来设置断点,VS Code 将命中该断点。你可以将鼠标悬停在编辑器中的变量上,或者使用左侧的 运行和调试 视图来检查变量的值。调试控制台允许你评估表达式。

你可以在 Node.js 调试主题中了解更多关于在 VS Code 中调试 Node.js 应用的信息。

下一步计划

在下一个主题 扩展剖析 中,我们将仔细查看 Hello World 示例的源代码并解释关键概念。

你可以在此处找到本教程的源代码:https://github.com/microsoft/vscode-extension-samples/tree/main/helloworld-sample扩展指南主题包含其他示例,每个示例都演示了一个不同的 VS Code API 或贡献点,并遵循了我们的 UX 指南中的建议。

使用 JavaScript

本指南中,我们主要介绍如何使用 TypeScript 开发 VS Code 扩展,因为我们相信 TypeScript 为开发 VS Code 扩展提供了最佳体验。不过,如果你更喜欢 JavaScript,仍然可以使用 helloworld-minimal-sample 继续学习。

用户体验指南 (UX Guidelines)

现在也是复习我们的 UX 指南的好时机,这样你就可以开始设计符合 VS Code 最佳实践的扩展用户界面了。

English 한국어 中文(简体) 中文(繁體)
© . This website operates independently and is not affiliated with or endorsed by Microsoft. All brand names, logos, and trademarks are the property of their respective owners.