view bin/url @ 11113:aa8e4791536e

<oerjan> learn print_args_or_input Is a utility command that makes it easy to create a shell script that can be used either as a pipe or directly as a HackEgo command. Use as print_args_or_input "$@" | yourShellCode . See also shebang_args_or_input.
author HackBot
date Sat, 22 Jul 2017 00:45:19 +0000
parents 31fc0eb7ea45
children 380e297c7ae5
line wrap: on
line source

#!/usr/bin/env python
import sys, os.path, re, urllib
if len(sys.argv) <= 1:
    print "https://hackego.esolangs.org/fshg/"
else:
    f = os.path.abspath(sys.argv[1])
    f = re.sub(r"^/+hackenv/", "", f)
    if re.match(r"/|\.hg(?:/|$)",f):
        sys.exit("File is outside web-viewable filesystem repository.")
    elif re.match(r"tmp(?:/|$)",f):
        print ("https://hackego.esolangs.org/" + urllib.quote(f))
    else:
        print ("https://hackego.esolangs.org/fshg/index.cgi/file/tip/" +
            urllib.quote(f))