在 VS Code 中试试

编程语言

支持数百种编程语言

在 Visual Studio Code 中,我们几乎支持所有主流编程语言。其中一些内置支持,例如 JavaScript、TypeScript、CSS 和 HTML,但更丰富的语言扩展可以在 VS Code Marketplace 中找到。

以下是八个最受欢迎的语言扩展

访问 Marketplace 或使用集成的扩展视图并搜索您想要的编程语言,以查找代码片段、代码补全/IntelliSense 提供程序、代码检查器、调试器等。

注意:如果您想更改 VS Code 的显示语言(例如更改为中文),请参阅显示语言主题。

特定语言文档

了解 VS Code 支持的编程语言。其中包括:C++ - C# - CSS - Dart - Dockerfile - F# - Go - HTML - Java - JavaScript - JSON - Julia - Less - Markdown - PHP - PowerShell - Python - R - Ruby - Rust - SCSS - T-SQL - TypeScript

单击任何链接项以获取关于如何在特定语言环境中使用 VS Code 的概述。大多数语言扩展在其 README 中也包含核心功能的摘要。

VS Code 中的语言功能

支持的丰富程度因不同语言及其扩展而异

  • 语法高亮和括号匹配
  • 智能补全(IntelliSense,人工智能配合 GitHub Copilot
  • 代码检查和修正
  • 代码导航(转到定义,查找所有引用)
  • 调试
  • 重构

使用 AI 增强补全

在 VS Code 中,您可以使用人工智能 (AI) 增强您的编码,例如提供代码行或整个函数的建议、快速创建文档以及帮助创建与代码相关的工件(如测试)。

GitHub Copilot 是一款由 AI 提供支持的代码补全工具,可帮助您更快、更智能地编写代码。您可以在 VS Code 中使用 GitHub Copilot 扩展来生成代码,或从它生成的代码中学习。

GitHub Copilot extension in the VS Code Marketplace

您可以在Copilot 文档中了解更多关于如何开始使用 Copilot 的信息。

更改选中文件的语言

在 VS Code 中,我们默认根据文件的扩展名提供语言支持。然而,有时您可能想更改语言模式,为此,请单击状态栏右侧的语言指示器。这将显示选择语言模式下拉菜单,您可以在其中为当前文件选择另一种语言。

Language Selector

提示:您可以通过运行更改语言模式命令 (⌘K M (Windows, Linux Ctrl+K M)) 来获得相同的下拉菜单。

语言标识符

VS Code 将语言模式与特定的语言标识符关联起来,以便根据当前语言模式启用各种 VS Code 功能。

语言标识符通常(但并非总是)是编程语言名称的小写形式。请注意,精确的标识符匹配区分大小写('Markdown' != 'markdown')。未知语言文件使用语言标识符 plaintext

您可以在更改语言模式 (⌘K M (Windows, Linux Ctrl+K M)) 下拉菜单中看到当前已安装语言及其标识符的列表。

language identifiers

您可以在语言标识符参考中找到已知标识符的列表。

为语言添加文件扩展名

您可以使用 files.associations 设置为现有语言添加新的文件扩展名。

例如,以下设置将 .myphp 文件扩展名添加到 php 语言标识符

    "files.associations": {
        "*.myphp": "php"
    }

IntelliSense (⌃Space (Windows, Linux Ctrl+Space)) 将向您显示可用的语言标识符。

Language ID IntelliSense

后续步骤

现在您知道 VS Code 支持您关心的语言了。继续阅读...

  • 代码导航 - 快速查看和转到定义等
  • 调试 - 这是 VS Code 真正出彩的地方

常见问题

我可以贡献自己的语言服务吗?

是的,您可以!请查看 VS Code 扩展 API 文档中的示例语言服务器

如果我不想创建一个完整的语言服务,我可以重用现有的 TextMate Bundle 吗?

是的,您也可以通过 TextMate 语法高亮器为您的喜爱语言添加支持。请参阅扩展 API 部分的语法高亮指南,了解如何将 TextMate .tmLanguage 语法文件集成到 VS Code 中。

我可以将其他文件扩展名映射到某个语言吗?

是的,您可以使用 files.associations 设置将文件扩展名映射到现有语言,可以全局设置,也可以按工作区设置。

下面是一个示例,将更多文件扩展名与 PHP 语言关联起来

"files.associations": {
    "*.php4": "php",
    "*.php5": "php"
}

如果需要,您还可以为语言配置完整的文件路径。以下示例将文件夹 somefolder 中的所有文件与 PHP 关联

"files.associations": {
    "**/somefolder/*.*": "php"
}

请注意,该模式是一个glob 模式,如果路径包含 /,它将匹配文件的完整路径;否则,它将匹配文件名。

如何设置新文件的默认语言?

使用 files.defaultLanguage 设置,您可以将所有新文件映射到默认语言。每当打开一个新的空白文件时,编辑器将配置为该语言模式。

此示例将新文件与 HTML 语言关联

  // The default language mode that is assigned to new files.
  "files.defaultLanguage": "html"