Exceptions¶
libtmux exceptions.
libtmux.exc¶
-
libtmux.exc._format_query(query)¶libtmux.exc._format_query(query)¶
Render a
QueryList.get()lookup back askey=valuetext.Examples
>>> from libtmux.exc import _format_query >>> _format_query({"pane_id": "%0"}) "pane_id='%0'"
>>> _format_query({"window_name": "shared", "window_index": "1"}) "window_name='shared', window_index='1'"
>>> _format_query({}) ''
-
exception libtmux.exc.LibTmuxException¶exception libtmux.exc.LibTmuxException¶
Bases:
ExceptionBase Exception for libtmux Errors.
-
exception libtmux.exc.DeprecatedError¶exception libtmux.exc.DeprecatedError¶
Bases:
LibTmuxExceptionRaised when a deprecated function, method, or parameter is used.
This exception provides clear guidance on what to use instead.
-
exception libtmux.exc.TmuxSessionExists¶exception libtmux.exc.TmuxSessionExists¶
Bases:
LibTmuxExceptionSession does not exist in the server.
-
exception libtmux.exc.TmuxCommandNotFound¶exception libtmux.exc.TmuxCommandNotFound¶
Bases:
LibTmuxExceptionApplication binary for tmux not found.
-
exception libtmux.exc.NotInsideTmux¶exception libtmux.exc.NotInsideTmux¶
Bases:
LibTmuxExceptionRaised when the process is not running inside a tmux pane.
tmux exports
$TMUXand$TMUX_PANEinto the environment of every pane it spawns. Thefrom_env()family raises this when one of them is missing or malformed – i.e. the caller is not (or is no longer) recognizable as a tmux pane’s child process.- Parameters:
variable (
str,optional) – Name of the offending environment variable, e.g."TMUX".reason (
str) – Why it is unusable. Defaults to"unset or empty".*args (
object) – Forwarded toLibTmuxException.
Examples
>>> from libtmux import exc >>> str(exc.NotInsideTmux("TMUX")) 'Not inside a tmux pane: $TMUX is unset or empty'
>>> str(exc.NotInsideTmux("TMUX_PANE", reason="not a pane id")) 'Not inside a tmux pane: $TMUX_PANE is not a pane id'
>>> str(exc.NotInsideTmux()) 'Not inside a tmux pane'
It is part of the
LibTmuxExceptionhierarchy:>>> issubclass(exc.NotInsideTmux, exc.LibTmuxException) True
Added in version 0.62.
-
exception libtmux.exc.ObjectDoesNotExist¶exception libtmux.exc.ObjectDoesNotExist¶
Bases:
LibTmuxExceptionA lookup expected one object and matched none.
Raised by
get()when nothing matches and nodefaultwas passed.- Parameters:
*args (
object) – A ready-made message, forwarded toLibTmuxException. When omitted, the message is built from query.query (
Mapping, optional) – The lookup that matched nothing, e.g.{"pane_id": "%99"}.
Examples
>>> from libtmux import exc >>> str(exc.ObjectDoesNotExist()) 'No objects found'
A lookup that named what it wanted says so:
>>> str(exc.ObjectDoesNotExist(query={"pane_id": "%99"})) "No objects found: pane_id='%99'"
It is part of the
LibTmuxExceptionhierarchy, soexcept LibTmuxExceptioncatches it:>>> issubclass(exc.ObjectDoesNotExist, exc.LibTmuxException) True
Changed in version 0.62: Re-based on
LibTmuxExceptionand given a message.
-
exception libtmux.exc.MultipleObjectsReturned¶exception libtmux.exc.MultipleObjectsReturned¶
Bases:
LibTmuxExceptionA lookup expected one object and matched several.
Raised by
get(). UnlikeObjectDoesNotExist, adefaultdoes not suppress it: adefaultis a stand-in for an object that is absent, and an ambiguous lookup is not an absent one. Silently answering with one of several equally valid matches is how you end up driving the wrong pane.On a server-wide collection, several matches for a single id is ordinary and means the window is linked into more than one session. See When one window is in two sessions for what to do about it.
- Parameters:
*args (
object) – A ready-made message, forwarded toLibTmuxException. When omitted, the message is built from count and query.count (
int,optional) – How many objects the lookup matched.query (
Mapping, optional) – The lookup that matched them, e.g.{"pane_id": "%0"}.
Examples
>>> from libtmux import exc >>> str(exc.MultipleObjectsReturned()) 'Multiple objects returned'
A lookup that matched too much reports how much, and for what:
>>> str(exc.MultipleObjectsReturned(count=2, query={"pane_id": "%0"})) "Multiple objects returned (2): pane_id='%0'"
It is part of the
LibTmuxExceptionhierarchy, soexcept LibTmuxExceptioncatches it:>>> issubclass(exc.MultipleObjectsReturned, exc.LibTmuxException) True
Added in version 0.62: Added to
libtmux.excas aLibTmuxExceptionsubclass with a message.
-
exception libtmux.exc.TmuxObjectDoesNotExist¶exception libtmux.exc.TmuxObjectDoesNotExist¶
Bases:
ObjectDoesNotExisttmux has no object with the id that was asked for.
Examples
>>> from libtmux import exc >>> str(exc.TmuxObjectDoesNotExist()) 'Could not find object'
>>> str( ... exc.TmuxObjectDoesNotExist( ... obj_key="pane_id", ... obj_id="%99", ... list_cmd="list-panes", ... list_extra_args=("-t", "%99"), ... ) ... ) "Could not find pane_id=%99 for list-panes ('-t', '%99')"
-
exception libtmux.exc.VersionTooLow¶exception libtmux.exc.VersionTooLow¶
Bases:
LibTmuxExceptionRaised if tmux below the minimum version to use libtmux.
-
exception libtmux.exc.BadSessionName¶exception libtmux.exc.BadSessionName¶
Bases:
LibTmuxExceptionDisallowed session name for tmux (empty, contains periods or colons).
-
exception libtmux.exc.OptionError¶exception libtmux.exc.OptionError¶
Bases:
LibTmuxExceptionRoot error for any error involving invalid, ambiguous or bad options.
-
exception libtmux.exc.UnknownOption¶exception libtmux.exc.UnknownOption¶
Bases:
OptionErrorOption unknown to tmux show-option(s) or show-window-option(s).
-
exception libtmux.exc.UnknownColorOption¶exception libtmux.exc.UnknownColorOption¶
Bases:
UnknownOptionUnknown color option.
-
exception libtmux.exc.InvalidOption¶exception libtmux.exc.InvalidOption¶
Bases:
OptionErrorOption invalid to tmux.
-
exception libtmux.exc.AmbiguousOption¶exception libtmux.exc.AmbiguousOption¶
Bases:
OptionErrorOption that could potentially match more than one.
-
exception libtmux.exc.WaitTimeout¶exception libtmux.exc.WaitTimeout¶
Bases:
LibTmuxExceptionFunction timed out without meeting condition.
-
exception libtmux.exc.VariableUnpackingError¶exception libtmux.exc.VariableUnpackingError¶
Bases:
LibTmuxExceptionError unpacking variable.
-
exception libtmux.exc.PaneError¶exception libtmux.exc.PaneError¶
Bases:
LibTmuxExceptionAny type of pane related error.
-
exception libtmux.exc.PaneNotFound¶exception libtmux.exc.PaneNotFound¶
Bases:
PaneErrorPane not found.
-
exception libtmux.exc.WindowError¶exception libtmux.exc.WindowError¶
Bases:
LibTmuxExceptionAny type of window related error.
-
exception libtmux.exc.MultipleActiveWindows¶exception libtmux.exc.MultipleActiveWindows¶
Bases:
WindowErrorMultiple active windows.
-
exception libtmux.exc.NoActiveWindow¶exception libtmux.exc.NoActiveWindow¶
Bases:
WindowErrorNo active window found.
-
exception libtmux.exc.NoWindowsExist¶exception libtmux.exc.NoWindowsExist¶
Bases:
WindowErrorNo windows exist for object.
-
exception libtmux.exc.AdjustmentDirectionRequiresAdjustment¶exception libtmux.exc.AdjustmentDirectionRequiresAdjustment¶
Bases:
LibTmuxException,ValueErrorIf adjustment_direction is set, adjustment must be set.
-
exception libtmux.exc.WindowAdjustmentDirectionRequiresAdjustment¶exception libtmux.exc.WindowAdjustmentDirectionRequiresAdjustment¶
Bases:
WindowError,AdjustmentDirectionRequiresAdjustmentValueError for
libtmux.Window.resize_window().
-
exception libtmux.exc.PaneAdjustmentDirectionRequiresAdjustment¶exception libtmux.exc.PaneAdjustmentDirectionRequiresAdjustment¶
Bases:
WindowError,AdjustmentDirectionRequiresAdjustmentValueError for
libtmux.Pane.resize_pane().
-
exception libtmux.exc.RequiresDigitOrPercentage¶exception libtmux.exc.RequiresDigitOrPercentage¶
Bases:
LibTmuxException,ValueErrorRequires digit (int or str digit) or a percentage.