625
|
1 " Vim syntax file
|
856
|
2 " Language: gretl (http://gretl.sf.net)
|
625
|
3 " Maintainer: Vaidotas Zemlys <zemlys@gmail.com>
|
856
|
4 " Last Change: 2006 Apr 30
|
625
|
5 " Filenames: *.inp *.gretl
|
856
|
6 " URL: http://uosis.mif.vu.lt/~zemlys/vim-syntax/gretl.vim
|
625
|
7 " For version 5.x: Clear all syntax items
|
|
8 " For version 6.x: Quit when a syntax file was already loaded
|
|
9
|
|
10 if version < 600
|
|
11 syntax clear
|
|
12 elseif exists("b:current_syntax")
|
|
13 finish
|
|
14 endif
|
|
15
|
|
16 if version >= 600
|
|
17 setlocal iskeyword=@,48-57,_,.
|
|
18 else
|
|
19 set iskeyword=@,48-57,_,.
|
|
20 endif
|
|
21
|
|
22 syn case match
|
|
23
|
|
24 " Constant
|
|
25 " string enclosed in double quotes
|
|
26 syn region gString start=/"/ skip=/\\\\\|\\"/ end=/"/
|
|
27 " number with no fractional part or exponent
|
|
28 syn match gNumber /\d\+/
|
|
29 " floating point number with integer and fractional parts and optional exponent
|
|
30 syn match gFloat /\d\+\.\d*\([Ee][-+]\=\d\+\)\=/
|
|
31 " floating point number with no integer part and optional exponent
|
|
32 syn match gFloat /\.\d\+\([Ee][-+]\=\d\+\)\=/
|
|
33 " floating point number with no fractional part and optional exponent
|
|
34 syn match gFloat /\d\+[Ee][-+]\=\d\+/
|
|
35
|
|
36 " Gretl commands
|
|
37 syn keyword gCommands add addobs addto adf append ar arch arma break boxplot chow coeffsum coint coint2 corc corr corrgm criteria critical cusum data delete diff else end endif endloop eqnprint equation estimate fcast fcasterr fit freq function funcerr garch genr gnuplot graph hausman hccm help hilu hsk hurst if import include info kpss label labels lad lags ldiff leverage lmtest logistic logit logs loop mahal meantest mle modeltab mpols multiply nls nulldata ols omit omitfrom open outfile panel pca pergm plot poisson pooled print printf probit pvalue pwe quit remember rename reset restrict rhodiff rmplot run runs scatters sdiff set setobs setmiss shell sim smpl spearman square store summary system tabprint testuhat tobit transpos tsls var varlist vartest vecm vif wls
|
|
38
|
|
39 "Gretl genr functions
|
|
40 syn keyword gGenrFunc log exp sin cos tan atan diff ldiff sdiff mean sd min max sort int ln coeff abs rho sqrt sum nobs firstobs lastobs normal uniform stderr cum missing ok misszero corr vcv var sst cov median zeromiss pvalue critical obsnum mpow dnorm cnorm gamma lngamma resample hpfilt bkfilt fracdiff varnum isvector islist nelem
|
|
41
|
|
42 " Identifier
|
|
43 " identifier with leading letter and optional following keyword characters
|
|
44 syn match gIdentifier /\a\k*/
|
|
45
|
|
46 " Variable with leading $
|
|
47 syn match gVariable /\$\k*/
|
|
48 " Arrow
|
|
49 syn match gArrow /<-/
|
|
50
|
|
51 " Special
|
|
52 syn match gDelimiter /[,;:]/
|
|
53
|
|
54 " Error
|
|
55 syn region gRegion matchgroup=Delimiter start=/(/ matchgroup=Delimiter end=/)/ transparent contains=ALLBUT,rError,rBraceError,rCurlyError,gBCstart,gBCend
|
|
56 syn region gRegion matchgroup=Delimiter start=/{/ matchgroup=Delimiter end=/}/ transparent contains=ALLBUT,rError,rBraceError,rParenError
|
|
57 syn region gRegion matchgroup=Delimiter start=/\[/ matchgroup=Delimiter end=/]/ transparent contains=ALLBUT,rError,rCurlyError,rParenError
|
|
58 syn match gError /[)\]}]/
|
|
59 syn match gBraceError /[)}]/ contained
|
|
60 syn match gCurlyError /[)\]]/ contained
|
|
61 syn match gParenError /[\]}]/ contained
|
|
62
|
|
63 " Comment
|
|
64 syn match gComment /#.*/
|
|
65 syn match gBCstart /(\*/
|
|
66 syn match gBCend /\*)/
|
|
67
|
|
68 syn region gBlockComment matchgroup=gCommentStart start="(\*" end="\*)"
|
|
69
|
|
70 " Define the default highlighting.
|
|
71 " For version 5.7 and earlier: only when not done already
|
|
72 " For version 5.8 and later: only when an item doesn't have highlighting yet
|
|
73 if version >= 508 || !exists("did_r_syn_inits")
|
|
74 if version < 508
|
|
75 let did_r_syn_inits = 1
|
|
76 command -nargs=+ HiLink hi link <args>
|
|
77 else
|
|
78 command -nargs=+ HiLink hi def link <args>
|
|
79 endif
|
|
80 HiLink gComment Comment
|
|
81 HiLink gCommentStart Comment
|
|
82 HiLink gBlockComment Comment
|
|
83 HiLink gString String
|
|
84 HiLink gNumber Number
|
|
85 HiLink gBoolean Boolean
|
|
86 HiLink gFloat Float
|
|
87 HiLink gCommands Repeat
|
|
88 HiLink gGenrFunc Type
|
|
89 HiLink gDelimiter Delimiter
|
|
90 HiLink gError Error
|
|
91 HiLink gBraceError Error
|
|
92 HiLink gCurlyError Error
|
|
93 HiLink gParenError Error
|
|
94 HiLink gIdentifier Normal
|
|
95 HiLink gVariable Identifier
|
|
96 HiLink gArrow Repeat
|
|
97 delcommand HiLink
|
|
98 endif
|
|
99
|
|
100 let b:current_syntax="gretl"
|
|
101
|
|
102 " vim: ts=8 sw=2
|