summaryrefslogtreecommitdiff
path: root/runtime/syntax/php.vim
diff options
context:
space:
mode:
Diffstat (limited to 'runtime/syntax/php.vim')
-rw-r--r--runtime/syntax/php.vim202
1 files changed, 85 insertions, 117 deletions
diff --git a/runtime/syntax/php.vim b/runtime/syntax/php.vim
index d494a92ae..3019a423b 100644
--- a/runtime/syntax/php.vim
+++ b/runtime/syntax/php.vim
@@ -55,11 +55,8 @@
" ii) Same problem if you are setting php_folding = 2 with a closing
" } inside an string on the first line of this string.
-" For version 5.x: Clear all syntax items
-" For version 6.x: Quit when a syntax file was already loaded
-if version < 600
- syntax clear
-elseif exists("b:current_syntax")
+" quit when a syntax file was already loaded
+if exists("b:current_syntax")
finish
endif
@@ -67,16 +64,8 @@ if !exists("main_syntax")
let main_syntax = 'php'
endif
-if version < 600
- unlet! php_folding
- if exists("php_sync_method") && !php_sync_method
- let php_sync_method=-1
- endif
- so <sfile>:p:h/html.vim
-else
- runtime! syntax/html.vim
- unlet b:current_syntax
-endif
+runtime! syntax/html.vim
+unlet b:current_syntax
" accept old options
if !exists("php_sync_method")
@@ -94,11 +83,7 @@ endif
syn cluster htmlPreproc add=phpRegion,phpRegionAsp,phpRegionSc
-if version < 600
- syn include @sqlTop <sfile>:p:h/sql.vim
-else
- syn include @sqlTop syntax/sql.vim
-endif
+syn include @sqlTop syntax/sql.vim
syn sync clear
unlet b:current_syntax
syn cluster sqlTop remove=sqlString,sqlComment
@@ -381,15 +366,8 @@ if exists("php_parent_error_open")
else
syn region phpComment start="/\*" end="\*/" contained contains=phpTodo,@Spell extend
endif
-if version >= 600
- syn match phpComment "#.\{-}\(?>\|$\)\@=" contained contains=phpTodo,@Spell
- syn match phpComment "//.\{-}\(?>\|$\)\@=" contained contains=phpTodo,@Spell
-else
- syn match phpComment "#.\{-}$" contained contains=phpTodo,@Spell
- syn match phpComment "#.\{-}?>"me=e-2 contained contains=phpTodo,@Spell
- syn match phpComment "//.\{-}$" contained contains=phpTodo,@Spell
- syn match phpComment "//.\{-}?>"me=e-2 contained contains=phpTodo,@Spell
-endif
+syn match phpComment "#.\{-}\(?>\|$\)\@=" contained contains=phpTodo,@Spell
+syn match phpComment "//.\{-}\(?>\|$\)\@=" contained contains=phpTodo,@Spell
" String
if exists("php_parent_error_open")
@@ -403,24 +381,22 @@ else
endif
" HereDoc and NowDoc
-if version >= 600
- syn case match
+syn case match
- " HereDoc
- syn region phpHereDoc matchgroup=Delimiter start="\(<<<\)\@<=\(\"\=\)\z(\I\i*\)\2$" end="^\z1\(;\=$\)\@=" contained contains=phpIdentifier,phpIdentifierSimply,phpIdentifierComplex,phpBackslashSequences,phpMethodsVar,@Spell keepend extend
+" HereDoc
+syn region phpHereDoc matchgroup=Delimiter start="\(<<<\)\@<=\(\"\=\)\z(\I\i*\)\2$" end="^\z1\(;\=$\)\@=" contained contains=phpIdentifier,phpIdentifierSimply,phpIdentifierComplex,phpBackslashSequences,phpMethodsVar,@Spell keepend extend
" including HTML,JavaScript,SQL even if not enabled via options
- syn region phpHereDoc matchgroup=Delimiter start="\(<<<\)\@<=\(\"\=\)\z(\(\I\i*\)\=\(html\)\c\(\i*\)\)\2$" end="^\z1\(;\=$\)\@=" contained contains=@htmlTop,phpIdentifier,phpIdentifierSimply,phpIdentifierComplex,phpBackslashSequences,phpMethodsVar,@Spell keepend extend
- syn region phpHereDoc matchgroup=Delimiter start="\(<<<\)\@<=\(\"\=\)\z(\(\I\i*\)\=\(sql\)\c\(\i*\)\)\2$" end="^\z1\(;\=$\)\@=" contained contains=@sqlTop,phpIdentifier,phpIdentifierSimply,phpIdentifierComplex,phpBackslashSequences,phpMethodsVar,@Spell keepend extend
- syn region phpHereDoc matchgroup=Delimiter start="\(<<<\)\@<=\(\"\=\)\z(\(\I\i*\)\=\(javascript\)\c\(\i*\)\)\2$" end="^\z1\(;\=$\)\@=" contained contains=@htmlJavascript,phpIdentifierSimply,phpIdentifier,phpIdentifierComplex,phpBackslashSequences,phpMethodsVar,@Spell keepend extend
+syn region phpHereDoc matchgroup=Delimiter start="\(<<<\)\@<=\(\"\=\)\z(\(\I\i*\)\=\(html\)\c\(\i*\)\)\2$" end="^\z1\(;\=$\)\@=" contained contains=@htmlTop,phpIdentifier,phpIdentifierSimply,phpIdentifierComplex,phpBackslashSequences,phpMethodsVar,@Spell keepend extend
+syn region phpHereDoc matchgroup=Delimiter start="\(<<<\)\@<=\(\"\=\)\z(\(\I\i*\)\=\(sql\)\c\(\i*\)\)\2$" end="^\z1\(;\=$\)\@=" contained contains=@sqlTop,phpIdentifier,phpIdentifierSimply,phpIdentifierComplex,phpBackslashSequences,phpMethodsVar,@Spell keepend extend
+syn region phpHereDoc matchgroup=Delimiter start="\(<<<\)\@<=\(\"\=\)\z(\(\I\i*\)\=\(javascript\)\c\(\i*\)\)\2$" end="^\z1\(;\=$\)\@=" contained contains=@htmlJavascript,phpIdentifierSimply,phpIdentifier,phpIdentifierComplex,phpBackslashSequences,phpMethodsVar,@Spell keepend extend
- " NowDoc
- syn region phpNowDoc matchgroup=Delimiter start="\(<<<\)\@<='\z(\I\i*\)'$" end="^\z1\(;\=$\)\@=" contained contains=@Spell keepend extend
+" NowDoc
+syn region phpNowDoc matchgroup=Delimiter start="\(<<<\)\@<='\z(\I\i*\)'$" end="^\z1\(;\=$\)\@=" contained contains=@Spell keepend extend
" including HTML,JavaScript,SQL even if not enabled via options
- syn region phpNowDoc matchgroup=Delimiter start="\(<<<\)\@<='\z(\(\I\i*\)\=\(html\)\c\(\i*\)\)'$" end="^\z1\(;\=$\)\@=" contained contains=@htmlTop,@Spell keepend extend
- syn region phpNowDoc matchgroup=Delimiter start="\(<<<\)\@<='\z(\(\I\i*\)\=\(sql\)\c\(\i*\)\)'$" end="^\z1\(;\=$\)\@=" contained contains=@sqlTop,@Spell keepend extend
- syn region phpNowDoc matchgroup=Delimiter start="\(<<<\)\@<='\z(\(\I\i*\)\=\(javascript\)\c\(\i*\)\)'$" end="^\z1\(;\=$\)\@=" contained contains=@htmlJavascript,@Spell keepend extend
- syn case ignore
-endif
+syn region phpNowDoc matchgroup=Delimiter start="\(<<<\)\@<='\z(\(\I\i*\)\=\(html\)\c\(\i*\)\)'$" end="^\z1\(;\=$\)\@=" contained contains=@htmlTop,@Spell keepend extend
+syn region phpNowDoc matchgroup=Delimiter start="\(<<<\)\@<='\z(\(\I\i*\)\=\(sql\)\c\(\i*\)\)'$" end="^\z1\(;\=$\)\@=" contained contains=@sqlTop,@Spell keepend extend
+syn region phpNowDoc matchgroup=Delimiter start="\(<<<\)\@<='\z(\(\I\i*\)\=\(javascript\)\c\(\i*\)\)'$" end="^\z1\(;\=$\)\@=" contained contains=@htmlJavascript,@Spell keepend extend
+syn case ignore
" Parent
if exists("php_parent_error_close") || exists("php_parent_error_open")
@@ -621,82 +597,74 @@ syntax match phpDocTags "@\(abstract\|access\|author\|category\|copyright\|dep
syntax match phpDocTodo "@\(todo\|fixme\|xxx\)\(\s\+\)\?" containedin=phpComment
" Define the default highlighting.
-" For version 5.7 and earlier: only when not done already
-" For version 5.8 and later: only when an item doesn't have highlighting yet
-if version >= 508 || !exists("did_php_syn_inits")
- if version < 508
- let did_php_syn_inits = 1
- command -nargs=+ HiLink hi link <args>
- else
- command -nargs=+ HiLink hi def link <args>
- endif
-
- HiLink phpConstant Constant
- HiLink phpCoreConstant Constant
- HiLink phpComment Comment
- HiLink phpDocTags PreProc
- HiLink phpDocCustomTags Type
- HiLink phpException Exception
- HiLink phpBoolean Boolean
- HiLink phpStorageClass StorageClass
- HiLink phpSCKeyword StorageClass
- HiLink phpFCKeyword Define
- HiLink phpStructure Structure
- HiLink phpStringSingle String
- HiLink phpStringDouble String
- HiLink phpBacktick String
- HiLink phpNumber Number
- HiLink phpFloat Float
- HiLink phpMethods Function
- HiLink phpFunctions Function
- HiLink phpBaselib Function
- HiLink phpRepeat Repeat
- HiLink phpConditional Conditional
- HiLink phpLabel Label
- HiLink phpStatement Statement
- HiLink phpKeyword Statement
- HiLink phpType Type
- HiLink phpInclude Include
- HiLink phpDefine Define
- HiLink phpBackslashSequences SpecialChar
- HiLink phpBackslashDoubleQuote SpecialChar
- HiLink phpBackslashSingleQuote SpecialChar
- HiLink phpParent Delimiter
- HiLink phpBrackets Delimiter
- HiLink phpIdentifierConst Delimiter
- HiLink phpParentError Error
- HiLink phpOctalError Error
- HiLink phpInterpSimpleError Error
- HiLink phpInterpBogusDollarCurley Error
- HiLink phpInterpDollarCurly1 Error
- HiLink phpInterpDollarCurly2 Error
- HiLink phpInterpSimpleBracketsInner String
- HiLink phpInterpSimpleCurly Delimiter
- HiLink phpInterpVarname Identifier
- HiLink phpTodo Todo
- HiLink phpDocTodo Todo
- HiLink phpMemberSelector Structure
- if exists("php_oldStyle")
- hi phpIntVar guifg=Red ctermfg=DarkRed
- hi phpEnvVar guifg=Red ctermfg=DarkRed
- hi phpOperator guifg=SeaGreen ctermfg=DarkGreen
- hi phpVarSelector guifg=SeaGreen ctermfg=DarkGreen
- hi phpRelation guifg=SeaGreen ctermfg=DarkGreen
- hi phpIdentifier guifg=DarkGray ctermfg=Brown
- hi phpIdentifierSimply guifg=DarkGray ctermfg=Brown
- else
- HiLink phpIntVar Identifier
- HiLink phpEnvVar Identifier
- HiLink phpOperator Operator
- HiLink phpVarSelector Operator
- HiLink phpRelation Operator
- HiLink phpIdentifier Identifier
- HiLink phpIdentifierSimply Identifier
- endif
-
- delcommand HiLink
+" Only when an item doesn't have highlighting yet
+command -nargs=+ HiLink hi def link <args>
+
+HiLink phpConstant Constant
+HiLink phpCoreConstant Constant
+HiLink phpComment Comment
+HiLink phpDocTags PreProc
+HiLink phpDocCustomTags Type
+HiLink phpException Exception
+HiLink phpBoolean Boolean
+HiLink phpStorageClass StorageClass
+HiLink phpSCKeyword StorageClass
+HiLink phpFCKeyword Define
+HiLink phpStructure Structure
+HiLink phpStringSingle String
+HiLink phpStringDouble String
+HiLink phpBacktick String
+HiLink phpNumber Number
+HiLink phpFloat Float
+HiLink phpMethods Function
+HiLink phpFunctions Function
+HiLink phpBaselib Function
+HiLink phpRepeat Repeat
+HiLink phpConditional Conditional
+HiLink phpLabel Label
+HiLink phpStatement Statement
+HiLink phpKeyword Statement
+HiLink phpType Type
+HiLink phpInclude Include
+HiLink phpDefine Define
+HiLink phpBackslashSequences SpecialChar
+HiLink phpBackslashDoubleQuote SpecialChar
+HiLink phpBackslashSingleQuote SpecialChar
+HiLink phpParent Delimiter
+HiLink phpBrackets Delimiter
+HiLink phpIdentifierConst Delimiter
+HiLink phpParentError Error
+HiLink phpOctalError Error
+HiLink phpInterpSimpleError Error
+HiLink phpInterpBogusDollarCurley Error
+HiLink phpInterpDollarCurly1 Error
+HiLink phpInterpDollarCurly2 Error
+HiLink phpInterpSimpleBracketsInner String
+HiLink phpInterpSimpleCurly Delimiter
+HiLink phpInterpVarname Identifier
+HiLink phpTodo Todo
+HiLink phpDocTodo Todo
+HiLink phpMemberSelector Structure
+if exists("php_oldStyle")
+hi phpIntVar guifg=Red ctermfg=DarkRed
+hi phpEnvVar guifg=Red ctermfg=DarkRed
+hi phpOperator guifg=SeaGreen ctermfg=DarkGreen
+hi phpVarSelector guifg=SeaGreen ctermfg=DarkGreen
+hi phpRelation guifg=SeaGreen ctermfg=DarkGreen
+hi phpIdentifier guifg=DarkGray ctermfg=Brown
+hi phpIdentifierSimply guifg=DarkGray ctermfg=Brown
+else
+HiLink phpIntVar Identifier
+HiLink phpEnvVar Identifier
+HiLink phpOperator Operator
+HiLink phpVarSelector Operator
+HiLink phpRelation Operator
+HiLink phpIdentifier Identifier
+HiLink phpIdentifierSimply Identifier
endif
+delcommand HiLink
+
let b:current_syntax = "php"
if main_syntax == 'php'