stata.vim (27056B)
1 " stata.vim -- Vim syntax file for Stata do, ado, and class files. 2 " Language: Stata and/or Mata 3 " Maintainer: Jeff Pitblado <jpitblado@stata.com> 4 " Last Change: 26apr2006 5 " Version: 1.1.4 6 7 " Log: 8 " 14apr2006 renamed syntax groups st* to stata* 9 " 'syntax clear' only under version control 10 " check for 'b:current_syntax', removed 'did_stata_syntax_inits' 11 " 17apr2006 fixed start expression for stataFunc 12 " 26apr2006 fixed brace confusion in stataErrInParen and stataErrInBracket 13 " fixed paren/bracket confusion in stataFuncGroup 14 15 " quit when a syntax file was already loaded 16 if exists("b:current_syntax") 17 finish 18 endif 19 20 syntax case match 21 22 " comments - single line 23 " note that the triple slash continuing line comment comes free 24 syn region stataStarComment start=/^\s*\*/ end=/$/ contains=stataComment oneline 25 syn region stataSlashComment start="\s//" end=/$/ contains=stataComment oneline 26 syn region stataSlashComment start="^//" end=/$/ contains=stataComment oneline 27 " comments - multiple line 28 syn region stataComment start="/\*" end="\*/" contains=stataComment 29 30 " global macros - simple case 31 syn match stataGlobal /\$\a\w*/ 32 " global macros - general case 33 syn region stataGlobal start=/\${/ end=/}/ oneline contains=@stataMacroGroup 34 " local macros - general case 35 syn region stataLocal start=/`/ end=/'/ oneline contains=@stataMacroGroup 36 37 " numeric formats 38 syn match stataFormat /%-\=\d\+\.\d\+[efg]c\=/ 39 " numeric hex format 40 syn match stataFormat /%-\=21x/ 41 " string format 42 syn match stataFormat /%\(\|-\|\~\)\d\+s/ 43 44 " Statements 45 syn keyword stataConditional else if 46 syn keyword stataRepeat foreach 47 syn keyword stataRepeat forv[alues] 48 syn keyword stataRepeat while 49 50 " Common programming commands 51 syn keyword stataCommand about 52 syn keyword stataCommand adopath 53 syn keyword stataCommand adoupdate 54 syn keyword stataCommand assert 55 syn keyword stataCommand break 56 syn keyword stataCommand by 57 syn keyword stataCommand cap[ture] 58 syn keyword stataCommand cd 59 syn keyword stataCommand chdir 60 syn keyword stataCommand checksum 61 syn keyword stataCommand class 62 syn keyword stataCommand classutil 63 syn keyword stataCommand compress 64 syn keyword stataCommand conf[irm] 65 syn keyword stataCommand conren 66 syn keyword stataCommand continue 67 syn keyword stataCommand cou[nt] 68 syn keyword stataCommand cscript 69 syn keyword stataCommand cscript_log 70 syn keyword stataCommand #delimit 71 syn keyword stataCommand d[escribe] 72 syn keyword stataCommand dir 73 syn keyword stataCommand discard 74 syn keyword stataCommand di[splay] 75 syn keyword stataCommand do 76 syn keyword stataCommand doedit 77 syn keyword stataCommand drop 78 syn keyword stataCommand edit 79 syn keyword stataCommand end 80 syn keyword stataCommand erase 81 syn keyword stataCommand eret[urn] 82 syn keyword stataCommand err[or] 83 syn keyword stataCommand e[xit] 84 syn keyword stataCommand expand 85 syn keyword stataCommand expandcl 86 syn keyword stataCommand file 87 syn keyword stataCommand findfile 88 syn keyword stataCommand format 89 syn keyword stataCommand g[enerate] 90 syn keyword stataCommand gettoken 91 syn keyword stataCommand gl[obal] 92 syn keyword stataCommand help 93 syn keyword stataCommand hexdump 94 syn keyword stataCommand include 95 syn keyword stataCommand infile 96 syn keyword stataCommand infix 97 syn keyword stataCommand input 98 syn keyword stataCommand insheet 99 syn keyword stataCommand joinby 100 syn keyword stataCommand la[bel] 101 syn keyword stataCommand levelsof 102 syn keyword stataCommand list 103 syn keyword stataCommand loc[al] 104 syn keyword stataCommand log 105 syn keyword stataCommand ma[cro] 106 syn keyword stataCommand mark 107 syn keyword stataCommand markout 108 syn keyword stataCommand marksample 109 syn keyword stataCommand mata 110 syn keyword stataCommand matrix 111 syn keyword stataCommand memory 112 syn keyword stataCommand merge 113 syn keyword stataCommand mkdir 114 syn keyword stataCommand more 115 syn keyword stataCommand net 116 syn keyword stataCommand nobreak 117 syn keyword stataCommand n[oisily] 118 syn keyword stataCommand note[s] 119 syn keyword stataCommand numlist 120 syn keyword stataCommand outfile 121 syn keyword stataCommand outsheet 122 syn keyword stataCommand _parse 123 syn keyword stataCommand pause 124 syn keyword stataCommand plugin 125 syn keyword stataCommand post 126 syn keyword stataCommand postclose 127 syn keyword stataCommand postfile 128 syn keyword stataCommand preserve 129 syn keyword stataCommand print 130 syn keyword stataCommand printer 131 syn keyword stataCommand profiler 132 syn keyword stataCommand pr[ogram] 133 syn keyword stataCommand q[uery] 134 syn keyword stataCommand qui[etly] 135 syn keyword stataCommand rcof 136 syn keyword stataCommand reg[ress] 137 syn keyword stataCommand rename 138 syn keyword stataCommand repeat 139 syn keyword stataCommand replace 140 syn keyword stataCommand reshape 141 syn keyword stataCommand ret[urn] 142 syn keyword stataCommand _rmcoll 143 syn keyword stataCommand _rmcoll 144 syn keyword stataCommand _rmcollright 145 syn keyword stataCommand rmdir 146 syn keyword stataCommand _robust 147 syn keyword stataCommand save 148 syn keyword stataCommand sca[lar] 149 syn keyword stataCommand search 150 syn keyword stataCommand serset 151 syn keyword stataCommand set 152 syn keyword stataCommand shell 153 syn keyword stataCommand sleep 154 syn keyword stataCommand sort 155 syn keyword stataCommand split 156 syn keyword stataCommand sret[urn] 157 syn keyword stataCommand ssc 158 syn keyword stataCommand su[mmarize] 159 syn keyword stataCommand syntax 160 syn keyword stataCommand sysdescribe 161 syn keyword stataCommand sysdir 162 syn keyword stataCommand sysuse 163 syn keyword stataCommand token[ize] 164 syn keyword stataCommand translate 165 syn keyword stataCommand type 166 syn keyword stataCommand unab 167 syn keyword stataCommand unabcmd 168 syn keyword stataCommand update 169 syn keyword stataCommand use 170 syn keyword stataCommand vers[ion] 171 syn keyword stataCommand view 172 syn keyword stataCommand viewsource 173 syn keyword stataCommand webdescribe 174 syn keyword stataCommand webseek 175 syn keyword stataCommand webuse 176 syn keyword stataCommand which 177 syn keyword stataCommand who 178 syn keyword stataCommand window 179 180 " Literals 181 syn match stataQuote /"/ 182 syn region stataEString matchgroup=Nothing start=/`"/ end=/"'/ oneline contains=@stataMacroGroup,stataQuote,stataString,stataEString 183 syn region stataString matchgroup=Nothing start=/"/ end=/"/ oneline contains=@stataMacroGroup 184 185 " define clusters 186 syn cluster stataFuncGroup contains=@stataMacroGroup,stataFunc,stataString,stataEstring,stataParen,stataBracket 187 syn cluster stataMacroGroup contains=stataGlobal,stataLocal 188 syn cluster stataParenGroup contains=stataParenError,stataBracketError,stataBraceError,stataSpecial,stataFormat 189 190 " Stata functions 191 " Math 192 syn region stataFunc matchgroup=Function start=/\<abs(/ end=/)/ contains=@stataFuncGroup 193 syn region stataFunc matchgroup=Function start=/\<acos(/ end=/)/ contains=@stataFuncGroup 194 syn region stataFunc matchgroup=Function start=/\<asin(/ end=/)/ contains=@stataFuncGroup 195 syn region stataFunc matchgroup=Function start=/\<atan(/ end=/)/ contains=@stataFuncGroup 196 syn region stataFunc matchgroup=Function start=/\<atan2(/ end=/)/ contains=@stataFuncGroup 197 syn region stataFunc matchgroup=Function start=/\<atanh(/ end=/)/ contains=@stataFuncGroup 198 syn region stataFunc matchgroup=Function start=/\<ceil(/ end=/)/ contains=@stataFuncGroup 199 syn region stataFunc matchgroup=Function start=/\<cloglog(/ end=/)/ contains=@stataFuncGroup 200 syn region stataFunc matchgroup=Function start=/\<comb(/ end=/)/ contains=@stataFuncGroup 201 syn region stataFunc matchgroup=Function start=/\<cos(/ end=/)/ contains=@stataFuncGroup 202 syn region stataFunc matchgroup=Function start=/\<digamma(/ end=/)/ contains=@stataFuncGroup 203 syn region stataFunc matchgroup=Function start=/\<exp(/ end=/)/ contains=@stataFuncGroup 204 syn region stataFunc matchgroup=Function start=/\<floor(/ end=/)/ contains=@stataFuncGroup 205 syn region stataFunc matchgroup=Function start=/\<int(/ end=/)/ contains=@stataFuncGroup 206 syn region stataFunc matchgroup=Function start=/\<invcloglog(/ end=/)/ contains=@stataFuncGroup 207 syn region stataFunc matchgroup=Function start=/\<invlogit(/ end=/)/ contains=@stataFuncGroup 208 syn region stataFunc matchgroup=Function start=/\<ln(/ end=/)/ contains=@stataFuncGroup 209 syn region stataFunc matchgroup=Function start=/\<lnfact(/ end=/)/ contains=@stataFuncGroup 210 syn region stataFunc matchgroup=Function start=/\<lnfactorial(/ end=/)/ contains=@stataFuncGroup 211 syn region stataFunc matchgroup=Function start=/\<lngamma(/ end=/)/ contains=@stataFuncGroup 212 syn region stataFunc matchgroup=Function start=/\<log(/ end=/)/ contains=@stataFuncGroup 213 syn region stataFunc matchgroup=Function start=/\<log10(/ end=/)/ contains=@stataFuncGroup 214 syn region stataFunc matchgroup=Function start=/\<logit(/ end=/)/ contains=@stataFuncGroup 215 syn region stataFunc matchgroup=Function start=/\<max(/ end=/)/ contains=@stataFuncGroup 216 syn region stataFunc matchgroup=Function start=/\<mod(/ end=/)/ contains=@stataFuncGroup 217 syn region stataFunc matchgroup=Function start=/\<reldif(/ end=/)/ contains=@stataFuncGroup 218 syn region stataFunc matchgroup=Function start=/\<round(/ end=/)/ contains=@stataFuncGroup 219 syn region stataFunc matchgroup=Function start=/\<sign(/ end=/)/ contains=@stataFuncGroup 220 syn region stataFunc matchgroup=Function start=/\<sin(/ end=/)/ contains=@stataFuncGroup 221 syn region stataFunc matchgroup=Function start=/\<sqrt(/ end=/)/ contains=@stataFuncGroup 222 syn region stataFunc matchgroup=Function start=/\<sum(/ end=/)/ contains=@stataFuncGroup 223 syn region stataFunc matchgroup=Function start=/\<tan(/ end=/)/ contains=@stataFuncGroup 224 syn region stataFunc matchgroup=Function start=/\<tanh(/ end=/)/ contains=@stataFuncGroup 225 syn region stataFunc matchgroup=Function start=/\<trigamma(/ end=/)/ contains=@stataFuncGroup 226 syn region stataFunc matchgroup=Function start=/\<trunc(/ end=/)/ contains=@stataFuncGroup 227 " Probability distriubtions and density functions 228 syn region stataFunc matchgroup=Function start=/\<betaden(/ end=/)/ contains=@stataFuncGroup 229 syn region stataFunc matchgroup=Function start=/\<Binomial(/ end=/)/ contains=@stataFuncGroup 230 syn region stataFunc matchgroup=Function start=/\<binorm(/ end=/)/ contains=@stataFuncGroup 231 syn region stataFunc matchgroup=Function start=/\<binormal(/ end=/)/ contains=@stataFuncGroup 232 syn region stataFunc matchgroup=Function start=/\<chi2(/ end=/)/ contains=@stataFuncGroup 233 syn region stataFunc matchgroup=Function start=/\<chi2tail(/ end=/)/ contains=@stataFuncGroup 234 syn region stataFunc matchgroup=Function start=/\<dgammapda(/ end=/)/ contains=@stataFuncGroup 235 syn region stataFunc matchgroup=Function start=/\<dgammapdada(/ end=/)/ contains=@stataFuncGroup 236 syn region stataFunc matchgroup=Function start=/\<dgammapdadx(/ end=/)/ contains=@stataFuncGroup 237 syn region stataFunc matchgroup=Function start=/\<dgammapdx(/ end=/)/ contains=@stataFuncGroup 238 syn region stataFunc matchgroup=Function start=/\<dgammapdxdx(/ end=/)/ contains=@stataFuncGroup 239 syn region stataFunc matchgroup=Function start=/\<F(/ end=/)/ contains=@stataFuncGroup 240 syn region stataFunc matchgroup=Function start=/\<Fden(/ end=/)/ contains=@stataFuncGroup 241 syn region stataFunc matchgroup=Function start=/\<Ftail(/ end=/)/ contains=@stataFuncGroup 242 syn region stataFunc matchgroup=Function start=/\<gammaden(/ end=/)/ contains=@stataFuncGroup 243 syn region stataFunc matchgroup=Function start=/\<gammap(/ end=/)/ contains=@stataFuncGroup 244 syn region stataFunc matchgroup=Function start=/\<ibeta(/ end=/)/ contains=@stataFuncGroup 245 syn region stataFunc matchgroup=Function start=/\<invbinomial(/ end=/)/ contains=@stataFuncGroup 246 syn region stataFunc matchgroup=Function start=/\<invchi2(/ end=/)/ contains=@stataFuncGroup 247 syn region stataFunc matchgroup=Function start=/\<invchi2tail(/ end=/)/ contains=@stataFuncGroup 248 syn region stataFunc matchgroup=Function start=/\<invF(/ end=/)/ contains=@stataFuncGroup 249 syn region stataFunc matchgroup=Function start=/\<invFtail(/ end=/)/ contains=@stataFuncGroup 250 syn region stataFunc matchgroup=Function start=/\<invgammap(/ end=/)/ contains=@stataFuncGroup 251 syn region stataFunc matchgroup=Function start=/\<invibeta(/ end=/)/ contains=@stataFuncGroup 252 syn region stataFunc matchgroup=Function start=/\<invnchi2(/ end=/)/ contains=@stataFuncGroup 253 syn region stataFunc matchgroup=Function start=/\<invFtail(/ end=/)/ contains=@stataFuncGroup 254 syn region stataFunc matchgroup=Function start=/\<invibeta(/ end=/)/ contains=@stataFuncGroup 255 syn region stataFunc matchgroup=Function start=/\<invnorm(/ end=/)/ contains=@stataFuncGroup 256 syn region stataFunc matchgroup=Function start=/\<invnormal(/ end=/)/ contains=@stataFuncGroup 257 syn region stataFunc matchgroup=Function start=/\<invttail(/ end=/)/ contains=@stataFuncGroup 258 syn region stataFunc matchgroup=Function start=/\<lnnormal(/ end=/)/ contains=@stataFuncGroup 259 syn region stataFunc matchgroup=Function start=/\<lnnormalden(/ end=/)/ contains=@stataFuncGroup 260 syn region stataFunc matchgroup=Function start=/\<nbetaden(/ end=/)/ contains=@stataFuncGroup 261 syn region stataFunc matchgroup=Function start=/\<nchi2(/ end=/)/ contains=@stataFuncGroup 262 syn region stataFunc matchgroup=Function start=/\<nFden(/ end=/)/ contains=@stataFuncGroup 263 syn region stataFunc matchgroup=Function start=/\<nFtail(/ end=/)/ contains=@stataFuncGroup 264 syn region stataFunc matchgroup=Function start=/\<nibeta(/ end=/)/ contains=@stataFuncGroup 265 syn region stataFunc matchgroup=Function start=/\<norm(/ end=/)/ contains=@stataFuncGroup 266 syn region stataFunc matchgroup=Function start=/\<normal(/ end=/)/ contains=@stataFuncGroup 267 syn region stataFunc matchgroup=Function start=/\<normalden(/ end=/)/ contains=@stataFuncGroup 268 syn region stataFunc matchgroup=Function start=/\<normden(/ end=/)/ contains=@stataFuncGroup 269 syn region stataFunc matchgroup=Function start=/\<npnchi2(/ end=/)/ contains=@stataFuncGroup 270 syn region stataFunc matchgroup=Function start=/\<tden(/ end=/)/ contains=@stataFuncGroup 271 syn region stataFunc matchgroup=Function start=/\<ttail(/ end=/)/ contains=@stataFuncGroup 272 " Random numbers 273 syn region stataFunc matchgroup=Function start=/\<uniform(/ end=/)/ contains=@stataFuncGroup 274 " String 275 syn region stataFunc matchgroup=Function start=/\<abbrev(/ end=/)/ contains=@stataFuncGroup 276 syn region stataFunc matchgroup=Function start=/\<hchar(/ end=/)/ contains=@stataFuncGroup 277 syn region stataFunc matchgroup=Function start=/\<indexnot(/ end=/)/ contains=@stataFuncGroup 278 syn region stataFunc matchgroup=Function start=/\<itrim(/ end=/)/ contains=@stataFuncGroup 279 syn region stataFunc matchgroup=Function start=/\<length(/ end=/)/ contains=@stataFuncGroup 280 syn region stataFunc matchgroup=Function start=/\<lower(/ end=/)/ contains=@stataFuncGroup 281 syn region stataFunc matchgroup=Function start=/\<ltrim(/ end=/)/ contains=@stataFuncGroup 282 syn region stataFunc matchgroup=Function start=/\<plural(/ end=/)/ contains=@stataFuncGroup 283 syn region stataFunc matchgroup=Function start=/\<proper(/ end=/)/ contains=@stataFuncGroup 284 syn region stataFunc matchgroup=Function start=/\<real(/ end=/)/ contains=@stataFuncGroup 285 syn region stataFunc matchgroup=Function start=/\<regexm(/ end=/)/ contains=@stataFuncGroup 286 syn region stataFunc matchgroup=Function start=/\<regexr(/ end=/)/ contains=@stataFuncGroup 287 syn region stataFunc matchgroup=Function start=/\<regexs(/ end=/)/ contains=@stataFuncGroup 288 syn region stataFunc matchgroup=Function start=/\<reverse(/ end=/)/ contains=@stataFuncGroup 289 syn region stataFunc matchgroup=Function start=/\<rtrim(/ end=/)/ contains=@stataFuncGroup 290 syn region stataFunc matchgroup=Function start=/\<string(/ end=/)/ contains=@stataFuncGroup 291 syn region stataFunc matchgroup=Function start=/\<strlen(/ end=/)/ contains=@stataFuncGroup 292 syn region stataFunc matchgroup=Function start=/\<strmatch(/ end=/)/ contains=@stataFuncGroup 293 syn region stataFunc matchgroup=Function start=/\<strpos(/ end=/)/ contains=@stataFuncGroup 294 syn region stataFunc matchgroup=Function start=/\<subinstr(/ end=/)/ contains=@stataFuncGroup 295 syn region stataFunc matchgroup=Function start=/\<subinword(/ end=/)/ contains=@stataFuncGroup 296 syn region stataFunc matchgroup=Function start=/\<substr(/ end=/)/ contains=@stataFuncGroup 297 syn region stataFunc matchgroup=Function start=/\<trim(/ end=/)/ contains=@stataFuncGroup 298 syn region stataFunc matchgroup=Function start=/\<upper(/ end=/)/ contains=@stataFuncGroup 299 syn region stataFunc matchgroup=Function start=/\<word(/ end=/)/ contains=@stataFuncGroup 300 syn region stataFunc matchgroup=Function start=/\<wordcount(/ end=/)/ contains=@stataFuncGroup 301 " Programming 302 syn region stataFunc matchgroup=Function start=/\<autocode(/ end=/)/ contains=@stataFuncGroup 303 syn region stataFunc matchgroup=Function start=/\<byteorder(/ end=/)/ contains=@stataFuncGroup 304 syn region stataFunc matchgroup=Function start=/\<c(/ end=/)/ contains=@stataFuncGroup 305 syn region stataFunc matchgroup=Function start=/\<_caller(/ end=/)/ contains=@stataFuncGroup 306 syn region stataFunc matchgroup=Function start=/\<chop(/ end=/)/ contains=@stataFuncGroup 307 syn region stataFunc matchgroup=Function start=/\<clip(/ end=/)/ contains=@stataFuncGroup 308 syn region stataFunc matchgroup=Function start=/\<cond(/ end=/)/ contains=@stataFuncGroup 309 syn region stataFunc matchgroup=Function start=/\<e(/ end=/)/ contains=@stataFuncGroup 310 syn region stataFunc matchgroup=Function start=/\<epsdouble(/ end=/)/ contains=@stataFuncGroup 311 syn region stataFunc matchgroup=Function start=/\<epsfloat(/ end=/)/ contains=@stataFuncGroup 312 syn region stataFunc matchgroup=Function start=/\<float(/ end=/)/ contains=@stataFuncGroup 313 syn region stataFunc matchgroup=Function start=/\<has_eprop(/ end=/)/ contains=@stataFuncGroup 314 syn region stataFunc matchgroup=Function start=/\<has_eprop(/ end=/)/ contains=@stataFuncGroup 315 syn region stataFunc matchgroup=Function start=/\<inlist(/ end=/)/ contains=@stataFuncGroup 316 syn region stataFunc matchgroup=Function start=/\<inrange(/ end=/)/ contains=@stataFuncGroup 317 syn region stataFunc matchgroup=Function start=/\<irecode(/ end=/)/ contains=@stataFuncGroup 318 syn region stataFunc matchgroup=Function start=/\<matrix(/ end=/)/ contains=@stataFuncGroup 319 syn region stataFunc matchgroup=Function start=/\<maxbyte(/ end=/)/ contains=@stataFuncGroup 320 syn region stataFunc matchgroup=Function start=/\<maxdouble(/ end=/)/ contains=@stataFuncGroup 321 syn region stataFunc matchgroup=Function start=/\<maxfloat(/ end=/)/ contains=@stataFuncGroup 322 syn region stataFunc matchgroup=Function start=/\<maxint(/ end=/)/ contains=@stataFuncGroup 323 syn region stataFunc matchgroup=Function start=/\<maxlong(/ end=/)/ contains=@stataFuncGroup 324 syn region stataFunc matchgroup=Function start=/\<mi(/ end=/)/ contains=@stataFuncGroup 325 syn region stataFunc matchgroup=Function start=/\<minbyte(/ end=/)/ contains=@stataFuncGroup 326 syn region stataFunc matchgroup=Function start=/\<mindouble(/ end=/)/ contains=@stataFuncGroup 327 syn region stataFunc matchgroup=Function start=/\<minfloat(/ end=/)/ contains=@stataFuncGroup 328 syn region stataFunc matchgroup=Function start=/\<minint(/ end=/)/ contains=@stataFuncGroup 329 syn region stataFunc matchgroup=Function start=/\<minlong(/ end=/)/ contains=@stataFuncGroup 330 syn region stataFunc matchgroup=Function start=/\<missing(/ end=/)/ contains=@stataFuncGroup 331 syn region stataFunc matchgroup=Function start=/\<r(/ end=/)/ contains=@stataFuncGroup 332 syn region stataFunc matchgroup=Function start=/\<recode(/ end=/)/ contains=@stataFuncGroup 333 syn region stataFunc matchgroup=Function start=/\<replay(/ end=/)/ contains=@stataFuncGroup 334 syn region stataFunc matchgroup=Function start=/\<return(/ end=/)/ contains=@stataFuncGroup 335 syn region stataFunc matchgroup=Function start=/\<s(/ end=/)/ contains=@stataFuncGroup 336 syn region stataFunc matchgroup=Function start=/\<scalar(/ end=/)/ contains=@stataFuncGroup 337 " Date 338 syn region stataFunc matchgroup=Function start=/\<d(/ end=/)/ contains=@stataFuncGroup 339 syn region stataFunc matchgroup=Function start=/\<date(/ end=/)/ contains=@stataFuncGroup 340 syn region stataFunc matchgroup=Function start=/\<day(/ end=/)/ contains=@stataFuncGroup 341 syn region stataFunc matchgroup=Function start=/\<dow(/ end=/)/ contains=@stataFuncGroup 342 syn region stataFunc matchgroup=Function start=/\<doy(/ end=/)/ contains=@stataFuncGroup 343 syn region stataFunc matchgroup=Function start=/\<halfyear(/ end=/)/ contains=@stataFuncGroup 344 syn region stataFunc matchgroup=Function start=/\<mdy(/ end=/)/ contains=@stataFuncGroup 345 syn region stataFunc matchgroup=Function start=/\<month(/ end=/)/ contains=@stataFuncGroup 346 syn region stataFunc matchgroup=Function start=/\<quarter(/ end=/)/ contains=@stataFuncGroup 347 syn region stataFunc matchgroup=Function start=/\<week(/ end=/)/ contains=@stataFuncGroup 348 syn region stataFunc matchgroup=Function start=/\<year(/ end=/)/ contains=@stataFuncGroup 349 " Time-series 350 syn region stataFunc matchgroup=Function start=/\<daily(/ end=/)/ contains=@stataFuncGroup 351 syn region stataFunc matchgroup=Function start=/\<halfyearly(/ end=/)/ contains=@stataFuncGroup 352 syn region stataFunc matchgroup=Function start=/\<monthly(/ end=/)/ contains=@stataFuncGroup 353 syn region stataFunc matchgroup=Function start=/\<quarterly(/ end=/)/ contains=@stataFuncGroup 354 syn region stataFunc matchgroup=Function start=/\<weekly(/ end=/)/ contains=@stataFuncGroup 355 syn region stataFunc matchgroup=Function start=/\<yearly(/ end=/)/ contains=@stataFuncGroup 356 " 357 syn region stataFunc matchgroup=Function start=/\<yh(/ end=/)/ contains=@stataFuncGroup 358 syn region stataFunc matchgroup=Function start=/\<ym(/ end=/)/ contains=@stataFuncGroup 359 syn region stataFunc matchgroup=Function start=/\<yq(/ end=/)/ contains=@stataFuncGroup 360 syn region stataFunc matchgroup=Function start=/\<yw(/ end=/)/ contains=@stataFuncGroup 361 " 362 syn region stataFunc matchgroup=Function start=/\<d(/ end=/)/ contains=@stataFuncGroup 363 syn region stataFunc matchgroup=Function start=/\<h(/ end=/)/ contains=@stataFuncGroup 364 syn region stataFunc matchgroup=Function start=/\<m(/ end=/)/ contains=@stataFuncGroup 365 syn region stataFunc matchgroup=Function start=/\<q(/ end=/)/ contains=@stataFuncGroup 366 syn region stataFunc matchgroup=Function start=/\<w(/ end=/)/ contains=@stataFuncGroup 367 syn region stataFunc matchgroup=Function start=/\<y(/ end=/)/ contains=@stataFuncGroup 368 " 369 syn region stataFunc matchgroup=Function start=/\<dofd(/ end=/)/ contains=@stataFuncGroup 370 syn region stataFunc matchgroup=Function start=/\<dofh(/ end=/)/ contains=@stataFuncGroup 371 syn region stataFunc matchgroup=Function start=/\<dofm(/ end=/)/ contains=@stataFuncGroup 372 syn region stataFunc matchgroup=Function start=/\<dofq(/ end=/)/ contains=@stataFuncGroup 373 syn region stataFunc matchgroup=Function start=/\<dofw(/ end=/)/ contains=@stataFuncGroup 374 syn region stataFunc matchgroup=Function start=/\<dofy(/ end=/)/ contains=@stataFuncGroup 375 syn region stataFunc matchgroup=Function start=/\<hofd(/ end=/)/ contains=@stataFuncGroup 376 syn region stataFunc matchgroup=Function start=/\<mofd(/ end=/)/ contains=@stataFuncGroup 377 syn region stataFunc matchgroup=Function start=/\<qofd(/ end=/)/ contains=@stataFuncGroup 378 syn region stataFunc matchgroup=Function start=/\<wofd(/ end=/)/ contains=@stataFuncGroup 379 syn region stataFunc matchgroup=Function start=/\<yofd(/ end=/)/ contains=@stataFuncGroup 380 " 381 syn region stataFunc matchgroup=Function start=/\<tin(/ end=/)/ contains=@stataFuncGroup 382 syn region stataFunc matchgroup=Function start=/\<twithin(/ end=/)/ contains=@stataFuncGroup 383 " Matrix 384 syn region stataFunc matchgroup=Function start=/\<colnumb(/ end=/)/ contains=@stataFuncGroup 385 syn region stataFunc matchgroup=Function start=/\<colsof(/ end=/)/ contains=@stataFuncGroup 386 syn region stataFunc matchgroup=Function start=/\<det(/ end=/)/ contains=@stataFuncGroup 387 syn region stataFunc matchgroup=Function start=/\<diag0cnt(/ end=/)/ contains=@stataFuncGroup 388 syn region stataFunc matchgroup=Function start=/\<el(/ end=/)/ contains=@stataFuncGroup 389 syn region stataFunc matchgroup=Function start=/\<issymmetric(/ end=/)/ contains=@stataFuncGroup 390 syn region stataFunc matchgroup=Function start=/\<matmissing(/ end=/)/ contains=@stataFuncGroup 391 syn region stataFunc matchgroup=Function start=/\<mreldif(/ end=/)/ contains=@stataFuncGroup 392 syn region stataFunc matchgroup=Function start=/\<rownumb(/ end=/)/ contains=@stataFuncGroup 393 syn region stataFunc matchgroup=Function start=/\<rowsof(/ end=/)/ contains=@stataFuncGroup 394 syn region stataFunc matchgroup=Function start=/\<trace(/ end=/)/ contains=@stataFuncGroup 395 " 396 syn region stataFunc matchgroup=Function start=/\<cholsky(/ end=/)/ contains=@stataFuncGroup 397 syn region stataFunc matchgroup=Function start=/\<corr(/ end=/)/ contains=@stataFuncGroup 398 syn region stataFunc matchgroup=Function start=/\<diag(/ end=/)/ contains=@stataFuncGroup 399 syn region stataFunc matchgroup=Function start=/\<get(/ end=/)/ contains=@stataFuncGroup 400 syn region stataFunc matchgroup=Function start=/\<hadamard(/ end=/)/ contains=@stataFuncGroup 401 syn region stataFunc matchgroup=Function start=/\<I(/ end=/)/ contains=@stataFuncGroup 402 syn region stataFunc matchgroup=Function start=/\<inv(/ end=/)/ contains=@stataFuncGroup 403 syn region stataFunc matchgroup=Function start=/\<invsym(/ end=/)/ contains=@stataFuncGroup 404 syn region stataFunc matchgroup=Function start=/\<J(/ end=/)/ contains=@stataFuncGroup 405 syn region stataFunc matchgroup=Function start=/\<matuniform(/ end=/)/ contains=@stataFuncGroup 406 syn region stataFunc matchgroup=Function start=/\<nullmat(/ end=/)/ contains=@stataFuncGroup 407 syn region stataFunc matchgroup=Function start=/\<sweep(/ end=/)/ contains=@stataFuncGroup 408 syn region stataFunc matchgroup=Function start=/\<vec(/ end=/)/ contains=@stataFuncGroup 409 syn region stataFunc matchgroup=Function start=/\<vecdiag(/ end=/)/ contains=@stataFuncGroup 410 411 " Errors to catch 412 " taken from $VIMRUNTIME/syntax/c.vim 413 " catch errors caused by wrong parenthesis, braces and brackets 414 syn region stataParen transparent start=/(/ end=/)/ contains=ALLBUT,@stataParenGroup,stataErrInBracket,stataErrInBrace 415 syn region stataBracket transparent start=/\[/ end=/]/ contains=ALLBUT,@stataParenGroup,stataErrInParen,stataErrInBrace 416 syn region stataBrace transparent start=/{/ end=/}/ contains=ALLBUT,@stataParenGroup,stataErrInParen,stataErrInBracket 417 syn match stataParenError /[\])}]/ 418 syn match stataBracketError /]/ 419 syn match stataBraceError /}/ 420 syn match stataErrInParen contained /[\]}]/ 421 syn match stataErrInBracket contained /[)}]/ 422 syn match stataErrInBrace contained /[)\]]/ 423 424 " assign highlight groups 425 hi def link stataBraceError stataError 426 hi def link stataBracketError stataError 427 hi def link stataErrInBrace stataError 428 hi def link stataErrInBracket stataError 429 hi def link stataErrInParen stataError 430 hi def link stataEString stataString 431 hi def link stataFormat stataSpecial 432 hi def link stataGlobal stataMacro 433 hi def link stataLocal stataMacro 434 hi def link stataParenError stataError 435 hi def link stataSlashComment stataComment 436 hi def link stataStarComment stataComment 437 438 hi def link stataCommand Define 439 hi def link stataComment Comment 440 hi def link stataConditional Conditional 441 hi def link stataError Error 442 hi def link stataFunc None 443 hi def link stataMacro Define 444 hi def link stataRepeat Repeat 445 hi def link stataSpecial SpecialChar 446 hi def link stataString String 447 448 let b:current_syntax = "stata" 449 450 " vim: ts=8