23#ifndef MUTT_KEY_KEYMAP_H
24#define MUTT_KEY_KEYMAP_H
struct Mapping KeyNames[]
Key name lookup table.
void keymap_get_name(int c, struct Buffer *buf)
Get the human name for a key.
void keymaplist_free(struct KeymapList *kml)
Free a List of Keymaps.
void keymap_expand_string(const char *str, struct Buffer *buf)
Get a human-readable key string.
bool keymap_expand_key(struct Keymap *km, struct Buffer *buf)
Get the key string bound to a Keymap.
void keymap_free(struct Keymap **pptr)
Free a Keymap.
short keycode_t
Type for key storage, the rest of neomutt works fine with int type.
struct Keymap * keymap_compare(struct Keymap *km1, struct Keymap *km2, size_t *pos)
Compare two keymaps' keyscodes and return the bigger one.
size_t parse_keys(const char *str, keycode_t *d, size_t max)
Parse a key string into key codes.
int parse_fkey(char *str)
Parse a function key string.
struct Keymap * keymap_alloc(size_t len, keycode_t *keys)
Allocate space for a sequence of keys.
int parse_keycode(const char *str)
Parse a numeric keycode.
Convenience wrapper for the library headers.
#define STAILQ_HEAD(name, type)
String manipulation buffer.
keycode_t * keys
Key sequence.
char * macro
Macro expansion (op == OP_MACRO)
STAILQ_ENTRY(Keymap) entries
Linked list.
short eq
Number of leading keys equal to next entry.
char * desc
Description of a macro for the help menu.
short len
Length of key sequence (unit: sizeof (keycode_t))
short op
Operation to perform.
Mapping between user-readable string and a constant.