删除仅“ @apply”的Sublime语法突出显示

时间:2019-06-03 02:41:23

标签: syntax-error sublimetext3 tailwind-css

我正在为我的scss文件使用Tailwindcss,它引入了一个新命令@apply。但是问题是Sublime强调了这一点(大概是错误或无法识别的语法)。我该如何关闭单个突出显示,以免对我所有@apply规则都显示为明显错误?

1 个答案:

答案 0 :(得分:1)

Sublime中的语法突出显示由语法定义驱动,这些语法定义使Sublime能够识别该语言并适当地突出显示该语言。这可以在tmLanguage(与旧的TextMate兼容)XML PLIST文件中,也可以在sublime-syntax(具有更多功能的新表单)JSON文件中完成。

从本质上讲,语法定义可以归纳为正则表达式规则列表以及对如何以及何时应用它们以识别语言的描述。您正在使用的语法是针对SCSS的,该语法无法识别@apply指令,因此将其标记为无效。

因此,您没有可以进行的简单设置或切换就可以阻止这种情况的发生,而您必须做以下三件事之一:

  1. 修改语法定义以了解@apply是有效的,这样它就不会突出显示为无效代码

  2. 修改您的配色方案,以免将令人讨厌的颜色用于SCSS文件中的无效代码。

  3. 使用一种备用语法,该语法要么了解@apply,要么不会在特定范围内将代码标记为无效

第一个并不是特别简单,因为它需要了解@apply语法的工作原理以及如何在Sublime中编写和修改语法定义。

第二种选择很容易实现;基本上,您将添加与范围source.css invalid.illegal匹配的配色方案规则,并像纯文本一样为它上色,而不是您的配色方案使用的颜色。但是,不可能仅将其定位到@apply类型的行,因此您将不会被告知其他实际上无效的无效代码。

对于第三个选项,有一个Syntax Highlighting for Sass软件包,其中还包括SCSS的语法定义,而@apply指令没有问题:

Sample syntax highlighting

此软件包比您当前使用的软件包要新得多,因此您可能会从视觉上看到一些视觉上改变的颜色,因为对于相同的构造,此语法使用的范围可能不同于旧软件包;例如,最近几年有关使用范围的指南有了很大的发展。

您可能还希望同时阅读该程序包的自述文件,其中概述了如果您来自较早的程序包,则可能需要进行其他设置。