求助:win下vim中php文件不能折叠

Vim、Emacs配置和使用
回复
andcat
帖子: 30
注册时间: 2009-05-31 2:07

求助:win下vim中php文件不能折叠

#1

帖子 andcat » 2012-02-20 18:03

遇到这个问题,我已经google了一段时间,发现还是没有解决方法,特此烦扰各位, 问题如下:
vim编辑php格式文件时,tab或者o, O时,新开行时光标总在每行最前头,而不是像编辑css或者html时能很好地缩进,
请问各位有解决办法没??
头像
rykka
帖子: 59
注册时间: 2011-06-24 9:14

Re: 求助:win下vim中php文件不能折叠

#2

帖子 rykka » 2012-02-20 23:10

到底折叠'folding'还是缩进'indent'的问题?

看你的描述是缩进的问题,检查下'autoindent' 和 'smartindent'以及
'softtabstop','tabstop','shiftwidth'选项。

如果折叠有问题,检查下'foldenable' 和 'foldmethod'选项。
如果用foldmethod=indent的话,设置好缩进就行了。
或者foldmethod=expr,则要设置一个适合php的'foldexpr' 函数
或者foldmethod=syntax,则要找一个带folding 的php的 syntax 文件
头像
rykka
帖子: 59
注册时间: 2011-06-24 9:14

Re: 求助:win下vim中php文件不能折叠

#3

帖子 rykka » 2012-02-20 23:33

关于折叠
syntax/php.vim 里也这么一条。

" php_folding = 1 for folding classes and functions
" php_folding = 2 for folding all { } regions

在vimrc里加入

代码: 全选

let php_folding = 1 
然后对php自动设置foldmethod=syntax

代码: 全选

 au FileType php setl foldmethod=syntax
应该就行了
回复