# libtmux.Window.show_hook

- **Module:** libtmux.Window
- **Package:** libtmux
- **Language:** Python
- **Kind:** method
- **Source:** https://github.com/tmux-python/libtmux/blob/036c521c4b83ce6e434eb50afe2a0d08a6a05e46/src/libtmux/hooks.py#L371
- **Page:** https://libtmux.org/reference/py/libtmux-window-show_hook/

```
libtmux.Window.show_hook(self, hook: str, global_: bool = False, scope: OptionScope | _DefaultOptionScope | None = DEFAULT_OPTION_SCOPE) -> str | int | SparseArray[str] | None
```

Return value for a hook.

For array hooks (e.g., ``session-renamed``), returns a
:class:`~libtmux._internal.sparse_array.SparseArray` with hook values
at their original indices. Use ``.keys()`` for indices and ``.values()``
for values.

## Parameters

- `self`
- `hook` (str) — Hook name to query
- `global_` (bool)
- `scope` (OptionScope | _DefaultOptionScope | None)

## Returns

str | int | SparseArray[str] | None
    Hook value. For array hooks, returns SparseArray.

## Raises

- `exc.OptionError`
- `exc.UnknownOption`
- `exc.InvalidOption`
- `exc.AmbiguousOption`

## Example

```python
>>> session.set_hook('session-renamed[0]', 'display-message "test"')
Session($...)
```

## Example

```python
>>> hooks = session.show_hook('session-renamed')
>>> isinstance(hooks, SparseArray)
True
```

## Example

```python
>>> sorted(hooks.keys())
[0]
```

## Example

```python
>>> session.unset_hook('session-renamed')
Session($...)
```
