现已推出!阅读 10 月份发布的新功能和修复。

编程语言

支持数百种编程语言

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

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

前往 市场 或使用集成的 扩展视图 并搜索您所需的编程语言,以查找代码片段、代码补全/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 的概述。大多数语言扩展在其自述文件中还包含其核心功能的摘要。

VS Code 中的语言功能

不同语言及其扩展的支持丰富程度各不相同

  • 语法高亮和括号匹配
  • 智能代码补全(IntelliSense,与 GitHub Copilot 结合的 AI)
  • 代码校验和纠正
  • 代码导航(转到定义,查找所有引用)
  • 调试
  • 重构

使用 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 扩展 API 文档中。

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

可以,您也可以通过 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"