annotate runtime/syntax/javascript.vim @ 10051:46763b01cd9a

commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c Author: Bram Moolenaar <Bram@vim.org> Date: Wed Aug 31 22:22:10 2016 +0200 Updated runtime files. Remove HiLink commands.
author Christian Brabandt <cb@256bit.org>
date Wed, 31 Aug 2016 22:30:08 +0200
parents 43efa4f5a8ea
children a62eeee5f116
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1 " Vim syntax file
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2 " Language: JavaScript
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3 " Maintainer: Claudio Fleiner <claudio@fleiner.com>
557
862863033fdd updated for version 7.0158
vimboss
parents: 417
diff changeset
4 " Updaters: Scott Shattuck (ss) <ss@technicalpursuit.com>
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
5 " URL: http://www.fleiner.com/vim/syntax/javascript.vim
557
862863033fdd updated for version 7.0158
vimboss
parents: 417
diff changeset
6 " Changes: (ss) added keywords, reserved words, and other identifiers
862863033fdd updated for version 7.0158
vimboss
parents: 417
diff changeset
7 " (ss) repaired several quoting and grouping glitches
862863033fdd updated for version 7.0158
vimboss
parents: 417
diff changeset
8 " (ss) fixed regex parsing issue with multiple qualifiers [gi]
862863033fdd updated for version 7.0158
vimboss
parents: 417
diff changeset
9 " (ss) additional factoring of keywords, globals, and members
3854
aa51675adf7e Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 2152
diff changeset
10 " Last Change: 2012 Oct 05
4869
a5352e73dc00 Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3854
diff changeset
11 " 2013 Jun 12: adjusted javaScriptRegexpString (Kevin Locke)
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
12
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
13 " tuning parameters:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
14 " unlet javaScript_fold
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
15
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
16 if !exists("main_syntax")
10048
43efa4f5a8ea commit https://github.com/vim/vim/commit/89bcfda6834aba724d12554a34b9ed49f5789fd5
Christian Brabandt <cb@256bit.org>
parents: 5239
diff changeset
17 " quit when a syntax file was already loaded
43efa4f5a8ea commit https://github.com/vim/vim/commit/89bcfda6834aba724d12554a34b9ed49f5789fd5
Christian Brabandt <cb@256bit.org>
parents: 5239
diff changeset
18 if exists("b:current_syntax")
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
19 finish
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
20 endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
21 let main_syntax = 'javascript'
5239
11cd8d58372e Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 4869
diff changeset
22 elseif exists("b:current_syntax") && b:current_syntax == "javascript"
11cd8d58372e Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 4869
diff changeset
23 finish
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
24 endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
25
3854
aa51675adf7e Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 2152
diff changeset
26 let s:cpo_save = &cpo
aa51675adf7e Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 2152
diff changeset
27 set cpo&vim
aa51675adf7e Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 2152
diff changeset
28
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
29
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
30 syn keyword javaScriptCommentTodo TODO FIXME XXX TBD contained
1121
e63691e7c504 updated for version 7.1a
vimboss
parents: 829
diff changeset
31 syn match javaScriptLineComment "\/\/.*" contains=@Spell,javaScriptCommentTodo
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
32 syn match javaScriptCommentSkip "^[ \t]*\*\($\|[ \t]\+\)"
1121
e63691e7c504 updated for version 7.1a
vimboss
parents: 829
diff changeset
33 syn region javaScriptComment start="/\*" end="\*/" contains=@Spell,javaScriptCommentTodo
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
34 syn match javaScriptSpecial "\\\d\d\d\|\\."
2152
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1121
diff changeset
35 syn region javaScriptStringD start=+"+ skip=+\\\\\|\\"+ end=+"\|$+ contains=javaScriptSpecial,@htmlPreproc
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1121
diff changeset
36 syn region javaScriptStringS start=+'+ skip=+\\\\\|\\'+ end=+'\|$+ contains=javaScriptSpecial,@htmlPreproc
557
862863033fdd updated for version 7.0158
vimboss
parents: 417
diff changeset
37
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
38 syn match javaScriptSpecialCharacter "'\\.'"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
39 syn match javaScriptNumber "-\=\<\d\+L\=\>\|0[xX][0-9a-fA-F]\+\>"
4869
a5352e73dc00 Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3854
diff changeset
40 syn region javaScriptRegexpString start=+/[^/*]+me=e-1 skip=+\\\\\|\\/+ end=+/[gim]\{0,2\}\s*$+ end=+/[gim]\{0,2\}\s*[;.,)\]}]+me=e-1 contains=@htmlPreproc oneline
557
862863033fdd updated for version 7.0158
vimboss
parents: 417
diff changeset
41
862863033fdd updated for version 7.0158
vimboss
parents: 417
diff changeset
42 syn keyword javaScriptConditional if else switch
862863033fdd updated for version 7.0158
vimboss
parents: 417
diff changeset
43 syn keyword javaScriptRepeat while for do in
862863033fdd updated for version 7.0158
vimboss
parents: 417
diff changeset
44 syn keyword javaScriptBranch break continue
862863033fdd updated for version 7.0158
vimboss
parents: 417
diff changeset
45 syn keyword javaScriptOperator new delete instanceof typeof
862863033fdd updated for version 7.0158
vimboss
parents: 417
diff changeset
46 syn keyword javaScriptType Array Boolean Date Function Number Object String RegExp
36
125e80798a85 updated for version 7.0021
vimboss
parents: 7
diff changeset
47 syn keyword javaScriptStatement return with
125e80798a85 updated for version 7.0021
vimboss
parents: 7
diff changeset
48 syn keyword javaScriptBoolean true false
557
862863033fdd updated for version 7.0158
vimboss
parents: 417
diff changeset
49 syn keyword javaScriptNull null undefined
2152
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1121
diff changeset
50 syn keyword javaScriptIdentifier arguments this var let
557
862863033fdd updated for version 7.0158
vimboss
parents: 417
diff changeset
51 syn keyword javaScriptLabel case default
862863033fdd updated for version 7.0158
vimboss
parents: 417
diff changeset
52 syn keyword javaScriptException try catch finally throw
862863033fdd updated for version 7.0158
vimboss
parents: 417
diff changeset
53 syn keyword javaScriptMessage alert confirm prompt status
862863033fdd updated for version 7.0158
vimboss
parents: 417
diff changeset
54 syn keyword javaScriptGlobal self window top parent
862863033fdd updated for version 7.0158
vimboss
parents: 417
diff changeset
55 syn keyword javaScriptMember document event location
862863033fdd updated for version 7.0158
vimboss
parents: 417
diff changeset
56 syn keyword javaScriptDeprecated escape unescape
862863033fdd updated for version 7.0158
vimboss
parents: 417
diff changeset
57 syn keyword javaScriptReserved abstract boolean byte char class const debugger double enum export extends final float goto implements import int interface long native package private protected public short static super synchronized throws transient volatile
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
58
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
59 if exists("javaScript_fold")
2152
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1121
diff changeset
60 syn match javaScriptFunction "\<function\>"
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
61 syn region javaScriptFunctionFold start="\<function\>.*[^};]$" end="^\z1}.*$" transparent fold keepend
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
62
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
63 syn sync match javaScriptSync grouphere javaScriptFunctionFold "\<function\>"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
64 syn sync match javaScriptSync grouphere NONE "^}"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
65
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
66 setlocal foldmethod=syntax
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
67 setlocal foldtext=getline(v:foldstart)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
68 else
2152
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1121
diff changeset
69 syn keyword javaScriptFunction function
557
862863033fdd updated for version 7.0158
vimboss
parents: 417
diff changeset
70 syn match javaScriptBraces "[{}\[\]]"
862863033fdd updated for version 7.0158
vimboss
parents: 417
diff changeset
71 syn match javaScriptParens "[()]"
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
72 endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
73
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
74 syn sync fromstart
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
75 syn sync maxlines=100
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
76
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
77 if main_syntax == "javascript"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
78 syn sync ccomment javaScriptComment
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
79 endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
80
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
81 " Define the default highlighting.
10048
43efa4f5a8ea commit https://github.com/vim/vim/commit/89bcfda6834aba724d12554a34b9ed49f5789fd5
Christian Brabandt <cb@256bit.org>
parents: 5239
diff changeset
82 " Only when an item doesn't have highlighting yet
10051
46763b01cd9a commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents: 10048
diff changeset
83 hi def link javaScriptComment Comment
46763b01cd9a commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents: 10048
diff changeset
84 hi def link javaScriptLineComment Comment
46763b01cd9a commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents: 10048
diff changeset
85 hi def link javaScriptCommentTodo Todo
46763b01cd9a commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents: 10048
diff changeset
86 hi def link javaScriptSpecial Special
46763b01cd9a commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents: 10048
diff changeset
87 hi def link javaScriptStringS String
46763b01cd9a commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents: 10048
diff changeset
88 hi def link javaScriptStringD String
46763b01cd9a commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents: 10048
diff changeset
89 hi def link javaScriptCharacter Character
46763b01cd9a commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents: 10048
diff changeset
90 hi def link javaScriptSpecialCharacter javaScriptSpecial
46763b01cd9a commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents: 10048
diff changeset
91 hi def link javaScriptNumber javaScriptValue
46763b01cd9a commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents: 10048
diff changeset
92 hi def link javaScriptConditional Conditional
46763b01cd9a commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents: 10048
diff changeset
93 hi def link javaScriptRepeat Repeat
46763b01cd9a commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents: 10048
diff changeset
94 hi def link javaScriptBranch Conditional
46763b01cd9a commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents: 10048
diff changeset
95 hi def link javaScriptOperator Operator
46763b01cd9a commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents: 10048
diff changeset
96 hi def link javaScriptType Type
46763b01cd9a commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents: 10048
diff changeset
97 hi def link javaScriptStatement Statement
46763b01cd9a commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents: 10048
diff changeset
98 hi def link javaScriptFunction Function
46763b01cd9a commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents: 10048
diff changeset
99 hi def link javaScriptBraces Function
46763b01cd9a commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents: 10048
diff changeset
100 hi def link javaScriptError Error
46763b01cd9a commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents: 10048
diff changeset
101 hi def link javaScrParenError javaScriptError
46763b01cd9a commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents: 10048
diff changeset
102 hi def link javaScriptNull Keyword
46763b01cd9a commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents: 10048
diff changeset
103 hi def link javaScriptBoolean Boolean
46763b01cd9a commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents: 10048
diff changeset
104 hi def link javaScriptRegexpString String
557
862863033fdd updated for version 7.0158
vimboss
parents: 417
diff changeset
105
10051
46763b01cd9a commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents: 10048
diff changeset
106 hi def link javaScriptIdentifier Identifier
46763b01cd9a commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents: 10048
diff changeset
107 hi def link javaScriptLabel Label
46763b01cd9a commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents: 10048
diff changeset
108 hi def link javaScriptException Exception
46763b01cd9a commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents: 10048
diff changeset
109 hi def link javaScriptMessage Keyword
46763b01cd9a commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents: 10048
diff changeset
110 hi def link javaScriptGlobal Keyword
46763b01cd9a commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents: 10048
diff changeset
111 hi def link javaScriptMember Keyword
46763b01cd9a commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents: 10048
diff changeset
112 hi def link javaScriptDeprecated Exception
46763b01cd9a commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents: 10048
diff changeset
113 hi def link javaScriptReserved Keyword
46763b01cd9a commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents: 10048
diff changeset
114 hi def link javaScriptDebug Debug
46763b01cd9a commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents: 10048
diff changeset
115 hi def link javaScriptConstant Label
557
862863033fdd updated for version 7.0158
vimboss
parents: 417
diff changeset
116
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
117
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
118 let b:current_syntax = "javascript"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
119 if main_syntax == 'javascript'
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
120 unlet main_syntax
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
121 endif
3854
aa51675adf7e Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 2152
diff changeset
122 let &cpo = s:cpo_save
aa51675adf7e Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 2152
diff changeset
123 unlet s:cpo_save
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
124
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
125 " vim: ts=8