Added a simple reader shell.
[automanga.git] / automanga
1 #!/usr/bin/python
2
3 import sys, getopt
4 import manga.lib, manga.reader
5 import glib, gobject, gtk
6
7 gobject.threads_init()
8 gtk.gdk.threads_init()
9
10 def usage(out):
11     out.write("usage: automanga [-h] [DIR]\n")
12     out.write("       automanga [-h] -l LIBRARY ID\n")
13     out.write("       automanga [-h] -s LIBRARY NAME\n")
14
15 libname = None
16 search = False
17 opts, args = getopt.getopt(sys.argv[1:], "hl:s")
18 for o, a in opts:
19     if o == "-h":
20         usage(sys.stdout)
21         sys.exit(0)
22     elif o == "-l":
23         libname = a
24     elif o == "-s":
25         search = True
26
27 if search:
28     if len(args) < 2:
29         usage(sys.stderr)
30         sys.exit(1)
31     try:
32         lib = manga.lib.libraries[args[0]]
33     except KeyError:
34         sys.stderr.write("automanga: no such library: %s\n" % args[0])
35         sys.exit(1)
36     for manga in lib.byname(args[1]):
37         sys.stdout.write("\"%s\": %s\n" % (manga.name, manga.id))
38     sys.exit(0)
39
40 if libname is not None:
41     if len(args) < 1:
42         usage(sys.stderr)
43         sys.exit(1)
44     try:
45         lib = manga.lib.libraries[libname]
46     except KeyError:
47         sys.stderr.write("automanga: no such library: %s\n" % libname)
48         sys.exit(1)
49     try:
50         mng = lib.byid(args[0])
51     except KeyError:
52         sys.stderr.write("automanga: no such manga: %s\n" % args[0])
53         sys.exit(1)
54 else:
55     sys.stderr.write("automanga: local manga not yet implemented\n")
56     sys.exit(1)
57
58 reader = manga.reader.reader(mng)
59 reader.show()
60 gtk.main()