awk top-level property

Mode awk
final

Implementation

final awk = Mode(
    refs: {},
    name: "Awk",
    keywords: {
      "keyword":
          "BEGIN END if else while do for in break continue delete next nextfile function func exit|10"
    },
    contains: [
      Mode(className: "variable", variants: [
        Mode(begin: "\\\$[\\w\\d#@][\\w\\d_]*"),
        Mode(begin: "\\\$\\{(.*?)\\}")
      ]),
      Mode(className: "string", contains: [
        BACKSLASH_ESCAPE
      ], variants: [
        Mode(begin: "(u|b)?r?'''", end: "'''", relevance: 10),
        Mode(begin: "(u|b)?r?\"\"\"", end: "\"\"\"", relevance: 10),
        Mode(begin: "(u|r|ur)'", end: "'", relevance: 10),
        Mode(begin: "(u|r|ur)\"", end: "\"", relevance: 10),
        Mode(begin: "(b|br)'", end: "'"),
        Mode(begin: "(b|br)\"", end: "\""),
        APOS_STRING_MODE,
        QUOTE_STRING_MODE
      ]),
      REGEXP_MODE,
      HASH_COMMENT_MODE,
      NUMBER_MODE
    ]);