summaryrefslogtreecommitdiffstats
path: root/runtime/syntax/ps1xml.vim
diff options
context:
space:
mode:
Diffstat (limited to 'runtime/syntax/ps1xml.vim')
-rw-r--r--runtime/syntax/ps1xml.vim51
1 files changed, 51 insertions, 0 deletions
diff --git a/runtime/syntax/ps1xml.vim b/runtime/syntax/ps1xml.vim
new file mode 100644
index 0000000..6ca9ed0
--- /dev/null
+++ b/runtime/syntax/ps1xml.vim
@@ -0,0 +1,51 @@
+" Vim syntax file
+" Language: Windows PowerShell
+" URL: https://github.com/PProvost/vim-ps1
+" Last Change: 2013 Jun 24
+
+if exists("b:current_syntax")
+ finish
+endif
+
+let s:ps1xml_cpo_save = &cpo
+set cpo&vim
+
+doau syntax xml
+unlet b:current_syntax
+
+syn case ignore
+syn include @ps1xmlScriptBlock <sfile>:p:h/ps1.vim
+unlet b:current_syntax
+
+syn region ps1xmlScriptBlock
+ \ matchgroup=xmlTag start="<Script>"
+ \ matchgroup=xmlEndTag end="</Script>"
+ \ fold
+ \ contains=@ps1xmlScriptBlock
+ \ keepend
+syn region ps1xmlScriptBlock
+ \ matchgroup=xmlTag start="<ScriptBlock>"
+ \ matchgroup=xmlEndTag end="</ScriptBlock>"
+ \ fold
+ \ contains=@ps1xmlScriptBlock
+ \ keepend
+syn region ps1xmlScriptBlock
+ \ matchgroup=xmlTag start="<GetScriptBlock>"
+ \ matchgroup=xmlEndTag end="</GetScriptBlock>"
+ \ fold
+ \ contains=@ps1xmlScriptBlock
+ \ keepend
+syn region ps1xmlScriptBlock
+ \ matchgroup=xmlTag start="<SetScriptBlock>"
+ \ matchgroup=xmlEndTag end="</SetScriptBlock>"
+ \ fold
+ \ contains=@ps1xmlScriptBlock
+ \ keepend
+
+syn cluster xmlRegionHook add=ps1xmlScriptBlock
+
+let b:current_syntax = "ps1xml"
+
+let &cpo = s:ps1xml_cpo_save
+unlet s:ps1xml_cpo_save
+