xonsh.shell¶
The xonsh shell
- class xonsh.shell.Shell(execer, ctx=None, shell_type=None, history_backend=None, **kwargs)[source]¶
Main xonsh shell.
Initializes execution environment and decides if prompt_toolkit or readline version of shell should be used.
- Parameters:
- execerExecer
An execer instance capable of running xonsh code.
- ctxMapping, optional
The execution context for the shell (e.g. the globals namespace). If none, this is computed by loading the rc files. If not None, this no additional context is computed and this is used directly.
- shell_typestr, optional
The shell type to start, such as ‘readline’, ‘prompt_toolkit1’, or ‘random’.
- history_backendstr, optional
The name of the history backend to use.
- shell_type_aliases = {'b': 'best', 'best': 'best', 'd': 'dumb', 'dumb': 'dumb', 'prompt-toolkit': 'prompt_toolkit', 'prompt_toolkit': 'prompt_toolkit', 'ptk': 'prompt_toolkit', 'rand': 'random', 'random': 'random', 'readline': 'readline', 'rl': 'readline'}¶
- xonsh.shell.deindent(src)[source]¶
Remove leading indentation from
srcbefore compilation.Applies
textwrap.dedentto strip the common leading whitespace from every line. If the first line ends with a line-continuation backslash and still begins with whitespace after dedent (paste of a subproc command where line 1 was indented deeper than the continuation line), alsolstripthe source so the first line is flush-left.