Mercurial > vim
view runtime/ftplugin/php.vim @ 1664:f41b6108e46b v7.2a.016
updated for version 7.2a-016
author | vimboss |
---|---|
date | Mon, 07 Jul 2008 19:23:37 +0000 |
parents | 149d8b46404c |
children | 7bc41231fbc7 |
line wrap: on
line source
" Vim filetype plugin file " Language: php " Maintainer: Dan Sharp <dwsharp at hotmail dot com> " Last Changed: 2007 Nov 10 " URL: http://mywebpage.netscape.com/sharppeople/vim/ftplugin if exists("b:did_ftplugin") | finish | endif " Make sure the continuation lines below do not cause problems in " compatibility mode. let s:save_cpo = &cpo set cpo-=C " Define some defaults in case the included ftplugins don't set them. let s:undo_ftplugin = "" let s:browsefilter = "HTML Files (*.html, *.htm)\t*.html;*.htm\n" . \ "All Files (*.*)\t*.*\n" let s:match_words = "" runtime! ftplugin/html.vim ftplugin/html_*.vim ftplugin/html/*.vim let b:did_ftplugin = 1 " Override our defaults if these were set by an included ftplugin. if exists("b:undo_ftplugin") let s:undo_ftplugin = b:undo_ftplugin endif if exists("b:browsefilter") let s:browsefilter = b:browsefilter endif if exists("b:match_words") let s:match_words = b:match_words endif if exists("b:match_skip") unlet b:match_skip endif " Change the :browse e filter to primarily show PHP-related files. if has("gui_win32") let b:browsefilter="PHP Files (*.php)\t*.php\n" . s:browsefilter endif " ### " Provided by Mikolaj Machowski <mikmach at wp dot pl> setlocal include=\\\(require\\\|include\\\)\\\(_once\\\)\\\? " Disabled changing 'iskeyword', it breaks a command such as "*" " setlocal iskeyword+=$ if exists("loaded_matchit") let b:match_words = '<?php:?>,\<switch\>:\<endswitch\>,' . \ '\<if\>:\<elseif\>:\<else\>:\<endif\>,' . \ '\<while\>:\<endwhile\>,' . \ '\<do\>:\<while\>,' . \ '\<for\>:\<endfor\>,' . \ '\<foreach\>:\<endforeach\>,' . \ '(:),[:],{:},' . \ s:match_words endif " ### if exists('&omnifunc') setlocal omnifunc=phpcomplete#CompletePHP endif " Section jumping: [[ and ]] provided by Antony Scriven <adscriven at gmail dot com> let s:function = '\(abstract\s\+\|final\s\+\|private\s\+\|protected\s\+\|public\s\+\|static\s\+\)*function' let s:class = '\(abstract\s\+\|final\s\+\)*class' let s:interface = 'interface' let s:section = '\(.*\%#\)\@!\_^\s*\zs\('.s:function.'\|'.s:class.'\|'.s:interface.'\)' exe 'nno <buffer> <silent> [[ ?' . escape(s:section, '|') . '?<CR>:nohls<CR>' exe 'nno <buffer> <silent> ]] /' . escape(s:section, '|') . '/<CR>:nohls<CR>' exe 'ono <buffer> <silent> [[ ?' . escape(s:section, '|') . '?<CR>:nohls<CR>' exe 'ono <buffer> <silent> ]] /' . escape(s:section, '|') . '/<CR>:nohls<CR>' setlocal commentstring=/*%s*/ " Undo the stuff we changed. let b:undo_ftplugin = "setlocal commentstring< include< omnifunc<" . \ " | unlet! b:browsefilter b:match_words | " . \ s:undo_ftplugin " Restore the saved compatibility options. let &cpo = s:save_cpo