如何在Visual Studio代码中手动设置语法突出显示的语言

Flo*_*geb 301 syntax-highlighting editor visual-studio-code

在混乱开始之前,这个问题是关于Code,新的轻量级Visual Studio编辑器.你可以从这里得到它:https://code.visualstudio.com/

我有一个带有CSS的文本文件(.txt),并希望获得语法高亮显示.您可以使用ctrl + shift + p打开命令调色板.但是你不能在Sublime中设置语法.

有没有其他方法可以从我的文本文件中获取CSS着色?

Flo*_*geb 506

在最右下角,留给笑脸的是"纯文字"图标.单击它时,会出现包含所有语言的菜单,您可以在其中选择所需的语言.

VSCode

  • 哦,为什么它不是它的命令调色板的一部分!?我永远不会在那里找到它,谢谢:) (19认同)
  • 我喜欢那个红色箭头. (11认同)
  • Ctrl + K,Ctrl + M和Ctrl + K,M:太混乱了.这个解决方案很棒! (7认同)
  • 现有的捷径确实很愚蠢。我进入键盘快捷键,找到“更改语言模式”并将快捷键设置为“cmd+opt+p”,这与 sublime 不太一样,但比 K+M 更容易肌肉记忆 (4认同)
  • 如何使具有此扩展名的文件始终使用该格式? (3认同)
  • 有没有一种永久的方法可以为项目中的文件设置此设置?由于某些奇怪的原因,我需要为我的(markdown)项目自述文件提供“ProjectNotes.txt”。我讨厌每次编辑文件时都必须这样做 (2认同)

git*_*tgo 256

Ctrl + KM,然后键入(或单击)所需的语言.

或者,要从命令面板访问它,请查找"更改语言模式",如下所示:

在此输入图像描述

  • 如果您看到Extensions面板,您可能按Ctrl + K,Ctrl + M而不是Ctrl + K,M,这是我犯的错误. (40认同)
  • Mac上的cmd + KM. (14认同)
  • 这应该重命名为"更改语法突出显示" (6认同)
  • @gitsitgo,KM的含义是什么? (5认同)
  • 如果它对任何人有帮助,我正在尝试“CMD + k,m”,但应该按“CMD + k”,然后释放键(CMD和k)并按“m”。 (3认同)
  • @AkshayKhale 谢谢,这对我帮助很大。@Chris 的评论实际上是错误的“Ctrl + K,Ctrl + M”不起作用。 (3认同)
  • 令人沮丧的是,这被称为语言,并且在输入语法时无法找到同义词。:( (2认同)
  • 我最初尝试在命令面板中搜索“语法”,感觉比“语言”更自然。微软,如果你在听的话,我必须来堆栈溢出来寻找这个问题的答案,这太愚蠢了;请添加“语法”作为“更改语言模式”的匹配项。 (2认同)

Nob*_*ita 29

人们可能很难让Syntax Highlighting工作的另一个原因是因为他们没有安装适当的语法包.虽然预安装了一些默认语法包(如Swift,C,JS,CSS),但其他语法包可能无法使用.

要解决此问题,您可以Cmd + Shift + P→"安装扩展程序"并查找要添加的语言,例如"Scala".

在此输入图像描述

找到合适的Syntax包,安装并重新加载.这将为您的文件选择具有预定义扩展名的正确语法,即.scala在这种情况下.

最重要的是,您可能希望VS Code将具有某些自定义扩展名的所有文件视为您首选的语言.假设您想要将所有*.es文件都突出显示为JavaScript,然后只需打开"用户设置"(Cmd + Shift + P→"用户设置")并配置您的自定义文件关联,如下所示:

  "files.associations": {
    "*.es": "javascript"
  },
Run Code Online (Sandbox Code Playgroud)

  • 谢谢 - files.associations是我追求的 (4认同)

Jer*_*yal 11

永久设置语言语法:
打开settings.json文件

  • 格式化所有txt的文件与javascript格式
"files.associations": {
            "*.txt": "javascript"
          
     }
Run Code Online (Sandbox Code Playgroud)
  • 将所有未保存的文件(untitled-1等)格式化为javascript
"files.associations": {
            "untitled-*": "javascript"
          
     }
Run Code Online (Sandbox Code Playgroud)


小智 9

自定义文件扩展名的语法突出显示

可以将任何自定义文件扩展名与custom files association“用户设置”中的标准语法突出显示相关联, 如下所示。

更改文件关联设置以永久语法突出显示

请注意,这将是一个永久设置。为了仅设置当前会话,请在Select Language Mode框中输入首选语言(不更改file association设置)

安装新的语法包

如果默认情况下所需的语法包不可用,则可以通过Extension MarketplaceCtrl+Shift+X)添加它们并搜索语言包。

您可以进一步重现上述步骤,以使用新的语法包映射文件扩展名。


Von*_*onC 8

请注意,对于“无标题”编辑器(“ Untitled-1”、“ Untitled-2”),您现在可以在设置中设置语言。

之前的设置是:

"files.associations": {
        "untitled-*": "javascript"
 }
Run Code Online (Sandbox Code Playgroud)

这将不再总是有效,因为VSCode 1.42(2020 年第一季度)将更改那些无标题编辑器的标题
标题现在将是用于编辑标题文件的第一行,沿着通用名称作为描述的一部分。
它不会再以“ untitled-”开头

请参阅“无标题编辑器改进

关于那些“无题”编辑器的相关语言:

默认情况下,无标题文件没有配置特定的语言模式。

VS Code 有一个设置,files.defaultLanguage用于为无标题文件配置默认语言。

在此版本中,该设置可以采用一个新值{activeEditorLanguage},该值将动态使用当前活动编辑器的语言模式,而不是固定的默认值

此外,当您将文本复制并粘贴到无标题编辑器时,如果文本是从 VS Code 编辑器复制的,VS Code 现在将自动更改无标题编辑器的语言模式:

https://media.githubusercontent.com/media/microsoft/vscode-docs/vnext/release-notes/images/1_42/untitled-copy2.gif

workbench.editor.untitled.labelFormat在 VSCode 1.43 中看到。


2021 年 3 月(VSCode 1.55 可能), 问题 118455 “无标题文件的自动语言分类”和 PR 119325正在研究某种无标题文件的自动语言检测。


如果您忘记了,使用 VSCode 1.56,2021 年 4 月:

无标题编辑提示

我们注意到许多新用户不知道必须设置语言才能获得完整的 VS Code 语言支持。

为了帮助解决这个问题,我们为无标题编辑器引入了提示,以帮助用户设置正确的语言模式。
无标题提示可能对高级用户没有帮助,因此在您开始输入时它会立即消失,或者您可以选择不显示以不再显示提示。

无标题编辑器显示无标题提示——https://github.com/microsoft/vscode-docs/raw/vnext/release-notes/images/1_56/untitled-hint.png


使用 VScode 1.60(2021 年 8 月):

自动语言检测

上一个版本,我们为无标题文件引入了一项实验性功能,该功能会根据内容自动设置文件的语言模式。

此功能使用机器学习来猜测语言,并且完全在您的机器上完成。它由开源 ML 库Tensorflow.js和GitHub 用户@yoeo来自Guesslang的 ML 模型提供支持

此版本我们默认启用此功能,并将自动语言检测扩展到没有文件扩展名的文件。在 Notebooks 中,我们提供了一种使用语言选择器进行语言检测的简单方法。这实现了一些有趣的场景:

  • 从网上获取一个示例并将其粘贴到无标题编辑器中 无标题文件的语言检测
    https://media.githubusercontent.com/media/microsoft/vscode-docs/vnext/release-notes/images/1_60/language-detection-untitled.gif

  • “管道到代码”语言检测(展示无扩展名文件的检测)无扩展名文件的语言检测
    https://media.githubusercontent.com/media/microsoft/vscode-docs/vnext/release-notes/images/1_60/language-detection-pipe.gif

  • 笔记本语言选择器中的自动检测选项笔记本的语言检测
    https://media.githubusercontent.com/media/microsoft/vscode-docs/vnext/release-notes/images/1_60/language-detection-notebooks.gif