vim-polyglot/after/syntax/yaml.vim

61 lines
1.8 KiB
VimL
Raw Normal View History

2015-12-31 12:34:53 -05:00
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 yamlBlock "[\[\]\{\}\|\>]"
syn region yamlComment start="\#" end="$"
syn match yamlIndicator "#YAML:\S\+"
2017-12-06 06:56:27 -05:00
syn region yamlString start="\%(^\| \)\zs'" end="'\ze\%( \|$\)" skip="\\'"
2015-12-31 12:34:53 -05:00
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
2017-05-17 05:07:28 -04:00
syn match yamlKey "^\s*\zs[^ \t\"]\+\ze\s*:"
2017-09-27 13:57:29 -04:00
syn match yamlKey "^\s*-\s*\zs[^ \t\"\']\+\ze\s*:"
2015-12-31 12:34:53 -05:00
syn match yamlAnchor "&\S\+"
syn match yamlAlias "*\S\+"
2017-03-23 06:28:19 -04:00
" Setup the highlighting links
2015-12-31 12:34:53 -05:00
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 yamlString String
hi link yamlEscape Special
endif