On this page
libtmux.hooks.HooksMixin.set_hooks
- Module
- libtmux.hooks
- Declared in
- HooksMixin
- Package
- libtmux
- Source
- src/libtmux/hooks.py
- set_hooks ( self , hook : str , values : HookValues , clear_existing : bool = False , global_ : bool | None = None , scope : OptionScope | _DefaultOptionScope | None = DEFAULT_OPTION_SCOPE ) Self
-
Set multiple indexed hooks at once.
Examples
Set hooks with explicit indices:
>>> session.set_hooks('session-renamed', { ... 0: 'display-message "hook 0"', ... 1: 'display-message "hook 1"', ... }) Session($...)>>> hooks = session.show_hook('session-renamed') >>> sorted(hooks.keys()) [0, 1]>>> session.unset_hook('session-renamed') Session($...)Set hooks from a list (sequential indices):
>>> session.set_hooks('after-new-window', [ ... 'select-pane -t 0', ... 'send-keys "clear" Enter', ... ]) Session($...)>>> hooks = session.show_hook('after-new-window') >>> sorted(hooks.keys()) [0, 1]Replace all existing hooks with
clear_existing=True:>>> session.set_hooks( ... 'session-renamed', ... {0: 'display-message "new"'}, ... clear_existing=True, ... ) Session($...)>>> hooks = session.show_hook('session-renamed') >>> sorted(hooks.keys()) [0]>>> session.unset_hook('session-renamed') Session($...)>>> session.unset_hook('after-new-window') Session($...)- Parameters
-
-
hook ( str ) – Hook name, e.g. 'session-renamed'
-
values ( HookValues ) – Values to set. Can be: - dict[int, str]: {0: 'cmd1', 1: 'cmd2'} - explicit indices - SparseArray[str]: preserves indices from another hook - list[str]: ['cmd1', 'cmd2'] - sequential indices starting at 0
-
clear_existing ( bool ) – If True, unset all existing hook values first
-
scope ( OptionScope | _DefaultOptionScope | None ) – Scope for the hook
-
- Returns
-
Self Returns self for method chaining.
0 declared, 0 inherited