YES Script — VS Code Markup Highlighter
Syntax highlighting for YES (Your Extensible Script) files in Visual Studio Code.
YES is a meta-scriptlet standard whose elements, keys, and evaluation are user-defined.
See the available parsers to integrate with your own software:
Read the full spec.
Features
| Token |
Scope |
Colour role |
# comment lines |
comment.line.number-sign.yes |
comment |
! global sigil |
keyword.control.global.sigil.yes |
keyword |
| Global name |
entity.name.function.global.yes |
function |
@ attribute sigil |
storage.modifier.attribute.sigil.yes |
storage |
| Attribute name |
entity.name.tag.attribute.yes |
tag |
| Standard element name |
entity.name.function.element.yes |
function |
Key in key=value |
variable.other.key.yes |
variable |
= operator |
keyword.operator.assignment.yes |
operator |
"..." string literal |
string.quoted.double.yes |
string |
[...] custom literal |
string.other.literal.bracket.yes |
string |
Numeric values (5f, 1.0s, 128) |
constant.numeric.yes |
number |
true / false |
constant.language.boolean.yes |
boolean |
| Unquoted raw values |
string.unquoted.yes |
string |
, delimiter |
punctuation.separator.delimiter.yes |
punctuation |
\ line continuation |
punctuation.separator.continuation.yes |
punctuation |
File Associations
These are the available supported file format extensions using YES script.
| Extension |
Description |
.yes |
Generic YES Script file |
.cts |
Scene/cutscene script file |
.cart |
Configuration, Assembly, Resources, and Text file |
.ani |
Modern animation document format |
.anim |
Legacy animation document format |
Installation
From .vsix (recommended)
code --install-extension yes-script-1.0.0.vsix
Manual (development)
- Copy this folder into
~/.vscode/extensions/yes-script/
- Restart VS Code.
Build the .vsix yourself
npm install
npx vsce package --allow-missing-repository
Grammar Overview
Based on the formal production rules from the YES spec:
<ELEMENT> → <SYMBOL> <NAME> <KEYVALUE>
<SYMBOL> → ! | @ | # | ε
<KEYVALUE> → <VALUE> | <KEY>=<VALUE> | <KEYVALUE> <DELIMITER> <KEYVALUE> | ε
<DELIMITER> → space | ,
<RAWTOKEN> → <TOKEN> | "<TOKEN>" | ⌈<TOKEN>⌋
Reserved characters that cannot appear unquoted in element names: !, #, @, ,
License
The this vsix project is licensed GPLv2.
The parsers and their specification are protected by CDDL. See any of the upstream repositories for details.