diff --git a/mmgen/opts.py b/mmgen/opts.py index 6d75d6b0..66a990ef 100755 --- a/mmgen/opts.py +++ b/mmgen/opts.py @@ -33,6 +33,30 @@ from .util import * def usage(): Die(1,'USAGE: {} {}'.format(g.prog_name,usage_txt)) +def version(): + Die(0,fmt(""" + {pn} version {g.version} + Part of the {g.proj_name} suite, an online/offline cryptocurrency wallet for the + command line. Copyright (C){g.Cdates} {g.author} {g.email} + """.format(g=g,pn=g.prog_name.upper()),indent=' ').rstrip()) + +def print_help(po,opts_data,opt_filter): + if not 'code' in opts_data: + opts_data['code'] = {} + + if getattr(opt,'longhelp',None): + opts_data['code']['long_options'] = common_opts_data['code'] + def remove_unneeded_long_opts(): + d = opts_data['text']['long_options'] + if g.prog_name != 'mmgen-tool': + d = '\n'.join(''+i for i in d.split('\n') if not '--monero-wallet' in i) + if g.proto.base_proto != 'Ethereum': + d = '\n'.join(''+i for i in d.split('\n') if not '--token' in i) + opts_data['text']['long_options'] = d + remove_unneeded_long_opts() + + mmgen.share.Opts.print_help(po,opts_data,opt_filter) # exits + def fmt_opt(o): return '--' + o.replace('_','-') @@ -198,7 +222,8 @@ opts_data_dfl = { def init(opts_data=None,add_opts=[],opt_filter=None,parse_only=False): - opts_data = opts_data or opts_data_dfl + if opts_data is None: + opts_data = opts_data_dfl opts_data['text']['long_options'] = common_opts_data['text'] @@ -225,11 +250,7 @@ def init(opts_data=None,add_opts=[],opt_filter=None,parse_only=False): usage_txt = opts_data['text']['usage'] if opt.version: - Die(0,fmt(""" - {pn} version {g.version} - Part of the {g.proj_name} suite, an online/offline cryptocurrency wallet for the - command line. Copyright (C){g.Cdates} {g.author} {g.email} - """.format(g=g,pn=g.prog_name.upper()),indent=' ').rstrip()) + version() # exits # === begin global var initialization === # @@ -312,21 +333,7 @@ def init(opts_data=None,add_opts=[],opt_filter=None,parse_only=False): # print help screen only after global vars are initialized: if getattr(opt,'help',None) or getattr(opt,'longhelp',None): - if not 'code' in opts_data: - opts_data['code'] = {} - opts_data['code']['long_options'] = common_opts_data['code'] - - if getattr(opt,'longhelp',None): - def remove_unneeded_long_opts(): - d = opts_data['text']['long_options'] - if g.prog_name != 'mmgen-tool': - d = '\n'.join(''+i for i in d.split('\n') if not '--monero-wallet' in i) - if g.proto.base_proto != 'Ethereum': - d = '\n'.join(''+i for i in d.split('\n') if not '--token' in i) - opts_data['text']['long_options'] = d - remove_unneeded_long_opts() - - mmgen.share.Opts.print_help(po,opts_data,opt_filter) # exits + print_help(po,opts_data,opt_filter) # exits check_or_create_dir(g.data_dir) # g.data_dir is finalized, so we can create it diff --git a/mmgen/rpc.py b/mmgen/rpc.py index 9de85f72..26c57b2e 100755 --- a/mmgen/rpc.py +++ b/mmgen/rpc.py @@ -242,7 +242,7 @@ class RPCClient(MMGenObject): die(1,rpc_credentials_msg.format( proto_name = self.proto.name, - cf_name = (self.proto.is_fork_of or self.proto.name).lower(), + cf_name = (self.proto.is_fork_of or self.proto.name).lower(), )) # positional params are passed to the daemon, kwargs to the backend diff --git a/mmgen/tool.py b/mmgen/tool.py index c28d8a26..444a5a67 100755 --- a/mmgen/tool.py +++ b/mmgen/tool.py @@ -1173,7 +1173,7 @@ class tool_api( Initializer - takes no arguments """ if not hasattr(opt,'version'): - opts.init({'text': { 'desc': '', 'usage':'', 'options':'' }}) + opts.init() opt.use_old_ed25519 = None opt.type = None diff --git a/test/misc/cfg.py b/test/misc/cfg.py index b531fd49..c60fd8b8 100755 --- a/test/misc/cfg.py +++ b/test/misc/cfg.py @@ -3,7 +3,7 @@ from mmgen.util import msg from mmgen.common import * -cmd_args = opts.init({'text': { 'desc': '', 'usage':'', 'options':'' }}) +cmd_args = opts.init() from mmgen.cfg import cfg_file cu = cfg_file('usr') diff --git a/test/misc/utf8_output.py b/test/misc/utf8_output.py index 16805001..43c15963 100755 --- a/test/misc/utf8_output.py +++ b/test/misc/utf8_output.py @@ -2,7 +2,7 @@ from mmgen.common import * -cmd_args = opts.init({'text': { 'desc': '', 'usage':'', 'options':'' }}) +cmd_args = opts.init() from mmgen.util import msg