       "patterns": [
         {
           "applyEndPatternLast": 1,
-          "begin": "(?:\\s+|,)(?:(key|on(?:-?[a-zA-Z0-9_$]+)+|no-update(?:-body)?(?:-if)?)|([a-zA-Z0-9_$]+(?:-?[a-zA-Z0-9_$]+)*))(:[a-zA-Z0-9_$]+(?:-?[a-zA-Z_$]+)*)?",
+          "begin": "(?:\\s+|,)(?:(key|on[a-zA-Z0-9_$-]+|no-update(?:-body)?(?:-if)?)|([a-zA-Z0-9_$][a-zA-Z0-9_$-]*))(:[a-zA-Z0-9_$][a-zA-Z0-9_$-]*)?",
           "beginCaptures": {
             "1": {
               "name": "support.type.attribute-name.marko"

        },
        {
          "captures": {
            "1": {
              "patterns": [
                {
                  "comment": "Core tag.",

        },
        {
          "comment": "Shorthand class or ID attribute",
          "match": "[#.][a-zA-Z0-9_$-]*",
          "name": "entity.other.attribute-name.marko"
        },
        {
