snnspat.vim 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. " Vim syntax file
  2. " Language: SNNS pattern file
  3. " Maintainer: Davide Alberani <alberanid@bigfoot.com>
  4. " Last Change: 2012 Feb 03 by Thilo Six
  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. " quit when a syntax file was already loaded
  11. if exists("b:current_syntax")
  12. finish
  13. endif
  14. let s:cpo_save = &cpo
  15. set cpo&vim
  16. " anything that isn't part of the header, a comment or a number
  17. " is wrong
  18. syn match snnspatError ".*"
  19. " hoping that matches any kind of notation...
  20. syn match snnspatAccepted "\([-+]\=\(\d\+\.\|\.\)\=\d\+\([Ee][-+]\=\d\+\)\=\)"
  21. syn match snnspatAccepted "\s"
  22. syn match snnspatBrac "\[\s*\d\+\(\s\|\d\)*\]" contains=snnspatNumbers
  23. " the accepted fields in the header
  24. syn match snnspatNoHeader "No\. of patterns\s*:\s*" contained
  25. syn match snnspatNoHeader "No\. of input units\s*:\s*" contained
  26. syn match snnspatNoHeader "No\. of output units\s*:\s*" contained
  27. syn match snnspatNoHeader "No\. of variable input dimensions\s*:\s*" contained
  28. syn match snnspatNoHeader "No\. of variable output dimensions\s*:\s*" contained
  29. syn match snnspatNoHeader "Maximum input dimensions\s*:\s*" contained
  30. syn match snnspatNoHeader "Maximum output dimensions\s*:\s*" contained
  31. syn match snnspatGen "generated at.*" contained contains=snnspatNumbers
  32. syn match snnspatGen "SNNS pattern definition file [Vv]\d\.\d" contained contains=snnspatNumbers
  33. " the header, what is not an accepted field, is an error
  34. syn region snnspatHeader start="^SNNS" end="^\s*[-+\.]\=[0-9#]"me=e-2 contains=snnspatNoHeader,snnspatNumbers,snnspatGen,snnspatBrac
  35. " numbers inside the header
  36. syn match snnspatNumbers "\d" contained
  37. syn match snnspatComment "#.*$" contains=snnspatTodo
  38. syn keyword snnspatTodo TODO XXX FIXME contained
  39. hi def link snnspatGen Statement
  40. hi def link snnspatHeader Error
  41. hi def link snnspatNoHeader Define
  42. hi def link snnspatNumbers Number
  43. hi def link snnspatComment Comment
  44. hi def link snnspatError Error
  45. hi def link snnspatTodo Todo
  46. hi def link snnspatAccepted NONE
  47. hi def link snnspatBrac NONE
  48. let b:current_syntax = "snnspat"
  49. let &cpo = s:cpo_save
  50. unlet s:cpo_save
  51. " vim: ts=8 sw=2