X-Git-Url: http://dolda2000.com/gitweb/?a=blobdiff_plain;f=automanga;h=36bd1cf814e25fe14ab1cf7595abc3e7562feda1;hb=cf6e78d7cc9d25b630710d8f1982667a5844bd35;hp=e80db3fff9a511eb0d4468d3ca5a553e345465d9;hpb=e26514bb839756ed7f14711d193b5ebb3777c6b8;p=automanga.git diff --git a/automanga b/automanga index e80db3f..36bd1cf 100755 --- a/automanga +++ b/automanga @@ -1,20 +1,20 @@ #!/usr/bin/python import sys, getopt -import manga.lib, manga.reader +import manga.lib, manga.reader, manga.profile, manga.local import glib, gobject, gtk gobject.threads_init() gtk.gdk.threads_init() def usage(out): - out.write("usage: automanga [-h] [DIR]\n") - out.write(" automanga [-h] -l LIBRARY ID\n") + out.write("usage: automanga [-h] [-p PROFILE] [-l LIBRARY] [DIR-OR-ID]\n") out.write(" automanga [-h] -s LIBRARY NAME\n") libname = None search = False -opts, args = getopt.getopt(sys.argv[1:], "hl:s") +profile = "" +opts, args = getopt.getopt(sys.argv[1:], "hl:sp:") for o, a in opts: if o == "-h": usage(sys.stdout) @@ -23,14 +23,26 @@ for o, a in opts: libname = a elif o == "-s": search = True + elif o == "-p": + if a == "": + profile = None + else: + profile = a +if profile == "": + try: + profile = manga.profile.profile.last() + except KeyError: + profile = manga.profile.profile.byname("default") +elif profile is not None: + profile = manga.profile.profile.byname(profile) if search: if len(args) < 2: usage(sys.stderr) sys.exit(1) try: - lib = manga.lib.libraries[args[0]] - except KeyError: + lib = manga.lib.findlib(args[0]) + except ImportError: sys.stderr.write("automanga: no such library: %s\n" % args[0]) sys.exit(1) for manga in lib.byname(args[1]): @@ -42,8 +54,8 @@ if libname is not None: usage(sys.stderr) sys.exit(1) try: - lib = manga.lib.libraries[libname] - except KeyError: + lib = manga.lib.findlib(libname) + except ImportError: sys.stderr.write("automanga: no such library: %s\n" % libname) sys.exit(1) try: @@ -52,9 +64,21 @@ if libname is not None: sys.stderr.write("automanga: no such manga: %s\n" % args[0]) sys.exit(1) else: - sys.stderr.write("automanga: local manga not yet implemented\n") - sys.exit(1) + libname = "local" + try: + if len(args) > 0: + mdir = args[0] + else: + mdir = "." + mng = manga.local.manga(mdir) + except TypeError: + sys.stderr.write("automanga: not a valid manga directory: %s\n" % mdir) + sys.exit(1) + +mprof = None if profile is None else profile.getmanga(libname, mng.id, True) +if profile is not None: + profile.setlast() -reader = manga.reader.reader(mng) +reader = manga.reader.reader(mng, mprof) reader.show() gtk.main()