]> code.delx.au - gnu-emacs-elpa/commitdiff
Handle 'stop prefix directly
authorDmitry Gutov <dgutov@yandex.ru>
Fri, 22 Mar 2013 22:43:27 +0000 (02:43 +0400)
committerDmitry Gutov <dgutov@yandex.ru>
Fri, 22 Mar 2013 22:43:27 +0000 (02:43 +0400)
company-tests.el
company.el

index 1f5db1464c5e847f8c4abe1c701bbc8bfb872b0e..691e3ae2486ad4793c7a7fb5861b6ffc0cfa00b8 100644 (file)
@@ -29,7 +29,7 @@
 (require 'company)
 (require 'company-keywords)
 
-(ert-deftest sorted-keywords ()
+(ert-deftest company-sorted-keywords ()
   "Test that keywords in `company-keywords-alist' are in alphabetical order."
   (dolist (pair company-keywords-alist)
     (when (consp (cdr pair))
           (should (not (equal prev next)))
           (should (string< prev next))
           (setq prev next))))))
+
+(ert-deftest company-good-prefix ()
+  (let ((company-minimum-prefix-length 5)
+        company--explicit-action)
+    (should (eq t (company--good-prefix-p "!@#$%")))
+    (should (eq nil (company--good-prefix-p "abcd")))
+    (should (eq nil (company--good-prefix-p 'stop)))
+    (should (eq t (company--good-prefix-p '("foo" . 5))))
+    (should (eq nil (company--good-prefix-p '("foo" . 4))))))
index 4a93d6201ca45c1fa9e8a7d50f8b4a7af81ef654..b60db361d3325306996e0b1288e85edf70d88755 100644 (file)
@@ -954,8 +954,9 @@ can retrieve meta-data for them."
 
 (defun company--good-prefix-p (prefix)
   (and (or (company-explicit-action-p)
-           (>= (or (cdr-safe prefix) (length prefix))
-               company-minimum-prefix-length))
+           (unless (eq prefix 'stop)
+             (>= (or (cdr-safe prefix) (length prefix))
+                 company-minimum-prefix-length)))
        (stringp (or (car-safe prefix) prefix))))
 
 (defun company--continue ()