home *** CD-ROM | disk | FTP | other *** search
/ Chip 2000 February / OpenLinux 2.3 CD.iso / live / usr / share / vim / syntax / javascript.vim < prev    next >
Encoding:
Text File  |  1999-08-10  |  3.1 KB  |  77 lines

  1. " Vim syntax file
  2. " Language:    JavaScript
  3. " Maintainer:    Claudio Fleiner <claudio@fleiner.com>
  4. " URL:        http://www.fleiner.com/vim/syntax/javascript.vim
  5. " Last change:    1998 Aug 24
  6.  
  7.  
  8. " Remove any old syntax stuff hanging around
  9. syn clear
  10. syn case ignore
  11.  
  12. if !exists("main_syntax")
  13.   let main_syntax = 'javascript'
  14. endif
  15.  
  16. let b:current_syntax = "javascript"
  17.  
  18. syn match   javaScriptLineComment      "\/\/.*$"
  19. syn match   javaScriptCommentSkip      "^[ \t]*\*\($\|[ \t]\+\)"
  20. syn region  javaScriptCommentString    start=+"+  skip=+\\\\\|\\"+  end=+"+ end=+\*/+me=s-1,he=s-1 contains=javaScriptSpecial,javaScriptCommentSkip
  21. syn region  javaScriptComment2String   start=+"+  skip=+\\\\\|\\"+  end=+$\|"+  contains=javaScriptSpecial
  22. syn region  javaScriptComment          start="/\*"  end="\*/" contains=javaScriptCommentString,javaScriptCharacter,javaScriptNumber
  23. syn match   javaScriptSpecial          "\\\d\d\d\|\\."
  24. syn region  javaScriptStringD          start=+"+  skip=+\\\\\|\\"+  end=+"+  contains=javaScriptSpecial
  25. syn region  javaScriptStringS          start=+'+  skip=+\\\\\|\\'+  end=+'+  contains=javaScriptSpecial
  26. syn match   javaScriptSpecialCharacter "'\\.'"
  27. syn match   javaScriptNumber           "-\=\<\d\+L\=\>\|0[xX][0-9a-fA-F]\+\>"
  28. syn keyword javaScriptConditional      if else
  29. syn keyword javaScriptRepeat           while for
  30. syn keyword javaScriptBranch           break continue
  31. syn keyword javaScriptOperator         new in
  32. syn keyword javaScriptType             this var
  33. syn keyword javaScriptStatement        return with
  34. syn keyword javaScriptFunction         function
  35. syn keyword javaScriptBoolean          true false
  36. syn match   javaScriptBraces           "[{}]"
  37.  
  38. " catch errors caused by wrong parenthesis
  39. syn region  javaScriptParen       transparent start="(" end=")" contains=javaScript.*
  40. syn match   javaScrParenError  ")"
  41. syn match   javaScriptInParen     contained "[{}]"
  42.  
  43. if main_syntax == "javascript"
  44.   syn sync ccomment javaScriptComment
  45. endif
  46.  
  47. if !exists("did_javascript_syntax_inits")
  48.   let did_javascript_syntax_inits = 1
  49.   hi link javaScriptComment           Comment
  50.   hi link javaScriptLineComment       Comment
  51.   hi link javaScriptSpecial           Special
  52.   hi link javaScriptStringS           String
  53.   hi link javaScriptStringD           String
  54.   hi link javaScriptCharacter         Character
  55.   hi link javaScriptSpecialCharacter  javaScriptSpecial
  56.   hi link javaScriptNumber            javaScriptValue
  57.   hi link javaScriptConditional       Conditional
  58.   hi link javaScriptRepeat            Repeat
  59.   hi link javaScriptBranch            Conditional
  60.   hi link javaScriptOperator          Operator
  61.   hi link javaScriptType              Type
  62.   hi link javaScriptStatement         Statement
  63.   hi link javaScriptFunction          Function
  64.   hi link javaScriptBraces            Function
  65.   hi link javaScriptError             Error
  66.   hi link javaScrParenError           javaScriptError
  67.   hi link javaScriptInParen           javaScriptError
  68.   hi link javaScriptBoolean           Boolean
  69. endif
  70.  
  71. let b:current_syntax = "javascript"
  72. if main_syntax == 'javascript'
  73.   unlet main_syntax
  74. endif
  75.  
  76. " vim: ts=8
  77.