Utilities¶
Helper methods and mixins for libtmux.
libtmux.common¶
-
libtmux.common.TMUX_MIN_VERSION = '3.2a'¶
Minimum version of tmux required to run libtmux
-
libtmux.common.TMUX_MAX_VERSION = '3.6'¶
Most recent version of tmux supported
-
class libtmux.common.EnvironmentMixin¶
Bases:
objectMixin for manager session and server level environment variables in tmux.
-
class libtmux.common.tmux_cmd¶
Bases:
objectRun any tmux(1) command through
subprocess.Examples
Create a new session, check for error:
>>> proc = tmux_cmd(f'-L{server.socket_name}', 'new-session', '-d', '-P', '-F#S') >>> if proc.stderr: ... raise exc.LibTmuxException( ... 'Command: %s returned error: %s' % (proc.cmd, proc.stderr) ... ) ...
>>> print(f'tmux command returned {" ".join(proc.stdout)}') tmux command returned 2
Equivalent to:
$ tmux new-session -s my session
Notes
Changed in version 0.8: Renamed from
tmuxtotmux_cmd.
-
libtmux.common.get_version(tmux_bin=None)¶
Return tmux version.
If tmux is built from git master, the version returned will be the latest version appended with -master, e.g.
2.4-master.If using OpenBSD’s base system tmux, the version will have
-openbsdappended to the latest version, e.g.2.4-openbsd.- Parameters:
tmux_bin (str, optional) – Path to tmux binary. If None, uses the system tmux from
shutil.which().- Returns:
tmux version according to tmux_bin if provided, otherwise the system tmux from
shutil.which()- Return type:
distutils.version.LooseVersion
-
libtmux.common.has_version(version, tmux_bin=None)¶
Return True if tmux version installed.
-
libtmux.common.has_gt_version(min_version, tmux_bin=None)¶
Return True if tmux version greater than minimum.
-
libtmux.common.has_gte_version(min_version, tmux_bin=None)¶
Return True if tmux version greater or equal to minimum.
-
libtmux.common.has_lte_version(max_version, tmux_bin=None)¶
Return True if tmux version less or equal to minimum.
-
libtmux.common.has_lt_version(max_version, tmux_bin=None)¶
Return True if tmux version less than minimum.
-
libtmux.common.has_minimum_version(raises=True, tmux_bin=None)¶
Return True if tmux meets version requirement. Version >= 3.2a.
- Parameters:
- Returns:
True if tmux meets minimum required version.
- Return type:
- Raises:
libtmux.exc.VersionTooLow – tmux version below minimum required for libtmux
Notes
Changed in version 0.49.0: Minimum version bumped to 3.2a. For older tmux, use libtmux v0.48.x.
Changed in version 0.7.0: No longer returns version, returns True or False
Changed in version 0.1.7: Versions will now remove trailing letters per Issue 55.
-
libtmux.common.session_check_name(session_name)¶
Raise exception session name invalid, modeled after tmux function.
tmux(1) session names may not be empty, or include periods or colons. These delimiters are reserved for noting session, window and pane.
:raises
exc.BadSessionName: Invalid session name.
-
libtmux.common.get_libtmux_version()¶
Return libtmux version is a PEP386 compliant format.
- Returns:
libtmux version
- Return type:
distutils.version.LooseVersion