0

作为一个练习,我正在构建一种类似汇编的语言(但通过数字),所以我想为它制作自己的语法。但是语法随机停止工作。这是 tree-sitter-dasm.cson(dasm 是临时名称)。

有时它可以工作,但一段时间后它会停止工作(即使我没有改变任何东西)。

这是给我带来麻烦的代码:

'instruction' : [
    { match: /^[#]/, scopes: 'style-instruction-instructioncall' },
    { match: /^\//, scopes: 'style-instruction-functioncall' }
  ],

  'parameters, instruction > parameters' : [
    { match: /^\$/, scopes: 'style-parameter-variable' },
    { match: /^\%/, scopes: 'style-parameter-register' },
    { match: /^[&]/, scopes: 'style-parameter-numberref' },
    { match: /^\^/, scopes: 'style-parameter-subroutine_param' },
    { match: /^\@/, scopes: 'style-lable' },
  ],

我检查了我正在使用的自定义解析器,它按预期工作。

package.json 配置为:

{
  "version": "0.0.0",
  "name": "dasm",
  "description": "Dark/Atom Assembly Language",
  "styles": "styles/style.less",
  "devDependencies": {
    "electron": "^9.4.4",
    "electron-rebuild": "^2.3.5"
  },
  "dependencies": {
    "tree-sitter-dasm": "0.0.5"
  },
  "engines": {
    "atom" : ">=1.0.0 <2.0.0"
  }
}

示例文件: 错误突出显示的文件

4

0 回答 0