# server.Server.typed_key_bindings

- **Module:** server.Server
- **Package:** libtmux
- **Language:** Rust
- **Kind:** method
- **Source:** https://github.com/libtmux/libtmux-rs/blob/f0e37052c232636b61d095817046e6bfc8f2ca40/crates/libtmux/src/server/keys.rs#L156
- **Page:** https://libtmux.org/en/rs/latest/reference/server-server-typed_key_bindings/

```
server.Server.typed_key_bindings(self, table: Option<&str>) -> Result<Vec<KeyBinding>, Error>
```

List key bindings as fields: table, key, command, note and repeat.

`table` narrows the listing to one key table. A table with no bindings
lists empty, since tmux keeps no empty table to refuse.

Every table is fetched and the narrowing done here. tmux 3.7 through
3.7c send a listing of exactly one binding to the message log instead
of printing it, so `list-keys -T` on a table holding one binding
answers with nothing. Across every table, that happens only on a
server with a single binding left, which lists none on those releases.

# Errors

Returns [`Error::UnsupportedCapability`] below tmux 3.7, which has no
`list-keys -F`; [`Self::key_bindings`] reads the `bind-key` lines
those releases print. Returns [`Error::DecodeListing`] when a row does
not decode, and an error when tmux cannot be reached or refuses the
listing.
