krasimir/absurd — pull request #19 by gundead222 (2013-11-15 15:18:11+00:00)
Title: Fix: Ampersand operator in any position in selector issue in plugins

changed ampersand operator clearing condition with regex test

api.plugin("hoverEffect", function(api, color) {
return {
"&:hover": {
color: color,
background: api.lighten(color, 60),
".ie8 &": {
color: "blue"
}
},
".ie8 &": {
color: "#eee"
}
};
});
api.add({
a: {
color: "#000",
hoverEffect: "#999"
}
});

result

a {
color: #000;
}
a:hover {
color: #999;
background: #f5f5f5;
}
.ie8 a:hover {
color: blue;
}
.ie8 a {
color: #eee;
}

maybe this could be useful for those who arrange nested selector hierarchy differently

about usage of ampersand operator in yaml. the selector needs to be enclosed in quotes/double quotes to work.

---
a:
'.ie6 &':
...