NeoMutt  2025-12-11-694-ga89709
Teaching an old dog new tricks
DOXYGEN
Loading...
Searching...
No Matches
lib.h
Go to the documentation of this file.
1
22
45
46#ifndef MUTT_ALIAS_LIB_H
47#define MUTT_ALIAS_LIB_H
48
49#include <stdbool.h>
50#include "core/lib.h"
51#include "alternates.h" // IWYU pragma: keep
52#include "expando.h" // IWYU pragma: keep
53
54struct Address;
55struct AddressList;
56struct Alias;
57struct Buffer;
58struct ConfigSubset;
59struct Envelope;
60struct ParseContext;
61struct ParseError;
62struct SubMenu;
63struct TagList;
64
65extern const struct CompleteOps CompleteAliasOps;
66
67void alias_init (void);
68void alias_init_keys(struct SubMenu *sm_generic);
69void alias_cleanup (void);
70
71void alias_create (struct AddressList *al, const struct ConfigSubset *sub);
72struct AddressList *alias_lookup (const char *name);
73
74bool mutt_addr_is_user (const struct Address *addr);
75void mutt_expand_aliases_env(struct Envelope *env);
76void mutt_expand_aliases (struct AddressList *al);
77struct AddressList *mutt_get_address (struct Envelope *env, const char **prefix);
78
79enum CommandResult parse_alias (const struct Command *cmd, struct Buffer *line, const struct ParseContext *pc, struct ParseError *pe);
80enum CommandResult parse_unalias(const struct Command *cmd, struct Buffer *line, const struct ParseContext *pc, struct ParseError *pe);
81
82void alias_tags_to_buffer(struct TagList *tl, struct Buffer *buf);
83void parse_alias_comments(struct Alias *alias, const char *com);
84void parse_alias_tags (const char *tags, struct TagList *tl);
85
86int alias_complete(struct Buffer *buf, struct ConfigSubset *sub);
87void alias_dialog (struct Mailbox *m, struct ConfigSubset *sub);
88
89int query_complete(struct Buffer *buf, struct ConfigSubset *sub);
90void query_index (struct Mailbox *m, struct ConfigSubset *sub);
91
92struct Address *alias_reverse_lookup(const struct Address *addr);
93
94#endif /* MUTT_ALIAS_LIB_H */
const struct CompleteOps CompleteAliasOps
Auto-Completion of Aliases.
Definition complete.c:108
Alias Expando definitions.
void alias_cleanup(void)
int alias_complete(struct Buffer *buf, struct ConfigSubset *sub)
Alias completion routine.
Definition dlg_alias.c:338
void parse_alias_comments(struct Alias *alias, const char *com)
Parse the alias/query comment field.
Definition commands.c:95
struct AddressList * alias_lookup(const char *name)
Find an Alias.
Definition alias.c:273
void mutt_expand_aliases(struct AddressList *al)
Expand aliases in a List of Addresses.
Definition alias.c:296
void parse_alias_tags(const char *tags, struct TagList *tl)
Parse a comma-separated list of tags.
Definition commands.c:65
int query_complete(struct Buffer *buf, struct ConfigSubset *sub)
Perform auto-complete using an Address Query.
Definition dlg_query.c:406
void alias_dialog(struct Mailbox *m, struct ConfigSubset *sub)
Open the aliases dialog.
Definition dlg_alias.c:493
void alias_create(struct AddressList *al, const struct ConfigSubset *sub)
Create a new Alias from an Address.
Definition alias.c:368
bool mutt_addr_is_user(const struct Address *addr)
Does the address belong to the user.
Definition alias.c:600
void alias_init(void)
void alias_init_keys(struct SubMenu *sm_generic)
Initialise the Alias Keybindings - Implements ::init_keys_api.
Definition functions.c:128
void mutt_expand_aliases_env(struct Envelope *env)
Expand aliases in all the fields of an Envelope.
Definition alias.c:310
struct AddressList * mutt_get_address(struct Envelope *env, const char **prefix)
Get an Address from an Envelope.
Definition alias.c:328
void query_index(struct Mailbox *m, struct ConfigSubset *sub)
Perform an Alias Query and display the results.
Definition dlg_query.c:483
void alias_tags_to_buffer(struct TagList *tl, struct Buffer *buf)
Write a comma-separated list of tags to a Buffer.
Definition commands.c:49
struct Address * alias_reverse_lookup(const struct Address *addr)
Does the user have an alias for the given address.
Definition reverse.c:112
Parse Alternate Commands.
CommandResult
Error codes for command_t parse functions.
Definition command.h:37
Convenience wrapper for the core headers.
enum CommandResult parse_unalias(const struct Command *cmd, struct Buffer *line, const struct ParseContext *pc, struct ParseError *pe)
Parse the 'unalias' command - Implements Command::parse() -.
Definition commands.c:268
enum CommandResult parse_alias(const struct Command *cmd, struct Buffer *line, const struct ParseContext *pc, struct ParseError *pe)
Parse the 'alias' command - Implements Command::parse() -.
Definition commands.c:138
An email address.
Definition address.h:35
A shortcut for an email address or addresses.
Definition alias.h:35
String manipulation buffer.
Definition buffer.h:36
A set of inherited config items.
Definition subset.h:46
The header of an Email.
Definition envelope.h:57
A mailbox.
Definition mailbox.h:78
Context for config parsing (history/backtrace)
Definition pcontext.h:34
Detailed error information from config parsing.
Definition perror.h:34
Collection of related functions.
Definition menu.h:68