Merge branch 'master' of http://repo.or.cz/r/msysgit into devel
[msysgit/historical-msysgit.git] / share / vim / vim58 / syntax / phtml.vim
blob91c75a96643a0b846e0a0dff7e447d9a09ad39c2
1 " Vim syntax file
2 " Language:     phtml PHP 2.0
3 " Maintainer:   Lutz Eymers <ixtab@polzin.com>
4 " URL:          http://www.isp.de/data/phtml.vim
5 " Email:        Subject: send syntax_vim.tgz
6 " Last change:  2001 May 10
8 " Options       phtml_sql_query = 1 for SQL syntax highligthing inside strings
9 "               phtml_minlines = x     to sync at least x lines backwards
11 " For version 5.x: Clear all syntax items
12 " For version 6.x: Quit when a syntax file was already loaded
13 if version < 600
14   syntax clear
15 elseif exists("b:current_syntax")
16   finish
17 endif
19 if !exists("main_syntax")
20   let main_syntax = 'phtml'
21 endif
23 if version < 600
24   so <sfile>:p:h/html.vim
25 else
26   runtime! syntax/html.vim
27   unlet b:current_syntax
28 endif
30 syn cluster htmlPreproc add=phtmlRegionInsideHtmlTags
32 if exists( "phtml_sql_query")
33   if phtml_sql_query == 1
34     syn include @phtmlSql <sfile>:p:h/sql.vim
35     unlet b:current_syntax
36   endif
37 endif
38 syn cluster phtmlSql remove=sqlString,sqlComment
40 syn case match
42 " Env Variables
43 syn keyword phtmlEnvVar SERVER_SOFTWARE SERVER_NAME SERVER_URL GATEWAY_INTERFACE   contained
44 syn keyword phtmlEnvVar SERVER_PROTOCOL SERVER_PORT REQUEST_METHOD PATH_INFO  contained
45 syn keyword phtmlEnvVar PATH_TRANSLATED SCRIPT_NAME QUERY_STRING REMOTE_HOST contained
46 syn keyword phtmlEnvVar REMOTE_ADDR AUTH_TYPE REMOTE_USER CONTEN_TYPE  contained
47 syn keyword phtmlEnvVar CONTENT_LENGTH HTTPS HTTPS_KEYSIZE HTTPS_SECRETKEYSIZE  contained
48 syn keyword phtmlEnvVar HTTP_ACCECT HTTP_USER_AGENT HTTP_IF_MODIFIED_SINCE  contained
49 syn keyword phtmlEnvVar HTTP_FROM HTTP_REFERER contained
50 syn keyword phtmlEnvVar PHP_SELF contained
52 syn case ignore
54 " Internal Variables
55 syn keyword phtmlIntVar phperrmsg php_self contained
57 " Comment
58 syn region phtmlComment         start="/\*" end="\*/"  contained contains=phtmlTodo
60 " Function names
61 syn keyword phtmlFunctions  Abs Ada_Close Ada_Connect Ada_Exec Ada_FetchRow contained
62 syn keyword phtmlFunctions  Ada_FieldName Ada_FieldNum Ada_FieldType contained
63 syn keyword phtmlFunctions  Ada_FreeResult Ada_NumFields Ada_NumRows Ada_Result contained
64 syn keyword phtmlFunctions  Ada_ResultAll AddSlashes ASort BinDec Ceil ChDir contained
65 syn keyword phtmlFunctions  AdaGrp ChMod ChOwn Chop Chr ClearStack ClearStatCache contained
66 syn keyword phtmlFunctions  closeDir CloseLog Cos Count Crypt Date dbList  contained
67 syn keyword phtmlFunctions  dbmClose dbmDelete dbmExists dbmFetch dbmFirstKey contained
68 syn keyword phtmlFunctions  dbmInsert dbmNextKey dbmOpen dbmReplace DecBin DecHex contained
69 syn keyword phtmlFunctions  DecOct doubleval Echo End ereg eregi ereg_replace contained
70 syn keyword phtmlFunctions  eregi_replace EscapeShellCmd Eval Exec Exit Exp contained
71 syn keyword phtmlFunctions  fclose feof fgets fgetss File fileAtime fileCtime contained
72 syn keyword phtmlFunctions  fileGroup fileInode fileMtime fileOwner filePerms contained
73 syn keyword phtmlFunctions  fileSize fileType Floor Flush fopen fputs FPassThru contained
74 syn keyword phtmlFunctions  fseek fsockopen ftell getAccDir GetEnv getHostByName contained
75 syn keyword phtmlFunctions  getHostByAddr GetImageSize getLastAcess contained
76 syn keyword phtmlFunctions  getLastbrowser getLastEmail getLastHost getLastMod contained
77 syn keyword phtmlFunctions  getLastref getLogDir getMyInode getMyPid getMyUid contained
78 syn keyword phtmlFunctions  getRandMax getStartLogging getToday getTotal GetType contained
79 syn keyword phtmlFunctions  gmDate Header HexDec HtmlSpecialChars ImageArc contained
80 syn keyword phtmlFunctions  ImageChar ImageCharUp IamgeColorAllocate  contained
81 syn keyword phtmlFunctions  ImageColorTransparent ImageCopyResized ImageCreate contained
82 syn keyword phtmlFunctions  ImageCreateFromGif ImageDestroy ImageFill contained
83 syn keyword phtmlFunctions  ImageFilledPolygon ImageFilledRectangle contained
84 syn keyword phtmlFunctions  ImageFillToBorder ImageGif ImageInterlace ImageLine contained
85 syn keyword phtmlFunctions  ImagePolygon ImageRectangle ImageSetPixel  contained
86 syn keyword phtmlFunctions  ImageString ImageStringUp ImageSX ImageSY Include contained
87 syn keyword phtmlFunctions  InitSyslog intval IsSet Key Link LinkInfo Log Log10 contained
88 syn keyword phtmlFunctions  LosAs Mail Max Md5 mi_Close mi_Connect mi_DBname contained
89 syn keyword phtmlFunctions  mi_Exec mi_FieldName mi_FieldNum mi_NumFields contained
90 syn keyword phtmlFunctions  mi_NumRows mi_Result Microtime Min MkDir MkTime msql contained
91 syn keyword phtmlFunctions  msql_connect msql_CreateDB msql_dbName msql_DropDB contained
92 syn keyword phtmlFunctions  msqlFieldFlags msql_FieldLen msql_FieldName contained
93 syn keyword phtmlFunctions  msql_FieldType msql_FreeResult msql_ListDBs contained
94 syn keyword phtmlFunctions  msql_Listfields msql_ListTables msql_NumFields contained
95 syn keyword phtmlFunctions  msql_NumRows msql_RegCase msql_Result msql_TableName contained
96 syn keyword phtmlFunctions  mysql mysql_affected_rows mysql_close mysql_connect contained
97 syn keyword phtmlFunctions  mysql_CreateDB mysql_dbName mysqlDropDB  contained
98 syn keyword phtmlFunctions  mysql_FieldFlags mysql_FieldLen mysql_FieldName contained
99 syn keyword phtmlFunctions  mysql_FieldType mysql_FreeResult mysql_insert_id contained
100 syn keyword phtmlFunctions  mysql_listDBs mysql_Listfields mysql_ListTables contained
101 syn keyword phtmlFunctions  mysql_NumFields mysql_NumRows mysql_Result  contained
102 syn keyword phtmlFunctions  mysql_TableName Next OctDec openDir OpenLog  contained
103 syn keyword phtmlFunctions  Ora_Bind Ora_Close Ora_Commit Ora_CommitOff contained
104 syn keyword phtmlFunctions  Ora_CommitOn Ora_Exec Ora_Fetch Ora_GetColumn contained
105 syn keyword phtmlFunctions  Ora_Logoff Ora_Logon Ora_Parse Ora_Rollback Ord  contained
106 syn keyword phtmlFunctions  Parse_str PassThru pclose pg_Close pg_Connect contained
107 syn keyword phtmlFunctions  pg_DBname pg_ErrorMessage pg_Exec pg_FieldName contained
108 syn keyword phtmlFunctions  pg_FieldPrtLen pg_FieldNum pg_FieldSize  contained
109 syn keyword phtmlFunctions  pg_FieldType pg_FreeResult pg_GetLastOid pg_Host contained
110 syn keyword phtmlFunctions  pg_NumFields pg_NumRows pg_Options pg_Port  contained
111 syn keyword phtmlFunctions  pg_Result pg_tty phpInfo phpVersion popen pos pow contained
112 syn keyword phtmlFunctions  Prev PutEnv QuoteMeta Rand readDir ReadFile ReadLink contained
113 syn keyword phtmlFunctions  reg_Match reg_replace reg_Search Rename Reset return  contained
114 syn keyword phtmlFunctions  rewind rewindDir RmDir rSort SetCookie SetErrorReporting contained
115 syn keyword phtmlFunctions  SetLogging SetShowInfo SetType shl shr Sin Sleep contained
116 syn keyword phtmlFunctions  Solid_Close Solid_Connect Solid_Exec Solid_FetchRow contained
117 syn keyword phtmlFunctions  Solid_FieldName Solid_FieldNum Solid_FreeResult  contained
118 syn keyword phtmlFunctions  Solid_NumFields Solid_NumRows Solid_Result Sort contained
119 syn keyword phtmlFunctions  Spundtex Sprintf Sqrt Srand strchr strtr  contained
120 syn keyword phtmlFunctions  StripSlashes strlen strchr strstr strtok strtolower contained
121 syn keyword phtmlFunctions  strtoupper strval substr sybSQL_CheckConnect contained
122 syn keyword phtmlFunctions  sybSQL_DBUSE sybSQL_Connect sybSQL_Exit contained
123 syn keyword phtmlFunctions  sybSQL_Fieldname sybSQL_GetField sybSQL_IsRow  contained
124 syn keyword phtmlFunctions  sybSQL_NextRow sybSQL_NumFields sybSQL_NumRows contained
125 syn keyword phtmlFunctions  sybSQL_Query sybSQL_Result sybSQL_Result sybSQL_Seek contained
126 syn keyword phtmlFunctions  Symlink syslog System Tan TempNam Time Umask UniqId contained
127 syn keyword phtmlFunctions  Unlink Unset UrlDecode UrlEncode USleep Virtual contained
128 syn keyword phtmlFunctions  SecureVar contained
130 " Conditional
131 syn keyword phtmlConditional  if else elseif endif switch endswitch contained
133 " Repeat
134 syn keyword phtmlRepeat  while endwhile contained
136 " Repeat
137 syn keyword phtmlLabel  case default contained
139 " Statement
140 syn keyword phtmlStatement  break return continue exit contained
142 " Operator
143 syn match phtmlOperator  "[-=+%^&|*!]" contained
144 syn match phtmlOperator  "[-+*/%^&|]=" contained
145 syn match phtmlOperator  "/[^*]"me=e-1 contained
146 syn match phtmlOperator  "\$" contained
147 syn match phtmlRelation  "&&" contained
148 syn match phtmlRelation  "||" contained
149 syn match phtmlRelation  "[!=<>]=" contained
150 syn match phtmlRelation  "[<>]" contained
152 " Identifier
153 syn match  phtmlIdentifier "$\h\w*" contained contains=phtmlEnvVar,phtmlIntVar,phtmlOperator
156 " Include
157 syn keyword phtmlInclude  include contained
159 " Definesag
160 syn keyword phtmlDefine  Function contained
162 " String
163 syn region phtmlString keepend matchgroup=None start=+"+ skip=+\\\\\|\\"+  end=+"+ contains=phtmlIdentifier,phtmlSpecialChar,@phtmlSql contained
165 " Number
166 syn match phtmlNumber  "-\=\<\d\+\>" contained
168 " Float
169 syn match phtmlFloat  "\(-\=\<\d+\|-\=\)\.\d\+\>" contained
171 " SpecialChar
172 syn match phtmlSpecialChar "\\[abcfnrtyv\\]" contained
173 syn match phtmlSpecialChar "\\\d\{3}" contained contains=phtmlOctalError
174 syn match phtmlSpecialChar "\\x[0-9a-fA-F]\{2}" contained
176 syn match phtmlOctalError "[89]" contained
179 syn match phtmlParentError "[)}\]]" contained
181 " Todo
182 syn keyword phtmlTodo TODO Todo todo contained
184 " Parents
185 syn cluster phtmlInside contains=phtmlComment,phtmlFunctions,phtmlIdentifier,phtmlConditional,phtmlRepeat,phtmlLabel,phtmlStatement,phtmlOperator,phtmlRelation,phtmlString,phtmlNumber,phtmlFloat,phtmlSpecialChar,phtmlParent,phtmlParentError,phtmlInclude
187 syn cluster phtmlTop contains=@phtmlInside,phtmlInclude,phtmlDefine,phtmlParentError,phtmlTodo
188 syn region phtmlParent  matchgroup=Delimiter start="(" end=")" contained contains=@phtmlInside
189 syn region phtmlParent  matchgroup=Delimiter start="{" end="}" contained contains=@phtmlInside
190 syn region phtmlParent  matchgroup=Delimiter start="\[" end="\]" contained contains=@phtmlInside
192 syn region phtmlRegion keepend matchgroup=Delimiter start="<?" skip=+(.*>.*)\|".\{-}>.\{-}"\|/\*.\{-}>.\{-}\*/+ end=">" contains=@phtmlTop
193 syn region phtmlRegionInsideHtmlTags keepend matchgroup=Delimiter start="<?" skip=+(.*>.*)\|/\*.\{-}>.\{-}\*/+ end=">" contains=@phtmlTop contained
195 " sync
196 if exists("phtml_minlines")
197   exec "syn sync minlines=" . phtml_minlines
198 else
199   syn sync minlines=100
200 endif
202 " Define the default highlighting.
203 " For version 5.7 and earlier: only when not done already
204 " For version 5.8 and later: only when an item doesn't have highlighting yet
205 if version >= 508 || !exists("did_phtml_syn_inits")
206   if version < 508
207     let did_phtml_syn_inits = 1
208     command -nargs=+ HiLink hi link <args>
209   else
210     command -nargs=+ HiLink hi def link <args>
211   endif
213   HiLink phtmlComment           Comment
214   HiLink phtmlString            String
215   HiLink phtmlNumber            Number
216   HiLink phtmlFloat             Float
217   HiLink phtmlIdentifier        Identifier
218   HiLink phtmlIntVar            Identifier
219   HiLink phtmlEnvVar            Identifier
220   HiLink phtmlFunctions Function
221   HiLink phtmlRepeat            Repeat
222   HiLink phtmlConditional       Conditional
223   HiLink phtmlLabel             Label
224   HiLink phtmlStatement Statement
225   HiLink phtmlType              Type
226   HiLink phtmlInclude           Include
227   HiLink phtmlDefine            Define
228   HiLink phtmlSpecialChar       SpecialChar
229   HiLink phtmlParentError       Error
230   HiLink phtmlOctalError        Error
231   HiLink phtmlTodo              Todo
232   HiLink phtmlOperator          Operator
233   HiLink phtmlRelation         Operator
235   delcommand HiLink
236 endif
238 let b:current_syntax = "phtml"
240 if main_syntax == 'phtml'
241   unlet main_syntax
242 endif
244 " vim: ts=8