2 " Language: SNNS pattern file
3 " Maintainer: Davide Alberani <alberanid@bigfoot.com>
4 " Last Change: 28 Apr 2001
6 " URL: http://digilander.iol.it/alberanid/vim/syntax/snnspat.vim
8 " SNNS http://www-ra.informatik.uni-tuebingen.de/SNNS/
9 " is a simulator for neural networks.
13 elseif exists("b:current_syntax")
18 " anything that isn't part of the header, a comment or a number
20 syn match snnspatError ".*"
21 " hoping that matches any kind of notation...
22 syn match snnspatAccepted "\([-+]\=\(\d\+\.\|\.\)\=\d\+\([Ee][-+]\=\d\+\)\=\)"
23 syn match snnspatAccepted "\s"
24 syn match snnspatBrac "\[\s*\d\+\(\s\|\d\)*\]" contains=snnspatNumbers
26 " the accepted fields in the header
27 syn match snnspatNoHeader "No\. of patterns\s*:\s*" contained
28 syn match snnspatNoHeader "No\. of input units\s*:\s*" contained
29 syn match snnspatNoHeader "No\. of output units\s*:\s*" contained
30 syn match snnspatNoHeader "No\. of variable input dimensions\s*:\s*" contained
31 syn match snnspatNoHeader "No\. of variable output dimensions\s*:\s*" contained
32 syn match snnspatNoHeader "Maximum input dimensions\s*:\s*" contained
33 syn match snnspatNoHeader "Maximum output dimensions\s*:\s*" contained
34 syn match snnspatGen "generated at.*" contained contains=snnspatNumbers
35 syn match snnspatGen "SNNS pattern definition file [Vv]\d\.\d" contained contains=snnspatNumbers
37 " the header, what is not an accepted field, is an error
38 syn region snnspatHeader start="^SNNS" end="^\s*[-+\.]\=[0-9#]"me=e-2 contains=snnspatNoHeader,snnspatNumbers,snnspatGen,snnspatBrac
40 " numbers inside the header
41 syn match snnspatNumbers "\d" contained
42 syn match snnspatComment "#.*$" contains=snnspatTodo
43 syn keyword snnspatTodo TODO XXX FIXME contained
45 if version >= 508 || !exists("did_snnspat_syn_inits")
47 let did_snnspat_syn_inits = 1
48 command -nargs=+ HiLink hi link <args>
50 command -nargs=+ HiLink hi def link <args>
53 HiLink snnspatGen Statement
54 HiLink snnspatHeader Error
55 HiLink snnspatNoHeader Define
56 HiLink snnspatNumbers Number
57 HiLink snnspatComment Comment
58 HiLink snnspatError Error
59 HiLink snnspatTodo Todo
60 HiLink snnspatAccepted NONE
61 HiLink snnspatBrac NONE
66 let b:current_syntax = "snnspat"