def write_fig(f, objs): f.write("#FIG 3.2 Produced by PyGobstones version %s\n" % (utils.version_number(),)) f.write("Landscape\n") f.write("Center\n") f.write("Metric\n") f.write("A3\n") f.write("100.00\n") f.write("Single\n") f.write("-2\n") f.write("1200 2\n") for x in objs: x.write(f)
def main(): try: options = GbsOptions(sys.argv) except OptionsException as exception: if exception.msg != '': report_error(exception.error_type(), exception.msg) sys.exit(1) else: usage() if options['version']: LOGGER.info(utils.version_number()) sys.exit(0) elif options['help']: usage(0) elif options['license']: LOGGER.info(utils.read_file(LICENSE_FILE)) sys.exit(0) elif options['keyset']: key_set = ["%s (%s)" % kv for kv in get_key_set()] LOGGER.info(i18n.i18n("Interactive program key set: %s") % ( "\n\t" + "\n\t".join(key_set),)) elif options['src']: if options['names']: gobstones = lang.Gobstones(lang.GobstonesOptions(get_lang(options))) print json.dumps(gobstones.parse_names(options['src'], open(options['src']).read())) else: try: gbs_run = run_filename(options['src'], options) except SourceException as exception: report_program_error(exception.error_type(), exception.msg, exception.area) sys.exit(1) except GobstonesException as exception: report_error(i18n.i18n("%s Error") % ("Gobstones",), exception.msg) sys.exit(4) except Exception as exception: report_error(i18n.i18n("%s Error") % ("Python",), "Failed to execute %s file." % (options['src'],)) logging.exception(str(exception)) sys.exit(3) print_run(gbs_run, options) persist_run(gbs_run, options) else: usage()