+2002-02-28 Han-Wen Nienhuys <hanwen@cs.uu.nl>
+
+ * VERSION (PATCH_LEVEL): 1.5.35 released.
+
+ * lily/lookup.cc (ly_bracket): Scheme function ly-bracket
+ (bracket): New function.
+
+ * lily/stem-engraver.cc (stop_translation_timestep): bugfix, unset
+ stemLeftBeamCount, stemRightBeamCount in stead of using #<undefined>
+
+ * lily/third-try.cc (set_implicit_neighbor_columns): type checking
+ bugfix.
+
+ * lily/span-arpeggio-engraver.cc (stop_translation_timestep):
+ typecheck bugfix.
+
+ * lily/grob.cc (ly_get_grob_property): be anal about types.
+ (ly_set_grob_property): idem
+
+ * lily/figured-bass-engraver.cc (process_music): move molecule
+ building completely to Scheme
+
+ * lily/include/musical-request.hh (class Bass_figure_req): Add
+ class.
+
+ * lily/parser.yy (bass_figure): add support for space figure.
+
+ * lily/molecule.cc (ly_molecule_combined_at_edge): be anal about types
+
+ * lily/font-metric.cc (ly_text_dimension): Scheme function ly-text-dimension
+
+ * lily/molecule.cc (ly_fontify_atom): new function ly-fontify-atom
+ (ly_align_to_x): new function ly-align-to!
+
+ * lily/font-interface.cc (ly_font_interface_get_font): new Scheme
+ function ly-get-font
+
+ * mf/feta-nummer.mf: include normal-space dimension.
+
+ * lily/collision.cc (check_meshing_chords): don't merge collisions
+ with whole notes.
+
+ * lily/system-start-delimiter.cc (after_line_breaking): Bugfix:
+ glyph is string.
+
+2002-02-28 Mats Bengtsson <matsb@matsb@s3.kth.se>
+
+ * scm/tex.scm, scm/ps.scm (or): Bugfix, ps output with Guile 3.4
+
+2002-02-28 Juergen Reuter <reuter@ipd.uka.de>
+
+ * mf/parmesan-heads.mf: bugfix: mensural note heads (WARNING:
+ font changed)
+
+ * scm/output-lib.scm: bugfix: resort to neo_mensural chars rather
+ than mensural chars
+
+ * mf/parmesan-scripts.mf, mf/parmesan-generic.mf,
+ scm/grob-description.scm: added mensural fermata symbol
+
2002-02-27 Han-Wen Nienhuys <hanwen@cs.uu.nl>
* VERSION: 1.5.34 released.
Changed property: localKeySignature.
Added properties: extraNatural, autoAccidentals,
autoCautionaries.
+
(BUGFIX: broken-tie-support destroyed in 1.5.16)
* ly/property-init.ly: added commands
@cindex fingering
-Fingering instructions can also be entered in this shorthand.
+Fingering instructions can also be entered in this shorthand. For
+changes, some markup texts would be needed:
@lilypond[verbatim, singleline, fragment]
c'4-1 c'4-2 c'4-3 c'4-4
+ c^#'(finger "2-3")
@end lilypond
@cindex Basso continuo
-Figured bass is printed by @internalsref{FiguredBass} context. This
-context will print notes (relative to the central C) as figures. To
-ease entering these notes, the special @code{\figures} mode is
-available which allows you to type numbers, like @code{<4 6+>}.
-
-@lilypond[verbatim,fragment]
-< \context FiguredBass \transpose c'' {
- <e! g >
- <f8 ais >
- \figures {
- r8
- <1 3 5>4 <3- 5+ 6!> <5>
- }
- }
- \context Voice {
- c g8 g f4 d c
- } >
-@end lilypond
+TODO. see figured-bass.ly
@c . {Tuning output}
@node Tuning output
PACKAGE_NAME=LilyPond
MAJOR_VERSION=1
MINOR_VERSION=5
-PATCH_LEVEL=34
+PATCH_LEVEL=35
MY_PATCH_LEVEL=
# use the above to send patches: MY_PATCH_LEVEL is always empty for a
--- /dev/null
+\header {
+texidoc = "Test figured bass.
+
+Figured bass is created by the FiguredBass context which eats
+figured bass requests and rest-requests. You must enter these using
+the special @code{\figures @{ @}} mode, which allows you to type
+numbers, like @code{<4 6+>}.
+
+" }
+
+\score { \notes <
+ \context FiguredBass {
+ \figures {
+ <_! 3+ 5- _ 7! 9 >4
+ < 4 6 >
+ }
+ }
+
+ \context Voice {
+ c 4
+ g8
+ }
+
+>
+ }
}
-
Molecule
Lookup::dashed_slur (Bezier b, Real thick, Real dash)
{
return Molecule (box, at);
}
-
-
-
Molecule
Lookup::blank (Box b)
{
return Molecule (b,at);
}
+
Molecule
Lookup::frame (Box b, Real thick)
{
edges[o][DOWN] = b[o][DOWN] - thick/2;
edges[o][UP] = b[o][UP] + thick/2;
-
m.add_molecule (filledbox (edges));
}
while (flip (&d) != LEFT);
return Molecule (b, at);
}
+/*
+ TODO: junk me.
+ */
Molecule
Lookup::accordion (SCM s, Real staff_space, Font_metric *fm)
{
return Molecule (b, slashnodot); // http://slashnodot.org
}
+
+
+
+Molecule
+Lookup::bracket (Axis a, Interval iv, Direction d, Real thick, Real protude)
+{
+ Box b;
+ Axis other = Axis((a+1)%2);
+ b[a] = iv;
+ b[other] = Interval(-1, 1) * thick * 0.5;
+
+ Molecule m = filledbox (b);
+
+ b[a] = Interval (iv[UP] - thick, iv[UP]);
+ Interval oi = Interval (-thick/2, thick/2 + protude) ;
+ oi *= d;
+ b[other] = oi;
+ m.add_molecule (filledbox (b));
+ b[a] = Interval (iv[DOWN], iv[DOWN] +thick);
+ m.add_molecule (filledbox(b));
+
+ return m;
+}
+
+SCM
+ly_bracket (SCM a, SCM iv, SCM d, SCM t, SCM p)
+{
+ SCM_ASSERT_TYPE(ly_axis_p (a), a, SCM_ARG1, __FUNCTION__, "axis") ;
+ SCM_ASSERT_TYPE(ly_number_pair_p (iv), iv, SCM_ARG1, __FUNCTION__, "number pair") ;
+ SCM_ASSERT_TYPE(isdir_b (d), a, SCM_ARG1, __FUNCTION__, "direction") ;
+ SCM_ASSERT_TYPE(gh_number_p (t), a, SCM_ARG1, __FUNCTION__, "number") ;
+ SCM_ASSERT_TYPE(gh_number_p(p), a, SCM_ARG1, __FUNCTION__, "number") ;
+
+
+ return Lookup::bracket ((Axis)gh_scm2int (a), ly_scm2interval (iv),
+ (Direction)gh_scm2int (d), gh_scm2double (t), gh_scm2double (p)).smobbed_copy ();
+}
+
+static void
+lookup_init ()
+{
+ scm_c_define_gsubr ("ly-bracket", 5, 0, 0, (Scheme_function_unknown) ly_bracket);
+}
+
+ADD_SCM_INIT_FUNC (lookup,lookup_init);
+
(music-property-description 'repeat-count integer? "do a @code{\repeat} how ofen?")
(music-property-description 'span-direction dir? "Does this start or stop a spanner?")
(music-property-description 'symbol symbol? "Grob name to perform an override/revert on.")
-(music-property-description 'text string? "markup expression to be printed")
+(music-property-description 'text markup? "markup expression to be printed")
;; markup?
(music-property-description 'tremolo-type integer? "")
(music-property-description 'value scheme? "Assignment value for a
translation property")
(music-property-description 'what string? "What to change for auto-change. FIXME, naming")
+
+(music-property-description 'figure number? "number for figured bass")
+(music-property-description 'alteration number? "alteration for figured bass")
+(music-property-description 'bracket-start boolean? "start a bracket
+here. TODO: use span requests?")
+(music-property-description 'bracket-stop boolean? "stop a bracket here.")
+