Commit Graph

307 Commits

Author SHA1 Message Date
Jeremy Wu
6cad4bc986
Merge pull request #112 from theClueless/fuzzyMatchUpdates
Fuzzy match logic update
2020-01-14 08:26:45 +11:00
Jeremy Wu
504c08a0fc Update test per comment 2020-01-14 07:53:59 +11:00
Jeremy Wu
592f1cafdb update allSubstringsContainedInCompareString calculation as per comment 2020-01-14 07:36:53 +11:00
Jeremy Wu
71d8c2080c update comment typo 2020-01-14 07:30:40 +11:00
Jeremy Wu
6095933847 simplify condition as per comment 2020-01-14 07:29:21 +11:00
Jeremy Wu
76727d09bf Update StringMatcher's UserSettingSearchPrecision property type
makes more sense and less conversion to int for actual precision score
2020-01-07 22:30:36 +11:00
Jeremy Wu
b54241a5b2 Update scoring for all substrings contained in compare string 2020-01-07 08:28:27 +11:00
Jeremy Wu
78a2086535 Remove containedFully variable state
Not necessary to have and not needed to add another dimension to the scoring
2020-01-07 08:04:56 +11:00
Jeremy Wu
24cc5dbaa0 Add unit tests for checking substrings
checking if all substrings contained in compareString
2020-01-07 07:55:02 +11:00
Jeremy Wu
0093838a75 fix variable state which failed to represent correctly
Failed if query text is 'sql servman'- returns true when should be false
- moved it up so evaluation is included in the final substring check
2020-01-07 07:25:13 +11:00
Jeremy Wu
dde658a514 rename variable state allWordsFullyMatched 2020-01-07 07:22:00 +11:00
Jeremy Wu
e4b017b304 fix index out of range exception
occurs when query contains more than one whitespace eg. 'sql  manag'
2020-01-07 05:59:47 +11:00
Jeremy Wu
5040f09f0c Update method summary only 2020-01-06 21:38:07 +11:00
Jeremy Wu
19911d9f1f Update comment only 2020-01-06 21:19:15 +11:00
Jeremy Wu
04b0f8b2a4 Remove fuzzy match github repo reference + add logic context in summary
1. Remove the github repo reference as we have mixed in substring matching
2. Added context on how the logic is run
2020-01-06 21:06:41 +11:00
Jeremy Wu
e453dceacd Move condition checking into functions
- Moved if statement that checks if all query substrings are matched into a funciton
- convert into shorthand expression the if statement that checks if all words are fully matched
2020-01-06 20:51:27 +11:00
Jeremy Wu
42a938b50b Simplify IfElse 2020-01-06 19:15:05 +11:00
AT
28b098cfb7 make image created in hash freeze 2020-01-04 00:40:37 +02:00
AT
fd59088528 made data images freeze as well 2020-01-03 22:33:00 +02:00
AT
05bd32f750 remove comment 2020-01-03 22:01:15 +02:00
AT
e80147d24e removed a duplicate check 2020-01-03 21:17:58 +02:00
AT
72e1a19ea5 remove using 2020-01-03 21:16:38 +02:00
AT
b14d6c9216 adding hash ability to image loader (reducing the load on memory) 2020-01-03 21:16:17 +02:00
Jeremy Wu
220dbd7e30 Move some logic into functions
- Move checking if there is a prev compare string char match into function
- Move updating of index list when a better match is found for the first substring logic into function
2020-01-03 08:02:02 +11:00
Jeremy Wu
84d6fc2787 Update variable names
Make variables more descriptive of the state they represent
2020-01-03 07:58:20 +11:00
Jeremy Wu
52615c6f52 WIP variables 2020-01-02 08:02:23 +11:00
AT
42edb20b07 fixes to string matcher alg and some logging stuff 2019-12-30 01:13:33 +02:00
AT
4e3228628a Merge branch 'dev' of https://github.com/jjw24/Wox into upstreamdev 2019-12-13 01:48:37 +02:00
SysC0mp
0f9da7f519 Always return filled result again 2019-12-11 19:10:11 +01:00
SysC0mp
8ded683796 Merge branch 'dev' into highlight-how-results-matched 2019-12-11 16:50:17 +01:00
AT
bcc9379ebc typo in log 2019-12-10 12:18:24 +02:00
SysC0mp
7d5c827dec Remove whitespace 2019-12-09 21:08:38 +01:00
SysC0mp
e60797cd0f Introduce RawScore property
New property RawScore is used to save the calculated score without any
search precision filtering added.
2019-12-09 21:06:31 +01:00
SysC0mp
49c5c5bbde Pass "ShouldUsePinyin" to StringMatcher
Flag is used in method "ShouldUsePinyin()" to avoid calling Alphabet
service. Otherwise, tests applying to StringMatcher.FuzzySearch() would
fail because the pinyin helper library fails to initialize.
2019-12-09 20:57:59 +01:00
SysC0mp
78f243651e Pass Settings instance to Alphabet again 2019-12-09 20:47:24 +01:00
AT
c90dd0e818 updated top most record 2019-12-03 23:02:24 +02:00
SysC0mp
627e99859d Directly calculate pinyin if needed
The MatchResult will always get the maximum score from either
ScoreForPinyin() or CalculateSearchScore(). ScoreForPinyin() is
completely dependant on the "ShouldUsePinyin" global setting.
2019-12-03 15:31:23 +01:00
SysC0mp
6ebca7fa7c Apply search precision filter on assignment
The search precision must be used, so it makes sense to apply the filter
directly on score assignment. Score will be "0" if precision filter
was not met.
2019-12-03 15:31:23 +01:00
SysC0mp
3d55ad783e Only pass needed setting to Alphabet
As Alphabet class is static, its methods could be used without
ever calling Alphabet.initialize(_settings) beforehand which would end
in an exception.  Therefor only _shouldUsePinyin settings needed will
be transferred with a given default value.
2019-12-03 15:31:08 +01:00
SysC0mp
05f66f9bea Improve code formatting 2019-12-03 15:31:07 +01:00
AT
9d98d26cc7 added log into Alphabet service since it can induce a large perf hit 2019-11-16 01:28:07 +02:00
AT
dcb9e34d59 alphabet settings 2019-11-16 00:34:27 +02:00
Jeremy Wu
c89ab4e47c Merge remote-tracking branch 'origin/dev' into dev 2019-10-27 12:22:31 +11:00
Jeremy Wu
cb3e863957 Merge branch 'update_allow_plugindisabled_default' into dev 2019-10-25 13:12:34 +11:00
Jeremy Wu
b89e296390 Set HideWhenDeactive default as true 2019-10-24 08:20:12 +11:00
Jeremy Wu
28239c4a51 Fix to allow plugin to start up disabled as default 2019-10-23 16:18:21 +11:00
Amir Tepper
a3ba2276e2 renamed for Defualt match option 2019-10-20 15:45:06 +03:00
Amir Tepper
0e241a0fc5 added empty match option 2019-10-17 13:37:09 +03:00
Jeremy Wu
9658af4aa9 update 2019-09-29 15:18:50 +10:00
Jeremy Wu
cc23495591 Update Program plugin with new code 2019-09-29 15:03:30 +10:00