NeoMutt  2025-12-11-769-g906513
Teaching an old dog new tricks
DOXYGEN
Loading...
Searching...
No Matches
lib.h
Go to the documentation of this file.
1
22
46
47#ifndef MUTT_ALIAS_LIB_H
48#define MUTT_ALIAS_LIB_H
49
50#include <stdbool.h>
51#include "core/lib.h"
52#include "alternates.h" // IWYU pragma: keep
53#include "expando.h" // IWYU pragma: keep
54#include "group.h" // IWYU pragma: keep
55#include "module_data.h" // IWYU pragma: keep
56
57struct Address;
58struct AddressList;
59struct Alias;
60struct Buffer;
61struct ConfigSubset;
62struct Envelope;
63struct ParseContext;
64struct ParseError;
65struct SubMenu;
66struct TagList;
67
68extern const struct CompleteOps CompleteAliasOps;
69
70void alias_init (void);
71void alias_init_keys (struct NeoMutt *n, struct SubMenu *sm_generic);
72void alias_cleanup (void);
73
74void alias_create (struct AddressList *al, const struct ConfigSubset *sub);
75struct AddressList *alias_lookup (const char *name);
76
77bool mutt_addr_is_user (const struct Address *addr);
78void mutt_expand_aliases_env(struct Envelope *env);
79void mutt_expand_aliases (struct AddressList *al);
80struct AddressList *mutt_get_address (struct Envelope *env, const char **prefix);
81
82enum CommandResult parse_alias (const struct Command *cmd, struct Buffer *line, const struct ParseContext *pc, struct ParseError *pe);
83enum CommandResult parse_unalias(const struct Command *cmd, struct Buffer *line, const struct ParseContext *pc, struct ParseError *pe);
84
85void alias_tags_to_buffer(struct TagList *tl, struct Buffer *buf);
86void parse_alias_comments(struct Alias *alias, const char *com);
87void parse_alias_tags (const char *tags, struct TagList *tl);
88
89int alias_complete(struct Buffer *buf, struct ConfigSubset *sub);
90void alias_dialog (struct Mailbox *m, struct ConfigSubset *sub);
91
92int query_complete(struct Buffer *buf, struct ConfigSubset *sub);
93void query_index (struct Mailbox *m, struct ConfigSubset *sub);
94
95struct Address *alias_reverse_lookup(const struct Address *addr);
96void mutt_auto_subscribe(const char *mailto);
97
98#endif /* MUTT_ALIAS_LIB_H */
const struct CompleteOps CompleteAliasOps
Auto-Completion of Aliases.
Definition complete.c:108
Alias Expando definitions.
Parse Group/Lists Commands.
void alias_cleanup(void)
int alias_complete(struct Buffer *buf, struct ConfigSubset *sub)
Alias completion routine.
Definition dlg_alias.c:345
void mutt_auto_subscribe(const char *mailto)
Check if user is subscribed to mailing list.
Definition commands.c:49
void parse_alias_comments(struct Alias *alias, const char *com)
Parse the alias/query comment field.
Definition commands.c:135
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:105
int query_complete(struct Buffer *buf, struct ConfigSubset *sub)
Perform auto-complete using an Address Query.
Definition dlg_query.c:414
void alias_dialog(struct Mailbox *m, struct ConfigSubset *sub)
Open the aliases dialog.
Definition dlg_alias.c:500
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 mutt_expand_aliases_env(struct Envelope *env)
Expand aliases in all the fields of an Envelope.
Definition alias.c:310
void alias_init_keys(struct NeoMutt *n, struct SubMenu *sm_generic)
Initialise the Alias Keybindings - Implements ::init_keys_api.
Definition functions.c:124
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:491
void alias_tags_to_buffer(struct TagList *tl, struct Buffer *buf)
Write a comma-separated list of tags to a Buffer.
Definition commands.c:89
struct Address * alias_reverse_lookup(const struct Address *addr)
Does the user have an alias for the given address.
Definition reverse.c:112
Alias private Module data.
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:308
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:178
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
Container for Accounts, Notifications.
Definition neomutt.h:41
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