   # Function and macro calls
   {
     'comment': 'Invokation of a macro'
-    'match': '\\b([a-zA-Z_][a-zA-Z0-9_]*\\!)\\s*[({\\[]'
+    'match': '\\b([\\p{Alpha}_][\\w]*\\!)\\s*[({\\[]'
     'captures': {
       '1': { 'name': 'entity.name.function.macro.rust' }
     }
   }
   {
     'comment': 'Function call'
-    'match': '\\b([a-zA-Z_][a-zA-Z0-9_]*)\\s*(?=\\()'
+    'match': '\\b([\\p{Alpha}_][\\w]*)\\s*(?=\\()'
     'captures': {
       '1': { 'name': 'entity.name.function.rust' }
     }

  'lifetime': {
    'comment': 'Named lifetime'
    'name': 'storage.modifier.lifetime.rust'
    'match': '\'([a-zA-Z_][a-zA-Z0-9_]*)\\b'
    'captures': {
      '1': { 'name': 'entity.name.lifetime.rust' }
    }
  }
  'ref_lifetime': {
    'comment': 'Reference with named lifetime'
    'match': '&(\'([a-zA-Z_][a-zA-Z0-9_]*))\\b'
    'captures': {
      '1': { 'name': 'storage.modifier.lifetime.rust' }
      '2': { 'name': 'entity.name.lifetime.rust' }

          { 'include': '#where' }
          {
            'name': ''
            'match': '\\b(for)\\s+([\\p{Alpha}_][\\w]*)'
            'captures': {
              '1': { 'name': 'storage.type.rust' }
              #'2': { 'name': 'entity.name.type.rust' }
