# LibTmux.Selection.filter/2

- **Module:** LibTmux
- **Package:** libtmux
- **Language:** Elixir
- **Kind:** function
- **Source:** https://github.com/libtmux/libtmux-elixir/blob/66b9b1c3f3f3186428abdfda2c76f5cf87446710/lib/libtmux/selection.ex#L82
- **Page:** https://libtmux.org/en/elixir/latest/reference/libtmux-selection-filter-2/

```
filter(selection, predicate)
@spec filter(t(item), (item -> as_boolean(term()))) ::
        t(item)
      when item: LibTmux.Schema.observation()
```

Filters with a unary local function; normal predicate exceptions propagate.

See the [worked example](api-examples.html#local-graph-and-filtering).

## Type parameters

- `item` (bound `LibTmux.Schema.observation()`)

## Parameters

- `selection` (`t(item)`)
- `predicate` (`(item -> as_boolean(term()))`)
