-if libname is not None:
- if len(args) < 1:
- usage(sys.stderr)
- sys.exit(1)
- try:
- lib = manga.lib.findlib(libname)
- except ImportError:
- sys.stderr.write("automanga: no such library: %s\n" % libname)
- sys.exit(1)
- try:
- mng = lib.byid(args[0])
- except KeyError:
- sys.stderr.write("automanga: no such manga: %s\n" % args[0])
- sys.exit(1)
-else:
- libname = "local"
- if len(args) > 0:
- mng = manga.local.manga(args[0])
+ if alias and (alias.find('=') > 0):
+ alias, nm = alias.split('=', 1)
+ if not ':' in nm:
+ usage(sys.stderr)
+ sys.exit(1)
+ libname, mid = nm.split(':', 1)
+ try:
+ lib = manga.lib.findlib(libname)
+ except ImportError:
+ sys.stderr.write("automanga: no such library: %s\n" % libname)
+ sys.exit(1)
+ try:
+ mng = lib.byid(mid)
+ except KeyError:
+ sys.stderr.write("automanga: no such manga: %s\n" % mid)
+ sys.exit(1)
+ profile.setalias(alias, libname, mng.id)
+ return
+
+ if alias:
+ try:
+ libname, mid = profile.getalias(alias)
+ except KeyError:
+ sys.stderr("automanga: no such alias: %s\n" % alias)
+ sys.exit(1)
+ try:
+ lib = manga.lib.findlib(libname)
+ except ImportError:
+ sys.stderr.write("automanga: no such library: %s\n" % libname)
+ sys.exit(1)
+ try:
+ mng = lib.byid(mid)
+ except KeyError:
+ sys.stderr.write("automanga: manga no longer found: %s\n" % mid)
+ sys.exit(1)
+ elif libname is not None:
+ if len(args) < 1:
+ usage(sys.stderr)
+ sys.exit(1)
+ try:
+ lib = manga.lib.findlib(libname)
+ except ImportError:
+ sys.stderr.write("automanga: no such library: %s\n" % libname)
+ sys.exit(1)
+ try:
+ mng = lib.byid(args[0])
+ except KeyError:
+ sys.stderr.write("automanga: no such manga: %s\n" % args[0])
+ sys.exit(1)