diff options
Diffstat (limited to 'atk16-syntax')
| -rw-r--r-- | atk16-syntax/atk16-syntax-0.0.1.vsix | bin | 4383 -> 4351 bytes | |||
| -rw-r--r-- | atk16-syntax/extension.js | 16 | ||||
| -rw-r--r-- | atk16-syntax/package.json | 2 | ||||
| -rw-r--r-- | atk16-syntax/syntaxes/atk16.tmLanguage.json | 20 |
4 files changed, 16 insertions, 22 deletions
diff --git a/atk16-syntax/atk16-syntax-0.0.1.vsix b/atk16-syntax/atk16-syntax-0.0.1.vsix Binary files differindex 342049e..253d326 100644 --- a/atk16-syntax/atk16-syntax-0.0.1.vsix +++ b/atk16-syntax/atk16-syntax-0.0.1.vsix diff --git a/atk16-syntax/extension.js b/atk16-syntax/extension.js index 2c8e294..26b4d9d 100644 --- a/atk16-syntax/extension.js +++ b/atk16-syntax/extension.js @@ -85,9 +85,9 @@ class ATK16DefinitionProvider { } } else { const labelText = document.getText(range); - let labelLocation = await findLabelInDocument(document, labelText); - if (labelLocation) { - return labelLocation; + let definitionLocation = await findDefinitionInDocument(document, labelText); + if (definitionLocation) { + return definitionLocation; } // Search for labels in included files @@ -104,9 +104,9 @@ class ATK16DefinitionProvider { const includedDocument = await vscode.workspace.openTextDocument( includedFilePath ); - labelLocation = await findLabelInDocument(includedDocument, labelText); - if (labelLocation) { - return labelLocation; + definitionLocation = await findDefinitionInDocument(includedDocument, labelText); + if (definitionLocation) { + return definitionLocation; } } } @@ -117,10 +117,10 @@ class ATK16DefinitionProvider { } } -async function findLabelInDocument(document, labelText) { +async function findDefinitionInDocument(document, labelText) { for (let i = 0; i < document.lineCount; i++) { const line = document.lineAt(i); - if (line.text.includes(`@label ${labelText}`)) { + if (line.text.includes(`@label ${labelText}`) || line.text.includes(`@let ${labelText}`)) { return new vscode.Location(document.uri, line.range.start); } } diff --git a/atk16-syntax/package.json b/atk16-syntax/package.json index 5fd48e6..6a64b6c 100644 --- a/atk16-syntax/package.json +++ b/atk16-syntax/package.json @@ -4,6 +4,8 @@ "description": "Syntax highlighting and support for ATK16 assembly language", "version": "0.0.1", "publisher": "JanTuomi", + "license": "MIT", + "repository": "", "engines": { "vscode": "^1.60.0" }, diff --git a/atk16-syntax/syntaxes/atk16.tmLanguage.json b/atk16-syntax/syntaxes/atk16.tmLanguage.json index b12f596..6dcf0ea 100644 --- a/atk16-syntax/syntaxes/atk16.tmLanguage.json +++ b/atk16-syntax/syntaxes/atk16.tmLanguage.json @@ -16,31 +16,23 @@ }, { "name": "variable.other.register.atk16", - "match": "R\\w+" + "match": "\\bR[A-H]\\b" }, { "name": "constant.numeric.hex.atk16", - "match": "0x[0-9a-fA-F]+" + "match": "\\b0x[0-9a-fA-F]+\\b" }, { "name": "constant.numeric.binary.atk16", - "match": "0b[01]+" + "match": "\\b0b[01]+\\b" }, { "name": "constant.numeric.decimal.atk16", - "match": "[0-9]+" + "match": "\\b[0-9]+\\b" }, { - "name": "entity.name.function.atk16", - "match": "\\w+(?=\\s*\\()" - }, - { - "name": "entity.name.label.atk16", - "match": "\\w+(?=\\s*:)" - }, - { - "name": "keyword.control.instruction.atk16", - "match": "^\\s+[a-zA-Z]+" + "name": "keyword.control.symbol.atk16", + "match": "^\\s+[a-zA-Z_-]+" }, { "name": "constant.language.flag.atk16", |
