mudela(fragment,verbatim,center)(
[a'8 a'] [a'16 a' a' a']
)
-If you want to put beams over chords, you will find that the obvious
-construction does not work. You must do the following:
-mudela(fragment,verbatim,center)(<[a'8 c''> b' <c'' e''> <a' c'']>)
-The bracket characters must appear immediately adjacent to a note.
-
-In order to create triplets, you must use a length multiplier after
-the brackets. An open bracket code([) followed by a fraction
-instructs LilyPond to print a number over the beam, and it also
-starts multiplying all note lengths by the fraction. The closing
-bracket code(]) should be followed by the fraction code(1/1) in order
-to restore normal note lengths. To create a triplet without a beam,
-place a backslace code(\) before the opening and closing brackets.
-
-For example, in an ordinary triplet, the notes have duration 2/3 as
-long as normal.
-mudela(fragment,verbatim,center)(
-[2/3 a'8 a' a' ]1/1 \[2/3 b'4 b' b'\]1/1
-)
-
-There is a shorthand that can be used when you
-want notes lengths multiplied by 2/n.
-The 2 can be omitted after the open bracket
-and the first 1 can be omitted after the closing bracket.
-mudela(fragment,verbatim,center)(
-[/3 b'8 b' b' ]/1 \[/3 a'4 a'8\]/1
-)
-COMMENT(This next bit needs to be fixed...or the language needs to be
-fixed.)
-
-Here is a combination
-mudela(fragment,verbatim,center)(
-[/3 a'8 a'16 a'] a'8 \]
-)
+[EXPLAIN TUPLETS HERE]
Another type of spanner is the slur. Slurs connects chords and try to
avoid crossing stems. A slur is started with code(CHAR(40)) and stopped with
A tie connects two adjacent note heads. When used with chords, it
connects all of the note heads. Ties are indicated using the tilde symbol
-code(~) by analogy with TeX()'s tie which connects words. For ties
-between chords, the input convention is somewhat peculiar. You cannot
-write code(<c g>~<c g>), but rather must put the tilde after
-a note within the first chord.
+code(~) by analogy with TeX()'s tie which connects words.
mudela(fragment,verbatim,center)(
-e' ~ e' <c'~ e' g'><c' e' g'>
+e' ~ e' <c' e' g'> ~ <c' e' g'>
)
between two notes, begin with code([:)var(length) and end with code(]).
The tremolo marks will appear instead of beams. Putting more than two
notes in such a construction will produce odd effects.
-mudela(fragment,verbatim,center)(
+
+[TREMOLO BEAMS TEMPORARILY OUT OF ORDER]
+
+COMMENT(mudela (fragment,verbatim,center)(
c'2:8 c':32 [:16 e'1 g'] [:8 e'4 f']
-)
+))
COMMENT(
Is the last paragraph correct? Is it called "tremolo"? Why is
"abbreviation" used? (What is the unabreviated form?)
-
-mudela(fragment,verbatim,center)(
+COMMENT(
+mudela (fragment,verbatim,center)(
c'4:32 [:16 c'8 d'8]
-)
+))
)
[c'8 c'] [c'16 c' c' c'] [c'16. c'32 c' c'16.]
)
+The brackets themselves have no duration, so they are grammatically
+equivalent to the barcheck.
+
dit(Tie) LilyPond's tie is entered as a tilde, `code(~)', in analogy
with TeX()'s tie (which ties together words with a space), The tie is
similar to the slur: it looks like a slur, but a slur connects whole
chords, whereas the tie connects note heads.
-The input convention for the tilde is somewhat peculiar when used in
-conjunction with chords. Internally, the extra information that is
-represented by the tilde has to be attached to a note (or to a rest,
-for that matter). For this reason, you can't put the tilde between
-two chords (as in code(<c' g'> ~nop( )<c' g'>)). The tilde sign must be
-directly after a note of the chords. It does not matter which
-one. The following example demonstrates the use of ties:
+The following example demonstrates the use of ties:
mudela(fragment,verbatim,center)(
c''1 ~ c''4
- <c'2. ~ g' es''> <c'4 g' es''>
+ <c'2. g' es''> ~ <c'4 g' es''>
)
+Since the tie is thought to be inbetween the notes, it has no
+duration, and is grammatically equivalent to the barcheck.
+
dit(Hairpins)
Crescendi and decrescendi can be printed in hairpin style. The
starting marker for the crescendo is code(\<), and for the decrescendo
contexts, and it adds a brace to the output at the
nop(left.)footnote(The GrandStaff is quite limited, LilyPond can not
do cross staff beaming and slurring.)
-
- A code(GrandStaff) context can contain code(Staff)s. Typically, it
+
+ A code(GrandStaff) context can contain code(Staff)s. Typically, it
will contain two code(Staff)s, one treble staff, and one bass
staff. The bar lines of the contained staffs are connected
vertically.
marks to.
mudela(verbatim)(
- bach = \notes \relative c { [g16 d' b' a] [b d, b' d,] }
-
+ bach = \notes \relative c { g16 d' b' a b d, b' d, }
+ bachBeams = \notes { [s4] [s4] }
staffStuff = \notes { \clef bass; \time 4/4; s1 \bar "|."; }
slursOne = \notes { s16( s s s s16 s s )s }
slursTwo = \notes { s16-. s s() s s16() s s ()s }
\score{
- { < \type Voice = celloVoice { \bach \bach }
- \type Voice = celloVoice { \slursOne \slursOne }
+
+
+ { <
+ \type Voice = celloVoice { \bach \bach}
+ \type Voice = celloVoice < { \slursOne \slursOne }
+ { \bachBeams \bachBeams } >
\staffStuff
>
<
\type Voice = celloVoice { \bach \bach }
- \type Voice = celloVoice { \slursTwo \slursTwo }
+ \type Voice = celloVoice < { \slursTwo \slursTwo }
+ { \bachBeams \bachBeams } >
\staffStuff
>
}
ln -sf $LILYPOND_SOURCEDIR/buildscripts/ps-to-gifs.sh $prefix/bin/ps-to-gifs
ln -sf $LILYPOND_SOURCEDIR/mf/out/ afm
mkdir -p $prefix/share/lilypond
-ln -sf $LILYPOND_SOURCEDIR/scm $prefix/share/lilypond
+ln -sf $LILYPOND_SOURCEDIR/ $prefix/share/lilypond
+
if [ -f ../.gdbinit ];
then
ln ../.gdbinit .
% Toplevel initialisation file.
-\version "1.0.10";
+\version "1.0.14";
\include "declarations.ly"
% Toplevel initialisation file.
-\version "1.0.10";
+\version "1.0.14";
\include "declarations.ly";
% Toplevel initialisation file.
-\version "1.0.10";
+\version "1.0.14";
\include "declarations.ly"
% Toplevel initialisation file.
-\version "1.0.10";
+\version "1.0.14";
\include "declarations.ly"
\consists "Dot_column_engraver";
\consists "Stem_engraver";
% \consists "Plet_engraver";
- \consists "Beam_engraver";
+ \consists "Command_beam_engraver";
\consists "Abbreviation_beam_engraver";
\consists "Multi_measure_rest_engraver";
\consists "Script_engraver";
\consists "Rhythmic_column_engraver";
\consists "Font_size_engraver";
\consists "Slur_engraver";
- \consists "Ties_engraver";
+ \consists "Command_tie_engraver";
\consists "Tuplet_engraver";
\consists "Note_heads_engraver" ;
\consists "Skip_req_swallow_translator";
% Toplevel initialisation file.
-\version "1.0.10";
+\version "1.0.14";
\include "declarations.ly"
% Toplevel initialisation file.
-\version "1.0.12";
+\version "1.0.14";
\include "declarations.ly"
% Toplevel initialisation file.
-\version "1.0.10";
+\version "1.0.14";
\include "declarations.ly";
-\version "1.0.10";
+\version "1.0.14";
paper_sixteen = \paper {
staffheight = 16.0\pt;
\include "table13.ly";
\include "table16.ly";
-\version "1.0.10";
+\version "1.0.14";
paper_twenty = \paper {
staffheight = 20.0\pt;
%hmm, (these) abbrevs suck, imo
% i guess they're meant as some form of doco
% that's what i use them for...
-stemup = {
+stemup = \notes {
+ s1*0
% Stupid hack to make < { \stemup } > work
\property Voice.ydirection = \up
}
-stemboth= {
+stemboth= \notes {
+ s1*0
\property Voice.ydirection = \center
}
-stemdown = {
+stemdown = \notes {
+ s1*0
\property Voice.ydirection = \down
}
-slurup = {
+slurup = \notes {
+ s1*0
\property Voice.slurydirection = \up
}
-slurboth= {
+slurboth= \notes {
+ s1*0
\property Voice.slurydirection = \center
}
-slurdown = {
+slurdown = \notes {
+ s1*0
\property Voice.slurydirection = \down
}
-\version "1.0.12";
+\version "1.0.14";
scales = \notes\transpose c''{
f2 f f f f f f f f f\break
% scales with accents.
%
-\version "1.0.10";
+\version "1.0.14";
blah = \notes {
\time 6/8;
\transpose c {
-\version "1.0.10";
+\version "1.0.14";
one = \notes\relative c{
c'' d e f
-\version "1.0.10";
+\version "1.0.14";
blah = \notes {
Tested Features: example file with comments
%}
-\version "1.0.10";
+\version "1.0.14";
% the % is a comment.
copyright = "public domain";
}
-% \version "1.0.10";
+% \version "1.0.14";
global = \notes {
\key g;
\type Voice=i
\clef "alto";
[g8(b)g] | [b(e,)b'] | [c,(a')c,] | [c'(d,)c'] | [b(d)b] |
- [e(g,)e'] | [e(e,<)a' c,]> | <[a(c,> <fis b,> )b,] |
+ [e(g,)e'] | [e(e,<)a' c,>] | <[a(c,> <fis b,> )b,] |
}
cello = \notes\relative c'{
-\version "1.0.10";
+\version "1.0.14";
part = \notes {
c-1 c c c
r1*3
% \lbheel \lbheel \lfheel \lftoe
% \rbheel \rbtoe \rfheel \rftoe
-\version "1.0.10";
+\version "1.0.14";
\score{
\notes {
* organ staff...
%}
-\version "1.0.10";
+\version "1.0.14";
% 13
\type Staff <
- { \stemup r4 dis' cis cis ~ |
+ \type VoiceOne { \stemup r4 dis' cis cis ~ |
[cis8 a d cis] [bis gis] cis4 |
dis2 cis4 r8 cis }
- { \stemup bis2 }
- { \stemup \shifton r4 gis ~ [gis8 gis] ~ \stemdown \shiftoff gis4 |
+ \type VoiceOne { \stemup bis2 }
+ \type VoiceThree { \stemup \shifton r4 gis ~ [gis8 gis] ~ \stemdown \shiftoff gis4 |
a4. fis8 gis4. a8 ~ |
a4 gis4 gis r8 gis }
% { \stemup \shifton s4 fis4 e}
% a quick hack to avoid some collisons
- { \stemdown \shifton s4 fis4 e}
- { \stemdown s4 dis4 cis4 }
+ \type VoiceFour { \stemdown \shifton s4 fis4 e}
+ \type VoiceTwo { \stemdown s4 dis4 cis4 }
> |
%16
}
\praeludium_pedal \breakmusic \fugaII_pedal }
>
- \paper{}
+ \paper {
+ \translator {
+ \VoiceContext
+ \name "BLA";
+ }
+ \translator {
+ \VoiceContext
+ \name "VoiceOne";
+ ydirection = "1";
+ }
+ \translator {
+ \VoiceContext
+ \name "VoiceTwo";
+ ydirection = "-1";
+ }
+ \translator {
+ \VoiceContext
+ \name "VoiceThree";
+ ydirection = "1";
+ hshift = "1";
+ }
+ \translator {
+ \VoiceContext
+ \name "VoiceFour";
+ ydirection = "-1";
+ hshift = "1";
+ }
+
+ }
\midi {
\tempo 4 =96; }
-\version "1.0.10";
+\version "1.0.14";
ritme = \notes\transpose c'' {
\time 4/4;
% scales with accents.
%
-\version "1.0.10";
+\version "1.0.14";
blah = \notes {
\time 6/8;
\transpose c {
-\version "1.0.10";
+\version "1.0.14";
blah = \notes{ \transpose c'' {
-\version "1.0.10";
+\version "1.0.14";
\score{
\notes \transpose c'''{
\stemup
-\version "1.0.10";
+\version "1.0.14";
onestaff = \type Staff = foo\notes {
\property Staff.instr = instr
-\version "1.0.10";
+\version "1.0.14";
\score{
\notes\transpose c'{
\property Score.beamquantisation = \none
- [a'8 <a' g'']>
- [c <c e,]>
- [a'16 <a' g'']>
- [c <c e,]>
- [a'32 <a' g'']>
- [c <c e,]>
+ [a'8 <a' g''>]
+ [c <c e,>]
+ [a'16 <a' g''>]
+ [c <c e,>]
+ [a'32 <a' g''>]
+ [c <c e,>]
}
\paper{
castingalgorithm = \Wordwrap;
-\version "1.0.10";
+\version "1.0.14";
\score{
\notes\transpose c''{
TestedFeatures = "beams and beamflags";
}
-\version "1.0.10";
+\version "1.0.14";
\score{
<
"(Feta definitively is not an abbreviation of Font-En-TjA)";
}
-\version "1.0.10";
+\version "1.0.14";
shortlong = \notes{
c4()c( c c |
-\version "1.0.12";
+\version "1.0.14";
%{
Would this be acceptable/good enough/convenient for entry?
-\version "1.0.12";
+\version "1.0.14";
%{
Would this be acceptable/good enough/convenient for entry?
-\version "1.0.10";
+\version "1.0.14";
\score {
\notes{
copyright = "public domain";
Tested = "test the Collision resolution ";
}
-\version "1.0.10";
+\version "1.0.14";
-\version "1.0.10";
+\version "1.0.14";
\score {
\include "paper20.ly"
-\version "1.0.10";
+\version "1.0.14";
oden = \lyrics{
O8 |
-\version "1.0.10";
+\version "1.0.14";
\score{
\notes{
-\version "1.0.10";
+\version "1.0.14";
\score{
\notes \relative c {
-\version "1.0.10";
+\version "1.0.14";
FontBody= \notes\transpose c''{
\bar "|:";
% "(Feta definitively is not an abbreviation of Font-En-TjA)";
}
-\version "1.0.10";
+\version "1.0.14";
\include "font-body.ly"
\score{
% "(Feta definitively is not an abbreviation of Font-En-TjA)";
}
-\version "1.0.10";
+\version "1.0.14";
\include "font-body.ly"
\score{
TestedFeatures = "This file tests some nasty Gourlay spacings";
}
-\version "1.0.10";
+\version "1.0.14";
%{
-\version "1.0.10";
+\version "1.0.14";
\include "table13.ly";
\include "table16.ly";
-\version "1.0.10";
+\version "1.0.14";
toeter_i = \notes\relative c {
\property Staff.instrument = "Toeters"
-\version "1.0.10";
+\version "1.0.14";
%{
test key itemv breaking
-\version "1.0.10";
+\version "1.0.14";
\score{
\notes\relative c'{
[c16 \stemdown c'' \stemboth c,, d]
-\version "1.0.10";
+\version "1.0.14";
global = \notes {
s1 | \mark "A";
-\version "1.0.10";
+\version "1.0.14";
voice_one = \notes\transpose c' { \stemup
R1 * 2 | f'4-. r r2 | R1 * 3 |
-\version "1.0.10";
+\version "1.0.14";
\score {
-\version "1.0.10";
+\version "1.0.14";
onestaff = \type Staff = foo\notes {
\property Staff.instr = instr
"(Feta definitively is not an abbreviation of Font-En-TjA)";
}
-\version "1.0.10";
+\version "1.0.14";
shortlong = \notes{
c4()c( c c |
-\version "1.0.10";
+\version "1.0.14";
% bug
% excentric slur can't handle this ...
% test damping
-\version "1.0.10";
+\version "1.0.14";
\score{
\notes\relative c'{
-\version "1.0.10";
+\version "1.0.14";
% urg, the direction of the slur gets swapped!
\score{
-\version "1.0.10";
+\version "1.0.14";
\score{
\notes\transpose c'{
TestedFeatures = "This file tests various spacings";
}
-\version "1.0.10";
+\version "1.0.14";
multipart = \notes{
\type StaffGroup <
}
-\version "1.0.10";
+\version "1.0.14";
beamintervals = \notes{
\time 7/4;
-\version "1.0.10";
+\version "1.0.14";
$somewhat_long = \lyrics{
\property Lyrics . textstyle = "roman"
% the thumb-script is used in cello music to indicate a note that should
% be played with your thumb.
-\version "1.0.10";
+\version "1.0.14";
\score { \notes \relative c'' {
- <[ a8_\thumb a'8-3(> <)b_\thumb b'-3>
- <c_\thumb c'-3(> <)d_\thumb d'-3]>
+ [<a8_\thumb a'8-3(> <)b_\thumb b'-3>
+ <c_\thumb c'-3(> <)d_\thumb d'-3>]
}
\paper{
linewidth = 80.\mm;
-\version "1.0.10";
+\version "1.0.14";
% middle tie is wrong
\score{
\notes\relative c'{
- { <c4 e g~ > <d f a>
+ { <c4 e g > ~ <d f a>
}
}}
-\version "1.0.10";
+\version "1.0.14";
tie = \notes\transpose c''{
instrument= "Instrument";
}
-\version "1.0.10";
+\version "1.0.14";
\score{
\notes
}
-\version "1.0.10";
+\version "1.0.14";
vOne = \notes \relative c''{
\clef"violin";
-\version "1.0.10";
+\version "1.0.14";
\score {
\notes <
"(Feta definitively is not an abbreviation of Font-En-TjA)";
}
-\version "1.0.10";
+\version "1.0.14";
\score{
\notes{
Tested Features lyrics and chords
%}
-\version "1.0.12";
+\version "1.0.14";
melodie = \notes\relative c'' {
\clef "violin";
Tested Features: lyrics, interleaving lyrics and staffs
%}
-\version "1.0.10";
+\version "1.0.14";
melody = \notes \relative c'' {
\clef violin;
if (stem_l_ && stem_l_->beam_l_) {
slope_f = stem_l_->beam_l_->slope_f_;
// ugh, rather calc from Abbreviation_req
- beams_i = stem_l_->beams_right_i_ >? stem_l_->beams_left_i_;
+ beams_i = stem_l_->beams_i_drul_[RIGHT] >? stem_l_->beams_i_drul_[LEFT];
}
Real sl = slope_f * internote_f;
if (!b)
return false;
- if (bool (abeam_p_) == bool (b->spantype == Span_req::START))
+ if (bool (abeam_p_) == bool (b->spantype_ == START))
return false;
Direction d = (!abeam_p_) ? LEFT : RIGHT;
int type_i = span_reqs_drul_[LEFT]->type_i_;
s->flag_i_ = intlog2 (type_i) - 2;
- if (span_reqs_drul_[RIGHT])
- s->beams_left_i_ = s->flag_i_;
- else
- s->beams_right_i_ = s->flag_i_;
+ s->beams_i_drul_[(span_reqs_drul_[RIGHT]) ? LEFT: RIGHT] = s->flag_i_;
abeam_p_->multiple_i_ = s->flag_i_;
if (s->type_i () != 1) // no abbrev gaps on half note
if (!b)
return false;
- if (bool (beam_p_) == bool (b->spantype == Span_req::START))
+ if (bool (beam_p_) == bool (b->spantype_ == START))
return false;
Direction d = (!beam_p_) ? LEFT : RIGHT;
for (int j=0, i=0; i < b.size () && j <stems_.size (); i+= 2, j++)
{
Stem *s = stems_[j];
- s->beams_left_i_ = b[i];
- s->beams_right_i_ = b[i+1];
+ s->beams_i_drul_[LEFT] = b[i];
+ s->beams_i_drul_[RIGHT] = b[i+1];
multiple_i_ = multiple_i_ >? (b[i] >? b[i+1]);
}
}
/* half beams extending to the left. */
if (prev)
{
- int lhalfs= lhalfs = here->beams_left_i_ - prev->beams_right_i_ ;
- int lwholebeams= here->beams_left_i_ <? prev->beams_right_i_ ;
+ int lhalfs= lhalfs = here->beams_i_drul_[LEFT] - prev->beams_i_drul_[RIGHT] ;
+ int lwholebeams= here->beams_i_drul_[LEFT] <? prev->beams_i_drul_[RIGHT] ;
/*
Half beam should be one note-width,
but let's make sure two half-beams never touch
if (next)
{
- int rhalfs = here->beams_right_i_ - next->beams_left_i_;
- int rwholebeams = here->beams_right_i_ <? next->beams_left_i_;
+ int rhalfs = here->beams_i_drul_[RIGHT] - next->beams_i_drul_[LEFT];
+ int rwholebeams = here->beams_i_drul_[RIGHT] <? next->beams_i_drul_[LEFT];
Real w = next->hpos_f () - here->hpos_f ();
Atom a = lookup_l ()->beam (sl, w + stemdx, beam_f);
--- /dev/null
+/*
+ cbeam-engraver.cc -- implement Command_beam_engraver
+
+ source file of the GNU LilyPond music typesetter
+
+ (c) 1998 Han-Wen Nienhuys <hanwen@cs.uu.nl>
+
+ */
+
+#include "cbeam-engraver.hh"
+#include "musical-request.hh"
+#include "beam.hh"
+#include "grouping.hh"
+#include "stem.hh"
+#include "warn.hh"
+#include "time-description.hh"
+
+Command_beam_engraver::Command_beam_engraver ()
+{
+ beam_p_ = 0;
+ finished_beam_p_ =0;
+ finished_grouping_p_ = 0;
+ grouping_p_ =0;
+ reqs_drul_[LEFT] = reqs_drul_[RIGHT] =0;
+}
+
+bool
+Command_beam_engraver::do_try_music (Music *m)
+{
+ if (Beam_req * c = dynamic_cast<Beam_req*>(m))
+ {
+ reqs_drul_[c->spantype_] = c;
+ return true;
+ }
+ return false;
+}
+
+
+void
+Command_beam_engraver::do_process_requests ()
+{
+ if (reqs_drul_[STOP])
+ {
+ if (!beam_p_)
+ reqs_drul_[STOP]->warning (_("No beam to stop"));
+ finished_beam_p_ = beam_p_;
+ finished_grouping_p_ = grouping_p_;
+
+ beam_p_ = 0;
+ grouping_p_ = 0;
+ }
+
+ if (reqs_drul_[START])
+ {
+ beam_p_ = new Beam;
+ grouping_p_ = new Rhythmic_grouping;
+
+ Scalar prop = get_property ("beamslopedamping");
+ if (prop.isnum_b ())
+ beam_p_->damping_i_ = prop;
+
+ prop = get_property ("beamquantisation");
+ if (prop.isnum_b ())
+ beam_p_->quantisation_ = (Beam::Quantisation)(int)prop;
+
+ announce_element (Score_element_info (beam_p_, reqs_drul_[START]));
+ }
+}
+
+void
+Command_beam_engraver::typeset_beam ()
+{
+ if (finished_beam_p_)
+ {
+ Rhythmic_grouping const * rg_C = get_staff_info().rhythmic_C_;
+ rg_C->extend (finished_grouping_p_->interval());
+ finished_beam_p_->set_grouping (*rg_C, *finished_grouping_p_);
+ typeset_element (finished_beam_p_);
+ finished_beam_p_ = 0;
+
+ delete finished_grouping_p_;
+ finished_grouping_p_= 0;
+
+ reqs_drul_[STOP] = 0;
+ }
+}
+
+void
+Command_beam_engraver::do_post_move_processing ()
+{
+ reqs_drul_ [START] =0;
+}
+
+void
+Command_beam_engraver::do_pre_move_processing ()
+{
+ typeset_beam ();
+}
+
+void
+Command_beam_engraver::do_removal_processing ()
+{
+ typeset_beam ();
+ finished_beam_p_ = beam_p_;
+ finished_grouping_p_ = grouping_p_;
+ typeset_beam ();
+}
+
+void
+Command_beam_engraver::acknowledge_element (Score_element_info info)
+{
+ if (beam_p_)
+ {
+ Stem* stem_l = dynamic_cast<Stem *> (info.elem_l_);
+ if (!stem_l)
+ return;
+
+
+ Rhythmic_req *rhythmic_req = dynamic_cast <Rhythmic_req *> (info.req_l_);
+ if (!rhythmic_req)
+ {
+ String s=_("Stem must have Rhythmic structure.");
+ if (info.req_l_)
+ info.req_l_->warning(s);
+ else
+ ::warning (s);
+
+ return;
+ }
+
+
+ if (rhythmic_req->duration_.durlog_i_<= 2)
+ {
+ rhythmic_req->warning (_ ("stem doesn't fit in beam"));
+ return;
+ }
+
+ /*
+ TODO: do something sensible if it doesn't fit in the beam.
+ */
+ Moment start = get_staff_info().time_C_->whole_in_measure_;
+
+ if (!grouping_p_->child_fit_b (start))
+ {
+ String s (_("please fix me") + ": "
+ + _f ("stem at %s doesn't fit in beam", now_moment ().str ()));
+
+ if (info.req_l_)
+ info.req_l_->warning(s);
+ else
+ warning (s);
+ }
+ else
+ {
+ grouping_p_->add_child (start, rhythmic_req->duration ());
+ stem_l->flag_i_ = rhythmic_req->duration_.durlog_i_;
+ beam_p_->add_stem (stem_l);
+ }
+ }
+}
+
+
+
+ADD_THIS_TRANSLATOR(Command_beam_engraver);
{
if (first_b_)
{
- bool success = report_to_l ()->try_music (dynamic_cast<Compressed_music const*> (music_l_));
+ bool success = report_to_l ()->try_music (dynamic_cast<Compressed_music const*> (music_l_));
if (!success)
music_l_->warning ( _("No one to print a tuplet start bracket"));
}
#include "command-request.hh"
#include "note-head.hh"
#include "musical-request.hh"
+#include "tie.hh"
Command_tie_engraver::Command_tie_engraver()
{
void
Command_tie_engraver::do_process_requests ()
{
-
+ if (req_l_)
+ {
+ Moment now = now_moment ();
+ Link_array<Note_head> nharr;
+
+ stopped_heads_.clear ();
+ while (past_notes_pq_.size ()
+ && past_notes_pq_.front ().end_ == now)
+ stopped_heads_.push (past_notes_pq_.get ());
+
+ }
}
void
-Command_tie_engraver::processed_acknowledged ()
+Command_tie_engraver::process_acknowledged ()
{
+ if (req_l_)
+ {
+ if (now_heads_.size () != stopped_heads_.size ())
+ {
+ req_l_->warning ("Unequal number of note heads for tie");
+ }
+ int sz = now_heads_.size () <? stopped_heads_.size ();
+
+ // hmm. Should do something more sensible.
+ // because, we assume no more noteheads come along after the 1st pass.
+ if (sz > tie_p_arr_.size ())
+ {
+ now_heads_.sort (CHead_melodic_tuple::pitch_compare);
+ stopped_heads_.sort(CHead_melodic_tuple::pitch_compare);
+
+ for (int i=0; i < sz; i++)
+ {
+ Tie * p = new Tie;
+ p->set_head (LEFT, stopped_heads_[i].head_l_);
+ p->set_head (RIGHT, now_heads_[i].head_l_);
+ tie_p_arr_.push (p);
+ announce_element (Score_element_info (p, req_l_));
+ }
+ }
+ }
}
void
{
past_notes_pq_.insert (now_heads_[i]);
}
+ now_heads_.clear( );
+
+ for (int i=0; i< tie_p_arr_.size (); i++)
+ {
+ typeset_element (tie_p_arr_[i]);
+ }
+ tie_p_arr_.clear ();
}
void
Command_tie_engraver::do_post_move_processing ()
{
+ req_l_ =0;
Moment now = now_moment ();
- while (past_notes_pq_.front ().end_ < now)
+ while (past_notes_pq_.size () && past_notes_pq_.front ().end_ < now)
past_notes_pq_.delmin ();
}
}
else if (Span_dynamic_req *span_l = dynamic_cast <Span_dynamic_req *> (dreq_l))
{
- if (span_l->spantype == Span_req::STOP)
+ if (span_l->spantype_ == STOP)
{
if (!cresc_p_)
{
cresc_p_ = 0;
}
}
- else if (span_l->spantype == Span_req::START)
+ else if (span_l->spantype_ == START)
{
cresc_req_l_ = span_l;
assert (!new_cresc_p);
{
if (Extender_req* p = dynamic_cast <Extender_req *> (req_l))
{
- if (bool (extender_spanner_p_) == bool (p->spantype == Span_req::START))
+ if (bool (extender_spanner_p_) == bool (p->spantype_ == START))
return false;
Direction d = (!extender_spanner_p_) ? LEFT : RIGHT;
--- /dev/null
+/*
+ cbeam-engraver.hh -- declare Command_beam_engraver
+
+ source file of the GNU LilyPond music typesetter
+
+ (c) 1998 Han-Wen Nienhuys <hanwen@cs.uu.nl>
+
+ */
+
+#ifndef CBEAM_ENGRAVER_HH
+#define CBEAM_ENGRAVER_HH
+
+#include "engraver.hh"
+#include "drul-array.hh"
+
+class Command_beam_engraver : public Engraver {
+ Drul_array<Beam_req*> reqs_drul_;
+
+ Beam *finished_beam_p_;
+ Beam *beam_p_;
+
+ Rhythmic_grouping*grouping_p_;
+ Rhythmic_grouping*finished_grouping_p_;
+
+ void typeset_beam ();
+protected:
+ virtual void do_pre_move_processing ();
+ virtual void do_post_move_processing ();
+ virtual void do_removal_processing ();
+ virtual void acknowledge_element (Score_element_info);
+ virtual bool do_try_music (Music*);
+ virtual void do_process_requests ();
+public:
+ Command_beam_engraver ();
+ VIRTUAL_COPY_CONS (Translator);
+};
+
+#endif /* CBEAM_ENGRAVER_HH */
+
REQUESTMETHODS(Bracket_req);
};
+
#endif // COMMANDREQUEST_HH
PQueue<CHead_melodic_tuple> past_notes_pq_;
Command_tie_req *req_l_;
Array<CHead_melodic_tuple> now_heads_;
+ Array<CHead_melodic_tuple> stopped_heads_;
+ Link_array<Tie> tie_p_arr_;
+
protected:
virtual void do_post_move_processing ();
virtual void do_pre_move_processing ();
virtual void acknowledge_element (Score_element_info);
virtual bool do_try_music (Music*);
virtual void do_process_requests ();
- virtual void processed_acknowledged ();
+ virtual void process_acknowledged ();
public:
VIRTUAL_COPY_CONS(Translator);
Command_tie_engraver();
CENTER=0,
SMALLER=-1,
BIGGER=1,
+ START = -1,
+ STOP = 1
};
inline Direction
class Span_req : public virtual Request {
public:
/// should the spanner start or stop, or is it unwanted?
- enum Spantype {
- NOSPAN, START, STOP
- } spantype;
+ Direction spantype_;
bool do_equal_b (Request*) const;
REQUESTMETHODS(Span_req);
*/
Beam* beam_l_;
- int beams_left_i_;
- int beams_right_i_;
+ Drul_array<int> beams_i_drul_;
/// maximum number of beams
int mult_i_;
Span_req::do_print () const
{
#ifndef NPRINT
- DOUT << spantype;
+ DOUT << spantype_;
#endif
}
{
duration_.compress (m);
}
-
-
-
-
-
void
Lyric_req::do_print () const
#endif
}
-
-
void
Rest_req::do_print () const
{
Rhythmic_req::do_print ();
}
-
-
-
-
-
void
Multi_measure_rest_req::do_print () const
{
}
-
-
-
-
void
Beam_req::do_print () const
{
}
-
-
-
Abbreviation_beam_req::Abbreviation_beam_req ()
{
type_i_ = 0;
Span_req::do_equal_b (Request*r) const
{
Span_req * s = dynamic_cast <Span_req *> (r);
- return s && spantype == s->spantype;
+ return s && spantype_ == s->spantype_;
}
Span_req::Span_req ()
{
- spantype = NOSPAN;
+ spantype_ = CENTER;
}
Script_req::Script_req (Script_req const&s)
Script_req::do_equal_b (Request*r) const
{
Script_req * s = dynamic_cast <Script_req *> (r);
-
- return s&& scriptdef_p_->equal_b (*s->scriptdef_p_);
+ return s && scriptdef_p_->equal_b (*s->scriptdef_p_);
}
Script_req::Script_req ()
Script_req::do_print ();
}
-
-
-
-
Script_req::~Script_req ()
{
delete scriptdef_p_;
tdef_p_ = tdef_p;
}
-
-
-
void
Text_req::do_print () const
{
#endif
}
-
-
-
-
void
Skip_req::do_print () const
{
#ifndef NPRINT
-
DOUT << "duration: " << duration ();
#endif
}
-
-
-
-
void
Dynamic_req::do_print () const
{
Musical_req::do_print ();
}
-
-
-
void
Absolute_dynamic_req::do_print () const
{
#endif
}
-
bool
Absolute_dynamic_req::do_equal_b (Request *r) const
{
dynamic_dir_ = CENTER;
}
-
-
-
void
Span_dynamic_req::do_print () const
{
triads.push (mthird); // d f
triads.push (mthird); // e g
triads.push (third); // f a
- // 7 always seems means 7-...
triads.push (third); // g b
-// triads.push (mthird); // g bes
triads.push (mthird); // a c
triads.push (mthird); // b d
}
missing.transpose (triads[(missing.notename_i_ - tonic.notename_i_ + 7) % 7]);
}
+ else if (p.notename_i_ == missing.notename_i_)
+ missing.transpose (triads[(missing.notename_i_ - tonic.notename_i_ + 7) % 7]);
else
i++;
}
case '>':
case '(':
case '[':
- dynamic_cast<Span_req*> (reqs[0])->spantype = Span_req::START;
+ dynamic_cast<Span_req*> (reqs[0])->spantype_ = START;
break;
case '!':
case ')':
case ']':
- dynamic_cast<Span_req*> (reqs[0])->spantype = Span_req::STOP;
+ dynamic_cast<Span_req*> (reqs[0])->spantype_ = STOP;
break;
default:
#include "repeated-music.hh"
// mmm
-Mudela_version oldest_version ("1.0.10");
-Mudela_version version ("1.0.12");
+Mudela_version oldest_version ("1.0.14");
+Mudela_version version ("1.0.14");
// needed for bison.simple's malloc() and free()
%type <scope> mudela_header mudela_header_body
%type <box> box
%type <i> open_request_parens close_request_parens
-%type <i> open_abbrev_parens
%type <i> sub_quotes sup_quotes
%type <music> simple_element request_chord command_element Simple_music Composite_music
%type <music> Alternative_music Repeated_music
| MUSIC_IDENTIFIER { $$ = $1->access_content_Music (true); }
| property_def
| translator_change
- | Simple_music '*' unsigned '/' unsigned { }
- | Simple_music '*' unsigned { }
-
+ | Simple_music '*' unsigned '/' unsigned {
+ /* urg */
+ $$ = new Compressed_music ($3, $5, $1);
+ }
+ | Simple_music '*' unsigned {
+ $$ = new Compressed_music ($3, 1, $1);
+ }
;
| COMMAND_IDENTIFIER {
$$ = $1->access_content_Request (true);
}
-/* TODO */
-/* | '~' {
+ | '~' {
$$ = new Command_tie_req;
}
| '[' {
- $$ = new Beam_req;
- $$->spantype = Span_req::START;
+ Beam_req*b= new Beam_req;
+ b->spantype_ = START;
+ $$ =b;
}
| ']' {
- $$ = new Beam_req;
- $$->spantype = Span_req::STOP;
+ Beam_req*b= new Beam_req;
+ b->spantype_ = STOP;
+ $$ = b;
}
-*/
;
if (!THIS->lexer_p_->lyric_state_b ())
THIS->parser_error (_ ("have to be in Lyric mode for lyrics"));
Extender_req * e_p = new Extender_req;
- e_p->spantype = Span_req::START;
+ e_p->spantype_ = START;
$$ = e_p;
THIS->extender_req = e_p;
};
}
| SPANDYNAMIC '{' int int '}' {
Span_dynamic_req * sp_p = new Span_dynamic_req;
- sp_p->spantype = (Span_req::Spantype)$4;
+ sp_p->spantype_ = (Direction)$4;
sp_p-> dynamic_dir_ = (Direction)$3;
$$ = sp_p;
}
close_request_parens:
- '~' {
- $$ = '~';
- }
- | '(' {
+ '(' {
$$='(';
}
- | ']' {
- $$ = ']';
- }
| E_SMALLER {
$$ = '<';
}
}
;
-open_abbrev_parens:
- '[' ':' unsigned {
- $$ = '[';
- if (!Duration::duration_type_b ($3))
- THIS->parser_error (_f ("not a duration: %d", $3));
- else if ($3 < 8)
- THIS->parser_error (_ ("can't abbreviate"));
- else
- THIS->set_abbrev_beam ($3);
- }
- ;
open_request_parens:
| ')' {
$$=')';
}
- | '[' {
- $$='[';
- }
- | open_abbrev_parens
;
if (THIS->extender_req)
{
Extender_req * e_p = new Extender_req;
- e_p->spantype = Span_req::STOP;
+ e_p->spantype_ = STOP;
THIS->pre_reqs.push (e_p);
THIS->extender_req = 0;
}
Beam_req* b = dynamic_cast <Beam_req *> (req_l);
if (b)
{
- if (b->spantype)
+ if (b->spantype_)
{
- Direction d = (Direction)(((int)(b->spantype - 1)) * 2 - 1);
+ Direction d = (Direction)(((int)(b->spantype_ - 1)) * 2 - 1);
beam_mom_drul_[d] = get_staff_info ().musical_l ()->when ();
}
return false;
if (!p)
return false;
- if (bool (plet_spanner_p_) == bool (p->spantype == Span_req::START))
+ if (bool (plet_spanner_p_) == bool (p->spantype_ == START))
return false;
Direction d = (!plet_spanner_p_) ? LEFT : RIGHT;
if (!stem_l)
return;
// no beam
- if (!(stem_l->beams_left_i_ || stem_l->beams_right_i_))
+ if (!(stem_l->beams_i_drul_[LEFT] || stem_l->beams_i_drul_[RIGHT]))
return;
int dir_i = rest_l_arr_[0]->dir_;
{
Slur_req* slur_req_l = new_slur_req_l_arr_[i];
// end slur: move the slur to other array
- if (slur_req_l->spantype == Span_req::STOP)
+ if (slur_req_l->spantype_ == STOP)
{
if (slur_l_stack_.empty())
requests_arr_.pop();
}
}
- else if (slur_req_l->spantype == Span_req::START)
+ else if (slur_req_l->spantype_ == START)
{
// push a new slur onto stack.
//(use temp. array to wait for all slur STOPs)
Stem::~Stem ()
{
}
+
Stem::Stem ()
{
/*
TODO: staff-size
*/
- beam_l_ = 0;
- beams_left_i_ = 0;
- beams_right_i_ = 0;
+ beams_i_drul_[LEFT] = beams_i_drul_[RIGHT] = 0;
mult_i_ = 0;
yextent_drul_[DOWN] = yextent_drul_[UP] = 0;
-LILYPOND_INCLUDES = -Istinho $(include-lib) $(depth)/lib/$(outdir) $(include-flower) $(depth)/flower/$(outdir)
+LILYPOND_INCLUDES = $(include-lib) $(depth)/lib/$(outdir) $(include-flower) $(depth)/flower/$(outdir)
# should use to create .spec ?
"clef" "cm" "consists" "contains" "duration" "absdynamic"
"in" "translator" "type" "lyric" "key" "maininput" "notes"
"musical_pitch" "time" "midi" "mm" "header"
- "notenames" "octave" "output" "partial" "paper" "plet"
+ "notenames" "octave" "output" "partial" "paper" "plet" "name"
"property" "pt" "shape" "relative" "include" "score"
"scm" "scmfile"
"script" "skip" "table" "times" "spandynamic" "symboltables"
copyright = "public domain";
}
-\version "1.0.10";
+\version "1.0.14";
\include "global.ly"
\include "violoncello.ly"
copyright = "public domain";
}
-\version "1.0.10";
+\version "1.0.14";
\include "global.ly"
\include "clarinetti.ly"
}
-\version "1.0.10";
+\version "1.0.14";
\include "clarinetto-1.ly"
\include "clarinetto-2.ly"
}
-\version "1.0.10";
+\version "1.0.14";
clarinetto1 = \notes \relative c {
R1 *2 | d''4-.\ff r r2 | R1 *3 | e4-. r r2 | R1 *3 |
}
-\version "1.0.10";
+\version "1.0.14";
clarinetto2 = \notes \relative c {
R1*2 bes''4-.\ff r r2 | R1*3 | cis4-. r r2 | R1 *3 |
copyright = "public domain";
}
-\version "1.0.10";
+\version "1.0.14";
\include "global.ly"
\include "contrabasso.ly"
copyright = "public domain";
}
-\version "1.0.10";
+\version "1.0.14";
contrabasso = \notes \relative c {
% \translator Staff=violoncello
copyright = "public domain";
}
-\version "1.0.10";
+\version "1.0.14";
\include "global.ly"
copyright = "public domain";
}
-\version "1.0.10";
+\version "1.0.14";
\include "global.ly"
\include "corni.ly"
}
-\version "1.0.10";
+\version "1.0.14";
\include "corno-1.ly"
\include "corno-2.ly"
copyright = "public domain";
}
-\version "1.0.10";
+\version "1.0.14";
corno1 = \notes \relative c {
R1 *2 | f''4-.\ff r r2 | R1 *3 | f4-. r r2 | R1 *3 |
copyright = "public domain";
}
-\version "1.0.10";
+\version "1.0.14";
corno2 = \notes \relative c {
R1 *2 | d''4-.\ff r r2 | R1 *3 | d4-. r r2 | R1 *3 |
}
-\version "1.0.10";
+\version "1.0.14";
\include "global.ly"
\include "fagotti.ly"
}
-\version "1.0.10";
+\version "1.0.14";
\include "fagotto-1.ly"
\include "fagotto-2.ly"
}
-\version "1.0.10";
+\version "1.0.14";
fagotto1 = \notes \relative c {
R1 *2 | as'4-.\ff r r2 | R1 *3 | as4-. r r2 | R1 *3 |
copyright = "public domain";
}
-\version "1.0.10";
+\version "1.0.14";
fagotto2 = \notes \relative c {
R1 *2 | f4-.\ff r r2 | R1 *3 | f4-. r r2 | R1 *3 |
}
-\version "1.0.10";
+\version "1.0.14";
\include "global.ly"
\include "flauti.ly"
}
-\version "1.0.10";
+\version "1.0.14";
\include "flauto-1.ly"
\include "flauto-2.ly"
copyright = "public domain";
}
-\version "1.0.10";
+\version "1.0.14";
flauto1 = \notes \relative c {
R1 *2 | c'''4-.\ff r r2 | R1 *3 | d4-. r r2 | R1 *3 |
copyright = "public domain";
}
-\version "1.0.10";
+\version "1.0.14";
flauto2 = \notes \relative c {
R1 *2 | as'''4-.\ff r r2 | R1 *3 | b4-. r r2 | R1 *3 |
}
-\version "1.0.10";
+\version "1.0.14";
global = \notes {
\time 4/4;
copyright = "public domain";
}
-\version "1.0.10";
+\version "1.0.14";
oboe1 = \notes \relative c'' {
R1 *2 | as'4-.\ff r r2 | R1 *3 | as4-. r r2 | R1 *3 |
}
-\version "1.0.10";
+\version "1.0.14";
oboe2 = \notes \relative c{
R1 *2| f''4-.\ff r r2 | R1 *3 | f4-. r r2 | R1 *3 |
}
-\version "1.0.10";
+\version "1.0.14";
\include "global.ly"
\include "oboi.ly"
}
-\version "1.0.10";
+\version "1.0.14";
\include "oboe-1.ly"
\include "oboe-2.ly"
}
-\version "1.0.10";
+\version "1.0.14";
timpani = \notes \relative c {
R1 *2 | c4-.\ff r r2 | R1 *3 | c4-. r r2 | R1 *3 |
}
-\version "1.0.10";
+\version "1.0.14";
\include "global.ly"
\include "trombe.ly"
}
-\version "1.0.10";
+\version "1.0.14";
\include "trombo-1.ly"
\include "trombo-2.ly"
copyright = "public domain";
}
-\version "1.0.10";
+\version "1.0.14";
trombo1 = \notes \relative c {
R1 *2 | c''4-.\ff r r2 | R1 *3 | c4-. r r2 | R1 *3 |
copyright = "public domain";
}
-\version "1.0.10";
+\version "1.0.14";
trombo2 = \notes \relative c {
R1 *2 | c'4-.\ff r r2 | R1 *3 | c4-. r r2 | R1 *3 |
copyright = "public domain";
}
-\version "1.0.10";
+\version "1.0.14";
viola1 = \notes \relative c {
\type Voice=one
copyright = "public domain";
}
-\version "1.0.10";
+\version "1.0.14";
viola2 = \notes \relative c {
% starts on (actualy, most part is on) same staff as viola1
copyright = "public domain";
}
-\version "1.0.10";
+\version "1.0.14";
\include "global.ly"
\include "viola-1.ly"
copyright = "public domain";
}
-\version "1.0.10";
+\version "1.0.14";
\include "global.ly"
\include "violino-1.ly"
copyright = "public domain";
}
-\version "1.0.10";
+\version "1.0.14";
violino1 = \notes \relative c {
c'1\ff ~ | c | <f4-. c'-. as'-.> r r2 | R1 |
g2.\p( as4 | g f d ) bes | bes'2.( c4 |
%55
bes2 )as |
- g4 <bes2-"cresc." bes'> <bes4 bes'~> |
- <bes-"cresc." bes'> <bes2 bes'> <bes4 bes'~> |
- <bes bes'> <bes2 bes'> <bes4 bes'~> |
+ g4 <bes2-"cresc." bes'> <bes4 bes' > ~ |
+ <bes-"cresc." bes'> <bes2 bes'> <bes4 bes' > ~ |
+ <bes bes'> <bes2 bes'> <bes4 bes' > ~ |
<bes bes'> <bes2 bes'> <bes4 bes'> |
%60
bes'2:16 bes: | bes: bes: |
[c8 c] c4. c8 c4 ~ |
[c8 c] c4. c8 c4 ~ |
[c8 c] c4. c8 c4 ~ |
- c4.\ff <c8 c,> <c2\sf c,~> |
+ c4.\ff <c8 c,> <c2\sf c, > ~ |
%265
- <c4. c,> <c8 c,> <c2\sf c,~> |
- <c4. c,> <c8 c,> <c2\sf c,~> |
- <c4. c,> <c8 c,> <c2\sf c,~> |
+ <c4. c,> <c8 c,> <c2\sf c, > ~ |
+ <c4. c,> <c8 c,> <c2\sf c, > ~ |
+ <c4. c,> <c8 c,> <c2\sf c, > ~ |
<c4. c,> <c8 c,> <c2\sf c,> |
d4. d8 d2\sf |
%270
copyright = "public domain";
}
-\version "1.0.10";
+\version "1.0.14";
\include "global.ly"
\include "violino-2.ly"
copyright = "public domain";
}
-\version "1.0.10";
+\version "1.0.14";
violino2 = \notes \relative c {
c'1\ff ~ | c | <f4-. c'-. as'-.> r r2 | R1 |
bes4\f r8 es d4 r8 a |
g4 r8 c bes4 r8 f |
es4 r8 a g4 r8 cis |
- <[d16 s> <bes g'> <bes g'> <bes g']> <a4:16 fis':> <a2:16 fis':> |
+ <[d16 s> <bes g'> <bes g'> <bes g'>] <a4:16 fis':> <a2:16 fis':> |
<bes: g':> <bes: g':> |
<bes: g':> <bes: g':> |
<bes: g':> <bes: g':> |
copyright = "public domain";
}
-\version "1.0.10";
+\version "1.0.14";
\include "global.ly"
\include "violoncello.ly"
}
-\version "1.0.10";
+\version "1.0.14";
violoncello = \notes \relative c {
c1\ff ~ | c | f,4-. r r2 | r1 | c'1\ff ~ | c | f,4-. r r2 |
under the Gnu Public Licence.
%}
-\version "1.0.10";
+\version "1.0.14";
$voice_one = \notes \relative c' {
a'2 bes4. [c16 bes] | a4 d ~ d c ~ | c b ~ [b8 a] a4 ~|
}
-\version "1.0.10";
+\version "1.0.14";
\include "paper16.ly";
\include "paper13.ly";
pianoRH=\notes \relative c'' {
\clef "G";
%1
- <[b,8-.(\pp d-. g-.> <b8-. d-. g-.> <b-. d-. g-.> <)b-. d-. g-.]>
- <[b8-. d-. g-.(> <b8-. d-. g-.> <b-. d-. g-.> <)b-. d-. g-.]>
+ <[b,8-.(\pp d-. g-.> <b8-. d-. g-.> <b-. d-. g-.> <)b-. d-. g-.>]
+ <[b8-. d-. g-.(> <b8-. d-. g-.> <b-. d-. g-.> <)b-. d-. g-.>]
|
%2
- <[c d g_"{\it simile}" \< > <c d g> <c d fis> <c d fis]>
- <[c d fis> < \! c d fis > <c d fis> <c d fis]>
+ <[c d g_"{\it simile}" \< > <c d g> <c d fis> <c d fis>]
+ <[c d fis> < \! c d fis > <c d fis> <c d fis>]
%3
|
- <[d f gis \> > <d f gis> <d f gis> < \! d f gis ]>
- <[c e a> <c e a> <e a c> <e a c]>
+ <[d f gis \> > <d f gis> <d f gis> < \! d f gis >]
+ <[c e a> <c e a> <e a c> <e a c>]
|
%4
- <[d a' b> <d a' b> <d g! b> <d g b]>
- <[d g a> <d g a> <d fis a> <d fis a]> |
+ <[d a' b> <d a' b> <d g! b> <d g b>]
+ <[d g a> <d g a> <d fis a> <d fis a>] |
\bar "|:";
%5
- <[b_. d g( \pp > <b_. d g> <b_. d g> <)b_. d g]>
- <[b_. d g(> <b_. d g> <b_. d g> <)b_. d g]>
+ <[b_. d g( \pp > <b_. d g> <b_. d g> <)b_. d g>]
+ <[b_. d g(> <b_. d g> <b_. d g> <)b_. d g>]
|
%6
- <[c d g> <c d g> <c d fis> <c d fis]>
- <[c d fis> <c d fis> < a c dis fis> <a c dis fis]>
+ <[c d g> <c d g> <c d fis> <c d fis>]
+ <[c d fis> <c d fis> < a c dis fis> <a c dis fis>]
|
%7
- <[g c e g> <g c e g> <g c e g> <g c e g ]>
- <[g c e g> <g c e g> <g c e> <g c e]>
+ <[g c e g> <g c e g> <g c e g> <g c e g >]
+ <[g c e g> <g c e g> <g c e> <g c e>]
|
%8
- <[g c e> <g c e> <g b d> <g b d]>
- <[g b d> <g b d> <g b d> <g b d]>
+ <[g c e> <g c e> <g b d> <g b d>]
+ <[g b d> <g b d> <g b d> <g b d>]
|
%9
- <[fis a d> <fis a d> <fis a d> <fis a d]>
- <[g b d> <g b d> <g b d> <g b d]>
+ <[fis a d> <fis a d> <fis a d> <fis a d>]
+ <[g b d> <g b d> <g b d> <g b d>]
|
%10
- <[ g a c d \> > <g a c d> <fis a c d> <\! fis a c d ]>
- <[g b d> <g b d><g b d><g b d]>
+ [< g a c d \> > <g a c d> <fis a c d> <\! fis a c d >]
+ <[g b d> <g b d><g b d><g b d>]
|
%11
- <[g a c d> <g a c d> <fis a c d> <fis a c d]>
- <[g b d> <g b d]> <[b d g> <b d g]>
+ <[g a c d> <g a c d> <fis a c d> <fis a c d>]
+ <[g b d> <g b d>] <[b d g> <b d g>]
|
%12
- <[ d fis b> <d fis b><d fis b><d fis b]>
- <[ d fis b> <d fis b><d fis b><d fis b]>
+ [<d fis b> <d fis b><d fis b><d fis b>]
+ [<d fis b> <d fis b><d fis b><d fis b>]
|
%13
- <[e fis b> <e fis b> < e fis ais> <e fis ais]>
- <[e fis ais> <e fis ais> <d fis b> <d fis b]>
+ <[e fis b> <e fis b> < e fis ais> <e fis ais>]
+ <[e fis ais> <e fis ais> <d fis b> <d fis b>]
|
%14
- <[cis g' a!> <cis g' a> <cis a' g> <cis a' g]>
- <[cis g' a> <cis g' a> < e g a> <e g a]>
+ <[cis g' a!> <cis g' a> <cis a' g> <cis a' g>]
+ <[cis g' a> <cis g' a> < e g a> <e g a>]
|
%15
- <[e g a> <e g a> <d fis a> <d fis a]>
- <[d fis a> <d fis a> <d fis a> <d fis a]>
+ <[e g a> <e g a> <d fis a> <d fis a>]
+ <[d fis a> <d fis a> <d fis a> <d fis a>]
|
%16
- <[d fis a> <d fis a> <d fis a> <d fis a]>
- <[d fis a \< > <d fis a> <d fis a> < \! d fis a ]>
+ <[d fis a> <d fis a> <d fis a> <d fis a>]
+ <[d fis a \< > <d fis a> <d fis a> < \! d fis a >]
|
%17
- <[d a' c \> > <d a' c><d a' c>< \! d a' c ]>
- <[d a' c> <d a' c><d a' c><d a' c]>
+ <[d a' c \> > <d a' c><d a' c>< \! d a' c >]
+ <[d a' c> <d a' c><d a' c><d a' c>]
|
%18
- <[d g a c \> > <d g a c> <d g a c> <d g a c]>
- <[d fis a c> <\! d fis a c \pp > <d fis a c> <d fis a c]>
+ <[d g a c \> > <d g a c> <d g a c> <d g a c>]
+ <[d fis a c> <\! d fis a c \pp > <d fis a c> <d fis a c>]
|
%19
- <[d g b> <d g b> <d g b> <d g b]>
- <[d g b> <d g b> <d g b> <s g b]>
+ <[d g b> <d g b> <d g b> <d g b>]
+ <[d g b> <d g b> <d g b> <s g b>]
|
%20
- <[e g c> <e g c> <e gis c> <e gis c]>
- <[e a c> <e a c> <e b' c> < e b' c]>
+ <[e g c> <e g c> <e gis c> <e gis c>]
+ <[e a c> <e a c> <e b' c> < e b' c>]
|
%21
- <[e c'> <e c'> <e a c> <e a c]>
- <[e a c> <e a c> <e a c> <e a c]>
+ <[e c'> <e c'> <e a c> <e a c>]
+ <[e a c> <e a c> <e a c> <e a c>]
|
%22
- <[d a' c> <d a' c> <d a'> <d a']>
- <[d a' d> <d a' d> <d a' c> <d a' c]>
+ <[d a' c> <d a' c> <d a'> <d a'>]
+ <[d a' d> <d a' d> <d a' c> <d a' c>]
|
%23
- <[b d b'> <b d b'> <b d a'> <b d a']>
- <[b d g \< > <b d g> <b d fis> < \! b d fis ]>
+ <[b d b'> <b d b'> <b d a'> <b d a'>]
+ <[b d g \< > <b d g> <b d fis> < \! b d fis >]
|
%24
- <[b d e \> > <b d e> <gis b e> < \! gis b e ]>
- <[a c e> <a c e> <e' a> <e a]>
+ <[b d e \> > <b d e> <gis b e> < \! gis b e >]
+ <[a c e> <a c e> <e' a> <e a>]
|
%25
- <[d a' c> <d a' c> <d a' c> <d a' c]>
- <[d a'> <d a' \> > <c d fis> < \! c d fis \p ]>
+ <[d a' c> <d a' c> <d a' c> <d a' c>]
+ <[d a'> <d a' \> > <c d fis> < \! c d fis \p >]
|
%26
- <[b d g> <b d g> <b d g> <b d g]>
- <[b d g> <b d g> <b d g> <b d g]>
+ <[b d g> <b d g> <b d g> <b d g>]
+ <[b d g> <b d g> <b d g> <b d g>]
|
%27
- <[c d g > <c d g > <c d fis > <c d fis ]>
- <[c d fis \< > <c d fis >< \! c d fis ><c d fis ]>
+ <[c d g > <c d g > <c d fis > <c d fis >]
+ <[c d fis \< > <c d fis >< \! c d fis ><c d fis >]
|
%28
- <[d f gis \> > <d f gis> < \! d f gis > <d f gis]>
- <[c e a> <c e a> <e a c> <e a c]>
+ <[d f gis \> > <d f gis> < \! d f gis > <d f gis>]
+ <[c e a> <c e a> <e a c> <e a c>]
%29
- <[d a' b> <d a' b> <d g! b> <d g b]>
- <[d g a> <d g a> < d fis! a> <d fis a]>
+ <[d a' b> <d a' b> <d g! b> <d g b>]
+ <[d g a> <d g a> < d fis! a> <d fis a>]
\bar ":|";
%30
<b2 d2 g2> r2
copyright = "public domain";
}
-\version "1.0.10";
+\version "1.0.14";
\include "standchen.ly"
description = "A schubert song in 20 pt";
}
-\version "1.0.10";
+\version "1.0.14";
% fool make-website
% \include "standchen.ly";
Note: Original key F.
%}
-\version "1.0.10";
+\version "1.0.14";
$vocal_verse1 = \notes\relative c''{
% ugh: treble/bass
\clef violin;
% ugh: id like to type this!
%r8\pp [<g'-. c-.> <c-. es-.> <g-. c-.> <c-. es-.> <g-. c-.>] |
- r8^"\bf m\\\"assig"\pp <[g'-. c-.> <c-. es-.> <g-. c-.> <c-. es-.> <g-. c-.]> |
- r8 <[as-. c-.> <c-. es-.> <as-. c-.> <c-. es-.> <as-. c-.]> |
- r8 <[as-. c-.> <c-. d-.> <as-. c-.> <c-. d-.> <as-. c-.]> |
- r8 <[g-. b-.> <b-. d-.> <g-. b-.> <b-. d-.> <g-. b-.]> |
+ r8^"\bf m\\\"assig"\pp <[g'-. c-.> <c-. es-.> <g-. c-.> <c-. es-.> <g-. c-.>] |
+ r8 <[as-. c-.> <c-. es-.> <as-. c-.> <c-. es-.> <as-. c-.>] |
+ r8 <[as-. c-.> <c-. d-.> <as-. c-.> <c-. d-.> <as-. c-.>] |
+ r8 <[g-. b-.> <b-. d-.> <g-. b-.> <b-. d-.> <g-. b-.>] |
\break
}
$treble_verse1 = \notes\relative c{
% \clef violin;
%5
- r8 <[g' c> <c es> <g c> <c es> <g c]> |
- r8 <[f c'> <c' d> <f, c'> <c' d> <f, c']> |
- r8 <[f g b> <g b d> <f g b> <g b d> <f g b]> |
- r8 <[es g c> <g c es> <es g c> <g c es> <es g c]> |
+ r8 <[g' c> <c es> <g c> <c es> <g c>] |
+ r8 <[f c'> <c' d> <f, c'> <c' d> <f, c'>] |
+ r8 <[f g b> <g b d> <f g b> <g b d> <f g b>] |
+ r8 <[es g c> <g c es> <es g c> <g c es> <es g c>] |
<g''4.( b,> <)f8 d>
\times 2/3 { < [ f( d> <es c> <)d b] > } |
%10
<c2. es> |
- r8 <[g, c> <c es> <g c> <c es> <g c]> |
- r8 <[f c'> <c' d> <f, c'> <c' d> <f, c']> |
- r8 <[f as bes> <as bes d> <f g bes> <as bes d> <f g bes]> |
- r8 <[es g bes> <g bes es> <es g bes> <g bes es]>
+ r8 <[g, c> <c es> <g c> <c es> <g c>] |
+ r8 <[f c'> <c' d> <f, c'> <c' d> <f, c'>] |
+ r8 <[f as bes> <as bes d> <f g bes> <as bes d> <f g bes>] |
+ r8 <[es g bes> <g bes es> <es g bes> <g bes es>]
<{ es'~ | d4. ~ f8}{ c'~ | bes4. ~ as8 } >
\times 2/3 { < [f( as> <es g> <)d f] > } |
%16
<es2. g> |
- r8 <[f, g> <g b> <f g> <g b> <f g]> |
- r8 <[es g> <g c> <es g> <g c> <es g]> |
- r8\pp <[es as c> <as c es> <es as c> <as c es> <es as c]> |
+ r8 <[f, g> <g b> <f g> <g b> <f g>] |
+ r8 <[es g> <g c> <es g> <g c> <es g>] |
+ r8\pp <[es as c> <as c es> <es as c> <as c es> <es as c>] |
%20
- r8 <[es g bes> <g bes es> <es g bes> <g bes es> <es g bes]> |
+ r8 <[es g bes> <g bes es> <es g bes> <g bes es> <es g bes>] |
% \times 2/3 { [ as\grace( bes )
\times 2/3 { [ as'8( g as] } c4.-> ) as8 |
g2. |
- r8 <[f, g> <g b> <f g> <g b> <f g]> |
- r8 <[e g> <g c> <e g> <g c> <e g]> |
- r8 <[f a c> <a c f> <f a c> <a c f> <f a c]> |
- r8 <[e g c> <g c e> <e g c> <g c e> <e g c]> |
+ r8 <[f, g> <g b> <f g> <g b> <f g>] |
+ r8 <[e g> <g c> <e g> <g c> <e g>] |
+ r8 <[f a c> <a c f> <f a c> <a c f> <f a c>] |
+ r8 <[e g c> <g c e> <e g c> <g c e> <e g c>] |
\times 2/3 <
{ [ f'8\f( e f] }
{ f' e f } >
$treble_eentje = \notes \relative c'{
<e2 e'> <e4 g>|
- <f2\mf as!(> <[as8.->( c> <)f16 )as]> |
- <e4. g> <[e8-. g-.(> <e-. g-.> <e-. )g-.]> |
- <f4. g> <[b,8-. g'-.(> <d-. g-.> <f-. )g-.]> |
+ <f2\mf as!(> <[as8.->( c> <)f16 )as>] |
+ <e4. g> <[e8-. g-.(> <e-. g-.> <e-. )g-.>] |
+ <f4. g> <[b,8-. g'-.(> <d-. g-.> <f-. )g-.>] |
<e2 g> <e4\pp g> |
- <f2 a(> <[a8. c> <f16 )a]> |
- <e4. g> <[e8-. g-.(> <e-. g-.> <e-. )g-.]> |
- <f4. g> <[b,8-. g'-.(> <d-. g-.> <f-. )g-.]> |
+ <f2 a(> <[a8. c> <f16 )a>] |
+ <e4. g> <[e8-. g-.(> <e-. g-.> <e-. )g-.>] |
+ <f4. g> <[b,8-. g'-.(> <d-. g-.> <f-. )g-.>] |
%60
<e2. g> |
}
<e2. e'> |
%61
R2. |
- <[g,8.\< g'> <g16 g'> <b8. b'> <\! b16\> b'16> <d8. d'> <d16 d']> |
+ <[g,8.\< g'> <g16 g'> <b8. b'> <\! b16\> b'16> <d8. d'> <d16 d'>] |
< { c4( )b } { c'4( )b } > \!r |
% ugh
% <g4. g> <b8 b> <[d8.-> d->> c16] |
- <g4. g'> <b8 b'> <[ d'8.-> d,-> > c16] |
+ <g4. g'> <b8 b'> [<d'8.-> d,-> > c16] |
% ugh ugh: connecting chords
%65
< { d,2.\f a'2} { e2. ~ e2 } { b'2. c,2 }> r4 |
}
>
% 4 bars copied from end verse1
- r8 <[f, a c> <a c f> <f a c> <a c f> <f a c]> |
+ r8 <[f, a c> <a c f> <f a c> <a c f> <f a c>] |
%70
- r8 <[e g c> <g c e> <e g c> <g c e> <e g c]> |
+ r8 <[e g c> <g c e> <e g c> <g c e> <e g c>] |
\times 2/3 < { [ f'8\f( e f] }
{ f' e f }>
< { a4.-> )f8 } { a4. f8 } > |
<c2 c'> <e4\pp g> |
% four copied from begin eentje
- <f2 as!(> <[as8.-> c> <f16 )as]> |
- <e4. g> <[e8-. g-.(> <e-. g-.> <e-. )g-.]> |
- <f4. g> <[b,8-. g'-.(> <d-. g-.> <f-. )g-.]> |
+ <f2 as!(> <[as8.-> c> <f16 )as>] |
+ <e4. g> <[e8-. g-.(> <e-. g-.> <e-. )g-.>] |
+ <f4. g> <[b,8-. g'-.(> <d-. g-.> <f-. )g-.>] |
%80
\property Voice . textstyle = "italic"
<e2._"dim." g> |
<as2 as'> r4 |
<g2 g'> r4 |
<c2 c'> r4 |
- <g8 g'> <[g'' d'> <d' f> <g, d'> <d' f> <g, d']> |
+ <g8 g'> <[g'' d'> <d' f> <g, d'> <d' f> <g, d'>] |
%10
- <c,,8 c'> <[g'' c> <c es> <g c> <c es> <g c]> |
+ <c,,8 c'> <[g'' c> <c es> <g c> <c es> <g c>] |
<c,,2 c'> r4 |
<as2 as'> r4 |
<bes2 bes'> r4 |
<es,2 es'> r4 |
%15
- bes'8 <[bes' f'> <f' as> <bes, f'> <f' as> <bes, f']> |
- es,8 <[bes' es> <es g> <bes es> <es g> <bes es]> |
+ bes'8 <[bes' f'> <f' as> <bes, f'> <f' as> <bes, f'>] |
+ es,8 <[bes' es> <es g> <bes es> <es g> <bes es>] |
<g,2 g'> r4 |
<c2 c'> r4 |
<as2 as'> r4 |
<es2 es'> r4 |
- <bes'8 bes'> <[f'' bes> <bes d> <f bes> <bes d> <f bes]> |
- <es,,8 es'> <[es'' g bes> <g bes es> <es g bes> <g bes es> <es g bes]> |
+ <bes'8 bes'> <[f'' bes> <bes d> <f bes> <bes d> <f bes>] |
+ <es,,8 es'> <[es'' g bes> <g bes es> <es g bes> <g bes es> <es g bes>] |
<g,,2 g'> r4 |
<c2 c'> r4 |
<f,2 f'> r4 |
<c'2 c'> r4 |
- <g8 g'> <[d'' g> <g b> <d g> <g b> <d g]> |
- c,8 <[c' e g> <e g c> <c e g> <e g c> <c e g]> |
+ <g8 g'> <[d'' g> <g b> <d g> <g b> <d g>] |
+ c,8 <[c' e g> <e g c> <c e g> <e g c> <c e g>] |
}
$bass_eentje = \notes\relative c{
\property Voice.dynamicdir=1
- <c,8 c'> <[c' f as!> <f as c> <c f as> <f as c> <c f as]> |
- c,8 <[c' e g> <e g c> <c e g> <e g c> <c e g]> |
- <g,8 g'> <[d'' g> <g b> <d g> <g b> <d g]> |
- c,8 <[e' g> <g c> <e g> <g c> <e g]> |
- <c,8 c'> <[c' f a> <f a c> <c f a> <f a c> <c f a]> |
- c,8 <[c' e g> <e g c> <c e g> <e g c> <c e g]> |
- <g,8 g'> <[d'' g> <g b> <d g> <g b> <d g]> |
- c,8 <[e' g> <g c> <e g> <g c> <e g]> |
+ <c,8 c'> <[c' f as!> <f as c> <c f as> <f as c> <c f as>] |
+ c,8 <[c' e g> <e g c> <c e g> <e g c> <c e g>] |
+ <g,8 g'> <[d'' g> <g b> <d g> <g b> <d g>] |
+ c,8 <[e' g> <g c> <e g> <g c> <e g>] |
+ <c,8 c'> <[c' f a> <f a c> <c f a> <f a c> <c f a>] |
+ c,8 <[c' e g> <e g c> <c e g> <e g c> <c e g>] |
+ <g,8 g'> <[d'' g> <g b> <d g> <g b> <d g>] |
+ c,8 <[e' g> <g c> <e g> <g c> <e g>] |
}
$bass_through = \notes\relative c{
\property Voice.dynamicdir=1
%61
- <g,8^"cresc." g'> <[g' b d> <b d f> <g b d> <as!-> b-> d->> <b d f]> |
- <g,8 g'> <[g' d'> <d' f> <g, d'> <as-> b-> d->> <b d f]> |
+ <g,8^"cresc." g'> <[g' b d> <b d f> <g b d> <as!-> b-> d->> <b d f>] |
+ <g,8 g'> <[g' d'> <d' f> <g, d'> <as-> b-> d->> <b d f>] |
% copied
- <g,8 g'> <[g' d'> <d' f> <g, d'> <as-> b-> d->> <b d f]> |
- <g,8 g'> <[g' d' e> <d' f> <g, d'> <gis-> b-> d->> <b d f]> |
+ <g,8 g'> <[g' d'> <d' f> <g, d'> <as-> b-> d->> <b d f>] |
+ <g,8 g'> <[g' d' e> <d' f> <g, d'> <gis-> b-> d->> <b d f>] |
%65
- <gis,8 gis'> <[d''\> e> <e b'> <d e> <e b'> <d\! e]> |
- <a,8 a'> <[c' e> <e a> <c e> <e a> <c e]> |
- <a,8 a'> <[a' d f> <d f a> <a d f> <d f a> <a d f]> |
- <a,8 a'> <[a' c e> <c e a> <a c e> <c e a> <a c e]> |
+ <gis,8 gis'> <[d''\> e> <e b'> <d e> <e b'> <d\! e>] |
+ <a,8 a'> <[c' e> <e a> <c e> <e a> <c e>] |
+ <a,8 a'> <[a' d f> <d f a> <a d f> <d f a> <a d f>] |
+ <a,8 a'> <[a' c e> <c e a> <a c e> <c e a> <a c e>] |
% 4 bars copied from end verse1
<f,2\p f'> r4 |
%70
<c'2 c'> r4 |
- <g8 g'> <[d'' g> <g b> <d g> <g b> <d g]> |
- c,8\> <[c' e g> < \! e g c> <c e g> <e g c> <c e g]> |
+ <g8 g'> <[d'' g> <g b> <d g> <g b> <d g>] |
+ c,8\> <[c' e g> < \! e g c> <c e g> <e g c> <c e g>] |
- <c,8 c'> <[c' es! g> <es g c> <c es g> <es g c> <c es g]> |
- <f,,8 f'> <[d'' f> <f as!> <d f> <f as> <d f]> |
+ <c,8 c'> <[c' es! g> <es g c> <c es g> <es g c> <c es g>] |
+ <f,,8 f'> <[d'' f> <f as!> <d f> <f as> <d f>] |
%75
- <g,,8 g'> <[d'' f> <f g> <d f> <f g> <d f]> |
- c,8 <[c' e> <e g> <c e> <e g> <c e]> |
- c,8 <[c' f> <f as> <c f> <f as> <c f]> |
- c,8 <[c' e> <e g> <c e> <e g> <c e]> |
- <g,8 g'> <[g' d'> <d' f> <g, d'> <d' f> <g, d']> |
+ <g,,8 g'> <[d'' f> <f g> <d f> <f g> <d f>] |
+ c,8 <[c' e> <e g> <c e> <e g> <c e>] |
+ c,8 <[c' f> <f as> <c f> <f as> <c f>] |
+ c,8 <[c' e> <e g> <c e> <e g> <c e>] |
+ <g,8 g'> <[g' d'> <d' f> <g, d'> <d' f> <g, d'>] |
%80
- c,8 <[c' e> <e g> <c e> <e g> <c e]> |
- c,8 <[c' g> <e c> <c g> <e c> <c g]> |
+ c,8 <[c' e> <e g> <c e> <e g> <c e>] |
+ c,8 <[c' g> <e c> <c g> <e c> <c g>] |
<c,2._\fermata g' c> |
}
title = "Diademata";
metre = "6 6. 8 6. D";
}
-\version "1.0.10";
+\version "1.0.14";
sop=\notes \transpose c''{
ees2 | ees4 ees4 g2 g2 | c'1. \bar "||";
metre = "10 10 . 11 11";
}
-\version "1.0.10";
+\version "1.0.14";
sop = \notes \transpose c''{
f4 | d' bes c' | f2 \bar "||";
metre = "10 11. 11 11. and refrain";
}
-\version "1.0.10";
+\version "1.0.14";
sop=\notes \relative c'' {
b2 gis4. a8 |b2 e,2 |
metre = "8 7 8 7 D";
}
-\version "1.0.10";
+\version "1.0.14";
sop=\notes \relative c'' {
b4 b c d | d c b a | g g a b | b4. a8 a2 \bar "||";
enteredby = "Peter Chubb";
}
-\version "1.0.10";
+\version "1.0.14";
sop=\notes \transpose c'' {
\repeat 2 {
}
-\version "1.0.7";
+\version "1.0.14";
global=\notes {
\time 6/4;
piece = "Allemande";
}
-\version "1.0.10";
+\version "1.0.14";
global = \notes{
\time 4/4;
\type Staff <
{ \stemup [bes8 d'][bes a16 g] g4~ g16 }
{ \stemup s2 s16 d8.~ d16 }
- { \stemdown r8 <g d> <[g d><fis c]> r16 [d16 b8~] b16 }
+ { \stemdown r8 <g d> <[g d><fis c>] r16 [d16 b8~] b16 }
>
[es'16 d c] |
%17
fis4.~ [fis16 e32 fis][g16 d f es][d c b a] |
\type Staff <
{ \stemup [g8 g'][es d16 c] c4. }
- { \stemdown r8 <g c es> <[g c> <f b]> <es4. g> }
+ { \stemdown r8 <g c es> <[g c> <f b>] <es4. g> }
> s8
}
%%
%% Noe liknende skjer også i mellom andre og tredje stemme i takt 28
-\version "1.0.10";
+\version "1.0.14";
global = \notes{
\time 2/4;
c4 r |
%93
r8 g f'4~ |
- [f8 d g <f as,]> |
+ [f8 d g <f as,>] |
<es4 g,> <d f,> |
<c2 g es>
}
copyright = "Public Domain";
}
-\version "1.0.10";
+\version "1.0.14";
global = \notes {
\time 4/4;
%4
f4 \stemboth r16 [f g. as32] \stemup d,4 r16 [d g. es32] |
c4 ~ [c32 es des c des16. f32] [b,16. c32 b16. c32] d4 ~ |
- d2 ~ [d16. g,32 a16. b32] [c16. <b32 g> <c16. a> <d32 b]> |
- <[es8. c> <es16 c]>
+ d2 ~ [d16. g,32 a16. b32] [c16. <b32 g> <c16. a> <d32 b>] |
+ <[es8. c> <es16 c>]
\type Staff <
{ \stemup fis4 }
{ \stemup \property Voice.hshift = 1 [es16 d32 c d16. a32] }
<c4 g es> r <b as f d> r |
r <b f d> <c g es> r |
<c g e> r r <c g> |
- <c as f> r r16 <[as d,><as. d,><g32 d]> <g4 d> |
+ <c as f> r r16 <[as d,><as. d,><g32 d>] <g4 d> |
%5
- r16 <[g c,><g. c,><f32 c]>
+ r16 <[g c,><g. c,><f32 c>]
\type Staff <
{\stemup f4~ f}
{\stemup c4 d}
copyright = "public domain";
}
-\version "1.0.10";
+\version "1.0.14";
one = \notes\relative c {
\property Voice . textstyle = "italic"
copyright = "public domain";
}
-\version "1.0.10";
+\version "1.0.14";
one = \notes\relative c{
\property Voice . textstyle = "italic"
r8\mf [c'-1( e-2 g-4] [e-2 c-1 bes'-5 g-3] |
copyright = "public domain";
}
-\version "1.0.7";
+\version "1.0.14";
one = \notes \transpose c`` {
enteredby = "jcn";
copyright = "public domain";
}
-\version "1.0.10";
+\version "1.0.14";
one = \notes\relative c{
\property Voice . textstyle = "italic"
e4 d ~ [d16 d-1 cis-2 b-1] cis4-2 ~ |
[cis8 a-3] d4.-1 d4^> cis8-2 |
\translator Staff=treble \stemdown
- d4 \stemboth r16 [b-1\< d-2 b~] <g'4-5 e-3 b>
+ d4 \stemboth r16 [b-1\< d-2 b~] <g'4-5 e-3 b>
r16 [cis,-1 e-2 \!cis~] |
<a'4-5 fis-3 cis> r16 [d,-1 fis-2 d~] <b'4-5 g-3 d>
r16 [fis-1 a fis~] |
enteredby = "jcn";
copyright = "public domain";
}
-\version "1.0.10";
+\version "1.0.14";
one = \notes\relative c{
enteredby = "jcn";
copyright = "public domain";
}
-\version "1.0.10";
+\version "1.0.14";
one = \notes\relative c{
\stemup
b2-1 a-1 |
g a4. [gis16 a] |
- gis2 <[g8 cis,> <f-3 d-1]> e4-2 |
+ gis2 <[g8 cis,> <f-3 d-1>] e4-2 |
d4. [fis16-3 g-2] r16 bes8.-1 ~ bes4 |
%10
\stemdown
dotted slurs
%}
-\version "1.0.10";
+\version "1.0.14";
\include "allemande-urtext.ly";
dotted slurs
%}
-\version "1.0.10";
+\version "1.0.14";
\include "allemande-urtext.ly";
dotted slurs
%}
-\version "1.0.10";
+\version "1.0.14";
\include "courante-urtext.ly";
dotted slurs
%}
-\version "1.0.10";
+\version "1.0.14";
\include "courante-urtext.ly";
dotted slurs
%}
-\version "1.0.10";
+\version "1.0.14";
\include "gigue-urtext.ly";
dotted slurs
%}
-\version "1.0.10";
+\version "1.0.14";
\include "gigue-urtext.ly";
dotted slurs
%}
-\version "1.0.10";
+\version "1.0.14";
\include "menuetto-urtext.ly";
dotted slurs
%}
-\version "1.0.10";
+\version "1.0.14";
\include "menuetto-urtext.ly";
dotted slurs
%}
-\version "1.0.10";
+\version "1.0.14";
\include "prelude-urtext.ly";
dotted slurs
%}
-\version "1.0.10";
+\version "1.0.14";
\include "prelude-urtext.ly";
dotted slurs
%}
-\version "1.0.10";
+\version "1.0.14";
\include "sarabande-urtext.ly";
dotted slurs
%}
-\version "1.0.10";
+\version "1.0.14";
\include "sarabande-urtext.ly";
%{
%}
-\version "1.0.10";
+\version "1.0.14";
global =
Tested Features: stem direction, multivoice, forced accidentals.
%}
-\version "1.0.10";
+\version "1.0.14";
\include "nederlands.ly" % for correct parsing of note names
[b, c d b] [b c] r c |
[f16 d es c] ~ [c8 b] c4 r8 e |
%%30
- f4 r8 f [f es16 d] [es8 <f as]> |
+ f4 r8 f [f es16 d] [es8 <f as>] |
<b, d> r <b d> r <g2 c> |
}
[g f16 es] [f8 d] [as' g] r a |
[b c] [f,16 es d c] c8 [c'16 b] [c8 g] |
%%30
- [as c16 b] [c8 <d b ! as !]> [g,8 c16 b] [c8 d] |
+ [as c16 b] [c8 <d b ! as !>] [g,8 c16 b] [c8 d] |
[f,16 g] as4 [g16 f] e2 |
}
copyright = "Public Domain";
}
-\version "1.0.10";
+\version "1.0.14";
global =
\notes {
Ugh.. Wish we had grace notes.... It adds another dimension to this
piece of music. %}
-\version "1.0.10";
+\version "1.0.14";
cad = \notes \relative c' {
}
-\version "1.0.10";
+\version "1.0.14";
allegro =
\notes
definition below. --MB
%}
-\version "1.0.10";
+\version "1.0.14";
global = \notes {
\property StaffGroup.timeSignatureStyle = "old"
copyright = "public domain";
latexheaders= "headers";
}
-\version "1.0.10";
+\version "1.0.14";
%{
Silly latex file dropped; use ly2dvi
program_name = 'convert-mudela'
version = '0.4'
-
import os
import sys
import __main__
import getopt
from string import *
import re
-
import time
+
mudela_version_re_str = '\\\\version *\"(.*)\"'
mudela_version_re = re.compile(mudela_version_re_str)
i.close ()
return s
-
def str_to_tuple (s):
return tuple (map (atoi, split (s,'.')))
((0,1,20), conv, 'deprecated \\textstyle, new \key syntax'))
-if 1: # need new a namespace
+if 1:
def conv (lines):
newlines = []
for x in lines:
((0,1,21), conv, '\\musical_pitch -> \\musicalpitch, '+
'\\meter -> \\time'))
-if 1: # need new a namespace
+if 1:
def conv (lines):
return lines
((1,0,0), conv, '0.1.21 -> 1.0.0 '))
-if 1: # need new a namespace
+if 1:
def conv (lines):
newlines = []
for x in lines:
conversions.append ((1,0,10), conv, '[2/3 ]1/1 -> \\times 2/3 ')
+if 1:
+ def conv(lines):
+ return lines
+ conversions.append ((1,0,12), conv, 'Chord syntax stuff')
+
+
+if 1:
+ def conv(lines):
+ newlines =[]
+ for x in lines:
+ x = re.sub ('<([^>~]+)~([^>]*)>','<\\1 \\2> ~', x)
+ newlines.append (x)
+ return newlines
+
+ conversions.append ((1,0,13), conv, '<a ~ b> c -> <a b> ~ c')
+
+if 1:
+ def conv(lines):
+ newlines =[]
+ for x in lines:
+ x = re.sub ('<\\[ ','[<', x)
+ x = re.sub ('\\]>','>]', x)
+ newlines.append (x)
+ return newlines
+
+ conversions.append ((1,0,14), conv, '<[a b> <a b]>c -> [<a b> <a b>]')
+
+
############################