Mercurial > repo
annotate bin/raw-url @ 12261:04048c0ef071 draft
<int-e> sled ../bin/"//s=shuff=shuf=
author | HackEso <hackeso@esolangs.org> |
---|---|
date | Sat, 07 Dec 2019 23:59:32 +0000 |
parents | adabeafee531 |
children |
rev | line source |
---|---|
4570
5a4571b62410
<oerjan> cp bin/{,raw-}url; sed -i \'s/raw-//\' bin/url
HackBot
parents:
diff
changeset
|
1 #!/usr/bin/env python |
10317
024b7442d847
<fizzie> ` sed -e \'s,index.cgi/file,index.cgi/raw-file,\' < bin/url > bin/raw-url # this one didn\'t even support tmp/
HackBot
parents:
4570
diff
changeset
|
2 import sys, os.path, re, urllib |
4570
5a4571b62410
<oerjan> cp bin/{,raw-}url; sed -i \'s/raw-//\' bin/url
HackBot
parents:
diff
changeset
|
3 if len(sys.argv) <= 1: |
11471
adabeafee531
<fizzie> sled bin/raw-url//s,http:,https:,g
HackEso <hackeso@esolangs.org>
parents:
11470
diff
changeset
|
4 print "https://hack.esolangs.org/repo/" |
4570
5a4571b62410
<oerjan> cp bin/{,raw-}url; sed -i \'s/raw-//\' bin/url
HackBot
parents:
diff
changeset
|
5 else: |
10317
024b7442d847
<fizzie> ` sed -e \'s,index.cgi/file,index.cgi/raw-file,\' < bin/url > bin/raw-url # this one didn\'t even support tmp/
HackBot
parents:
4570
diff
changeset
|
6 f = os.path.abspath(sys.argv[1]) |
024b7442d847
<fizzie> ` sed -e \'s,index.cgi/file,index.cgi/raw-file,\' < bin/url > bin/raw-url # this one didn\'t even support tmp/
HackBot
parents:
4570
diff
changeset
|
7 f = re.sub(r"^/+hackenv/", "", f) |
024b7442d847
<fizzie> ` sed -e \'s,index.cgi/file,index.cgi/raw-file,\' < bin/url > bin/raw-url # this one didn\'t even support tmp/
HackBot
parents:
4570
diff
changeset
|
8 if re.match(r"/|\.hg(?:/|$)",f): |
024b7442d847
<fizzie> ` sed -e \'s,index.cgi/file,index.cgi/raw-file,\' < bin/url > bin/raw-url # this one didn\'t even support tmp/
HackBot
parents:
4570
diff
changeset
|
9 sys.exit("File is outside web-viewable filesystem repository.") |
024b7442d847
<fizzie> ` sed -e \'s,index.cgi/file,index.cgi/raw-file,\' < bin/url > bin/raw-url # this one didn\'t even support tmp/
HackBot
parents:
4570
diff
changeset
|
10 elif re.match(r"tmp(?:/|$)",f): |
11471
adabeafee531
<fizzie> sled bin/raw-url//s,http:,https:,g
HackEso <hackeso@esolangs.org>
parents:
11470
diff
changeset
|
11 print ("https://hack.esolangs.org/" + urllib.quote(f)) |
10317
024b7442d847
<fizzie> ` sed -e \'s,index.cgi/file,index.cgi/raw-file,\' < bin/url > bin/raw-url # this one didn\'t even support tmp/
HackBot
parents:
4570
diff
changeset
|
12 else: |
11471
adabeafee531
<fizzie> sled bin/raw-url//s,http:,https:,g
HackEso <hackeso@esolangs.org>
parents:
11470
diff
changeset
|
13 print ("https://hack.esolangs.org/repo/raw-file/tip/" + |
10317
024b7442d847
<fizzie> ` sed -e \'s,index.cgi/file,index.cgi/raw-file,\' < bin/url > bin/raw-url # this one didn\'t even support tmp/
HackBot
parents:
4570
diff
changeset
|
14 urllib.quote(f)) |