Document Really Ugly Bugs (coredumps, assert fails, etc)
+\score{
+ \melodic{
+ [a8 a-2] /bla
+ }
+}
+koor.ly: 4: error: parse error, expecting `DIGIT' or `UNSIGNED':
+ [a8 a-2] /bla
+
+koor.ly: 5: error: Have to be in Lyric mode for lyrics:
+ }
+
+lilypond: parser.y:765: int yyparse(void *): Assertion `((My_lily_parser *) my_lily_parser_l)->post_reqs.empty ()' failed.
+Aborted (core dumped)
+
+
+[gcc 2.8.x/libstdc++ 2.8.x/libg++ 2.8.0]
+
+The latest gcc release causes lily to crash just after Interpreting
+music:
+
+stacktrace looks something like:
+
+ __DTOR_END__ ()
+ __malloc ()
+
[GNU libc]
The GNU extension memmem() is known to be buggy on linux libc 5.0.9
# Original LaTeX file made by Mats Bengtsson, 17/8 1997
#
-VERSION="0.6.jaf2"
+VERSION="0.7"
NAME=ly2dvi.sh
IDENTIFICATION="$NAME $VERSION"
NOW=`date`
# TODO
-# should detect crashing lilypond
+# 0.7
+# - Improved Lilypond error checking
+# - Output orientation (landscape...). Overrides mudela file
+# variable orientation="landscape";
+# - Paper width and heigth put into variables (only A4!)
+# - Adjusted top margin to default.....
+#
+#TODO
+# - Include more papersizes.
+# - Manual page.......
+# - should detect crashing lilypond
+
# NEWS
Options:
-D, --debug set debug mode
- -o, --output set output directory
+ -O, --orientation= set orientation (landscape or portrait (default))
+ -o, --output= set output directory
-h, --help this help text
-k, --keep keep LaTeX file
-l, --language= give LaTeX language (babel)
EOF
}
+PWIDTH=600; # Width of A4 paper!
+PHEIGTH=830; # Heigth of A4 paper!
#
# RC-files ?
#
#
# "x:" x takes argument
#
-switches="Do:hkl:p:s\?"
+switches="DO:hkl:o:p:s\?"
options=""
#
# ugh, "\-" is a hack to support long options
fi
debug_echo=echo
;;
+ O )
+ ORI=$OPTARG
+ ;;
h )
help;
exit 0
p*|-p*)
PSZ=`echo $OPTARG | sed -e s/"^.*="//`
;;
- o*|-o*)
- OUTPUTDIR=$OPTARG
- ;;
+ or*|-or*)
+ ORI=`echo $OPTARG | sed -e s/"^.*="//`
+ ;;
+ ou*|-ou*)
+ OUTPUTDIR=`echo $OPTARG | sed -e s/"^.*="//`
+ ;;
s*|-s*)
SEPFILE=Y
;;
fi
#
# Find:
-# paper size (PSZ, overridden by command line option -p)
-# language (LNG, overridden by command line option -l)
+# paper size (PSZ, overridden by command line option -p)
+# paper orientation (ORI, overridden by command line option -o)
+# language (LNG, overridden by command line option -l)
# textwidth
#
eval `sed -n \\
-e 's/\\\\def\\\\mudelapapersize{\([^}]*\).*$/fPSZ=\1;/p' \\
+ -e 's/\\\\def\\\\mudelaorientation{\([^}]*\).*$/fORI=\1;/p' \\
-e 's/\\\\def\\\\mudelalanguage{\([^}]*\).*$/fLNG=\1;/p' \\
-e 's/\\\\def\\\\mudelapaperlinewidth{\([^}]*\).*$/TWN=\1;/p' \\
$File`
-if [ "$PSZ" = "" ]
+if [ -z "$PSZ" ]
then
PSZ=$fPSZ
fi
-if [ "$PSZ" != "" ]
+if [ ! -z "$PSZ" ]
then
- PAPER="["$PSZ"]"
+ PAPEROPT=$PSZ
fi
#
-if [ "$LNG" = "" ]
+if [ -z "$ORI" ]
+then
+ ORI=$fORI
+fi
+if [ ! -z "$ORI" ]
+then
+ if [ -z "$PAPEROPT" ]
+ then
+ PAPEROPT=$ORI
+ else
+ PAPEROPT=$PAPEROPT,$ORI
+ fi
+fi
+#
+if [ ! -z "$PAPEROPT" ]
+then
+ PAPER="["$PAPEROPT"]"
+fi
+#
+if [ -z "$LNG" ]
then
LNG=$fLNG
fi
-if [ "$LNG" != "" ]
+if [ ! -z "$LNG" ]
then
LLNG="\usepackage["$LNG"]{babel}"
else
#
# Find textwidth
#
-if [ "$TWN" != "" ]
+if [ ! -z "$TWN" ]
then
TW=$TWN
case $TW in
$debug_echo "Text width = "$TW
fi
TWp=`echo $TW | sed -e 's/\..*$//'`
-PWp=600; # Width of A4 paper!
+PWp=$PWIDTH
+if [ "$ORI" = "landscape" ]
+then
+ PWp=$PHEIGTH
+fi
MARG=`expr $PWp - $TWp`
MARG=`expr $MARG / 2`"pt"
#
%\addtolength{\oddsidemargin}{-1cm}
%\addtolength{\topmargin}{-1cm}
\setlength{\textwidth}{$TW}
-\geometry{width=$TW, left=$MARG, top=1cm}
+%\geometry{width=$TW, left=$MARG, top=1cm}
+\geometry{width=$TW, left=$MARG}
\input lilyponddefs
\input titledefs
\begin{document}
#
endFile(){
cat << EOF >> $LF
-\vfill\hfill{\small\LilyIdString}
+\vfill\hfill{(\LilyIdString)}
\end{document}
EOF
#
lilypond $IF 2>&1 | tee /tmp/lilylog.$$
OF=`egrep '^TeX output to ' /tmp/lilylog.$$ | \\
sed -e 's/TeX output to//' -e 's/\.\.\.//'`
- rm /tmp/lilylog.$$
$debug_echo "==> "$OF
+ STATUS=`grep -i error /tmp/lilylog.$$`
+ rm /tmp/lilylog.$$
+ if [ ! -z "$STATUS" ]
+ then
+ exit 10
+ fi
fi
#
# "Spin through" all the files
{
$mudela_b = 0;
if ($fragment_b) {
- print MUDELA "}\n \\paper { linewidth = -1.0\\cm; castingalgorithm = \\Wordwrap; } }\n";
+ print MUDELA "}\n \\paper { linewidth = -1.0\\cm;";
+ print MUDELA "castingalgorithm = \\Wordwrap; } }\n";
$fragment_b =0;
}
- if ( $verbatim_b) {
- print BOOK "\\end{verbatim}\n\\interexample";
- $verbatim_b =0;
+ if ($verbatim_b) {
+ print BOOK "\\end{verbatim}";
+ }
+ if ($center_b) {
+ print BOOK "\\end{minipage}";
+ }
+ if ($verbatim_b) {
+ print BOOK "\\interexample";
+ $verbatim_b = 0;
}
close MUDELA;
my $status =0;
my_system "lilypond ". gen_mufile;
rename gen_texbase, gen_texfile;
}
- print BOOK "\\preexample\\input " . gen_texfile . "\n\\postexample\n";
-
+
+ if ($center_b) {
+ print BOOK "\\begin{minipage}[c]{.5\\textwidth}\n";
+ }
+ print BOOK "\\input " . gen_texfile . "%\n";
+ if ($center_b) {
+ print BOOK "\\end{minipage}";
+ $center_b = 0;
+ }
+ print BOOK "\\postexample%\n";
}
sub open_mudela
$mudcount++;
$mudela_b = 1 ;
open MUDELA, ">$outdir/book-mudela.ly";
+ print BOOK "\\preexample%\n";
+ if ($center_b) {
+ print BOOK "\\begin{minipage}[c]{.5\\textwidth}\n";
+ }
if ($verbatim_b) {
print BOOK "\\begin{verbatim}\n";
}
if ($fragment_b) {
print MUDELA "\\score { \\melodic {\\octave c';";
+ } else {
+ print MUDELA "default_paper = \\paper { \\paper_sixteen ";
+ print MUDELA "linewidth = 7.\\cm;}";
}
}
$verbatim_b =1 if ($s =~ /verbatim/ );
$fragment_b = 1 if ($s =~ /fragment/ );
+ $center_b = 1 if ($s =~ /center/ );
}
sub help
sub main
{
GetOptions( 'outdir=s', 'outname=s', 'help');
- help if ( $opt_help ) ;
+ if ( $opt_help ) {
+ help();
+ $opt_help = 0; # to extinguish typo check. brr, what a language
+ }
if (defined ($opt_outdir)) {
$outdir = $opt_outdir . "/";
% interbeam = interline - (beam_thickness + staffline_thickness) / 2
% interbeam = 3.6;
% ugh: interline *in fact* is rule_thickness + "interline"?
- interbeam = 3.9;
+ interbeam = 3.0\pt;
gourlay_energybound = 100000.;
gourlay_maxmeasures = 12.;
% interbeam = interline - (beam_thickness + staffline_thickness) / 2
% interbeam = 3.6;
% ugh: interline *in fact* is rule_thickness + "interline"?
- interbeam = 3.9;
+ interbeam = 3.5\pt;
gourlay_energybound = 100000.;
gourlay_maxmeasures = 12.;
arithmetic_multiplier = 4.8\pt;
% three beams span two interlines, including stafflines:
- % 2 interbeam + beam_thickness = 2 interline - staffline_thickness
- % ( beam_thickness = 0.48 interline for now...)
- % interbeam = interline - (beam_thickness + staffline_thickness) / 2
- % interbeam = 2.84;
- % ugh: interline *in fact* is rule_thickness + "interline"? --jcn
-
- % No --hwn
- interbeam = 3.14;
+ % 2ib + bt = 2 il - st
+ % bt = 0.48(il - st) for now.
+ % 2ib + 0.48il - 0.48 st = 2il - st
+ % 2ib = 1.52il - 0.52 st
+ % ib = 0.76il - 0.26st = 2.94 --jcn
+ % now, it seams rather ib = 0.76il + 0.26st = 3.14
+ % interbeam = 2.94\pt;
+ % No -- hwn
+ interbeam = 3.14\pt;
gourlay_energybound = 100000.;
gourlay_maxmeasures = 14.;
arithmetic_basicspace = 2.;
arithmetic_multiplier = 6.\pt;
- %
% three beams span two interlines, including stafflines:
- % 2 interbeam + beam_thickness = 2 interline - staffline_thickness
- % ( beam_thickness = 0.48 interline for now...)
- % interbeam = interline - (beam_thickness + staffline_thickness) / 2
- % interbeam = 3.6;
- % ugh: interline *in fact* is rule_thickness + "interline"?
- interbeam = 3.9;
+ % 2ib + bt = 2 il - st
+ % bt = 0.48(il - st) for now.
+ % 2ib + 0.48il - 0.48 st = 2il - st
+ % 2ib = 1.52il - 0.52 st
+ % ib = 0.76il - 0.26st = 3.70
+ % now, it seams rather ib = 0.76il + 0.26st = 3.90
+ % interbeam = 3.70\pt;
+ interbeam = 3.90\pt;
gourlay_energybound = 100000.;
gourlay_maxmeasures = 12.;
paper_twentysix = \paper {
linewidth = 15.0 \cm;
- indent = 12.0\mm
+ indent = 12.0\mm;
rulethickness = 0.5\pt;
barsize = 26.0 \pt;
interline = 6.5\pt;
arithmetic_basicspace = 2.;
arithmetic_multiplier = 7.\pt;
- %
% three beams span two interlines, including stafflines:
- % 2 interbeam + beam_thickness = 2 interline - staffline_thickness
- % ( beam_thickness = 0.48 interline for now...)
- % interbeam = interline - (beam_thickness + staffline_thickness) / 2
- % interbeam = 3.6;
- % ugh: interline *in fact* is rule_thickness + "interline"?
- interbeam = 3.9;
+ % 2ib + bt = 2 il - st
+ % bt = 0.48(il - st) for now.
+ % 2ib + 0.48il - 0.48 st = 2il - st
+ % 2ib = 1.52il - 0.52 st
+ % ib = 0.76il - 0.26st = 4.81
+ % interbeam = 4.81\pt;
+ % now, it seams rather ib = 0.76il + 0.26st = 5.07
+ interbeam = 5.07\pt;
gourlay_energybound = 100000.;
gourlay_maxmeasures = 12.;
\property Voice.ydirection = \down
}
+onevoice = {
+ \property Voice.ydirection = \center
+ \property Voice.hshift = 0
+}
+
+voiceone = {
+ \type Voice = one
+ \skip 1*0;
+ \property Voice.ydirection = \up
+}
+
+voicetwo = {
+ \type Voice = two
+ \skip 1*0;
+ \property Voice.ydirection = \down
+}
+
+voicethree = {
+ \type Voice = three
+ \skip 1*0;
+ \property Voice.ydirection = \up
+ \property Voice.hshift = 1
+}
+
+voicefour = {
+ \type Voice = four
+ \skip 1*0;
+ \property Voice.ydirection = \down
+ \property Voice.hshift = 1
+}
+
% ugh, cluttering global namespace...
none=0
free=0
--- /dev/null
+% silly file to test beam stem lengths
+% compare to *ugly* bug in preludes-1: [e'16 c'' g' f']
+% here it's okee ??
+
+one = \melodic{
+ \octave c';
+ [e'8 c'' g' f']
+ \octave c'';
+ [e16-1\f c'-5( g-3 f-2] % [e-1 c'-5 g-3 e-2]
+ \octave c';
+% [e'16 c'' g' f']
+ [e'32 c'' g' f']
+ [c32 c] ['b 'b]
+ [c8 c]
+ [e8 g b]
+ [e16 g b] c c c
+ [e32 g b] c
+ [c c c c]
+ c4 c4
+ \onevoice;
+ [e'8 c'' g' f']
+ [e'16 c'' g' f']
+ [e'32 c'' g' f']
+ [c32 c] ['b 'b]
+ [c8 c]
+ [e8 g b]
+ [e16 g b] c
+ [e32 g b] c
+ [c c c c]
+ c4
+}
+
+\score{
+ \one
+}
IMPLEMENT_IS_TYPE_B1 (Beam, Spanner);
// ugh, hardcoded
-const int MINIMUM_STEMLEN[] = {
+const Real MINIMUM_STEMLEN[] = {
0, // just in case
5,
4,
int mult = max (stems_[j]->beams_left_i_, stems_[j]->beams_right_i_);
if (mult > 1)
// dim(y) = internote
- y -= (mult - 1) * interbeam_f / internote_f;
+ y -= (Real)(mult - 1) * interbeam_f / internote_f;
if (y < MINIMUM_STEMLEN[mult])
dy = dy >? (MINIMUM_STEMLEN[mult] - y);
}
Key_item::set_c_position (int c0)
{
int from_bottom_pos = c0 + 4; // ugh
- int octaves =(abs (from_bottom_pos) / 7) +1 ;
+ int octaves =(from_bottom_pos / 7) +1 ;
from_bottom_pos =(from_bottom_pos + 7*octaves)%7;
c_position = from_bottom_pos - 4;
}
void
Key_item::add (int p, int a)
{
- if ((a<0 && p>FLAT_TOP_PITCH) ||
- (a>0 && p>SHARP_TOP_PITCH))
+ if ((a<0 && ((p>FLAT_TOP_PITCH) || (p+c_position>4)) && (p+c_position>1))
+ ||
+ (a>0 && ((p>SHARP_TOP_PITCH) || (p+c_position>5)) && (p+c_position>2)))
{
p -= 7; /* Typeset below c_position */
}
Stem_info::Stem_info (Stem const *s)
{
- x = s->hpos_f();
+ x = s->hpos_f ();
dir_ = s->dir_;
beams_i_ = 0 >? (abs (s->flag_i_) - 2);
*/
- Real notehead_y = s->paper()->interline_f ();
- // huh? why do i need the / 2
- // Real interbeam_f = s->paper()->interbeam_f ();
- Real interbeam_f = s->paper()->interbeam_f () / 2;
+ Real internote_f = s->paper ()->internote_f ();
+ Real interline_f = 2 * internote_f;
+ Real notehead_y = interline_f;
+ // huh? why do i seem to need the / 2 ?
+ Real interbeam_f = s->paper ()->interbeam_f ();
+ // Real interbeam_f = s->paper ()->interbeam_f () / 2;
+ // perhaps bo dim (y) = internote?
- /* well eh, huh?
- idealy_f_ = dir_ * s->stem_begin_f() + beams_i_ * interbeam_f;
- if (beams_i_ < 3)
+ idealy_f_ = dir_ * s->stem_begin_f () + beams_i_ * interbeam_f;
+ if (beams_i_ < 3)
idealy_f_ += 2 * interline_f;
- else
+ else
idealy_f_ += 1.5 * interline_f;
- */
-
- idealy_f_ = dir_ * s->stem_end_f();
-
- miny_f_ = dir_ * s->stem_begin_f() + notehead_y + beams_i_ * interbeam_f;
+ idealy_f_ /= internote_f;
+ miny_f_ = dir_ * s->stem_begin_f () + 2 + beams_i_ * interbeam_f / internote_f;
idealy_f_ = miny_f_ >? idealy_f_;
// assert (miny_f_ <= idealy_f_);
include $(MFDEPS)
#
+# silly workaround for stupid TeXs
+systempks:
+# irix 5.3
+# MakeTeXPK feta16 300 300 magstep\(0.0\)
+ set -e ; for a in $(FONT_FILES); do \
+ MakeTeXPK `basename $$a .mf` 300 300 magstep\(0.0\) ; \
+ mf "\mode=ljfour; input `basename $$a .mf`" ;\
+ mv -f `find . -name '*.tfm' -print -o -name '*gf' -print` out/ ; \
+ done
+
\include "paper20.ly"
-rh = \melodic{
+one = \melodic{
\octave c'';
\textstyle "italic";
r16\p_"legato"\< ['g-1( c-3 )e-5] r ['g-1( c )e]
r [''b 'd 'a-5] r [''b 'd 'g-4]
r [''a 'c 'g-5] r [''a 'c 'f!-4] |
% ugh, arpeggio
- \multi 2 <
- { \stemup; 'f4 r s }
- { \stemdown; <''g4 'd> r s }
+ <
+ { \voiceone; 'f4 r s }
+ { \voicetwo; <''g4 'd> r s }
>
- \stemboth;
+ \onevoice;
% ugh beam across staffs, slur starts at lower staff
r16 [''g-1( ''b 'd] |
- \stemup;
+ \voiceone;
)''b s4 ['g16-1( 'b-2 d] )'b s s s [f-2 g-3 b-5 f-2] |
- \stemboth;
+ \onevoice;
[e-1\f c'-5( g-3 f-2] [e-1 c'-5 g-3 e-2]
[)d c'-5( f-3 e-2] [d-1 b-5 f-3 d-2] |
[)c b-5( e-3 d-2] [c-1 a-5 e-3 c-2]
[f-5 d-3 es-4 c-2] ['fis-1 es-4 d-3 c-2] |
['b-1 d-5 'b-3 'g-1] ['as-4-"cresc. e rall." 'f-2 'g-3 'd-1]
['es-2 'fis-3 'a-4 c-5]
- \multi 2 <
- { \stemup; r [c8 'b16] }
- { \stemdown; ['d8 'f-2] }
+ <
+ { \voiceone; r [c8 'b16] }
+ { \voicetwo; ['d8 'f-2] }
>
- \stemboth; |
+ \onevoice; |
<c1\mf 'g 'e>
\bar "|.";
}
-lh = \melodic{
+two = \melodic{
\octave c;
- \clef bass;
\textstyle "roman";
c4-5 e-3 [g32-1 fis-2 g8.-1] 'g4 |
d-5 f-3 [a32-1 gis a8.] 'a4 |
g r r16 ['g-5( 'b-4 d] )f-1 s s s |
s [g-5( b-4 d'-2] )f'-1 s s s s \clef violin; [g'-4 b'-2 d''-1]
s s s s \clef bass; |
- \multi 2 <
- { \stemup; g1 ~ g ~ g ~ g ~ g ~ g ~ g }
- { \stemdown; 'g1 ~ 'g ~ 'g ~ 'g ~ 'g ~ 'g ~ 'g }
+ <
+ { \voiceone; g1 ~ g ~ g ~ g ~ g ~ g ~ g }
+ { \voicetwo; 'g1 ~ 'g ~ 'g ~ 'g ~ 'g ~ 'g ~ 'g }
>
<c1 'c>
\bar "|.";
\meter 4/4;
}
+treble_staff = \type Staff = treble <
+ \global
+ \one
+>
+
+bass_staff = \type Staff = bass <
+% bass = Staff <
+ \clef "bass";
+ \global
+ \two
+>
+
+grand_staff = \type Grandstaff <
+ \treble_staff
+ \bass_staff
+>
+
+a4 = \paper{
+ \paper_twenty
+ linewidth= 195.\mm;
+}
+
\score{
- % Moderato
- % it would be nice to shut-off fingering...
- \melodic \type Grandstaff <
- <
- \global
- \rh
- >
- <
- \global
- \lh
- >
- >
- \paper{
- \paper_twenty
- linewidth= 195.\mm;
- }
- \midi{
- \tempo 4 = 70;
- }
+ % Moderato
+ \grand_staff
+ \paper{ \a4 }
+ \midi{ \tempo 4 = 80; }
}
\include "paper20.ly"
-rh = \melodic{
+one = \melodic{
\octave c'';
\textstyle "italic";
r8\mf ['c-1( 'e-2 'g-4] ['e-2 'c-1 'bes-5 'g-3] |
[)'a-4\< 'c-1( 'f-2 'a-4] ['f 'c c-5 'a-3] |
[)'b-4 'g-1( 'b-2 d-4] ['b-2 'g f-5 \!d-3] |
- \multi 2 <
- {\stemup; )e2-4\f r4 e-5 }
- {\stemdown; <c2 'g> r4 <c 'g> }
+ <
+ {\voiceone; )e2-4\f r4 e-5 }
+ {\voicetwo; <c2 'g> r4 <c 'g> }
>
- \stemboth; |
- \multi 2 <
- { \stemup; d2-4 r4 d-4 }
- { \stemdown; <c2 'a> r4 <c 'a> }
+ \onevoice; |
+ <
+ { \voiceone; d2-4 r4 d-4 }
+ { \voicetwo; <c2 'a> r4 <c 'a> }
>
- \stemboth; |
- \multi 2 <
- { \stemup; d8 }
- { \stemdown; <'b8 'g> }
+ \onevoice; |
+ <
+ { \voiceone; d8 }
+ { \voicetwo; <'b8 'g> }
>
- \stemboth;
+ \onevoice;
['g8-1\mf( 'b-2 d-4]
- \multi 2 <
- { \stemup; )'b4 e-5 }
- { \stemdown; 'g4 'b }
+ <
+ { \voiceone; )'b4 e-5 }
+ { \voicetwo; 'g4 'b }
>
- \stemboth; |
- \multi 2 <
- { \stemup; c2 r4 < {c-5 ~ c8} {'a4 ~ 'a8} > }
- { \stemdown; c2 r4 'e4 ~ 'e8 }
+ \onevoice; |
+ <
+ { \voiceone; c2 r4 < {c-5 ~ c8} {'a4 ~ 'a8} > }
+ { \voicetwo; c2 r4 'e4 ~ 'e8 }
>
- \stemboth;
+ \onevoice;
['d-1\p( 'fis-2 'a-4] ['fis-2 'd-1 c-5 'a-3] |
[)'b-4\< 'g-1( 'b-2 d-4] [ 'b-2 'g-1 f!-5 d-3] |
[)e-4 'g-1( c-2 e-4] [c-2 'g g-5 e-3] |
[)fis-4 'a-1( c-2 fis-4] [c 'a a-5 \!fis-3] |
- \multi 2 <
- { \stemup; )g2-5\f }
- { \stemdown; <d2 'b> }
+ <
+ { \voiceone; )g2-5\f }
+ { \voicetwo; <d2 'b> }
>
- \stemboth;
+ \onevoice;
r4 b4-2( |
[c8-1 e-2 g c'] [g-2 e-1 bes-4 g-2] |
[)a16->-3 g-2 f-1 e-3] [d c 'b!-3 'a-2]
['b-3\< 'g-1 'a 'b] [c-1 d e \!f] |
g4-5\ff
- \multi 2 <
- { \stemup; c2-5 'b4-4 }
- { \stemdown; 'g2-2 'd4-1 }
+ <
+ { \voiceone; c2-5 'b4-4 }
+ { \voicetwo; 'g2-2 'd4-1 }
>
- \stemboth;
- \multi 2 <
- { \stemup; c1^5 }
- { \stemdown; 'e1_1}
+ \onevoice;
+ <
+ { \voiceone; c1^5 }
+ { \voicetwo; 'e1_1}
>
- \stemboth;
+ \onevoice;
\bar "|.";
}
-lh = \melodic{
+two = \melodic{
\octave c;
- \clef bass;
- \multi 2 <
- { \stemup; c1 ~ c ~ c }
- { \stemdown; 'c1 ~ 'c ~ 'c }
+ <
+ { \voiceone; c1 ~ c ~ c }
+ { \voicetwo; 'c1 ~ 'c ~ 'c }
>
- \stemboth; |
+ \onevoice; |
r8 [c-5( e-3 g-1] [e-3 c-5 c' e-4] |
[)fis-3 d-5( fis-3 a-1] [fis-3 d-5 d' fis-4] |
)g2-3 r4 g-2( |
\meter 4/4;
}
+treble_staff = \type Staff = treble <
+ \global
+ \one
+>
+
+bass_staff = \type Staff = bass <
+% bass = Staff <
+ \clef "bass";
+ \global
+ \two
+>
+
+grand_staff = \type Grandstaff <
+ \treble_staff
+ \bass_staff
+>
+
+a4 = \paper{
+ \paper_twenty
+ linewidth= 195.\mm;
+}
+
\score{
- % Moderato
- % it would be nice to shut-off fingering...
- \melodic \type Grandstaff <
- <
- \global
- \rh
- >
- <
- \global
- \lh
- >
- >
- \paper{
- \paper_twenty
- linewidth= 195.\mm;
- }
- \midi{
- \tempo 4 = 90;
- }
+ % Moderato
+ \grand_staff
+ \paper{ \a4 }
+ \midi{ \tempo 4 = 100; }
}
+
define(s, `comma(translit($*,` ', `,'))')
define(t, r16 [$1$4 $2 $3] [$2 $1 $2 $6$1] r $1$7 r $5$1 |)
-rh = \melodic{
+one = \melodic{
\octave c';
\textstyle "italic";
%# s(`c' `es' `g' `\p(\<' `\!' `)\!' `\>')
\bar "|.";
}
-lh = \melodic{
+two = \melodic{
\octave c;
\clef bass;
% c4 r [g8-.(\ped )es-.\*] |
\key bes es as;
}
+treble_staff = \type Staff = treble <
+ \global
+ \one
+>
+
+bass_staff = \type Staff = bass <
+% bass = Staff <
+ \clef "bass";
+ \global
+ \two
+>
+
+grand_staff = \type Grandstaff <
+ \treble_staff
+ \bass_staff
+>
+
+a4 = \paper{
+ \paper_twenty
+ linewidth= 195.\mm;
+}
+
\score{
% Semplice e non troppo legato
- \melodic \type Grandstaff <
- <
- \global
- \rh
- >
- <
- \global
- \lh
- >
- >
- \paper{
- \paper_twenty
- linewidth= 195.\mm;
- }
- \midi{
- \tempo 4 = 90;
- }
+ \grand_staff
+ \paper{ \a4 }
+ \midi{ \tempo 4 = 100; }
}
\stemup;
)cis4-2 fis-5 ~ [fis8 fis-4] e4-3 ~ |
e16\< \stemboth ['a16( cis 'a] [d-2 e fis d-1]
- [g-3 fis g a-4] [a-3 b a \!g] |
+ [g-3 fis g a-4] [g-3 b a \!g] |
\stemup
)fis4-"2\\_3" [e8-2 a-5] <fis4-4 d-2> <gis-5 e-3> |
<a4-5( e> <fis-4 d-2> <[)g!16-5 d> fis-2 g-3 a-4]
['d8. 'e16~] ['e 'd8 'cis16] |
\stemup
r16 ['d-1\< 'fis 'd] ['g 'a 'b 'g-1] [c-3 'b c d] [c e d-4 \!c] |
- 'b4-5 'a ~ ['a8 'g-5 ~] ['g16 'fis8-4 'e'16-3] |
+ 'b4-5 'a ~ ['a8 'g-5 ~] ['g16 'fis8-4 'e16-3] |
['fis8-4 'e-5~] ['e 'd-5~] 'd4 'cis-4 |
'd2\p-"rall." ~ ['d16 ''a-2( ''b-3 'cis-4] )'d4-5 |
\bar "|.";
\textstyle "finger";
% ugh: koor
% \translator Staff=bass \octave c; \stemup
- \stemup;
+% \stemup;
fis4-1( e8-2 a4 a4 gis8-2 |
) a8
\translator Staff=treble \octave c''; \stemdown
\stemboth
r16 [''b-1\< 'd-2 ''b~] <'g4-5 'e-3 ''b>
r16 ['cis-1 'e-2 \!'cis~] |
- <'a4-5 'f-3 'cis> r16 ['d-1 'fis-2 'd~] <'b4-5 'g-3 'd>
+ <'a4-5 'fis-3 'cis> r16 ['d-1 'fis-2 'd~] <'b4-5 'g-3 'd>
r16 ['fis-1 'a 'fis~] |
\stemdown
'fis4 'e 'd 'cis |
\translator Staff=treble \octave c''; \stemdown
'd8.-1 ~ ['d8 'c] 'd4 [''a8 ''g] |
\translator Staff=bass \octave c; \stemup
- [fis'8 c'-1] b4-1 <a
+ [fis'8 c'-1] b4-1 \stemdown <a
\translator Staff=treble \octave c''; \stemdown
''a4.-2>
\stemdown
'a8~ |
- ['a 'g-3~] ['g16 'e 'fis8~] ['fis16 'd8.~] ['d8. cis!16] |
+ ['a 'g-3~] ['g16 'e 'fis8~] ['fis16 'd8.~] ['d8. 'cis!16] |
\translator Staff=bass \octave c; \stemup
% <[d'8-2 a-1> <a~ g]> <a4 [fis16-2> e-1 fis-2 d-1]
- \multi 2 <
- {
- [d'8-2 a~] a4
- }
- {
- \property Voice.hshift = 1
- [a8-1 g] [fis16-2 e-1 fis-2 d-1]
- \property Voice.hshift = 0
- }
+ <
+ { \voiceone; [d'8-2 a~] a4 }
+ { \voicethree; [a8-1 g] [fis16-2 e-1 fis-2 d-1] }
>
+ \voiceone;
[g-1 fis-2 g-1 a-2] [g-1 b-3 a-2 g-1 ~] |
[g g-1 fis-2 e-1] fis4-2 ~ fis2
\bar "|.";
three = \melodic{
\octave c;
- \stemdown;
+% \stemdown;
d4-3 c-4 'b e-3 |
a16 ['a-5\mf( cis-3 'a-5] [d-2 e-1 fis-2 d-4]
[g-1 fis-3 g a] [g b a g] |
four = \melodic{
\skip 4*36;
\octave c';
- \stemup;
- \property Voice.hshift = 1
+% \stemup;
+% \property Voice.hshift = 1
a2 fis |
d
- \property Voice.hshift = 0
+% \property Voice.hshift = 0
\skip 4*11;
\translator Staff=bass \octave c; \stemup
a4 ~ [a16 d-2 g8-1] [fis e-1] |
'd2 'd2
}
-rh = \melodic{
- \multi 2 <
- \one
- \four
- >
- \bar "|.";
+global = \melodic{
+ \meter 4/4;
+ \key fis cis;
}
+treble_staff = \type Staff = treble <
+ \global
+ { \voiceone \one }
+ { \voicefour \four }
+>
-lh = \melodic{
+bass_staff = \type Staff = bass <
+% bass = Staff <
\clef "bass";
- \multi 2 <
- \two
- \three
- >
- \bar "|.";
-}
+ \global
+% { \voiceone \two }
+ { \type Voice = bone \skip 1*0; \property Voice.ydirection = \up \two }
+ { \voicetwo \three }
+>
+grand_staff = \type Grandstaff <
+ \treble_staff
+ \bass_staff
+>
-global = \melodic{
- \meter 4/4;
- \key fis cis;
+widea4 = \paper{
+ \paper_twenty
+ linewidth= 195.\mm;
+% arithmetic_basicspace = 2.;
+% arithmetic_multiplier = 6.\pt;
+ arithmetic_basicspace = 3.;
+ arithmetic_multiplier = 6.\pt;
}
\score{
- % Allegretto
- % it would be nice to shut-off fingering...
- \melodic \type Grandstaff <
- \type Staff=treble <
- \global
-% huh? try these iso directly!
-% \lh
- \multi 2 <
- \one
- \four
- >
- >
- \type Staff=bass <
- \global
-% \rh
-% or try \two having here, iso above!
-% \two
- {
- \clef "bass";
- \multi 2 <
- \two
- \three
- >
- }
- >
- >
- \paper{
- \paper_twenty
- linewidth= 195.\mm;
-% arithmetic_basicspace = 2.;
-% arithmetic_multiplier = 6.\pt;
- arithmetic_basicspace = 3.;
- arithmetic_multiplier = 6.\pt;
- }
- \midi{
- \tempo 4 = 110;
- }
+ % Allegretto
+ \grand_staff
+ \paper{ \widea4 }
+ \midi{ \tempo 4 = 70; }
}
\include "paper20.ly"
-rh = \melodic{
+one = \melodic{
\octave c';
\textstyle "italic";
[d8-1\p a-5-"legato" f-3 d-1 a-5 f-3] |
[d-1 a-5 f-3 d-1 a-5 f-3] |
- [d-1\< b-4 g-2 d-1 b-4 \!g-2] |
- [d-1 b-4 g-2 d-1 b-5 g-3] |
+ [d-1\< bes-4 g-2 d-1 bes-4 \!g-2] |
+ [d-1 bes-4 g-2 d-1 bes-5 g-3] |
[cis-1\mf g-4 e-2 cis-1 g-4 e-2] |
- [cis-1 b-5 g-4 e-2 a-5 g-4] |
+ [cis-1 bes-5 g-4 e-2 a-5 g-4] |
[f-3\< d-1 f-2 a-4 f-1 a-2] |
[d'-5 a-1 d'-2 f'-4 d'-1 \!f'-2] |
[b'\> f'-3 e' d' c'-3 b] |
[a gis-3 fis e d'-5 \!b-2] |
- \multi 2 <
+ <
{
- \stemup
+ \voiceone;
% c'4\mr^"(\\textsharp)"\p r r |
% c'4\mr^"(\\textsharp)" r r
c'4^"(\\textsharp)"\p r r |
c'4^"(\\textsharp)" r r
}
- {
- \stemdown
- a4 r r |
- a4 r r
- }
+ { \voicetwo; a4 r r | a4 r r }
> |
- \stemboth;
+ \onevoice;
[a'8\mf( es'-3\> d' c' bes!-3 a] |
[g fis-3 e!-2 d-1 c'-4 \!a] |
[)bes32(\p a bes16] [d'8-5 bes-3 g-1] )g'4 |
-% r8 [d'-5( c bes a\pr g] |
- r8 [d'-5( c bes a g] |
+% r8 [d'-5( c' bes a\pr g] |
+ r8 [d'-5( c' bes a g] |
[)a-2 c'-4( a f] ) f'4 |
% r8 [c'-5 bes a g\tr f] |
r8 [c'-5 bes a g f] |
[g-2 bes-4 a g f-1 e-2] |
[f-3 d-1 f-2 a-3 d'-5 g-2] |
- \multi 2 <
- {
- \stemup
- [cis'32-4 b cis'16 e'8-5-"poco cresc." cis'-3 a e' cis']
- }
- {
- \stemdown
- a4
+ <
+ {
+ \voiceone;
+ [cis'32-4 bes cis'16 e'8-5-"poco cresc." cis'-3 a e' cis']
}
+ { \voicetwo; a4 }
>
- \stemboth
+ \onevoice;
[a8 e'-5 cis' a bes!-3 a] |
[g e'-5 cis'-3 g e'-5 cis'-3] |
[g-1 e'-5 cis' g a-3 g] |
[f-"dim." d'-5 bes f d' bes] |
[f d'-5 bes f d' bes] |
[fis-2-"dim." c'-5 a-3 fis-2 c'-5 a-3] |
- [fis-2 c'-5 a-3 fis-2 c-5 a-3] |
+ [fis-2 c'-5 a-3 fis-2 c'-5 a-3] |
[bes-4 g-1 fis-2 g-3 d-1 g-2] |
[bes-4 g-2 d-1 bes-5 g-3 d-1] |
[e-2\p g-4 fis-3 g-1 bes-4 g-2] |
[d-1 a-5 f-3 d-1 cis-2 d-1] |
[e-3\< g-5 e-3 'bes-1 g-5 e-3] |
['bes-1 g-5 e-3 \!cis-2 'a-1 g-5] |
- [f16-4\mf d-2 c-1 'bes-3] /stemup 'a-2 s16 s8 s4 |
+ [f16-4\mf d-2 c-1 'bes-3] \stemup 'a-2 s16 s8 s4 |
% ugh
% s1 |
s4 s4 s4 |
s4 s16 [d16-1-"m.d." f-2 a-4] \stemdown [d-2-"m.g." f a] \stemup d'-1 |
\stemboth
- [f' a'-4 f' d'] [f'-4 d' b d'-5] [gis-2 b a g] |
+ [f' a'-4 f' d'] [f'-4 d' b d'-5] [gis-2 b a gis] |
<g'!4.-5\f e' a> a'8-5
- \multi 2 <
+ <
{
- \stemup
+ \voiceone;
f'4-4\> ~ | \![f'8 e'] [e'32-4 f' e'8. ~] [e'8 d'-3]
}
- {
- \stemdown
- <d'4 a> r4 cis'-2
- }
+ { \voicetwo; <d'4 a> r4 cis'-2 }
> |
- \stemboth;
+ \onevoice;
[d'8-4 c'!-3 a-1 d'-4 bes-2 g-1] |
[c'-5 a-3 fis-2 bes-4 g e ] |
[a-5 fis-"dim. e rall." d g-5 e cis-2] |
- \multi 2 <
- {
- \stemup
- <fis2-.-5\p 'a>
- }
- {
- \stemdown
- [d32( cis d8. ~] ) d2
- }
+ <
+ { \voiceone; <fis2-.-5\p 'a> }
+ { \voicetwo; [d32( cis d8. ~] ) d2 }
> |
\bar "|.";
}
-lh = \melodic{
+two = \melodic{
\clef "bass";
\octave c;
[d32( cis )d8.] r4 r |
r4 r r |
%{
ugh, 'forget' the 8 below:
- [cis-3( e cis 'a] [d16-1 c 'b 'a] |
+ [cis-3( e cis 'a] [d16-1 c 'bes 'a] |
and lily dumps koor
lilypond: ../flower/include/varray.hh:116: struct Rhythmic_grouping *& Array<Rhythmic_grouping *>::elem(int) const: Assertion `i >=0&&i<size_' failed.
Aborted (core dumped)
%}
- [cis8-3( e cis 'a] [d16-1 c 'b 'a] |
+ [cis8-3( e cis 'a] [d16-1 c 'bes 'a] |
[)'g8 g a-2( g-3 a-1 'a] |
)d4-3 d'-1 d |
d r r |
\bar "|.";
}
-global = \melodic{
+global = \melodic{
\meter 3/4;
\key bes;
}
+treble_staff = \type Staff = treble <
+ \global
+ \one
+>
+
+bass_staff = \type Staff = bass <
+% bass = Staff <
+ \clef "bass";
+ \global
+ \two
+>
+
+grand_staff = \type Grandstaff <
+ \treble_staff
+ \bass_staff
+>
+
+widea4 = \paper {
+ \paper_twenty
+% arithmetic_basicspace = 2.;
+% arithmetic_multiplier = 6.\pt;
+ arithmetic_basicspace = 2.;
+ arithmetic_multiplier = 8.\pt;
+ linewidth= 195.\mm;
+}
+
\score{
- % Moderato
- % it would be nice to shut-off fingering...
- \melodic \type Grandstaff <
- <
- \global
- \rh
- >
- <
- \global
- \lh
- >
- >
- \paper{
- \paper_twenty
- linewidth= 195.\mm;
-% arithmetic_basicspace = 2.;
-% arithmetic_multiplier = 6.\pt;
- arithmetic_basicspace = 2.;
- arithmetic_multiplier = 8.\pt;
- }
- \midi{
- \tempo 4 = 90;
- }
+ % Moderato
+ \grand_staff
+ \paper{ \widea4 }
+ \midi{ \tempo 4 = 90; }
}
+
[a16 a-5 \stemup g! f] g4-4\< ~ g f-3 ~ |
[\!f16 a g f] [e16 g8.-5 ~] [g16 g-5 f-4 e-3] [d-1 f8.-4 ~] |
[f16 f-3 e d] b4 a-5 g-5 |
- fis4-4 g r8\<-"rall." [g16-1( bes-2] \!e'4-5\> |
+ fis4-4 g r8\<-"rall." [g16-1( bes-2] \!e'4-5 |
\!)d'1-5
\bar "|.";
}
s4 [e32 d e8.~] e4 d4 ~ |
d4. [cis16-2 d-1] cis4 d-1 ~ |
d8 r r16 [e-2 f d] r16 [e-2 f d] r [d-1 e-3 cis] |
- r16 [e-3 d-1 c!-2] ['bes! d8.] s4 r16 [bes-2 a-2 \!g-1] |
+ r16 [e-3 d-1 c!-2] ['bes! d8.] s4 r16\> [bes-2 a-2 \!g-1] |
fis1-2
}
b2-1 a-1 |
g a4. [gis16 a] |
gis2 <[g8 cis> <f-3 d-1]> e4-2 |
- d4. [fis16-3 g-2] r16 b8.-1 ~ b4 |
+ d4. [fis16-3 g-2] r16 bes8.-1 ~ bes4 |
\stemdown
d1-5
}
-rh = \melodic{
- \one
- \multi 2 <
- \one
- \two
- >
- \bar "|.";
+global = \melodic{
+ \meter 4/4;
+ \key bes;
}
-lh = \melodic{
+treble_staff = \type Staff = treble <
+ \global
+ \one
+ \two
+>
+
+bass_staff = \type Staff = bass <
+% bass = Staff <
\clef "bass";
- \multi 2 <
- \three
- \four
- >
- \bar "|.";
-}
+ \global
+ \three
+ \four
+>
+grand_staff = \type Grandstaff <
+ \treble_staff
+ \bass_staff
+>
-global = \melodic{
- \meter 4/4;
- \key bes;
+a4 = \paper{
+ \paper_twenty
+ linewidth = 195.\mm;
}
\score{
- % Allegretto
- % it would be nice to shut-off fingering...
- \melodic \type Grandstaff <
- \type Staff=treble <
- \global
-% huh? try these iso directly!
-% \lh
- \multi 2 <
- \one
- \two
- >
- >
- \type Staff=bass <
- \global
-% \rh
-% or try \two having here, iso above!
- \clef "bass";
- \multi 2 <
- \three
- \four
- >
- >
- >
- \paper{
- \paper_twenty
- linewidth= 195.\mm;
- }
- \midi{
- \tempo 4 = 40;
- }
+ % Allegretto
+ \grand_staff
+ \paper{ \a4 }
+ \midi{ \tempo 4 = 40; }
}
+
\hsize210mm
\vsize269mm
\advance\topmargin-25mm
-\advance\textheight45mm
+\advance\textheight50mm
\pagestyle{empty}
\input titledefs
\kern-\staffheight
\piece{1}{preludes-1}{Moderato}
-\vskip2\staffheight
\piece{2}{preludes-2}{Moderato}
\newpage
\piece{3}{preludes-3}{Semplice e non troppo legato}
\def\cmrtwenty{
\font\meterfont=cmbx15
- \font\italicfont=cmti10
+ \font\italicfont=cmti10 scaled \magstep1
\font\musicmathfont=cmsy10
\font\normaltextfont=cmr10 %\textfont is a primitive
\font\smalltextfont=cmr8
\font\smalltextfont=cmr6
\font\normaltextfont=cmr8 %\textfont is a primitive
\font\meterfont=cmbx12
- \font\italicfont=cmti8
+ \font\italicfont=cmti9
\font\textmusic=cmmi10
\font\boldfont=cmbx8
}