annotate runtime/syntax/dcl.vim @ 3421:fb2c5a51dac7 v7.3.476

updated for version 7.3.476 Problem: When selecting a block, using "$" to include the end of each line and using "A" and typing a backspace strange things happen. (Yuangchen Xie) Solution: Avoid using a negative length. (Christian Brabandt)
author Bram Moolenaar <bram@vim.org>
date Fri, 23 Mar 2012 14:16:23 +0100
parents e63691e7c504
children b3bc99b909c3
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1 " Vim syntax file
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2 " Language: DCL (Digital Command Language - vms)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3 " Maintainer: Dr. Charles E. Campbell, Jr. <NdrOchipS@PcampbellAfamily.Mbiz>
1121
e63691e7c504 updated for version 7.1a
vimboss
parents: 827
diff changeset
4 " Last Change: Sep 11, 2006
e63691e7c504 updated for version 7.1a
vimboss
parents: 827
diff changeset
5 " Version: 6
506
3d386838cf56 updated for version 7.0142
vimboss
parents: 7
diff changeset
6 " URL: http://mysite.verizon.net/astronaut/vim/index.html#vimlinks_syntax
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
8 " For version 5.x: Clear all syntax items
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
9 " For version 6.x: Quit when a syntax file was already loaded
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
10 if version < 600
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
11 syntax clear
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
12 elseif exists("b:current_syntax")
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
13 finish
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
14 endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
15
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
16 if version < 600
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
17 set iskeyword=$,@,48-57,_
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
18 else
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
19 setlocal iskeyword=$,@,48-57,_
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
20 endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
21
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
22 syn case ignore
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
23 syn keyword dclInstr accounting del[ete] gen[cat] mou[nt] run
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
24 syn keyword dclInstr all[ocate] dep[osit] gen[eral] ncp run[off]
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
25 syn keyword dclInstr ana[lyze] dia[gnose] gos[ub] ncs sca
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
26 syn keyword dclInstr app[end] dif[ferences] got[o] on sea[rch]
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
27 syn keyword dclInstr ass[ign] dir[ectory] hel[p] ope[n] set
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
28 syn keyword dclInstr att[ach] dis[able] ico[nv] pas[cal] sho[w]
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
29 syn keyword dclInstr aut[horize] dis[connect] if pas[sword] sor[t]
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
30 syn keyword dclInstr aut[ogen] dis[mount] ini[tialize] pat[ch] spa[wn]
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
31 syn keyword dclInstr bac[kup] dpm[l] inq[uire] pca sta[rt]
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
32 syn keyword dclInstr cal[l] dqs ins[tall] pho[ne] sto[p]
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
33 syn keyword dclInstr can[cel] dsr job pri[nt] sub[mit]
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
34 syn keyword dclInstr cc dst[graph] lat[cp] pro[duct] sub[routine]
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
35 syn keyword dclInstr clo[se] dtm lib[rary] psw[rap] swx[cr]
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
36 syn keyword dclInstr cms dum[p] lic[ense] pur[ge] syn[chronize]
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
37 syn keyword dclInstr con[nect] edi[t] lin[k] qde[lete] sys[gen]
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
38 syn keyword dclInstr con[tinue] ena[ble] lmc[p] qse[t] sys[man]
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
39 syn keyword dclInstr con[vert] end[subroutine] loc[ale] qsh[ow] tff
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
40 syn keyword dclInstr cop[y] eod log[in] rea[d] then
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
41 syn keyword dclInstr cre[ate] eoj log[out] rec[all] typ[e]
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
42 syn keyword dclInstr cxx exa[mine] lse[dit] rec[over] uil
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
43 syn keyword dclInstr cxx[l_help] exc[hange] mac[ro] ren[ame] unl[ock]
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
44 syn keyword dclInstr dea[llocate] exi[t] mai[l] rep[ly] ves[t]
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
45 syn keyword dclInstr dea[ssign] fdl mer[ge] req[uest] vie[w]
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
46 syn keyword dclInstr deb[ug] flo[wgraph] mes[sage] ret[urn] wai[t]
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
47 syn keyword dclInstr dec[k] fon[t] mms rms wri[te]
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
48 syn keyword dclInstr def[ine] for[tran]
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
49
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
50 syn keyword dclLexical f$context f$edit f$getjpi f$message f$setprv
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
51 syn keyword dclLexical f$csid f$element f$getqui f$mode f$string
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
52 syn keyword dclLexical f$cvsi f$environment f$getsyi f$parse f$time
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
53 syn keyword dclLexical f$cvtime f$extract f$identifier f$pid f$trnlnm
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
54 syn keyword dclLexical f$cvui f$fao f$integer f$privilege f$type
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
55 syn keyword dclLexical f$device f$file_attributes f$length f$process f$user
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
56 syn keyword dclLexical f$directory f$getdvi f$locate f$search f$verify
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
57
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
58 syn match dclMdfy "/\I\i*" nextgroup=dclMdfySet,dclMdfySetString
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
59 syn match dclMdfySet "=[^ \t"]*" contained
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
60 syn region dclMdfySet matchgroup=dclMdfyBrkt start="=\[" matchgroup=dclMdfyBrkt end="]" contains=dclMdfySep
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
61 syn region dclMdfySetString start='="' skip='""' end='"' contained
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
62 syn match dclMdfySep "[:,]" contained
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
63
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
64 " Numbers
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
65 syn match dclNumber "\d\+"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
66
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
67 " Varname (mainly to prevent dclNumbers from being recognized when part of a dclVarname)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
68 syn match dclVarname "\I\i*"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
69
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
70 " Filenames (devices, paths)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
71 syn match dclDevice "\I\i*\(\$\I\i*\)\=:[^=]"me=e-1 nextgroup=dclDirPath,dclFilename
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
72 syn match dclDirPath "\[\(\I\i*\.\)*\I\i*\]" contains=dclDirSep nextgroup=dclFilename
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
73 syn match dclFilename "\I\i*\$\(\I\i*\)\=\.\(\I\i*\)*\(;\d\+\)\=" contains=dclDirSep
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
74 syn match dclFilename "\I\i*\.\(\I\i*\)\=\(;\d\+\)\=" contains=dclDirSep contained
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
75 syn match dclDirSep "[[\].;]"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
76
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
77 " Strings
1121
e63691e7c504 updated for version 7.1a
vimboss
parents: 827
diff changeset
78 syn region dclString start='"' skip='""' end='"' contains=@Spell
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
79
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
80 " $ stuff and comments
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
81 syn cluster dclCommentGroup contains=dclStart,dclTodo,@Spell
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
82 syn match dclStart "^\$" skipwhite nextgroup=dclExe
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
83 syn match dclContinue "-$"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
84 syn match dclComment "^\$!.*$" contains=@dclCommentGroup
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
85 syn match dclExe "\I\i*" contained
827
fd1b3406fd1c updated for version 7.0d02
vimboss
parents: 506
diff changeset
86 syn keyword dclTodo contained COMBAK DEBUG FIXME TODO XXX
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
87
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
88 " Assignments and Operators
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
89 syn match dclAssign ":==\="
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
90 syn match dclAssign "="
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
91 syn match dclOper "--\|+\|\*\|/"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
92 syn match dclLogOper "\.[a-zA-Z][a-zA-Z][a-zA-Z]\=\." contains=dclLogical,dclLogSep
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
93 syn keyword dclLogical contained and ge gts lt nes
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
94 syn keyword dclLogical contained eq ges le lts not
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
95 syn keyword dclLogical contained eqs gt les ne or
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
96 syn match dclLogSep "\." contained
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
97
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
98 " @command procedures
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
99 syn match dclCmdProcStart "@" nextgroup=dclCmdProc
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
100 syn match dclCmdProc "\I\i*\(\.\I\i*\)\=" contained
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
101 syn match dclCmdProc "\I\i*:" contained nextgroup=dclCmdDirPath,dclCmdProc
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
102 syn match dclCmdDirPath "\[\(\I\i*\.\)*\I\i*\]" contained nextgroup=delCmdProc
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
103
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
104 " labels
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
105 syn match dclGotoLabel "^\$\s*\I\i*:\s*$" contains=dclStart
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
106
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
107 " parameters
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
108 syn match dclParam "'\I[a-zA-Z0-9_$]*'\="
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
109
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
110 " () matching (the clusters are commented out until a vim/vms comes out for v5.2+)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
111 "syn cluster dclNextGroups contains=dclCmdDirPath,dclCmdProc,dclCmdProc,dclDirPath,dclFilename,dclFilename,dclMdfySet,dclMdfySetString,delCmdProc,dclExe,dclTodo
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
112 "syn region dclFuncList matchgroup=Delimiter start="(" matchgroup=Delimiter end=")" contains=ALLBUT,@dclNextGroups
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
113 syn region dclFuncList matchgroup=Delimiter start="(" matchgroup=Delimiter end=")" contains=ALLBUT,dclCmdDirPath,dclCmdProc,dclCmdProc,dclDirPath,dclFilename,dclFilename,dclMdfySet,dclMdfySetString,delCmdProc,dclExe,dclTodo
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
114 syn match dclError ")"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
115
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
116 " Define the default highlighting.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
117 " For version 5.7 and earlier: only when not done already
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
118 " For version 5.8 and later: only when an item doesn't have highlighting yet
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
119 if version >= 508 || !exists("did_dcl_syntax_inits")
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
120 if version < 508
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
121 let did_dcl_syntax_inits = 1
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
122 command -nargs=+ HiLink hi link <args>
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
123 else
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
124 command -nargs=+ HiLink hi def link <args>
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
125 endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
126
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
127 HiLink dclLogOper dclError
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
128 HiLink dclLogical dclOper
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
129 HiLink dclLogSep dclSep
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
130
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
131 HiLink dclAssign Operator
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
132 HiLink dclCmdProc Special
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
133 HiLink dclCmdProcStart Operator
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
134 HiLink dclComment Comment
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
135 HiLink dclContinue Statement
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
136 HiLink dclDevice Identifier
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
137 HiLink dclDirPath Identifier
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
138 HiLink dclDirPath Identifier
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
139 HiLink dclDirSep Delimiter
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
140 HiLink dclError Error
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
141 HiLink dclExe Statement
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
142 HiLink dclFilename NONE
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
143 HiLink dclGotoLabel Label
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
144 HiLink dclInstr Statement
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
145 HiLink dclLexical Function
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
146 HiLink dclMdfy Type
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
147 HiLink dclMdfyBrkt Delimiter
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
148 HiLink dclMdfySep Delimiter
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
149 HiLink dclMdfySet Type
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
150 HiLink dclMdfySetString String
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
151 HiLink dclNumber Number
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
152 HiLink dclOper Operator
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
153 HiLink dclParam Special
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
154 HiLink dclSep Delimiter
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
155 HiLink dclStart Delimiter
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
156 HiLink dclString String
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
157 HiLink dclTodo Todo
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
158
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
159 delcommand HiLink
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
160 endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
161
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
162 let b:current_syntax = "dcl"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
163
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
164 " vim: ts=16