gridColumnWidths function
Zwölftel → Zeichen je Spalte (ganze Zeichen, Rest an die letzte, mindestens 1).
Implementation
List<int> gridColumnWidths(List<int> twelfths, int chars) {
final out = <int>[];
var vergeben = 0;
for (var i = 0; i < twelfths.length; i++) {
final letzte = i == twelfths.length - 1;
final b = letzte ? (chars - vergeben < 1 ? 1 : chars - vergeben) : ((chars * twelfths[i]) ~/ 12).clamp(1, 1 << 30);
out.add(b);
vergeben += b;
}
return out;
}