pliage sur la base de la syntaxe Vim avec php
Question
J'ai téléchargé le fichier php.vim, qui contient des informations de syntaxe en PHP. Il devrait être en mesure de fournir le pliage à base de syntaxe, mais je ne peux pas le faire fonctionner pour une raison quelconque.
J'ai mis :let g:php_folding 2
et :set foldmethod=syntax
mais sans résultat. Je suis sûr que le fichier est en bon endroit et est lu par vim, puisque je peux faire :let g:php_sql_query=1
qui fonctionne.
Le fichier php.vim
est situé dans ~/.vim/syntax/php.vim
La solution 3
Apparemment, mon VIM n'a pas fonctionné. Syntax enable
Faire: syntax enable résolu le problème, mais j'ai aussi ajouté: syntaxe à .vimrc
Autres conseils
: syntax enable (ou: la syntaxe de) travail parce que les deux ces options se tournent également sur la détection de filetype. Le type de fichier doit être détecté avant de plier ou de mettre en évidence le travail.
Si vous développez en PHP, vous voulez probablement ajouter ces trois lignes à votre .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.
Ensuite, vous pouvez mettre votre let g:php_folding=2
et set foldmethod=syntax
dans votre fichier ~/.vim/after/ftplugin/php.vim
.
Cela permet de garder votre fichier vimrc propre, aider à organiser tous vos paramètres, et la foldmethod = syntaxe n'affectera les fichiers php (Si vous souhaitez définir la syntaxe comme méthode de fois par défaut pour tous les filestypes, laissez cette ligne dans votre. fichier vimrc)
Pour plus d'informations lire ces fichiers d'aide:
: help filetype
: Aide usr_05.txt
: Aide usr_43.txt
Je trouve phpfolding.vim , et il s `très facile à utiliser.
-
mettre le phpfolding.vim $ HOME / .vim / plugin /
-
ajouter keymap
map <F5> <Esc>:EnableFastPHPFolds<Cr>
map <F6> <Esc>:EnablePHPFolds<Cr>
map <F7> <Esc>:DisablePHPFolds<Cr>
en profiter!