VSCode 和 SublimeText 4 HTML+JavaScript 语法高亮的区别

问题描述

有人可以向我解释为什么 Sublime Text 4 突出显示此 HTML 的方式与 VSCode 不同吗?

<html>
    <body>
        <script>
            if (true) { 
        </script>
        
        <script>
            }
        </script>
    </body>
</html>

两者都将 HTML 作为选定的语法。我也在两者中使用相同的 textmate 配色方案。

Sublime Text 4

ST4 HTML+JS

(使用 Scope Hunter 包检查)

VSCode

VSCODE HTML+JS

(使用 VSCode 中的开发者工具检查)

VSCode dev tools

更新

我正在使用一个服务器端 JavaScript 平台,在这个平台上,像这样分解块就像 PHP 一样。

更新 2

我正在开发语法高亮器,但不适用于服务器端 JS。

解决方法

真正的问题是,为什么他们应该首先正确地突出显示它?您不能拆分 <script> 块。不过,您可以在 PHP 中做类似的事情,但您的问题是关于 JavaScript。

您可以使用 HTML 创建一个简单的 test.html 文档并在浏览器中打开它。打开开发者工具(例如在 Chrome 中)将显示有关“未完成的脚本”等错误。