PHP 的 HERE Doc (EOT) 语法在 Sublime Text 3 上突出显示与正斜杠的差异
PHP's HERE Doc (EOT) syntax highlighting discrepancy with forward slash on Sublime Text 3
我不熟悉 Sublime Text 3 如何使用语法高亮显示,例如,如果它完全依赖于主题,或者它是内置于主题 运行 的标准中,但在我的例子中,有一些语法突出显示使用 PHP 的 HERE 文档和正斜杠的差异。一旦出现正斜杠,ST3 就会认为以下所有代码都是该标记的一部分。
这是我可以解决的问题吗?
正斜杠语法突出显示差异
没有正斜杠和正确的语法突出显示
因为您的 HEREDOC 名为 JAVASCRIPT
,Sublime Text 正在尝试将内容语法高亮显示为 JavaScript。
但是因为你包含了 HTML(<script>...</script>
标签),它突出显示不正确(它似乎认为它是一个正则表达式,因此 find/expect HEREDOC 结束,直到(它认为是)正则表达式。)。
解决方法是简单地更改您的代码,将 HEREDOC 命名为 HTML
:
<?php
$inlineJS =
<<<HTML
<script>
$('ele').click(function(){
// some code
});
</script>
HTML;
?>
我不熟悉 Sublime Text 3 如何使用语法高亮显示,例如,如果它完全依赖于主题,或者它是内置于主题 运行 的标准中,但在我的例子中,有一些语法突出显示使用 PHP 的 HERE 文档和正斜杠的差异。一旦出现正斜杠,ST3 就会认为以下所有代码都是该标记的一部分。
这是我可以解决的问题吗?
正斜杠语法突出显示差异
没有正斜杠和正确的语法突出显示
因为您的 HEREDOC 名为 JAVASCRIPT
,Sublime Text 正在尝试将内容语法高亮显示为 JavaScript。
但是因为你包含了 HTML(<script>...</script>
标签),它突出显示不正确(它似乎认为它是一个正则表达式,因此 find/expect HEREDOC 结束,直到(它认为是)正则表达式。)。
解决方法是简单地更改您的代码,将 HEREDOC 命名为 HTML
:
<?php
$inlineJS =
<<<HTML
<script>
$('ele').click(function(){
// some code
});
</script>
HTML;
?>