@funindex stemLeftBeamCount
@funindex stemRightBeamCount
-Normally, beaming patterns within a beam are determined automatically.
-If necessary, the properties @code{stemLeftBeamCount} and
-@code{stemRightBeamCount} can be used to override the defaults. If
+
+LilyPond can automatically determine beaming patterns within a beam,
+but this automatic behavior can sometimes produce odd results;
+therefore the @code{stemLeftBeamCount} and @code{stemRightBeamCount} properties can
+be used to override the defaults. If
either property is set, its value will be used only once, and then it
-is erased
+is erased.
@lilypond[quote,ragged-right,fragment,relative=1,verbatim]
{
typedef std::map < AFM_Ligature const *, int > Bar;
/**
- (c) 1997--2006 Han-Wen Nienhuys <hanwen@cs.uu.nl>
+ (c) 1997--2007 Han-Wen Nienhuys <hanwen@cs.uu.nl>
*/
/* ||
#
# source file of the GNU LilyPond music typesetter
#
-# (c) 1997--2006 Han-Wen Nienhuys <hanwen@cs.uu.nl>
+# (c) 1997--2007 Han-Wen Nienhuys <hanwen@cs.uu.nl>
import os
import sys
;;;;
;;;; source file of the GNU LilyPond music typesetter
;;;;
-;;;; (c) 1999--2006 Jan Nieuwenhuizen <janneke@gnu.org>
+;;;; (c) 1999--2007 Jan Nieuwenhuizen <janneke@gnu.org>
;;;;
;;;; Changed 2001--2003 Heikki Junes <heikki.junes@hut.fi>
;;;; * Add PS-compilation, PS-viewing and MIDI-play (29th Aug 2001)
--- /dev/null
+\version "2.11.28"
+
+\header {
+ texidoc = "Spacing corrections for kneed beams still work when compression is involved."
+}
+
+\paper { line-width = 14.4 \cm }
+rh = \change Staff = "rh"
+lh = \change Staff = "lh"
+\new PianoStaff <<
+ \new Staff ="rh" {
+ s1*3
+ }
+ \new Staff ="lh" {
+ \clef bass
+ \repeat unfold 12 { \rh a'16 \lh d \rh a' \lh d \noBreak}
+ }
+>>
\ No newline at end of file
if (rank > end)
break;
- else if (rank >= start && it->pure_is_visible (start, end))
+ else if (rank >= start && it->pure_is_visible (start, end)
+ && !to_boolean (it->get_property ("cross-staff")))
{
Interval dims = it->pure_height (common, start, end);
if (!dims.is_empty ())
for (vsize i = 0; i < spanners.size (); i++)
{
Interval_t<int> rank_span = spanners[i]->spanned_rank_interval ();
- if (rank_span[LEFT] <= end && rank_span[RIGHT] >= start)
+ if (rank_span[LEFT] <= end && rank_span[RIGHT] >= start
+ && !to_boolean (spanners[i]->get_property ("cross-staff")))
{
Interval dims = spanners[i]->pure_height (common, start, end);
if (!dims.is_empty ())
static void add_unordered_grob (Grob *, SCM nm, Grob *);
static void set_ordered (Grob *, SCM, bool);
static Grob_array *get_grob_array (Grob*, SCM);
+ static Grob *find_grob (Grob*, SCM, bool (*pred) (Grob*));
};
vector<Grob*> const &internal_extract_grob_array (Grob const *elt, SCM symbol);
source file of the GNU LilyPond music typesetter
- (c) 1999--2006 Han-Wen Nienhuys <hanwen@xs4all.nl>
+ (c) 1999--2007 Han-Wen Nienhuys <hanwen@xs4all.nl>
*/
#ifndef SIDE_POSITION_INTERFACE_HH
{
typedef map <Context*, Grob*> Last_spacing_map;
Last_spacing_map last_spacings_;
+ Grob *last_spacing_;
Grob *spacing_;
Note_spacing_engraver::Note_spacing_engraver ()
{
spacing_ = 0;
+ last_spacing_ = 0;
}
void
ly_symbol2scm ("left-items"),
g);
- Grob *last_spacing = last_spacings_[context ()->get_parent_context ()];
- if (last_spacing)
- Pointer_group_interface::add_grob (last_spacing,
+ if (last_spacing_)
+ Pointer_group_interface::add_grob (last_spacing_,
ly_symbol2scm ("right-items"),
g);
}
if (spacing_)
{
last_spacings_[parent] = spacing_;
+ last_spacing_ = spacing_;
spacing_ = 0;
}
#include "note-spacing.hh"
+#include "bar-line.hh"
#include "directional-element-interface.hh"
#include "grob-array.hh"
#include "paper-column.hh"
adjust things so there are no collisions.
*/
Drul_array<Skyline> skys = Spacing_interface::skylines (me, right_col);
- Real min_dist = max (0.0, skys[LEFT].distance (skys[RIGHT]));
- Real min_desired_space = left_head_end + (min_dist - left_head_end) / 2;
-
- /* if the right object sticks out a lot, include a bit of extra space.
- But only for non-musical-columns; this shouldn't apply to accidentals */
- if (!Paper_column::is_musical (right_col))
- min_desired_space = max (min_desired_space,
- left_head_end + LEFT * skys[RIGHT].max_height ());
+ Real distance = skys[LEFT].distance (skys[RIGHT]);
+ Real min_dist = max (0.0, distance);
+ Real min_desired_space = left_head_end + (min_dist - left_head_end + base_space - increment) / 2;
+ Real ideal = base_space - increment + left_head_end;
+
+ /* If we have a NonMusical column on the right, we measure the ideal distance
+ to the bar-line (if present), not the start of the column. */
+ if (!Paper_column::is_musical (right_col) && !skys[RIGHT].is_empty ())
+ {
+ Grob *bar = Pointer_group_interface::find_grob (right_col,
+ ly_symbol2scm ("elements"),
+ Bar_line::has_interface);
- Real ideal = base_space - increment + min_desired_space;
+ if (bar)
+ ideal -= bar->extent (right_col, X_AXIS)[LEFT];
+ }
+ ideal = max (ideal, min_desired_space);
stem_dir_correction (me, right_col, increment, &ideal, &min_desired_space);
Spring ret (ideal, min_dist);
- ret.set_inverse_compress_strength (max (0.0, ideal - max (min_dist, min_desired_space)));
+ ret.set_inverse_compress_strength (max (0.0, ideal - min_desired_space));
ret.set_inverse_stretch_strength (max (0.1, base_space - increment));
return ret;
}
for (vsize i = 0; i < items.size (); i++)
{
Item *it = dynamic_cast<Item *> (items[i]);
+ if (!Note_column::has_interface (it))
+ continue;
/*
don't correct if accidentals are sticking out of the right side.
return arr;
}
+Grob *
+Pointer_group_interface::find_grob (Grob *me, SCM sym, bool (*pred) (Grob*))
+{
+ Grob_array *arr = get_grob_array (me, sym);
+
+ for (vsize i = 0; i < arr->size (); i++)
+ if (pred (arr->grob (i)))
+ return arr->grob (i);
+
+ return 0;
+}
+
void
Pointer_group_interface::add_grob (Grob *me, SCM sym, Grob *p)
{
#include "paper-column.hh"
#include "separation-item.hh"
#include "skyline.hh"
+#include "system.hh"
/* return the right-pointing skyline of the left-items and the left-pointing
skyline of the right-items (with the skyline of the left-items in
Drul_array<vector<Grob*> > items (ly_scm2link_array (orig->get_object ("left-items")),
ly_scm2link_array (orig->get_object ("right-items")));
+ Grob *system = me->get_system ();
+ Grob *left_col = dynamic_cast<Item*> (me)->get_column ();
+
+ Drul_array<Grob*> columns (left_col, right_col);
+
Direction d = LEFT;
do
{
- skylines[d].set_minimum_height (0.0);
-
for (vsize i = 0; i < items[d].size (); i++)
{
- Grob *g = items[d][i];
- if (Item *it = dynamic_cast<Item*> (g))
- if (Grob *piece = it->find_prebroken_piece (break_dirs[d]))
+ Item *g = dynamic_cast<Item*> (items[d][i]);
+ if (g)
+ if (Item *piece = g->find_prebroken_piece (break_dirs[d]))
g = piece;
- if (Separation_item::has_interface (g))
+ if (g && Separation_item::has_interface (g) && g->get_column () == columns[d])
{
SCM sky_scm = g->get_property ("horizontal-skylines");
Skyline_pair *sky = Skyline_pair::unsmob (sky_scm);
+
+ extract_grob_set (g, "elements", elts);
+ Grob *ycommon = common_refpoint_of_array (elts, g, Y_AXIS);
+ Real shift = ycommon->pure_relative_y_coordinate (system, 0, INT_MAX);
+
+ skylines[d].shift (-shift);
+
if (sky)
skylines[d].merge ((*sky)[-d]);
else
programming_error ("separation item has no skyline");
-
+
if (d == RIGHT && items[LEFT].size ())
skylines[d].merge (Separation_item::conditional_skyline (items[d][i], items[LEFT][0]));
+
+ skylines[d].shift (shift);
}
}
}
Real avg_distance = 0;
Real min_distance = 0;
Real avg_stretch = 0;
+ Real avg_compress = 0;
for (vsize i = 0; i < springs.size (); i++)
{
avg_distance += springs[i].distance ();
avg_stretch += springs[i].inverse_stretch_strength ();
+ avg_compress += 1 / springs[i].inverse_compress_strength ();
min_distance = max (springs[i].min_distance (), min_distance);
}
avg_stretch /= springs.size ();
+ avg_compress /= springs.size ();
avg_distance /= springs.size ();
avg_distance = max (min_distance + 0.3, avg_distance);
Spring ret = Spring (avg_distance, min_distance);
ret.set_inverse_stretch_strength (avg_stretch);
+ ret.set_inverse_compress_strength (1 / avg_compress);
return ret;
}
if (!is_normal_stem (me))
return ly_interval2scm (iv);
- /* if we are part of a cross-staff beam, return empty */
- if (get_beam (me) && Beam::is_cross_staff (get_beam (me)))
- return ly_interval2scm (iv);
-
Real ss = Staff_symbol_referencer::staff_space (me);
- Real len = scm_to_double (calc_length (smob)) * ss / 2;
- Direction dir = get_grob_direction (me);
- Interval hp = head_positions (me);
- if (dir == UP)
- iv = Interval (0, len);
- else
- iv = Interval (-len, 0);
+ if (!to_boolean (me->get_property ("cross-staff")))
+ {
+ Real len = scm_to_double (calc_length (smob)) * ss / 2;
+ Direction dir = get_grob_direction (me);
- if (!hp.is_empty ())
- iv.translate (hp[dir] * ss / 2);
+ Interval hp = head_positions (me);
+ if (dir == UP)
+ iv = Interval (0, len);
+ else
+ iv = Interval (-len, 0);
+
+ if (!hp.is_empty ())
+ iv.translate (hp[dir] * ss / 2);
+ }
+
+ /* at a minimum, make the pure-height cover the staff symbol */
+ Real rad = Staff_symbol_referencer::staff_radius (me);
+ iv.add_point (-rad * ss);
+ iv.add_point (rad * ss);
return ly_interval2scm (iv);
}
%
% source file of the GNU LilyPond music typesetter
%
-% (c) 2005--2006 Han-Wen Nienhuys <hanwen@xs4all.nl>
+% (c) 2005--2007 Han-Wen Nienhuys <hanwen@xs4all.nl>
fet_begingroup ("arrowheads");
% source file of the Feta (not an acronym for Font-En-Tja)
% pretty-but-neat music font
%
-% (c) 1997--2006 Han-Wen Nienhuys <hanwen@xs4all.nl>
+% (c) 1997--2007 Han-Wen Nienhuys <hanwen@xs4all.nl>
% Jan Nieuwenhuizen <janneke@gnu.org>
%
% these macros help create ascii logging output
% source file of the Feta (not an acronym for Font-En-Tja)
% pretty-but-neat music font
%
-% (c) 1997--2006 Han-Wen Nienhuys <hanwen@xs4all.nl>
+% (c) 1997--2007 Han-Wen Nienhuys <hanwen@xs4all.nl>
% Jan Nieuwenhuizen <janneke@gnu.org>
%
% source file of LilyPond's pretty-but-neat music font
%
-% (c) 1997--2006 Jan Nieuwenhuizen <janneke@gnu.org>
+% (c) 1997--2007 Jan Nieuwenhuizen <janneke@gnu.org>
% & Han-Wen Nienhuys <hanwen@xs4all.nl>
% & Juergen Reuter <reuter@ipd.uka.de>
%
%
% source file of the Feta (Font-En-Tja) music font
%
-% (c) 1997--2006 Han-Wen Nienhuys <hanwen@xs4all.nl>
+% (c) 1997--2007 Han-Wen Nienhuys <hanwen@xs4all.nl>
%
font_count := 0;
%
% source file of the Feta (Font-En-Tja) music font
%
-% (c) 1997--2006 Han-Wen Nienhuys <hanwen@xs4all.nl>
+% (c) 1997--2007 Han-Wen Nienhuys <hanwen@xs4all.nl>
%
font_count := 1;
%
% source file of the Feta (Font-En-Tja) music font
%
-% (c) 1997--2006 Han-Wen Nienhuys <hanwen@xs4all.nl>
+% (c) 1997--2007 Han-Wen Nienhuys <hanwen@xs4all.nl>
%
font_count := 2;
%
% source file of the Feta (Font-En-Tja) music font
%
-% (c) 1997--2006 Han-Wen Nienhuys <hanwen@xs4all.nl>
+% (c) 1997--2007 Han-Wen Nienhuys <hanwen@xs4all.nl>
%
font_count := 3;
%
% source file of the Feta (Font-En-Tja) music font
%
-% (c) 1997--2006 Han-Wen Nienhuys <hanwen@xs4all.nl>
+% (c) 1997--2007 Han-Wen Nienhuys <hanwen@xs4all.nl>
%
font_count := 4;
%
% source file of the Feta (Font-En-Tja) music font
%
-% (c) 1997--2006 Han-Wen Nienhuys <hanwen@xs4all.nl>
+% (c) 1997--2007 Han-Wen Nienhuys <hanwen@xs4all.nl>
%
font_count := 5;
%
% source file of the Feta (Font-En-Tja) music font
%
-% (c) 1997--2006 Han-Wen Nienhuys <hanwen@xs4all.nl>
+% (c) 1997--2007 Han-Wen Nienhuys <hanwen@xs4all.nl>
%
font_count := 6;
%
% source file of the Feta (Font-En-Tja) music font
%
-% (c) 1997--2006 Han-Wen Nienhuys <hanwen@xs4all.nl>
+% (c) 1997--2007 Han-Wen Nienhuys <hanwen@xs4all.nl>
%
font_count := 7;
%
% source file of the Feta (Font-En-Tja) music font
%
-% (c) 1997--2006 Han-Wen Nienhuys <hanwen@xs4all.nl>
+% (c) 1997--2007 Han-Wen Nienhuys <hanwen@xs4all.nl>
%
font_count := 8;
%
% source file of the Feta (not the Font-En-Tja) music font
%
-% (c) 1997--2006 Jan Nieuwenhuizen <janneke@gnu.org>
+% (c) 1997--2007 Jan Nieuwenhuizen <janneke@gnu.org>
ex# := (dynamic_design_size / 2.4) * pt#;
%
% source file of the Feta (not the Font-En-Tja) music font
%
-% (c) 1997--2006 Jan Nieuwenhuizen <janneke@gnu.org>
+% (c) 1997--2007 Jan Nieuwenhuizen <janneke@gnu.org>
fet_begingroup ("rests");
% source file of the Feta (defintively not an abbreviation for Font-En-Tja)
% music font
%
-% (c) 1997--2006 Han-Wen Nienhuys <hanwen@xs4all.nl>
+% (c) 1997--2007 Han-Wen Nienhuys <hanwen@xs4all.nl>
%
%
% source file of the Feta (not the Font-En-Tja) music font
%
-% (c) 2005--2006 Han-Wen Nienhuys <hanwen@xs4all.nl>
+% (c) 2005--2007 Han-Wen Nienhuys <hanwen@xs4all.nl>
fet_begingroup ("brackettips");
%
% source file of the Feta (not the Font-En-Tja) music font
%
-% (c) 1997--2006 Han-Wen Nienhuys <hanwen@xs4all.nl>,
+% (c) 1997--2007 Han-Wen Nienhuys <hanwen@xs4all.nl>,
% Jan Nieuwenhuizen <janneke@gnu.org>,
% Juergen Reuter <reuter@ipd.uka.de>
%
% source file of the Feta (not the Font-En-Tja) music font
%
-% (c) 1997--2006 Jan Nieuwenhuizen <janneke@gnu.org>
+% (c) 1997--2007 Jan Nieuwenhuizen <janneke@gnu.org>
height# := number_design_size;
%
% source file of the Feta (not the Font-En-Tja) music font
%
-% (c) 2000--2006 Jan Nieuwenhuizen <janneke@gnu.org>
+% (c) 2000--2007 Jan Nieuwenhuizen <janneke@gnu.org>
%
% Voor Cup
% source file of the Feta (defintively not an abbreviation for Font-En-Tja)
% music font
%
-% (c) 1997--2006 Han-Wen Nienhuys <hanwen@xs4all.nl>
+% (c) 1997--2007 Han-Wen Nienhuys <hanwen@xs4all.nl>
% Jan Nieuwenhuizen <janneke@gnu.org>
%
% source file of the Feta (definitely not an abbreviation for Font-En-Tja)
% music font
%
-% (c) 1998--2006 Jan Nieuwenhuizen <janneke@gnu.org>
+% (c) 1998--2007 Jan Nieuwenhuizen <janneke@gnu.org>
%
% this file is included by feta-scripts.mf
%
% source file of the Feta (not an abbreviation of Font-En-Tja) music font
%
-% (c) 1998--2006 Mats Bengtsson <matsb@s3.kth.se>,
+% (c) 1998--2007 Mats Bengtsson <matsb@s3.kth.se>,
% Christian Mondrup <scancm@biobase.dk>
fet_begingroup ("timesig");
%
% feta-toevallig.mf -- implement Accidentals
%
-% (c) 1997--2006 Han-Wen Nienhuys <hanwen@xs4all.nl>
+% (c) 1997--2007 Han-Wen Nienhuys <hanwen@xs4all.nl>
%
%
% source file of LilyPond's pretty-but-neat music font
%
-% (c) 2001--2006 Juergen Reuter <reuter@ipd.uka.de>
+% (c) 2001--2007 Juergen Reuter <reuter@ipd.uka.de>
%
fet_begingroup ("accidentals");
%
% source file of LilyPond's pretty-but-neat music font
%
-% (c) 2001--2006 Juergen Reuter <reuter@ipd.uka.de>
+% (c) 2001--2007 Juergen Reuter <reuter@ipd.uka.de>
%
fet_begingroup ("clefs");
%
% source file of LilyPond's pretty-but-neat music font
%
-% (c) 2000--2006 Juergen Reuter <reuter@ipd.uka.de>
+% (c) 2000--2007 Juergen Reuter <reuter@ipd.uka.de>
%
save black_notehead_width;
%
% source file of LilyPond's pretty-but-neat music font
%
-% (c) 2001--2006 Juergen Reuter <reuter@ipd.uka.de>
+% (c) 2001--2007 Juergen Reuter <reuter@ipd.uka.de>
%
fet_begingroup ("flags");
%
% source file of LilyPond's pretty-but-neat music font
%
-% (c) 2002--2006 Juergen Reuter <reuter@ipd.uka.de>
+% (c) 2002--2007 Juergen Reuter <reuter@ipd.uka.de>
%
%
% source file of LilyPond's pretty-but-neat music font
%
-% (c) 2001--2006 Juergen Reuter <reuter@ipd.uka.de>
+% (c) 2001--2007 Juergen Reuter <reuter@ipd.uka.de>
%
% Neo-mensural heads originally by
% Christian Mondrup and Mats Bengtsson
%
% source file of LilyPond's pretty-but-neat music font
%
-% (c) 2001--2006 Juergen Reuter <reuter@ipd.uka.de>
+% (c) 2001--2007 Juergen Reuter <reuter@ipd.uka.de>
%
%
% source file of LilyPond's pretty-but-neat music font
%
-% (c) 2001--2006 Juergen Reuter <reuter@ipd.uka.de>
+% (c) 2001--2007 Juergen Reuter <reuter@ipd.uka.de>
%
% Neo-mensural rests originally by
% Christian Mondrup and Mats Bengtsson.
%
% source file of LilyPond's pretty-but-neat music font
%
-% (c) 2002--2006 Juergen Reuter <reuter@ipd.uka.de>
+% (c) 2002--2007 Juergen Reuter <reuter@ipd.uka.de>
%
fet_begingroup ("scripts");
%
% source file of LilyPond's pretty-but-neat music font
%
-% (c) 1998--2006 Mats Bengtsson <matsb@s3.kth.se>,
+% (c) 1998--2007 Mats Bengtsson <matsb@s3.kth.se>,
% Christian Mondrup <scancm@biobase.dk>
-% (c) 2002--2006 Juergen Reuter <reuter@ipd.uka.de>
+% (c) 2002--2007 Juergen Reuter <reuter@ipd.uka.de>
%
fet_begingroup ("timesig");
#
# source file of the GNU LilyPond music typesetter
#
-# (c) 1998--2006 Han-Wen Nienhuys <hanwen@xs4all.nl>
+# (c) 1998--2007 Han-Wen Nienhuys <hanwen@xs4all.nl>
# Jan Nieuwenhuizen <janneke@gnu.org>
import __main__
source file of the GNU LilyPond music typesetter
- (c) 2001--2006 Han-Wen Nienhuys <hanwen@xs4all.nl>
+ (c) 2001--2007 Han-Wen Nienhuys <hanwen@xs4all.nl>
Jan Nieuwenhuizen <janneke@gnu.org>
*/
;;;;
;;;; source file of the GNU LilyPond music typesetter
;;;;
-;;;; (c) 2000--2006 Jan Nieuwenhuizen <janneke@gnu.org>
+;;;; (c) 2000--2007 Jan Nieuwenhuizen <janneke@gnu.org>
;;; specify generic beam begin and end times
;;;;
;;;; source file of the GNU LilyPond music typesetter
;;;;
-;;;; (c) 2005--2006 Jan Nieuwenhuizen <janneke@gnu.org>
+;;;; (c) 2005--2007 Jan Nieuwenhuizen <janneke@gnu.org>
;;;; Han-Wen Nienhuys <hanwen@xs4all.nl>
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;
;;;; source file of the GNU LilyPond music typesetter
;;;;
-;;;; (c) 1998--2006 Jan Nieuwenhuizen <janneke@gnu.org>
+;;;; (c) 1998--2007 Jan Nieuwenhuizen <janneke@gnu.org>
;;;; Han-Wen Nienhuys <hanwen@xs4all.nl>
;;; Note: this file can't be used without LilyPond executable
;;;;
;;;; source file of the GNU LilyPond music typesetter
;;;;
-;;;; (c) 2004--2006 Han-Wen Nienhuys <hanwen@xs4all.nl>
+;;;; (c) 2004--2007 Han-Wen Nienhuys <hanwen@xs4all.nl>
(define-public (construct-chord-elements root duration modifications)
" Build a chord on root using modifiers in MODIFICATIONS. NoteEvents
;;;;
;;;; source file of the GNU LilyPond music typesetter
;;;;
-;;;; (c) 2003--2006 Jan Nieuwenhuizen <janneke@gnu.org>
+;;;; (c) 2003--2007 Jan Nieuwenhuizen <janneke@gnu.org>
;;;; NOTE: this is experimental code
;;;;
;;;; source file of the GNU LilyPond music typesetter
;;;;
-;;;; (c) 2000--2006 Han-Wen Nienhuys <hanwen@xs4all.nl>
+;;;; (c) 2000--2007 Han-Wen Nienhuys <hanwen@xs4all.nl>
;;;;
;;;; source file of the GNU LilyPond music typesetter
;;;;
-;;;; (c) 2000--2006 Jan Nieuwenhuizen <janneke@gnu.org>
+;;;; (c) 2000--2007 Jan Nieuwenhuizen <janneke@gnu.org>
;;;; Han-Wen Nienhuys <hanwen@xs4all.nl>
(define (natural-chord-alteration p)
;;;;
;;;; source file of the GNU LilyPond music typesetter
;;;;
-;;;; (c) 1998--2006 Han-Wen Nienhuys <hanwen@xs4all.nl>
+;;;; (c) 1998--2007 Han-Wen Nienhuys <hanwen@xs4all.nl>
;;;; Jan Nieuwenhuizen <janneke@gnu.org>
;;;;
;;;; source file of the GNU LilyPond music typesetter
;;;;
-;;;; (c) 1998--2006 Han-Wen Nienhuys <hanwen@xs4all.nl>
+;;;; (c) 1998--2007 Han-Wen Nienhuys <hanwen@xs4all.nl>
;;;; Jan Nieuwenhuizen <janneke@gnu.org>
;;;;
;;;; source file of the GNU LilyPond music typesetter
;;;;
-;;;; (c) 1998--2006 Han-Wen Nienhuys <hanwen@xs4all.nl>
+;;;; (c) 1998--2007 Han-Wen Nienhuys <hanwen@xs4all.nl>
;;;; Jan Nieuwenhuizen <janneke@gnu.org>
(define (define-grob-property symbol type? description)
`(
;;;;;;;;;;;;;;;;
;; grobs & grob arrays. (alphabetical)
- (X-common ,ly:grob? "Common refpoint for axis group.")
+ (X-common ,ly:grob? "Common reference point for axis group.")
+
(Y-common ,ly:grob? "See @code{X-common}.")
- (adjacent-pure-heights ,vector? "Used by a VerticalAxisGroup to cache the Y-extents of different column ranges.")
- (axis-group-parent-X ,ly:grob? "Containing X axis group")
- (axis-group-parent-Y ,ly:grob? "Containing Y axis group")
- (accidental-grobs ,list? "Alist with (NOTENAME . GROBLIST) entries")
- (adjacent-hairpins ,ly:grob-array? "List of directly neighboring hairpins")
- (all-elements ,ly:grob-array? "list of all grobs in this line. Its
+
+ (accidental-grob ,ly:grob? "The accidental for this note.")
+ (accidental-grobs ,list? "An alist with @code{(@var{notename} .
+@var{groblist})} entries.")
+ (adjacent-pure-heights ,vector? "Used by a @code{VerticalAxisGroup} to
+cache the @code{Y-extent}s of different column ranges.")
+ (adjacent-hairpins ,ly:grob-array? "A list of directly neighboring
+hairpins.")
+ (all-elements ,ly:grob-array? "A list of all grobs in this line. Its
function is to protect objects from being garbage collected.")
- (arpeggio ,ly:grob? "pointer to arpeggio object.")
- (beam ,ly:grob? "pointer to the beam, if applicable.")
- (bracket ,ly:grob? "the bracket for a number.")
- (cross-staff ,boolean? "for a beam or a stem, true if we depend on inter-staff spacing")
- (direction-source ,ly:grob? "in case side-relative-direction is
-set, which grob to get the direction from .")
- (dot ,ly:grob? "reference to Dots object.")
- (dots ,ly:grob-array? "multiple Dots objects.")
- (figures ,ly:grob-array? "Figured bass objects for continuation line.")
- (important-column-ranks ,vector? "Cache of columns that contain items-worth-living.")
- (items-worth-living ,ly:grob-array? "A list of interesting items. If
-empty in a particular staff, then that staff is erased.")
+ (arpeggio ,ly:grob? "A pointer to an @code{Arpeggio} object.")
+ (axis-group-parent-X ,ly:grob? "Containing X@tie{}axis group.")
+ (axis-group-parent-Y ,ly:grob? "Containing Y@tie{}axis group.")
+
+ (bars ,ly:grob-array? "A list of bar line pointers.")
+ (beam ,ly:grob? "A pointer to the beam, if applicable.")
+ (bounded-by-me ,ly:grob-array? "A list of spanners that have this
+column as start/begin point. Only columns that have grobs or act as
+bounds are spaced.")
+ (bracket ,ly:grob? "The bracket for a number.")
- (glyph-name ,string? "a name of character within font.")
- (left-neighbors ,ly:grob-array? " List of
-spacing-wish grobs that are close to the current column.
+ (columns ,ly:grob-array? "A list of grobs, typically containing
+@code{PaperColumn} or @code{NoteColumn} objects.")
+ (conditional-elements ,ly:grob-array? "Internal use only.")
+ (cross-staff ,boolean? "For a beam or a stem, this is true if we
+depend on inter-staff spacing.")
-The closest spacing-wishes determine the actual distances between the
-columns.
-")
- (left-items ,ly:grob-array? "")
- (pedal-text ,ly:grob? "Pointer to the text of a mixed-style piano pedal.")
-
- (pure-Y-common ,ly:grob? "Caches the common_refpoint_of_array of the elements grob-set")
- (pure-relevant-items ,ly:grob-array? "A subset of elements that are relevant for finding the pure-Y-extent.")
- (pure-relevant-spanners ,ly:grob-array? "A subset of elements that are relevant for finding the pure-Y-extent.")
- (stem ,ly:grob? "pointer to Stem object.")
- (tremolo-flag ,ly:grob? "The tremolo object on a stem.")
- (tie ,ly:grob? "")
- (staff-symbol ,ly:grob? "the staff symbol grob that we're in.")
- (rest ,ly:grob? "the staff symbol grob that we're in.")
- (rests ,ly:grob-array? "A list of rest objects.")
- (rest-collision ,ly:grob? "rest collision that a rest is in.")
- (accidental-grob ,ly:grob? "Accidental for this note.")
- (bars ,ly:grob-array? "list of bar line pointers.")
- (bounded-by-me ,ly:grob-array? "list of spanners that have this
-column as start/begin point. Only columns that have grobs or act as
-bounds are spaced.")
-
- (columns ,ly:grob-array? "list of grobs, typically containing
-paper-columns or note-column objects.")
- (conditional-elements ,ly:grob-array? "Internal use only")
+ (direction-source ,ly:grob? "In case @code{side-relative-direction} is
+set, which grob to get the direction from.")
+ (dot ,ly:grob? "A reference to a @code{Dots} object.")
+ (dots ,ly:grob-array? "Multiple @code{Dots} objects.")
+
+ (elements ,ly:grob-array? "A list of grobs; the type is depending on
+the grob where this is set in.")
(encompass-objects ,ly:grob-array? "Objects that a slur should avoid
in addition to notes and stems.")
- (elements ,ly:grob-array? "list of grobs, type depending on the Grob
-where this is set in.")
- (grace-spacing ,ly:grob? "a run of grace notes.")
- (heads ,ly:grob-array? "List of note heads.")
-
- (note-columns ,pair? "list of NoteColumn grobs.")
-
- (normal-stems ,ly:grob-array? "Array of visible stems.")
- (note-heads ,ly:grob-array? "List of note head grobs")
- (note-head ,ly:grob? "A single note head")
- (pure-Y-offset-in-progress ,boolean? "A debugging aid for catching cyclic dependencies.")
- (right-items ,ly:grob-array? "")
- (right-neighbors ,ly:grob-array? "see left-neighbors")
+
+ (figures ,ly:grob-array? "Figured bass objects for continuation line.")
+
+ (glyph-name ,string? "The glyph name within the font.")
+ (grace-spacing ,ly:grob? "A run of grace notes.")
+
+ (heads ,ly:grob-array? "A list of note heads.")
+
+ (important-column-ranks ,vector? "A cache of columns that contain
+@code{items-worth-living} data.")
+ (items-worth-living ,ly:grob-array? "A list of interesting items. If
+empty in a particular staff, then that staff is erased.")
+
+ (left-items ,ly:grob-array? "DOCME")
+ (left-neighbors ,ly:grob-array? "A list of @code{spacing-wishes} grobs
+that are close to the current column.
+
+The closest @code{spacing-wishes} determine the actual distances between the
+columns.")
+
+ (normal-stems ,ly:grob-array? "An array of visible stems.")
+ (note-columns ,pair? "A list of @code{NoteColumn} grobs.")
+ (note-head ,ly:grob? "A single note head.")
+ (note-heads ,ly:grob-array? "A list of note head grobs.")
+
+ (pedal-text ,ly:grob? "A pointer to the text of a mixed-style piano
+pedal.")
+ (pure-Y-common ,ly:grob? "A cache of the
+@code{common_refpoint_of_array} of the @code{elements} grob set.")
+ (pure-Y-offset-in-progress ,boolean? "A debugging aid for catching
+cyclic dependencies.")
+ (pure-relevant-items ,ly:grob-array? "A subset of elements that are
+relevant for finding the @code{pure-Y-extent}.")
+ (pure-relevant-spanners ,ly:grob-array? "A subset of elements that are
+relevant for finding the @code{pure-Y-extent}.")
+
+ (rest ,ly:grob? "A pointer to a @code{Rest} object.")
+ (rest-collision ,ly:grob? "A rest collision that a rest is in.")
+ (rests ,ly:grob-array? "A list of rest objects.")
+ (right-items ,ly:grob-array? "DOCME")
+ (right-neighbors ,ly:grob-array? "See @code{left-neighbors}.")
+
(separation-item ,ly:grob? "A separation item.")
- (slur ,ly:grob? "A pointer to a slur object")
- (spacing ,ly:grob? "the spacing spanner governing this section.")
- (spaceable-staves ,ly:grob-array? "Objects to be spaced during page layout.")
- (side-support-elements ,ly:grob-array? "the support, a list of grobs.")
- (spacing-wishes ,ly:grob-array? "List of note spacing or staff spacing objects.")
- (stems ,ly:grob-array? "list of stem objects, corresponding to the notes that the arpeggio has to be before.")
- (tuplets ,ly:grob-array? "list of smaller tuplet brackets")
- (tuplet-number ,ly:grob? "the number for a bracket.")
+ (side-support-elements ,ly:grob-array? "The side support, a list of
+grobs.")
+ (slur ,ly:grob? "A pointer to a @code{Slur} object.")
+ (spaceable-staves ,ly:grob-array? "Objects to be spaced during page
+layout.")
+ (spacing ,ly:grob? "The spacing spanner governing this section.")
+ (spacing-wishes ,ly:grob-array? "List of note spacing or staff spacing
+objects.")
+ (staff-symbol ,ly:grob? "The staff symbol grob that we are in.")
+ (stem ,ly:grob? "A pointer to a @code{Stem} object.")
+ (stems ,ly:grob-array? "A list of stem objects, corresponding to the
+notes that the arpeggio has to be before.")
+
+ (tie ,ly:grob? "A pointer to a @code{Tie} object.")
+ (tremolo-flag ,ly:grob? "The tremolo object on a stem.")
+ (tuplet-number ,ly:grob? "The number for a bracket.")
+ (tuplets ,ly:grob-array? "A list of smaller tuplet brackets.")
-
-
;;;;;;;;;;;;;;;;
;; other
- (begin-of-line-visible ,boolean? "Used for marking ChordNames that should only show changes.")
- (cause ,scheme? "Any kind of causation objects (i.e. music, or perhaps translator) that was the cause for this grob. ")
- (circled-tip ,boolean? "Put a circle at start/end of hairpins (al/del niente)")
- (delta-position ,number? "vertical position difference")
- (details ,list? "alist of parameters for detailed grob behavior.
-
-more information on the allowed parameters can be found by inspecting
-lily/slur-scoring.cc, lily/beam-quanting.cc, and
-lily/tie-formatting-problem.cc. Setting @code{debug-tie-scoring},
+ (begin-of-line-visible ,boolean? "Used for marking @code{ChordNames}
+that should only show changes.")
+
+ (cause ,scheme? "Any kind of causation objects (i.e. music, or perhaps
+translator) that was the cause for this grob.")
+ (circled-tip ,boolean? "Put a circle at start/end of hairpins (al/del
+niente).")
+
+ (delta-position ,number? "The vertical position difference.")
+ (details ,list? "Alist of parameters for detailed grob behavior.
+
+More information on the allowed parameters can be found by inspecting
+@file{lily/slur-scoring.cc}, @file{lily/beam-quanting.cc}, and
+@file{lily/tie-formatting-problem.cc}. Setting @code{debug-tie-scoring},
@code{debug-beam-scoring} or @code{debug-slur-scoring} also provides
-useful clues.
+useful clues.")
-")
+ (font ,ly:font-metric? "A cached font metric object.")
- (font ,ly:font-metric? "Cached font metric object")
- (head-width ,ly:dimension? "width of this ligature head")
+ (head-width ,ly:dimension? "The width of this ligature head.")
- (ideal-distances ,list? "(@var{obj} . (@var{dist} . @var{strength})) pairs.")
- (interfaces ,list? "list of symbols indicating the interfaces supported by this object. Is initialized from the @code{meta} field.")
- (least-squares-dy ,number?
- "ideal beam slope, without damping.")
+ (ideal-distances ,list? "@code{(@var{obj} . (@var{dist} .
+@var{strength}))} pairs.")
+ (interfaces ,list? "A list of symbols indicating the interfaces
+supported by this object. It is initialized from the @code{meta} field.")
+
+ (least-squares-dy ,number? "The ideal beam slope, without damping.")
- (meta ,list? "Contains meta information. It is an alist with the
+ (meta ,list? "Provide meta information. It is an alist with the
entries @code{name} and @code{interfaces}.")
- (minimum-distances ,list? "list of rods, that have the format (@var{obj} . @var{dist}).")
+ (minimum-distances ,list? "A list of rods that have the format
+@code{(@var{obj} . @var{dist})}.")
- (positioning-done ,boolean?
- "Used to signal that a positioning element
-did its job. This ensures that a positioning is only done once.")
- (pure-Y-extent ,number-pair? "The estimated height of a system")
-
- (quantized-positions ,number-pair? "Beam positions after quanting.")
- (quantize-position ,boolean? "If set, a vertical alignment is aligned to be within staff spaces.")
- (quant-score ,string? "Beam quanting score -- can be stored for
-debugging")
+ (positioning-done ,boolean? "Used to signal that a positioning element
+did its job. This ensures that a positioning is only done once.")
+ (pure-Y-extent ,number-pair? "The estimated height of a system.")
+
+ (quant-score ,string? "The Beam quanting score -- can be stored for
+debugging.")
+ (quantize-position ,boolean? "If set, a vertical alignment is aligned
+to be within staff spaces.")
+ (quantized-positions ,number-pair? "The beam positions after
+quanting.")
- (script-stencil ,pair? "Pair (@code{type} . @code{arg}), which
-acts as an index for looking up a Stencil object.")
-
- (stem-info ,pair? "caching of stem parameters")
- (shorten ,ly:dimension? "The amount of space that a
-stem. Internally used to distribute beam shortening over stems. ")
- (skyline-distance ,number? "The distance between this staff and the next one, as determined by a skyline algorithm.")
- (skyline-horizontal-padding ,number? "For determining the vertical distance between 2 staves, it is possible to have a configuration which would result in a tight interleaving of grobs from the top staff and the bottom staff. The larger this parameter is, the farther apart the staves are placed in such a configuration.")
-
+ (script-stencil ,pair? "A pair @code{(@var{type} . @var{arg})} which
+acts as an index for looking up a @code{Stencil} object.")
+ (shorten ,ly:dimension? "The amount of space that a stem is shortened.
+Internally used to distribute beam shortening over stems.")
+ (skyline-distance ,number? "The distance between this staff and the
+next one, as determined by a skyline algorithm.")
+ (skyline-horizontal-padding ,number? "For determining the vertical
+distance between two staves, it is possible to have a configuration which
+would result in a tight interleaving of grobs from the top staff and the
+bottom staff. The larger this parameter is, the farther apart the staves
+are placed in such a configuration.")
+ (stem-info ,pair? "A cache of stem parameters.")
+
(use-breve-rest ,boolean? "Use breve rests for measures longer
than a whole rest.")
-
-
+ ;;;;;;;;;;;;;;;;
;; ancient notation
- (join-right-amount ,number? "")
- (primitive ,integer? "Pointer to a ligature primitive, i.e. an item similar to a note head that is part of a ligature. ")
-
;;;;;;; TODO:
- ;; there are too many properties for ancient notation
+ ;; There are too many properties for ancient notation;
;; probably neume-types (a list of symbols) would also work.
- ;; However, such this list would consist of a couple of dozens of
+ ;; However, such a list would consist of a couple of dozens of
;; entries, since head prefixes may be combined in many ways. If
- ;; the macros in gregorian-init.ly would directly set prefix-set,
+ ;; the macros in `gregorian-init.ly' would directly set prefix-set,
;; all the head prefixes could be junked; however, such macros
;; would be quite numerous, I guess. --jr
- (auctum ,boolean? "is this neume liquescentically augmented?")
- (ascendens ,boolean? "is this neume of an ascending type?")
- (add-cauda ,boolean? "does this flexa require an additional cauda on the left side?")
- (add-join ,boolean? "is this ligature head joined with the next one by a vertical line?")
- (cavum ,boolean? "is this neume outlined?")
- (descendens ,boolean? "is this neume of a descendent type?")
- (deminutum ,boolean? "is this neume deminished?")
- (flexa-height ,ly:dimension? "height of a flexa shape in a ligature grob in staff_space.")
- (flexa-width ,ly:dimension? "width of a flexa shape in a ligature grob in staff_space.")
- (join-heads ,boolean? "Whether to join the note heads of an ambitus grob with a vertical line.")
- (linea ,boolean? "attach vertical lines to this neume?")
- (add-stem ,boolean? "is this ligature head a virga and therefore needs an additional stem on the right side?")
- (context-info ,integer? "Within a ligature, the final glyph or shape of a head may be affected by the left and/or right neighbour head. context-info holds for each head such information about the left and right neighbour, encoded as a bit mask.")
- (inclinatum ,boolean? "is this neume an inclinatum?")
- (oriscus ,boolean? "is this neume an oriscus?")
- (quilisma ,boolean? "is this neume a quilisma?")
- (pes-or-flexa ,boolean? "shall this neume be joined with the previous head?")
- (prefix-set ,number? "a bit mask that holds all Gregorian head prefixes, such as @code{\\virga} or @code{\\quilisma}")
+ (add-cauda ,boolean? "Does this flexa require an additional cauda on
+the left side?")
+ (add-join ,boolean? "Is this ligature head-joined with the next one
+by a vertical line?")
+ (add-stem ,boolean? "Is this ligature head a virga and therefore needs
+an additional stem on the right side?")
+ (ascendens ,boolean? "Is this neume of ascending type?")
+ (auctum ,boolean? "Is this neume liquescentically augmented?")
+
+ (cavum ,boolean? "Is this neume outlined?")
+ (context-info ,integer? "Within a ligature, the final glyph or shape of
+a head may be affected by the left and/or right neighbour head.
+@code{context-info} holds for each head such information about the left and
+right neighbour, encoded as a bit mask.")
+
+ (descendens ,boolean? "Is this neume of descendent type?")
+ (deminutum ,boolean? "Is this neume deminished?")
+
+ (flexa-height ,ly:dimension? "The height of a flexa shape in a ligature
+grob (in @code{staff-space} units).")
+ (flexa-width ,ly:dimension? "The width of a flexa shape in a
+ligature grob in (in @code{staff-space} units).")
+
+ (inclinatum ,boolean? "Is this neume an inclinatum?")
+
+ (join-heads ,boolean? "Whether to join the note heads of an ambitus
+grob with a vertical line.")
+ (join-right-amount ,number? "DOCME")
+
+ (linea ,boolean? "Attach vertical lines to this neume?")
+
+ (oriscus ,boolean? "Is this neume an oriscus?")
+
+ (pes-or-flexa ,boolean? "Shall this neume be joined with the previous
+head?")
+ (prefix-set ,number? "A bit mask that holds all Gregorian head
+prefixes, such as @code{\\virga} or @code{\\quilisma}.")
+ (primitive ,integer? "A pointer to a ligature primitive, i.e., an item
+similar to a note head that is part of a ligature.")
+
+ (quilisma ,boolean? "Is this neume a quilisma?")
+
(stropha ,boolean? "Is this neume a stropha?")
+
(virga ,boolean? "Is this neume a virga?")
- (x-offset ,ly:dimension? "Extra horizontal offset for ligature heads.")
- ;; end ancient notation
+ (x-offset ,ly:dimension? "Extra horizontal offset for ligature heads.")
+ ;;;;;;;;;;;;;;;;
;; fret-diagrams extra properties
- (xo-font-magnification ,number? "Magnification used for mute and
- open string indicators in fret diagrams")
- (mute-string ,string? "String to be used to indicate muted string in
- fret diagrams")
- (open-string ,string? "String to be used to indicate open string in
- fret diagrams")
- (orientation ,symbol? "Orientation of fret-diagram. Options include @code{normal} and @code{landscape}")
-
- )))
+ (mute-string ,string? "String to be used to indicate a muted string in
+fret diagrams")
+ (open-string ,string? "A string to be used to indicate an open string
+in fret diagrams")
+ (orientation ,symbol? "The orientation of a fret-diagram. Options
+include @code{normal} and @code{landscape}.")
+ (xo-font-magnification ,number? "Magnification used for mute and open
+string indicators in fret diagrams.")
+
+ )))
(define-public all-backend-properties
(append
;;;;
;;;; source file of the GNU LilyPond music typesetter
;;;;
-;;;; (c) 1998--2006 Han-Wen Nienhuys <hanwen@xs4all.nl>
+;;;; (c) 1998--2007 Han-Wen Nienhuys <hanwen@xs4all.nl>
;;;; Jan Nieuwenhuizen <janneke@gnu.org>
;;;; distances are given in line-thickness (thicknesses) and
;;;;
;;;; source file of the GNU LilyPond music typesetter
;;;;
-;;;; (c) 2000--2006 Han-Wen Nienhuys <hanwen@xs4all.nl>
+;;;; (c) 2000--2007 Han-Wen Nienhuys <hanwen@xs4all.nl>
;;;; Jan Nieuwenhuizen <janneke@gnu.org>
name)))
(define-builtin-markup-command (musicglyph layout props glyph-name) (string?)
- "@var{glyph0name} is converted to a musical symbol; for example,
+ "@var{glyph-name} is converted to a musical symbol; for example,
@code{\\musicglyph #\"accidentals.natural\"} selects the natural sign from
the music font. See @usermanref{The Feta font} for a complete listing of
the possible glyphs."
;;; define-music-display-methods.scm -- data for displaying music
;;; expressions using LilyPond notation.
;;;
-;;; (c) 2005--2006 Nicolas Sceaux <nicolas.sceaux@free.fr>
+;;; (c) 2005--2007 Nicolas Sceaux <nicolas.sceaux@free.fr>
;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;
;;;; source file of the GNU LilyPond music typesetter
;;;;
-;;;; (c) 1998--2006 Han-Wen Nienhuys <hanwen@xs4all.nl>
+;;;; (c) 1998--2007 Han-Wen Nienhuys <hanwen@xs4all.nl>
;;;; Jan Nieuwenhuizen <janneke@gnu.org>
(define (music-property-description symbol type? description)
;;;;
;;;; source file of the GNU LilyPond music typesetter
;;;;
-;;;; (c) 1998--2006 Han-Wen Nienhuys <hanwen@xs4all.nl>
+;;;; (c) 1998--2007 Han-Wen Nienhuys <hanwen@xs4all.nl>
;;;; Jan Nieuwenhuizen <janneke@gnu.org>
;; TODO: should link back into user manual.
;;
;; source file of the GNU LilyPond music typesetter
;;
-;; (c) 2005--2006 Han-Wen Nienhuys <hanwen@xs4all.nl>
+;; (c) 2005--2007 Han-Wen Nienhuys <hanwen@xs4all.nl>
;;
(map ly:register-stencil-expression
;;;
;;;
;;;
-;;; (c) 2005--2006 Nicolas Sceaux <nicolas.sceaux@free.fr>
+;;; (c) 2005--2007 Nicolas Sceaux <nicolas.sceaux@free.fr>
;;;
;;; - This file defines the procedures used to define display methods for each
;;;;
;;;; source file of the GNU LilyPond music typesetter
;;;;
-;;;; (c) 2000--2006 Han-Wen Nienhuys <hanwen@xs4all.nl>
+;;;; (c) 2000--2007 Han-Wen Nienhuys <hanwen@xs4all.nl>
;;;; Jan Nieuwenhuizen <janneke@gnu.org>
(define (interface-doc-string interface grob-description)
;;;;
;;;; source file of the GNU LilyPond music typesetter
;;;;
-;;;; (c) 1998--2006 Han-Wen Nienhuys <hanwen@xs4all.nl>
+;;;; (c) 1998--2007 Han-Wen Nienhuys <hanwen@xs4all.nl>
;;;; Jan Nieuwenhuizen <janneke@gnu.org>
(use-modules
;;;;
;;;; source file of the GNU LilyPond music typesetter
;;;;
-;;;; (c) 1998--2006 Han-Wen Nienhuys <hanwen@xs4all.nl>
+;;;; (c) 1998--2007 Han-Wen Nienhuys <hanwen@xs4all.nl>
;;;; Jan Nieuwenhuizen <janneke@gnu.org>
(define (doc-markup-function func)
;;;;
;;;; source file of the GNU LilyPond music typesetter
;;;;
-;;;; (c) 1998--2006 Han-Wen Nienhuys <hanwen@xs4all.nl>
+;;;; (c) 1998--2007 Han-Wen Nienhuys <hanwen@xs4all.nl>
;;;; Jan Nieuwenhuizen <janneke@gnu.org>
(define (music-props-doc)
;;;;
;;;; source file of the GNU LilyPond music typesetter
;;;;
-;;;; (c) 2000--2006 Han-Wen Nienhuys <hanwen@xs4all.nl>
+;;;; (c) 2000--2007 Han-Wen Nienhuys <hanwen@xs4all.nl>
;;;; Jan Nieuwenhuizen <janneke@gnu.org>
(define (engraver-makes-grob? name-symbol grav)
;;;;
;;;; source file of the GNU LilyPond music typesetter
;;;;
-;;;; (c) 2000--2006 Han-Wen Nienhuys <hanwen@xs4all.nl>
+;;;; (c) 2000--2007 Han-Wen Nienhuys <hanwen@xs4all.nl>
;;;; Jan Nieuwenhuizen <janneke@gnu.org>
;;; File entry point for generated documentation
;;;;
;;;; source file of the GNU LilyPond music typesetter
;;;;
-;;;; (c) 2000--2006 Han-Wen Nienhuys <hanwen@xs4all.nl>
+;;;; (c) 2000--2007 Han-Wen Nienhuys <hanwen@xs4all.nl>
;;;; Jan Nieuwenhuizen <janneke@gnu.org>
(use-modules (oop goops)
;;;;
;;;; source file of the GNU LilyPond music typesetter
;;;;
-;;;; (c) 2005--2006 Jan Nieuwenhuizen <janneke@gnu.org>
+;;;; (c) 2005--2007 Jan Nieuwenhuizen <janneke@gnu.org>
(define-module (scm editor))
;;;;
;;;; source file of the GNU LilyPond music typesetter
;;;;
-;;;; (c) 2004--2006 Jan Nieuwenhuizen <janneke@gnu.org>
+;;;; (c) 2004--2007 Jan Nieuwenhuizen <janneke@gnu.org>
;;;;
;;;; source file of the GNU LilyPond music typesetter
;;;;
-;;;; (c) 2005--2006 Han-Wen Nienhuys <hanwen@xs4all.nl>
+;;;; (c) 2005--2007 Han-Wen Nienhuys <hanwen@xs4all.nl>
(define cache-hash-tab (make-hash-table 11))
;;;;
;;;; source file of the GNU LilyPond music typesetter
;;;;
-;;;; (c) 2004--2006 Han-Wen Nienhuys <hanwen@xs4all.nl>
+;;;; (c) 2004--2007 Han-Wen Nienhuys <hanwen@xs4all.nl>
;; TODO:
;;
;;;;
;;;; source file of the GNU LilyPond music typesetter
;;;;
-;;;; (c) 2004--2006 Han-Wen Nienhuys <hanwen@xs4all.nl>
+;;;; (c) 2004--2007 Han-Wen Nienhuys <hanwen@xs4all.nl>
(define-module (scm framework-eps))
;;;;
;;;; source file of the GNU LilyPond music typesetter
;;;;
-;;;; (c) 2004--2006 Han-Wen Nienhuys <hanwen@xs4all.nl>
+;;;; (c) 2004--2007 Han-Wen Nienhuys <hanwen@xs4all.nl>
(define-module (scm framework-ps))
;;;;
;;;; source file of the GNU LilyPond music typesetter
;;;;
-;;;; (c) 2004--2006 Jan Nieuwenhuizen <janneke@gnu.org>
+;;;; (c) 2004--2007 Jan Nieuwenhuizen <janneke@gnu.org>
(define-module (scm framework-svg))
;;;;
;;;; source file of the GNU LilyPond music typesetter
;;;;
-;;;; (c) 2004--2006 Han-Wen Nienhuys <hanwen@xs4all.nl>
+;;;; (c) 2004--2007 Han-Wen Nienhuys <hanwen@xs4all.nl>
(define-module (scm framework-tex)
#:export (output-framework-tex
;;;;
;;;; source file of the GNU LilyPond music typesetter
;;;;
-;;;; (c) 2004--2006 Han-Wen Nienhuys <hanwen@xs4all.nl>
+;;;; (c) 2004--2007 Han-Wen Nienhuys <hanwen@xs4all.nl>
(define-module (scm framework-texstr)
#:export (output-framework-tex
;;;;
;;;; source file of the GNU LilyPond music typesetter
;;;;
-;;;; (c) 2004--2006 Carl D. Sorensen <c_sorensen@byu.edu>
+;;;; (c) 2004--2007 Carl D. Sorensen <c_sorensen@byu.edu>
(define (fret-parse-marking-list marking-list fret-count)
(let* ((fret-range (list 1 fret-count))
;;
;; source file of the GNU LilyPond music typesetter
;;
-;; (c) 2005--2006 Han-Wen Nienhuys <hanwen@xs4all.nl>
+;; (c) 2005--2007 Han-Wen Nienhuys <hanwen@xs4all.nl>
;;
(define-module (scm kpathsea))
;;;;
;;;; source file of the GNU LilyPond music typesetter
;;;;
-;;;; (c) 2000--2006 Jan Nieuwenhuizen <janneke@gnu.org>
+;;;; (c) 2000--2007 Jan Nieuwenhuizen <janneke@gnu.org>
;;;;
(define ((check-beam-quant posl posr) beam posns)
;;;;
;;;; source file of the GNU LilyPond music typesetter
;;;;
-;;;; (c) 2004--2006 Jan Nieuwenhuizen <janneke@gnu.org>
+;;;; (c) 2004--2007 Jan Nieuwenhuizen <janneke@gnu.org>
;;;; Han-Wen Nienhuys <hanwen@xs4all.nl>
(define-module (scm layout-page-layout)
;;;;
;;;; source file of the GNU LilyPond music typesetter
;;;;
-;;;; (c) 2000--2006 Jan Nieuwenhuizen <janneke@gnu.org>
+;;;; (c) 2000--2007 Jan Nieuwenhuizen <janneke@gnu.org>
;
; this is put into the slur-details property of Slur and PhrasingSlur
(define default-slur-details
;;;;
;;;; source file of the GNU LilyPond music typesetter
;;;;
-;;;; (c) 1998--2006 Jan Nieuwenhuizen <janneke@gnu.org>
+;;;; (c) 1998--2007 Jan Nieuwenhuizen <janneke@gnu.org>
;;;; Han-Wen Nienhuys <hanwen@xs4all.nl>
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;
;;;; source file of the GNU LilyPond music typesetter
;;;;
-;;;; (c) 1998--2006 Jan Nieuwenhuizen <janneke@gnu.org>
+;;;; (c) 1998--2007 Jan Nieuwenhuizen <janneke@gnu.org>
;;;; Han-Wen Nienhuys <hanwen@xs4all.nl>
;; Internationalisation: (_i "to be translated") gets an entry in the
;;;;
;;;; source file of the GNU LilyPond music typesetter
;;;;
-;;;; (c) 2003--2006 Han-Wen Nienhuys <hanwen@xs4all.nl>
+;;;; (c) 2003--2007 Han-Wen Nienhuys <hanwen@xs4all.nl>
"
Internally markup is stored as lists, whose head is a function.
;;;;
;;;; source file of the GNU LilyPond music typesetter
;;;;
-;;;; (c) 2000--2006 Jan Nieuwenhuizen <janneke@gnu.org>
+;;;; (c) 2000--2007 Jan Nieuwenhuizen <janneke@gnu.org>
;;;;
;;;; source file of the GNU LilyPond music typesetter
;;;;
-;;;; (c) 1998--2006 Jan Nieuwenhuizen <janneke@gnu.org>
+;;;; (c) 1998--2007 Jan Nieuwenhuizen <janneke@gnu.org>
;;;; Han-Wen Nienhuys <hanwen@xs4all.nl>
;; (use-modules (ice-9 optargs))
;;;;
;;;; source file of the GNU LilyPond music typesetter
;;;;
-;;;; (c) 1998--2006 Jan Nieuwenhuizen <janneke@gnu.org>
+;;;; (c) 1998--2007 Jan Nieuwenhuizen <janneke@gnu.org>
;;;; Han-Wen Nienhuys <hanwen@xs4all.nl>
;;;;
;;;; source file of the GNU LilyPond music typesetter
;;;;
-;;;; (c) 1998--2006 Jan Nieuwenhuizen <janneke@gnu.org>
+;;;; (c) 1998--2007 Jan Nieuwenhuizen <janneke@gnu.org>
;;;; Han-Wen Nienhuys <hanwen@xs4all.nl>
;;;; Note: currently misused as testbed for titles with markup, see
;;;;
;;;; source file of the GNU LilyPond music typesetter
;;;;
-;;;; (c) 2002--2006 Jan Nieuwenhuizen <janneke@gnu.org>
+;;;; (c) 2002--2007 Jan Nieuwenhuizen <janneke@gnu.org>
;;;; http://www.w3.org/TR/SVG11
;;;; http://www.w3.org/TR/SVG12/ -- page, pageSet in draft
;;;;
;;;; source file of the GNU LilyPond music typesetter
;;;;
-;;;; (c) 1998--2006 Jan Nieuwenhuizen <janneke@gnu.org>
+;;;; (c) 1998--2007 Jan Nieuwenhuizen <janneke@gnu.org>
;;;; Han-Wen Nienhuys <hanwen@xs4all.nl>
;;;;
;;;; source file of the GNU LilyPond music typesetter
;;;;
-;;;; (c) 2004--2006 Han-Wen Nienhuys <hanwen@xs4all.nl>
+;;;; (c) 2004--2007 Han-Wen Nienhuys <hanwen@xs4all.nl>
(define-module (scm output-texstr))
(define this-module (current-module))
;;;;
;;;; source file of the GNU LilyPond music typesetter
;;;;
-;;;; (c) 2004--2006 Han-Wen Nienhuys <hanwen@xs4all.nl>
+;;;; (c) 2004--2007 Han-Wen Nienhuys <hanwen@xs4all.nl>
(define-public (set-paper-dimension-variables mod)
(module-define! mod 'dimension-variables
;;;;
;;;; source file of the GNU LilyPond music typesetter
;;;;
-;;;; (c) 2004--2006 Han-Wen Nienhuys <hanwen@xs4all.nl>
+;;;; (c) 2004--2007 Han-Wen Nienhuys <hanwen@xs4all.nl>
;; (name . (glyph clef-position octavation))
;;;;
;;;; source file of the GNU LilyPond music typesetter
;;;;
-;;;; (c) 2004--2006 Nicolas Sceaux <nicolas.sceaux@free.fr>
+;;;; (c) 2004--2007 Nicolas Sceaux <nicolas.sceaux@free.fr>
;;;; Jan Nieuwenhuizen <janneke@gnu.org>
(define gen-lily-sym
;;;;
;;;; source file of the GNU LilyPond music typesetter
;;;;
-;;;; (c) 2004--2006 Han-Wen Nienhuys <hanwen@xs4all.nl>
+;;;; (c) 2004--2007 Han-Wen Nienhuys <hanwen@xs4all.nl>
;; todo: figure out how to make module,
;; without breaking nested ly scopes
;;;;
;;;; source file of the GNU LilyPond music typesetter
;;;;
-;;;; (c) 2005--2006 Jan Nieuwenhuizen <janneke@gnu.org>
+;;;; (c) 2005--2007 Jan Nieuwenhuizen <janneke@gnu.org>
(define-module (scm ps-to-png))
;;;;
;;;; source file of the GNU LilyPond music typesetter
;;;;
-;;;; (c) 2004--2006 Han-Wen Nienhuys <hanwen@xs4all.nl>
+;;;; (c) 2004--2007 Han-Wen Nienhuys <hanwen@xs4all.nl>
(map
(lambda (sym)
;;;;
;;;; source file of the GNU LilyPond music typesetter
;;;;
-;;;; (c) 2000--2006 Han-Wen Nienhuys <hanwen@xs4all.nl>
+;;;; (c) 2000--2007 Han-Wen Nienhuys <hanwen@xs4all.nl>
(define-public default-script-alist
'(("thumb" .
;;;;
;;;; source file of the GNU LilyPond music typesetter
;;;;
-;;;; (c) 1998--2006 Jan Nieuwenhuizen <janneke@gnu.org>
+;;;; (c) 1998--2007 Jan Nieuwenhuizen <janneke@gnu.org>
;;;; Han-Wen Nienhuys <hanwen@xs4all.nl>
;;;;
;;;; source file of the GNU LilyPond music typesetter
;;;;
-;;;; (c) 2003--2006 Han-Wen Nienhuys <hanwen@xs4all.nl>
+;;;; (c) 2003--2007 Han-Wen Nienhuys <hanwen@xs4all.nl>
(define-public (stack-stencils axis dir padding stils)
"Stack stencils STILS in direction AXIS, DIR, using PADDING."
;;;;
;;;; source file of the GNU LilyPond music typesetter
;;;;
-;;;; (c) 2004--2006 Jan Nieuwenhuizen <janneke@gnu.org>
+;;;; (c) 2004--2007 Jan Nieuwenhuizen <janneke@gnu.org>
;;;; Han-Wen Nienhuys <hanwen@xs4all.nl>
(define-public (layout-extract-page-properties layout)
;;;;
;;;; source file of the GNU LilyPond music typesetter
;;;;
-;;;; (c) 2003--2006 Han-Wen Nienhuys <hanwen@xs4all.nl>
+;;;; (c) 2003--2007 Han-Wen Nienhuys <hanwen@xs4all.nl>
;;;; Jan Nieuwenhuizen <janneke@gnu.org>
(define-module (scm to-xml))
;;;;
;;;; source file of the GNU LilyPond music typesetter
;;;;
-;;;; (c) 1998--2006 Han-Wen Nienhuys <hanwen@xs4all.nl>
+;;;; (c) 1998--2007 Han-Wen Nienhuys <hanwen@xs4all.nl>
;;;; Jan Nieuwenhuizen <janneke@gnu.org>
;; metronome marks
;;;;
;;;; source file of the GNU LilyPond music typesetter
;;;;
-;;;; (c) 2005--2006 Bernard Hurley <bernard@fong-hurley.org.uk>
+;;;; (c) 2005--2007 Bernard Hurley <bernard@fong-hurley.org.uk>
;;;;
(define x11-color-list
#
# source file of the GNU LilyPond music typesetter
#
-# (c) 1998--2006 Han-Wen Nienhuys <hanwen@xs4all.nl>
+# (c) 1998--2007 Han-Wen Nienhuys <hanwen@xs4all.nl>
# Jan Nieuwenhuizen <janneke@gnu.org>
#
# converting rules are found in python/convertrules.py
%s
%s
-''' % ( _ ('Copyright (c) %s by') % '2001--2006',
+''' % ( _ ('Copyright (c) %s by') % '2001--2007',
' '.join (authors),
_ ("Distributed under terms of the GNU General Public License."),
_ ("It comes with NO WARRANTY.")))
;;;;
;;;; source file of the GNU LilyPond music typesetter
;;;;
-;;;; (c) 2005--2006 Jan Nieuwenhuizen <janneke@gnu.org>
+;;;; (c) 2005--2007 Jan Nieuwenhuizen <janneke@gnu.org>
;; gui debug helper
;; (define (exit x) (system "sleep 10"))
#
# source file of the GNU LilyPond music typesetter
#
-# (c) 1998--2006 Han-Wen Nienhuys <hanwen@xs4all.nl>
+# (c) 1998--2007 Han-Wen Nienhuys <hanwen@xs4all.nl>
# Jan Nieuwenhuizen <janneke@gnu.org>
under certain conditions. Invoke as `%s --warranty' for more
information.""") % 'lilypond'
+ """
-Copyright (c) 2005--2006 by
+Copyright (c) 2005--2007 by
Han-Wen Nienhuys <hanwen@xs4all.nl> and
Jan Nieuwenhuizen <janneke@gnu.org>
"""),
%%%
%%% source file of the GNU LilyPond music typesetter
%%%
-%%% (c) 1998--2006 Jan Nieuwenhuizen <janneke@gnu.org>
+%%% (c) 1998--2007 Jan Nieuwenhuizen <janneke@gnu.org>
%%% Han-Wen Nienhuys <hanwen@cs.uu.nl>
%%% Mats Bengtsson <mats.bengtsson@s3.kth.se>
%%%