comparison bin/whatis @ 12022:dff0129e4a40 draft

<b_jonas> fetch bin/whatis https://hack.esolangs.org/get/bin/whatis
author HackEso <hackeso@esolangs.org>
date Thu, 14 Nov 2019 23:41:32 +0000
parents cc933fc31298
children f79df0b509c8
comparison
equal deleted inserted replaced
12021:e9fea593e702 12022:dff0129e4a40
1 #!/usr/bin/python3 1 #!/usr/bin/python3
2 import sys, re 2 import sys, os, re
3 if len(sys.argv) <= 1: 3 if len(sys.argv) <= 1:
4 print("whatis what?") 4 print("whatis what?")
5 sys.exit(1) 5 sys.exit(1)
6 else: 6 else:
7 argorg = [] 7 argorg = []
9 foundv = [] 9 foundv = []
10 for arg in sys.argv[1:]: 10 for arg in sys.argv[1:]:
11 argorg.append(arg) 11 argorg.append(arg)
12 argfoldv.append(arg.casefold()) 12 argfoldv.append(arg.casefold())
13 foundv.append(False) 13 foundv.append(False)
14 with open("/hackenv/share/whatis", errors="surrogateescape") as whatisdb: 14 with open(os.environ.get("HACKENV","/hackenv") + /share/whatis", errors="surrogateescape") as whatisdb:
15 for line in whatisdb: 15 for line in whatisdb:
16 parts = re.match(r"([^()]+)\(([0-9A-Z_a-z]+)\)", line) 16 parts = re.match(r"([^()]+)\(([0-9A-Z_a-z]+)\)", line)
17 if parts: 17 if parts:
18 match = False 18 match = False
19 for argind, argfold in enumerate(argfoldv): 19 for argind, argfold in enumerate(argfoldv):