]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - contrib/file/magic/Magdir/python
MFC r308420: MFV r308392: file 5.29.
[FreeBSD/FreeBSD.git] / contrib / file / magic / Magdir / python
1
2 #------------------------------------------------------------------------------
3 # $File: python,v 1.29 2016/07/27 09:42:16 rrt Exp $
4 # python:  file(1) magic for python
5 #
6 # Outlook puts """ too for urgent messages
7 # From: David Necas <yeti@physics.muni.cz>
8 # often the module starts with a multiline string
9 0       string/t        """     Python script text executable
10 # MAGIC as specified in Python/import.c (1.5 to 2.7a0 and 3.1a0, assuming
11 # that Py_UnicodeFlag is off for Python 2)
12 # two bytes of magic followed by "\r\n" in little endian order
13 0       belong          0x994e0d0a      python 1.5/1.6 byte-compiled
14 0       belong          0x87c60d0a      python 2.0 byte-compiled
15 0       belong          0x2aeb0d0a      python 2.1 byte-compiled
16 0       belong          0x2ded0d0a      python 2.2 byte-compiled
17 0       belong          0x3bf20d0a      python 2.3 byte-compiled
18 0       belong          0x6df20d0a      python 2.4 byte-compiled
19 0       belong          0xb3f20d0a      python 2.5 byte-compiled
20 0       belong          0xd1f20d0a      python 2.6 byte-compiled
21 0       belong          0x03f30d0a      python 2.7 byte-compiled
22 0       belong          0x3b0c0d0a      python 3.0 byte-compiled
23 0       belong          0x4f0c0d0a      python 3.1 byte-compiled
24 0       belong          0x6c0c0d0a      python 3.2 byte-compiled
25 0       belong          0x9e0c0d0a      python 3.3 byte-compiled
26 0       belong          0xee0c0d0a      python 3.4 byte-compiled
27 0       belong          0x160d0d0a      python 3.5 byte-compiled
28
29 0       search/1/w      #!\ /usr/bin/python     Python script text executable
30 !:strength + 15
31 !:mime text/x-python
32 0       search/1/w      #!\ /usr/local/bin/python       Python script text executable
33 !:strength + 15
34 !:mime text/x-python
35 0       search/1        #!/usr/bin/env\ python  Python script text executable
36 !:strength + 15
37 !:mime text/x-python
38 0       search/10       #!\ /usr/bin/env\ python        Python script text executable
39 !:strength + 15
40 !:mime text/x-python
41
42
43 # from module.submodule import func1, func2
44 0       regex   \^from\\s+(\\w|\\.)+\\s+import.*$       Python script text executable
45 !:mime text/x-python
46
47 # def __init__ (self, ...):
48 0       search/4096     def\ __init__
49 >&0     search/64 self  Python script text executable
50 !:mime text/x-python
51
52 # comments
53 #0      search/4096     '''
54 #>&0    regex   .*'''$  Python script text executable
55 #!:mime text/x-python
56
57 #0      search/4096     """
58 #>&0    regex   .*"""$  Python script text executable
59 #!:mime text/x-python
60
61 # try:
62 # except: or finally:
63 # block
64 0       search/4096     try:
65 >&0     regex   \^\\s*except.*: Python script text executable
66 !:mime text/x-python
67 >&0     search/4096     finally:        Python script text executable
68 !:mime text/x-python
69
70 # def name(args, args):
71 0       regex    \^(\ |\\t){0,50}def\ {1,50}[a-zA-Z]{1,100}
72 >&0     regex   \ {0,50}\\(([a-zA-Z]|,|\ ){1,255}\\):$ Python script text executable
73 !:mime text/x-python