4 From: Bram Moolenaar <Bram@moolenaar.net>
6 Content-Type: text/plain; charset=ISO-8859-1
7 Content-Transfer-Encoding: 8bit
11 Problem: Filetype names of CHILL and ch script are confusing.
12 Solution: Rename "ch" to "chill" and "chscript" to "ch".
13 Files: runtime/filetype.vim, runtime/makemenu.vim, runtime/synmenu.vim,
14 runtime/syntax/ch.vim, runtime/syntax/chill.vim
17 *** ../vim-6.2.201/runtime/filetype.vim Tue Sep 9 22:18:18 2003
18 --- runtime/filetype.vim Sat Jan 24 20:54:12 2004
21 " Vim support file to detect file types
23 " Maintainer: Bram Moolenaar <Bram@vim.org>
24 ! " Last Change: 2003 Aug 17
26 " Listen very carefully, I will say this only once
27 if exists("did_load_filetypes")
29 " Vim support file to detect file types
31 " Maintainer: Bram Moolenaar <Bram@vim.org>
32 ! " Last Change: 2004 Jan 24
34 " Listen very carefully, I will say this only once
35 if exists("did_load_filetypes")
38 au BufNewFile,BufRead *.cxx,*.c++,*.hh,*.hxx,*.hpp,*.moc,*.tcc,*.inl setf cpp
41 ! " .h files can be C or C++, set c_syntax_for_h if you want C
42 au BufNewFile,BufRead *.h
43 ! \ if exists("c_syntax_for_h") | setf c | else | setf cpp | endif
45 " TLH files are C++ headers generated by Visual C++'s #import from typelibs
46 au BufNewFile,BufRead *.tlh setf cpp
48 au BufNewFile,BufRead *.cxx,*.c++,*.hh,*.hxx,*.hpp,*.moc,*.tcc,*.inl setf cpp
51 ! " .h files can be C, Ch or C++, set c_syntax_for_h if you want C,
52 ! " ch_syntax_for_h if you want Ch.
53 au BufNewFile,BufRead *.h
54 ! \ if exists("c_syntax_for_h") | setf c |
55 ! \ elseif exists("ch_syntax_for_h") | setf ch |
56 ! \ else | setf cpp | endif
59 ! au BufNewFile,BufRead *.chf setf ch
61 " TLH files are C++ headers generated by Visual C++'s #import from typelibs
62 au BufNewFile,BufRead *.tlh setf cpp
65 \| setf debchangelog | else | setf changelog | endif
68 ! au BufNewFile,BufRead *..ch setf ch
70 " Changes for WEB and CWEB or CHILL
71 au BufNewFile,BufRead *.ch call <SID>FTchange()
73 " This function checks if one of the first ten lines start with a '@'. In
74 ! " that case it is probably a change file, otherwise CHILL is assumed.
79 \| setf debchangelog | else | setf changelog | endif
82 ! au BufNewFile,BufRead *..ch setf chill
84 " Changes for WEB and CWEB or CHILL
85 au BufNewFile,BufRead *.ch call <SID>FTchange()
87 " This function checks if one of the first ten lines start with a '@'. In
88 ! " that case it is probably a change file.
89 ! " If the first line starts with # or ! it's probably a ch file.
90 ! " If a line has "main", "include", "//" ir "/*" it's probably ch.
91 ! " Otherwise CHILL is assumed.
110 + if lnum == 1 && (getline(1)[0] == '#' || getline(1)[0] == '!'
114 + if getline(lnum) =~ "MODULE"
118 + if getline(lnum) =~ 'main\s*(\|#\s*include\|//'
128 *** ../vim-6.2.201/runtime/makemenu.vim Wed May 14 19:49:47 2003
129 --- runtime/makemenu.vim Sun Jan 25 20:03:46 2004
132 " Script to define the syntax menu in synmenu.vim
133 " Maintainer: Bram Moolenaar <Bram@vim.org>
134 ! " Last Change: 2003 May 14
136 " This is used by "make menu" in the src directory.
137 edit <sfile>:p:h/synmenu.vim
139 " Script to define the syntax menu in synmenu.vim
140 " Maintainer: Bram Moolenaar <Bram@vim.org>
141 ! " Last Change: 2004 Jan 25
143 " This is used by "make menu" in the src directory.
144 edit <sfile>:p:h/synmenu.vim
147 SynMenu CD.Cynlib:cynlib
148 SynMenu CD.Cascading\ Style\ Sheets:css
149 SynMenu CD.Century\ Term:cterm
150 ! SynMenu CD.CHILL:ch
151 SynMenu CD.ChangeLog:changelog
152 SynMenu CD.Cheetah\ template:cheetah
153 SynMenu CD.Clean:clean
155 SynMenu CD.Clipper:clipper
157 SynMenu CD.Cynlib:cynlib
158 SynMenu CD.Cascading\ Style\ Sheets:css
159 SynMenu CD.Century\ Term:cterm
160 ! SynMenu CD.CH\ script:ch
161 SynMenu CD.ChangeLog:changelog
162 SynMenu CD.Cheetah\ template:cheetah
163 + SynMenu CD.CHILL:chill
164 SynMenu CD.Clean:clean
166 SynMenu CD.Clipper:clipper
167 *** ../vim-6.2.201/runtime/synmenu.vim Sat Jul 5 19:14:04 2003
168 --- runtime/synmenu.vim Sun Jan 25 20:03:50 2004
171 an 50.20.160 &Syntax.CD.Cynlib :cal SetSyn("cynlib")<CR>
172 an 50.20.170 &Syntax.CD.Cascading\ Style\ Sheets :cal SetSyn("css")<CR>
173 an 50.20.180 &Syntax.CD.Century\ Term :cal SetSyn("cterm")<CR>
174 ! an 50.20.190 &Syntax.CD.CHILL :cal SetSyn("ch")<CR>
175 an 50.20.200 &Syntax.CD.ChangeLog :cal SetSyn("changelog")<CR>
176 an 50.20.210 &Syntax.CD.Cheetah\ template :cal SetSyn("cheetah")<CR>
177 ! an 50.20.220 &Syntax.CD.Clean :cal SetSyn("clean")<CR>
178 ! an 50.20.230 &Syntax.CD.Clever :cal SetSyn("cl")<CR>
179 ! an 50.20.240 &Syntax.CD.Clipper :cal SetSyn("clipper")<CR>
180 ! an 50.20.250 &Syntax.CD.Cold\ Fusion :cal SetSyn("cf")<CR>
181 ! an 50.20.260 &Syntax.CD.Config.Cfg\ Config\ file :cal SetSyn("cfg")<CR>
182 ! an 50.20.270 &Syntax.CD.Config.Generic\ Config\ file :cal SetSyn("conf")<CR>
183 ! an 50.20.280 &Syntax.CD.Config.Configure\.in :cal SetSyn("config")<CR>
184 ! an 50.20.290 &Syntax.CD.Ctrl-H :cal SetSyn("ctrlh")<CR>
185 ! an 50.20.300 &Syntax.CD.Cobol :cal SetSyn("cobol")<CR>
186 ! an 50.20.310 &Syntax.CD.CSP :cal SetSyn("csp")<CR>
187 ! an 50.20.320 &Syntax.CD.CUPL.CUPL :cal SetSyn("cupl")<CR>
188 ! an 50.20.330 &Syntax.CD.CUPL.Simulation :cal SetSyn("cuplsim")<CR>
189 ! an 50.20.340 &Syntax.CD.CVS.commit\ file :cal SetSyn("cvs")<CR>
190 ! an 50.20.350 &Syntax.CD.CVS.cvsrc :cal SetSyn("cvsrc")<CR>
191 ! an 50.20.370 &Syntax.CD.Debian.Debian\ ChangeLog :cal SetSyn("debchangelog")<CR>
192 ! an 50.20.380 &Syntax.CD.Debian.Debian\ Control :cal SetSyn("debcontrol")<CR>
193 ! an 50.20.390 &Syntax.CD.Diff :cal SetSyn("diff")<CR>
194 ! an 50.20.400 &Syntax.CD.Digital\ Command\ Lang :cal SetSyn("dcl")<CR>
195 ! an 50.20.410 &Syntax.CD.DNS/BIND\ zone :cal SetSyn("dns")<CR>
196 ! an 50.20.420 &Syntax.CD.DocBook :cal SetSyn("docbk")<CR>
197 ! an 50.20.430 &Syntax.CD.Dot :cal SetSyn("dot")<CR>
198 ! an 50.20.440 &Syntax.CD.Dracula :cal SetSyn("dracula")<CR>
199 ! an 50.20.450 &Syntax.CD.DSSSL :cal SetSyn("dsl")<CR>
200 ! an 50.20.460 &Syntax.CD.DTD :cal SetSyn("dtd")<CR>
201 ! an 50.20.470 &Syntax.CD.DTML\ (Zope) :cal SetSyn("dtml")<CR>
202 ! an 50.20.480 &Syntax.CD.Dylan.Dylan :cal SetSyn("dylan")<CR>
203 ! an 50.20.490 &Syntax.CD.Dylan.Dylan\ interface :cal SetSyn("dylanintr")<CR>
204 ! an 50.20.500 &Syntax.CD.Dylan.Dylan\ lid :cal SetSyn("dylanlid")<CR>
205 an 50.30.100 &Syntax.EFG.EDIF :cal SetSyn("edif")<CR>
206 an 50.30.110 &Syntax.EFG.Eiffel :cal SetSyn("eiffel")<CR>
207 an 50.30.120 &Syntax.EFG.Elm\ filter\ rules :cal SetSyn("elmfilt")<CR>
209 an 50.20.160 &Syntax.CD.Cynlib :cal SetSyn("cynlib")<CR>
210 an 50.20.170 &Syntax.CD.Cascading\ Style\ Sheets :cal SetSyn("css")<CR>
211 an 50.20.180 &Syntax.CD.Century\ Term :cal SetSyn("cterm")<CR>
212 ! an 50.20.190 &Syntax.CD.CH\ script :cal SetSyn("ch")<CR>
213 an 50.20.200 &Syntax.CD.ChangeLog :cal SetSyn("changelog")<CR>
214 an 50.20.210 &Syntax.CD.Cheetah\ template :cal SetSyn("cheetah")<CR>
215 ! an 50.20.220 &Syntax.CD.CHILL :cal SetSyn("chill")<CR>
216 ! an 50.20.230 &Syntax.CD.Clean :cal SetSyn("clean")<CR>
217 ! an 50.20.240 &Syntax.CD.Clever :cal SetSyn("cl")<CR>
218 ! an 50.20.250 &Syntax.CD.Clipper :cal SetSyn("clipper")<CR>
219 ! an 50.20.260 &Syntax.CD.Cold\ Fusion :cal SetSyn("cf")<CR>
220 ! an 50.20.270 &Syntax.CD.Config.Cfg\ Config\ file :cal SetSyn("cfg")<CR>
221 ! an 50.20.280 &Syntax.CD.Config.Generic\ Config\ file :cal SetSyn("conf")<CR>
222 ! an 50.20.290 &Syntax.CD.Config.Configure\.in :cal SetSyn("config")<CR>
223 ! an 50.20.300 &Syntax.CD.Ctrl-H :cal SetSyn("ctrlh")<CR>
224 ! an 50.20.310 &Syntax.CD.Cobol :cal SetSyn("cobol")<CR>
225 ! an 50.20.320 &Syntax.CD.CSP :cal SetSyn("csp")<CR>
226 ! an 50.20.330 &Syntax.CD.CUPL.CUPL :cal SetSyn("cupl")<CR>
227 ! an 50.20.340 &Syntax.CD.CUPL.Simulation :cal SetSyn("cuplsim")<CR>
228 ! an 50.20.350 &Syntax.CD.CVS.commit\ file :cal SetSyn("cvs")<CR>
229 ! an 50.20.360 &Syntax.CD.CVS.cvsrc :cal SetSyn("cvsrc")<CR>
230 ! an 50.20.380 &Syntax.CD.Debian.Debian\ ChangeLog :cal SetSyn("debchangelog")<CR>
231 ! an 50.20.390 &Syntax.CD.Debian.Debian\ Control :cal SetSyn("debcontrol")<CR>
232 ! an 50.20.400 &Syntax.CD.Diff :cal SetSyn("diff")<CR>
233 ! an 50.20.410 &Syntax.CD.Digital\ Command\ Lang :cal SetSyn("dcl")<CR>
234 ! an 50.20.420 &Syntax.CD.Dircolors :cal SetSyn("dircolors")<CR>
235 ! an 50.20.430 &Syntax.CD.DNS/BIND\ zone :cal SetSyn("dns")<CR>
236 ! an 50.20.440 &Syntax.CD.DocBook :cal SetSyn("docbk")<CR>
237 ! an 50.20.450 &Syntax.CD.Dot :cal SetSyn("dot")<CR>
238 ! an 50.20.460 &Syntax.CD.Dracula :cal SetSyn("dracula")<CR>
239 ! an 50.20.470 &Syntax.CD.DSSSL :cal SetSyn("dsl")<CR>
240 ! an 50.20.480 &Syntax.CD.DTD :cal SetSyn("dtd")<CR>
241 ! an 50.20.490 &Syntax.CD.DTML\ (Zope) :cal SetSyn("dtml")<CR>
242 ! an 50.20.500 &Syntax.CD.Dylan.Dylan :cal SetSyn("dylan")<CR>
243 ! an 50.20.510 &Syntax.CD.Dylan.Dylan\ interface :cal SetSyn("dylanintr")<CR>
244 ! an 50.20.520 &Syntax.CD.Dylan.Dylan\ lid :cal SetSyn("dylanlid")<CR>
245 an 50.30.100 &Syntax.EFG.EDIF :cal SetSyn("edif")<CR>
246 an 50.30.110 &Syntax.EFG.Eiffel :cal SetSyn("eiffel")<CR>
247 an 50.30.120 &Syntax.EFG.Elm\ filter\ rules :cal SetSyn("elmfilt")<CR>
248 *** ../vim-6.2.201/runtime/syntax/ch.vim Thu May 10 21:49:39 2001
249 --- runtime/syntax/ch.vim Tue Aug 12 22:56:32 2003
254 ! " Maintainer: YoungSang Yoon <image@lgic.co.kr>
255 ! " Last change: 2001 May 10
258 - " first created by image@lgic.co.kr & modified by paris@lgic.co.kr
260 - " CHILL (CCITT High Level Programming Language) is used for
261 - " developing software of ATM switch at LGIC (LG Information
262 - " & Communications LTd.)
265 " For version 5.x: Clear all syntax items
266 " For version 6.x: Quit when a syntax file was already loaded
271 ! " Maintainer: SoftIntegration, Inc. <info@softintegration.com>
272 ! " URL: http://www.softintegration.com/download/vim/syntax/ch.vim
273 ! " Last change: 2003 Aug 05
274 ! " Created based on cpp.vim
276 ! " Ch is a C/C++ interpreter with many high level extensions
279 " For version 5.x: Clear all syntax items
280 " For version 6.x: Quit when a syntax file was already loaded
287 ! " A bunch of useful CHILL keywords
288 ! syn keyword chStatement goto GOTO return RETURN returns RETURNS
289 ! syn keyword chLabel CASE case ESAC esac
290 ! syn keyword chConditional if IF else ELSE elsif ELSIF switch SWITCH THEN then FI fi
291 ! syn keyword chLogical NOT not
292 ! syn keyword chRepeat while WHILE for FOR do DO od OD TO to
293 ! syn keyword chProcess START start STACKSIZE stacksize PRIORITY priority THIS this STOP stop
294 ! syn keyword chBlock PROC proc PROCESS process
295 ! syn keyword chSignal RECEIVE receive SEND send NONPERSISTENT nonpersistent PERSISTENT peristent SET set EVER ever
297 ! syn keyword chTodo contained TODO FIXME XXX
299 ! " String and Character constants
300 ! " Highlight special characters (those which have a backslash) differently
301 ! syn match chSpecial contained "\\x\x\+\|\\\o\{1,3\}\|\\.\|\\$"
302 ! syn region chString start=+"+ skip=+\\\\\|\\"+ end=+"+ contains=chSpecial
303 ! syn match chCharacter "'[^\\]'"
304 ! syn match chSpecialCharacter "'\\.'"
305 ! syn match chSpecialCharacter "'\\\o\{1,3\}'"
307 ! "when wanted, highlight trailing white space
308 ! if exists("ch_space_errors")
309 ! syn match chSpaceError "\s*$"
310 ! syn match chSpaceError " \+\t"me=e-1
313 ! "catch errors caused by wrong parenthesis
314 ! syn cluster chParenGroup contains=chParenError,chIncluded,chSpecial,chTodo,chUserCont,chUserLabel,chBitField
315 ! syn region chParen transparent start='(' end=')' contains=ALLBUT,@chParenGroup
316 ! syn match chParenError ")"
317 ! syn match chInParen contained "[{}]"
319 ! "integer number, or floating point number without a dot and with "f".
321 ! syn match chNumber "\<\d\+\(u\=l\=\|lu\|f\)\>"
322 ! "floating point number, with dot, optional exponent
323 ! syn match chFloat "\<\d\+\.\d*\(e[-+]\=\d\+\)\=[fl]\=\>"
324 ! "floating point number, starting with a dot, optional exponent
325 ! syn match chFloat "\.\d\+\(e[-+]\=\d\+\)\=[fl]\=\>"
326 ! "floating point number, without dot, with exponent
327 ! syn match chFloat "\<\d\+e[-+]\=\d\+[fl]\=\>"
329 ! syn match chNumber "\<0x\x\+\(u\=l\=\|lu\)\>"
330 ! "syn match chIdentifier "\<[a-z_][a-z0-9_]*\>"
332 ! " flag an octal number with wrong digits
333 ! syn match chOctalError "\<0\o*[89]"
335 ! if exists("ch_comment_strings")
336 ! " A comment can contain chString, chCharacter and chNumber.
337 ! " But a "*/" inside a chString in a chComment DOES end the comment! So we
338 ! " need to use a special type of chString: chCommentString, which also ends on
339 ! " "*/", and sees a "*" at the start of the line as comment again.
340 ! " Unfortunately this doesn't very well work for // type of comments :-(
341 ! syntax match chCommentSkip contained "^\s*\*\($\|\s\+\)"
342 ! syntax region chCommentString contained start=+"+ skip=+\\\\\|\\"+ end=+"+ end=+\*/+me=s-1 contains=chSpecial,chCommentSkip
343 ! syntax region chComment2String contained start=+"+ skip=+\\\\\|\\"+ end=+"+ end="$" contains=chSpecial
344 ! syntax region chComment start="/\*" end="\*/" contains=chTodo,chCommentString,chCharacter,chNumber,chFloat,chSpaceError
345 ! syntax match chComment "//.*" contains=chTodo,chComment2String,chCharacter,chNumber,chSpaceError
347 ! syn region chComment start="/\*" end="\*/" contains=chTodo,chSpaceError
348 ! syn match chComment "//.*" contains=chTodo,chSpaceError
350 - syntax match chCommentError "\*/"
352 - syn keyword chOperator SIZE size
353 - syn keyword chType dcl DCL int INT char CHAR bool BOOL REF ref LOC loc INSTANCE instance
354 - syn keyword chStructure struct STRUCT enum ENUM newmode NEWMODE synmode SYNMODE
355 - "syn keyword chStorageClass
356 - syn keyword chBlock PROC proc END end
357 - syn keyword chScope GRANT grant SEIZE seize
358 - syn keyword chEDML select SELECT delete DELETE update UPDATE in IN seq SEQ WHERE where INSERT insert include INCLUDE exclude EXCLUDE
359 - syn keyword chBoolConst true TRUE false FALSE
361 - syn region chPreCondit start="^\s*#\s*\(if\>\|ifdef\>\|ifndef\>\|elif\>\|else\>\|endif\>\)" skip="\\$" end="$" contains=chComment,chString,chCharacter,chNumber,chCommentError,chSpaceError
362 - syn region chIncluded contained start=+"+ skip=+\\\\\|\\"+ end=+"+
363 - syn match chIncluded contained "<[^>]*>"
364 - syn match chInclude "^\s*#\s*include\>\s*["<]" contains=chIncluded
365 - "syn match chLineSkip "\\$"
366 - syn cluster chPreProcGroup contains=chPreCondit,chIncluded,chInclude,chDefine,chInParen,chUserLabel
367 - syn region chDefine start="^\s*#\s*\(define\>\|undef\>\)" skip="\\$" end="$" contains=ALLBUT,@chPreProcGroup
368 - syn region chPreProc start="^\s*#\s*\(pragma\>\|line\>\|warning\>\|warn\>\|error\>\)" skip="\\$" end="$" contains=ALLBUT,@chPreProcGroup
370 ! " Highlight User Labels
371 ! syn cluster chMultiGroup contains=chIncluded,chSpecial,chTodo,chUserCont,chUserLabel,chBitField
372 ! syn region chMulti transparent start='?' end=':' contains=ALLBUT,@chMultiGroup
373 ! " Avoid matching foo::bar() in C++ by requiring that the next char is not ':'
374 ! syn match chUserCont "^\s*\I\i*\s*:$" contains=chUserLabel
375 ! syn match chUserCont ";\s*\I\i*\s*:$" contains=chUserLabel
376 ! syn match chUserCont "^\s*\I\i*\s*:[^:]"me=e-1 contains=chUserLabel
377 ! syn match chUserCont ";\s*\I\i*\s*:[^:]"me=e-1 contains=chUserLabel
379 ! syn match chUserLabel "\I\i*" contained
381 ! " Avoid recognizing most bitfields as labels
382 ! syn match chBitField "^\s*\I\i*\s*:\s*[1-9]"me=e-1
383 ! syn match chBitField ";\s*\I\i*\s*:\s*[1-9]"me=e-1
385 ! syn match chBracket contained "[<>]"
386 ! if !exists("ch_minlines")
387 ! let ch_minlines = 15
389 ! exec "syn sync ccomment chComment minlines=" . ch_minlines
391 ! " Define the default highlighting.
392 ! " For version 5.7 and earlier: only when not done already
393 ! " For version 5.8 and later: only when an item doesn't have highlighting yet
394 if version >= 508 || !exists("did_ch_syntax_inits")
396 let did_ch_syntax_inits = 1
401 ! " Read the C syntax to start with
403 ! so <sfile>:p:h/c.vim
405 ! runtime! syntax/c.vim
406 ! unlet b:current_syntax
411 ! syn keyword chStatement new delete this
412 ! syn keyword chAccess public private
413 ! syn keyword chStorageClass __declspec(global) __declspec(local)
414 ! syn keyword chStructure class
415 ! syn keyword chType string_t array
417 ! " Default highlighting
418 if version >= 508 || !exists("did_ch_syntax_inits")
420 let did_ch_syntax_inits = 1
424 command -nargs=+ HiLink hi def link <args>
427 ! HiLink chLabel Label
428 ! HiLink chUserLabel Label
429 ! HiLink chConditional Conditional
430 ! " hi chConditional term=bold ctermfg=red guifg=red gui=bold
432 ! HiLink chRepeat Repeat
433 ! HiLink chProcess Repeat
434 ! HiLink chSignal Repeat
435 ! HiLink chCharacter Character
436 ! HiLink chSpecialCharacter chSpecial
437 ! HiLink chNumber Number
438 ! HiLink chFloat Float
439 ! HiLink chOctalError chError
440 ! HiLink chParenError chError
441 ! HiLink chInParen chError
442 ! HiLink chCommentError chError
443 ! HiLink chSpaceError chError
444 ! HiLink chOperator Operator
445 ! HiLink chStructure Structure
446 ! HiLink chBlock Operator
447 ! HiLink chScope Operator
448 ! "hi chEDML term=underline ctermfg=DarkRed guifg=Red
449 ! HiLink chEDML PreProc
450 ! "hi chBoolConst term=bold ctermfg=brown guifg=brown
451 ! HiLink chBoolConst Constant
452 ! "hi chLogical term=bold ctermfg=brown guifg=brown
453 ! HiLink chLogical Constant
454 ! HiLink chStorageClass StorageClass
455 ! HiLink chInclude Include
456 ! HiLink chPreProc PreProc
457 ! HiLink chDefine Macro
458 ! HiLink chIncluded chString
459 ! HiLink chError Error
460 ! HiLink chStatement Statement
461 ! HiLink chPreCondit PreCondit
463 ! HiLink chCommentError chError
464 ! HiLink chCommentString chString
465 ! HiLink chComment2String chString
466 ! HiLink chCommentSkip chComment
467 ! HiLink chString String
468 ! HiLink chComment Comment
469 ! " hi chComment term=None ctermfg=lightblue guifg=lightblue
470 ! HiLink chSpecial SpecialChar
472 ! HiLink chBlock Statement
473 ! "HiLink chIdentifier Identifier
474 ! HiLink chBracket Delimiter
481 command -nargs=+ HiLink hi def link <args>
483 ! HiLink chAccess chStatement
484 ! HiLink chExceptions Exception
485 ! HiLink chStatement Statement
487 ! HiLink chStructure Structure
491 *** ../vim-6.2.201/runtime/syntax/chill.vim Sun Jan 25 20:08:47 2004
492 --- runtime/syntax/chill.vim Wed Jan 21 17:52:15 2004
498 + " Maintainer: YoungSang Yoon <image@lgic.co.kr>
499 + " Last change: 2004 Jan 21
502 + " first created by image@lgic.co.kr & modified by paris@lgic.co.kr
504 + " CHILL (CCITT High Level Programming Language) is used for
505 + " developing software of ATM switch at LGIC (LG Information
506 + " & Communications LTd.)
509 + " For version 5.x: Clear all syntax items
510 + " For version 6.x: Quit when a syntax file was already loaded
513 + elseif exists("b:current_syntax")
517 + " A bunch of useful CHILL keywords
518 + syn keyword chillStatement goto GOTO return RETURN returns RETURNS
519 + syn keyword chillLabel CASE case ESAC esac
520 + syn keyword chillConditional if IF else ELSE elsif ELSIF switch SWITCH THEN then FI fi
521 + syn keyword chillLogical NOT not
522 + syn keyword chillRepeat while WHILE for FOR do DO od OD TO to
523 + syn keyword chillProcess START start STACKSIZE stacksize PRIORITY priority THIS this STOP stop
524 + syn keyword chillBlock PROC proc PROCESS process
525 + syn keyword chillSignal RECEIVE receive SEND send NONPERSISTENT nonpersistent PERSISTENT peristent SET set EVER ever
527 + syn keyword chillTodo contained TODO FIXME XXX
529 + " String and Character constants
530 + " Highlight special characters (those which have a backslash) differently
531 + syn match chillSpecial contained "\\x\x\+\|\\\o\{1,3\}\|\\.\|\\$"
532 + syn region chillString start=+"+ skip=+\\\\\|\\"+ end=+"+ contains=chillSpecial
533 + syn match chillCharacter "'[^\\]'"
534 + syn match chillSpecialCharacter "'\\.'"
535 + syn match chillSpecialCharacter "'\\\o\{1,3\}'"
537 + "when wanted, highlight trailing white space
538 + if exists("chill_space_errors")
539 + syn match chillSpaceError "\s*$"
540 + syn match chillSpaceError " \+\t"me=e-1
543 + "catch errors caused by wrong parenthesis
544 + syn cluster chillParenGroup contains=chillParenError,chillIncluded,chillSpecial,chillTodo,chillUserCont,chillUserLabel,chillBitField
545 + syn region chillParen transparent start='(' end=')' contains=ALLBUT,@chillParenGroup
546 + syn match chillParenError ")"
547 + syn match chillInParen contained "[{}]"
549 + "integer number, or floating point number without a dot and with "f".
551 + syn match chillNumber "\<\d\+\(u\=l\=\|lu\|f\)\>"
552 + "floating point number, with dot, optional exponent
553 + syn match chillFloat "\<\d\+\.\d*\(e[-+]\=\d\+\)\=[fl]\=\>"
554 + "floating point number, starting with a dot, optional exponent
555 + syn match chillFloat "\.\d\+\(e[-+]\=\d\+\)\=[fl]\=\>"
556 + "floating point number, without dot, with exponent
557 + syn match chillFloat "\<\d\+e[-+]\=\d\+[fl]\=\>"
559 + syn match chillNumber "\<0x\x\+\(u\=l\=\|lu\)\>"
560 + "syn match chillIdentifier "\<[a-z_][a-z0-9_]*\>"
562 + " flag an octal number with wrong digits
563 + syn match chillOctalError "\<0\o*[89]"
565 + if exists("chill_comment_strings")
566 + " A comment can contain chillString, chillCharacter and chillNumber.
567 + " But a "*/" inside a chillString in a chillComment DOES end the comment! So we
568 + " need to use a special type of chillString: chillCommentString, which also ends on
569 + " "*/", and sees a "*" at the start of the line as comment again.
570 + " Unfortunately this doesn't very well work for // type of comments :-(
571 + syntax match chillCommentSkip contained "^\s*\*\($\|\s\+\)"
572 + syntax region chillCommentString contained start=+"+ skip=+\\\\\|\\"+ end=+"+ end=+\*/+me=s-1 contains=chillSpecial,chillCommentSkip
573 + syntax region chillComment2String contained start=+"+ skip=+\\\\\|\\"+ end=+"+ end="$" contains=chillSpecial
574 + syntax region chillComment start="/\*" end="\*/" contains=chillTodo,chillCommentString,chillCharacter,chillNumber,chillFloat,chillSpaceError
575 + syntax match chillComment "//.*" contains=chillTodo,chillComment2String,chillCharacter,chillNumber,chillSpaceError
577 + syn region chillComment start="/\*" end="\*/" contains=chillTodo,chillSpaceError
578 + syn match chillComment "//.*" contains=chillTodo,chillSpaceError
580 + syntax match chillCommentError "\*/"
582 + syn keyword chillOperator SIZE size
583 + syn keyword chillType dcl DCL int INT char CHAR bool BOOL REF ref LOC loc INSTANCE instance
584 + syn keyword chillStructure struct STRUCT enum ENUM newmode NEWMODE synmode SYNMODE
585 + "syn keyword chillStorageClass
586 + syn keyword chillBlock PROC proc END end
587 + syn keyword chillScope GRANT grant SEIZE seize
588 + syn keyword chillEDML select SELECT delete DELETE update UPDATE in IN seq SEQ WHERE where INSERT insert include INCLUDE exclude EXCLUDE
589 + syn keyword chillBoolConst true TRUE false FALSE
591 + syn region chillPreCondit start="^\s*#\s*\(if\>\|ifdef\>\|ifndef\>\|elif\>\|else\>\|endif\>\)" skip="\\$" end="$" contains=chillComment,chillString,chillCharacter,chillNumber,chillCommentError,chillSpaceError
592 + syn region chillIncluded contained start=+"+ skip=+\\\\\|\\"+ end=+"+
593 + syn match chillIncluded contained "<[^>]*>"
594 + syn match chillInclude "^\s*#\s*include\>\s*["<]" contains=chillIncluded
595 + "syn match chillLineSkip "\\$"
596 + syn cluster chillPreProcGroup contains=chillPreCondit,chillIncluded,chillInclude,chillDefine,chillInParen,chillUserLabel
597 + syn region chillDefine start="^\s*#\s*\(define\>\|undef\>\)" skip="\\$" end="$" contains=ALLBUT,@chillPreProcGroup
598 + syn region chillPreProc start="^\s*#\s*\(pragma\>\|line\>\|warning\>\|warn\>\|error\>\)" skip="\\$" end="$" contains=ALLBUT,@chillPreProcGroup
600 + " Highlight User Labels
601 + syn cluster chillMultiGroup contains=chillIncluded,chillSpecial,chillTodo,chillUserCont,chillUserLabel,chillBitField
602 + syn region chillMulti transparent start='?' end=':' contains=ALLBUT,@chillMultiGroup
603 + " Avoid matching foo::bar() in C++ by requiring that the next char is not ':'
604 + syn match chillUserCont "^\s*\I\i*\s*:$" contains=chillUserLabel
605 + syn match chillUserCont ";\s*\I\i*\s*:$" contains=chillUserLabel
606 + syn match chillUserCont "^\s*\I\i*\s*:[^:]"me=e-1 contains=chillUserLabel
607 + syn match chillUserCont ";\s*\I\i*\s*:[^:]"me=e-1 contains=chillUserLabel
609 + syn match chillUserLabel "\I\i*" contained
611 + " Avoid recognizing most bitfields as labels
612 + syn match chillBitField "^\s*\I\i*\s*:\s*[1-9]"me=e-1
613 + syn match chillBitField ";\s*\I\i*\s*:\s*[1-9]"me=e-1
615 + syn match chillBracket contained "[<>]"
616 + if !exists("chill_minlines")
617 + let chill_minlines = 15
619 + exec "syn sync ccomment chillComment minlines=" . chill_minlines
621 + " Define the default highlighting.
622 + " For version 5.7 and earlier: only when not done already
623 + " For version 5.8 and later: only when an item doesn't have highlighting yet
624 + if version >= 508 || !exists("did_ch_syntax_inits")
626 + let did_ch_syntax_inits = 1
627 + command -nargs=+ HiLink hi link <args>
629 + command -nargs=+ HiLink hi def link <args>
632 + HiLink chillLabel Label
633 + HiLink chillUserLabel Label
634 + HiLink chillConditional Conditional
635 + " hi chillConditional term=bold ctermfg=red guifg=red gui=bold
637 + HiLink chillRepeat Repeat
638 + HiLink chillProcess Repeat
639 + HiLink chillSignal Repeat
640 + HiLink chillCharacter Character
641 + HiLink chillSpecialCharacter chillSpecial
642 + HiLink chillNumber Number
643 + HiLink chillFloat Float
644 + HiLink chillOctalError chillError
645 + HiLink chillParenError chillError
646 + HiLink chillInParen chillError
647 + HiLink chillCommentError chillError
648 + HiLink chillSpaceError chillError
649 + HiLink chillOperator Operator
650 + HiLink chillStructure Structure
651 + HiLink chillBlock Operator
652 + HiLink chillScope Operator
653 + "hi chillEDML term=underline ctermfg=DarkRed guifg=Red
654 + HiLink chillEDML PreProc
655 + "hi chillBoolConst term=bold ctermfg=brown guifg=brown
656 + HiLink chillBoolConst Constant
657 + "hi chillLogical term=bold ctermfg=brown guifg=brown
658 + HiLink chillLogical Constant
659 + HiLink chillStorageClass StorageClass
660 + HiLink chillInclude Include
661 + HiLink chillPreProc PreProc
662 + HiLink chillDefine Macro
663 + HiLink chillIncluded chillString
664 + HiLink chillError Error
665 + HiLink chillStatement Statement
666 + HiLink chillPreCondit PreCondit
667 + HiLink chillType Type
668 + HiLink chillCommentError chillError
669 + HiLink chillCommentString chillString
670 + HiLink chillComment2String chillString
671 + HiLink chillCommentSkip chillComment
672 + HiLink chillString String
673 + HiLink chillComment Comment
674 + " hi chillComment term=None ctermfg=lightblue guifg=lightblue
675 + HiLink chillSpecial SpecialChar
676 + HiLink chillTodo Todo
677 + HiLink chillBlock Statement
678 + "HiLink chillIdentifier Identifier
679 + HiLink chillBracket Delimiter
684 + let b:current_syntax = "chill"
687 *** ../vim-6.2.201/src/version.c Sun Jan 25 19:56:12 2004
688 --- src/version.c Sun Jan 25 19:57:47 2004
692 { /* Add new patch number below this line */
698 BEDEVERE: Stand by for attack!!
699 [CUT TO enormous army forming up. Trebuchets, rows of PIKEMEN, siege
700 towers, pennants flying, shouts of "Stand by for attack!" Traditional
701 army build-up shots. The shouts echo across the ranks of the army.
702 We see various groups reacting, and stirring themselves in readiness.]
703 ARTHUR: Who are they?
704 BEDEVERE: Oh, just some friends!
705 "Monty Python and the Holy Grail" PYTHON (MONTY) PICTURES LTD
707 /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net \\\
708 /// Sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
709 \\\ Project leader for A-A-P -- http://www.A-A-P.org ///
710 \\\ Help AIDS victims, buy here: http://ICCF-Holland.org/click1.html ///