10 finame = sys.argv[1] |
10 finame = sys.argv[1] |
11 if len(sys.argv) >= 3: |
11 if len(sys.argv) >= 3: |
12 foname = sys.argv[2] |
12 foname = sys.argv[2] |
13 |
13 |
14 fin = io.open(finame, mode='r', buffering=1, encoding="utf-8") |
14 fin = io.open(finame, mode='r', buffering=1, encoding="utf-8") |
15 if foname is None: |
|
16 fout = sys.stdout |
|
17 else: |
|
18 fout = open(foname, "w") |
|
19 |
|
20 |
15 |
21 parser = gadict.Parser() |
16 parser = gadict.Parser() |
22 try: |
17 try: |
23 dom = parser.parse(fin) |
18 dom = parser.parse(fin) |
24 except gadict.ParseException as ex: |
19 except gadict.ParseException as ex: |
28 traceback.print_exc() |
23 traceback.print_exc() |
29 exit(1) |
24 exit(1) |
30 finally: |
25 finally: |
31 fin.close() |
26 fin.close() |
32 |
27 |
|
28 |
33 prelude = dom[0] |
29 prelude = dom[0] |
34 if prelude.name is not None: |
30 |
35 fout.write("_____\n\n00-database-short\n") |
31 with open(foname+".name", "w") as f: # for dictfmt -s |
36 fout.write(prelude.name) |
32 if prelude.name is not None: |
37 fout.write("\n") |
33 f.write(prelude.name) |
38 if len(prelude.urls) > 0: |
34 f.write("\n") |
39 fout.write("_____\n\n00-database-url\n") |
35 |
40 for url in prelude.urls: |
36 with open(foname+".url", "w") as f: # for dictfmt -u |
41 fout.write(url) |
37 if len(prelude.urls) > 0: |
42 fout.write("\n") |
38 f.write(prelude.urls[0]) |
43 fout.write("_____\n\n00-database-info\n") |
39 f.write("\n") |
|
40 |
|
41 |
|
42 if foname is None: |
|
43 fout = sys.stdout |
|
44 else: |
|
45 fout = open(foname, "w") |
|
46 |
44 if prelude.name is not None: |
47 if prelude.name is not None: |
45 fout.write("Dictionary name: ") |
48 fout.write("Dictionary name: ") |
46 fout.write(prelude.name) |
49 fout.write(prelude.name) |
47 fout.write("\n\n") |
50 fout.write("\n\n") |
48 fout.write("Project URLs: ") |
51 fout.write("Project URLs: ") |
49 fout.write(" , ".join(prelude.urls)) |
52 fout.write(" , ".join(prelude.urls)) |
50 fout.write("\n\n") |
53 fout.write("\n\n") |
51 fout.write("Project licenses: ") |
54 fout.write("Project licenses: ") |
52 fout.write(", ".join(prelude.licences)) |
55 fout.write(", ".join(prelude.licences)) |
|
56 fout.write("\n\n") |
|
57 fout.write(prelude.about) |
53 fout.write("\n") |
58 fout.write("\n") |
54 |
59 |
55 for idx in range(1, len(dom)): |
60 for idx in range(1, len(dom)): |
56 article = dom[idx] |
61 article = dom[idx] |
57 fout.write("_____\n\n") |
62 fout.write("_____\n\n") |