Linux worldls-302.fr.planethoster.net 4.18.0-553.8.1.lve.el7h.x86_64 #1 SMP Thu Jul 4 15:19:33 UTC 2024 x86_64
LiteSpeed
Server IP : 10.185.0.203 & Your IP : 216.73.217.14
Domains :
Cant Read [ /etc/named.conf ]
User : gerathty
Terminal
Auto Root
Create File
Create Folder
Localroot Suggester
Backdoor Destroyer
Readme
/
lib /
python2.7 /
site-packages /
pygments /
lexers /
Delete
Unzip
Name
Size
Permission
Date
Action
__init__.py
8.53
KB
-rw-r--r--
2014-11-10 20:17
__init__.pyc
8.81
KB
-rw-r--r--
2016-08-02 10:51
__init__.pyo
8.81
KB
-rw-r--r--
2016-08-02 10:51
_asy_builtins.py
26.68
KB
-rw-r--r--
2014-11-10 20:17
_asy_builtins.pyc
33.16
KB
-rw-r--r--
2016-08-02 10:51
_asy_builtins.pyo
33.16
KB
-rw-r--r--
2016-08-02 10:51
_cl_builtins.py
13.72
KB
-rw-r--r--
2014-11-10 20:17
_cl_builtins.pyc
25.61
KB
-rw-r--r--
2016-08-02 10:51
_cl_builtins.pyo
25.61
KB
-rw-r--r--
2016-08-02 10:51
_cocoa_builtins.py
38.79
KB
-rw-r--r--
2014-11-10 20:17
_cocoa_builtins.pyc
45.31
KB
-rw-r--r--
2016-08-02 10:51
_cocoa_builtins.pyo
45.31
KB
-rw-r--r--
2016-08-02 10:51
_lasso_builtins.py
127.85
KB
-rw-r--r--
2014-11-10 20:17
_lasso_builtins.pyc
118.34
KB
-rw-r--r--
2016-08-02 10:51
_lasso_builtins.pyo
118.34
KB
-rw-r--r--
2016-08-02 10:51
_lua_builtins.py
6.8
KB
-rw-r--r--
2014-11-10 20:17
_lua_builtins.pyc
8.99
KB
-rw-r--r--
2016-08-02 10:51
_lua_builtins.pyo
8.99
KB
-rw-r--r--
2016-08-02 10:51
_mapping.py
44.55
KB
-rw-r--r--
2014-11-10 20:17
_mapping.pyc
64.94
KB
-rw-r--r--
2016-08-02 10:51
_mapping.pyo
64.94
KB
-rw-r--r--
2016-08-02 10:51
_mql_builtins.py
24.16
KB
-rw-r--r--
2014-11-10 20:17
_mql_builtins.pyc
29.02
KB
-rw-r--r--
2016-08-02 10:51
_mql_builtins.pyo
29.02
KB
-rw-r--r--
2016-08-02 10:51
_openedge_builtins.py
47.23
KB
-rw-r--r--
2014-11-10 20:17
_openedge_builtins.pyc
80.16
KB
-rw-r--r--
2016-08-02 10:51
_openedge_builtins.pyo
80.16
KB
-rw-r--r--
2016-08-02 10:51
_php_builtins.py
150.75
KB
-rw-r--r--
2014-11-10 20:17
_php_builtins.pyc
135.12
KB
-rw-r--r--
2016-08-02 10:51
_php_builtins.pyo
135.12
KB
-rw-r--r--
2016-08-02 10:51
_postgres_builtins.py
10.95
KB
-rw-r--r--
2014-11-10 20:17
_postgres_builtins.pyc
13.16
KB
-rw-r--r--
2016-08-02 10:51
_postgres_builtins.pyo
13.16
KB
-rw-r--r--
2016-08-02 10:51
_scilab_builtins.py
51.18
KB
-rw-r--r--
2014-11-10 20:17
_scilab_builtins.pyc
72.28
KB
-rw-r--r--
2016-08-02 10:51
_scilab_builtins.pyo
72.28
KB
-rw-r--r--
2016-08-02 10:51
_sourcemod_builtins.py
26.48
KB
-rw-r--r--
2014-11-10 20:17
_sourcemod_builtins.pyc
31.44
KB
-rw-r--r--
2016-08-02 10:51
_sourcemod_builtins.pyo
31.44
KB
-rw-r--r--
2016-08-02 10:51
_stan_builtins.py
9.16
KB
-rw-r--r--
2015-01-20 07:56
_stan_builtins.pyc
11.26
KB
-rw-r--r--
2016-08-02 10:51
_stan_builtins.pyo
11.26
KB
-rw-r--r--
2016-08-02 10:51
_vim_builtins.py
55.75
KB
-rw-r--r--
2014-11-10 20:17
_vim_builtins.pyc
63.17
KB
-rw-r--r--
2016-08-02 10:51
_vim_builtins.pyo
63.17
KB
-rw-r--r--
2016-08-02 10:51
actionscript.py
10.92
KB
-rw-r--r--
2014-11-10 20:17
actionscript.pyc
11.51
KB
-rw-r--r--
2016-08-02 10:51
actionscript.pyo
11.51
KB
-rw-r--r--
2016-08-02 10:51
agile.py
900
B
-rw-r--r--
2014-11-10 20:17
agile.pyc
1.4
KB
-rw-r--r--
2016-08-02 10:51
agile.pyo
1.4
KB
-rw-r--r--
2016-08-02 10:51
algebra.py
6.02
KB
-rw-r--r--
2014-11-10 20:17
algebra.pyc
6.75
KB
-rw-r--r--
2016-08-02 10:51
algebra.pyo
6.75
KB
-rw-r--r--
2016-08-02 10:51
ambient.py
2.5
KB
-rw-r--r--
2014-11-10 20:17
ambient.pyc
2.87
KB
-rw-r--r--
2016-08-02 10:51
ambient.pyo
2.87
KB
-rw-r--r--
2016-08-02 10:51
apl.py
3.09
KB
-rw-r--r--
2014-11-10 20:17
apl.pyc
1.99
KB
-rw-r--r--
2016-08-02 10:51
apl.pyo
1.99
KB
-rw-r--r--
2016-08-02 10:51
asm.py
14.25
KB
-rw-r--r--
2014-11-10 20:17
asm.pyc
12.46
KB
-rw-r--r--
2016-08-02 10:51
asm.pyo
12.46
KB
-rw-r--r--
2016-08-02 10:51
automation.py
19.17
KB
-rw-r--r--
2014-11-10 20:17
automation.pyc
16.58
KB
-rw-r--r--
2016-08-02 10:51
automation.pyo
16.58
KB
-rw-r--r--
2016-08-02 10:51
basic.py
19.83
KB
-rw-r--r--
2014-11-10 20:17
basic.pyc
17.8
KB
-rw-r--r--
2016-08-02 10:51
basic.pyo
17.8
KB
-rw-r--r--
2016-08-02 10:51
business.py
26.07
KB
-rw-r--r--
2014-11-10 20:17
business.pyc
24.59
KB
-rw-r--r--
2016-08-02 10:51
business.pyo
24.59
KB
-rw-r--r--
2016-08-02 10:51
c_cpp.py
9.19
KB
-rw-r--r--
2014-11-10 20:17
c_cpp.pyc
8.84
KB
-rw-r--r--
2016-08-02 10:51
c_cpp.pyo
8.84
KB
-rw-r--r--
2016-08-02 10:51
c_like.py
15.8
KB
-rw-r--r--
2014-11-10 20:17
c_like.pyc
17.26
KB
-rw-r--r--
2016-08-02 10:51
c_like.pyo
17.26
KB
-rw-r--r--
2016-08-02 10:51
chapel.py
3.26
KB
-rw-r--r--
2014-11-10 20:17
chapel.pyc
3.22
KB
-rw-r--r--
2016-08-02 10:51
chapel.pyo
3.22
KB
-rw-r--r--
2016-08-02 10:51
compiled.py
1.3
KB
-rw-r--r--
2014-11-10 20:17
compiled.pyc
2.07
KB
-rw-r--r--
2016-08-02 10:51
compiled.pyo
2.07
KB
-rw-r--r--
2016-08-02 10:51
configs.py
19.58
KB
-rw-r--r--
2014-11-10 20:17
configs.pyc
19.19
KB
-rw-r--r--
2016-08-02 10:51
configs.pyo
19.19
KB
-rw-r--r--
2016-08-02 10:51
console.py
4.02
KB
-rw-r--r--
2014-11-14 18:47
console.pyc
3.85
KB
-rw-r--r--
2016-08-02 10:51
console.pyo
3.85
KB
-rw-r--r--
2016-08-02 10:51
css.py
23.58
KB
-rw-r--r--
2014-11-10 20:17
css.pyc
28.89
KB
-rw-r--r--
2016-08-02 10:51
css.pyo
28.89
KB
-rw-r--r--
2016-08-02 10:51
d.py
9.31
KB
-rw-r--r--
2014-11-10 20:17
d.pyc
7.94
KB
-rw-r--r--
2016-08-02 10:51
d.pyo
7.94
KB
-rw-r--r--
2016-08-02 10:51
dalvik.py
4.32
KB
-rw-r--r--
2014-11-10 20:17
dalvik.pyc
3.71
KB
-rw-r--r--
2016-08-02 10:51
dalvik.pyo
3.71
KB
-rw-r--r--
2016-08-02 10:51
data.py
17.85
KB
-rw-r--r--
2015-01-20 07:47
data.pyc
11.92
KB
-rw-r--r--
2016-08-02 10:51
data.pyo
11.92
KB
-rw-r--r--
2016-08-02 10:51
diff.py
3.17
KB
-rw-r--r--
2014-11-10 20:17
diff.pyc
3.26
KB
-rw-r--r--
2016-08-02 10:51
diff.pyo
3.26
KB
-rw-r--r--
2016-08-02 10:51
dotnet.py
26.66
KB
-rw-r--r--
2014-11-14 18:47
dotnet.pyc
22.08
KB
-rw-r--r--
2016-08-02 10:51
dotnet.pyo
22.08
KB
-rw-r--r--
2016-08-02 10:51
dsls.py
18.33
KB
-rw-r--r--
2014-11-10 20:17
dsls.pyc
17.78
KB
-rw-r--r--
2016-08-02 10:51
dsls.pyo
17.78
KB
-rw-r--r--
2016-08-02 10:51
dylan.py
10.18
KB
-rw-r--r--
2014-11-10 20:17
dylan.pyc
11.31
KB
-rw-r--r--
2016-08-02 10:51
dylan.pyo
11.31
KB
-rw-r--r--
2016-08-02 10:51
ecl.py
5.74
KB
-rw-r--r--
2014-11-10 20:17
ecl.pyc
6.76
KB
-rw-r--r--
2016-08-02 10:51
ecl.pyo
6.76
KB
-rw-r--r--
2016-08-02 10:51
eiffel.py
2.42
KB
-rw-r--r--
2014-11-10 20:17
eiffel.pyc
2.96
KB
-rw-r--r--
2016-08-02 10:51
eiffel.pyo
2.96
KB
-rw-r--r--
2016-08-02 10:51
erlang.py
17.77
KB
-rw-r--r--
2014-11-10 20:17
erlang.pyc
16.98
KB
-rw-r--r--
2016-08-02 10:51
erlang.pyo
16.98
KB
-rw-r--r--
2016-08-02 10:51
esoteric.py
3.38
KB
-rw-r--r--
2014-11-10 20:17
esoteric.pyc
3.46
KB
-rw-r--r--
2016-08-02 10:51
esoteric.pyo
3.46
KB
-rw-r--r--
2016-08-02 10:51
factor.py
17.45
KB
-rw-r--r--
2014-11-10 20:17
factor.pyc
23.89
KB
-rw-r--r--
2016-08-02 10:51
factor.pyo
23.89
KB
-rw-r--r--
2016-08-02 10:51
fantom.py
9.75
KB
-rw-r--r--
2014-11-10 20:17
fantom.pyc
5.9
KB
-rw-r--r--
2016-08-02 10:51
fantom.pyo
5.9
KB
-rw-r--r--
2016-08-02 10:51
felix.py
9.19
KB
-rw-r--r--
2014-11-10 20:17
felix.pyc
7.94
KB
-rw-r--r--
2016-08-02 10:51
felix.pyo
7.94
KB
-rw-r--r--
2016-08-02 10:51
fortran.py
8.26
KB
-rw-r--r--
2014-11-10 20:17
fortran.pyc
9.78
KB
-rw-r--r--
2016-08-02 10:51
fortran.pyo
9.78
KB
-rw-r--r--
2016-08-02 10:51
foxpro.py
25.62
KB
-rw-r--r--
2014-11-10 20:17
foxpro.pyc
19.9
KB
-rw-r--r--
2016-08-02 10:51
foxpro.pyo
19.9
KB
-rw-r--r--
2016-08-02 10:51
functional.py
687
B
-rw-r--r--
2014-11-10 20:17
functional.pyc
1.05
KB
-rw-r--r--
2016-08-02 10:51
functional.pyo
1.05
KB
-rw-r--r--
2016-08-02 10:51
go.py
3.61
KB
-rw-r--r--
2014-11-10 20:17
go.pyc
3.47
KB
-rw-r--r--
2016-08-02 10:51
go.pyo
3.47
KB
-rw-r--r--
2016-08-02 10:51
graph.py
2.24
KB
-rw-r--r--
2014-11-10 20:17
graph.pyc
2.29
KB
-rw-r--r--
2016-08-02 10:51
graph.pyo
2.29
KB
-rw-r--r--
2016-08-02 10:51
graphics.py
25.23
KB
-rw-r--r--
2014-11-10 20:17
graphics.pyc
24.04
KB
-rw-r--r--
2016-08-02 10:51
graphics.pyo
24.04
KB
-rw-r--r--
2016-08-02 10:51
haskell.py
30.28
KB
-rw-r--r--
2014-11-10 20:17
haskell.pyc
23.78
KB
-rw-r--r--
2016-08-02 10:51
haskell.pyo
23.78
KB
-rw-r--r--
2016-08-02 10:51
haxe.py
30.23
KB
-rw-r--r--
2014-11-10 20:17
haxe.pyc
18.45
KB
-rw-r--r--
2016-08-02 10:51
haxe.pyo
18.45
KB
-rw-r--r--
2016-08-02 10:51
hdl.py
17.82
KB
-rw-r--r--
2014-11-10 20:17
hdl.pyc
20.02
KB
-rw-r--r--
2016-08-02 10:51
hdl.pyo
20.02
KB
-rw-r--r--
2016-08-02 10:51
html.py
18.18
KB
-rw-r--r--
2014-11-10 20:17
html.pyc
14.82
KB
-rw-r--r--
2016-08-02 10:51
html.pyo
14.82
KB
-rw-r--r--
2016-08-02 10:51
idl.py
14.19
KB
-rw-r--r--
2014-11-10 20:17
idl.pyc
18.69
KB
-rw-r--r--
2016-08-02 10:51
idl.pyo
18.69
KB
-rw-r--r--
2016-08-02 10:51
igor.py
16.47
KB
-rw-r--r--
2014-11-10 20:17
igor.pyc
20.75
KB
-rw-r--r--
2016-08-02 10:51
igor.pyo
20.75
KB
-rw-r--r--
2016-08-02 10:51
inferno.py
3.04
KB
-rw-r--r--
2014-11-10 20:17
inferno.pyc
2.92
KB
-rw-r--r--
2016-08-02 10:51
inferno.pyo
2.92
KB
-rw-r--r--
2016-08-02 10:51
installers.py
12.56
KB
-rw-r--r--
2014-11-10 20:17
installers.pyc
10.6
KB
-rw-r--r--
2016-08-02 10:51
installers.pyo
10.6
KB
-rw-r--r--
2016-08-02 10:51
int_fiction.py
54.42
KB
-rw-r--r--
2014-11-10 20:17
int_fiction.pyc
35.32
KB
-rw-r--r--
2016-08-02 10:51
int_fiction.pyo
35.32
KB
-rw-r--r--
2016-08-02 10:51
iolang.py
1.86
KB
-rw-r--r--
2014-11-10 20:17
iolang.pyc
1.94
KB
-rw-r--r--
2016-08-02 10:51
iolang.pyo
1.94
KB
-rw-r--r--
2016-08-02 10:51
javascript.py
46.41
KB
-rw-r--r--
2014-11-14 18:47
javascript.pyc
31.97
KB
-rw-r--r--
2016-08-02 10:51
javascript.pyo
31.97
KB
-rw-r--r--
2016-08-02 10:51
julia.py
6.25
KB
-rw-r--r--
2014-11-10 20:17
julia.pyc
5.66
KB
-rw-r--r--
2016-08-02 10:51
julia.pyo
5.66
KB
-rw-r--r--
2016-08-02 10:51
jvm.py
64.51
KB
-rw-r--r--
2014-11-10 20:17
jvm.pyc
50.54
KB
-rw-r--r--
2016-08-02 10:51
jvm.pyo
50.54
KB
-rw-r--r--
2016-08-02 10:51
lisp.py
76.79
KB
-rw-r--r--
2014-11-10 20:17
lisp.pyc
117.79
KB
-rw-r--r--
2016-08-02 10:51
lisp.pyo
117.79
KB
-rw-r--r--
2016-08-02 10:51
make.py
7.08
KB
-rw-r--r--
2014-11-10 20:17
make.pyc
5.32
KB
-rw-r--r--
2016-08-02 10:51
make.pyo
5.32
KB
-rw-r--r--
2016-08-02 10:51
markup.py
16.49
KB
-rw-r--r--
2014-11-10 20:17
markup.pyc
14.96
KB
-rw-r--r--
2016-08-02 10:51
markup.pyo
14.96
KB
-rw-r--r--
2016-08-02 10:51
math.py
700
B
-rw-r--r--
2014-11-10 20:17
math.pyc
1.09
KB
-rw-r--r--
2016-08-02 10:51
math.pyo
1.09
KB
-rw-r--r--
2016-08-02 10:51
matlab.py
28.46
KB
-rw-r--r--
2014-11-10 20:17
matlab.pyc
32.44
KB
-rw-r--r--
2016-08-02 10:51
matlab.pyo
32.44
KB
-rw-r--r--
2016-08-02 10:51
ml.py
27.24
KB
-rw-r--r--
2014-11-10 20:17
ml.pyc
15.28
KB
-rw-r--r--
2016-08-02 10:51
ml.pyo
15.28
KB
-rw-r--r--
2016-08-02 10:51
modeling.py
12.44
KB
-rw-r--r--
2015-01-20 07:56
modeling.pyc
11.1
KB
-rw-r--r--
2016-08-02 10:51
modeling.pyo
11.1
KB
-rw-r--r--
2016-08-02 10:51
nimrod.py
4.99
KB
-rw-r--r--
2014-11-10 20:17
nimrod.pyc
4.65
KB
-rw-r--r--
2016-08-02 10:51
nimrod.pyo
4.65
KB
-rw-r--r--
2016-08-02 10:51
nit.py
2.68
KB
-rw-r--r--
2014-11-10 20:17
nit.pyc
3.05
KB
-rw-r--r--
2016-08-02 10:51
nit.pyo
3.05
KB
-rw-r--r--
2016-08-02 10:51
nix.py
3.94
KB
-rw-r--r--
2014-11-10 20:17
nix.pyc
4.28
KB
-rw-r--r--
2016-08-02 10:51
nix.pyo
4.28
KB
-rw-r--r--
2016-08-02 10:51
objective.py
22.03
KB
-rw-r--r--
2014-11-14 08:55
objective.pyc
19.77
KB
-rw-r--r--
2016-08-02 10:51
objective.pyo
19.77
KB
-rw-r--r--
2016-08-02 10:51
ooc.py
2.93
KB
-rw-r--r--
2014-11-10 20:17
ooc.pyc
3.03
KB
-rw-r--r--
2016-08-02 10:51
ooc.pyo
3.03
KB
-rw-r--r--
2016-08-02 10:51
other.py
1.68
KB
-rw-r--r--
2014-11-10 20:17
other.pyc
2.64
KB
-rw-r--r--
2016-08-02 10:51
other.pyo
2.64
KB
-rw-r--r--
2016-08-02 10:51
parsers.py
26.94
KB
-rw-r--r--
2014-11-10 20:17
parsers.pyc
23.14
KB
-rw-r--r--
2016-08-02 10:51
parsers.pyo
23.14
KB
-rw-r--r--
2016-08-02 10:51
pascal.py
39.47
KB
-rw-r--r--
2014-11-10 20:17
pascal.pyc
35.67
KB
-rw-r--r--
2016-08-02 10:51
pascal.pyo
35.67
KB
-rw-r--r--
2016-08-02 10:51
pawn.py
7.9
KB
-rw-r--r--
2014-11-10 20:17
pawn.pyc
7.19
KB
-rw-r--r--
2016-08-02 10:51
pawn.pyo
7.19
KB
-rw-r--r--
2016-08-02 10:51
perl.py
30.82
KB
-rw-r--r--
2014-11-10 20:17
perl.pyc
30.63
KB
-rw-r--r--
2016-08-02 10:51
perl.pyo
30.63
KB
-rw-r--r--
2016-08-02 10:51
php.py
9.54
KB
-rw-r--r--
2014-11-10 20:17
php.pyc
8.6
KB
-rw-r--r--
2016-08-02 10:51
php.pyo
8.6
KB
-rw-r--r--
2016-08-02 10:51
prolog.py
11.76
KB
-rw-r--r--
2014-11-10 20:17
prolog.pyc
8.03
KB
-rw-r--r--
2016-08-02 10:51
prolog.pyo
8.03
KB
-rw-r--r--
2016-08-02 10:51
python.py
35.37
KB
-rw-r--r--
2015-01-20 07:56
python.pyc
35.33
KB
-rw-r--r--
2016-08-02 10:51
python.pyo
35.33
KB
-rw-r--r--
2016-08-02 10:51
r.py
23.2
KB
-rw-r--r--
2014-11-10 20:17
r.pyc
33.3
KB
-rw-r--r--
2016-08-02 10:51
r.pyo
33.3
KB
-rw-r--r--
2016-08-02 10:51
rdf.py
3.7
KB
-rw-r--r--
2014-11-10 20:17
rdf.pyc
3.29
KB
-rw-r--r--
2016-08-02 10:51
rdf.pyo
3.29
KB
-rw-r--r--
2016-08-02 10:51
rebol.py
18.18
KB
-rw-r--r--
2014-11-10 20:17
rebol.pyc
13.49
KB
-rw-r--r--
2016-08-02 10:51
rebol.pyo
13.49
KB
-rw-r--r--
2016-08-02 10:51
resource.py
2.84
KB
-rw-r--r--
2014-11-10 20:17
resource.pyc
2.85
KB
-rw-r--r--
2016-08-02 10:51
resource.pyo
2.85
KB
-rw-r--r--
2016-08-02 10:51
robotframework.py
18.2
KB
-rw-r--r--
2014-11-10 20:17
robotframework.pyc
25.04
KB
-rw-r--r--
2016-08-02 10:51
robotframework.pyo
25.04
KB
-rw-r--r--
2016-08-02 10:51
ruby.py
21.62
KB
-rw-r--r--
2014-11-10 20:17
ruby.pyc
17.14
KB
-rw-r--r--
2016-08-02 10:51
ruby.pyo
17.14
KB
-rw-r--r--
2016-08-02 10:51
rust.py
7.04
KB
-rw-r--r--
2014-11-10 20:17
rust.pyc
6.76
KB
-rw-r--r--
2016-08-02 10:51
rust.pyo
6.76
KB
-rw-r--r--
2016-08-02 10:51
scripting.py
54.28
KB
-rw-r--r--
2014-11-10 20:17
scripting.pyc
59.24
KB
-rw-r--r--
2016-08-02 10:51
scripting.pyo
59.24
KB
-rw-r--r--
2016-08-02 10:51
shell.py
15.42
KB
-rw-r--r--
2014-11-10 20:17
shell.pyc
12.79
KB
-rw-r--r--
2016-08-02 10:51
shell.pyo
12.79
KB
-rw-r--r--
2016-08-02 10:51
smalltalk.py
7.05
KB
-rw-r--r--
2014-11-10 20:17
smalltalk.pyc
5.24
KB
-rw-r--r--
2016-08-02 10:51
smalltalk.pyo
5.24
KB
-rw-r--r--
2016-08-02 10:51
snobol.py
2.69
KB
-rw-r--r--
2014-11-10 20:17
snobol.pyc
2.27
KB
-rw-r--r--
2016-08-02 10:51
snobol.pyo
2.27
KB
-rw-r--r--
2016-08-02 10:51
special.py
3
KB
-rw-r--r--
2014-11-10 20:17
special.pyc
3.66
KB
-rw-r--r--
2016-08-02 10:51
special.pyo
3.66
KB
-rw-r--r--
2016-08-02 10:51
sql.py
25.32
KB
-rw-r--r--
2014-11-10 20:17
sql.pyc
26.32
KB
-rw-r--r--
2016-08-02 10:51
sql.pyo
26.26
KB
-rw-r--r--
2016-08-02 10:51
tcl.py
5.27
KB
-rw-r--r--
2014-11-10 20:17
tcl.pyc
5.27
KB
-rw-r--r--
2016-08-02 10:51
tcl.pyo
5.27
KB
-rw-r--r--
2016-08-02 10:51
templates.py
68.1
KB
-rw-r--r--
2014-11-14 18:47
templates.pyc
71.67
KB
-rw-r--r--
2016-08-02 10:51
templates.pyo
71.67
KB
-rw-r--r--
2016-08-02 10:51
testing.py
8.5
KB
-rw-r--r--
2014-11-10 20:17
testing.pyc
7.25
KB
-rw-r--r--
2016-08-02 10:51
testing.pyo
7.25
KB
-rw-r--r--
2016-08-02 10:51
text.py
977
B
-rw-r--r--
2014-11-10 20:17
text.pyc
1.54
KB
-rw-r--r--
2016-08-02 10:51
text.pyo
1.54
KB
-rw-r--r--
2016-08-02 10:51
textedit.py
5.92
KB
-rw-r--r--
2014-11-10 20:17
textedit.pyc
5.79
KB
-rw-r--r--
2016-08-02 10:51
textedit.pyo
5.79
KB
-rw-r--r--
2016-08-02 10:51
textfmts.py
10.39
KB
-rw-r--r--
2015-01-20 07:56
textfmts.pyc
8.15
KB
-rw-r--r--
2016-08-02 10:51
textfmts.pyo
8.15
KB
-rw-r--r--
2016-08-02 10:51
theorem.py
19.14
KB
-rw-r--r--
2015-01-20 07:56
theorem.pyc
21.08
KB
-rw-r--r--
2016-08-02 10:51
theorem.pyo
21.08
KB
-rw-r--r--
2016-08-02 10:51
urbi.py
5.62
KB
-rw-r--r--
2014-11-10 20:17
urbi.pyc
5.6
KB
-rw-r--r--
2016-08-02 10:51
urbi.pyo
5.6
KB
-rw-r--r--
2016-08-02 10:51
web.py
918
B
-rw-r--r--
2014-11-10 20:17
web.pyc
1.4
KB
-rw-r--r--
2016-08-02 10:51
web.pyo
1.4
KB
-rw-r--r--
2016-08-02 10:51
webmisc.py
35.06
KB
-rw-r--r--
2014-11-10 20:17
webmisc.pyc
26.94
KB
-rw-r--r--
2016-08-02 10:51
webmisc.pyo
26.94
KB
-rw-r--r--
2016-08-02 10:51
Save
Rename
# -*- coding: utf-8 -*- """ pygments.lexers.parsers ~~~~~~~~~~~~~~~~~~~~~~~ Lexers for parser generators. :copyright: Copyright 2006-2014 by the Pygments team, see AUTHORS. :license: BSD, see LICENSE for details. """ import re from pygments.lexer import RegexLexer, DelegatingLexer, \ include, bygroups, using from pygments.token import Punctuation, Other, Text, Comment, Operator, \ Keyword, Name, String, Number, Whitespace from pygments.lexers.jvm import JavaLexer from pygments.lexers.c_cpp import CLexer, CppLexer from pygments.lexers.objective import ObjectiveCLexer from pygments.lexers.d import DLexer from pygments.lexers.dotnet import CSharpLexer from pygments.lexers.ruby import RubyLexer from pygments.lexers.python import PythonLexer from pygments.lexers.perl import PerlLexer __all__ = ['RagelLexer', 'RagelEmbeddedLexer', 'RagelCLexer', 'RagelDLexer', 'RagelCppLexer', 'RagelObjectiveCLexer', 'RagelRubyLexer', 'RagelJavaLexer', 'AntlrLexer', 'AntlrPythonLexer', 'AntlrPerlLexer', 'AntlrRubyLexer', 'AntlrCppLexer', # 'AntlrCLexer', 'AntlrCSharpLexer', 'AntlrObjectiveCLexer', 'AntlrJavaLexer', 'AntlrActionScriptLexer', 'TreetopLexer', 'EbnfLexer'] class RagelLexer(RegexLexer): """ A pure `Ragel <http://www.complang.org/ragel/>`_ lexer. Use this for fragments of Ragel. For ``.rl`` files, use RagelEmbeddedLexer instead (or one of the language-specific subclasses). .. versionadded:: 1.1 """ name = 'Ragel' aliases = ['ragel'] filenames = [] tokens = { 'whitespace': [ (r'\s+', Whitespace) ], 'comments': [ (r'\#.*$', Comment), ], 'keywords': [ (r'(access|action|alphtype)\b', Keyword), (r'(getkey|write|machine|include)\b', Keyword), (r'(any|ascii|extend|alpha|digit|alnum|lower|upper)\b', Keyword), (r'(xdigit|cntrl|graph|print|punct|space|zlen|empty)\b', Keyword) ], 'numbers': [ (r'0x[0-9A-Fa-f]+', Number.Hex), (r'[+-]?[0-9]+', Number.Integer), ], 'literals': [ (r'"(\\\\|\\"|[^"])*"', String), # double quote string (r"'(\\\\|\\'|[^'])*'", String), # single quote string (r'\[(\\\\|\\\]|[^\]])*\]', String), # square bracket literals (r'/(?!\*)(\\\\|\\/|[^/])*/', String.Regex), # regular expressions ], 'identifiers': [ (r'[a-zA-Z_]\w*', Name.Variable), ], 'operators': [ (r',', Operator), # Join (r'\||&|--?', Operator), # Union, Intersection and Subtraction (r'\.|<:|:>>?', Operator), # Concatention (r':', Operator), # Label (r'->', Operator), # Epsilon Transition (r'(>|\$|%|<|@|<>)(/|eof\b)', Operator), # EOF Actions (r'(>|\$|%|<|@|<>)(!|err\b)', Operator), # Global Error Actions (r'(>|\$|%|<|@|<>)(\^|lerr\b)', Operator), # Local Error Actions (r'(>|\$|%|<|@|<>)(~|to\b)', Operator), # To-State Actions (r'(>|\$|%|<|@|<>)(\*|from\b)', Operator), # From-State Actions (r'>|@|\$|%', Operator), # Transition Actions and Priorities (r'\*|\?|\+|\{[0-9]*,[0-9]*\}', Operator), # Repetition (r'!|\^', Operator), # Negation (r'\(|\)', Operator), # Grouping ], 'root': [ include('literals'), include('whitespace'), include('comments'), include('keywords'), include('numbers'), include('identifiers'), include('operators'), (r'\{', Punctuation, 'host'), (r'=', Operator), (r';', Punctuation), ], 'host': [ (r'(' + r'|'.join(( # keep host code in largest possible chunks r'[^{}\'"/#]+', # exclude unsafe characters r'[^\\]\\[{}]', # allow escaped { or } # strings and comments may safely contain unsafe characters r'"(\\\\|\\"|[^"])*"', # double quote string r"'(\\\\|\\'|[^'])*'", # single quote string r'//.*$\n?', # single line comment r'/\*(.|\n)*?\*/', # multi-line javadoc-style comment r'\#.*$\n?', # ruby comment # regular expression: There's no reason for it to start # with a * and this stops confusion with comments. r'/(?!\*)(\\\\|\\/|[^/])*/', # / is safe now that we've handled regex and javadoc comments r'/', )) + r')+', Other), (r'\{', Punctuation, '#push'), (r'\}', Punctuation, '#pop'), ], } class RagelEmbeddedLexer(RegexLexer): """ A lexer for `Ragel`_ embedded in a host language file. This will only highlight Ragel statements. If you want host language highlighting then call the language-specific Ragel lexer. .. versionadded:: 1.1 """ name = 'Embedded Ragel' aliases = ['ragel-em'] filenames = ['*.rl'] tokens = { 'root': [ (r'(' + r'|'.join(( # keep host code in largest possible chunks r'[^%\'"/#]+', # exclude unsafe characters r'%(?=[^%]|$)', # a single % sign is okay, just not 2 of them # strings and comments may safely contain unsafe characters r'"(\\\\|\\"|[^"])*"', # double quote string r"'(\\\\|\\'|[^'])*'", # single quote string r'/\*(.|\n)*?\*/', # multi-line javadoc-style comment r'//.*$\n?', # single line comment r'\#.*$\n?', # ruby/ragel comment r'/(?!\*)(\\\\|\\/|[^/])*/', # regular expression # / is safe now that we've handled regex and javadoc comments r'/', )) + r')+', Other), # Single Line FSM. # Please don't put a quoted newline in a single line FSM. # That's just mean. It will break this. (r'(%%)(?![{%])(.*)($|;)(\n?)', bygroups(Punctuation, using(RagelLexer), Punctuation, Text)), # Multi Line FSM. (r'(%%%%|%%)\{', Punctuation, 'multi-line-fsm'), ], 'multi-line-fsm': [ (r'(' + r'|'.join(( # keep ragel code in largest possible chunks. r'(' + r'|'.join(( r'[^}\'"\[/#]', # exclude unsafe characters r'\}(?=[^%]|$)', # } is okay as long as it's not followed by % r'\}%(?=[^%]|$)', # ...well, one %'s okay, just not two... r'[^\\]\\[{}]', # ...and } is okay if it's escaped # allow / if it's preceded with one of these symbols # (ragel EOF actions) r'(>|\$|%|<|@|<>)/', # specifically allow regex followed immediately by * # so it doesn't get mistaken for a comment r'/(?!\*)(\\\\|\\/|[^/])*/\*', # allow / as long as it's not followed by another / or by a * r'/(?=[^/*]|$)', # We want to match as many of these as we can in one block. # Not sure if we need the + sign here, # does it help performance? )) + r')+', # strings and comments may safely contain unsafe characters r'"(\\\\|\\"|[^"])*"', # double quote string r"'(\\\\|\\'|[^'])*'", # single quote string r"\[(\\\\|\\\]|[^\]])*\]", # square bracket literal r'/\*(.|\n)*?\*/', # multi-line javadoc-style comment r'//.*$\n?', # single line comment r'\#.*$\n?', # ruby/ragel comment )) + r')+', using(RagelLexer)), (r'\}%%', Punctuation, '#pop'), ] } def analyse_text(text): return '@LANG: indep' in text class RagelRubyLexer(DelegatingLexer): """ A lexer for `Ragel`_ in a Ruby host file. .. versionadded:: 1.1 """ name = 'Ragel in Ruby Host' aliases = ['ragel-ruby', 'ragel-rb'] filenames = ['*.rl'] def __init__(self, **options): super(RagelRubyLexer, self).__init__(RubyLexer, RagelEmbeddedLexer, **options) def analyse_text(text): return '@LANG: ruby' in text class RagelCLexer(DelegatingLexer): """ A lexer for `Ragel`_ in a C host file. .. versionadded:: 1.1 """ name = 'Ragel in C Host' aliases = ['ragel-c'] filenames = ['*.rl'] def __init__(self, **options): super(RagelCLexer, self).__init__(CLexer, RagelEmbeddedLexer, **options) def analyse_text(text): return '@LANG: c' in text class RagelDLexer(DelegatingLexer): """ A lexer for `Ragel`_ in a D host file. .. versionadded:: 1.1 """ name = 'Ragel in D Host' aliases = ['ragel-d'] filenames = ['*.rl'] def __init__(self, **options): super(RagelDLexer, self).__init__(DLexer, RagelEmbeddedLexer, **options) def analyse_text(text): return '@LANG: d' in text class RagelCppLexer(DelegatingLexer): """ A lexer for `Ragel`_ in a CPP host file. .. versionadded:: 1.1 """ name = 'Ragel in CPP Host' aliases = ['ragel-cpp'] filenames = ['*.rl'] def __init__(self, **options): super(RagelCppLexer, self).__init__(CppLexer, RagelEmbeddedLexer, **options) def analyse_text(text): return '@LANG: c++' in text class RagelObjectiveCLexer(DelegatingLexer): """ A lexer for `Ragel`_ in an Objective C host file. .. versionadded:: 1.1 """ name = 'Ragel in Objective C Host' aliases = ['ragel-objc'] filenames = ['*.rl'] def __init__(self, **options): super(RagelObjectiveCLexer, self).__init__(ObjectiveCLexer, RagelEmbeddedLexer, **options) def analyse_text(text): return '@LANG: objc' in text class RagelJavaLexer(DelegatingLexer): """ A lexer for `Ragel`_ in a Java host file. .. versionadded:: 1.1 """ name = 'Ragel in Java Host' aliases = ['ragel-java'] filenames = ['*.rl'] def __init__(self, **options): super(RagelJavaLexer, self).__init__(JavaLexer, RagelEmbeddedLexer, **options) def analyse_text(text): return '@LANG: java' in text class AntlrLexer(RegexLexer): """ Generic `ANTLR`_ Lexer. Should not be called directly, instead use DelegatingLexer for your target language. .. versionadded:: 1.1 .. _ANTLR: http://www.antlr.org/ """ name = 'ANTLR' aliases = ['antlr'] filenames = [] _id = r'[A-Za-z]\w*' _TOKEN_REF = r'[A-Z]\w*' _RULE_REF = r'[a-z]\w*' _STRING_LITERAL = r'\'(?:\\\\|\\\'|[^\']*)\'' _INT = r'[0-9]+' tokens = { 'whitespace': [ (r'\s+', Whitespace), ], 'comments': [ (r'//.*$', Comment), (r'/\*(.|\n)*?\*/', Comment), ], 'root': [ include('whitespace'), include('comments'), (r'(lexer|parser|tree)?(\s*)(grammar\b)(\s*)(' + _id + ')(;)', bygroups(Keyword, Whitespace, Keyword, Whitespace, Name.Class, Punctuation)), # optionsSpec (r'options\b', Keyword, 'options'), # tokensSpec (r'tokens\b', Keyword, 'tokens'), # attrScope (r'(scope)(\s*)(' + _id + ')(\s*)(\{)', bygroups(Keyword, Whitespace, Name.Variable, Whitespace, Punctuation), 'action'), # exception (r'(catch|finally)\b', Keyword, 'exception'), # action (r'(@' + _id + ')(\s*)(::)?(\s*)(' + _id + ')(\s*)(\{)', bygroups(Name.Label, Whitespace, Punctuation, Whitespace, Name.Label, Whitespace, Punctuation), 'action'), # rule (r'((?:protected|private|public|fragment)\b)?(\s*)(' + _id + ')(!)?', bygroups(Keyword, Whitespace, Name.Label, Punctuation), ('rule-alts', 'rule-prelims')), ], 'exception': [ (r'\n', Whitespace, '#pop'), (r'\s', Whitespace), include('comments'), (r'\[', Punctuation, 'nested-arg-action'), (r'\{', Punctuation, 'action'), ], 'rule-prelims': [ include('whitespace'), include('comments'), (r'returns\b', Keyword), (r'\[', Punctuation, 'nested-arg-action'), (r'\{', Punctuation, 'action'), # throwsSpec (r'(throws)(\s+)(' + _id + ')', bygroups(Keyword, Whitespace, Name.Label)), (r'(,)(\s*)(' + _id + ')', bygroups(Punctuation, Whitespace, Name.Label)), # Additional throws # optionsSpec (r'options\b', Keyword, 'options'), # ruleScopeSpec - scope followed by target language code or name of action # TODO finish implementing other possibilities for scope # L173 ANTLRv3.g from ANTLR book (r'(scope)(\s+)(\{)', bygroups(Keyword, Whitespace, Punctuation), 'action'), (r'(scope)(\s+)(' + _id + ')(\s*)(;)', bygroups(Keyword, Whitespace, Name.Label, Whitespace, Punctuation)), # ruleAction (r'(@' + _id + ')(\s*)(\{)', bygroups(Name.Label, Whitespace, Punctuation), 'action'), # finished prelims, go to rule alts! (r':', Punctuation, '#pop') ], 'rule-alts': [ include('whitespace'), include('comments'), # These might need to go in a separate 'block' state triggered by ( (r'options\b', Keyword, 'options'), (r':', Punctuation), # literals (r"'(\\\\|\\'|[^'])*'", String), (r'"(\\\\|\\"|[^"])*"', String), (r'<<([^>]|>[^>])>>', String), # identifiers # Tokens start with capital letter. (r'\$?[A-Z_]\w*', Name.Constant), # Rules start with small letter. (r'\$?[a-z_]\w*', Name.Variable), # operators (r'(\+|\||->|=>|=|\(|\)|\.\.|\.|\?|\*|\^|!|\#|~)', Operator), (r',', Punctuation), (r'\[', Punctuation, 'nested-arg-action'), (r'\{', Punctuation, 'action'), (r';', Punctuation, '#pop') ], 'tokens': [ include('whitespace'), include('comments'), (r'\{', Punctuation), (r'(' + _TOKEN_REF + r')(\s*)(=)?(\s*)(' + _STRING_LITERAL + ')?(\s*)(;)', bygroups(Name.Label, Whitespace, Punctuation, Whitespace, String, Whitespace, Punctuation)), (r'\}', Punctuation, '#pop'), ], 'options': [ include('whitespace'), include('comments'), (r'\{', Punctuation), (r'(' + _id + r')(\s*)(=)(\s*)(' + '|'.join((_id, _STRING_LITERAL, _INT, '\*')) + ')(\s*)(;)', bygroups(Name.Variable, Whitespace, Punctuation, Whitespace, Text, Whitespace, Punctuation)), (r'\}', Punctuation, '#pop'), ], 'action': [ (r'(' + r'|'.join(( # keep host code in largest possible chunks r'[^${}\'"/\\]+', # exclude unsafe characters # strings and comments may safely contain unsafe characters r'"(\\\\|\\"|[^"])*"', # double quote string r"'(\\\\|\\'|[^'])*'", # single quote string r'//.*$\n?', # single line comment r'/\*(.|\n)*?\*/', # multi-line javadoc-style comment # regular expression: There's no reason for it to start # with a * and this stops confusion with comments. r'/(?!\*)(\\\\|\\/|[^/])*/', # backslashes are okay, as long as we are not backslashing a % r'\\(?!%)', # Now that we've handled regex and javadoc comments # it's safe to let / through. r'/', )) + r')+', Other), (r'(\\)(%)', bygroups(Punctuation, Other)), (r'(\$[a-zA-Z]+)(\.?)(text|value)?', bygroups(Name.Variable, Punctuation, Name.Property)), (r'\{', Punctuation, '#push'), (r'\}', Punctuation, '#pop'), ], 'nested-arg-action': [ (r'(' + r'|'.join(( # keep host code in largest possible chunks. r'[^$\[\]\'"/]+', # exclude unsafe characters # strings and comments may safely contain unsafe characters r'"(\\\\|\\"|[^"])*"', # double quote string r"'(\\\\|\\'|[^'])*'", # single quote string r'//.*$\n?', # single line comment r'/\*(.|\n)*?\*/', # multi-line javadoc-style comment # regular expression: There's no reason for it to start # with a * and this stops confusion with comments. r'/(?!\*)(\\\\|\\/|[^/])*/', # Now that we've handled regex and javadoc comments # it's safe to let / through. r'/', )) + r')+', Other), (r'\[', Punctuation, '#push'), (r'\]', Punctuation, '#pop'), (r'(\$[a-zA-Z]+)(\.?)(text|value)?', bygroups(Name.Variable, Punctuation, Name.Property)), (r'(\\\\|\\\]|\\\[|[^\[\]])+', Other), ] } def analyse_text(text): return re.search(r'^\s*grammar\s+[a-zA-Z0-9]+\s*;', text, re.M) # http://www.antlr.org/wiki/display/ANTLR3/Code+Generation+Targets # TH: I'm not aware of any language features of C++ that will cause # incorrect lexing of C files. Antlr doesn't appear to make a distinction, # so just assume they're C++. No idea how to make Objective C work in the # future. # class AntlrCLexer(DelegatingLexer): # """ # ANTLR with C Target # # .. versionadded:: 1.1 # """ # # name = 'ANTLR With C Target' # aliases = ['antlr-c'] # filenames = ['*.G', '*.g'] # # def __init__(self, **options): # super(AntlrCLexer, self).__init__(CLexer, AntlrLexer, **options) # # def analyse_text(text): # return re.match(r'^\s*language\s*=\s*C\s*;', text) class AntlrCppLexer(DelegatingLexer): """ `ANTLR`_ with CPP Target .. versionadded:: 1.1 """ name = 'ANTLR With CPP Target' aliases = ['antlr-cpp'] filenames = ['*.G', '*.g'] def __init__(self, **options): super(AntlrCppLexer, self).__init__(CppLexer, AntlrLexer, **options) def analyse_text(text): return AntlrLexer.analyse_text(text) and \ re.search(r'^\s*language\s*=\s*C\s*;', text, re.M) class AntlrObjectiveCLexer(DelegatingLexer): """ `ANTLR`_ with Objective-C Target .. versionadded:: 1.1 """ name = 'ANTLR With ObjectiveC Target' aliases = ['antlr-objc'] filenames = ['*.G', '*.g'] def __init__(self, **options): super(AntlrObjectiveCLexer, self).__init__(ObjectiveCLexer, AntlrLexer, **options) def analyse_text(text): return AntlrLexer.analyse_text(text) and \ re.search(r'^\s*language\s*=\s*ObjC\s*;', text) class AntlrCSharpLexer(DelegatingLexer): """ `ANTLR`_ with C# Target .. versionadded:: 1.1 """ name = 'ANTLR With C# Target' aliases = ['antlr-csharp', 'antlr-c#'] filenames = ['*.G', '*.g'] def __init__(self, **options): super(AntlrCSharpLexer, self).__init__(CSharpLexer, AntlrLexer, **options) def analyse_text(text): return AntlrLexer.analyse_text(text) and \ re.search(r'^\s*language\s*=\s*CSharp2\s*;', text, re.M) class AntlrPythonLexer(DelegatingLexer): """ `ANTLR`_ with Python Target .. versionadded:: 1.1 """ name = 'ANTLR With Python Target' aliases = ['antlr-python'] filenames = ['*.G', '*.g'] def __init__(self, **options): super(AntlrPythonLexer, self).__init__(PythonLexer, AntlrLexer, **options) def analyse_text(text): return AntlrLexer.analyse_text(text) and \ re.search(r'^\s*language\s*=\s*Python\s*;', text, re.M) class AntlrJavaLexer(DelegatingLexer): """ `ANTLR`_ with Java Target .. versionadded:: 1. """ name = 'ANTLR With Java Target' aliases = ['antlr-java'] filenames = ['*.G', '*.g'] def __init__(self, **options): super(AntlrJavaLexer, self).__init__(JavaLexer, AntlrLexer, **options) def analyse_text(text): # Antlr language is Java by default return AntlrLexer.analyse_text(text) and 0.9 class AntlrRubyLexer(DelegatingLexer): """ `ANTLR`_ with Ruby Target .. versionadded:: 1.1 """ name = 'ANTLR With Ruby Target' aliases = ['antlr-ruby', 'antlr-rb'] filenames = ['*.G', '*.g'] def __init__(self, **options): super(AntlrRubyLexer, self).__init__(RubyLexer, AntlrLexer, **options) def analyse_text(text): return AntlrLexer.analyse_text(text) and \ re.search(r'^\s*language\s*=\s*Ruby\s*;', text, re.M) class AntlrPerlLexer(DelegatingLexer): """ `ANTLR`_ with Perl Target .. versionadded:: 1.1 """ name = 'ANTLR With Perl Target' aliases = ['antlr-perl'] filenames = ['*.G', '*.g'] def __init__(self, **options): super(AntlrPerlLexer, self).__init__(PerlLexer, AntlrLexer, **options) def analyse_text(text): return AntlrLexer.analyse_text(text) and \ re.search(r'^\s*language\s*=\s*Perl5\s*;', text, re.M) class AntlrActionScriptLexer(DelegatingLexer): """ `ANTLR`_ with ActionScript Target .. versionadded:: 1.1 """ name = 'ANTLR With ActionScript Target' aliases = ['antlr-as', 'antlr-actionscript'] filenames = ['*.G', '*.g'] def __init__(self, **options): from pygments.lexers.actionscript import ActionScriptLexer super(AntlrActionScriptLexer, self).__init__(ActionScriptLexer, AntlrLexer, **options) def analyse_text(text): return AntlrLexer.analyse_text(text) and \ re.search(r'^\s*language\s*=\s*ActionScript\s*;', text, re.M) class TreetopBaseLexer(RegexLexer): """ A base lexer for `Treetop <http://treetop.rubyforge.org/>`_ grammars. Not for direct use; use TreetopLexer instead. .. versionadded:: 1.6 """ tokens = { 'root': [ include('space'), (r'require[ \t]+[^\n\r]+[\n\r]', Other), (r'module\b', Keyword.Namespace, 'module'), (r'grammar\b', Keyword, 'grammar'), ], 'module': [ include('space'), include('end'), (r'module\b', Keyword, '#push'), (r'grammar\b', Keyword, 'grammar'), (r'[A-Z]\w*(?:::[A-Z]\w*)*', Name.Namespace), ], 'grammar': [ include('space'), include('end'), (r'rule\b', Keyword, 'rule'), (r'include\b', Keyword, 'include'), (r'[A-Z]\w*', Name), ], 'include': [ include('space'), (r'[A-Z]\w*(?:::[A-Z]\w*)*', Name.Class, '#pop'), ], 'rule': [ include('space'), include('end'), (r'"(\\\\|\\"|[^"])*"', String.Double), (r"'(\\\\|\\'|[^'])*'", String.Single), (r'([A-Za-z_]\w*)(:)', bygroups(Name.Label, Punctuation)), (r'[A-Za-z_]\w*', Name), (r'[()]', Punctuation), (r'[?+*/&!~]', Operator), (r'\[(?:\\.|\[:\^?[a-z]+:\]|[^\\\]])+\]', String.Regex), (r'([0-9]*)(\.\.)([0-9]*)', bygroups(Number.Integer, Operator, Number.Integer)), (r'(<)([^>]+)(>)', bygroups(Punctuation, Name.Class, Punctuation)), (r'\{', Punctuation, 'inline_module'), (r'\.', String.Regex), ], 'inline_module': [ (r'\{', Other, 'ruby'), (r'\}', Punctuation, '#pop'), (r'[^{}]+', Other), ], 'ruby': [ (r'\{', Other, '#push'), (r'\}', Other, '#pop'), (r'[^{}]+', Other), ], 'space': [ (r'[ \t\n\r]+', Whitespace), (r'#[^\n]*', Comment.Single), ], 'end': [ (r'end\b', Keyword, '#pop'), ], } class TreetopLexer(DelegatingLexer): """ A lexer for `Treetop <http://treetop.rubyforge.org/>`_ grammars. .. versionadded:: 1.6 """ name = 'Treetop' aliases = ['treetop'] filenames = ['*.treetop', '*.tt'] def __init__(self, **options): super(TreetopLexer, self).__init__(RubyLexer, TreetopBaseLexer, **options) class EbnfLexer(RegexLexer): """ Lexer for `ISO/IEC 14977 EBNF <http://en.wikipedia.org/wiki/Extended_Backus%E2%80%93Naur_Form>`_ grammars. .. versionadded:: 2.0 """ name = 'EBNF' aliases = ['ebnf'] filenames = ['*.ebnf'] mimetypes = ['text/x-ebnf'] tokens = { 'root': [ include('whitespace'), include('comment_start'), include('identifier'), (r'=', Operator, 'production'), ], 'production': [ include('whitespace'), include('comment_start'), include('identifier'), (r'"[^"]*"', String.Double), (r"'[^']*'", String.Single), (r'(\?[^?]*\?)', Name.Entity), (r'[\[\]{}(),|]', Punctuation), (r'-', Operator), (r';', Punctuation, '#pop'), (r'\.', Punctuation, '#pop'), ], 'whitespace': [ (r'\s+', Text), ], 'comment_start': [ (r'\(\*', Comment.Multiline, 'comment'), ], 'comment': [ (r'[^*)]', Comment.Multiline), include('comment_start'), (r'\*\)', Comment.Multiline, '#pop'), (r'[*)]', Comment.Multiline), ], 'identifier': [ (r'([a-zA-Z][\w \-]*)', Keyword), ], }