Skip to content

Commit ac5e928

Browse files
brammooldouglaskayama
authored andcommitted
More updated runtime files.
1 parent 809435e commit ac5e928

10 files changed

Lines changed: 290 additions & 261 deletions

File tree

runtime/autoload/phpcomplete.vim

Lines changed: 74 additions & 67 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
" Maintainer: Dávid Szabó ( complex857 AT gmail DOT com )
44
" Previous Maintainer: Mikolaj Machowski ( mikmach AT wp DOT pl )
55
" URL: https://github.com/shawncplus/phpcomplete.vim
6-
" Last Change: 2015 Feb 28
6+
" Last Change: 2015 Apr 02
77
"
88
" OPTIONS:
99
"
@@ -141,71 +141,80 @@ function! phpcomplete#CompletePHP(findstart, base) " {{{
141141
if a:base != ""
142142
let context = substitute(context, '\s*[$a-zA-Z_0-9\x7f-\xff]*$', '', '')
143143
end
144+
else
145+
let context = ''
144146
end
145147

146-
let [current_namespace, imports] = phpcomplete#GetCurrentNameSpace(getline(0, line('.')))
148+
try
149+
let winheight = winheight(0)
150+
let winnr = winnr()
147151

148-
if context =~? '^use\s' || context ==? 'use'
149-
return phpcomplete#CompleteUse(a:base)
150-
endif
152+
let [current_namespace, imports] = phpcomplete#GetCurrentNameSpace(getline(0, line('.')))
151153

152-
if context =~ '\(->\|::\)$'
153-
" {{{
154-
" Get name of the class
155-
let classname = phpcomplete#GetClassName(line('.'), context, current_namespace, imports)
156-
157-
" Get location of class definition, we have to iterate through all
158-
if classname != ''
159-
if classname =~ '\'
160-
" split the last \ segment as a classname, everything else is the namespace
161-
let classname_parts = split(classname, '\')
162-
let namespace = join(classname_parts[0:-2], '\')
163-
let classname = classname_parts[-1]
164-
else
165-
let namespace = '\'
166-
endif
167-
let classlocation = phpcomplete#GetClassLocation(classname, namespace)
168-
else
169-
let classlocation = ''
154+
if context =~? '^use\s' || context ==? 'use'
155+
return phpcomplete#CompleteUse(a:base)
170156
endif
171157

172-
if classlocation != ''
173-
if classlocation == 'VIMPHP_BUILTINOBJECT' && has_key(g:php_builtin_classes, tolower(classname))
174-
return phpcomplete#CompleteBuiltInClass(context, classname, a:base)
158+
if context =~ '\(->\|::\)$'
159+
" {{{
160+
" Get name of the class
161+
let classname = phpcomplete#GetClassName(line('.'), context, current_namespace, imports)
162+
163+
" Get location of class definition, we have to iterate through all
164+
if classname != ''
165+
if classname =~ '\'
166+
" split the last \ segment as a classname, everything else is the namespace
167+
let classname_parts = split(classname, '\')
168+
let namespace = join(classname_parts[0:-2], '\')
169+
let classname = classname_parts[-1]
170+
else
171+
let namespace = '\'
172+
endif
173+
let classlocation = phpcomplete#GetClassLocation(classname, namespace)
174+
else
175+
let classlocation = ''
175176
endif
176177

177-
if filereadable(classlocation)
178-
let classfile = readfile(classlocation)
179-
let classcontent = ''
180-
let classcontent .= "\n".phpcomplete#GetClassContents(classlocation, classname)
181-
let sccontent = split(classcontent, "\n")
182-
let visibility = expand('%:p') == fnamemodify(classlocation, ':p') ? 'private' : 'public'
178+
if classlocation != ''
179+
if classlocation == 'VIMPHP_BUILTINOBJECT' && has_key(g:php_builtin_classes, tolower(classname))
180+
return phpcomplete#CompleteBuiltInClass(context, classname, a:base)
181+
endif
183182

184-
return phpcomplete#CompleteUserClass(context, a:base, sccontent, visibility)
185-
endif
186-
endif
183+
if filereadable(classlocation)
184+
let classfile = readfile(classlocation)
185+
let classcontent = ''
186+
let classcontent .= "\n".phpcomplete#GetClassContents(classlocation, classname)
187+
let sccontent = split(classcontent, "\n")
188+
let visibility = expand('%:p') == fnamemodify(classlocation, ':p') ? 'private' : 'public'
187189

188-
return phpcomplete#CompleteUnknownClass(a:base, context)
189-
" }}}
190-
elseif context =~? 'implements'
191-
return phpcomplete#CompleteClassName(a:base, ['i'], current_namespace, imports)
192-
elseif context =~? 'extends\s\+.\+$' && a:base == ''
193-
return ['implements']
194-
elseif context =~? 'extends'
195-
let kinds = context =~? 'class\s' ? ['c'] : ['i']
196-
return phpcomplete#CompleteClassName(a:base, kinds, current_namespace, imports)
197-
elseif context =~? 'class [a-zA-Z_\x7f-\xff\\][a-zA-Z_0-9\x7f-\xff\\]*'
198-
" special case when you've typed the class keyword and the name too, only extends and implements allowed there
199-
return filter(['extends', 'implements'], 'stridx(v:val, a:base) == 0')
200-
elseif context =~? 'new'
201-
return phpcomplete#CompleteClassName(a:base, ['c'], current_namespace, imports)
202-
endif
190+
return phpcomplete#CompleteUserClass(context, a:base, sccontent, visibility)
191+
endif
192+
endif
203193

204-
if a:base =~ '^\$'
205-
return phpcomplete#CompleteVariable(a:base)
206-
else
207-
return phpcomplete#CompleteGeneral(a:base, current_namespace, imports)
208-
endif
194+
return phpcomplete#CompleteUnknownClass(a:base, context)
195+
" }}}
196+
elseif context =~? 'implements'
197+
return phpcomplete#CompleteClassName(a:base, ['i'], current_namespace, imports)
198+
elseif context =~? 'extends\s\+.\+$' && a:base == ''
199+
return ['implements']
200+
elseif context =~? 'extends'
201+
let kinds = context =~? 'class\s' ? ['c'] : ['i']
202+
return phpcomplete#CompleteClassName(a:base, kinds, current_namespace, imports)
203+
elseif context =~? 'class [a-zA-Z_\x7f-\xff\\][a-zA-Z_0-9\x7f-\xff\\]*'
204+
" special case when you've typed the class keyword and the name too, only extends and implements allowed there
205+
return filter(['extends', 'implements'], 'stridx(v:val, a:base) == 0')
206+
elseif context =~? 'new'
207+
return phpcomplete#CompleteClassName(a:base, ['c'], current_namespace, imports)
208+
endif
209+
210+
if a:base =~ '^\$'
211+
return phpcomplete#CompleteVariable(a:base)
212+
else
213+
return phpcomplete#CompleteGeneral(a:base, current_namespace, imports)
214+
endif
215+
finally
216+
silent! exec winnr.'resize '.winheight
217+
endtry
209218
endfunction
210219
" }}}
211220

@@ -1523,21 +1532,19 @@ function! phpcomplete#GetClassName(start_line, context, current_namespace, impor
15231532
return ''
15241533
endif
15251534

1526-
if line =~? '\v^\s*(abstract\s+|final\s+)*\s*class'
1527-
let class_name = matchstr(line, '\c\s*class\s*\zs'.class_name_pattern.'\ze')
1535+
if line =~? '\v^\s*(abstract\s+|final\s+)*\s*class\s'
1536+
let class_name = matchstr(line, '\cclass\s\+\zs'.class_name_pattern.'\ze')
15281537
let extended_class = matchstr(line, '\cclass\s\+'.class_name_pattern.'\s\+extends\s\+\zs'.class_name_pattern.'\ze')
15291538

15301539
let classname_candidate = a:context =~? 'parent::' ? extended_class : class_name
1531-
else
1532-
let i += 1
1533-
continue
1540+
if classname_candidate != ''
1541+
let [classname_candidate, class_candidate_namespace] = phpcomplete#GetCallChainReturnType(classname_candidate, class_candidate_namespace, class_candidate_imports, methodstack)
1542+
" return absolute classname, without leading \
1543+
return (class_candidate_namespace == '\' || class_candidate_namespace == '') ? classname_candidate : class_candidate_namespace.'\'.classname_candidate
1544+
endif
15341545
endif
15351546

1536-
if classname_candidate != ''
1537-
let [classname_candidate, class_candidate_namespace] = phpcomplete#GetCallChainReturnType(classname_candidate, class_candidate_namespace, class_candidate_imports, methodstack)
1538-
" return absolute classname, without leading \
1539-
return (class_candidate_namespace == '\' || class_candidate_namespace == '') ? classname_candidate : class_candidate_namespace.'\'.classname_candidate
1540-
endif
1547+
let i += 1
15411548
endwhile
15421549
elseif a:context =~? '(\s*new\s\+'.class_name_pattern.'\s*)->'
15431550
let classname_candidate = matchstr(a:context, '\cnew\s\+\zs'.class_name_pattern.'\ze')
@@ -2031,7 +2038,7 @@ function! phpcomplete#GetClassContentsStructure(file_path, file_lines, class_nam
20312038
" remember the window we started at
20322039
let phpcomplete_original_window = winnr()
20332040

2034-
silent! tab 1new
2041+
silent! below 1new
20352042
silent! 0put =cfile
20362043
call search('\c\(class\|interface\|trait\)\_s\+'.a:class_name.'\(\>\|$\)')
20372044
let cfline = line('.')
@@ -2370,7 +2377,7 @@ endfunction!
23702377
function! phpcomplete#GetCurrentNameSpace(file_lines) " {{{
23712378
let original_window = winnr()
23722379

2373-
silent! tab 1new
2380+
silent! below 1new
23742381
silent! 0put =a:file_lines
23752382
normal! G
23762383

runtime/doc/tags

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4925,6 +4925,7 @@ b:current_syntax-variable syntax.txt /*b:current_syntax-variable*
49254925
b:netrw_lastfile pi_netrw.txt /*b:netrw_lastfile*
49264926
b:tex_stylish syntax.txt /*b:tex_stylish*
49274927
b:var eval.txt /*b:var*
4928+
b:yaml_schema syntax.txt /*b:yaml_schema*
49284929
baan-folding syntax.txt /*baan-folding*
49294930
baan-syntax syntax.txt /*baan-syntax*
49304931
baan.vim syntax.txt /*baan.vim*
@@ -5938,6 +5939,7 @@ ft-xhtml-omni insert.txt /*ft-xhtml-omni*
59385939
ft-xml-omni insert.txt /*ft-xml-omni*
59395940
ft-xml-syntax syntax.txt /*ft-xml-syntax*
59405941
ft-xpm-syntax syntax.txt /*ft-xpm-syntax*
5942+
ft-yaml-syntax syntax.txt /*ft-yaml-syntax*
59415943
ft_ada.txt ft_ada.txt /*ft_ada.txt*
59425944
ft_sql.txt ft_sql.txt /*ft_sql.txt*
59435945
ftdetect filetype.txt /*ftdetect*
@@ -6167,6 +6169,7 @@ g:vimsyn_folding syntax.txt /*g:vimsyn_folding*
61676169
g:vimsyn_maxlines syntax.txt /*g:vimsyn_maxlines*
61686170
g:vimsyn_minlines syntax.txt /*g:vimsyn_minlines*
61696171
g:vimsyn_noerror syntax.txt /*g:vimsyn_noerror*
6172+
g:yaml_schema syntax.txt /*g:yaml_schema*
61706173
g:zip_nomax pi_zip.txt /*g:zip_nomax*
61716174
g:zip_shq pi_zip.txt /*g:zip_shq*
61726175
g:zip_unzipcmd pi_zip.txt /*g:zip_unzipcmd*
@@ -8981,6 +8984,7 @@ xterm-screens tips.txt /*xterm-screens*
89818984
xterm-scroll-region term.txt /*xterm-scroll-region*
89828985
xterm-shifted-keys term.txt /*xterm-shifted-keys*
89838986
y change.txt /*y*
8987+
yaml.vim syntax.txt /*yaml.vim*
89848988
yank change.txt /*yank*
89858989
ye-option-gone version4.txt /*ye-option-gone*
89868990
year-2000 intro.txt /*year-2000*

runtime/doc/todo.txt

Lines changed: 1 addition & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
*todo.txt* For Vim version 7.4. Last change: 2015 Apr 12
1+
*todo.txt* For Vim version 7.4. Last change: 2015 Apr 13
22

33

44
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -68,13 +68,6 @@ Regexp problems:
6868
- this doesn't work: "syntax match ErrorMsg /.\%9l\%>20c\&\%<28c/". Leaving
6969
out the \& works. Seems any column check after \& fails.
7070

71-
PHP complete update, (complex, 2015 Apr 2)
72-
73-
PHP syntax file update. (Jason Woofenden, 2015 Mar 24)
74-
75-
Updated syntax files. (Charles Campbell, Apr 2)
76-
Two messages.
77-
7871
Check out neovim bug reports that apply to Vim:
7972
https://github.com/neovim/neovim/issues?q=label%3Abug-vim
8073
Specifically:

runtime/syntax/csh.vim

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
" Vim syntax file
22
" Language: C-shell (csh)
33
" Maintainer: Charles E. Campbell <[email protected]>
4-
" Version: 11
54
" Last Change: Oct 23, 2014
5+
" Version: 11
66
" URL: http://www.drchip.org/astronaut/vim/index.html#SYNTAX_CSH
77

88
" For version 5.x: Clear all syntax items

runtime/syntax/php.vim

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
" Vim syntax file
22
" Language: php PHP 3/4/5
33
" Maintainer: Jason Woofenden <[email protected]>
4-
" Last Change: Sep 18, 2014
5-
" URL: https://gitorious.org/jasonwoof/vim-syntax/blobs/master/php.vim
4+
" Last Change: Mar 24, 2015
5+
" URL: https://jasonwoof.com/gitweb/?p=vim-syntax.git;a=blob;f=php.vim;hb=HEAD
66
" Former Maintainers: Peter Hodge <[email protected]>
77
" Debian VIM Maintainers <[email protected]>
88
"

0 commit comments

Comments
 (0)