From: Leevi Graham Date: Tue, 10 Jun 2014 08:39:51 +0000 (+1000) Subject: Honour escaped @ symbols in classnames and ids X-Git-Url: https://git.ndcode.org/public/gitweb.cgi?a=commitdiff_plain;h=212b8483f7cd5a51b415d2cb5bf9a131a8b551ba;p=clean-css.git Honour escaped @ symbols in classnames and ids Fixes: https://github.com/GoalSmashers/clean-css/issues/292 --- diff --git a/lib/selectors/tokenizer.js b/lib/selectors/tokenizer.js index 27997ae9..d6749461 100644 --- a/lib/selectors/tokenizer.js +++ b/lib/selectors/tokenizer.js @@ -1,7 +1,7 @@ module.exports = function Tokenizer(data, minifyContext) { var chunker = new Chunker(data, 128); var chunk = chunker.next(); - var flatBlock = /^@(font\-face|page|\-ms\-viewport|\-o\-viewport|viewport)/; + var flatBlock = /(^@(font\-face|page|\-ms\-viewport|\-o\-viewport|viewport)|\\@.+?)/; var whatsNext = function(context) { var cursor = context.cursor; diff --git a/test/unit-test.js b/test/unit-test.js index 873668d0..4e6f6a24 100644 --- a/test/unit-test.js +++ b/test/unit-test.js @@ -1942,5 +1942,7 @@ title']{display:block}", '@-ms-viewport': '@-ms-viewport{width:device-width}', '@-o-viewport': '@-o-viewport{width:device-width}', '@viewport': '@viewport{width:device-width}' - }) + }), + 'escaped @ symbol in class name': '.pad--all0\\@sm{padding:0}', + 'escaped @ symbol in id': '#id\\@sm{padding:0}' }).export(module);