Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/241.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在Vim中编辑Php文件时禁用所有HTML语法高亮显示_Php_Vim_Vim Syntax Highlighting - Fatal编程技术网

如何在Vim中编辑Php文件时禁用所有HTML语法高亮显示

如何在Vim中编辑Php文件时禁用所有HTML语法高亮显示,php,vim,vim-syntax-highlighting,Php,Vim,Vim Syntax Highlighting,我想写一个Php模板,生成一些Apache配置文件 为此,在编辑模板时, 我不需要在Php标记之外突出显示任何HTML语法,因为这些标记之外的原始代码是一些Apache配置,而不是HTML代码 Apache语法以及HTML使用。。。然后标准的php.vim语法文件导致 一些令人不安的视觉强光 问题:有没有一种方法可以使用Vim,在不分叉/调整原始语法文件的情况下,禁用Php文件中HTML标记的突出显示(同时保留Php语法) 注意:理想的做法是用Apache配置语法替换HTML语法(仍然在Php标

我想写一个Php模板,生成一些Apache配置文件

为此,在编辑模板时, 我不需要在Php标记之外突出显示任何HTML语法,因为这些标记之外的原始代码是一些Apache配置,而不是HTML代码

Apache语法以及HTML使用
。。。然后标准的
php.vim
语法文件导致 一些令人不安的视觉强光

问题:有没有一种方法可以使用Vim,在不分叉/调整原始语法文件的情况下,禁用Php文件中HTML标记的突出显示(同时保留Php语法)


注意:理想的做法是用Apache配置语法替换HTML语法(仍然在Php标记之外),但现在最重要的是删除这种不需要的HTML语法突出显示

这并不是很难做到,但是如果您想使语法文件保持最新,可能需要持续的维护成本

首先,找到您的Vim库。在Mac/Linux系统上,这通常类似于
/usr/share/vim/vim74/syntax/
。那里将有一个名为
php.vim
的文件。该文件包含PHP的所有语法突出显示规则

如果您还没有个人语法目录,请创建一个。然后在该目录中复制全局php.vim文件

mkdir -p $HOME/.vim/syntax
cp /usr/share/vim/vim74/syntax/php.vim $HOME/.vim/syntax
然后修改您制作的副本。我在系统中找到的文件在顶部附近有一个类似的部分

如果版本<600
解开!折叠
如果存在(“php\u sync\u方法”)&&!php\u sync\u方法
让php\u sync\u方法=-1
恩迪夫
so:p:h/html.vim
其他的
运行时间!syntax/html.vim
unlet b:当前_语法
恩迪夫
如您所见,有两种情况下它读取/导入html.vim文件。您可以注释掉这些案例(在3行上进行更改):

如果版本<600
解开!折叠
如果存在(“php\u sync\u方法”)&&!php\u sync\u方法
让php\u sync\u方法=-1
恩迪夫
“so:p:h/html.vim
其他的
“运行时!syntax/html.vim
“unlet b:当前的_语法
恩迪夫

正在进行的维护成本如下所示:随着Vim的升级,全局php.Vim文件将定期更新。但是,如果您制作了自己的副本,而该副本正在使用,则不会得到这些更新(除非您制作并修补另一个副本)。这是否是一个问题取决于您。

您可能需要一个不突出显示HTML的自定义PHP语法文件。@staticsan:如果是这样,我可能会放弃它……这不是一个非常关键的问题。同时,我注意到原始
PHP.vim
(2016年12月11日版本)中存在某种错误:许多Php关键字在Php标记外突出显示!例如:
PDO
目录
迭代器
…但无论如何:我的问题解决了