Han-Wen Nienhuys [Fri, 28 Jan 2005 20:43:18 +0000 (20:43 +0000)]
* scm/framework-ps.scm (output-classic-framework): dump a
-systems.texi too
(output-classic-framework): dump multiple systems on an "infinite"
page EPS including fonts.
* scripts/lilypond-book.py (Lilypond_snippet.ly_is_outdated): use
.eps files for both texi and tex formats. Use PNG coming from
lilypond.
Werner Lemberg [Fri, 28 Jan 2005 07:48:47 +0000 (07:48 +0000)]
* mf/feta-pendaal.mf ("Pedal asterisk"): Remove workaround for
metapost bug.
* mf/feta-schrift.mf ("Trill (`tr')"): Remove redundant point in
path.
("Varied Coda"): Move some points to avoid fontforge warnings. This
doesn't change the glyph shape.
Werner Lemberg [Wed, 26 Jan 2005 21:11:46 +0000 (21:11 +0000)]
* mf/feta-pendaal.mf (draw_pedal_P): Break shape into smaller pieces
to avoid an uneven number of self-intersections; this confuses
fontforge.
Fix a slight bug in the shape at left bottom (which is visible only
at high magnifications).
`Center' the stem horizontally to avoid overlapping.
Werner Lemberg [Wed, 26 Jan 2005 12:56:40 +0000 (12:56 +0000)]
* mf/feta-schrift.mf ("Trill"): Fix start position of connection
between `t' and `r'.
Unify bulb with the rest of `r' to avoid grazing outlines which
confuses the overlap removal algorithm of fontforge.
Werner Lemberg [Tue, 25 Jan 2005 01:33:00 +0000 (01:33 +0000)]
* mf/feta-autometric.mf (fet_beginfont): Set font_coding_scheme
to `asis'.
(fet_begingroup): Save group name in string `feta_group'.
(fet_endgroup): Updated.
(fet_beginchar): Emit `glyph_name' special for mf2pt1.
* mf/feta-bolletjes.mf: s/p/pat/ for paths.
* mf/feta-pendaal.mf ("Pedal asterisk"): Add workaround for bug
in metapost.
Werner Lemberg [Tue, 18 Jan 2005 22:27:08 +0000 (22:27 +0000)]
* scm/framework-ps.scm (ps-embed-pfa): New function to define a font
resource.
(setup): New function to define a `Setup' environment.
(preamble): Use new functions.
* ps/lilypond.defs (init-lilypond-parameters): New function to get rid of
directly executed PS code. Used in scm/framework-ps.scm.
Werner Lemberg [Thu, 13 Jan 2005 22:55:38 +0000 (22:55 +0000)]
This patch addresses the following problems in the feta sources
files which contribute to the fetaXX fonts.
. Many fixes for rasterization at low resolutions (consistent use of
`vround' and `hround', integer shift values for paths, applying
`eps' for mirrored paths, use of `define_whole_pixels' and
friends, etc.) -- while this probably looks like a waste of time
it has revealed deficiencies in some glyph shapes. See comment at
the end of feta-params.mf how vertical symmetry is achieved.
. The `---' operator has been replaced everywhere with `--'; this
both improves and considerably reduces the font size after
conversion with mf2pt1.
These change aren't explicitly mentioned below since virtually all
glyphs are affected.
Other notable differences:
. Glyphs from feta-accordion.mf now have charboxes around the
outline.
. Fixed incorrect charbox for `accDot'.
. The `rcomma' and `lcomma' glyphs were distorted due to a typo.
. Fixed position of the bow in the `upprall' glyph and its siblings.
. The bulb size in the `2/2 meter' and `4/4 meter' glyphs is now
dependent on the staff line thickness to avoid touching the middle
staff line at smaller sizes.
. Largely extended output for feta-testXX: Where useful, glyphs
are shown both between and on staff lines.
* mf/feta-params.mf (staff_space_rounded,
stafflinethickness_rounded, linethickness_rounded,
ledgerlinethickness_rounded, stemthickness_rounded): New variables.
Update all code which uses them where appropriate.
(feta_eps, feta_shift, feta_space_shift, feta_offset, feta_fillpen):
New variables used to control rasterization at low resolutions. Set
to zert if feta code is processed with metapost.
* mf/feta-macros.mf (draw_staff, draw_staff_outline): Updated.
(draw_rounded_block, draw_square_block): Updated to use `--' only.
(flare_path): Updated.
Make it work with `filldraw' (but only circular pens).
(hfloor, vfloor, hceiling, vceiling): New macros.
* mf/feta-params.mf (to_bp): New macro for mf2pt1.
(set_char_box): Updated.
Add code which emits specials for mf2pt1 if run with metapost.
* mf/feta-accordion.mf ("accDiscant", "accFreebase", "accStdbase"):
Use `draw' again in mf mode to have good pixel dropout control.
Fix intersection points of horizontal lines with circle.
("accDot"): Fix parameters for set_char_box.
("accOldEE"): Use `draw' again in mf mode to have good pixel dropout
control.
* mf/feta-banier.mf: Updated.
* mf/feta-bolletjes.mf (remember_pic): New variable, used for
testing.
(undraw_inside_ellipse): Remove `center' argument. Update all
callers.
(draw_brevis): New macro, called by "Brevis notehead".
(draw_whole_triangle_head): New macro, called by "Whole
trianglehead".
(draw_small_triangle_head): Use `filldraw'.
* mf/feta-eindelijk.mf: Remove useless global group.
Updated.
* mf/feta-klef.mf (draw_c_clef): Correct point positions for using
`filldraw'.
* mf/feta-pendaal.mf: Updated.
* mf/feta-puntje.mf: Updated.
* mf/feta-schrift.mf (draw_very_long_fermata): Simplified to use
less points.
("Flageolet"): Use `draw' again in mf mode to have good pixel
dropout control.
("Varied Coda"): Use `draw_block'.
(draw_comma): Fix typo.
(draw_arpeggio_arrow): Use `draw' also in mf mode to have good
pixel dropout control.
* mf/feta-slag.mf ("upprall", "downprall", "lineprall"): Fix start
position of bow.
* mf/feta-timesig.mf (draw_C): Reduce bulb size for smaller design
sizes.
* mf/feta-toevallig.mf (remember_pic): New variable, used for
testing.
(draw_meta_sharp): Much simplified.
("Sharp", "1/2 Sharp", "3/4 Sharp"): Don't rotate but shift.
* mf/feta-test-generic.mf: Include all files as in feta-generic.mf.
Nicolas Sceaux [Mon, 10 Jan 2005 22:05:06 +0000 (22:05 +0000)]
* lily/include/input.hh (class Input): new `end_' slot for end of
input. Renamed defined_str0_ to start_.
* lily/input.cc (Input): Add Input::Input (Input const &) and
remove Input::Input (Source_file*, char const *). Use the new
slots.
(set_location): method used by bison to propagate input
locations (YYLLOC_DEFAULT).
(end_line_number, end_column_number, step_forward): new methods
* lily/input-scheme.cc (ly:input-both-locations): new function,
similar to ly:input-location, but also return the end line and
column.
* lily/include/includable-lexer.hh:
* lily/includable-lexer.cc:
* lily/include/lily-lexer.hh (class Lily_lexer):
* lily/lily-lexer.cc (add_lexed_char): Move add_lexed_char from
Includable_lexer to Lily_lexer, in order to update lexloc (the
yylloc), a new slot of Lily_lexer.
(here_input, LexerError): simplify by using the lexloc slot (aka
yylloc)
* lily/lexer.ll: #define yylloc to use input locations (it may
be useless here?). Fixed the #embedded_scm rule (step the location
forward in order to skip the sharp sign before parsing the scheme
expression)
* lily/include/lily-parser.hh (class Lily_parser):
* lily/lily-parser.cc: Remove push_spot(), pop_spot() and
here_input()
(parser_error): overload for more precise locations of errors.
* lily/parser.yy (YYLTYPE): set location type to Input
(YYLLOC_DEFAULT): use Input::set_location()
(yylex): add the YYLTYPE* location parameter.
Clean push_spot()/pop_spot()/here_input(), and use @$, @1, etc.
Give an Input parameter to THIS->parser-error() for more accurate
messages.
(all-grob-descriptions): remove all
extra-offsets from definitions.
2005-01-08 Erlend Aasland <erlenda@gmail.com>
* scm/output-lib.scm: Rename guitar-tunings to guitar-tuning and
add tuning for 4-string bass and some common 4/5-string banjo tunings.
New function (four-string-banjo) turns a 5-string tuning into a 4-string
tuning.
New function (fret-number-tablature-format-banjo) computes correct fret
numbers on 5-string banjos.