-for h := 2 staffsize# step 1 pt# until (7 * staffsize#):
- % note: define_pixels (x) multiplies x by hppp,
- % we must never get bigger than infinity
- draw_brace (min (h, infinity/hppp - 1), staff_space#);
-endfor
+save stafflinethickness;
+save increment;
+
+linethickness := 0.5 pt#;
+increment := 0.5 pt#;
+y := 10 pt#;
+
+for i := 0 step 1 until font_count:
+ save number;
+
+ number := braces_per_font * i;
+
+ for j := 0 step 1 until (braces_per_font - 1):
+ % message "l: "&decimal l;
+ % note: define_pixels (x) multiplies x by hppp,
+ % must never get bigger than infinity
+ y := y + increment;
+ if y > infinity / hppp:
+ message "Resolution and/or magnification is too high";
+ message "HPPP: "& decimal hppp &" Y: " & decimal y;
+ errmessage "please report to <bug-lilypond@gnu.org>";
+ fi;
+
+ % x should be about one staff space, taking brace to have
+ % default height of 3 staffs, this yields height / 3 / 4 = 12
+ % but 15 looks better
+ x := y / 15;
+
+ increment := x / 10;
+ linethickness := min (0.5 pt#, y / 150);
+ if i = font_count:
+ draw_brace (y, x, linethickness, number);
+ fi;
+
+ number := number + 1;
+ endfor;
+endfor;
+
+fet_endfont ("feta-braces");