55 N_(
"Bind a key to a function"),
56 N_(
"bind <map>[,<map> ... ] <key> <function>"),
57 "configuration.html#bind" },
59 N_(
"Execute a function"),
60 N_(
"exec <function> [ <function> ... ]"),
61 "configuration.html#exec" },
63 N_(
"Define a keyboard macro"),
64 N_(
"macro <map>[,<map> ... ] <key> <sequence> [ <description> ]"),
65 "configuration.html#macro" },
67 N_(
"Push a string into NeoMutt's input queue (simulate typing)"),
69 "configuration.html#push" },
71 N_(
"Remove a key binding"),
72 N_(
"unbind { * | <map>[,<map> ... ] } [ <key> ]"),
73 "configuration.html#unbind" },
75 N_(
"Remove a keyboard `macro`"),
76 N_(
"unmacro { * | <map>[,<map> ... ] } [ <key> ]"),
77 "configuration.html#unmacro" },
138 for (
int i = 0; bindings[i].
op != OP_NULL; i++)
142 km_bind(md, bindings[i].seq, bindings[i].op, NULL, NULL, NULL);
218 mutt_error(
_(
"Abort key is not set, defaulting to Ctrl-G"));
225 mutt_warning(
_(
"Specified abort key sequence (%s) will be truncated to first key"),
#define ARRAY_ADD(head, elem)
Add an element at the end of the array.
#define ARRAY_FOREACH(elem, head)
Iterate over all elements of the array.
#define ARRAY_LAST(head)
Convenience method to get the last element.
#define ARRAY_FREE(head)
Release all memory.
#define ARRAY_INIT(head)
Initialize an array.
#define CMD_NO_DATA
Convenience symbol.
#define CF_NO_FLAGS
No flags are set.
const char * cs_subset_string(const struct ConfigSubset *sub, const char *name)
Get a string config item by name.
Convenience wrapper for the config headers.
Convenience wrapper for the core headers.
struct KeyEventArray MacroEvents
These are used for macros and exec/push commands.
struct KeyEventArray UngetKeyEvents
These are used in all other "normal" situations, and are not ignored when passing GETCH_IGNORE_MACRO.
enum CommandResult parse_push(const struct Command *cmd, struct Buffer *line, struct Buffer *err)
Parse the 'push' command - Implements Command::parse() -.
enum CommandResult parse_macro(const struct Command *cmd, struct Buffer *line, struct Buffer *err)
Parse the 'macro' command - Implements Command::parse() -.
enum CommandResult parse_exec(const struct Command *cmd, struct Buffer *line, struct Buffer *err)
Parse the 'exec' command - Implements Command::parse() -.
enum CommandResult parse_bind(const struct Command *cmd, struct Buffer *line, struct Buffer *err)
Parse the 'bind' command - Implements Command::parse() -.
enum CommandResult parse_unbind(const struct Command *cmd, struct Buffer *line, struct Buffer *err)
Parse the 'unbind' and 'unmacro' commands - Implements Command::parse() -.
#define mutt_warning(...)
#define mutt_debug(LEVEL,...)
int km_config_observer(struct NotifyCallback *nc)
Notification that a Config Variable has changed - Implements observer_t -.
Convenience wrapper for the gui headers.
struct MenuDefinitionArray MenuDefs
All the registered Menus.
keycode_t AbortKey
code of key to abort prompts, normally Ctrl-G
void km_menu_add_submenu(struct MenuDefinition *md, struct SubMenu *sm)
Add a SubMenu to a Menu Definition.
struct SubMenuArray SubMenus
All the registered SubMenus.
void km_cleanup(void)
Free the key maps.
void km_init(void)
Initialise all the menu keybindings.
struct SubMenu * km_register_submenu(const struct MenuFuncOp functions[])
Register a submenu.
struct MenuDefinition * km_register_menu(int menu, const char *name)
Register a menu.
void km_set_abort_key(void)
Parse the abort_key config string.
const struct Command KeyCommands[]
Key Binding Commands.
void km_menu_add_bindings(struct MenuDefinition *md, const struct MenuOpSeq bindings[])
Add Keybindings to a Menu.
Parse key binding commands.
enum CommandResult km_bind(struct MenuDefinition *md, const char *key_str, int op, char *macro, char *desc, struct Buffer *err)
Set up a key binding.
void keymaplist_free(struct KeymapList *kml)
Free a List of Keymaps.
size_t parse_keys(const char *str, keycode_t *d, size_t max)
Parse a key string into key codes.
short keycode_t
Type for key storage, the rest of neomutt works fine with int type.
@ LL_DEBUG5
Log at debug level 5.
Convenience wrapper for the library headers.
bool notify_observer_remove(struct Notify *notify, const observer_t callback, const void *global_data)
Remove an observer from an object.
bool notify_observer_add(struct Notify *notify, enum NotifyType type, observer_t callback, void *global_data)
Add an observer to an object.
char * mutt_str_dup(const char *str)
Copy a string, safely.
bool mutt_str_equal(const char *a, const char *b)
Compare two strings.
@ NT_CONFIG
Config has changed, NotifyConfig, EventConfig.
struct Notify * notify
Notifications: NotifyConfig, EventConfig.
const char * name
Name of config item that changed.
Container for Accounts, Notifications.
struct ConfigSubset * sub
Inherited config items.
Data passed to a notification function.
void * event_data
Data from notify_send()
enum NotifyType event_type
Send: Event type, e.g. NT_ACCOUNT.