xonsh.xontribs

Tools for helping manage xontributions.

exception xonsh.xontribs.XontribNotInstalled[source]

raised when the requested xontrib is not found

with_traceback()

Exception.with_traceback(tb) – set self.__traceback__ to tb and return self.

args
class xonsh.xontribs.ExitCode(value)[source]

An enumeration.

INIT_FAILED = 2
NOT_FOUND = 1
OK = 0
class xonsh.xontribs.Xontrib(module: str, distribution: tp.Optional[Distribution] = None)[source]

Meta class that is used to describe a xontrib

Create new instance of Xontrib(module, distribution)

count(value, /)

Return number of occurrences of value.

get_description()[source]
index(value, start=0, stop=sys.maxsize, /)

Return first index of value.

Raises ValueError if the value is not present.

distribution: tp.Optional[Distribution]

short description about the xontrib.

property is_auto_loaded
property is_loaded
property license
module: str

path to the xontrib module

property url
class xonsh.xontribs.XontribAlias(threadable=True, **kwargs)[source]

Manage xonsh extensions

exception Error(message: str, errno=1)

Special case, when raised, the traceback will not be shown. Instead the process with exit with error code and message

with_traceback()

Exception.with_traceback(tb) – set self.__traceback__ to tb and return self.

args
build()[source]

Sub-classes should return constructed ArgumentParser

create_parser(func=None, has_args=False, allowed_params=None, **kwargs)

create root parser

err(*args, **kwargs)

Write text to error stream

hook_post_add_argument(*, parser: xonsh.cli_utils.ArgParser | argparse.ArgumentParser, action: argparse.Action, param: str, func: Callable)

Hook into parser.add_argument step.

Can be used to update action’s attributes

hook_pre_add_argument(param: str, func, flags, kwargs)

Hook to update arguments that are passed to parser.add_argument

out(*args, **kwargs)

Write text to output stream

write_to(stream: str, *args, **kwargs)
xonsh_complete(command, **kwargs)
property parser
xonsh.xontribs.auto_load_xontribs_from_entrypoints(blocked: Sequence[str] = (), verbose=False)[source]

Load xontrib modules exposed via setuptools’s entrypoints

xonsh.xontribs.find_xontrib(name, full_module=False)[source]

Finds a xontribution from its name.

xonsh.xontribs.get_module_docstring(module: str) str[source]

Find the module and return its docstring without actual import

xonsh.xontribs.get_xontribs() Dict[str, xonsh.xontribs.Xontrib][source]

Return xontrib definitions lazily.

xonsh.xontribs.prompt_xontrib_install(names: List[str])[source]

Returns a formatted string with name of xontrib package to prompt user

xonsh.xontribs.update_context(name, ctx: dict, full_module=False)[source]

Updates a context in place from a xontrib.

xonsh.xontribs.xontrib_context(name, full_module=False)[source]

Return a context dictionary for a xontrib of a given name.

xonsh.xontribs.xontrib_data()[source]

Collects and returns the data about installed xontribs.

xonsh.xontribs.xontrib_names_completer(**_)[source]
xonsh.xontribs.xontrib_unload_completer(**_)[source]
xonsh.xontribs.xontribs_list(to_json=False)[source]

List installed xontribs and show whether they are loaded or not

Parameters
to_json-j, –json

reports results as json

xonsh.xontribs.xontribs_load(names: Sequence[str] = (), verbose=False, full_module=False)[source]

Load xontribs from a list of names

Parameters
names

names of xontribs

verbose-v, –verbose

verbose output

full_module-f, –full

indicates that the names are fully qualified module paths and not inside xontrib package

xonsh.xontribs.xontribs_loaded()[source]

Returns list of loaded xontribs.

xonsh.xontribs.xontribs_reload(names: Sequence[str] = (), verbose=False)[source]

Reload the given xontribs

Parameters
names

name of xontribs to reload

xonsh.xontribs.xontribs_unload(names: Sequence[str] = (), verbose=False)[source]

Unload the given xontribs

Parameters
names

name of xontribs to unload

Notes

Proper cleanup can be implemented by the xontrib. The default is equivalent to del sys.modules[module].