<===> input.scss
.bracketed-lists {
empty: [];
single: [foo];
multiple: [foo, bar];
nested: [[foo], [[bar, baz]]];
space-separated: [foo bar baz];
trailing-comma: [foo, bar,];
// List functions treat it like a list.
nth-comma: nth([foo, bar], 2);
nth-space: nth([foo bar], 2);
comma-separator: list-separator([foo, bar]);
space-separator: list-separator([foo bar]);
// List functions preserve bracketedness.
set-nth: set-nth([foo, bar, baz], 2, qux);
append: append([foo, bar], baz);
append-with-separator: append([foo, bar], baz, $separator: space);
// Inspection produces valid input. This also verifies that nested lists of
// various sorts are parsed properly.
inspect-empty: inspect([]);
inspect-simple: inspect([foo, bar]);
inspect-nested-bracketed: inspect([[foo]]);
inspect-nested-unbracketed: inspect([(foo bar)]);
inspect-nested-unbracketed-comma: inspect([foo bar,]);
inspect-nested-unbracketed-singleton: inspect([(foo,)]);
}
<===> output.css
.bracketed-lists {
empty: [];
single: [foo];
multiple: [foo, bar];
nested: [[foo], [[bar, baz]]];
space-separated: [foo bar baz];
trailing-comma: [foo, bar];
nth-comma: bar;
nth-space: bar;
comma-separator: comma;
space-separator: space;
set-nth: [foo, qux, baz];
append: [foo, bar, baz];
append-with-separator: [foo bar baz];
inspect-empty: [];
inspect-simple: [foo, bar];
inspect-nested-bracketed: [[foo]];
inspect-nested-unbracketed: [(foo bar)];
inspect-nested-unbracketed-comma: [foo bar,];
inspect-nested-unbracketed-singleton: [(foo,)];
}