diff --git a/lesscpy/lessc/lexer.py b/lesscpy/lessc/lexer.py index 192956f..305c701 100644 --- a/lesscpy/lessc/lexer.py +++ b/lesscpy/lessc/lexer.py @@ -174,6 +174,15 @@ class LessLexer: r'@\{[^@\}]+\}' return t + def t_iselector_t_eclose(self, t): + r'"|\'' + # Can only happen if iselector state is on top of estring state. + # + # Example: @item: ~".col-xs-@{index}"; + # + t.lexer.pop_state() + return t + def t_iselector_css_filter(self, t): (r'\[[^\]]*\]' '|(not|lang|nth-[a-z\-]+)\(.+\)' diff --git a/lesscpy/lessc/parser.py b/lesscpy/lessc/parser.py index 809ec79..c576029 100644 --- a/lesscpy/lessc/parser.py +++ b/lesscpy/lessc/parser.py @@ -664,7 +664,8 @@ class LessParser(object): # def p_escaped_string(self, p): - """ estring : t_eopen style t_eclose + """ estring : t_eopen style_list t_eclose + | t_eopen identifier_list t_eclose """ p[0] = p[2]