或者是否有一种方法可以切换当前文件的语言,以便正确地突出显示语法?

例如“*”。jsx实际上是JavaScript,但VS Code不识别它。


当前回答

最简单的方法:

进入“File > Preferences > Settings” 搜索“文件关联” 点击“添加项目” 添加扩展名(*.ext)和首选语言。

这是所有。

其他回答

按住Ctrl+Shift+P(或Mac上的cmd),选择“更改语言模式”,就在那里。

但是我仍然找不到一种方法使VS Code识别具有特定扩展名的文件作为某种特定的语言。

在https://code.visualstudio.com/docs/customization/colorizer#_common-questions上的步骤对我来说很有效:

要扩展现有的着色器,可以创建一个简单的 包中。在.vscode/extensions下的一个新文件夹中,并提供 extensionDependencies属性指定您想要的自定义 加到…在下面的示例中,扩展名.mmd被添加到 减价再着色。注意,不仅需要extensionDependency 名称匹配自定义而且语言id必须匹配 正在扩展的着色器的语言id。

{
    "name": "MyMarkdown",
    "version": "0.0.1",
    "engines": {
        "vscode": "0.10.x"
    },
    "publisher": "none",
    "extensionDependencies": [
        "markdown"
    ],
    "contributes": {
        "languages": [{
            "id": "markdown",
            "aliases": ["mmd"],
            "extensions": [".mmd"]
        }]
    }
}

我发现的最简单的全局关联方法是简单地按Ctrl+k m(或Ctrl+Shift+P并键入“更改语言模式”),打开你所关联的类型的文件。

在第一个选择将是选项“配置文件关联的'x'”(任何文件类型-见附图)。选择此选项可让您选择语言,然后将使文件类型关联永久保存。

自最初的问题和接受的答案(我不知道它什么时候改变了)以来,这可能已经改变了(可能已经改变了),但它比在接受的答案和其他一些答案中手动编辑步骤要容易得多,并且完全避免了必须混乱可能不明显的id。

更新

请注意,JoelAZ的答案要简单得多,结果是相同的设置更改!下面的答案仍然有效,只是更多的步骤和更多的麻烦。

旧的答案

在Visual Studio Code中,您可以在设置中添加用于突出显示语言的持久文件关联。像这样的Json文件:

// settings.json
// Place your settings in this file to overwrite the default settings
{
  "some_setting": custom_value,
  ...

  "files.associations": {
    "*.thor": "ruby",
    "*.jsx": "javascript",
    "Jenkinsfile*": "groovy"
  }
}

您可以使用Ctrl+Shift+P(或从菜单中的View ->命令面板),然后键入设置JSON。选择Preferences: Open User Settings (JSON)来打开Settings . JSON。

要找到正确的语言ID,使用Ctrl+Shift+P(或菜单中的View ->命令面板),然后键入更改语言模式。你可以在列表中看到语言ID,例如输入docker来查找docker文件的语言ID (dockerfile)。在上面示例的第一个条目中,.thor是文件结尾,ruby是语言ID。

Files: Associations特性在Visual Studio Code 1.0版(2016年3月)中首次引入。检查发行说明中可用的通配符模式和文档中已知的语言字符串。

我在这里找到了解决方案:https://code.visualstudio.com/docs/customization/colorizer

进入VS_CODE_FOLDER/resources/app/extensions/,在那里更新package.json