def _wizard(ns): env = builtins.__xonsh__.env shell = builtins.__xonsh__.shell.shell fname = env.get("XONSHRC")[-1] if ns.file is None else ns.file no_wiz = os.path.join(env.get("XONSH_CONFIG_DIR"), "no-wizard") w = make_xonfig_wizard(default_file=fname, confirm=ns.confirm, no_wizard_file=no_wiz) tempenv = {"PROMPT": "", "XONSH_STORE_STDOUT": False} pv = wiz.PromptVisitor(w, store_in_history=False, multiline=False) @contextlib.contextmanager def force_hide(): if env.get("XONSH_STORE_STDOUT") and hasattr(shell, "_force_hide"): orig, shell._force_hide = shell._force_hide, False yield shell._force_hide = orig else: yield with force_hide(), env.swap(tempenv): try: pv.visit() except (KeyboardInterrupt, Exception): print() print_exception()
def _wizard(ns): env = builtins.__xonsh_env__ shell = builtins.__xonsh_shell__.shell fname = env.get('XONSHCONFIG') if ns.file is None else ns.file w = make_xonfig_wizard(default_file=fname, confirm=ns.confirm) tempenv = {'PROMPT': '', 'XONSH_STORE_STDOUT': False} pv = wiz.PromptVisitor(w, store_in_history=False, multiline=False) @contextlib.contextmanager def force_hide(): if env.get('XONSH_STORE_STDOUT') and hasattr(shell, '_force_hide'): orig, shell._force_hide = shell._force_hide, False yield shell._force_hide = orig else: yield with force_hide(), env.swap(tempenv): try: pv.visit() except (KeyboardInterrupt, Exception): print_exception()
def _wizard( rcfile=None, confirm=False, ): """Launch configurator in terminal Parameters ------- rcfile : -f, --file config file location, default=$XONSHRC confirm : -c, --confirm confirm that the wizard should be run. """ env = XSH.env shell = XSH.shell.shell xonshrcs = env.get("XONSHRC", []) fname = xonshrcs[-1] if xonshrcs and rcfile is None else rcfile no_wiz = os.path.join(env.get("XONSH_CONFIG_DIR"), "no-wizard") w = make_xonfig_wizard(default_file=fname, confirm=confirm, no_wizard_file=no_wiz) tempenv = {"PROMPT": "", "XONSH_STORE_STDOUT": False} pv = wiz.PromptVisitor(w, store_in_history=False, multiline=False) @contextlib.contextmanager def force_hide(): if env.get("XONSH_STORE_STDOUT") and hasattr(shell, "_force_hide"): orig, shell._force_hide = shell._force_hide, False yield shell._force_hide = orig else: yield with force_hide(), env.swap(tempenv): try: pv.visit() except (KeyboardInterrupt, Exception): print() print_exception()