   # 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' }
     }

      { 'include': '#comments' }
      { 'include': '#type_params' }
      {
        'begin': '([\\p{Alpha}_][\\p{Alnum}_]*)'
        'end': '(?=\\{)'
        'beginCaptures': {
          '1': { 'name': 'entity.name.type.rust' }

  # Function definition
  {
    'comment': 'Function definition'
    'begin': '\\b(fn)\\s+([\\p{Alpha}_][\\w]*)'
    'end': '(?=[\\{;])'
    'beginCaptures': {
      '1': { 'name': 'keyword.other.fn.rust' }
