diff options
| author | Simen Heggestøyl | 2020-05-10 14:44:26 +0200 |
|---|---|---|
| committer | Simen Heggestøyl | 2020-05-10 14:57:22 +0200 |
| commit | 1efaa1d66b9bc51284c7cac4477f45c9bde4fcfb (patch) | |
| tree | ba11ecbc24d94c76f0bd5171ef87237dc880352b | |
| parent | 2df2f787116a9b0f3907ffbf1027c2eab0804e7d (diff) | |
| download | emacs-1efaa1d66b9bc51284c7cac4477f45c9bde4fcfb.tar.gz emacs-1efaa1d66b9bc51284c7cac4477f45c9bde4fcfb.zip | |
Allow underscores in CSS variable names
* lisp/textmodes/css-mode.el (css-nmchar-re): Allow underscores in
variable names (and in identifiers in general).
* test/manual/indent/css-mode.css: Add some examples of variable names
with underscores in them.
* test/manual/indent/less-css-mode.less: Add some examples of variable
names with underscores in them.
* test/manual/indent/scss-mode.scss: Add some examples of variable
names with underscores in them.
| -rw-r--r-- | lisp/textmodes/css-mode.el | 2 | ||||
| -rw-r--r-- | test/manual/indent/css-mode.css | 4 | ||||
| -rw-r--r-- | test/manual/indent/less-css-mode.less | 10 | ||||
| -rw-r--r-- | test/manual/indent/scss-mode.scss | 4 |
4 files changed, 19 insertions, 1 deletions
diff --git a/lisp/textmodes/css-mode.el b/lisp/textmodes/css-mode.el index ab9e2dc35ec..0035c5e7b05 100644 --- a/lisp/textmodes/css-mode.el +++ b/lisp/textmodes/css-mode.el | |||
| @@ -886,7 +886,7 @@ cannot be completed sensibly: `custom-ident', | |||
| 886 | 886 | ||
| 887 | (defconst css-escapes-re | 887 | (defconst css-escapes-re |
| 888 | "\\\\\\(?:[^\000-\037\177]\\|[[:xdigit:]]+[ \n\t\r\f]?\\)") | 888 | "\\\\\\(?:[^\000-\037\177]\\|[[:xdigit:]]+[ \n\t\r\f]?\\)") |
| 889 | (defconst css-nmchar-re (concat "\\(?:[-[:alnum:]]\\|" css-escapes-re "\\)")) | 889 | (defconst css-nmchar-re (concat "\\(?:[-_[:alnum:]]\\|" css-escapes-re "\\)")) |
| 890 | (defconst css-nmstart-re (concat "\\(?:[[:alpha:]]\\|" css-escapes-re "\\)")) | 890 | (defconst css-nmstart-re (concat "\\(?:[[:alpha:]]\\|" css-escapes-re "\\)")) |
| 891 | (defconst css-ident-re ;; (concat css-nmstart-re css-nmchar-re "*") | 891 | (defconst css-ident-re ;; (concat css-nmstart-re css-nmchar-re "*") |
| 892 | ;; Apparently, "at rules" names can start with a dash, e.g. @-moz-keyframes. | 892 | ;; Apparently, "at rules" names can start with a dash, e.g. @-moz-keyframes. |
diff --git a/test/manual/indent/css-mode.css b/test/manual/indent/css-mode.css index ecf6c3c0ca5..041aeec1b15 100644 --- a/test/manual/indent/css-mode.css +++ b/test/manual/indent/css-mode.css | |||
| @@ -92,5 +92,9 @@ div::before { | |||
| 92 | 92 | ||
| 93 | .foo-bar--baz { | 93 | .foo-bar--baz { |
| 94 | --foo-variable: 5px; | 94 | --foo-variable: 5px; |
| 95 | --_variable_with_underscores: #fff; | ||
| 96 | --_variable-starting-with-underscore: none; | ||
| 95 | margin: var(--foo-variable); | 97 | margin: var(--foo-variable); |
| 98 | color: var(--_variable_with_underscores); | ||
| 99 | display: var(--_variable-starting-with-underscore); | ||
| 96 | } | 100 | } |
diff --git a/test/manual/indent/less-css-mode.less b/test/manual/indent/less-css-mode.less index 36c037450cc..b40a2362e28 100644 --- a/test/manual/indent/less-css-mode.less +++ b/test/manual/indent/less-css-mode.less | |||
| @@ -1,3 +1,13 @@ | |||
| 1 | @var-with-dashes: #428bca; | ||
| 2 | @var_with_underscores: 10px; | ||
| 3 | @_var-starting-with-underscore: none; | ||
| 4 | |||
| 5 | body { | ||
| 6 | background: @var-with-dashes; | ||
| 7 | padding: @var_with_underscores; | ||
| 8 | display: @_var-starting-with-underscore; | ||
| 9 | } | ||
| 10 | |||
| 1 | .desktop-and-old-ie(@rules) { | 11 | .desktop-and-old-ie(@rules) { |
| 2 | @media screen and (min-width: 1200) { @rules(); } | 12 | @media screen and (min-width: 1200) { @rules(); } |
| 3 | html.lt-ie9 & { @rules(); } | 13 | html.lt-ie9 & { @rules(); } |
diff --git a/test/manual/indent/scss-mode.scss b/test/manual/indent/scss-mode.scss index a3dd41eeb47..189ec4e22ac 100644 --- a/test/manual/indent/scss-mode.scss +++ b/test/manual/indent/scss-mode.scss | |||
| @@ -41,9 +41,13 @@ p.#{$name} var | |||
| 41 | article[role="main"] { | 41 | article[role="main"] { |
| 42 | $toto: 500 !global; | 42 | $toto: 500 !global; |
| 43 | $var-with-default: 300 !default; | 43 | $var-with-default: 300 !default; |
| 44 | $var_with_underscores: #fff; | ||
| 45 | $_var-starting-with-underscore: none; | ||
| 44 | float: left !important; | 46 | float: left !important; |
| 45 | width: 600px / 888px * 100%; | 47 | width: 600px / 888px * 100%; |
| 46 | height: 100px / 888px * 100%; | 48 | height: 100px / 888px * 100%; |
| 49 | color: $var_with_underscores; | ||
| 50 | display: $_var-starting-with-underscore; | ||
| 47 | } | 51 | } |
| 48 | 52 | ||
| 49 | %placeholder { | 53 | %placeholder { |