如何永久纠正“?>”后的语法高亮?

如何永久纠正“?>”后的语法高亮?

在 Vim 中,我有一个 PHP 脚本,其中包含类似以下内容的行:

$return = "<?xml attributes=\"values\" ?>";

通常情况下,?>字符将关闭一个开始<?php标记,但是,在这个脚本中,字符?>在引号中,并且不会关闭开始<?php标记;但是,在 之后,Vim 的语法高亮显示从 PHP 切换到 HTML ?>

有什么方法可以永久修复此行为?我知道在 Vim 中可以:syntax sync fromstart修复此问题,但是当我关闭并重新打开文档时,语法突出显示又变得不正确。

答案1

我刚刚在 Vim 7.4 中测试了这一点,我没有看到您在 PHP 突出显示中看到的行为。

作为一种权宜之计,你可以通过改变 PHP 来“欺骗” Vim 的高亮规则:

$return = "<?xml attributes=\"values\" ?" . ">";

是的,它基本上是一个应急方案,但它确实有效。

相关内容