X-Git-Url: http://dolda2000.com/gitweb/?a=blobdiff_plain;f=automanga;h=01710e481693214847d97ba3e2a6a51aef7fc8da;hb=61e4bd12084cc2bf0c42f4e4855ee40b08f73941;hp=ff36282e5dfb77adc77493af1f351c35f492ec86;hpb=43bddc57ade144757490bda390fdb96dda0c61bc;p=automanga.git diff --git a/automanga b/automanga index ff36282..01710e4 100755 --- a/automanga +++ b/automanga @@ -1,11 +1,8 @@ -#!/usr/bin/python +#!/usr/bin/python3 -import sys, getopt +import sys, getopt, pathlib import manga.lib, manga.reader, manga.profile, manga.local -import glib, gobject, gtk - -gobject.threads_init() -gtk.gdk.threads_init() +from gi.repository import Gtk, Gdk, GObject def usage(out): out.write("usage: automanga [-h] [-p PROFILE] {DIRECTORY|-l LIBRARY ID|-a ALIAS}\n") @@ -84,6 +81,9 @@ def main(): except KeyError: sys.stderr.write("%s %s: no longer found\n" % (mprof.libnm, mprof.id)) continue + except Exception as exc: + sys.stderr.write("%s %s: unexpected error: %s\n" % (mprof.libnm, mprof.id, str(exc))) + continue sys.stdout.write("%s %s: \"%s\"\n" % (mprof.libnm, mprof.id, mng.name)) return @@ -139,11 +139,11 @@ def main(): else: libname = "local" try: - if len(args) > 0: - mdir = args.pop(0) - else: - mdir = "." - mng = manga.local.manga(mdir) + if len(args) < 1: + usage(sys.stderr) + sys.exit(1) + mdir = args.pop(0) + mng = manga.local.manga(pathlib.Path(mdir)) except TypeError: sys.stderr.write("automanga: not a valid manga directory: %s\n" % mdir) sys.exit(1) @@ -162,7 +162,7 @@ def main(): reader = manga.reader.reader(mng, mprof) reader.show() - gtk.main() + Gtk.main() try: main()