From 276413150fbc1eb23354c0bde8bab655b26a937e Mon Sep 17 00:00:00 2001 From: Han-Wen Nienhuys Date: Fri, 14 Jan 2005 11:52:52 +0000 Subject: [PATCH] * lily/include/music.hh (class Music): include SCM init argument. * scripts/convert-ly.py (conv): add # to \property scalar value. * mf/GNUmakefile: don't install *list.ly --- ChangeLog | 8 ++++++++ lily/event.cc | 8 ++++++-- lily/grace-music.cc | 5 ++--- lily/include/event.hh | 3 ++- lily/include/grace-music.hh | 2 +- lily/include/lyric-combine-music.hh | 2 +- lily/include/music-constructor.hh | 10 +++++----- lily/include/music-list.hh | 5 +++-- lily/include/music-sequence.hh | 2 -- lily/include/music.hh | 2 +- lily/include/relative-music.hh | 2 +- lily/include/relative-octave-check.hh | 1 + lily/include/repeated-music.hh | 1 - lily/include/transposed-music.hh | 1 - lily/include/un-relativable-music.hh | 2 +- lily/include/untransposable-music.hh | 2 +- lily/lyric-combine-music.cc | 4 ++-- lily/music-constructor.cc | 4 ++-- lily/music-scheme.cc | 3 +-- lily/music-sequence.cc | 15 ++------------- lily/music.cc | 4 ++-- lily/relative-octave-check.cc | 19 +++++++++++++++---- lily/relative-octave-music.cc | 4 +++- lily/repeated-music.cc | 7 ++----- lily/simultaneous-music.cc | 3 ++- lily/transposed-music.cc | 4 +++- lily/un-relativable-music.cc | 3 ++- lily/untransposable-music.cc | 5 +++-- mf/GNUmakefile | 5 +---- scm/define-music-types.scm | 1 - scripts/convert-ly.py | 13 +++++++++++++ stepmake/stepmake/install-targets.make | 8 ++++---- 32 files changed, 90 insertions(+), 68 deletions(-) diff --git a/ChangeLog b/ChangeLog index d31742fd33..6fb9437fa3 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,11 @@ +2005-01-14 Han-Wen Nienhuys + + * lily/include/music.hh (class Music): include SCM init argument. + + * scripts/convert-ly.py (conv): add # to \property scalar value. + + * mf/GNUmakefile: don't install *list.ly + 2005-01-14 Jan Nieuwenhuizen * mf/GNUmakefile (CFF_FILES): Bugfix: only big cheeses and braces. diff --git a/lily/event.cc b/lily/event.cc index cd803f87c0..5e93cb84c9 100644 --- a/lily/event.cc +++ b/lily/event.cc @@ -59,13 +59,17 @@ Event::to_relative_octave (Pitch last) return last; } -Event::Event () - : Music () +Event::Event (SCM i) + : Music (i) { } ADD_MUSIC (Event); +Key_change_ev::Key_change_ev (SCM x) + : Event (x) +{ +} void Key_change_ev::transpose (Pitch p) { diff --git a/lily/grace-music.cc b/lily/grace-music.cc index 60599ebcf7..8acff19747 100644 --- a/lily/grace-music.cc +++ b/lily/grace-music.cc @@ -27,10 +27,9 @@ Grace_music::start_mom () const return gl; } -Grace_music::Grace_music () +Grace_music::Grace_music (SCM x) + : Music_wrapper (x) { - set_property ("iterator-ctor", - Grace_iterator::constructor_proc); } ADD_MUSIC (Grace_music); diff --git a/lily/include/event.hh b/lily/include/event.hh index 6365b16c86..a50e397c4c 100644 --- a/lily/include/event.hh +++ b/lily/include/event.hh @@ -20,7 +20,7 @@ class Event : public Music { public: - Event (); + Event (SCM); VIRTUAL_COPY_CONSTRUCTOR (Music, Event); virtual void compress (Moment); virtual Moment get_length () const; @@ -34,6 +34,7 @@ public: class Key_change_ev : public Event { public: + Key_change_ev (SCM); SCM pitch_alist (); protected: diff --git a/lily/include/grace-music.hh b/lily/include/grace-music.hh index 63532de6f2..ea1eaf3414 100644 --- a/lily/include/grace-music.hh +++ b/lily/include/grace-music.hh @@ -16,7 +16,7 @@ class Grace_music : public Music_wrapper { public: VIRTUAL_COPY_CONSTRUCTOR (Music, Grace_music); - Grace_music (); + Grace_music (SCM); protected: virtual Moment get_length () const; virtual Moment start_mom () const; diff --git a/lily/include/lyric-combine-music.hh b/lily/include/lyric-combine-music.hh index 566dc9a93f..0643f820de 100644 --- a/lily/include/lyric-combine-music.hh +++ b/lily/include/lyric-combine-music.hh @@ -15,7 +15,7 @@ class Lyric_combine_music : public Music { public: - Lyric_combine_music (); + Lyric_combine_music (SCM); VIRTUAL_COPY_CONSTRUCTOR (Music, Lyric_combine_music); Music *get_music () const; diff --git a/lily/include/music-constructor.hh b/lily/include/music-constructor.hh index ae20fca36b..c059abfdc7 100644 --- a/lily/include/music-constructor.hh +++ b/lily/include/music-constructor.hh @@ -10,22 +10,22 @@ #ifndef MUSIC_CONSTRUCTOR_HH #define MUSIC_CONSTRUCTOR_HH -#include "lily-proto.hh" +#include "lily-guile.hh" #include "string.hh" #include "global-ctor.hh" #define ADD_MUSIC(type) \ -Music * _ ## type ## _ctor ()\ +Music * _ ## type ## _ctor (SCM init)\ {\ - return new type;\ + return new type (init);\ }\ static void _ ## type ## _adder () {\ add_music_ctor (#type, & _ ## type ## _ctor);\ }\ ADD_SCM_INIT_FUNC( _ ## type ## _adder_prefix, _ ## type ## _adder); -void add_music_ctor (String, Music* (*) ()); -Music*make_music (String); +void add_music_ctor (String, Music* (*) (SCM)); +Music*make_music (String, SCM); diff --git a/lily/include/music-list.hh b/lily/include/music-list.hh index c77cccd70f..523fef4464 100644 --- a/lily/include/music-list.hh +++ b/lily/include/music-list.hh @@ -18,7 +18,7 @@ class Simultaneous_music : public Music_sequence { public: - Simultaneous_music (); + Simultaneous_music (SCM); VIRTUAL_COPY_CONSTRUCTOR (Music, Simultaneous_music); virtual Pitch to_relative_octave (Pitch); @@ -34,6 +34,7 @@ class Event_chord : public Simultaneous_music public: VIRTUAL_COPY_CONSTRUCTOR (Music, Event_chord); virtual Pitch to_relative_octave (Pitch); + Event_chord (SCM); }; /** @@ -46,7 +47,7 @@ public: virtual Moment get_length () const; virtual Moment start_mom () const; - Sequential_music (); + Sequential_music (SCM); }; #endif /* MUSIC_LIST_HH */ diff --git a/lily/include/music-sequence.hh b/lily/include/music-sequence.hh index 01753fd41a..c1c307b1ec 100644 --- a/lily/include/music-sequence.hh +++ b/lily/include/music-sequence.hh @@ -17,11 +17,9 @@ class Music_sequence : public Music { public: Music_sequence (SCM h); - Music_sequence (); VIRTUAL_COPY_CONSTRUCTOR (Music, Music_sequence); SCM music_list () const; - void append_music (Music *); Pitch do_relative_octave (Pitch p, bool b); diff --git a/lily/include/music.hh b/lily/include/music.hh index 60baeb72e8..a9a60cbe6b 100644 --- a/lily/include/music.hh +++ b/lily/include/music.hh @@ -31,7 +31,7 @@ class Music { public: - Music (); + Music (SCM init); Music (Music const &m); VIRTUAL_COPY_CONSTRUCTOR (Music, Music); diff --git a/lily/include/relative-music.hh b/lily/include/relative-music.hh index eebc43e4f1..17f0f5721b 100644 --- a/lily/include/relative-music.hh +++ b/lily/include/relative-music.hh @@ -15,7 +15,7 @@ class Relative_octave_music : public Music_wrapper { public: - Relative_octave_music (); + Relative_octave_music (SCM); VIRTUAL_COPY_CONSTRUCTOR (Music, Relative_octave_music); virtual Pitch to_relative_octave (Pitch); diff --git a/lily/include/relative-octave-check.hh b/lily/include/relative-octave-check.hh index 72cf3e2a12..ae3b9adb06 100644 --- a/lily/include/relative-octave-check.hh +++ b/lily/include/relative-octave-check.hh @@ -15,6 +15,7 @@ class Relative_octave_check : public Music { public: + Relative_octave_check (SCM); VIRTUAL_COPY_CONSTRUCTOR (Music, Relative_octave_check); virtual Pitch to_relative_octave (Pitch); diff --git a/lily/include/repeated-music.hh b/lily/include/repeated-music.hh index e84b1d2fbc..a61dd75fd2 100644 --- a/lily/include/repeated-music.hh +++ b/lily/include/repeated-music.hh @@ -49,7 +49,6 @@ class Repeated_music : public Music { public: - Repeated_music (); Repeated_music (SCM); VIRTUAL_COPY_CONSTRUCTOR (Music, Repeated_music); diff --git a/lily/include/transposed-music.hh b/lily/include/transposed-music.hh index d355fb045a..2642531475 100644 --- a/lily/include/transposed-music.hh +++ b/lily/include/transposed-music.hh @@ -15,7 +15,6 @@ class Transposed_music : public Music_wrapper { public: - Transposed_music (); Transposed_music (SCM); VIRTUAL_COPY_CONSTRUCTOR (Music, Transposed_music); diff --git a/lily/include/un-relativable-music.hh b/lily/include/un-relativable-music.hh index b927a8a133..09460a9ab3 100644 --- a/lily/include/un-relativable-music.hh +++ b/lily/include/un-relativable-music.hh @@ -15,7 +15,7 @@ class Un_relativable_music: public Music_wrapper { public: - Un_relativable_music (); + Un_relativable_music (SCM); VIRTUAL_COPY_CONSTRUCTOR (Music, Un_relativable_music); Pitch to_relative_octave (Pitch); diff --git a/lily/include/untransposable-music.hh b/lily/include/untransposable-music.hh index f5a4a9f5db..7e88a21b07 100644 --- a/lily/include/untransposable-music.hh +++ b/lily/include/untransposable-music.hh @@ -15,7 +15,7 @@ class Untransposable_music : public Music_wrapper { public: - Untransposable_music (); + Untransposable_music (SCM); VIRTUAL_COPY_CONSTRUCTOR (Music, Untransposable_music); virtual Pitch to_relative_octave (Pitch); diff --git a/lily/lyric-combine-music.cc b/lily/lyric-combine-music.cc index 82f1e56de7..98777b1dd7 100644 --- a/lily/lyric-combine-music.cc +++ b/lily/lyric-combine-music.cc @@ -11,8 +11,8 @@ #include "pitch.hh" -Lyric_combine_music::Lyric_combine_music () - : Music () +Lyric_combine_music::Lyric_combine_music (SCM x) + : Music (x) { } diff --git a/lily/music-constructor.cc b/lily/music-constructor.cc index bfa4199c91..120bfef236 100644 --- a/lily/music-constructor.cc +++ b/lily/music-constructor.cc @@ -37,13 +37,13 @@ get_music_ctor (String s) } Music * -make_music (String s) +make_music (String s, SCM init) { Music_ctor c = get_music_ctor (s); if (!c) programming_error (String ("No constructor for music: ") + s); assert (c); - return (*c) (); + return (*c) (init); } diff --git a/lily/music-scheme.cc b/lily/music-scheme.cc index d3d200ad09..2d1b935352 100644 --- a/lily/music-scheme.cc +++ b/lily/music-scheme.cc @@ -73,8 +73,7 @@ LY_DEFINE (ly_extended_make_music, "ly:make-bare-music", ) { SCM_ASSERT_TYPE (scm_is_string (type), type, SCM_ARG1, __FUNCTION__, "string"); - SCM s = make_music (ly_scm2string (type))->self_scm (); - unsmob_music (s)->immutable_property_alist_ = props; + SCM s = make_music (ly_scm2string (type), props)->self_scm (); scm_gc_unprotect_object (s); return s; } diff --git a/lily/music-sequence.cc b/lily/music-sequence.cc index c15ebaf2db..35db3471c8 100644 --- a/lily/music-sequence.cc +++ b/lily/music-sequence.cc @@ -11,8 +11,8 @@ #include "pitch.hh" #include "input.hh" -Music_sequence::Music_sequence () - : Music () +Music_sequence::Music_sequence (SCM x) + : Music (x) { } @@ -22,17 +22,6 @@ Music_sequence::music_list () const return get_property ("elements"); } -/* - Ugh this sucks. Linear. do not use. - */ -void -Music_sequence::append_music (Music *m) -{ - set_property ("elements", - ly_append2 (music_list (), scm_cons (m->self_scm (), SCM_EOL))); - scm_gc_unprotect_object (m->self_scm ()); -} - void transpose_music_list (SCM lst, Pitch rq) { diff --git a/lily/music.cc b/lily/music.cc index 3ce9c302ce..4e98b61775 100644 --- a/lily/music.cc +++ b/lily/music.cc @@ -39,10 +39,10 @@ Music::name () const } } -Music::Music () +Music::Music (SCM init) { self_scm_ = SCM_EOL; - immutable_property_alist_ = SCM_EOL; + immutable_property_alist_ = init; mutable_property_alist_ = SCM_EOL; smobify_self (); } diff --git a/lily/relative-octave-check.cc b/lily/relative-octave-check.cc index ee22516c07..f751dc1e24 100644 --- a/lily/relative-octave-check.cc +++ b/lily/relative-octave-check.cc @@ -1,12 +1,17 @@ +/* + relative-octave-check.cc -- implement Relative_octave_check + + source file of the GNU LilyPond music typesetter + + (c) 2005 Han-Wen Nienhuys + +*/ + #include "relative-octave-check.hh" #include "input.hh" #include "pitch.hh" -/* - yeah, so this should be in a separate file. - I'm lazy. - */ Pitch Relative_octave_check::to_relative_octave (Pitch p) { @@ -36,4 +41,10 @@ Relative_octave_check::to_relative_octave (Pitch p) p.get_notename (), p.get_alteration ()); } + +Relative_octave_check::Relative_octave_check (SCM x) + : Music (x) +{ +} + ADD_MUSIC (Relative_octave_check); diff --git a/lily/relative-octave-music.cc b/lily/relative-octave-music.cc index bc723df723..afe6b4a29a 100644 --- a/lily/relative-octave-music.cc +++ b/lily/relative-octave-music.cc @@ -31,8 +31,10 @@ Relative_octave_music::to_relative_octave (Pitch p) } -Relative_octave_music::Relative_octave_music () +Relative_octave_music::Relative_octave_music (SCM x) + : Music (x) { + } ADD_MUSIC (Relative_octave_music); diff --git a/lily/repeated-music.cc b/lily/repeated-music.cc index 6cf1ff9ce9..f145ecfe36 100644 --- a/lily/repeated-music.cc +++ b/lily/repeated-music.cc @@ -26,9 +26,6 @@ Repeated_music::alternatives ()const return get_property ("elements"); } - - - Pitch Repeated_music::to_relative_octave (Pitch p) { @@ -152,8 +149,8 @@ Repeated_music::volta_music_length (SCM m) ADD_MUSIC (Repeated_music); -Repeated_music::Repeated_music () - : Music () +Repeated_music::Repeated_music (SCM x) + : Music (x) { } diff --git a/lily/simultaneous-music.cc b/lily/simultaneous-music.cc index ccf3287ab5..4f67bceb1c 100644 --- a/lily/simultaneous-music.cc +++ b/lily/simultaneous-music.cc @@ -24,7 +24,8 @@ Simultaneous_music::start_mom () const return Music_sequence::minimum_start (get_property ("elements")); } -Simultaneous_music::Simultaneous_music () +Simultaneous_music::Simultaneous_music (SCM x) + : Music (x) { } diff --git a/lily/transposed-music.cc b/lily/transposed-music.cc index d2c1166a21..6be20ce65c 100644 --- a/lily/transposed-music.cc +++ b/lily/transposed-music.cc @@ -18,7 +18,9 @@ Transposed_music::to_relative_octave (Pitch p) } ADD_MUSIC (Transposed_music); -Transposed_music::Transposed_music () + +Transposed_music::Transposed_music (SCM x) + : Music (x) { } diff --git a/lily/un-relativable-music.cc b/lily/un-relativable-music.cc index 1d0f0271d6..9253272ecf 100644 --- a/lily/un-relativable-music.cc +++ b/lily/un-relativable-music.cc @@ -9,7 +9,8 @@ #include "un-relativable-music.hh" -Un_relativable_music::Un_relativable_music ( ) +Un_relativable_music::Un_relativable_music (SCM x) + : Music (x) { } diff --git a/lily/untransposable-music.cc b/lily/untransposable-music.cc index 754ad97333..02ef66debe 100644 --- a/lily/untransposable-music.cc +++ b/lily/untransposable-music.cc @@ -15,7 +15,7 @@ source file of the GNU LilyPond music typesetter fixthis. */ void -Untransposable_music::transpose (Pitch ) +Untransposable_music::transpose (Pitch) { } @@ -27,7 +27,8 @@ Untransposable_music::to_relative_octave (Pitch p) ADD_MUSIC (Untransposable_music); -Untransposable_music::Untransposable_music () +Untransposable_music::Untransposable_music (SCM init) + : Music_wrapper (init) { } diff --git a/mf/GNUmakefile b/mf/GNUmakefile index 951c5bc340..265fa8cf82 100644 --- a/mf/GNUmakefile +++ b/mf/GNUmakefile @@ -85,7 +85,7 @@ ALL_GEN_FILES= $(TFM_FILES) $(TEXTABLES) $(TFM_FILES) $(LOG_FILES) $(ENC_FILES) INSTALLATION_DIR=$(local_lilypond_datadir)/fonts/source INSTALLATION_FILES=$(MF_FILES) $(AF_FILES) -INSTALLATION_OUT_SUFFIXES=1 2 3 4 5 6 7 8 9 +INSTALLATION_OUT_SUFFIXES=1 2 3 5 6 7 8 9 INSTALLATION_OUT_DIR1=$(local_lilypond_datadir)/tex INSTALLATION_OUT_FILES1=$(TEXTABLES) @@ -97,9 +97,6 @@ INSTALLATION_OUT_FILES2=$(OTF_FILES) INSTALLATION_OUT_DIR3=$(local_lilypond_datadir)/fonts/tfm INSTALLATION_OUT_FILES3=$(TFM_FILES) -INSTALLATION_OUT_DIR4=$(local_lilypond_datadir)/ly -INSTALLATION_OUT_FILES4=$(FETA_LIST_FILES) - INSTALLATION_OUT_DIR5=$(local_lilypond_datadir)/fonts/type1 INSTALLATION_OUT_FILES5=$(PFA_FILES) diff --git a/scm/define-music-types.scm b/scm/define-music-types.scm index 57d4acf8dd..c3ac9e8856 100644 --- a/scm/define-music-types.scm +++ b/scm/define-music-types.scm @@ -198,7 +198,6 @@ Syntax: @var{note}\\cr (GraceMusic . ( (description . "Interpret the argument as grace notes. ") - (internal-class-name . "Grace_music") (iterator-ctor . ,Grace_iterator::constructor) (types . (grace-music music-wrapper-music general-music)) diff --git a/scripts/convert-ly.py b/scripts/convert-ly.py index 2384587e6f..13f009a732 100644 --- a/scripts/convert-ly.py +++ b/scripts/convert-ly.py @@ -1840,6 +1840,8 @@ Grob::preset_extent removed. def conv (str): + str = re.sub (r'(\\property[^=]+)=\s*([-0-9]+)', + r'\1= #\2', str) str = re.sub (r'\\property\s+([^. ]+)\s*\.\s*([^\\=]+)\s*\\(set|override)', r"\\overrid@ \1.\2 ", str) str = re.sub (r'\\property\s+([^. ]+)\s*\.\s*([^\\= ]+)\s*=\s*', @@ -2242,6 +2244,17 @@ conversions.append (((2, 3, 23), conv, '''\context Foo = NOTENAME -> \context Foo = "NOTENAME"''')) +def conv (str): + def sub(m): + return regularize_id (m.group (1)) + str = re.sub (r'(maintainer_email|maintainer_web|midi_stuff|gourlay_maxmeasures)', + sub, str) + return str + +conversions.append (((2, 3, 24), + conv, + '''regularize other identifiers.''')) + def conv (str): return str diff --git a/stepmake/stepmake/install-targets.make b/stepmake/stepmake/install-targets.make index 0eaa54f4a0..762a509b4e 100644 --- a/stepmake/stepmake/install-targets.make +++ b/stepmake/stepmake/install-targets.make @@ -7,12 +7,12 @@ local-install-outfiles: local-install-files: $(INSTALLATION_FILES) $(PRE_INSTALL) -$(INSTALL) -d $(INSTALLATION_DIR) - $(foreach i, $(INSTALLATION_FILES),\ - $(INSTALL) -m 644 $(i) $(INSTALLATION_DIR)/ &&)true + for i in $(INSTALLATION_FILES); do \ + $(INSTALL) -m 644 $$i $(INSTALLATION_DIR)/ ; done $(foreach suff, $(INSTALLATION_SUFFIXES), \ ($(INSTALL) -d $(INSTALLATION_DIR$(suff)) || true) && \ - $(foreach i, $(INSTALLATION_FILES$(suff)), \ - $(INSTALL) -m 644 $(i) $(INSTALLATION_DIR$(suff))/ && ) && ) true + for i in $(INSTALLATION_FILES$(suff)); do \ + $(INSTALL) -m 644 $$i $(INSTALLATION_DIR$(suff))/; done ) $(POST_INSTALL) local-uninstall: local-uninstall-outfiles local-uninstall-files -- 2.39.5