VSCode 自定义语言扩展 - 关键字可以不区分大小写吗

VSCode custom language extension - Can keywords not be case sensitive

我正在创建一个自定义语言扩展来为一种古怪的、很少使用的语言着色语法。

在这种特定语言中,关键字和命令不区分大小写 - 但我创建的语言扩展似乎区分大小写。

这是我称为“命令”的组的示例:

"commands": {
  "patterns": [
    {
      "name": "keyword.control.wbt",
      "match": "\b(if|IF|If|iF|then|else|elseif|endif|goto|gosub|exit|return|for|next|while|endwhile|break|drop|errormode|continue|switch|case)\b"
    }
  ]
},

您会注意到我为“if”的每个可能的大写创建了条目,这允许 IF 和 If 在我用来测试的源代码中着色。

有没有办法告诉 VSCode 忽略大写?

您是否尝试过使用 RegEX 模式使其不区分大小写?对于您的示例,请尝试:

"commands": {
  "patterns": [
    {
      "name": "keyword.control.wbt",
      "match": "(?i)\b(if|then|else|elseif|endif|goto|gosub|exit|return|for|next|while|endwhile|break|drop|errormode|continue|switch|case)\b"
    }
  ]
},

请注意,我删除了 if

的其他变体