blob: 3c07fad169dfa8185cebbbf1b5251d8c2c0b0223 [file] [log] [blame]
Bram Moolenaar071d4272004-06-13 20:20:40 +00001" Vim syntax file
2" Language: SNNS pattern file
3" Maintainer: Davide Alberani <alberanid@bigfoot.com>
4" Last Change: 28 Apr 2001
5" Version: 0.2
6" URL: http://digilander.iol.it/alberanid/vim/syntax/snnspat.vim
7"
8" SNNS http://www-ra.informatik.uni-tuebingen.de/SNNS/
9" is a simulator for neural networks.
10
11if version < 600
12 syntax clear
13elseif exists("b:current_syntax")
14 finish
15endif
16
17
18" anything that isn't part of the header, a comment or a number
19" is wrong
20syn match snnspatError ".*"
21" hoping that matches any kind of notation...
22syn match snnspatAccepted "\([-+]\=\(\d\+\.\|\.\)\=\d\+\([Ee][-+]\=\d\+\)\=\)"
23syn match snnspatAccepted "\s"
24syn match snnspatBrac "\[\s*\d\+\(\s\|\d\)*\]" contains=snnspatNumbers
25
26" the accepted fields in the header
27syn match snnspatNoHeader "No\. of patterns\s*:\s*" contained
28syn match snnspatNoHeader "No\. of input units\s*:\s*" contained
29syn match snnspatNoHeader "No\. of output units\s*:\s*" contained
30syn match snnspatNoHeader "No\. of variable input dimensions\s*:\s*" contained
31syn match snnspatNoHeader "No\. of variable output dimensions\s*:\s*" contained
32syn match snnspatNoHeader "Maximum input dimensions\s*:\s*" contained
33syn match snnspatNoHeader "Maximum output dimensions\s*:\s*" contained
34syn match snnspatGen "generated at.*" contained contains=snnspatNumbers
35syn match snnspatGen "SNNS pattern definition file [Vv]\d\.\d" contained contains=snnspatNumbers
36
37" the header, what is not an accepted field, is an error
38syn region snnspatHeader start="^SNNS" end="^\s*[-+\.]\=[0-9#]"me=e-2 contains=snnspatNoHeader,snnspatNumbers,snnspatGen,snnspatBrac
39
40" numbers inside the header
41syn match snnspatNumbers "\d" contained
42syn match snnspatComment "#.*$" contains=snnspatTodo
43syn keyword snnspatTodo TODO XXX FIXME contained
44
45if version >= 508 || !exists("did_snnspat_syn_inits")
46 if version < 508
47 let did_snnspat_syn_inits = 1
48 command -nargs=+ HiLink hi link <args>
49 else
50 command -nargs=+ HiLink hi def link <args>
51 endif
52
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
62
63 delcommand HiLink
64endif
65
66let b:current_syntax = "snnspat"
67
68" vim: ts=8 sw=2