基于Vim语法的PHP折叠

时间:2009-04-27 09:47:57

标签: php vim syntax folding

我已经下载了php.vim文件,其中包含基于PHP的语法信息。它应该能够提供基于语法的折叠,但由于某些原因我无法使其工作。

我设置了:let g:php_folding 2:set foldmethod=syntax,但无济于事。我很确定该文件位于正确的位置并且由vim读取,因为我可以:let g:php_sql_query=1这样做。

php.vim文件位于~/.vim/syntax/php.vim

3 个答案:

答案 0 :(得分:14)

:语法启用(或:语法启用)有效,因为这两个选项也会打开文件类型检测。在折叠或突出显示工作之前必须检测文件类型。

如果您正在使用PHP进行开发,则可能需要将这三行添加到.vimrc

set nocompatible          " Because filetype detection doesn't work well in compatible mode
filetype plugin indent on " Turns on filetype detection, filetype plugins, and filetype indenting all of which add nice extra features to whatever language you're using
syntax enable             " Turns on filetype detection if not already on, and then applies filetype-specific highlighting.

然后,您可以将let g:php_folding=2set foldmethod=syntax放入~/.vim/after/ftplugin/php.vim文件中。

这将保持您的.vimrc文件干净,帮助组织您的所有设置,而foldmethod =语法只会影响php文件(如果您想将语法设置为所有文件类型的默认折叠方法,请将该行留在您的。 vimrc文件)

有关更多详细信息,请阅读以下帮助文件:

  

:帮助文件类型
  :help usr_05.txt
  :help usr_43.txt

答案 1 :(得分:4)

我找到 phpfolding.vim ,它很容易使用。

  1. 将phpfolding.vim放到 $ HOME / .vim / plugin /

  2. 添加键映射

    map <F5> <Esc>:EnableFastPHPFolds<Cr>

    map <F6> <Esc>:EnablePHPFolds<Cr>

    map <F7> <Esc>:DisablePHPFolds<Cr>

  3. 享受吧!

答案 2 :(得分:-1)

显然我的VIM没有运行:语法启用。

执行:语法启用修复了问题,但我还添加了:语法到.vimrc