Vim Syntax basierend Faltung mit PHP
Frage
Ich habe php.vim Datei heruntergeladen, die PHP-basierte Syntax Informationen enthält. Es sollte in der Lage sein Syntax basierte Faltung zur Verfügung zu stellen, aber ich kann es aus irgendeinem Grund nicht funktioniert.
Ich habe gesetzt :let g:php_folding 2
und :set foldmethod=syntax
aber ohne Erfolg. Ich bin mir ziemlich sicher, dass die Datei im richtigen Ort ist und von vim gelesen, da ich :let g:php_sql_query=1
tun kann, die funktionieren.
Die php.vim
Datei befindet sich in ~/.vim/syntax/php.vim
befindet
Lösung 3
Offenbar meine VIM nicht ausgeführt wurde. Syntax aktivieren
Doing: syntax enable das Problem behoben, aber ich habe auch hinzugefügt: Syntax auf .vimrc
Andere Tipps
: syntax enable (oder: Syntax) Arbeit, weil diese beiden Optionen auf Datei des Typs Erkennung drehen auch. Der Dateityp hat zu detektierenden vor dem Falten oder Hervorheben der Arbeit.
Wenn Sie die Entwicklung in PHP Sie wahrscheinlich wollen diese drei Zeilen zu Ihrem .vimrc hinzuzufügen
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.
Dann können Sie Ihre let g:php_folding=2
und set foldmethod=syntax
in Ihrer ~/.vim/after/ftplugin/php.vim
Datei setzen.
Dies wird Ihre .vimrc Datei sauber halten, helfen alle Ihre Einstellungen zu organisieren und die foldmethod = Syntax nur PHP-Dateien beeinflussen (Wenn Sie für alle filestypes Syntax als Standard-fache Methode festlegen möchten, lassen Sie diese Zeile in Ihrer. vimrc)
Für weitere Informationen lesen Sie diese Hilfedateien:
: help filetype
: Hilfe usr_05.txt
: Help usr_43.txt
Ich finde die phpfolding.vim , und es `s sehr einfach zu bedienen.
-
die phpfolding.vim setzen auf $ HOME / .vim / plugin /
-
hinzufügen keymap
map <F5> <Esc>:EnableFastPHPFolds<Cr>
map <F6> <Esc>:EnablePHPFolds<Cr>
map <F7> <Esc>:DisablePHPFolds<Cr>
genießen Sie es!