emacs-elpa-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[nongnu] elpa/helm 96fc4587aa 5/5: Fix fuzzy matching score


From: ELPA Syncer
Subject: [nongnu] elpa/helm 96fc4587aa 5/5: Fix fuzzy matching score
Date: Fri, 13 May 2022 04:58:30 -0400 (EDT)

branch: elpa/helm
commit 96fc4587aa73757f56550b9def7499fcb5b1a51f
Author: Thierry Volpiatto <thievol@posteo.net>
Commit: Thierry Volpiatto <thievol@posteo.net>

    Fix fuzzy matching score
    
    Unknown candidates from helm-mode should always go on top.
---
 helm-core.el | 5 ++++-
 helm-mode.el | 4 +++-
 2 files changed, 7 insertions(+), 2 deletions(-)

diff --git a/helm-core.el b/helm-core.el
index acd4b56738..b536f2fd05 100644
--- a/helm-core.el
+++ b/helm-core.el
@@ -4325,7 +4325,10 @@ This function is used with sources built with 
`helm-source-sync'."
 (defvar helm-fuzzy-default-score-fn #'helm-fuzzy-flex-style-score)
 (defun helm-score-candidate-for-pattern (candidate pattern)
   "Assign score to CANDIDATE according to PATTERN."
-  (funcall helm-fuzzy-default-score-fn candidate pattern))
+  ;; Unknown candidates always go on top.
+  (if (equal (get-text-property 0 'display candidate) "[?]")
+      200.00
+    (funcall helm-fuzzy-default-score-fn candidate pattern)))
 
 ;; The flex scoring needs a regexp whereas the fuzzy scoring works
 ;; directly with helm-pattern, so cache the needed regexp for flex
diff --git a/helm-mode.el b/helm-mode.el
index bcb4f2ad63..eb717d98de 100644
--- a/helm-mode.el
+++ b/helm-mode.el
@@ -515,7 +515,9 @@ If COLLECTION is an `obarray', a TEST should be needed. See 
`obarray'."
              ;; Unquote helm-pattern when it is added as candidate
              ;; (Bug#2015).
              (let ((pat (replace-regexp-in-string "\\s\\" "" helm-pattern)))
-               (if (or (string= pat "") (helm-cr--pattern-in-candidates-p lst 
pat))
+               (if (or (string= pat "")
+                       (eq must-match t)
+                       (helm-cr--pattern-in-candidates-p lst pat))
                    lst
                  (append (list (cons (concat (propertize
                                               " " 'display



reply via email to

[Prev in Thread] Current Thread [Next in Thread]