diff options
| author | Simen Heggestøyl <simenheg@gmail.com> | 2017-06-17 09:28:43 +0200 |
|---|---|---|
| committer | Simen Heggestøyl <simenheg@gmail.com> | 2017-06-17 10:38:29 +0200 |
| commit | 8960f6aa36000a8d6014e0c7371ee96ba148965a (patch) | |
| tree | 5c59504139d772abd49885af93f38c745bfbf025 | |
| parent | 27c194995b460b79e8e62e0d21e85d87df664649 (diff) | |
| download | emacs-8960f6aa36000a8d6014e0c7371ee96ba148965a.tar.gz | |
Complete CSS property values less eagerly (Bug#27392)
* lisp/textmodes/css-mode.el (css--complete-property-value): Be less
eager by looking for a colon after the property which values are being
completed for.
* test/lisp/textmodes/css-mode-tests.el (css-test-complete-property):
Add a test case ensuring that properties that are prefixes of other
properties don't hinder further completion.
| -rw-r--r-- | lisp/textmodes/css-mode.el | 9 | ||||
| -rw-r--r-- | test/lisp/textmodes/css-mode-tests.el | 7 |
2 files changed, 11 insertions, 5 deletions
diff --git a/lisp/textmodes/css-mode.el b/lisp/textmodes/css-mode.el index 0beaaaa32f1..4952533e834 100644 --- a/lisp/textmodes/css-mode.el +++ b/lisp/textmodes/css-mode.el @@ -1289,10 +1289,11 @@ the string PROPERTY." (let ((property (save-excursion (re-search-backward ":[^/]" (line-beginning-position) t) - (let ((property-end (point))) - (skip-chars-backward "-[:alnum:]") - (let ((property (buffer-substring (point) property-end))) - (car (member property css-property-ids))))))) + (when (eq (char-after) ?:) + (let ((property-end (point))) + (skip-chars-backward "-[:alnum:]") + (let ((prop (buffer-substring (point) property-end))) + (car (member prop css-property-ids)))))))) (when property (let ((end (point))) (save-excursion diff --git a/test/lisp/textmodes/css-mode-tests.el b/test/lisp/textmodes/css-mode-tests.el index b4666ae72d7..68946a01c06 100644 --- a/test/lisp/textmodes/css-mode-tests.el +++ b/test/lisp/textmodes/css-mode-tests.el @@ -159,7 +159,12 @@ (insert "body { f") (let ((completions (css-mode-tests--completions))) (should (member "filter" completions)) - (should-not (member "position" completions))))) + (should-not (member "position" completions)))) + ;; Bug#27392 + (with-temp-buffer + (css-mode) + (insert "html { grid") + (should (> (length (css-mode-tests--completions)) 0)))) (ert-deftest css-test-foreign-completions () (let ((other-buffer-1 (generate-new-buffer "1")) |
