summaryrefslogtreecommitdiffstats
path: root/after/syntax
diff options
context:
space:
mode:
Diffstat (limited to 'after/syntax')
-rw-r--r--after/syntax/yaml.vim64
1 files changed, 64 insertions, 0 deletions
diff --git a/after/syntax/yaml.vim b/after/syntax/yaml.vim
new file mode 100644
index 00000000..57d9a234
--- /dev/null
+++ b/after/syntax/yaml.vim
@@ -0,0 +1,64 @@
+if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'yaml') == -1
+
+" To make this file do stuff, add something like the following (without the
+" leading ") to your ~/.vimrc:
+" au BufNewFile,BufRead *.yaml,*.yml so ~/src/PyYaml/YAML.vim
+
+" Vim syntax/macro file
+" Language: YAML
+" Author: Igor Vergeichik <iverg@mail.ru>
+" Sponsor: Tom Sawyer <transami@transami.net>
+" Stayven: Ryan King <jking@panoptic.com>
+" Copyright (c) 2002 Tom Saywer
+
+" Add an item to a gangly list:
+"map , o<bs><bs><bs><bs>-<esc>o
+" Convert to Canonical form:
+"map \c :%!python -c 'from yaml.redump import redump; import sys; print redump(sys.stdin.read()).rstrip()'
+
+if version < 600
+ syntax clear
+endif
+syntax clear
+
+syn match yamlDelimiter "[:,-]"
+syn match yamlBlock "[\[\]\{\}\|\>]"
+syn match yamlOperator "[?^+-]\|=>"
+
+syn region yamlComment start="\#" end="$"
+syn match yamlIndicator "#YAML:\S\+"
+
+syn region yamlString start="'" end="'" skip="\\'"
+syn region yamlString start='"' end='"' skip='\\"' contains=yamlEscape
+syn match yamlEscape +\\[abfnrtv'"\\]+ contained
+syn match yamlEscape "\\\o\o\=\o\=" contained
+syn match yamlEscape "\\x\x\+" contained
+
+syn match yamlType "!\S\+"
+
+syn keyword yamlConstant NULL Null null NONE None none NIL Nil nil
+syn keyword yamlConstant TRUE True true YES Yes yes ON On on
+syn keyword yamlConstant FALSE False false NO No no OFF Off off
+
+syn match yamlKey "\w\+\ze\s*:"
+syn match yamlAnchor "&\S\+"
+syn match yamlAlias "*\S\+"
+
+" Setupt the hilighting links
+
+hi link yamlConstant Keyword
+hi link yamlIndicator PreCondit
+hi link yamlAnchor Function
+hi link yamlAlias Function
+hi link yamlKey Identifier
+hi link yamlType Type
+
+hi link yamlComment Comment
+hi link yamlBlock Operator
+hi link yamlOperator Operator
+hi link yamlDelimiter Delimiter
+hi link yamlString String
+hi link yamlEscape Special
+
+
+endif