NeoMutt  2023-05-17-56-ga67199
Teaching an old dog new tricks
DOXYGEN
prex.h
Go to the documentation of this file.
1
23#ifndef MUTT_MUTT_PREX_H
24#define MUTT_MUTT_PREX_H
25
26#include "regex3.h"
27
31enum Prex
32{
43};
44
51{
72};
73
80{
85};
86
93{
99};
100
107{
114
126{
152
159{
170
177{
189
196{
216
221{
227
228regmatch_t *mutt_prex_capture(enum Prex which, const char *str);
229void mutt_prex_free(void);
230
231#endif /* MUTT_MUTT_PREX_H */
PrexMboxFromLax
Regex matches for an mbox-style From line, lax mode.
Definition: prex.h:196
@ PREX_MBOX_FROM_LAX_MATCH_DAY2
From god@heaven.af.mil Sat Jan [10] 01:05:34 1996
Definition: prex.h:204
@ PREX_MBOX_FROM_LAX_MATCH_MONTH
From god@heaven.af.mil Sat [Jan] 3 01:05:34 1996
Definition: prex.h:201
@ PREX_MBOX_FROM_LAX_MATCH_TIME_SEC
From god@heaven.af.mil Sat Jan 10 [01:05:34] 1996
Definition: prex.h:206
@ PREX_MBOX_FROM_LAX_MATCH_ENVSENDER
From [god at heaven.af.mil] Sat Jan 3 01:05:34 1996
Definition: prex.h:198
@ PREX_MBOX_FROM_LAX_MATCH_DOW
From god@heaven.af.mil [Sat] Jan 3 01:05:34 1996
Definition: prex.h:200
@ PREX_MBOX_FROM_LAX_MATCH_TZ2
From god@heaven.af.mil Sat Jan 10 01:05:34 [+0000] 1996
Definition: prex.h:210
@ PREX_MBOX_FROM_LAX_MATCH_TIME_NOSEC
From god@heaven.af.mil Sat Jan 10 [01:05] 1996
Definition: prex.h:207
@ PREX_MBOX_FROM_LAX_MATCH_ENVSENDER_PIPER
From [god@heaven.af.mil] Sat Jan 3 01:05:34 1996
Definition: prex.h:199
@ PREX_MBOX_FROM_LAX_MATCH_DAY1
From god@heaven.af.mil Sat Jan [3] 01:05:34 1996
Definition: prex.h:203
@ PREX_MBOX_FROM_LAX_MATCH_YEAR_2DIG
From god@heaven.af.mil Sat Jan 10 01:05:34 [96]
Definition: prex.h:213
@ PREX_MBOX_FROM_LAX_MATCH_TIME
From god@heaven.af.mil Sat Jan 10 [01:05:34] 1996
Definition: prex.h:205
@ PREX_MBOX_FROM_LAX_MATCH_DAY
From god@heaven.af.mil Sat Jan [ 3] 01:05:34 1996
Definition: prex.h:202
@ PREX_MBOX_FROM_LAX_MATCH_YEAR
From god@heaven.af.mil Sat Jan 10 01:05:34 [1996]
Definition: prex.h:211
@ PREX_MBOX_FROM_LAX_MATCH_TZ1
From god@heaven.af.mil Sat Jan 10 01:05:34 [MET DST] 1996
Definition: prex.h:209
@ PREX_MBOX_FROM_LAX_MATCH_TZ
From god@heaven.af.mil Sat Jan 10 01:05:34 [MET DST] 1996
Definition: prex.h:208
@ PREX_MBOX_FROM_LAX_MATCH_FULL
[From god@heaven.af.mil Sat Jan 3 01:05:34 1996]
Definition: prex.h:197
@ PREX_MBOX_FROM_LAX_MATCH_MAX
Definition: prex.h:214
@ PREX_MBOX_FROM_LAX_MATCH_YEAR_4DIG
From god@heaven.af.mil Sat Jan 10 01:05:34 [1996]
Definition: prex.h:212
regmatch_t * mutt_prex_capture(enum Prex which, const char *str)
Match a precompiled regex against a string.
Definition: prex.c:289
PrexAccountCmd
Regex matches for the output lines of account_command.
Definition: prex.h:221
@ PREX_ACCOUNT_CMD_MATCH_FULL
[key: value]
Definition: prex.h:222
@ PREX_ACCOUNT_CMD_MATCH_MAX
Definition: prex.h:225
@ PREX_ACCOUNT_CMD_MATCH_KEY
[key]: value
Definition: prex.h:223
@ PREX_ACCOUNT_CMD_MATCH_VALUE
key: [value]
Definition: prex.h:224
PrexImapDate
Regex matches for an IMAP INTERNALDATE
Definition: prex.h:159
@ PREX_IMAP_DATE_MATCH_TIME
15-MAR-2020 [15:09:35] -0700
Definition: prex.h:166
@ PREX_IMAP_DATE_MATCH_MAX
Definition: prex.h:168
@ PREX_IMAP_DATE_MATCH_YEAR
15-MAR-[2020] 15:09:35 -0700
Definition: prex.h:165
@ PREX_IMAP_DATE_MATCH_DAY
[ 4]-MAR-2020 15:09:35 -0700
Definition: prex.h:161
@ PREX_IMAP_DATE_MATCH_TZ
15-MAR-2020 15:09:35 [-0700]
Definition: prex.h:167
@ PREX_IMAP_DATE_MATCH_FULL
[16-MAR-2020 15:09:35 -0700]
Definition: prex.h:160
@ PREX_IMAP_DATE_MATCH_MONTH
15-[MAR]-2020 15:09:35 -0700
Definition: prex.h:164
@ PREX_IMAP_DATE_MATCH_DAY1
[4]-MAR-2020 15:09:35 -0700
Definition: prex.h:162
@ PREX_IMAP_DATE_MATCH_DAY2
[15]-MAR-2020 15:09:35 -0700
Definition: prex.h:163
PrexMboxFrom
Regex matches for an mbox-style From line.
Definition: prex.h:177
@ PREX_MBOX_FROM_MATCH_MAX
Definition: prex.h:187
@ PREX_MBOX_FROM_MATCH_DAY2
From god@heaven.af.mil Sat Jan [10] 01:05:34 1996
Definition: prex.h:184
@ PREX_MBOX_FROM_MATCH_DAY
From god@heaven.af.mil Sat Jan [ 3] 01:05:34 1996
Definition: prex.h:182
@ PREX_MBOX_FROM_MATCH_MONTH
From god@heaven.af.mil Sat [Jan] 3 01:05:34 1996
Definition: prex.h:181
@ PREX_MBOX_FROM_MATCH_YEAR
From god@heaven.af.mil Sat Jan 10 01:05:34 [1996]
Definition: prex.h:186
@ PREX_MBOX_FROM_MATCH_DAY1
From god@heaven.af.mil Sat Jan [3] 01:05:34 1996
Definition: prex.h:183
@ PREX_MBOX_FROM_MATCH_DOW
From god@heaven.af.mil [Sat] Jan 3 01:05:34 1996
Definition: prex.h:180
@ PREX_MBOX_FROM_MATCH_FULL
[From god@heaven.af.mil Sat Jan 3 01:05:34 1996]
Definition: prex.h:178
@ PREX_MBOX_FROM_MATCH_ENVSENDER
From [god@heaven.af.mil] Sat Jan 3 01:05:34 1996
Definition: prex.h:179
@ PREX_MBOX_FROM_MATCH_TIME
From god@heaven.af.mil Sat Jan 10 [01:05:34] 1996
Definition: prex.h:185
PrexRfc2047EncodedWordMatch
Regex Matches for PREX_RFC2047_ENCODED_WORD.
Definition: prex.h:93
@ PREX_RFC2047_ENCODED_WORD_MATCH_ENCODING
=?utf-8?[Q]?=E8=81...?=
Definition: prex.h:96
@ PREX_RFC2047_ENCODED_WORD_MATCH_TEXT
=?utf-8?Q?[=E8=81...]?=
Definition: prex.h:97
@ PREX_RFC2047_ENCODED_WORD_MATCH_CHARSET
=?[utf-8]?Q?=E8=81...?=
Definition: prex.h:95
@ PREX_RFC2047_ENCODED_WORD_MATCH_FULL
[=?utf-8?Q?=E8=81...?=]
Definition: prex.h:94
@ PREX_RFC2047_ENCODED_WORD_MATCH_MAX
Definition: prex.h:98
PrexUrlQueryKeyValMatch
Regex Matches for PREX_URL_QUERY_KEY_VAL.
Definition: prex.h:80
@ PREX_URL_QUERY_KEY_VAL_MATCH_VAL
key=[val]
Definition: prex.h:83
@ PREX_URL_QUERY_KEY_VAL_MATCH_FULL
[key=val]
Definition: prex.h:81
@ PREX_URL_QUERY_KEY_VAL_MATCH_MAX
Definition: prex.h:84
@ PREX_URL_QUERY_KEY_VAL_MATCH_KEY
[key]=val
Definition: prex.h:82
Prex
Predefined list of regular expressions.
Definition: prex.h:32
@ PREX_GNUTLS_CERT_HOST_HASH
[#H foo.com A76D 954B EB79 1F49 5B3A 0A0E 0681 65B1]
Definition: prex.h:36
@ PREX_MBOX_FROM_LAX
[From god@heaven.af.mil Sat Jan 3 01:05:34 1996]
Definition: prex.h:40
@ PREX_URL
[imaps://user:pass@example.com/INBOX?foo=bar]
Definition: prex.h:33
@ PREX_MBOX_FROM
[From god@heaven.af.mil Sat Jan 3 01:05:34 1996]
Definition: prex.h:39
@ PREX_ACCOUNT_CMD
key: value
Definition: prex.h:41
@ PREX_IMAP_DATE
[16-MAR-2020 15:09:35 -0700]
Definition: prex.h:38
@ PREX_RFC5322_DATE_LAX
[Mon, (Comment) 16 Mar 2020 15:09:35 -0700]
Definition: prex.h:37
@ PREX_URL_QUERY_KEY_VAL
https://example.com/?[q=foo]
Definition: prex.h:34
@ PREX_MAX
Definition: prex.h:42
@ PREX_RFC2047_ENCODED_WORD
[=?utf-8?Q?=E8=81=AA=E6=98=8E=E7=9A=84?=]
Definition: prex.h:35
PrexRfc5322DateLax
Regex Matches for a RFC5322 date, including obsolete comments in parentheses.
Definition: prex.h:126
@ PREX_RFC5322_DATE_LAX_MATCH_CFWS7
Definition: prex.h:140
@ PREX_RFC5322_DATE_LAX_MATCH_SECOND
Tue, 3 Mar 2020 14:32:[55] +0200
Definition: prex.h:145
@ PREX_RFC5322_DATE_LAX_MATCH_CFWS5
Definition: prex.h:136
@ PREX_RFC5322_DATE_LAX_MATCH_MAYBE_DOW
[Mon, ]2 Mar 2020 14:32:55 +0200
Definition: prex.h:129
@ PREX_RFC5322_DATE_LAX_MATCH_CFWS3
Definition: prex.h:132
@ PREX_RFC5322_DATE_LAX_MATCH_TZFULL
Tue, 3 Mar 2020 14:32:55[CET]
Definition: prex.h:147
@ PREX_RFC5322_DATE_LAX_MATCH_CFWS1
Definition: prex.h:128
@ PREX_RFC5322_DATE_LAX_MATCH_TZ
Tue, 3 Mar 2020 14:32:55 [+0200]
Definition: prex.h:148
@ PREX_RFC5322_DATE_LAX_MATCH_CFWS4
Definition: prex.h:134
@ PREX_RFC5322_DATE_LAX_MATCH_CFWS9
Definition: prex.h:144
@ PREX_RFC5322_DATE_LAX_MATCH_COLONSECOND
Tue, 3 Mar 2020 14:32[:55] +0200
Definition: prex.h:143
@ PREX_RFC5322_DATE_LAX_MATCH_YEAR
Tue, 3 Mar [2020] 14:32:55 +0200
Definition: prex.h:137
@ PREX_RFC5322_DATE_LAX_MATCH_HOUR
Tue, 3 Mar 2020 [14]:32:55 +0200
Definition: prex.h:139
@ PREX_RFC5322_DATE_LAX_MATCH_CFWS2
Definition: prex.h:131
@ PREX_RFC5322_DATE_LAX_MATCH_DOW
[Mon], 2 Mar 2020 14:32:55 +0200
Definition: prex.h:130
@ PREX_RFC5322_DATE_LAX_MATCH_FULL
[Mon, 2 Mar 2020 14:32:55 +0200]
Definition: prex.h:127
@ PREX_RFC5322_DATE_LAX_MATCH_MINUTE
Tue, 3 Mar 2020 14:[32]:55 +0200
Definition: prex.h:141
@ PREX_RFC5322_DATE_LAX_MATCH_MAX
Definition: prex.h:150
@ PREX_RFC5322_DATE_LAX_MATCH_CFWS8
Definition: prex.h:142
@ PREX_RFC5322_DATE_LAX_MATCH_CFWS10
Definition: prex.h:146
@ PREX_RFC5322_DATE_LAX_MATCH_TZ_OBS
Tue, 3 Mar 2020 14:32:55[UT]
Definition: prex.h:149
@ PREX_RFC5322_DATE_LAX_MATCH_CFWS6
Definition: prex.h:138
@ PREX_RFC5322_DATE_LAX_MATCH_MONTH
Tue, 3 [Jan] 2020 14:32:55 +0200
Definition: prex.h:135
@ PREX_RFC5322_DATE_LAX_MATCH_DAY
Tue, [3] Mar 2020 14:32:55 +0200
Definition: prex.h:133
PrexUrlSchemeMatch
Regex Matches for PREX_URL.
Definition: prex.h:51
@ PREX_URL_MATCH_HOST
imaps://...[host.com]...
Definition: prex.h:61
@ PREX_URL_MATCH_REST
imaps:[//...]
Definition: prex.h:54
@ PREX_URL_MATCH_USER
...//[user]:pass@...
Definition: prex.h:58
@ PREX_URL_MATCH_SLASHPATH
...:993[/Inbox]
Definition: prex.h:66
@ PREX_URL_MATCH_FULL
[imaps://user:pass@host.comInbox?foo=bar]
Definition: prex.h:52
@ PREX_URL_MATCH_COLONPASS
...//user[:pass]@...
Definition: prex.h:59
@ PREX_URL_MATCH_QUERY
...Inbox?[foo=bar&baz=value]
Definition: prex.h:70
@ PREX_URL_MATCH_QUESTIONQUERY
...Inbox[?foo=bar&baz=value]
Definition: prex.h:69
@ PREX_URL_MATCH_HOSTNAME
imaps://...[host.com]...
Definition: prex.h:62
@ PREX_URL_MATCH_AUTHORITY_PATH
imaps:[//me@example.com/Inbox]?foo=bar
Definition: prex.h:56
@ PREX_URL_MATCH_PORT
imaps://host.com:[993]/...
Definition: prex.h:65
@ PREX_URL_MATCH_PATH_ONLY
mailto:[me@example.com]?foo=bar
Definition: prex.h:68
@ PREX_URL_MATCH_SCHEME
[imaps]://...
Definition: prex.h:53
@ PREX_URL_MATCH_USERINFO
...//[user:pass@]...
Definition: prex.h:57
@ PREX_URL_MATCH_PATH
...:993/[Inbox]
Definition: prex.h:67
@ PREX_URL_MATCH_HOSTIPVX
imaps://...[127.0.0.1]...
Definition: prex.h:63
@ PREX_URL_MATCH_COLONPORT
imaps://host.com[:993]/...
Definition: prex.h:64
@ PREX_URL_MATCH_PASS
...//user:[pass]@...
Definition: prex.h:60
@ PREX_URL_MATCH_AUTH_OR_PATH
imaps:[somepath]|[//me@example.com/Inbox]?foo=bar
Definition: prex.h:55
@ PREX_URL_MATCH_MAX
Definition: prex.h:71
void mutt_prex_free(void)
Cleanup heap memory allocated by compiled regexes.
Definition: prex.c:330
PrexGnuTlsCertHostnameMatch
Regex Matches for a TLS Certificate Hostname.
Definition: prex.h:107
@ PREX_GNUTLS_CERT_HOST_HASH_MATCH_HASH_LAST
#H foo.com A76D ... [65B1]
Definition: prex.h:111
@ PREX_GNUTLS_CERT_HOST_HASH_MATCH_MAX
Definition: prex.h:112
@ PREX_GNUTLS_CERT_HOST_HASH_MATCH_FULL
[#H foo.com A76D ... 65B1]
Definition: prex.h:108
@ PREX_GNUTLS_CERT_HOST_HASH_MATCH_HASH
#H foo.com [A76D ... 65B1]
Definition: prex.h:110
@ PREX_GNUTLS_CERT_HOST_HASH_MATCH_HOST
#H [foo.com] A76D ... 65B1
Definition: prex.h:109
Manage regular expressions.