home *** CD-ROM | disk | FTP | other *** search
/ vim.ftp.fu-berlin.de / 2015-02-03.vim.ftp.fu-berlin.de.tar / vim.ftp.fu-berlin.de / mac / vim54rt.sit / runtime / syntax / sicad.vim < prev    next >
Encoding:
Text File  |  1999-08-14  |  14.2 KB  |  324 lines  |  [TEXT/ALFA]

  1. " Vim syntax file
  2. " Language:    SiCAD (procedure language)
  3. " Maintainer:    Zsolt Branyiczky <zbranyiczky@lmark.mgx.hu>
  4. " Last change:    1999 Jun 14
  5.  
  6. " remove any old syntax stuff hanging around
  7. syn clear
  8.  
  9. " ignore case
  10. syn case ignore
  11.  
  12. " spaces are used in (auto)indents
  13. set expandtab
  14.  
  15. set shiftwidth=1
  16.  
  17. " most important commands
  18. syn keyword sicadStatement    define
  19. syn keyword sicadStatement    dialog
  20. syn keyword sicadStatement    do
  21. syn keyword sicadStatement    dop
  22. syn keyword sicadStatement    end
  23. syn keyword sicadStatement    enddo
  24. syn keyword sicadStatement    endp
  25. syn keyword sicadStatement    erroff
  26. syn keyword sicadStatement    erron
  27. syn keyword sicadStatement    exitp
  28. syn keyword sicadGoto        goto contained
  29. syn keyword sicadStatement    hh
  30. syn keyword sicadStatement    if
  31. syn keyword sicadStatement    in
  32. syn keyword sicadStatement    msgsup
  33. syn keyword sicadStatement    out
  34. syn keyword sicadStatement    padd
  35. syn keyword sicadStatement    parbeg
  36. syn keyword sicadStatement    parend
  37. syn keyword sicadStatement    pdoc
  38. syn keyword sicadStatement    pprot
  39. syn keyword sicadStatement    procd
  40. syn keyword sicadStatement    procn
  41. syn keyword sicadStatement    psav
  42. syn keyword sicadStatement    psel
  43. syn keyword sicadStatement    psymb
  44. syn keyword sicadStatement    ptrace
  45. syn keyword sicadStatement    ptstat
  46. syn keyword sicadStatement    set
  47. syn keyword sicadStatement    step
  48. syn keyword sicadStatement    ww
  49.  
  50. " functions
  51. syn match sicadStatement    "\<atan("me=e-1
  52. syn match sicadStatement    "\<atan2("me=e-1
  53. syn match sicadStatement    "\<cos("me=e-1
  54. syn match sicadStatement    "\<dist("me=e-1
  55. syn match sicadStatement    "\<exp("me=e-1
  56. syn match sicadStatement    "\<log("me=e-1
  57. syn match sicadStatement    "\<log10("me=e-1
  58. syn match sicadStatement    "\<sin("me=e-1
  59. syn match sicadStatement    "\<sqrt("me=e-1
  60. syn match sicadStatement    "\<tanh("me=e-1
  61. syn match sicadStatement    "\<x("me=e-1
  62. syn match sicadStatement    "\<y("me=e-1
  63.  
  64. " other keywords
  65. syn match sicadOperator    "\.and\."
  66. syn match sicadOperator    "\.ne\."
  67. syn match sicadOperator    "\.not\."
  68. syn match sicadOperator    "\.eq\."
  69. syn match sicadOperator    "\.ge\."
  70. syn match sicadOperator    "\.gt\."
  71. syn match sicadOperator    "\.le\."
  72. syn match sicadOperator    "\.lt\."
  73. syn match sicadOperator    "\.or\."
  74.  
  75. " catch error caused by tabulator key
  76. syn match sicadError        "    "
  77.  
  78. " variable name
  79. syn match sicadIdentifier    "%g\=[irpt][0-9]\{1,2}\>"
  80. syn match sicadIdentifier    "%g\=l[0-9]\>"   " separated logical varible
  81. syn match sicadIdentifier    "%g\=[irptl]("me=e-1
  82. syn match sicadIdentifier    "%error\>"
  83. syn match sicadIdentifier    "%nsel\>"
  84. syn match sicadIdentifier    "%nvar\>"
  85. syn match sicadIdentifier    "%scl\>"
  86. syn match sicadIdentifier    "%wd\>"
  87.  
  88. " label
  89. syn match sicadLabel1    "^ *\.[a-z][a-z0-9]\{0,7} \+[^ ]"me=e-1
  90. syn match sicadLabel2    "\<goto \.\=[a-z][a-z0-9]\{0,7}\>" contains=sicadGoto
  91.  
  92. " boolean
  93. syn match sicadBoolean    "\.f\."
  94. syn match sicadBoolean    "\.t\."
  95. " integer without sign
  96. syn match sicadNumber    "\<[0-9]\+\>"
  97. " floating point number, with dot, optional exponent
  98. syn match sicadFloat    "\<[0-9]\+\.[0-9]*\(e[-+]\=[0-9]\+\)\=\>"
  99. " floating point number, starting with a dot, optional exponent
  100. syn match sicadFloat    "\.[0-9]\+\(e[-+]\=[0-9]\+\)\=\>"
  101. " floating point number, without dot, with exponent
  102. syn match sicadFloat    "\<[0-9]\+e[-+]\=[0-9]\+\>"
  103.  
  104. " comments
  105. syn region sicadComment    start="^ *\*" end=";"me=e-1 end="$" contains=sicadString_
  106. syn region sicadComment start="^ *\.[a-z][a-z0-9]\{0,7} \+\*" end=";"me=e-1 end="$" contains=sicadLabel1,sicadString_  " just here the odd number of apostrophes are disallowed - it is not realized yet
  107. syn region sicadComment start="; *\*"ms=s+1 end=";"me=e-1 end="$" contains=sicadString_
  108. " comment between docbeg and docend
  109. syn region sicadComment    matchgroup=sicadStatement start="\<docbeg\>" end="\<docend\>"
  110.  
  111. " catch \ at the end of line
  112. syn match sicadStatement "\\ *$"
  113.  
  114. " catch errors caused by wrong parenthesis
  115. syn region sicadParen transparent start='(' end=')' contains=ALLBUT,sicadParenError
  116. syn match sicadParenError ")"
  117.  
  118. " string in comment is transparent - use contains=sicadString_ in sicadComment regions
  119. syn region sicadString_ transparent start=+'+ end=+'+ oneline contained
  120. " string
  121. syn region sicadString start=+'+ end=+'+ oneline
  122.  
  123. " synchronizing
  124. syn sync match sicadSyncComment groupthere NONE "\<docend\>"
  125. syn sync match sicadSyncComment grouphere sicadComment "\<docbeg\>"
  126. "syn sync match sicadSyncParen groupthere NONE ')'
  127. "syn sync match sicadSyncParen grouphere sicadParen '('
  128. " next line must be examined too
  129. syn sync linecont "\\ *$"
  130.  
  131. " other keywords
  132. syn keyword sicadStatement    abst add adrin aib aibzsn
  133. syn keyword sicadStatement    aidump aifgeo aisbrk alknam alknr
  134. syn keyword sicadStatement    alksav alksel alktrc alopen ansbo
  135. syn keyword sicadStatement    aractiv ararea arareao arbuffer archeck
  136. syn keyword sicadStatement    arcomv arcont arconv arcopy arcopyo
  137. syn keyword sicadStatement    arcorr arcreate arerror areval arflfm
  138. syn keyword sicadStatement    arflop arfrast argbkey argenf argraph
  139. syn keyword sicadStatement    argrapho arinters arkompfl arlisly arnext
  140. syn keyword sicadStatement    aroverl arovers arpars arrefp arselect
  141. syn keyword sicadStatement    arset arstruct arunify arupdate arvector
  142. syn keyword sicadStatement    arveinfl arvflfl arvoroni ausku basis
  143. syn keyword sicadStatement    basisaus basisdar basisnr bebos befl
  144. syn keyword sicadStatement    befli befls beo beorta beortn
  145. syn keyword sicadStatement    bep bepan bepap bepola bepoln
  146. syn keyword sicadStatement    bepsn bepsp ber berili berk
  147. syn keyword sicadStatement    bewz bkl bli bma bmakt
  148. syn keyword sicadStatement    bmbm bmerk bmerw bminit bmk
  149. syn keyword sicadStatement    bmorth bmos bmpar bmsl bmsum
  150. syn keyword sicadStatement    bmver bmvero bmw bo bta
  151. syn keyword sicadStatement    buffer bvl bw bza bzap
  152. syn keyword sicadStatement    bzd bzgera bzorth cat catel
  153. syn keyword sicadStatement    cdbdiff ce close comp conclose
  154. syn keyword sicadStatement    coninfo conopen conread contour conwrite
  155. syn keyword sicadStatement    cop copel cr cs cstat
  156. syn keyword sicadStatement    cursor d da dal dasp
  157. syn keyword sicadStatement    dasps dataout dcol dd defsr
  158. syn keyword sicadStatement    del delel deskrdef df dfn
  159. syn keyword sicadStatement    dfns dfpos dfr dgd dgm
  160. syn keyword sicadStatement    dgp dgr dh diaus dir
  161. syn keyword sicadStatement    disbsd dkl dktx dkur dlgfix
  162. syn keyword sicadStatement    dlgfre dma dprio dr druse
  163. syn keyword sicadStatement    dsel dskinfo dsr dv dve
  164. syn keyword sicadStatement    eba ebd ebs edbsdbin edbssnin
  165. syn keyword sicadStatement    edbsvtin edt egaus egdef egdefs
  166. syn keyword sicadStatement    eglist egloe egloenp egloes egxx
  167. syn keyword sicadStatement    eib ekur ekuradd elpos epg
  168. syn keyword sicadStatement    esau esauadd esek eta etap
  169. syn keyword sicadStatement    feparam ficonv filse fl fli
  170. syn keyword sicadStatement    flinit flkor fln flnli flop
  171. syn keyword sicadStatement    flowert flparam flraster flsy flsyd
  172. syn keyword sicadStatement    flsym flsyms flsymt fmtatt fmtdia
  173. syn keyword sicadStatement    fmtlib fpg gbadddb gbanrs gbatw
  174. syn keyword sicadStatement    gbau gbaudit gbclosp gbcreem gbcreld
  175. syn keyword sicadStatement    gbcresdb gbcretd gbde gbdeldb gbdelem
  176. syn keyword sicadStatement    gbdelld gbdeltd gbdisdb gbdisem gbdisld
  177. syn keyword sicadStatement    gbdistd gbebn gbemau gbepsv gbgetdet
  178. syn keyword sicadStatement    gbgetmas gbgqel gbgqelr gbgqsa gbgrant
  179. syn keyword sicadStatement    gbler gblerb gblerf gbles gblocdic
  180. syn keyword sicadStatement    gbmgmg gbmntdb gbmoddb gbnam gbneu
  181. syn keyword sicadStatement    gbopenp gbpoly gbpos gbpruef gbps
  182. syn keyword sicadStatement    gbqgel gbqgsa gbreldic gbresem gbrevoke
  183. syn keyword sicadStatement    gbsav gbsbef gbsddk gbsicu gbsrt
  184. syn keyword sicadStatement    gbss gbstat gbsysp gbszau gbubp
  185. syn keyword sicadStatement    gbueb gbunmdb gbuseem gbw gbweg
  186. syn keyword sicadStatement    gbwieh gbzt gelp gera hgw
  187. syn keyword sicadStatement    hpg hr0 hra hrar inchk
  188. syn keyword sicadStatement    inf infd inst kbml kbmm
  189. syn keyword sicadStatement    kbmt khboe khbol khdob khe
  190. syn keyword sicadStatement    khetap khfrw khlang khld khmfrp
  191. syn keyword sicadStatement    khmks khpd khpfeil khpl khprofil
  192. syn keyword sicadStatement    khsa khsabs khse khskbz khsna
  193. syn keyword sicadStatement    khsnum khsob khspos khzpe khzpl
  194. syn keyword sicadStatement    kib kldat klleg klsch klsym
  195. syn keyword sicadStatement    klvert kmpg kmtlage kmtp kodef
  196. syn keyword sicadStatement    kodefp kok kokp kolae kom
  197. syn keyword sicadStatement    kopar koparp kopg kosy kp
  198. syn keyword sicadStatement    kr krsek krtclose krtopen ktk
  199. syn keyword sicadStatement    lad lae laesel language lasso
  200. syn keyword sicadStatement    lbdes lcs ldesk ldesks le
  201. syn keyword sicadStatement    leak leattdes leba lebas lebaznp
  202. syn keyword sicadStatement    lebd lebm lebv lebvaus lebvlist
  203. syn keyword sicadStatement    lede ledel ledepo ledepol ledepos
  204. syn keyword sicadStatement    leder ledm lee leeins lees
  205. syn keyword sicadStatement    lege lekr lekrend lekwa lekwas
  206. syn keyword sicadStatement    lel lelh lell lelp lem
  207. syn keyword sicadStatement    lena lend lenm lep lepe
  208. syn keyword sicadStatement    lepee lepko lepl lepmko lepmkop
  209. syn keyword sicadStatement    lepos leqs leqsl leqssp leqsv
  210. syn keyword sicadStatement    leqsvov les lesch lesr less
  211. syn keyword sicadStatement    lestd let letaum letl lev
  212. syn keyword sicadStatement    levtm levtp levtr lew lewm
  213. syn keyword sicadStatement    lexx lfs li lldes lmode
  214. syn keyword sicadStatement    loedk loepkt lop lose lp
  215. syn keyword sicadStatement    lppg lppruef lr ls lsop
  216. syn keyword sicadStatement    lsta lstat ly lyaus lz
  217. syn keyword sicadStatement    lza lzae lzbz lze lznr
  218. syn keyword sicadStatement    lzo lzpos ma ma0 ma1
  219. syn keyword sicadStatement    mad map mapoly mcarp mccfr
  220. syn keyword sicadStatement    mccgr mcclr mccrf mcdf mcdma
  221. syn keyword sicadStatement    mcdr mcdrp mcdve mcebd mcgse
  222. syn keyword sicadStatement    mcinfo mcldrp md me mefd
  223. syn keyword sicadStatement    mefds minmax mipg ml mmdbf
  224. syn keyword sicadStatement    mmdellb mmfsb mminfolb mmlapp mmlbf
  225. syn keyword sicadStatement    mmlistlb mmreadlb mmsetlb mnp mpo
  226. syn keyword sicadStatement    mr mra ms msav msgout
  227. syn keyword sicadStatement    msgsnd msp mspf mtd nasel
  228. syn keyword sicadStatement    ncomp new nlist nlistlt nlistly
  229. syn keyword sicadStatement    nlistnp nlistpo np npa npdes
  230. syn keyword sicadStatement    npe npem npinfa npruef npsat
  231. syn keyword sicadStatement    npss npssa ntz oa oan
  232. syn keyword sicadStatement    odel odf odfx oj oja
  233. syn keyword sicadStatement    ojaddsk ojaef ojaefs ojaen ojak
  234. syn keyword sicadStatement    ojaks ojakt ojakz ojalm ojatkis
  235. syn keyword sicadStatement    ojatt ojbsel ojckon ojde ojdtl
  236. syn keyword sicadStatement    ojeb ojebd ojel ojesb ojesbd
  237. syn keyword sicadStatement    ojex ojezge ojko ojlb ojloe
  238. syn keyword sicadStatement    ojlsb ojmos ojnam ojpda ojpoly
  239. syn keyword sicadStatement    ojprae ojs ojsak ojsort ojstrukt
  240. syn keyword sicadStatement    ojsub ojtdef ojx old op
  241. syn keyword sicadStatement    opa opa1 open opnbsd orth
  242. syn keyword sicadStatement    osanz ot otp otrefp paranf
  243. syn keyword sicadStatement    pas passw pda pg pg0
  244. syn keyword sicadStatement    pgauf pgaufsel pgb pgko pgm
  245. syn keyword sicadStatement    pgr pgvs pily pkpg plot
  246. syn keyword sicadStatement    plotf plotfr pnrver poa pos
  247. syn keyword sicadStatement    posa posaus post protect prs
  248. syn keyword sicadStatement    prsym ps psadd psclose psopen
  249. syn keyword sicadStatement    psparam psprw psres psstat psw
  250. syn keyword sicadStatement    pswr qualif rahmen raster rasterd
  251. syn keyword sicadStatement    rbbackup rbchange rbcmd rbcopy rbcut
  252. syn keyword sicadStatement    rbdbcl rbdbload rbdbop rbdbwin rbdefs
  253. syn keyword sicadStatement    rbedit rbfill rbfload rbfree rbg
  254. syn keyword sicadStatement    rbinfo rbpaste rbrstore rbsnap rbsta
  255. syn keyword sicadStatement    rbvtor rcol re reb refunc
  256. syn keyword sicadStatement    ren renel rk rkpos rohr
  257. syn keyword sicadStatement    rohrpos rpr rr rr0 rra
  258. syn keyword sicadStatement    rrar rs samtosdb sav savx
  259. syn keyword sicadStatement    scol scopy scopye sddk sdwr
  260. syn keyword sicadStatement    se selaus selpos seman semi
  261. syn keyword sicadStatement    sesch setscl sge sid sie
  262. syn keyword sicadStatement    sig sigp skk skks sn
  263. syn keyword sicadStatement    sn21 snpa snpar snpd snpi
  264. syn keyword sicadStatement    snpkor snpl snpm sof sop
  265. syn keyword sicadStatement    split spr sqdadd sqdlad sqdold
  266. syn keyword sicadStatement    sqdsav sql sr sres srt
  267. syn keyword sicadStatement    sset stat stdtxt string strukt
  268. syn keyword sicadStatement    strupru suinfl suinfls supo supo1
  269. syn keyword sicadStatement    sva svr sy sya syly
  270. syn keyword sicadStatement    sys sysout syu syux taa
  271. syn keyword sicadStatement    tabeg tabl tabm tam tanr
  272. syn keyword sicadStatement    tapg tapos tarkd tas tase
  273. syn keyword sicadStatement    tb tbadd tbd tbext tbget
  274. syn keyword sicadStatement    tbint tbout tbput tbsat tbsel
  275. syn keyword sicadStatement    tbstr tcaux tccable tcchkrep tccond
  276. syn keyword sicadStatement    tcinit tcmodel tcnwe tcpairs tcpath
  277. syn keyword sicadStatement    tcscheme tcse tcselc tcstar tcstrman
  278. syn keyword sicadStatement    tcsymbol tctable tctest tcthrcab tctrans
  279. syn keyword sicadStatement    tctst tdb tdbdel tdbget tdblist
  280. syn keyword sicadStatement    tdbput tgmod titel tmoff tmon
  281. syn keyword sicadStatement    tp tpa tps tpta tra
  282. syn keyword sicadStatement    trans transkdo transopt transpro trm
  283. syn keyword sicadStatement    trpg trrkd trs ts tsa
  284. syn keyword sicadStatement    tx txa txchk txcng txju
  285. syn keyword sicadStatement    txl txp txtcmp txz uiinfo
  286. syn keyword sicadStatement    uistatus umdk umdk1 umdka umge
  287. syn keyword sicadStatement    umr verbo verflli verif verly
  288. syn keyword sicadStatement    versinfo vfg wabsym wzmerk zdrhf
  289. syn keyword sicadStatement    zdrhfn zdrhfw zdrhfwn zefp zfl
  290. syn keyword sicadStatement    zflaus zka zlel zlels zortf
  291. syn keyword sicadStatement    zortfn zortfw zortfwn zortp zortpn
  292. syn keyword sicadStatement    zparb zparbn zparf zparfn zparfw
  293. syn keyword sicadStatement    zparfwn zparp zparpn zwinkp zwinkpn
  294.  
  295. "syn match sicadParameter " [a-z][a-z0-9]*[=:]"me=e-1
  296.  
  297. "if !exists("did_sicad_syntax_inits")
  298.   let did_sicad_syntax_inits = 1
  299.   hi link sicadLabel1        sicadLabel
  300.   hi link sicadLabel2        sicadLabel
  301.   hi link sicadLabel        PreProc
  302.   hi link sicadConditional    Conditional
  303.   hi link sicadBoolean        Boolean
  304.   hi link sicadNumber        Number
  305.   hi link sicadFloat        Float
  306.   hi link sicadOperator        Operator
  307.   hi link sicadStatement    Statement
  308.   hi link sicadParameter    sicadStatement
  309.   hi link sicadGoto        sicadStatement
  310.   hi link sicadString        String
  311.   hi link sicadComment        Comment
  312.   hi link sicadSpecial        Special
  313.   hi link sicadIdentifier    Type
  314.   "hi link sicadIdentifier    Identifier
  315.   hi link sicadError        Error
  316.   hi link sicadParenError    sicadError
  317.   hi link sicadStringError    sicadError
  318.   hi link sicadCommentError    sicadError
  319. "endif
  320.  
  321. let b:current_syntax = "sicad"
  322.  
  323. " vim: ts=8
  324.