CVSROOT: /cvsroot/lilypond
Module name: lilypond
Branch:
Changes by: Han-Wen Nienhuys <[EMAIL PROTECTED]> 05/09/12 12:20:26
Modified files:
. : ChangeLog THANKS
Documentation/topdocs: NEWS.tely
Documentation/user: instrument-notation.itely
lily : tie-column.cc tie.cc
lily/include : lily-proto.hh tie.hh translator.icc
ly : declarations-init.ly engraver-init.ly
mf : GNUmakefile
scm : define-grobs.scm define-music-types.scm
Added files:
input/regression: laissez-vibrer-ties.ly
lily : laissez-vibrer-engraver.cc
laissez-vibrer-tie-column.cc
laissez-vibrer-tie.cc tie-column-format.cc
lily/include : laissez-vibrer-tie-column.hh
laissez-vibrer-tie.hh tie-column-format.hh
Removed files:
mf : cmr.enc.in
Log message:
* Documentation/user/instrument-notation.itely (Laissez vibrer
ties): new node.
* input/regression/laissez-vibrer-ties.ly: new file.
* lily/laissez-vibrer-engraver.cc: new file.
* lily/include/tie-column-format.hh: new file.
* lily/tie-column-format.cc: new file.
* lily/tie-column.cc (set_manual_tie_configuration): new function.
* lily/laissez-vibrer-tie.cc: new file.
* lily/include/laissez-vibrer-tie.hh: new file.
* ly/engraver-init.ly: add Laissez_vibrer_engraver
* ly/declarations-init.ly (laissezVibrer): add \laissezVibrer
* scm/define-grobs.scm (all-grob-descriptions): add
LaissezVibrerTie, LaissezVibrerTieColumn
* lily/tie-column.cc (set_tie_config_directions): new function
(final_shape_adjustment): new function.
(shift_small_ties): new function.
* scm/define-music-types.scm (music-descriptions): add
LaissezVibrerEvent
* lily/include/tie.hh (struct Tie_details): add x_gap_
(struct Tie_configuration): add head_position_
* lily/tie-column.cc (set_chord_outline): new function.
* mf/cmr.enc.in: remove file.
CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/ChangeLog.diff?tr1=1.4123&tr2=1.4124&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/THANKS.diff?tr1=1.152&tr2=1.153&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/Documentation/topdocs/NEWS.tely.diff?tr1=1.85&tr2=1.86&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/Documentation/user/instrument-notation.itely.diff?tr1=1.55&tr2=1.56&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/input/regression/laissez-vibrer-ties.ly?rev=1.1
http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/lily/laissez-vibrer-engraver.cc?rev=1.1
http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/lily/laissez-vibrer-tie-column.cc?rev=1.1
http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/lily/laissez-vibrer-tie.cc?rev=1.1
http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/lily/tie-column-format.cc?rev=1.1
http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/lily/tie-column.cc.diff?tr1=1.60&tr2=1.61&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/lily/tie.cc.diff?tr1=1.159&tr2=1.160&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/lily/include/laissez-vibrer-tie-column.hh?rev=1.1
http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/lily/include/laissez-vibrer-tie.hh?rev=1.1
http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/lily/include/tie-column-format.hh?rev=1.1
http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/lily/include/lily-proto.hh.diff?tr1=1.131&tr2=1.132&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/lily/include/tie.hh.diff?tr1=1.58&tr2=1.59&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/lily/include/translator.icc.diff?tr1=1.8&tr2=1.9&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/ly/declarations-init.ly.diff?tr1=1.90&tr2=1.91&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/ly/engraver-init.ly.diff?tr1=1.247&tr2=1.248&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/mf/GNUmakefile.diff?tr1=1.170&tr2=1.171&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/scm/define-grobs.scm.diff?tr1=1.236&tr2=1.237&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/scm/define-music-types.scm.diff?tr1=1.64&tr2=1.65&r1=text&r2=text
Patches:
Index: lilypond/ChangeLog
diff -u lilypond/ChangeLog:1.4123 lilypond/ChangeLog:1.4124
--- lilypond/ChangeLog:1.4123 Sun Sep 11 20:28:04 2005
+++ lilypond/ChangeLog Mon Sep 12 12:20:25 2005
@@ -1,3 +1,42 @@
+2005-09-12 Han-Wen Nienhuys <[EMAIL PROTECTED]>
+
+ * Documentation/user/instrument-notation.itely (Laissez vibrer
+ ties): new node.
+
+ * input/regression/laissez-vibrer-ties.ly: new file.
+
+ * lily/laissez-vibrer-engraver.cc: new file.
+
+ * lily/include/tie-column-format.hh: new file.
+
+ * lily/tie-column-format.cc: new file.
+
+ * lily/tie-column.cc (set_manual_tie_configuration): new function.
+
+ * lily/laissez-vibrer-tie.cc: new file.
+
+ * lily/include/laissez-vibrer-tie.hh: new file.
+
+ * ly/engraver-init.ly: add Laissez_vibrer_engraver
+
+ * ly/declarations-init.ly (laissezVibrer): add \laissezVibrer
+
+ * scm/define-grobs.scm (all-grob-descriptions): add
+ LaissezVibrerTie, LaissezVibrerTieColumn
+
+ * lily/tie-column.cc (set_tie_config_directions): new function
+ (final_shape_adjustment): new function.
+ (shift_small_ties): new function.
+
+ * scm/define-music-types.scm (music-descriptions): add
LaissezVibrerEvent
+
+ * lily/include/tie.hh (struct Tie_details): add x_gap_
+ (struct Tie_configuration): add head_position_
+
+ * lily/tie-column.cc (set_chord_outline): new function.
+
+ * mf/cmr.enc.in: remove file.
+
2005-09-11 Graham Percival <[EMAIL PROTECTED]>
* Documentation/user/examples.itely: typo fix. Thanks, Matevž
Index: lilypond/Documentation/topdocs/NEWS.tely
diff -u lilypond/Documentation/topdocs/NEWS.tely:1.85
lilypond/Documentation/topdocs/NEWS.tely:1.86
--- lilypond/Documentation/topdocs/NEWS.tely:1.85 Tue Aug 30 12:23:13 2005
+++ lilypond/Documentation/topdocs/NEWS.tely Mon Sep 12 12:20:25 2005
@@ -47,6 +47,15 @@
@itemize @bullet
@item
+Laissez vibrer ties can be created with @code{\laissezVibrer},
+
[EMAIL PROTECTED],raggedright,relative=1]
+ <c e g>\laissezVibrer <d f>\laissezVibrer
[EMAIL PROTECTED] lilypond
+
+This feature was sponsored by Henrik Frisk.
+
[EMAIL PROTECTED]
The order of words in @code{\markup} commands may now be reversed by
setting the @code{text-direction} property. This is useful for
Right-to-Left languages like Hebrew.
Index: lilypond/Documentation/user/instrument-notation.itely
diff -u lilypond/Documentation/user/instrument-notation.itely:1.55
lilypond/Documentation/user/instrument-notation.itely:1.56
--- lilypond/Documentation/user/instrument-notation.itely:1.55 Thu Sep 8
06:54:44 2005
+++ lilypond/Documentation/user/instrument-notation.itely Mon Sep 12
12:20:25 2005
@@ -36,6 +36,7 @@
@menu
* Automatic staff changes::
* Manual staff switches::
+* Laissez vibrer ties::
* Pedals::
* Staff switch lines::
* Cross staff stems::
@@ -153,6 +154,28 @@
@end example
[EMAIL PROTECTED] Laissez vibrer ties
[EMAIL PROTECTED] Laissez vibrer ties
[EMAIL PROTECTED] Laissez vibrer
[EMAIL PROTECTED] Ties, laissez vibrer
+
+L.v. ties (laissez vibrer) indicate that notes must not be damped at the
+end. It is used in harp notation. They can be entered using
[EMAIL PROTECTED],
+
[EMAIL PROTECTED],raggedright,verbatim,relative=1]
+<c f g>\laissezVibrer
[EMAIL PROTECTED] lilypond
+
[EMAIL PROTECTED]
+
+Program reference:
[EMAIL PROTECTED]
[EMAIL PROTECTED]
+
+Example files:
[EMAIL PROTECTED]/regression,laissez-vibrer-tie.ly}
+
@node Pedals
@subsection Pedals
@cindex Pedals
@@ -216,6 +239,10 @@
\override Staff.PianoPedalBracket #'shorten-pair = #'(0 . -1.0)
c\sostenutoDown d e c, f g a\sostenutoUp
@end lilypond
+
[EMAIL PROTECTED]
+
+In this manual: @ref{Laissez vibrer ties}
@node Staff switch lines
@subsection Staff switch lines
Index: lilypond/THANKS
diff -u lilypond/THANKS:1.152 lilypond/THANKS:1.153
--- lilypond/THANKS:1.152 Sun Sep 11 19:29:04 2005
+++ lilypond/THANKS Mon Sep 12 12:20:25 2005
@@ -22,6 +22,7 @@
SPONSORS
Aaron Mehl
+Henrik Frisk
Jay Hamilton
Jamie Bullock
D. Josiah Boothby
Index: lilypond/lily/include/lily-proto.hh
diff -u lilypond/lily/include/lily-proto.hh:1.131
lilypond/lily/include/lily-proto.hh:1.132
--- lilypond/lily/include/lily-proto.hh:1.131 Thu Aug 18 11:40:22 2005
+++ lilypond/lily/include/lily-proto.hh Mon Sep 12 12:20:26 2005
@@ -144,6 +144,7 @@
class Simple_spacer_wrapper;
class Simultaneous_music;
class Simultaneous_music_iterator;
+class Skyline_entry;
class Slur_configuration;
class Slur_score_state;
class Span_score_bar_engraver;
@@ -157,6 +158,8 @@
class Tempo_performer;
class Tex_font_metric;
class Tie;
+class Tie_details;
+class Tie_configuration;
class Tie_performer;
class Time_scaled_music;
class Time_scaled_music_iterator;
Index: lilypond/lily/include/tie.hh
diff -u lilypond/lily/include/tie.hh:1.58 lilypond/lily/include/tie.hh:1.59
--- lilypond/lily/include/tie.hh:1.58 Mon Sep 12 10:29:33 2005
+++ lilypond/lily/include/tie.hh Mon Sep 12 12:20:26 2005
@@ -75,9 +75,8 @@
static int compare (Grob *const &s1,
Grob *const &s2);
- static
- Interval get_default_attachments (Spanner *me, Grob *common, Real gap,
- int *staff_position, bool *in_between);
+ static Interval get_default_attachments (Spanner *me, Grob *common, Real gap,
+ int *staff_position, bool
*in_between);
};
Index: lilypond/lily/include/translator.icc
diff -u lilypond/lily/include/translator.icc:1.8
lilypond/lily/include/translator.icc:1.9
--- lilypond/lily/include/translator.icc:1.8 Sat Aug 13 21:35:22 2005
+++ lilypond/lily/include/translator.icc Mon Sep 12 12:20:26 2005
@@ -10,6 +10,7 @@
#define TRANSLATOR_ICC
#include "array.hh"
+#include "translator.hh"
/**
A macro to automate administration of translators.
Index: lilypond/lily/tie-column.cc
diff -u lilypond/lily/tie-column.cc:1.60 lilypond/lily/tie-column.cc:1.61
--- lilypond/lily/tie-column.cc:1.60 Mon Sep 12 10:29:31 2005
+++ lilypond/lily/tie-column.cc Mon Sep 12 12:20:25 2005
@@ -10,19 +10,15 @@
#include <math.h>
#include <map>
-#include <set>
-#include "note-head.hh"
-#include "stem.hh"
#include "skyline.hh"
-#include "staff-symbol-referencer.hh"
#include "warn.hh"
#include "paper-column.hh"
#include "spanner.hh"
#include "pointer-group-interface.hh"
#include "tie.hh"
#include "directional-element-interface.hh"
-#include "rhythmic-head.hh"
+#include "tie-column-format.hh"
void
Tie_column::add_tie (Grob *me, Grob *tie)
@@ -52,12 +48,7 @@
}
}
-int
-Tie::compare (Grob *const &s1,
- Grob *const &s2)
-{
- return sign (Tie::get_position (s1) - Tie::get_position (s2));
-}
+
MAKE_SCHEME_CALLBACK (Tie_column, after_line_breaking, 1);
SCM
@@ -92,243 +83,6 @@
void
-set_chord_outline (Array<Skyline_entry> *skyline,
- Link_array<Item> bounds,
- Grob *common,
- Direction d)
-{
- Real staff_space = Staff_symbol_referencer::staff_space (bounds[0]);
-
- Array<Box> boxes;
- Interval x_union;
-
- Grob *stem = 0;
- for (int i = 0; i < bounds.size (); i++)
- {
- Grob *head = bounds[i];
- if (!Note_head::has_interface (head))
- continue;
-
- if (!stem)
- stem = unsmob_grob (head->get_object ("stem"));
-
- Real p = Staff_symbol_referencer::get_position (head);
- Interval y ((p-1) * 0.5 * staff_space,
- (p+1) * 0.5 * staff_space);
-
- Interval x = head->extent (common, X_AXIS);
- boxes.push (Box (x, y));
- x_union.unite (x);
- }
-
- (*skyline) = empty_skyline (-d);
-
- if (bounds[0]->break_status_dir ())
- {
- Real x = robust_relative_extent (bounds[0], common, X_AXIS)[-d];
- skyline->elem_ref (0).height_ = x;
- }
-
- for (int i = 0; i < boxes.size (); i++)
- insert_extent_into_skyline (skyline,
- boxes[i], Y_AXIS, -d);
- if (stem
- && !Stem::is_invisible (stem))
- {
- Interval x;
- x.add_point (stem->relative_coordinate (common, X_AXIS));
- x.widen (staff_space / 20); // ugh.
- Interval y;
- y.add_point (Stem::stem_end_position (stem) * staff_space * .5);
-
- Direction stemdir = Stem::get_direction (stem);
- y.add_point (Stem::head_positions (stem)[-stemdir]
- * staff_space * .5);
-
- insert_extent_into_skyline (skyline, Box (x,y), Y_AXIS, -d);
-
-
-
- if (d == LEFT)
- {
- Box flag_box = Stem::get_translated_flag (stem).extent_box ();
- flag_box.translate( Offset (x[RIGHT], X_AXIS));
- insert_extent_into_skyline (skyline, flag_box,
- Y_AXIS, -d);
- }
- }
-
- Direction updowndir = DOWN;
- do
- {
- Interval x ;
- Interval y;
- if (boxes.size())
- {
- Box b = boxes.boundary (updowndir, 0);
- x = b[X_AXIS];
- x[-d] = b[X_AXIS].linear_combination (-d / 2);
- y[-updowndir] = b[Y_AXIS][updowndir];
- y[updowndir] = updowndir * infinity_f;
- }
-
- if (!x.is_empty ())
- insert_extent_into_skyline (skyline,
- Box (x,y),
- Y_AXIS, -d);
- }
- while (flip (&updowndir) != DOWN);
-
- for (int i = 0; i < bounds.size (); i++)
- {
- if (!Note_head::has_interface (bounds[i]))
- continue;
-
-
- Grob *dots = unsmob_grob (bounds[i]->get_object ("dot"));
- if (dots && d == LEFT)
- {
- Interval x = dots->extent (common, X_AXIS);
- Real p = Staff_symbol_referencer::get_position (dots);
-
- Interval y (-1,1);
- y *= (staff_space /4);
- y.translate (p * staff_space * .5);
-
- insert_extent_into_skyline (skyline,
- Box (x,y), Y_AXIS, -d);
- }
- }
-}
-
-void
-set_chord_outlines (Drul_array< Array<Skyline_entry> > *skyline_drul,
- Link_array<Grob> ties,
- Grob *common)
-{
- Direction d = LEFT;
-
- do
- {
- Link_array<Item> bounds;
-
- for (int i = 0; i < ties.size (); i++)
- {
- Item *it = dynamic_cast<Spanner*> (ties[i])->get_bound (d);
-
- bounds.push (it);
- }
-
- set_chord_outline (&skyline_drul->elem_ref (d),
- bounds, common, d);
- }
- while (flip (&d) != LEFT);
-}
-
-void
-shift_small_ties (Array<Tie_configuration> *tie_configs,
- Grob *staff_referencer,
- Tie_details const &details)
-{
- set<int> positions_taken;
- for (int i = 0; i < tie_configs->size (); i++)
- positions_taken.insert (int (rint (tie_configs->elem (i).position_)));
-
- for (int i = 0; i < tie_configs->size (); i++)
- {
- Tie_configuration * conf = &tie_configs->elem_ref (i);
-
- /*
- on staff line and small enough, translate a little further
- */
- Real h = conf->height (details);
- bool next_free = positions_taken.find (int (rint (conf->position_ +
conf->dir_)))
- == positions_taken.end ();
-
- int rounded_pos = int (rint (conf->position_ + conf->delta_y_ /
details.staff_space_));
- bool on_line = Staff_symbol_referencer::on_staffline (staff_referencer,
rounded_pos);
-
- if (next_free)
- if (on_line && h < 0.4 * details.staff_space_)
- {
- positions_taken.insert (int (rint (conf->position_ + conf->dir_)));
- conf->delta_y_ += 0.2 * details.staff_space_ * conf->dir_;
- }
- else if (!on_line && h > 0.6 * details.staff_space_)
- {
- positions_taken.insert (int (rint (conf->position_ + conf->dir_)));
- conf->delta_y_ += 0.5 * details.staff_space_ * conf->dir_;
- }
- }
-}
-
-
-void
-final_shape_adjustment (Tie_configuration &conf,
- Drul_array< Array<Skyline_entry> > const &skylines,
- Grob *staff_referencer,
- Tie_details const &details)
-{
- Real line_dy = 0.0;
- bool on_line = Staff_symbol_referencer::on_staffline (staff_referencer,
- int (rint
(conf.position_)));
- if (on_line)
- line_dy = - sign (conf.height (details) - 0.6 * details.staff_space_)
- * 0.2 * details.staff_space_ * conf.dir_;
-
- Real y = conf.position_ * details.staff_space_ * 0.5
- + line_dy;
-
- conf.attachment_x_ = get_skyline_attachment (skylines, y);
- conf.attachment_x_.intersect (get_skyline_attachment (skylines,
- y + conf.dir_ *
details.staff_space_ * 0.5));
-
- conf.delta_y_ += line_dy;
- conf.attachment_x_.widen (-details.x_gap_);
- if (!on_line
- && Staff_symbol_referencer::staff_radius (staff_referencer) *
details.staff_space_ > y)
- conf.center_tie_vertically (details);
-}
-
-void
-set_tie_config_directions (Array<Tie_configuration> *tie_configs_ptr)
-{
- Array<Tie_configuration> &tie_configs (*tie_configs_ptr);
-
- if (!tie_configs[0].dir_)
- tie_configs[0].dir_ = DOWN;
- if (!tie_configs.top().dir_)
- tie_configs.top().dir_ = UP;
-
- /*
- Seconds
- */
- for (int i = 1; i < tie_configs.size(); i++)
- {
- if (fabs (tie_configs[i-1].position_ - tie_configs[i].position_) <= 1)
- {
- if (!tie_configs[i-1].dir_)
- tie_configs[i-1].dir_ = DOWN;
- if (!tie_configs[i].dir_)
- tie_configs[i].dir_ = UP;
- }
- }
-
- for (int i = 1; i < tie_configs.size() - 1; i++)
- {
- if (tie_configs[i].dir_)
- continue;
-
- Direction position_dir = (Direction) sign (tie_configs[i].position_);
- if (!position_dir)
- position_dir = DOWN;
-
- tie_configs[i].dir_ = position_dir;
- }
-}
-
-
-void
Tie_column::new_directions (Grob *me)
{
extract_grob_set (me, "ties", ro_ties);
@@ -355,23 +109,9 @@
SCM manual_configs = me->get_property ("tie-configuration");
bool manual_override = false;
- int k = 0;
- for (SCM s = manual_configs;
- scm_is_pair (s) && k < tie_configs.size(); s = scm_cdr (s))
- {
- SCM entry = scm_car (s);
- if (!scm_is_pair (entry))
- continue;
-
- manual_override = true;
- Real complete_pos = robust_scm2double (scm_car (entry),
tie_configs[k].position_);
-
- tie_configs[k].position_ = int (rint (complete_pos));
- tie_configs[k].delta_y_ = complete_pos - tie_configs[k].position_;
- tie_configs[k].dir_ = Direction (robust_scm2int (scm_cdr (entry),
tie_configs[k].dir_));
- k ++;
- }
-
+ set_manual_tie_configuration (&tie_configs,
+ &manual_override,
+ manual_configs);
set_tie_config_directions (&tie_configs);
Grob *common = me;
@@ -438,6 +178,7 @@
}
+
ADD_INTERFACE (Tie_column, "tie-column-interface",
"Object that sets directions of multiple ties in a tied chord",
@@ -445,3 +186,4 @@
"positioning-done "
"tie-configuration "
);
+
Index: lilypond/lily/tie.cc
diff -u lilypond/lily/tie.cc:1.159 lilypond/lily/tie.cc:1.160
--- lilypond/lily/tie.cc:1.159 Mon Sep 12 10:29:32 2005
+++ lilypond/lily/tie.cc Mon Sep 12 12:20:25 2005
@@ -24,17 +24,12 @@
#include "note-head.hh"
#include "tie-column.hh"
-/*
- tie: Connect two noteheads.
-
- What if we have
-
- c4 ~ \clef bass ; c4 or
-
- c4 \staffchange c4
-
- do we have non-horizontal ties then?
-*/
+int
+Tie::compare (Grob *const &s1,
+ Grob *const &s2)
+{
+ return sign (Tie::get_position (s1) - Tie::get_position (s2));
+}
void
Tie::set_head (Grob *me, Direction d, Grob *h)
Index: lilypond/ly/declarations-init.ly
diff -u lilypond/ly/declarations-init.ly:1.90
lilypond/ly/declarations-init.ly:1.91
--- lilypond/ly/declarations-init.ly:1.90 Wed Aug 3 13:03:57 2005
+++ lilypond/ly/declarations-init.ly Mon Sep 12 12:20:26 2005
@@ -65,7 +65,8 @@
melisma = #(make-span-event 'ManualMelismaEvent START)
melismaEnd = #(make-span-event 'ManualMelismaEvent STOP)
-
+laissezVibrer = #(make-music 'LaissezVibrerEvent)
+
\include "grace-init.ly"
\include "midi-init.ly"
\include "paper-defaults.ly"
Index: lilypond/ly/engraver-init.ly
diff -u lilypond/ly/engraver-init.ly:1.247 lilypond/ly/engraver-init.ly:1.248
--- lilypond/ly/engraver-init.ly:1.247 Tue Aug 23 03:04:09 2005
+++ lilypond/ly/engraver-init.ly Mon Sep 12 12:20:26 2005
@@ -182,7 +182,7 @@
\consists "Trill_spanner_engraver"
\consists "Grob_pq_engraver"
\consists "Forbid_line_break_engraver"
-
+ \consists "Laissez_vibrer_engraver"
\consists "Note_head_line_engraver"
\consists "Glissando_engraver"
\consists "Ligature_bracket_engraver"
Index: lilypond/mf/GNUmakefile
diff -u lilypond/mf/GNUmakefile:1.170 lilypond/mf/GNUmakefile:1.171
--- lilypond/mf/GNUmakefile:1.170 Mon Aug 29 07:49:45 2005
+++ lilypond/mf/GNUmakefile Mon Sep 12 12:20:26 2005
@@ -43,7 +43,7 @@
LOG_FILES = $(FETA_MF_FILES:%.mf=$(outdir)/%.log)
LISP_FILES = $(FETA_MF_FILES:%.mf=$(outdir)/%.lisp)
TEXTABLES = $(FETA_MF_FILES:%.mf=$(outdir)/%.tex)
-ENC_FILES = $(TEXTABLES:.tex=.enc) $(outdir)/cmr.enc
+ENC_FILES = $(TEXTABLES:.tex=.enc)
TFM_FILES = $(FETA_MF_FILES:%.mf=$(outdir)/%.tfm)\
$(SAUTER_FONTS:%=$(outdir)/%.tfm)
FETA_LIST_FILES = $(FETA_MF_FILES:%.mf=$(outdir)/%list.ly)
Index: lilypond/scm/define-grobs.scm
diff -u lilypond/scm/define-grobs.scm:1.236 lilypond/scm/define-grobs.scm:1.237
--- lilypond/scm/define-grobs.scm:1.236 Fri Sep 2 21:02:19 2005
+++ lilypond/scm/define-grobs.scm Mon Sep 12 12:20:26 2005
@@ -677,6 +677,26 @@
(interfaces . (key-signature-interface
font-interface
break-aligned-interface))))))
+ (LaissezVibrerTie
+ . (
+ (print-function . ,Laissez_vibrer_tie::print)
+ (details . ((ratio . 0.333)
+ (height-limit . 1.0)))
+ (thickness . 1.0)
+ (meta . ((class . Item)
+ (interfaces . (laissez-vibrer-tie-interface))
+ ))
+ ))
+
+ (LaissezVibrerTieColumn
+ . (
+ (X-extent-callback . #f)
+ (Y-extent-callback . #f)
+ (meta . ((class . Item)
+ (interfaces . (laissez-vibrer-tie-column-interface))
+ ))
+ ))
+
(LedgerLineSpanner
. (
(print-function . ,Ledger_line_spanner::print)
Index: lilypond/scm/define-music-types.scm
diff -u lilypond/scm/define-music-types.scm:1.64
lilypond/scm/define-music-types.scm:1.65
--- lilypond/scm/define-music-types.scm:1.64 Sun Sep 11 09:59:49 2005
+++ lilypond/scm/define-music-types.scm Mon Sep 12 12:20:26 2005
@@ -221,7 +221,13 @@
(to-relative-callback . ,(lambda (x p) p))
(types . (general-music key-change-event event))
))
-
+ (LaissezVibrerEvent
+ . ((description . "Don't damp this chord.
+
+Syntax: @var{note}\\laissezVibrer.")
+
+ (types . (general-music event laissez-vibrer-event))
+ ))
(LigatureEvent
. (
(description . "(docme).")
_______________________________________________
Lilypond-cvs mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/lilypond-cvs