|
@@ -189,5 +189,69 @@ testTokenization('python', [
|
|
|
line: '456.7e-7j',
|
|
|
tokens: [{ startIndex: 0, type: 'number.python' }]
|
|
|
}
|
|
|
+ ],
|
|
|
+
|
|
|
+ // F-Strings
|
|
|
+ [
|
|
|
+ {
|
|
|
+ line: 'f"str {var} str"',
|
|
|
+ tokens: [
|
|
|
+ { startIndex: 0, type: 'string.escape.python' },
|
|
|
+ { startIndex: 2, type: 'string.python' },
|
|
|
+ { startIndex: 6, type: 'identifier.python' },
|
|
|
+ { startIndex: 11, type: 'string.python' },
|
|
|
+ { startIndex: 15, type: 'string.escape.python' }
|
|
|
+ ]
|
|
|
+ }
|
|
|
+ ],
|
|
|
+ [
|
|
|
+ {
|
|
|
+ line: `f'''str {var} str'''`,
|
|
|
+ tokens: [
|
|
|
+ { startIndex: 0, type: 'string.escape.python' },
|
|
|
+ { startIndex: 4, type: 'string.python' },
|
|
|
+ { startIndex: 8, type: 'identifier.python' },
|
|
|
+ { startIndex: 13, type: 'string.python' },
|
|
|
+ { startIndex: 17, type: 'string.escape.python' }
|
|
|
+ ]
|
|
|
+ }
|
|
|
+ ],
|
|
|
+ [
|
|
|
+ {
|
|
|
+ line: 'f"{var:.3f}{var!r}{var=}"',
|
|
|
+ tokens: [
|
|
|
+ { startIndex: 0, type: 'string.escape.python' },
|
|
|
+ { startIndex: 2, type: 'identifier.python' },
|
|
|
+ { startIndex: 6, type: 'string.python' },
|
|
|
+ { startIndex: 10, type: 'identifier.python' },
|
|
|
+ { startIndex: 15, type: 'string.python' },
|
|
|
+ { startIndex: 17, type: 'identifier.python' },
|
|
|
+ { startIndex: 22, type: 'string.python' },
|
|
|
+ { startIndex: 23, type: 'identifier.python' },
|
|
|
+ { startIndex: 24, type: 'string.escape.python' }
|
|
|
+ ]
|
|
|
+ }
|
|
|
+ ],
|
|
|
+ [
|
|
|
+ {
|
|
|
+ line: 'f"\' " "',
|
|
|
+ tokens: [
|
|
|
+ { startIndex: 0, type: 'string.escape.python' },
|
|
|
+ { startIndex: 2, type: 'string.python' },
|
|
|
+ { startIndex: 4, type: 'string.escape.python' },
|
|
|
+ { startIndex: 5, type: 'white.python' },
|
|
|
+ { startIndex: 6, type: 'string.escape.python' }
|
|
|
+ ]
|
|
|
+ }
|
|
|
+ ],
|
|
|
+ [
|
|
|
+ {
|
|
|
+ line: '"{var}"',
|
|
|
+ tokens: [
|
|
|
+ { startIndex: 0, type: 'string.escape.python' },
|
|
|
+ { startIndex: 1, type: 'string.python' },
|
|
|
+ { startIndex: 6, type: 'string.escape.python' }
|
|
|
+ ]
|
|
|
+ }
|
|
|
]
|
|
|
]);
|