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
66
67#ifndef MUTT_FUZZY_LIB_H
68#define MUTT_FUZZY_LIB_H
69
70#include <stdbool.h>
71
76{
78 // extensible
79 // FUZZY_ALGO_EDIT,
80 // FUZZY_ALGO_TOKEN,
81};
82
93
98{
99 int score;
100 int span;
101 int start;
102 int end;
103};
104
105int fuzzy_match(const char *pattern, const char *candidate, enum FuzzyAlgo algo, const struct FuzzyOptions *opts, struct FuzzyResult *out);
106
107#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
FuzzyAlgo
Fuzzy matching algorithm types.
Definition lib.h:76
@ FUZZY_ALGO_SUBSEQ
Subsequence matching algorithm.
Definition lib.h:77
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
Options for fuzzy matching.
Definition lib.h:87
bool smart_case
Auto case-sensitive if pattern has uppercase.
Definition lib.h:89
bool case_sensitive
Match case exactly.
Definition lib.h:88
int max_pattern
Safety bound (<=0 = default 256, capped at 256)
Definition lib.h:91
bool prefer_prefix
Extra weight for prefix matches.
Definition lib.h:90
Result of a fuzzy match.
Definition lib.h:98
int score
Score (<0 = no match)
Definition lib.h:99
int span
Match span.
Definition lib.h:100
int start
First match position.
Definition lib.h:101
int end
Last match position.
Definition lib.h:102