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.
Graham Percival [Thu, 6 Jan 2005 22:47:37 +0000 (22:47 +0000)]
Adding string quartet \tag part extraction. Large section with
@verbose. I think it's ok, but if anything breaks web-doc, it would
be this untested patch.
(gui_b): Remove handy developer-only
PKG_CONFIG_PATH settings that cater for Jan-and-Han-Wen ~/usr/pkg/
CVS source installations (but break other non-default but correct
PKG_CONFIG_PATH setups), as this is no longer developer-only.
Werner Lemberg [Mon, 3 Jan 2005 07:54:19 +0000 (07:54 +0000)]
Prepare glyph shapes for mf2pt1 conversion.
* mf/feta-accordion.mf (accreg_pen): Removed. No longer used.
(accDiscant, accFreebase, accStdbase): Replace `draw' with
`penstroke'.
(accDot): Use `drawdot'.
(accBayanbase): Replace `draw' with `draw_gridline'.
(print_penpos): Moved to feta-macros.mf.
(accOldEE): Replace `filldraw' with `penstroke'.
Replace `draw' with `penstroke' and `drawdot'.
* mf/feta-bolletjes (draw_cross): Remove call to `labels'.
* mf/feta-eindelijk.mf (draw_rest_bulb, draw_eigth_rest): Add
paremeter to control drawing of labels. Update all callers.
* mf/feta-klef.mf (draw_c_clef): Use `&' not `..' to connect paths.
(new_bulb): Return a bulb as a single path. To do that, it now
takes some more parameters. Updated all callers.
(draw_gclef): Major clean-up. `draw' has been replaced with
`penstroke', unnecessary outlines have been removed.
Remove (unused) gnome-canvas code.
* mf/feta-macros.mf (print_penpos): New macro (from
feta-accordion.mf).
Other minor fixes.
* mf/feta-pendaal.mf ("Pedal asterisk"): Use `undrawdot'.
("Pedal dot"): Use `drawdot'.
(draw_pedal_P): Add parameter to control drawing of labels. Update
all callers.
Fix shape at top.
(draw_pedal_e): Add parameter to control drawing of labels. Update
all callers.
(draw_pedal_d): Add parameter to control drawing of labels. Update
all callers.
Revert drawing direction.
* mf/feta-schrift.mf (draw_fermata): Use single path.
(draw_short_fermata): Replace `filldraw' with `fill'.
(draw_long_fermata, draw_very_long_fermata): Replace calls to
`draw_rounded_block' with a single path.
("Thumb"): Draw full circle instead of mirroring segments.
(draw_accent): New macro.
("> accent", "espr"): Use it.
(draw_marcato): Replace `filldraw' and `draw' with `fill'.
("open (unstopped)"): Draw full circle instead of mirroring
segments.
(draw_vee): Removed.
("Upbow"): Use `draw_accent' instead of `draw_vee'.
("Downbow"): Replace calls to `draw_rounded_block' with a single
path.
("Trill (`tr')"): Replace overlapping loop drawn with `draw' with
partial pieces drawn with `fill' -- these do still overlap with the
stem of the `t' but just once, not multiple times so that fontforge
can handle it gracefully.
Change other parts of the glyph so that fontforge's overlapping
algorithm reliably works.
(draw_heel): Replace `draw' with `fill'.
(draw_toe): Use `draw_accent' instead of `draw_vee'.
("Flageolet"): Replace `draw' with `penstroke'.
("Segno"): Replace `filldraw' with `penstroke'.
Replace `draw' with `drawdot'.
("Coda"): Replace `fill' with `penstroke', using a single path.
("Varied Coda"): Use less overlapping paths.
(draw_arpeggio_arrow): Replace `filldraw' with `fill', using a
single path.
* mf/feta-slag.mf (draw_trillelement): Put `clearxy' outside of
group to better control the `labels' command.
Rename argument to `offset' and use it actually. Update all
callers.
Replace `filldraw' with `fill'.
("mordent", "prallmordent", "upmordent", "downmordent",
"lineprall"): Replace `draw' with `draw_gridline'.
("upprall", "downprall"): Replace `draw' with `fill'.
Werner Lemberg [Fri, 24 Dec 2004 23:57:36 +0000 (23:57 +0000)]
Prepare glyph shapes for mf2pt1 conversion.
* mf/feta-toevallig.mf ("Double Sharp"): Minor path fix.
* mf/feta-bolletjes.mf (penposx): New auxiliary macro.
(define_triangle_shape): Use it replace `draw' with `fill' and
`unfill'. Update all callers.
(draw_slash): Replace `filldraw' with `fill'. Update all callers.
(draw_cross): Ditto.
("X-Circled notehead"): Replace `draw' with `fill' and `unfill'.
Use penrazor for better conversion with mf2pt1.
(generic_draw_solfa_note_shape, draw_solfa_note_shape,
draw_solfa_quarter_note_shape, triangle): Removed. Unused.
(draw_do_head, draw_re_head, draw_mi_head, draw_fa_head,
draw_la_head, draw_ti_head): Replace `filldraw' with
`fill'. Update all callers.
Werner Lemberg [Thu, 23 Dec 2004 07:32:14 +0000 (07:32 +0000)]
Prepare glyph shapes for mf2pt1 conversion.
* mf/feta-macros.mf, mf_feta-eindelijk.mf: Some formatting.
* mf/feta-toevallig.mf: Formatting.
(draw_meta_sharp): Modify path to replace `filldraw' with `fill'.
("Natural"): Fix paths to allow better postprocessing.
(draw_meta_flat): Use `z3l' as additional point in path to get
better conversion with mf2pt1.
Other minor cleanups.
("3/4 Flat"): Add auxiliary points and modify path to replace
`draw' with `fill'.
("Double Sharp"): Mirror path segments instead of picture elements
to get a single outline.
Modify path to replace `filldraw' with `fill'.