mirror of
https://github.com/microsoft/monaco-editor.git
synced 2025-12-23 00:22:56 +01:00
Add support for private identifiers
This commit is contained in:
parent
8270c45a38
commit
e5366f65e8
3 changed files with 119 additions and 1 deletions
|
|
@ -39,6 +39,65 @@ testTokenization('javascript', [
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
|
|
||||||
|
// identifiers
|
||||||
|
[
|
||||||
|
{
|
||||||
|
line: 'foo;',
|
||||||
|
tokens: [
|
||||||
|
{ startIndex: 0, type: 'identifier.js' },
|
||||||
|
{ startIndex: 3, type: 'delimiter.js' }
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
|
||||||
|
[
|
||||||
|
{
|
||||||
|
line: 'foo() { return 1; }',
|
||||||
|
tokens: [
|
||||||
|
{ startIndex: 0, type: 'identifier.js' },
|
||||||
|
{ startIndex: 3, type: 'delimiter.parenthesis.js' },
|
||||||
|
{ startIndex: 5, type: '' },
|
||||||
|
{ startIndex: 6, type: 'delimiter.bracket.js' },
|
||||||
|
{ startIndex: 7, type: '' },
|
||||||
|
{ startIndex: 8, type: 'keyword.js' },
|
||||||
|
{ startIndex: 14, type: '' },
|
||||||
|
{ startIndex: 15, type: 'number.js' },
|
||||||
|
{ startIndex: 16, type: 'delimiter.js' },
|
||||||
|
{ startIndex: 17, type: '' },
|
||||||
|
{ startIndex: 18, type: 'delimiter.bracket.js' }
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
|
||||||
|
[
|
||||||
|
{
|
||||||
|
line: '#foo;',
|
||||||
|
tokens: [
|
||||||
|
{ startIndex: 0, type: 'identifier.js' },
|
||||||
|
{ startIndex: 4, type: 'delimiter.js' }
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
|
||||||
|
[
|
||||||
|
{
|
||||||
|
line: '#foo() { return 1; }',
|
||||||
|
tokens: [
|
||||||
|
{ startIndex: 0, type: 'identifier.js' },
|
||||||
|
{ startIndex: 4, type: 'delimiter.parenthesis.js' },
|
||||||
|
{ startIndex: 6, type: '' },
|
||||||
|
{ startIndex: 7, type: 'delimiter.bracket.js' },
|
||||||
|
{ startIndex: 8, type: '' },
|
||||||
|
{ startIndex: 9, type: 'keyword.js' },
|
||||||
|
{ startIndex: 15, type: '' },
|
||||||
|
{ startIndex: 16, type: 'number.js' },
|
||||||
|
{ startIndex: 17, type: 'delimiter.js' },
|
||||||
|
{ startIndex: 18, type: '' },
|
||||||
|
{ startIndex: 19, type: 'delimiter.bracket.js' }
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
|
||||||
// Comments - single line
|
// Comments - single line
|
||||||
[
|
[
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -39,6 +39,65 @@ testTokenization('typescript', [
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
|
|
||||||
|
// identifiers
|
||||||
|
[
|
||||||
|
{
|
||||||
|
line: 'foo;',
|
||||||
|
tokens: [
|
||||||
|
{ startIndex: 0, type: 'identifier.ts' },
|
||||||
|
{ startIndex: 3, type: 'delimiter.ts' }
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
|
||||||
|
[
|
||||||
|
{
|
||||||
|
line: 'foo() { return 1; }',
|
||||||
|
tokens: [
|
||||||
|
{ startIndex: 0, type: 'identifier.ts' },
|
||||||
|
{ startIndex: 3, type: 'delimiter.parenthesis.ts' },
|
||||||
|
{ startIndex: 5, type: '' },
|
||||||
|
{ startIndex: 6, type: 'delimiter.bracket.ts' },
|
||||||
|
{ startIndex: 7, type: '' },
|
||||||
|
{ startIndex: 8, type: 'keyword.ts' },
|
||||||
|
{ startIndex: 14, type: '' },
|
||||||
|
{ startIndex: 15, type: 'number.ts' },
|
||||||
|
{ startIndex: 16, type: 'delimiter.ts' },
|
||||||
|
{ startIndex: 17, type: '' },
|
||||||
|
{ startIndex: 18, type: 'delimiter.bracket.ts' }
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
|
||||||
|
[
|
||||||
|
{
|
||||||
|
line: '#foo;',
|
||||||
|
tokens: [
|
||||||
|
{ startIndex: 0, type: 'identifier.ts' },
|
||||||
|
{ startIndex: 4, type: 'delimiter.ts' }
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
|
||||||
|
[
|
||||||
|
{
|
||||||
|
line: '#foo() { return 1; }',
|
||||||
|
tokens: [
|
||||||
|
{ startIndex: 0, type: 'identifier.ts' },
|
||||||
|
{ startIndex: 4, type: 'delimiter.parenthesis.ts' },
|
||||||
|
{ startIndex: 6, type: '' },
|
||||||
|
{ startIndex: 7, type: 'delimiter.bracket.ts' },
|
||||||
|
{ startIndex: 8, type: '' },
|
||||||
|
{ startIndex: 9, type: 'keyword.ts' },
|
||||||
|
{ startIndex: 15, type: '' },
|
||||||
|
{ startIndex: 16, type: 'number.ts' },
|
||||||
|
{ startIndex: 17, type: 'delimiter.ts' },
|
||||||
|
{ startIndex: 18, type: '' },
|
||||||
|
{ startIndex: 19, type: 'delimiter.bracket.ts' }
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
|
||||||
// Comments - single line
|
// Comments - single line
|
||||||
[
|
[
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -227,7 +227,7 @@ export const language = {
|
||||||
common: [
|
common: [
|
||||||
// identifiers and keywords
|
// identifiers and keywords
|
||||||
[
|
[
|
||||||
/[a-z_$][\w$]*/,
|
/#?[a-z_$][\w$]*/,
|
||||||
{
|
{
|
||||||
cases: {
|
cases: {
|
||||||
'@keywords': 'keyword',
|
'@keywords': 'keyword',
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue