1b6cee71dSXin LI 2b6cee71dSXin LI#------------------------------------------------------------------------------ 3*a4d6d3b8SXin LI# $File: python,v 1.44 2021/10/20 11:15:35 christos Exp $ 4b6cee71dSXin LI# python: file(1) magic for python 5b6cee71dSXin LI# 6b6cee71dSXin LI# Outlook puts """ too for urgent messages 7b6cee71dSXin LI# From: David Necas <yeti@physics.muni.cz> 8b6cee71dSXin LI# often the module starts with a multiline string 9b6cee71dSXin LI0 string/t """ Python script text executable 10d38c30c0SXin LI# MAGIC as specified in Python/import.c (1.0 to 3.7) 11*a4d6d3b8SXin LI# and in Lib/importlib/_bootstrap_external.py (3.5+) 12a5d223e6SXin LI# two bytes of magic followed by "\r\n" in little endian order 13d38c30c0SXin LI0 belong 0x02099900 python 1.0 byte-compiled 1443a5ec4eSXin LI!:mime application/x-bytecode.python 15d38c30c0SXin LI0 belong 0x03099900 python 1.1/1.2 byte-compiled 1643a5ec4eSXin LI!:mime application/x-bytecode.python 17d38c30c0SXin LI0 belong 0x892e0d0a python 1.3 byte-compiled 1843a5ec4eSXin LI!:mime application/x-bytecode.python 19d38c30c0SXin LI0 belong 0x04170d0a python 1.4 byte-compiled 2043a5ec4eSXin LI!:mime application/x-bytecode.python 21d38c30c0SXin LI0 belong 0x994e0d0a python 1.5 byte-compiled 2243a5ec4eSXin LI!:mime application/x-bytecode.python 23d38c30c0SXin LI0 belong 0xfcc40d0a python 1.6 byte-compiled 2443a5ec4eSXin LI!:mime application/x-bytecode.python 25d38c30c0SXin LI0 belong 0xfdc40d0a python 1.6 byte-compiled 2643a5ec4eSXin LI!:mime application/x-bytecode.python 27b6cee71dSXin LI0 belong 0x87c60d0a python 2.0 byte-compiled 2843a5ec4eSXin LI!:mime application/x-bytecode.python 29d38c30c0SXin LI0 belong 0x88c60d0a python 2.0 byte-compiled 3043a5ec4eSXin LI!:mime application/x-bytecode.python 31b6cee71dSXin LI0 belong 0x2aeb0d0a python 2.1 byte-compiled 3243a5ec4eSXin LI!:mime application/x-bytecode.python 33d38c30c0SXin LI0 belong 0x2beb0d0a python 2.1 byte-compiled 3443a5ec4eSXin LI!:mime application/x-bytecode.python 35b6cee71dSXin LI0 belong 0x2ded0d0a python 2.2 byte-compiled 3643a5ec4eSXin LI!:mime application/x-bytecode.python 37d38c30c0SXin LI0 belong 0x2eed0d0a python 2.2 byte-compiled 3843a5ec4eSXin LI!:mime application/x-bytecode.python 39b6cee71dSXin LI0 belong 0x3bf20d0a python 2.3 byte-compiled 4043a5ec4eSXin LI!:mime application/x-bytecode.python 41d38c30c0SXin LI0 belong 0x3cf20d0a python 2.3 byte-compiled 4243a5ec4eSXin LI!:mime application/x-bytecode.python 432726a701SXin LI0 belong 0x45f20d0a python 2.3 byte-compiled 4443a5ec4eSXin LI!:mime application/x-bytecode.python 452726a701SXin LI0 belong 0x59f20d0a python 2.4 byte-compiled 4643a5ec4eSXin LI!:mime application/x-bytecode.python 472726a701SXin LI0 belong 0x63f20d0a python 2.4 byte-compiled 4843a5ec4eSXin LI!:mime application/x-bytecode.python 49b6cee71dSXin LI0 belong 0x6df20d0a python 2.4 byte-compiled 5043a5ec4eSXin LI!:mime application/x-bytecode.python 51d38c30c0SXin LI0 belong 0x6ef20d0a python 2.4 byte-compiled 5243a5ec4eSXin LI!:mime application/x-bytecode.python 532726a701SXin LI0 belong 0x77f20d0a python 2.5 byte-compiled 5443a5ec4eSXin LI!:mime application/x-bytecode.python 552726a701SXin LI0 belong 0x81f20d0a python 2.5 byte-compiled 5643a5ec4eSXin LI!:mime application/x-bytecode.python 572726a701SXin LI0 belong 0x8bf20d0a python 2.5 byte-compiled 5843a5ec4eSXin LI!:mime application/x-bytecode.python 592726a701SXin LI0 belong 0x8cf20d0a python 2.5 byte-compiled 6043a5ec4eSXin LI!:mime application/x-bytecode.python 612726a701SXin LI0 belong 0x95f20d0a python 2.5 byte-compiled 6243a5ec4eSXin LI!:mime application/x-bytecode.python 632726a701SXin LI0 belong 0x9ff20d0a python 2.5 byte-compiled 6443a5ec4eSXin LI!:mime application/x-bytecode.python 652726a701SXin LI0 belong 0xa9f20d0a python 2.5 byte-compiled 6643a5ec4eSXin LI!:mime application/x-bytecode.python 67b6cee71dSXin LI0 belong 0xb3f20d0a python 2.5 byte-compiled 6843a5ec4eSXin LI!:mime application/x-bytecode.python 69d38c30c0SXin LI0 belong 0xb4f20d0a python 2.5 byte-compiled 7043a5ec4eSXin LI!:mime application/x-bytecode.python 712726a701SXin LI0 belong 0xc7f20d0a python 2.6 byte-compiled 7243a5ec4eSXin LI!:mime application/x-bytecode.python 73b6cee71dSXin LI0 belong 0xd1f20d0a python 2.6 byte-compiled 7443a5ec4eSXin LI!:mime application/x-bytecode.python 75d38c30c0SXin LI0 belong 0xd2f20d0a python 2.6 byte-compiled 7643a5ec4eSXin LI!:mime application/x-bytecode.python 772726a701SXin LI0 belong 0xdbf20d0a python 2.7 byte-compiled 7843a5ec4eSXin LI!:mime application/x-bytecode.python 792726a701SXin LI0 belong 0xe5f20d0a python 2.7 byte-compiled 8043a5ec4eSXin LI!:mime application/x-bytecode.python 812726a701SXin LI0 belong 0xeff20d0a python 2.7 byte-compiled 8243a5ec4eSXin LI!:mime application/x-bytecode.python 832726a701SXin LI0 belong 0xf9f20d0a python 2.7 byte-compiled 8443a5ec4eSXin LI!:mime application/x-bytecode.python 85b6cee71dSXin LI0 belong 0x03f30d0a python 2.7 byte-compiled 8643a5ec4eSXin LI!:mime application/x-bytecode.python 87d38c30c0SXin LI0 belong 0x04f30d0a python 2.7 byte-compiled 8843a5ec4eSXin LI!:mime application/x-bytecode.python 892726a701SXin LI0 belong 0xb80b0d0a python 3.0 byte-compiled 9043a5ec4eSXin LI!:mime application/x-bytecode.python 912726a701SXin LI0 belong 0xc20b0d0a python 3.0 byte-compiled 9243a5ec4eSXin LI!:mime application/x-bytecode.python 932726a701SXin LI0 belong 0xcc0b0d0a python 3.0 byte-compiled 9443a5ec4eSXin LI!:mime application/x-bytecode.python 952726a701SXin LI0 belong 0xd60b0d0a python 3.0 byte-compiled 9643a5ec4eSXin LI!:mime application/x-bytecode.python 972726a701SXin LI0 belong 0xe00b0d0a python 3.0 byte-compiled 9843a5ec4eSXin LI!:mime application/x-bytecode.python 992726a701SXin LI0 belong 0xea0b0d0a python 3.0 byte-compiled 10043a5ec4eSXin LI!:mime application/x-bytecode.python 1012726a701SXin LI0 belong 0xf40b0d0a python 3.0 byte-compiled 10243a5ec4eSXin LI!:mime application/x-bytecode.python 1032726a701SXin LI0 belong 0xf50b0d0a python 3.0 byte-compiled 10443a5ec4eSXin LI!:mime application/x-bytecode.python 1052726a701SXin LI0 belong 0xff0b0d0a python 3.0 byte-compiled 10643a5ec4eSXin LI!:mime application/x-bytecode.python 1072726a701SXin LI0 belong 0x090c0d0a python 3.0 byte-compiled 10843a5ec4eSXin LI!:mime application/x-bytecode.python 1092726a701SXin LI0 belong 0x130c0d0a python 3.0 byte-compiled 11043a5ec4eSXin LI!:mime application/x-bytecode.python 1112726a701SXin LI0 belong 0x1d0c0d0a python 3.0 byte-compiled 11243a5ec4eSXin LI!:mime application/x-bytecode.python 1132726a701SXin LI0 belong 0x1f0c0d0a python 3.0 byte-compiled 11443a5ec4eSXin LI!:mime application/x-bytecode.python 1152726a701SXin LI0 belong 0x270c0d0a python 3.0 byte-compiled 11643a5ec4eSXin LI!:mime application/x-bytecode.python 117b6cee71dSXin LI0 belong 0x3b0c0d0a python 3.0 byte-compiled 11843a5ec4eSXin LI!:mime application/x-bytecode.python 1192726a701SXin LI0 belong 0x450c0d0a python 3.1 byte-compiled 12043a5ec4eSXin LI!:mime application/x-bytecode.python 121b6cee71dSXin LI0 belong 0x4f0c0d0a python 3.1 byte-compiled 12243a5ec4eSXin LI!:mime application/x-bytecode.python 1232726a701SXin LI0 belong 0x580c0d0a python 3.2 byte-compiled 12443a5ec4eSXin LI!:mime application/x-bytecode.python 1252726a701SXin LI0 belong 0x620c0d0a python 3.2 byte-compiled 12643a5ec4eSXin LI!:mime application/x-bytecode.python 127b6cee71dSXin LI0 belong 0x6c0c0d0a python 3.2 byte-compiled 12843a5ec4eSXin LI!:mime application/x-bytecode.python 1292726a701SXin LI0 belong 0x760c0d0a python 3.3 byte-compiled 13043a5ec4eSXin LI!:mime application/x-bytecode.python 1312726a701SXin LI0 belong 0x800c0d0a python 3.3 byte-compiled 13243a5ec4eSXin LI!:mime application/x-bytecode.python 1332726a701SXin LI0 belong 0x8a0c0d0a python 3.3 byte-compiled 13443a5ec4eSXin LI!:mime application/x-bytecode.python 1352726a701SXin LI0 belong 0x940c0d0a python 3.3 byte-compiled 13643a5ec4eSXin LI!:mime application/x-bytecode.python 137b6cee71dSXin LI0 belong 0x9e0c0d0a python 3.3 byte-compiled 13843a5ec4eSXin LI!:mime application/x-bytecode.python 1392726a701SXin LI0 belong 0xb20c0d0a python 3.4 byte-compiled 14043a5ec4eSXin LI!:mime application/x-bytecode.python 1412726a701SXin LI0 belong 0xbc0c0d0a python 3.4 byte-compiled 14243a5ec4eSXin LI!:mime application/x-bytecode.python 1432726a701SXin LI0 belong 0xc60c0d0a python 3.4 byte-compiled 14443a5ec4eSXin LI!:mime application/x-bytecode.python 1452726a701SXin LI0 belong 0xd00c0d0a python 3.4 byte-compiled 14643a5ec4eSXin LI!:mime application/x-bytecode.python 1472726a701SXin LI0 belong 0xda0c0d0a python 3.4 byte-compiled 14843a5ec4eSXin LI!:mime application/x-bytecode.python 1492726a701SXin LI0 belong 0xe40c0d0a python 3.4 byte-compiled 15043a5ec4eSXin LI!:mime application/x-bytecode.python 151c2931133SXin LI0 belong 0xee0c0d0a python 3.4 byte-compiled 15243a5ec4eSXin LI!:mime application/x-bytecode.python 1532726a701SXin LI0 belong 0xf80c0d0a python 3.5.1- byte-compiled 15443a5ec4eSXin LI!:mime application/x-bytecode.python 1552726a701SXin LI0 belong 0x020d0d0a python 3.5.1- byte-compiled 15643a5ec4eSXin LI!:mime application/x-bytecode.python 1572726a701SXin LI0 belong 0x0c0d0d0a python 3.5.1- byte-compiled 15843a5ec4eSXin LI!:mime application/x-bytecode.python 1592726a701SXin LI0 belong 0x160d0d0a python 3.5.1- byte-compiled 16043a5ec4eSXin LI!:mime application/x-bytecode.python 1612726a701SXin LI0 belong 0x170d0d0a python 3.5.2+ byte-compiled 16243a5ec4eSXin LI!:mime application/x-bytecode.python 1632726a701SXin LI0 belong 0x200d0d0a python 3.6 byte-compiled 16443a5ec4eSXin LI!:mime application/x-bytecode.python 1652726a701SXin LI0 belong 0x210d0d0a python 3.6 byte-compiled 16643a5ec4eSXin LI!:mime application/x-bytecode.python 1672726a701SXin LI0 belong 0x2a0d0d0a python 3.6 byte-compiled 16843a5ec4eSXin LI!:mime application/x-bytecode.python 1692726a701SXin LI0 belong 0x2b0d0d0a python 3.6 byte-compiled 17043a5ec4eSXin LI!:mime application/x-bytecode.python 1712726a701SXin LI0 belong 0x2c0d0d0a python 3.6 byte-compiled 17243a5ec4eSXin LI!:mime application/x-bytecode.python 1732726a701SXin LI0 belong 0x2d0d0d0a python 3.6 byte-compiled 17443a5ec4eSXin LI!:mime application/x-bytecode.python 1752726a701SXin LI0 belong 0x2f0d0d0a python 3.6 byte-compiled 17643a5ec4eSXin LI!:mime application/x-bytecode.python 1772726a701SXin LI0 belong 0x300d0d0a python 3.6 byte-compiled 17843a5ec4eSXin LI!:mime application/x-bytecode.python 1792726a701SXin LI0 belong 0x310d0d0a python 3.6 byte-compiled 18043a5ec4eSXin LI!:mime application/x-bytecode.python 1812726a701SXin LI0 belong 0x320d0d0a python 3.6 byte-compiled 18243a5ec4eSXin LI!:mime application/x-bytecode.python 18340427ccaSGordon Tetlow0 belong 0x330d0d0a python 3.6 byte-compiled 18443a5ec4eSXin LI!:mime application/x-bytecode.python 1852726a701SXin LI0 belong 0x3e0d0d0a python 3.7 byte-compiled 18643a5ec4eSXin LI!:mime application/x-bytecode.python 1872726a701SXin LI0 belong 0x3f0d0d0a python 3.7 byte-compiled 18843a5ec4eSXin LI!:mime application/x-bytecode.python 1892726a701SXin LI0 belong 0x400d0d0a python 3.7 byte-compiled 19043a5ec4eSXin LI!:mime application/x-bytecode.python 1912726a701SXin LI0 belong 0x410d0d0a python 3.7 byte-compiled 19243a5ec4eSXin LI!:mime application/x-bytecode.python 19348c779cdSXin LI0 belong 0x420d0d0a python 3.7 byte-compiled 19443a5ec4eSXin LI!:mime application/x-bytecode.python 1952726a701SXin LI0 belong 0x480d0d0a python 3.8 byte-compiled 19643a5ec4eSXin LI!:mime application/x-bytecode.python 1972726a701SXin LI0 belong 0x490d0d0a python 3.8 byte-compiled 19843a5ec4eSXin LI!:mime application/x-bytecode.python 1992726a701SXin LI0 belong 0x520d0d0a python 3.8 byte-compiled 20043a5ec4eSXin LI!:mime application/x-bytecode.python 2012726a701SXin LI0 belong 0x530d0d0a python 3.8 byte-compiled 20243a5ec4eSXin LI!:mime application/x-bytecode.python 2032726a701SXin LI0 belong 0x540d0d0a python 3.8 byte-compiled 20443a5ec4eSXin LI!:mime application/x-bytecode.python 2052726a701SXin LI0 belong 0x550d0d0a python 3.8 byte-compiled 20643a5ec4eSXin LI!:mime application/x-bytecode.python 2072726a701SXin LI0 belong 0x5c0d0d0a python 3.9 byte-compiled 20843a5ec4eSXin LI!:mime application/x-bytecode.python 2092726a701SXin LI0 belong 0x5d0d0d0a python 3.9 byte-compiled 21043a5ec4eSXin LI!:mime application/x-bytecode.python 2112726a701SXin LI0 belong 0x5e0d0d0a python 3.9 byte-compiled 21243a5ec4eSXin LI!:mime application/x-bytecode.python 2132726a701SXin LI0 belong 0x5f0d0d0a python 3.9 byte-compiled 21443a5ec4eSXin LI!:mime application/x-bytecode.python 2152726a701SXin LI0 belong 0x600d0d0a python 3.9 byte-compiled 21643a5ec4eSXin LI!:mime application/x-bytecode.python 2172726a701SXin LI0 belong 0x610d0d0a python 3.9 byte-compiled 21843a5ec4eSXin LI!:mime application/x-bytecode.python 219*a4d6d3b8SXin LI0 belong 0x660d0d0a python 3.10 byte-compiled 220*a4d6d3b8SXin LI!:mime application/x-bytecode.python 221*a4d6d3b8SXin LI0 belong 0x670d0d0a python 3.10 byte-compiled 222*a4d6d3b8SXin LI!:mime application/x-bytecode.python 223*a4d6d3b8SXin LI0 belong 0x680d0d0a python 3.10 byte-compiled 224*a4d6d3b8SXin LI!:mime application/x-bytecode.python 225*a4d6d3b8SXin LI0 belong 0x690d0d0a python 3.10 byte-compiled 226*a4d6d3b8SXin LI!:mime application/x-bytecode.python 227*a4d6d3b8SXin LI0 belong 0x6a0d0d0a python 3.10 byte-compiled 228*a4d6d3b8SXin LI!:mime application/x-bytecode.python 229*a4d6d3b8SXin LI0 belong 0x6b0d0d0a python 3.10 byte-compiled 230*a4d6d3b8SXin LI!:mime application/x-bytecode.python 231*a4d6d3b8SXin LI0 belong 0x6c0d0d0a python 3.10 byte-compiled 232*a4d6d3b8SXin LI!:mime application/x-bytecode.python 233*a4d6d3b8SXin LI0 belong 0x6d0d0d0a python 3.10 byte-compiled 234*a4d6d3b8SXin LI!:mime application/x-bytecode.python 235*a4d6d3b8SXin LI0 belong 0x6e0d0d0a python 3.10 byte-compiled 236*a4d6d3b8SXin LI!:mime application/x-bytecode.python 237*a4d6d3b8SXin LI0 belong 0x6f0d0d0a python 3.10 byte-compiled 238*a4d6d3b8SXin LI!:mime application/x-bytecode.python 239*a4d6d3b8SXin LI0 belong 0x7a0d0d0a python 3.11 byte-compiled 240*a4d6d3b8SXin LI!:mime application/x-bytecode.python 241*a4d6d3b8SXin LI0 belong 0x7b0d0d0a python 3.11 byte-compiled 242*a4d6d3b8SXin LI!:mime application/x-bytecode.python 243*a4d6d3b8SXin LI0 belong 0x7c0d0d0a python 3.11 byte-compiled 244*a4d6d3b8SXin LI!:mime application/x-bytecode.python 245*a4d6d3b8SXin LI0 belong 0x7d0d0d0a python 3.11 byte-compiled 246*a4d6d3b8SXin LI!:mime application/x-bytecode.python 247*a4d6d3b8SXin LI0 belong 0x7e0d0d0a python 3.11 byte-compiled 248*a4d6d3b8SXin LI!:mime application/x-bytecode.python 249*a4d6d3b8SXin LI0 belong 0x7f0d0d0a python 3.11 byte-compiled 250*a4d6d3b8SXin LI!:mime application/x-bytecode.python 251*a4d6d3b8SXin LI0 belong 0x800d0d0a python 3.11 byte-compiled 252*a4d6d3b8SXin LI!:mime application/x-bytecode.python 253*a4d6d3b8SXin LI0 belong 0x810d0d0a python 3.11 byte-compiled 254*a4d6d3b8SXin LI!:mime application/x-bytecode.python 255*a4d6d3b8SXin LI0 belong 0x820d0d0a python 3.11 byte-compiled 256*a4d6d3b8SXin LI!:mime application/x-bytecode.python 257*a4d6d3b8SXin LI0 belong 0x830d0d0a python 3.11 byte-compiled 258*a4d6d3b8SXin LI!:mime application/x-bytecode.python 259*a4d6d3b8SXin LI0 belong 0x840d0d0a python 3.11 byte-compiled 260*a4d6d3b8SXin LI!:mime application/x-bytecode.python 261*a4d6d3b8SXin LI0 belong 0x850d0d0a python 3.11 byte-compiled 262*a4d6d3b8SXin LI!:mime application/x-bytecode.python 26340427ccaSGordon Tetlow 2642726a701SXin LI0 search/1/w #!\040/usr/bin/python Python script text executable 2653e41d09dSXin LI!:strength + 15 2662726a701SXin LI!:mime text/x-script.python 2672726a701SXin LI0 search/1/w #!\040/usr/local/bin/python Python script text executable 2683e41d09dSXin LI!:strength + 15 2692726a701SXin LI!:mime text/x-script.python 2702726a701SXin LI0 search/10/w #!\040/usr/bin/env\040python Python script text executable 2713e41d09dSXin LI!:strength + 15 2722726a701SXin LI!:mime text/x-script.python 273b6cee71dSXin LI 274b6cee71dSXin LI 275b6cee71dSXin LI# from module.submodule import func1, func2 27648c779cdSXin LI0 search/8192 import 2772726a701SXin LI>0 regex \^from[\040\t]+([A-Za-z0-9_]|\\.)+[\040\t]+import.*$ Python script text executable 27840427ccaSGordon Tetlow!:strength + 15 2792726a701SXin LI!:mime text/x-script.python 280b6cee71dSXin LI 281b6cee71dSXin LI# def __init__ (self, ...): 282b6cee71dSXin LI0 search/4096 def\ __init__ 283b6cee71dSXin LI>&0 search/64 self Python script text executable 28440427ccaSGordon Tetlow!:strength + 15 2852726a701SXin LI!:mime text/x-script.python 28640427ccaSGordon Tetlow 28740427ccaSGordon Tetlow# if __name__ == "__main__": 28840427ccaSGordon Tetlow0 search/4096 if\ __name__ 28940427ccaSGordon Tetlow>&0 search/64 '__main__' Python script text executable 29040427ccaSGordon Tetlow>&0 search/64 "__main__" Python script text executable 29140427ccaSGordon Tetlow!:strength + 15 2922726a701SXin LI!:mime text/x-script.python 29340427ccaSGordon Tetlow 29440427ccaSGordon Tetlow# import module [as abrev] 29548c779cdSXin LI0 search/8192 import 29648c779cdSXin LI>0 regex \^import\ [_[:alpha:]]+\ as\ [[:alpha:]][[:space:]]*$ Python script text executable 2972726a701SXin LI!:mime text/x-script.python 298b6cee71dSXin LI 299b6cee71dSXin LI# comments 300b6cee71dSXin LI#0 search/4096 ''' 301b6cee71dSXin LI#>&0 regex .*'''$ Python script text executable 3022726a701SXin LI#!:mime text/x-script.python 303b6cee71dSXin LI 304b6cee71dSXin LI#0 search/4096 """ 305b6cee71dSXin LI#>&0 regex .*"""$ Python script text executable 3062726a701SXin LI#!:mime text/x-script.python 307b6cee71dSXin LI 308b6cee71dSXin LI# try: 309b6cee71dSXin LI# except: or finally: 310b6cee71dSXin LI# block 311b6cee71dSXin LI0 search/4096 try: 31240427ccaSGordon Tetlow>&0 regex \^[[:space:]]*except.*:$ Python script text executable 31340427ccaSGordon Tetlow!:strength + 15 3142726a701SXin LI!:mime text/x-script.python 315b6cee71dSXin LI>&0 search/4096 finally: Python script text executable 3162726a701SXin LI!:mime text/x-script.python 317b6cee71dSXin LI 31840427ccaSGordon Tetlow# class name[(base classes,)]: [pass] 31948c779cdSXin LI0 search/8192 class 32048c779cdSXin LI>0 regex \^class\ [_[:alpha:]]+(\\(.*\\))?(\ )*:([\ \t]+pass)?$ Python script text executable 32140427ccaSGordon Tetlow!:strength + 15 3222726a701SXin LI!:mime text/x-script.python 32340427ccaSGordon Tetlow 32440427ccaSGordon Tetlow# def name(*args, **kwargs): 32548c779cdSXin LI0 search/8192 def\ 32648c779cdSXin LI>0 regex \^[[:space:]]{0,50}def\ {1,50}[_a-zA-Z]{1,100} 32748c779cdSXin LI>>&0 regex \\(([[:alpha:]*_,\ ]){0,255}\\):$ Python script text executable 32840427ccaSGordon Tetlow!:strength + 15 3292726a701SXin LI!:mime text/x-script.python 3302726a701SXin LI 3312726a701SXin LI# https://numpy.org/devdocs/reference/generated/numpy.lib.format.html 3322726a701SXin LI0 string \223NUMPY NumPy data file 3332726a701SXin LI!:mime application/x-numpy-data 3342726a701SXin LI>6 byte x \b, version %d 3352726a701SXin LI>7 byte x \b.%d 3362726a701SXin LI#>8 leshort x \b, header length=%d 3372726a701SXin LI>10 string x \b, description %s 338