rules:
- type: "(^| )!!(binary|bool|float|int|map|null|omap|seq|set|str) "
- - constant: "\\b(YES|yes|Y|y|ON|on|NO|no|N|n|OFF|off)\\b"
- - constant: "\\b(true|false)\\b"
+ - constant: "\\b(YES|yes|Y|y|ON|on|TRUE|True|true|NO|no|N|n|OFF|off|FALSE|False|false)\\b"
- statement: "(:[[:space:]]|\\[|\\]|:[[:space:]]+[|>]|^[[:space:]]*- )"
- identifier: "[[:space:]][\\*&][A-Za-z0-9]+"
- - type: "([-\\w]+:\\s+)|([-\\w]+:$)"
+ - type: "[-.\\w]+:"
+ - statement: ":"
- special: "(^---|^\\.\\.\\.|^%YAML|^%TAG)"
- constant.string:
- start: "\""
- end: "(?<!\\\\)\""
+ start: "(^| )\""
+ end: "\""
+ skip: "\\\\."
rules:
- constant.specialChar: "\\\\."
- constant.string:
- start: "'"
- end: "(?<!\\\\)'"
+ start: "(^| )'"
+ end: "'"
+ skip: "(\\\\.)|('')"
rules:
- constant.specialChar: "\\\\."