           name: 'constant.numeric.g-code'
     },
     {
-      comment: 'Ingeger Values: machin function, spindle speed, radius, l, p'
-      match: '\\b([GMSRLPQHVDWC])(\\d+)\\b'
+      comment: 'Machine Function'
+      match: '\\b(M)(\\d+)\\b'
       captures:
         1:
-          name: 'keyword.operator.g-code'
+          name: 'keyword.control.g-code'
         2:
           name: 'constant.numeric.g-code'
     },
     {
-      comment: 'Float Values: feed rate'
-      match: '\\b([FB])(\\d+(?:\\.\\d+)?)\\b'
+      comment: 'Tool call'
+      match: '\\b(T)(\\d+)\\b'
       captures:
         1:
-          name: 'keyword.operator.g-code'
+          name: 'keyword.control.g-code'
         2:
           name: 'constant.numeric.g-code'
     },
     {
-      comment: 'Signed Float Values:'
-      match: '\\b([P])([\\+-]?\\d+(?:\\.\\d+)?)\\b'
-      captures:
-        1:
-          name: 'keyword.operator.g-code'
-        2:
-          name: 'constant.numeric.g-code'
-    },
-    {
-      comment: 'cartesian coordinate'
+      comment: 'axis values'
       match: '\\b([XYZ])([\\+-]?\\d+(?:\\.\\d+)?)\\b'
       captures:
         1:

      name: 'comment.line.g-code'
    },
    {
      comment: 'comment until the end of the line'
      match: ';(.*)$'
      name: 'comment.line.g-code'
    },
    {
      comment: 'comment'
      match: '(\\(.*\\))$'
      name: 'comment.line.g-code'
    },
    {
        comment: 'commented out line'
        match: '^(/N\\d+)\\s+(.*)$'
        name: 'comment.block.g-code'
    },
    {
        comment: 'program meta info'

          name: 'constant.numeric.g-code'
    },
    {
      comment: 'Spindle speed'
      match: '\\b(S)(\\d+)\\b'
      captures:
        1:
          name: 'keyword.operator.g-code'
