WEB-6561 Emmet, bem filter: multiple element prefixes work incorrecly when class names contain '-'

This commit is contained in:
Alexander Zolotov
2013-02-08 18:00:25 +04:00
parent 2d1cd7bbf3
commit 73963b2c7d
@@ -60,7 +60,16 @@ public class BemEmmetFilter extends ZenCodingFilter {
private static final Function<String, String> CLASS_NAME_NORMALIZER = new Function<String, String>() {
@Override
public String apply(@NotNull String input) {
return input.replaceAll("^" + Pattern.quote(SHORT_ELEMENT_PREFIX), ELEMENT_SEPARATOR);
if(!input.startsWith(SHORT_ELEMENT_PREFIX)) {
return input;
}
StringBuilder result = new StringBuilder();
while (input.startsWith(SHORT_ELEMENT_PREFIX)) {
input = input.substring(SHORT_ELEMENT_PREFIX.length());
result.append(ELEMENT_SEPARATOR);
}
return result.append(input).toString();
}
};