Preliminary work on data and holes

This commit is contained in:
2024-07-06 14:23:41 -04:00
parent b9f921ab3b
commit 46ddbc1f91
17 changed files with 311 additions and 169 deletions

View File

@@ -1,9 +1,14 @@
{
"name": "newt-vscode",
"publisher": "dunhamsteve",
"displayName": "newt-vscode",
"description": "newt language support",
"version": "0.0.1",
"license": "MIT",
"repository": {
"type": "git",
"url": "https://github.com/dunhamsteve/newt"
},
"engines": {
"vscode": "^1.91.0"
},
@@ -11,27 +16,35 @@
"Programming Languages"
],
"activationEvents": [
"onLanguage:newt"
],
"main": "./dist/extension.js",
"contributes": {
"languages": [{
"id": "newt",
"aliases": ["newt", "newt"],
"extensions": ["newt"],
"configuration": "./language-configuration.json"
}],
"grammars": [{
"language": "newt",
"scopeName": "source.newt",
"path": "./syntaxes/newt.tmLanguage.json"
}],
"languages": [
{
"id": "newt",
"aliases": [
"newt"
],
"extensions": [
"newt"
],
"configuration": "./language-configuration.json"
}
],
"grammars": [
{
"language": "newt",
"scopeName": "source.newt",
"path": "./syntaxes/newt.tmLanguage.json"
}
],
"commands": [
{
"command": "newt-vscode.check",
"title": "Check newt file"
}
]
},
"scripts": {
"vscode:prepublish": "npm run package",

View File

@@ -3,46 +3,20 @@
"name": "newt",
"scopeName": "source.newt",
"patterns": [
{
"name": "comment.block.newt",
"begin": "/-",
"end": "`-/",
"contentName": "comment.block.newt"
},
{
{
"name": "comment.block.newt",
"begin": "/-",
"end": "-/",
"contentName": "comment.block.newt"
},
{
"name": "comment.line.newt",
"begin": "--",
"end": "\\n"
},
{
"name": "variable.other.constant",
"match": "([\\w]+)\\."
},
{
"name": "entity.name.variable",
"match": "\\.([\\w]+)"
},
{
"name": "punctuation",
"match": ":|=>|\\"
},
{
"name": "keyword.other.operator.newt",
"match": "[\\p{Math}:!#$%&*+.,/<=>?@\\^|-]+"
},
{
"name": "keyword.command.newt",
"match": "\\b(module)\\b"
},
{
"name": "keyword.newt",
"match": "\\b(data)\\b"
},
// {
// "name": "variable.other.constant.newt",
// "match": "\\b(Type|Id|refl|sym|Gel|ungel)\\b",
// "comment": "These are in the emacs mode, but some are user defined"
// }
"match": "\\b(data|where|case|of|let|in|U|module)\\b"
}
]
}