blob: bd132b3c56876fdc9060de8036894f347e89c6cf (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
|
let files = filter(globpath(&rtp, 'syntax/wsh.vim', 1, 1), { _, v -> v !~ "vim-polyglot" && v !~ $VIMRUNTIME && v !~ "after" })
if len(files) > 0
exec 'source ' . files[0]
finish
endif
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'wsh') == -1
" Vim syntax file
" Language: Windows Scripting Host
" Maintainer: Paul Moore <pf_moore AT yahoo.co.uk>
" Last Change: Fre, 24 Nov 2000 21:54:09 +0100
" This reuses the XML, VB and JavaScript syntax files. While VB is not
" VBScript, it's close enough for us. No attempt is made to handle
" other languages.
" Send comments, suggestions and requests to the maintainer.
" Quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
let s:wsh_cpo_save = &cpo
set cpo&vim
runtime! syntax/xml.vim
unlet b:current_syntax
syn case ignore
syn include @wshVBScript <sfile>:p:h/vb.vim
unlet b:current_syntax
syn include @wshJavaScript <sfile>:p:h/javascript.vim
unlet b:current_syntax
syn region wshVBScript
\ matchgroup=xmlTag start="<script[^>]*VBScript\(>\|[^>]*[^/>]>\)"
\ matchgroup=xmlEndTag end="</script>"
\ fold
\ contains=@wshVBScript
\ keepend
syn region wshJavaScript
\ matchgroup=xmlTag start="<script[^>]*J\(ava\)\=Script\(>\|[^>]*[^/>]>\)"
\ matchgroup=xmlEndTag end="</script>"
\ fold
\ contains=@wshJavaScript
\ keepend
syn cluster xmlRegionHook add=wshVBScript,wshJavaScript
let b:current_syntax = "wsh"
let &cpo = s:wsh_cpo_save
unlet s:wsh_cpo_save
endif
|