Mercurial > vim
annotate runtime/ftplugin/php.vim @ 20566:37ba6d4a9455
Added tag v8.2.0836 for changeset 5788b78a1af0e2e57108c66a1ef595ecc9a63c09
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Thu, 28 May 2020 21:45:04 +0200 |
parents | d1e4abe8342c |
children | c968191a8557 |
rev | line source |
---|---|
7 | 1 " Vim filetype plugin file |
2 " Language: php | |
2034 | 3 " Maintainer: Dan Sharp <dwsharp at users dot sourceforge dot net> |
4 " Last Changed: 20 Jan 2009 | |
5 " URL: http://dwsharp.users.sourceforge.net/vim/ftplugin | |
7 | 6 |
7 if exists("b:did_ftplugin") | finish | endif | |
8 | |
9 " Make sure the continuation lines below do not cause problems in | |
10 " compatibility mode. | |
3496
d1e4abe8342c
Fixed compatible mode in most runtime files.
Bram Moolenaar <bram@vim.org>
parents:
3410
diff
changeset
|
11 let s:keepcpo= &cpo |
d1e4abe8342c
Fixed compatible mode in most runtime files.
Bram Moolenaar <bram@vim.org>
parents:
3410
diff
changeset
|
12 set cpo&vim |
7 | 13 |
14 " Define some defaults in case the included ftplugins don't set them. | |
15 let s:undo_ftplugin = "" | |
15 | 16 let s:browsefilter = "HTML Files (*.html, *.htm)\t*.html;*.htm\n" . |
7 | 17 \ "All Files (*.*)\t*.*\n" |
18 let s:match_words = "" | |
19 | |
20 runtime! ftplugin/html.vim ftplugin/html_*.vim ftplugin/html/*.vim | |
21 let b:did_ftplugin = 1 | |
22 | |
23 " Override our defaults if these were set by an included ftplugin. | |
24 if exists("b:undo_ftplugin") | |
25 let s:undo_ftplugin = b:undo_ftplugin | |
26 endif | |
27 if exists("b:browsefilter") | |
28 let s:browsefilter = b:browsefilter | |
29 endif | |
30 if exists("b:match_words") | |
31 let s:match_words = b:match_words | |
32 endif | |
1125 | 33 if exists("b:match_skip") |
34 unlet b:match_skip | |
35 endif | |
7 | 36 |
37 " Change the :browse e filter to primarily show PHP-related files. | |
38 if has("gui_win32") | |
39 let b:browsefilter="PHP Files (*.php)\t*.php\n" . s:browsefilter | |
40 endif | |
41 | |
42 " ### | |
43 " Provided by Mikolaj Machowski <mikmach at wp dot pl> | |
44 setlocal include=\\\(require\\\|include\\\)\\\(_once\\\)\\\? | |
1622 | 45 " Disabled changing 'iskeyword', it breaks a command such as "*" |
46 " setlocal iskeyword+=$ | |
47 | |
7 | 48 if exists("loaded_matchit") |
1125 | 49 let b:match_words = '<?php:?>,\<switch\>:\<endswitch\>,' . |
7 | 50 \ '\<if\>:\<elseif\>:\<else\>:\<endif\>,' . |
51 \ '\<while\>:\<endwhile\>,' . | |
52 \ '\<do\>:\<while\>,' . | |
53 \ '\<for\>:\<endfor\>,' . | |
54 \ '\<foreach\>:\<endforeach\>,' . | |
1125 | 55 \ '(:),[:],{:},' . |
7 | 56 \ s:match_words |
57 endif | |
58 " ### | |
59 | |
1622 | 60 if exists('&omnifunc') |
61 setlocal omnifunc=phpcomplete#CompletePHP | |
714 | 62 endif |
63 | |
1622 | 64 " Section jumping: [[ and ]] provided by Antony Scriven <adscriven at gmail dot com> |
65 let s:function = '\(abstract\s\+\|final\s\+\|private\s\+\|protected\s\+\|public\s\+\|static\s\+\)*function' | |
66 let s:class = '\(abstract\s\+\|final\s\+\)*class' | |
67 let s:interface = 'interface' | |
68 let s:section = '\(.*\%#\)\@!\_^\s*\zs\('.s:function.'\|'.s:class.'\|'.s:interface.'\)' | |
69 exe 'nno <buffer> <silent> [[ ?' . escape(s:section, '|') . '?<CR>:nohls<CR>' | |
70 exe 'nno <buffer> <silent> ]] /' . escape(s:section, '|') . '/<CR>:nohls<CR>' | |
71 exe 'ono <buffer> <silent> [[ ?' . escape(s:section, '|') . '?<CR>:nohls<CR>' | |
72 exe 'ono <buffer> <silent> ]] /' . escape(s:section, '|') . '/<CR>:nohls<CR>' | |
714 | 73 |
7 | 74 setlocal commentstring=/*%s*/ |
75 | |
76 " Undo the stuff we changed. | |
1622 | 77 let b:undo_ftplugin = "setlocal commentstring< include< omnifunc<" . |
7 | 78 \ " | unlet! b:browsefilter b:match_words | " . |
79 \ s:undo_ftplugin | |
80 | |
81 " Restore the saved compatibility options. | |
3496
d1e4abe8342c
Fixed compatible mode in most runtime files.
Bram Moolenaar <bram@vim.org>
parents:
3410
diff
changeset
|
82 let &cpo = s:keepcpo |
d1e4abe8342c
Fixed compatible mode in most runtime files.
Bram Moolenaar <bram@vim.org>
parents:
3410
diff
changeset
|
83 unlet s:keepcpo |