Skip to content

Commit

Permalink
Support single colon in CSS/SCSS/LESS when using pseudo element selector
Browse files Browse the repository at this point in the history
  • Loading branch information
Zsolt Lengyel committed Oct 12, 2021
1 parent 1a258a3 commit 40a95ab
Show file tree
Hide file tree
Showing 8 changed files with 13 additions and 5 deletions.
2 changes: 1 addition & 1 deletion src/languages/css.js
Expand Up @@ -58,7 +58,7 @@ export default function(hljs) {
begin: ':(' + css.PSEUDO_CLASSES.join('|') + ')'
},
{
begin: '::(' + css.PSEUDO_ELEMENTS.join('|') + ')'
begin: ':(:)?(' + css.PSEUDO_ELEMENTS.join('|') + ')'
}
]
},
Expand Down
2 changes: 1 addition & 1 deletion src/languages/less.js
Expand Up @@ -199,7 +199,7 @@ export default function(hljs) {
},
{
className: 'selector-pseudo',
begin: '::(' + css.PSEUDO_ELEMENTS.join('|') + ')'
begin: ':(:)?(' + css.PSEUDO_ELEMENTS.join('|') + ')'
},
{
begin: /\(/,
Expand Down
2 changes: 1 addition & 1 deletion src/languages/scss.js
Expand Up @@ -55,7 +55,7 @@ export default function(hljs) {
},
{
className: 'selector-pseudo',
begin: '::(' + PSEUDO_ELEMENTS.join('|') + ')'
begin: ':(:)?(' + PSEUDO_ELEMENTS.join('|') + ')'
},
VARIABLE,
{ // pseudo-selector params
Expand Down
4 changes: 2 additions & 2 deletions test/markup/css/pseudo.expect.txt
@@ -1,5 +1,5 @@
<span class="hljs-selector-class">.test</span>:before,
.test:after {
<span class="hljs-selector-class">.test</span><span class="hljs-selector-pseudo">:before</span>,
<span class="hljs-selector-class">.test</span><span class="hljs-selector-pseudo">:after</span> {
<span class="hljs-attribute">color</span>: pink;
<span class="hljs-attribute">color</span>: red;
}
Expand Down
2 changes: 2 additions & 0 deletions test/markup/less/css_consistency.expect.txt
Expand Up @@ -22,7 +22,9 @@

<span class="hljs-selector-tag">a</span><span class="hljs-selector-pseudo">:visited</span> { <span class="hljs-attribute">color</span>: blue; }
<span class="hljs-selector-tag">div</span><span class="hljs-selector-pseudo">::after</span> { <span class="hljs-attribute">content</span>: <span class="hljs-string">&quot;test&quot;</span>; }
<span class="hljs-selector-tag">div</span><span class="hljs-selector-pseudo">:after</span> { <span class="hljs-attribute">content</span>: <span class="hljs-string">&quot;test&quot;</span>; }
<span class="hljs-selector-tag">div</span><span class="hljs-selector-pseudo">::before</span> { <span class="hljs-attribute">content</span>: open-quote; }
<span class="hljs-selector-tag">div</span><span class="hljs-selector-pseudo">:before</span> { <span class="hljs-attribute">content</span>: open-quote; }
<span class="hljs-selector-tag">span</span><span class="hljs-selector-pseudo">:nth-child</span>(<span class="hljs-number">33</span>) { <span class="hljs-attribute">color</span>:red; }

<span class="hljs-selector-tag">p</span><span class="hljs-selector-pseudo">:lang</span>(en) {}
Expand Down
2 changes: 2 additions & 0 deletions test/markup/less/css_consistency.txt
Expand Up @@ -22,7 +22,9 @@ h1, h2, figcaption, aside, main, form, footer {}

a:visited { color: blue; }
div::after { content: "test"; }
div:after { content: "test"; }
div::before { content: open-quote; }
div:before { content: open-quote; }
span:nth-child(33) { color:red; }

p:lang(en) {}
Expand Down
2 changes: 2 additions & 0 deletions test/markup/scss/css_consistency.expect.txt
Expand Up @@ -22,7 +22,9 @@

<span class="hljs-selector-tag">a</span><span class="hljs-selector-pseudo">:visited</span> { <span class="hljs-attribute">color</span>: blue; }
<span class="hljs-selector-tag">div</span><span class="hljs-selector-pseudo">::after</span> { <span class="hljs-attribute">content</span>: <span class="hljs-string">&quot;test&quot;</span>; }
<span class="hljs-selector-tag">div</span><span class="hljs-selector-pseudo">:after</span> { <span class="hljs-attribute">content</span>: <span class="hljs-string">&quot;test&quot;</span>; }
<span class="hljs-selector-tag">div</span><span class="hljs-selector-pseudo">::before</span> { <span class="hljs-attribute">content</span>: open-quote; }
<span class="hljs-selector-tag">div</span><span class="hljs-selector-pseudo">:before</span> { <span class="hljs-attribute">content</span>: open-quote; }
<span class="hljs-selector-tag">span</span><span class="hljs-selector-pseudo">:nth-child</span>(<span class="hljs-number">33</span>) { <span class="hljs-attribute">color</span>:red; }

<span class="hljs-selector-tag">p</span><span class="hljs-selector-pseudo">:lang</span>(en) {}
Expand Down
2 changes: 2 additions & 0 deletions test/markup/scss/css_consistency.txt
Expand Up @@ -22,7 +22,9 @@ h1, h2, figcaption, aside, main, form, footer {}

a:visited { color: blue; }
div::after { content: "test"; }
div:after { content: "test"; }
div::before { content: open-quote; }
div:before { content: open-quote; }
span:nth-child(33) { color:red; }

p:lang(en) {}
Expand Down

0 comments on commit 40a95ab

Please sign in to comment.