# menu_key_cb

- **Language:** C
- **Kind:** function
- **Source:** https://github.com/tmux/tmux/blob/3b929f332aafa7f1080eacc31feb11ffbb1d1841/menu.c#L183
- **Page:** https://libtmux.org/en/tmux/3.2a/reference/c-function-menu-c-menu_key_cb/

```c
static int menu_key_cb(struct client *c, struct key_event *event)
```

## Parameters

- `c` (`struct client *`)
- `event` (`struct key_event *`)

## Calls

- [`cmd_parse_and_append`](/en/tmux/3.2a/reference/c-function-cmd_parse_and_append/) (function) [Call site](https://github.com/tmux/tmux/blob/3b929f332aafa7f1080eacc31feb11ffbb1d1841/menu.c#L335)
- [`cmdq_append`](/en/tmux/3.2a/reference/c-function-cmdq_append/) (function) [Call site](https://github.com/tmux/tmux/blob/3b929f332aafa7f1080eacc31feb11ffbb1d1841/menu.c#L337)
- [`cmdq_free_state`](/en/tmux/3.2a/reference/c-function-cmdq_free_state/) (function) [Call site](https://github.com/tmux/tmux/blob/3b929f332aafa7f1080eacc31feb11ffbb1d1841/menu.c#L340)
- [`cmdq_get_event`](/en/tmux/3.2a/reference/c-function-cmdq_get_event/) (function) [Call site](https://github.com/tmux/tmux/blob/3b929f332aafa7f1080eacc31feb11ffbb1d1841/menu.c#L330)
- [`cmdq_new_state`](/en/tmux/3.2a/reference/c-function-cmdq_new_state/) (function) [Call site](https://github.com/tmux/tmux/blob/3b929f332aafa7f1080eacc31feb11ffbb1d1841/menu.c#L333)

## Other function references

- [`cmdq_get_error`](/en/tmux/3.2a/reference/c-function-cmdq_get_error/) (function)

## Referenced by

- [`menu_display`](/en/tmux/3.2a/reference/c-function-menu_display/) (function)

## Referenced declarations

- [`mouse_event.b`](/en/tmux/3.2a/reference/c-struct-mouse_event-b/) (attribute)
- [`menu_data.cb`](/en/tmux/3.2a/reference/c-struct-menu_data-cb/) (attribute)
- [`menu_data.choice`](/en/tmux/3.2a/reference/c-struct-menu_data-choice/) (attribute)
- [`client`](/en/tmux/3.2a/reference/c-struct-client/) (struct)
- [`CLIENT_REDRAWOVERLAY`](/en/tmux/3.2a/reference/c-define-tmux-h-client_redrawoverlay/) (constant)
- [`CMD_PARSE_ERROR`](/en/tmux/3.2a/reference/c-enum-cmd_parse_status-cmd_parse_error/) (constant)
- [`menu_item.command`](/en/tmux/3.2a/reference/c-struct-menu_item-command/) (attribute)
- [`menu.count`](/en/tmux/3.2a/reference/c-struct-menu-count/) (attribute)
- [`menu_data.data`](/en/tmux/3.2a/reference/c-struct-menu_data-data/) (attribute)
- [`cmdq_state.event`](/en/tmux/3.2a/reference/c-struct-cmdq_state-event/) (attribute)
- [`client.flags`](/en/tmux/3.2a/reference/c-struct-client-flags/) (attribute)
- [`menu_data.flags`](/en/tmux/3.2a/reference/c-struct-menu_data-flags/) (attribute)
- [`menu_data.fs`](/en/tmux/3.2a/reference/c-struct-menu_data-fs/) (attribute)
- [`menu_data.item`](/en/tmux/3.2a/reference/c-struct-menu_data-item/) (attribute)
- [`menu.items`](/en/tmux/3.2a/reference/c-struct-menu-items/) (attribute)
- [`key_event.key`](/en/tmux/3.2a/reference/c-struct-key_event-key/) (attribute)
- [`menu_item.key`](/en/tmux/3.2a/reference/c-struct-menu_item-key/) (attribute)
- [`key_event`](/en/tmux/3.2a/reference/c-struct-key_event/) (struct)
- [`KEYC_BSPACE`](/en/tmux/3.2a/reference/c-enum-tmux-h-241271275060253221275056143052225065321046366375-keyc_bspace/) (constant)
- [`KEYC_DOWN`](/en/tmux/3.2a/reference/c-enum-tmux-h-241271275060253221275056143052225065321046366375-keyc_down/) (constant)
- [`KEYC_IS_MOUSE`](/en/tmux/3.2a/reference/c-define-tmux-h-keyc_is_mouse/) (constant)
- [`KEYC_MASK_FLAGS`](/en/tmux/3.2a/reference/c-define-tmux-h-keyc_mask_flags/) (constant)
- [`KEYC_NPAGE`](/en/tmux/3.2a/reference/c-enum-tmux-h-241271275060253221275056143052225065321046366375-keyc_npage/) (constant)
- [`KEYC_PPAGE`](/en/tmux/3.2a/reference/c-enum-tmux-h-241271275060253221275056143052225065321046366375-keyc_ppage/) (constant)
- [`KEYC_UP`](/en/tmux/3.2a/reference/c-enum-tmux-h-241271275060253221275056143052225065321046366375-keyc_up/) (constant)
- [`menu_data.menu`](/en/tmux/3.2a/reference/c-struct-menu_data-menu/) (attribute)
- [`MENU_NOMOUSE`](/en/tmux/3.2a/reference/c-define-tmux-h-menu_nomouse/) (constant)
- [`MENU_STAYOPEN`](/en/tmux/3.2a/reference/c-define-tmux-h-menu_stayopen/) (constant)
- [`MENU_TAB`](/en/tmux/3.2a/reference/c-define-tmux-h-menu_tab/) (constant)
- [`MOUSE_BUTTONS`](/en/tmux/3.2a/reference/c-define-tmux-h-mouse_buttons/) (constant)
- [`MOUSE_DRAG`](/en/tmux/3.2a/reference/c-define-tmux-h-mouse_drag/) (constant)
- [`MOUSE_RELEASE`](/en/tmux/3.2a/reference/c-define-tmux-h-mouse_release/) (constant)
- [`MOUSE_WHEEL`](/en/tmux/3.2a/reference/c-define-tmux-h-mouse_wheel/) (constant)
- [`menu_item.name`](/en/tmux/3.2a/reference/c-struct-menu_item-name/) (attribute)
- [`client.overlay_data`](/en/tmux/3.2a/reference/c-struct-client-overlay_data/) (attribute)
- [`menu_data.px`](/en/tmux/3.2a/reference/c-struct-menu_data-px/) (attribute)
- [`menu_data.py`](/en/tmux/3.2a/reference/c-struct-menu_data-py/) (attribute)
- [`menu.width`](/en/tmux/3.2a/reference/c-struct-menu-width/) (attribute)
- [`mouse_event.x`](/en/tmux/3.2a/reference/c-struct-mouse_event-x/) (attribute)
- [`mouse_event.y`](/en/tmux/3.2a/reference/c-struct-mouse_event-y/) (attribute)
