NeoMutt  2025-12-11-980-ge38c27
Teaching an old dog new tricks
DOXYGEN
Loading...
Searching...
No Matches
lib.h
Go to the documentation of this file.
1
22
68
69#ifndef MUTT_FUZZY_LIB_H
70#define MUTT_FUZZY_LIB_H
71
72#include <stdbool.h>
73
74struct NeoMutt;
75struct SubMenu;
76
81{
83 // extensible
84 // FUZZY_ALGO_EDIT,
85 // FUZZY_ALGO_TOKEN,
86};
87
98
103{
104 int score;
105 int span;
106 int start;
107 int end;
108};
109
110void fuzzy_init_keys(struct NeoMutt *n, struct SubMenu *sm_generic);
111struct SubMenu *fuzzy_get_submenu(void);
112
113int fuzzy_match(const char *pattern, const char *candidate, enum FuzzyAlgo algo, const struct FuzzyOptions *opts, struct FuzzyResult *out);
114
115#endif /* MUTT_FUZZY_LIB_H */
bool candidate(struct CompletionData *cd, char *user, const char *src, char *dest, size_t dlen)
Helper function for completion.
Definition helpers.c:79
struct SubMenu * fuzzy_get_submenu(void)
Get the Fuzzy SubMenu.
Definition functions.c:91
FuzzyAlgo
Fuzzy matching algorithm types.
Definition lib.h:81
@ FUZZY_ALGO_SUBSEQ
Subsequence matching algorithm.
Definition lib.h:82
int fuzzy_match(const char *pattern, const char *candidate, enum FuzzyAlgo algo, const struct FuzzyOptions *opts, struct FuzzyResult *out)
Perform fuzzy matching.
Definition fuzzy.c:58
void fuzzy_init_keys(struct NeoMutt *n, struct SubMenu *sm_generic)
Initialise the Fuzzy Keybindings - Implements ::init_keys_api.
Definition functions.c:70
Options for fuzzy matching.
Definition lib.h:92
bool smart_case
Auto case-sensitive if pattern has uppercase.
Definition lib.h:94
bool case_sensitive
Match case exactly.
Definition lib.h:93
int max_pattern
Safety bound (<=0 = default 256, capped at 256)
Definition lib.h:96
bool prefer_prefix
Extra weight for prefix matches.
Definition lib.h:95
Result of a fuzzy match.
Definition lib.h:103
int score
Score (<0 = no match)
Definition lib.h:104
int span
Match span.
Definition lib.h:105
int start
First match position.
Definition lib.h:106
int end
Last match position.
Definition lib.h:107
Container for Accounts, Notifications.
Definition neomutt.h:41
Collection of related functions.
Definition menudef.h:33