在VS Code UserVoice页面上,there was a request为HTML实体添加建议和突出显示,例如&
。微软将此标记为完整,并附有评论,声明“此功能是在Visual Studio 2013中为HTML和Razor文档实现的”。我认为这意味着它是在VS 2013中实现的,而不是VS Code。
假设这是正确的,我如何在HTML文档中为这些项添加突出显示?它们似乎在XML文档中正确突出显示。看看syntaxes / html.plist,它看起来应该是捕获HTML实体,所以我认为主题会适当地为它们着色,但我真的不明白它是如何在后端工作的。
我的问题是:
VS Code是否应突出显示这些项目?
如果没有,我可以更改HTML语法文件或主题文件吗?如果是这样,我该怎么做?
这是html.plist(这是默认安装):
<key>entities</key>
<dict>
<key>patterns</key>
<array>
<dict>
<key>captures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>punctuation.definition.entity.html</string>
</dict>
<key>3</key>
<dict>
<key>name</key>
<string>punctuation.definition.entity.html</string>
</dict>
</dict>
<key>match</key>
<string>(&)([a-zA-Z0-9]+|#[0-9]+|#x[0-9a-fA-F]+)(;)</string>
<key>name</key>
<string>constant.character.entity.html</string>
</dict>
<dict>
<key>match</key>
<string>&</string>
<key>name</key>
<string>invalid.illegal.bad-ampersand.html</string>
</dict>
这里有一些截图来澄清我的意思(两者都采用相同的主题):
当涉及到这些实体时,XML.plist看起来非常类似于HTML.plist,但我不会将XML.plist添加到这个已经很长的问题中,除非有人没有他们自己的副本并希望我这样做。
答案 0 :(得分:1)
您可以使用扩展程序
您可以使用VS Code的Yeoman扩展生成器,yo代码将新的TextMate主题文件(.tmTheme)添加到VS Code安装中。扩展生成器获取现有的TextMate主题文件并将其打包以在VS Code中使用。
ColorSublime有数百个现有的TextMate主题可供选择。选择您喜欢的主题并复制下载链接以在Yeoman生成器中使用。它将采用“http://colorsublime.com/theme/download/(number)
”之类的格式。 “代码”生成器将提示您输入.tmTheme文件的URL或文件位置,主题名称以及与主题相关的其他信息。
将生成的主题文件夹复制到.vscode/extensions
文件夹下的新文件夹,然后重新启动VS Code。
使用File&gt;打开Color Theme选取器主题。偏好&gt;颜色主题,您可以在下拉菜单中看到您的主题。向上和向下箭头以查看主题的实时预览。
您也可以自己创建主题
您还可以从头开始创作自己的TextMate主题。有关详细信息,请参阅TextMate主题和语言语法命名约定文档。
除了TextMate语言语法标准范围外,VS Code还具有自定义主题设置,您可以使用它们来调整自己的主题:
rangeHighlight
:突出显示范围的背景颜色,例如快速打开和查找功能。
selectionHighlight
:选择时突出显示的区域的背景颜色。
inactiveSelection
:不在焦点时选择的背景颜色。
wordHighlight
:读取访问期间符号的背景颜色,如读取变量。
wordHighlightStrong
:写入访问期间符号的背景颜色,如写入变量。
findMatchHighlight
:与搜索匹配的区域的背景颜色。
currentFindMatchHighlight:与搜索匹配的当前区域的背景颜色。
findRangeHighlight
:为搜索选择的区域的背景颜色。
linkForeground
:链接的颜色。
activeLinkForeground
:活动链接的颜色。
hoverHighlight
:悬停时的背景颜色。
referenceHighlight
:查找所有引用时引用的背景颜色。
guide
:显示指南的颜色以指示嵌套级别。
您可以在此处找到包含自定义设置的VS Code主题示例。
创作主题相当棘手,因为语法的行为有点不同。尝试遵循TextMate约定并避免在主题中使用特定于语言的规则,因为语法也可以被扩展名替换。
答案 1 :(得分:0)
这是VS代码的功能请求:https://github.com/Microsoft/vscode/issues/784
回答你的问题:
答案 2 :(得分:0)
您可以更改“颜色主题”以突出显示 VS Code 中的 HTML 实体。 转到首选项 -> 颜色主题并选择另一个主题 - 例如“Light+(默认光)”或“Dark+(默认暗)”使 HTML 实体的突出显示工作。