或者有没有办法切换当前文件的语言,以便正确突出显示语法?
例如,*.jsx
实际上是 JavaScript,但 VS Code 无法识别它。
或者有没有办法切换当前文件的语言,以便正确突出显示语法?
例如,*.jsx
实际上是 JavaScript,但 VS Code 无法识别它。
请注意,JoelAZ 的回答要容易得多,并且会导致相同的设置更改!下面的答案仍然有效,只是更多的步骤和更多的大惊小怪。
在Visual Studio Code中,您可以将语言突出显示的持久文件关联添加到您的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命令面板),然后键入. 选择首选项:打开设置 (JSON)打开您的.Psettings JSON
settings.json
要找到正确的语言 ID,请使用Ctrl++ (或菜单中的查看->Shift命令面板),然后键入. 您可以在列表中看到语言 ID,例如键入以查找 Docker 文件的语言 ID ( )。在上面示例的第一个条目中,是文件结尾,是语言 ID。PChange Language Mode
docker
dockerfile
.thor
ruby
该Files: Associations
功能首次在 Visual Studio Code 版本 1.0(2016 年 3 月)中引入。检查发行说明中可用的通配符模式和文档中的已知语言字符串。
按住 Ctrl+Shift+P(或 Mac 上的 cmd),选择“更改语言模式”即可。
但是我仍然找不到一种方法来使 VS Code 识别具有特定扩展名的文件作为某种特定语言。
例如:
// .vscode/settings.json in workspace
{
"files.associations": {
"*Container.js": "javascriptreact",
"**/components/*/*.js": "javascriptreact",
"**/config/routes.js": "javascriptreact"
}
}
我在这里找到了解决方案:https ://code.visualstudio.com/docs/customization/colorizer
去VS_CODE_FOLDER/resources/app/extensions/
那里更新package.json
按照 https://code.visualstudio.com/docs/customization/colorizer#_common-questions上的步骤对我来说效果很好:
要扩展现有的着色器,您可以在 .vscode/extensions 下的新文件夹中创建一个简单的 package.json,并提供 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"]
}]
}
}
您可以将 md.html 扩展名添加到settings.json
文件关联中,以启用markdeep文件的降价格式,如下所示:
"files.associations": {
"*.md.html": "markdown"
},
该settings.json
文件位于不同的位置,具体取决于您的操作系统。例如它~/Library/Application Support/Code/User/settings.json
在 macOS 中。您可以在 VS Code 中使用Ctrl++打开和编辑它。Shiftp
我采用了不同的方法来解决几乎相同的问题,在我的例子中,我做了一个新的扩展,添加了对 Drupal 特定文件(例如 .module 和 .inc)的 PHP 语法高亮支持:https://github。 com/mastazi/VS-code-drupal
正如您在代码中看到的,我创建了一个新扩展,而不是修改现有的 PHP 扩展。显然,我在 Drupal 扩展中声明了对 PHP 扩展的依赖。
这样做的好处是,如果 PHP 扩展有更新,我对 Drupal 的自定义支持不会在更新过程中丢失。