annotate runtime/syntax/cl.vim @ 0:76efa0be13f1

Initial revision
author atsuki
date Sat, 10 Nov 2007 15:07:22 +0900
parents
children e170173ecb68
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
1 " Vim syntax file
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
2 " Language: cl ("Clever Language" by Multibase, http://www.mbase.com.au)
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
3 " Filename extensions: *.ent, *.eni
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
4 " Maintainer: Philip Uren <philuSPAX@ieee.org> - Remove SPAX spam block
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
5 " Last update: Wed Apr 12 08:47:18 EST 2006
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
6 " $Id$
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
7
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
8 " For version 5.x: Clear all syntax items
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
9 " For version 6.x: Quit when a syntax file was already loaded
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
10 if version < 600
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
11 syntax clear
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
12 elseif exists("b:current_syntax")
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
13 finish
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
14 endif
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
15
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
16 if version >= 600
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
17 setlocal iskeyword=@,48-57,_,-,
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
18 else
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
19 set iskeyword=@,48-57,_,-,
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
20 endif
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
21
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
22 syn case ignore
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
23
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
24 syn sync lines=300
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
25
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
26 "If/else/elsif/endif and while/wend mismatch errors
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
27 syn match clifError "\<wend\>"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
28 syn match clifError "\<elsif\>"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
29 syn match clifError "\<else\>"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
30 syn match clifError "\<endif\>"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
31
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
32 syn match clSpaceError "\s\+$"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
33
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
34 " If and while regions
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
35 syn region clLoop transparent matchgroup=clWhile start="\<while\>" matchgroup=clWhile end="\<wend\>" contains=ALLBUT,clBreak,clProcedure
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
36 syn region clIf transparent matchgroup=clConditional start="\<if\>" matchgroup=clConditional end="\<endif\>" contains=ALLBUT,clBreak,clProcedure
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
37
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
38 " Make those TODO notes and debugging stand out!
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
39 syn keyword clTodo contained TODO BUG DEBUG FIX
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
40 syn match clNeedsWork contained "NEED[S]*\s\s*WORK"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
41 syn keyword clDebug contained debug
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
42
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
43 syn match clComment "#.*$" contains=clTodo,clNeedsWork
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
44 syn region clProcedure oneline start="^\s*[{}]" end="$"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
45 syn match clInclude "^\s*include\s.*"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
46
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
47 " We don't put "debug" in the clSetOptions;
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
48 " we contain it in clSet so we can make it stand out.
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
49 syn keyword clSetOptions transparent aauto abort align convert E fill fnum goback hangup justify null_exit output rauto rawprint rawdisplay repeat skip tab trim
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
50 syn match clSet "^\s*set\s.*" contains=clSetOptions,clDebug
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
51
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
52 syn match clPreProc "^\s*#P.*"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
53
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
54 syn keyword clConditional else elsif
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
55 syn keyword clWhile continue endloop
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
56 " 'break' needs to be a region so we can sync on it above.
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
57 syn region clBreak oneline start="^\s*break" end="$"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
58
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
59 syn match clOperator "[!;|)(:.><+*=-]"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
60
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
61 syn match clNumber "\<\d\+\(u\=l\=\|lu\|f\)\>"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
62
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
63 syn region clString matchgroup=clQuote start=+"+ end=+"+ skip=+\\"+
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
64 syn region clString matchgroup=clQuote start=+'+ end=+'+ skip=+\\'+
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
65
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
66 syn keyword clReserved ERROR EXIT INTERRUPT LOCKED LREPLY MODE MCOL MLINE MREPLY NULL REPLY V1 V2 V3 V4 V5 V6 V7 V8 V9 ZERO BYPASS GOING_BACK AAUTO ABORT ABORT ALIGN BIGE CONVERT FNUM GOBACK HANGUP JUSTIFY NEXIT OUTPUT RAUTO RAWDISPLAY RAWPRINT REPEAT SKIP TAB TRIM LCOUNT PCOUNT PLINES SLINES SCOLS MATCH LMATCH
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
67
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
68 syn keyword clFunction asc asize chr name random slen srandom day getarg getcgi getenv lcase scat sconv sdel skey smult srep substr sword trim ucase match
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
69
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
70 syn keyword clStatement clear clear_eol clear_eos close copy create unique with where empty define define ldefine delay_form delete escape exit_block exit_do exit_process field fork format get getfile getnext getprev goto head join maintain message no_join on_eop on_key on_exit on_delete openin openout openapp pause popenin popenout popenio print put range read redisplay refresh restart_block screen select sleep text unlock write and not or do
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
71
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
72 " Define the default highlighting.
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
73 " For version 5.7 and earlier: only when not done already
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
74 " For version 5.8 and later: only when an item doesn't have highlighting yet
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
75 if version >= 508 || !exists("did_cl_syntax_inits")
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
76 if version < 508
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
77 let did_cl_syntax_inits = 1
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
78 command -nargs=+ HiLink hi link <args>
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
79 else
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
80 command -nargs=+ HiLink hi def link <args>
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
81 endif
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
82
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
83 HiLink clifError Error
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
84 HiLink clSpaceError Error
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
85 HiLink clWhile Repeat
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
86 HiLink clConditional Conditional
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
87 HiLink clDebug Debug
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
88 HiLink clNeedsWork Todo
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
89 HiLink clTodo Todo
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
90 HiLink clComment Comment
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
91 HiLink clProcedure Procedure
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
92 HiLink clBreak Procedure
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
93 HiLink clInclude Include
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
94 HiLink clSetOption Statement
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
95 HiLink clSet Identifier
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
96 HiLink clPreProc PreProc
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
97 HiLink clOperator Operator
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
98 HiLink clNumber Number
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
99 HiLink clString String
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
100 HiLink clQuote Delimiter
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
101 HiLink clReserved Identifier
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
102 HiLink clFunction Function
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
103 HiLink clStatement Statement
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
104
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
105 delcommand HiLink
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
106 endif
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
107
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
108 let b:current_syntax = "cl"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
109
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
110 " vim: ts=8 sw=8