summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSimen Heggestøyl <simenheg@gmail.com>2017-10-13 21:48:12 +0200
committerSimen Heggestøyl <simenheg@gmail.com>2017-10-13 21:57:52 +0200
commitff330530123a9e3f6fbb2d0fe52564e4e3d78369 (patch)
tree917973bdabcaf3cde6f89871585510beb2c2f0b1
parent8968be822ea864f383be75888e83bd92274fc520 (diff)
downloademacs-ff330530123a9e3f6fbb2d0fe52564e4e3d78369.tar.gz
Fix indentation bug in multi-line CSS selectors
* lisp/textmodes/css-mode.el (css--colon-inside-selector-p): Fix indentation of multi-line CSS selectors that include both a pseudo-class and parenthesis. * test/manual/indent/css-mode.css: Add test for the above change.
-rw-r--r--lisp/textmodes/css-mode.el2
-rw-r--r--test/manual/indent/css-mode.css10
2 files changed, 11 insertions, 1 deletions
diff --git a/lisp/textmodes/css-mode.el b/lisp/textmodes/css-mode.el
index 9022ab7c3fb..39885c10860 100644
--- a/lisp/textmodes/css-mode.el
+++ b/lisp/textmodes/css-mode.el
@@ -1149,7 +1149,7 @@ This function is intended to be good enough to help SMIE during
tokenization, but should not be regarded as a reliable function
for determining whether point is within a selector."
(save-excursion
- (re-search-forward "[{};)]" nil t)
+ (re-search-forward "[{};]" nil t)
(eq (char-before) ?\{)))
(defun css--colon-inside-funcall ()
diff --git a/test/manual/indent/css-mode.css b/test/manual/indent/css-mode.css
index bf612b53a14..640418b022d 100644
--- a/test/manual/indent/css-mode.css
+++ b/test/manual/indent/css-mode.css
@@ -66,6 +66,16 @@ div::before {
);
}
+/* Multi-line selector including both a pseudo-class and
+ parenthesis. */
+.form-group:not(.required) label,
+.birth-date .row > * {
+ &::after {
+ display: inline;
+ font-weight: normal;
+ }
+}
+
@font-face {
src: url("Sans-Regular.eot") format("eot"),
url("Sans-Regular.woff") format("woff"),