# tmux customize-mode

Source: https://libtmux.org/en/tmux/latest/manual/customize-mode/

> Put a pane into customize mode, where options and key bindings may be browsed and modified from a list.

Put a pane into customize mode, where options and key bindings may be browsed and modified from a list.

## Syntax

```tmux-usage
tmux customize-mode [-NZ] [-F format] [-f filter] [-t target-pane]
```

## Behavior

Put a pane into customize mode, where options and key bindings may be browsed and modified from a list. Option values in the list are shown for the active pane in the current window. `-Z` zooms the pane. The following keys may be used in customize mode:

|                                                                     |                                                                            |
| ------------------------------------------------------------------- | -------------------------------------------------------------------------- |
| [**Key**](https://libtmux.org/en/tmux/latest/manual/full/#Key~3)    | [**Function**](https://libtmux.org/en/tmux/latest/manual/full/#Function~3) |
| [`Enter`](https://libtmux.org/en/tmux/latest/manual/full/#Enter~3)  | Set pane, window, session or global option value                           |
| [`Up`](https://libtmux.org/en/tmux/latest/manual/full/#Up~3)        | Select previous item                                                       |
| [`Down`](https://libtmux.org/en/tmux/latest/manual/full/#Down~3)    | Select next item                                                           |
| [`+`](https://libtmux.org/en/tmux/latest/manual/full/#+~2)          | Expand selected item                                                       |
| `-`                                                                 | Collapse selected item                                                     |
| `M-+`                                                               | Expand all items                                                           |
| `M--`                                                               | Collapse all items                                                         |
| [`s`](https://libtmux.org/en/tmux/latest/manual/full/#s)            | Set option value or key attribute                                          |
| [`S`](https://libtmux.org/en/tmux/latest/manual/full/#S~2)          | Set global option value                                                    |
| [`w`](https://libtmux.org/en/tmux/latest/manual/full/#w)            | Set window option value, if option is for pane and window                  |
| [`d`](https://libtmux.org/en/tmux/latest/manual/full/#d~2)          | Set an option or key to the default                                        |
| [`D`](https://libtmux.org/en/tmux/latest/manual/full/#D~3)          | Set tagged options and tagged keys to the default                          |
| [`u`](https://libtmux.org/en/tmux/latest/manual/full/#u~2)          | Unset an option (set to default value if global) or unbind a key           |
| [`U`](https://libtmux.org/en/tmux/latest/manual/full/#U)            | Unset tagged options and unbind tagged keys                                |
| `C-s`                                                               | Search by name                                                             |
| [`n`](https://libtmux.org/en/tmux/latest/manual/full/#n~3)          | Repeat last search forwards                                                |
| [`N`](https://libtmux.org/en/tmux/latest/manual/full/#N~4)          | Repeat last search backwards                                               |
| [`t`](https://libtmux.org/en/tmux/latest/manual/full/#t~3)          | Toggle if item is tagged                                                   |
| [`T`](https://libtmux.org/en/tmux/latest/manual/full/#T~4)          | Tag no items                                                               |
| `C-t`                                                               | Tag all items                                                              |
| [`f`](https://libtmux.org/en/tmux/latest/manual/full/#f~4)          | Enter a format to filter items                                             |
| [`v`](https://libtmux.org/en/tmux/latest/manual/full/#v~4)          | Toggle option information                                                  |
| [`F1 or C-h`](https://libtmux.org/en/tmux/latest/manual/full/#F1~3) | Display help                                                               |
| [`q`](https://libtmux.org/en/tmux/latest/manual/full/#q~3)          | Exit mode                                                                  |

`-f` specifies an initial filter: the filter is a format - if it evaluates to zero, the item in the list is not shown, otherwise it is shown. If a filter would lead to an empty list, it is ignored. `-F` specifies the format for each item in the tree. `-N` starts without the option information. This command works only if at least one client is attached.

## C implementation

Internal declarations in tmux 3.7c:

* [`cmd_customize_mode_entry`](https://libtmux.org/en/tmux/latest/reference/c-variable-cmd_customize_mode_entry/)
* [`cmd_choose_tree_exec`](https://libtmux.org/en/tmux/latest/reference/c-function-cmd-choose-tree-c-cmd_choose_tree_exec/)

## Use from a library

Each API describes its own defaults, errors and execution model.

* [Python](https://libtmux.org/en/py/latest/reference/libtmux-pane-customize_mode/)
* [TypeScript](https://libtmux.org/en/ts/latest/reference/pane-pane-customizemode/)
* [Go](https://libtmux.org/en/go/latest/reference/tmux-pane-customizemode/)
* [C#](https://libtmux.org/en/csharp/latest/reference/libtmux-pane-entercustomizemodeasync/)

tmux sources and license

Syntax comes from `tmux 3.7c list-commands`. See the [global options](https://libtmux.org/en/tmux/latest/manual/full/#DESCRIPTION) for sockets and configuration, and [command syntax and targets](https://libtmux.org/en/tmux/latest/manual/full/#COMMANDS).

Behavior is taken from the [tmux 3.7c manual](https://github.com/tmux/tmux/blob/79072dd1a9f5fb437a5859e362a496fd57ec0981/tmux.1).

[Command declaration](https://github.com/tmux/tmux/blob/79072dd1a9f5fb437a5859e362a496fd57ec0981/cmd-choose-tree.c#L75)

```
Copyright (c) 2007 Nicholas Marriott <nicholas.marriott@gmail.com>

Permission to use, copy, modify, and distribute this software for any
purpose with or without fee is hereby granted, provided that the above
copyright notice and this permission notice appear in all copies.

THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
WHATSOEVER RESULTING FROM LOSS OF MIND, USE, DATA OR PROFITS, WHETHER
IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING
OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
```
