diff --git a/src/yaml/yaml.test.ts b/src/yaml/yaml.test.ts index 0d644026..095eb71d 100644 --- a/src/yaml/yaml.test.ts +++ b/src/yaml/yaml.test.ts @@ -145,6 +145,15 @@ testTokenization('yaml', [ }] }], + //String + [{ + line: '\'\'\'', + tokens: [ + { startIndex: 0, type: 'string.yaml' }, + { startIndex: 2, type: 'string.invalid.yaml' }, + ] + }], + // Block Scalar [{ line: '>', diff --git a/src/yaml/yaml.ts b/src/yaml/yaml.ts index 779acb0f..095507ef 100644 --- a/src/yaml/yaml.ts +++ b/src/yaml/yaml.ts @@ -189,6 +189,8 @@ export const language = { // Start Flow Scalars (quoted strings) flowScalars: [ + [/"([^"\\]|\\.)*$/, 'string.invalid'], + [/'([^'\\]|\\.)*$/, 'string.invalid'], [/'[^']*'/, 'string'], [/"/, 'string', '@doubleQuotedString'] ], @@ -197,7 +199,7 @@ export const language = { [/[^\\"]+/, 'string'], [/@escapes/, 'string.escape'], [/\\./, 'string.escape.invalid'], - [/"/, 'string', '@pop'] + [/"/, 'string', '@pop'] ], // Start Block Scalar