llvm/mlir/utils/vscode/cpp-grammar.json

{
  "scopeName": "source.cpp.mlir",
  "injectionSelector": "L:source.cpp -string.quoted.double.cpp -string.quoted.double.raw",
  "patterns": [
    {
      "include": "#mlir-raw-string"
    }
  ],
  "repository": {
    "mlir-raw-string": {
      "begin": "R\"(?i:mlir)(\\()",
      "beginCaptures": {
        "0": {
          "name": "punctuation.definition.string.begin.cpp"
        },
        "1": {
          "name": "mlir.delimeter.raw.string.cpp"
        }
      },
      "end": "\\)(?i:mlir)\"",
      "endCaptures": {
        "0": {
          "name": "punctuation.definition.string.end.cpp"
        },
        "1": {
          "name": "mlir.delimeter.raw.string.cpp"
        }
      },
      "name": "mlir.raw.string.cpp",
      "patterns": [
        {
          "contentName": "source.mlir",
          "begin": "(?!\\G)",
          "end": "(?i)(?=\\)mlir\")",
          "patterns": [
            {
              "include": "source.mlir"
            }
          ]
        }
      ]
    }
  }
}