---- ../lilypond-1.3.137/CHANGES Sun Mar 11 20:00:15 2001
+--- ../lilypond-1.3.137.jcn1/CHANGES Mon Mar 12 22:39:39 2001
+++ b/CHANGES Wed Mar 14 23:37:02 2001
+@@ -1,3 +1,14 @@
+1.3.136.jcn2
+============
+
+* Small refman fixes.
+
+* Better tutorial orchestral score example.
+
+* Bugfix: input/test/hshift.ly
+
+* Fixed looks of configure options.
+
+ 1.3.136.jcn1
+ ============
+ --- ../lilypond-1.3.137/CHANGES Sun Mar 11 20:00:15 2001
++ b/CHANGES Mon Mar 12 22:39:39 2001
@@ -1,3 +1,13 @@
1.3.136.jcn1
* Preface:: Preface
* Tutorial:: A tutorial introduction to LilyPond.
* Reference Manual:: Reference Manual.
-* Tricks:: Features, tips and tricks.
+* Tricks:: Features, tips and tricks.
* Invoking LilyPond:: Operation.
* Bug reports:: Where to report bugs.
* ly2dvi:: Generating nice output with titles.
* convert-ly:: Upgrading input files.
-* Conversion tools:: Converting from MIDI input.
+* Conversion tools:: Converting to lilypond source format.
+* lilypond-book:: Interleaving text with music.
* Internals:: How it all works.
* Literature:: additional reading
* Index of internals:(lilypond-internals). Auto generated detailed documentation.
@menu
* Overview::
* Note entry::
-* Music notation::
+* Staff notation::
* Polyphony::
-* Spanners::
+* Beaming::
+* Expressive marks::
* Ornaments::
* Repeats::
* Piano music::
@menu
-* Notes mode::
* Pitches::
* Defining pitch names::
* Durations::
* Notes::
-* Note head tweaks::
+* Easy Notation note heads ::
+* Tie::
* Rests::
* Skip::
+* Note mode::
@end menu
@c . {Pitches}
between tied notes, dotted notes and plain notes.
@c . {Tuplets}
+@menu
+* Tuplets::
+@end menu
+
@node Tuplets
@subsubsection Tuplets
@cindex Tuplets
@cindex Staff notation
@menu
-* Key::
-* Breath marks::
+* Key signature::
* Time signature::
+* Bar lines::
@end menu
@c . {Key}
shifted horiztonally. Also @code{\shiftOnn} and @code{\shiftOnnn}
set different shift values.
-@cindex @code{\stemBoth}
+@cindex @code{\stemBoth}
@item @code{\stemBoth}
- Allow stems, beams, and slurs to point either upwards or
+ Allow stems and beams to point either upwards or
downwards, decided automatically by LilyPond.
@cindex @code{\stemDown}
@item @code{\stemDown}
- Force stems, beams, and slurs to point down.
+ Force stems and beams to point down.
@cindex @code{\stemUp}
@item @code{\stemUp}
- Force stems, beams and slurs to point up.
+ Force stems and beams to point up.
@end table
+@cindex @code{\slurBoth}
+@cindex @code{\slurDown}
+@cindex @code{\slurUp}
+Similarly, for slurs use
+@code{\slurBoth},
+@code{\slurDown},
+@code{\slurUp}.
+@cindex @code{\slurBoth}
+@cindex @code{\slurDown}
+@cindex @code{\slurUp}
+Aand for ties use
+@code{\tieBoth},
+@code{\tieDown},
+@code{\tieUp}.
+
@node Beaming
@section Beaming
@section Expressive marks
@c . {Slur}
+@menu
+* Slur ::
+* Phrasing slur::
+* Breath marks::
+@end menu
+
@node Slur
@subsection Slur
@cindex slur
@code{Voice.Slur}'s grob-property @code{attachment}:
[TODO: remove this section]
-maybe reinclude other slur features and move back to tricks?
+Maybe reinclude other slur features and move back to tricks? Esp. the
+second example, how to fix, can be very helpful.
@quotation
@lilypond[fragment,relative,verbatim]
@c . {Text spanner}
+@menu
+* Text spanner::
+@end menu
+
@node Text spanner
@subsubsection Text spanner
@cindex Text spanner
* Articulation::
* Text scripts::
* Grace notes::
-* Bar check::
@end menu
@c . {Articulation}
@menu
* Glissando ::
* Dynamics::
-* Crescendo and Decrescendo::
-* Bar lines::
@end menu
As you can see, LilyPond doesn't remember the timing information, nor
are slurs or ties repeated, so you have to reset timing information
-after a repeat, e.g. using a bar-check (See @ref{Bar checks}),
+after a repeat, e.g. using a bar-check (See @ref{Bar check}),
@code{Score.measurePosition} or @code{\partial}. We hope to fix this
after 1.4.
@cindex Music entry
@menu
* Relative::
+* Bar check::
* Point and click::
@end menu
@c . {Span requests}
+@menu
+* Span requests::
+@end menu
+
@node Span requests
@subsubsection Span requests
@cindex Span requests
* More movements ::
* A piano excerpt:: Piano music
* An orchestral score::
+* Part extraction::
* end of tutorial:: The end
@end menu
@node An orchestral score
@section An orchestral score
-[LOTS TODO:
-demonstrate Hara-Kiri, part combining, part extraction,
-scores, transposition, instrument names.]
+If you've come this far, you should have seen enough LilyPond source to
+feel comfortable with an orchestral score. We will not go through the
+input line by line, but only indicate and explain the new elements.
-Hopefully, you have seen enough LilyPond input examples by now to be
-able read the input for a full orchestral score. We will not go through
-the input line by line, but only indicate and explain the new elements.
+% os-music.ly
+@quotation
+@example
+\header @{
+ title = "Zo, goed lieverd?";
+ subtitle = "How's, this babe?";
+ composer = "JCN";
+ piece = "Laid back";
+@}
+global = \notes @{
+ \time 2/4;
+ \skip 2*4; \bar "|.";
+@}
+Key = \notes \key as \major;
+flautoI = \notes\relative c'' @{
+ f8 g f g f g f g
+ bes as bes as bes as bes as
+@}
+flautoII = \notes\relative c'' @{
+ as8 bes as bes R1 d4 ~ d
+@}
+tromboI = \notes\relative c'' @{
+ c4. c8 c8 c4. es4 R1*1/2 es4
+@}
+tromboII = \notes\relative c'' @{
+ as4. as8 as8 as4. R1*1/2 as4 es'
+@}
+timpani = \notes\relative c, @{
+ \times 2/3 @{ f4 f f @}
+ \times 4/5 @{ as8 as as as as @}
+@}
+corno = \notes\relative c' @{
+ bes4 d f, bes d f, bes d
+@}
+@end example
+@end quotation
+% geen titels, wat jammer :-(
+% os-score.ly
+@quotation
@lilypond[verbatim]
-\version "1.3.130";
-
+\include "os-music.ly";
\include "paper13.ly";
-% #(set! point-and-click #t)
+#(set! point-and-click #t)
+#(define text-flat '((font-relative-size . -2)
+ (music "accidentals--1")))
-% Coriolan 218-222
-flautoI = \notes\relative c'' {
- \property Score.currentBarNumber = #218
- des2.()c4|e(f e)f|\break
- r2 des4\sf()c|r2 des4\sf()c|
-}
-flautoII = \notes\relative c'' {
- g2.()as4|bes(as bes)as|
- R1*2
-}
-oboeI = \notes\relative c'' {
- e2.()f4|e(f e)f|
- r2 as|r as\sf|
-}
-oboeII = \notes\relative c'' {
- g2.()as4|bes(as bes)as|
- r2 as'|r as\sf|
-}
-clarinettoI = \notes\relative c' {
- es2.()d4|c(bis c)bes|
-% r2 es4\sf()d|r2 es4\sf()d|
-}
-clarinettoII = \notes\relative c' {
- es2.()d4|c(bes c)bes|
-% r2 es'4\sf()d|r2 es4\sf()d|
-}
-fagottoI = \notes\relative c' {
- bes2.()as4|g(f g)f|
- r r8 des' des4\sf()es|r r8 des des4\sf()es|
-}
-fagottoII = \notes\relative c' {
- bes2.()as4 | g(f g)f|
- f4 r r2 | f4 r r2|
-}
-cornoI = \notes\relative c''' {
- g2. f4|g f g f|
-% r4 r8 f f2|r4 r8 f f2|
-}
-cornoII = \notes\relative c''' {
- g,2. d'4|g, d' g, d'|
- r4 r8 d d4\sf()es|r4 r8 d d4\sf()es|
-}
-tromboI = \notes\relative c'' {
- c2. c4|c c c c|
- R1*2|
-}
-tromboII = \notes\relative c' {
- c2. c4|c c c c|
- R1*2|
-}
-timpani = \notes\relative c {
- c2:16 c4 c|c c c c |
- R1*2|
-}
-violinoI = \notes\relative c' {
- des'2:16\ff des4: c:|e,: f: e: f:|
- r8 as des,4\sf~des()c |r8 as' des,4\sf~des()c|
-}
-violinoII = \notes\relative c' {
- des2:16\ff des4: c: | bes: as: bes: as:|
-% r8 as des,4\sf ~ des()c| r8 as' des,4\sf ~ des()c|
-}
-violaI = \notes\relative c' {
- e2:16\ff e4: f:|b,: c: b: c:|
- r4 r8 as as2\sf|r4 r8 as as2\sf|
-}
-violaII = \notes\relative c' {
- bes2:16\ff bes4: as:|g: f: g: f: |
- r4 r8 f f4\sf()ges|r4 r8 f f4\sf()ges|
-}
-violoncello = \notes\relative c {
- bes2.\ff()as4|g( f g )f |
- r4 r8 f' f4\sf()ges |r4 r8 f f4\sf()ges |
-}
-contrabasso = \notes\relative c {
- bes2.\ff()as4|g( f g )f|
- f4 r r2 |f'4 r r2|
-}
-
-#(define text-flat '((font-relative-size . -2) (music "accidentals--1")))
-
-staffCombinePianoStaffProperties = {
- \property PianoStaff.devNullThread = #'()
- \property PianoStaff.soloADue = ##t
- \property PianoStaff.soloText = #""
- \property PianoStaff.soloIIText = #""
- % This is non-conventional, but currently it is
- % the only way to tell the difference.
- \property PianoStaff.aDueText = #"\\`a2"
- \property PianoStaff.splitInterval = #'(1 . 0)
- \property PianoStaff.changeMoment = #`(,(make-moment 1 1) . ,(make-moment 1 1))
- \property PianoStaff.noDirection = ##t
-}
-
-%%
-%% Hmm, can't we move this to a `template.ly'
-%%
\score {
- <
- \context StaffGroup = wood <
+ \notes <
+ \global
+ \context StaffGroup = woodwind <
\context Staff = flauti <
\property Staff.midiInstrument = #"flute"
\property Staff.instrument = "2 Flauti"
\property Staff.instr = "Fl."
- \context Voice=one \partcombine Voice
- \context Thread=one \flautoI
- \context Thread=two \flautoII
- >
- \context Staff = oboes <
- \property Staff.midiInstrument = #"oboe"
- \property Staff.instrument = "2 Oboi"
- \property Staff.instr = "Ob."
- \context Voice=one \partcombine Voice
- \context Thread=one \oboeI
- \context Thread=two \oboeII
- >
- \context Staff = clarinets <
- \property Staff.midiInstrument = #"clarinet"
- \property Staff.instrument = #`(lines
- "2 Clarinetti" (rows "(B" ,text-flat ")"))
- \property Staff.instr = #`(lines
- "Cl." (rows "(B" ,text-flat ")"))
- \property Staff.transposing = #-2
- \notes \key f \major;
- \context Voice=one \partcombine Voice
- \context Thread=one \clarinettoI
- \context Thread=two \clarinettoII
- >
- \context Staff = bassoons <
- \property Staff.midiInstrument = #"bassoon"
- \property Staff.instrument = "2 Fagotti"
- \property Staff.instr = "Fg."
- \clef bass;
- \context Voice=one \partcombine Voice
- \context Thread=one \fagottoI
- \context Thread=two \fagottoII
- >
- >
- \context StaffGroup = brass <
- \context Staff = frenchHorns <
- \property Staff.midiInstrument = #"french horn"
- \property Staff.instrument = #`(lines
- "2 Corni" (rows "(E" ,text-flat ")"))
- \property Staff.instr = #`(lines
- "Cor." (rows "(E" ,text-flat ")"))
- \property Staff.transposing = #3
- \notes \key c \major;
- \context Voice=one \partcombine Voice
- \context Thread=one \cornoI
- \context Thread=two \cornoII
- >
- \context Staff = trumpets <
- \property Staff.midiInstrument = #"trumpet"
- \property Staff.instrument = #`(lines
- "2 Trombe" (rows "(C)"))
- \property Staff.instr = #`(lines
- "Tbe." (rows "(C)"))
- \context Voice=one \partcombine Voice
- \context Thread=one \tromboI
- \context Thread=two \tromboII
+ \Key
+ \context Voice=one { \voiceOne \flautoI }
+ \context Voice=two { \voiceTwo \flautoII }
>
>
\context StaffGroup = timpani <
\context Staff = timpani <
\property Staff.midiInstrument = #"timpani"
- \property Staff.instrument = #'(lines
- "2 Timpani" "(C-G)")
+ \property Staff.instrument = #'(lines "Timpani" "(C-G)")
\property Staff.instr = #"Timp."
\clef bass;
+ \Key
\timpani
>
>
- \context StaffGroup = strings <
- \context GrandStaff = violins <
- \context Staff = viI <
- \property Staff.midiInstrument = #"violin"
- \property Staff.instrument = "Violino I"
- \property Staff.instr = "Vi. I"
- \violinoI
- >
- \context Staff = viII <
- \property Staff.midiInstrument = #"violin"
- \property Staff.instrument = "Violino II"
- \property Staff.instr = "Vi. II"
- \violinoII
- >
- >
- \context Staff = vla <
- \property Staff.midiInstrument = #"viola"
- \property Staff.instrument = "Viola"
- \property Staff.instr = "Vla."
- \clef alto;
+ \context StaffGroup = brass <
+ \context Staff = trombe <
+ \property Staff.midiInstrument = #"trumpet"
+ \property Staff.instrument = #`(lines "2 Trombe"
+ (rows "(C)"))
+ \property Staff.instr = #`(lines "Tbe." (rows "(C)"))
+ \Key
\context Voice=one \partcombine Voice
- \context Thread=one \violaI
- \context Thread=two \violaII
+ \context Thread=one \tromboI
+ \context Thread=two \tromboII
>
- \context PianoStaff=bass <
- \staffCombinePianoStaffProperties
- \context Staff=one <
- \property Staff.midiInstrument = #"cello"
- \property Staff.instrument = #'(lines
- "Violoncello" " e" "Contrabasso")
- \property Staff.instr = "Vc."
- \clef bass;
- >
- \context Staff=two <
- \property Staff.midiInstrument = #"contrabass"
- \property Staff.instrument = "Contrabasso"
- \property Staff.instr = "C.B."
- \clef bass;
- \skip 1*4; % sustain clef
- >
- \context Staff=one \partcombine Staff
- \context Voice=one \violoncello
- \context Voice=two \contrabasso
+ \context Staff = corni <
+ \property Staff.midiInstrument = #"french horn"
+ \property Staff.instrument = #`(lines "Corno"
+ (rows "(E" ,text-flat ")"))
+ \property Staff.instr = #`(lines "Cor."
+ (rows "(E" ,text-flat ")"))
+ \property Staff.transposing = #3
+ \notes \key bes \major;
+ \context Voice=one \corno
>
>
>
\paper {
- \paperThirteen
- linewidth = 80 * \staffspace;
- textheight = 200 * \staffspace;
+ indent = 15 * \staffspace;
+ linewidth = 60 * \staffspace;
+ textheight = 90 * \staffspace;
\translator{
\ThreadContext
\consists "Rest_engraver";
-
- % Set value for engraver at thread level,
- % to override the default that is set in ScoreContext
- % for added engraver at Voice level
- devNullThread = #'()
}
\translator{
\VoiceContext
\remove "Rest_engraver";
-
- % The staff combine (bassi part) needs a
- % thread_devnull_engraver here.
- % Instead of maintaining two separate hierarchies,
- % we switch add it, but switch it off immediately.
- % --> move to Score level to be able to override
- % The staff combine part switches it on.
-
- %% devNullThread = #'never
- \consists "Thread_devnull_engraver";
}
\translator{
\HaraKiriStaffContext
- \consists "Mark_engraver";
}
\translator {
\OrchestralScoreContext
- % skipBars = ##t
-
- soloText = #"I."
- soloIIText = #"II."
- % By default, turn off the Thread_devnull_engraver
- % at Voice level
- devNullThread = #'never
-
- % Hmm
- currentBarNumber = #218
BarNumber \override #'padding = #3
- RestCollision \override #'maximum-rest-count = #1
- TimeSignature \override #'style = #'C
}
}
+ \midi {
+ \tempo 4 = 75;
+ }
}
@end lilypond
+@end quotation
-Ok, so explain:
+@node Part extraction
+@section Part extraction
-@example
-% #(set! point-and-click #t)
-@end example
-
-@example
-#(define text-flat '((font-relative-size . -2) (music "accidentals--1")))
-@end example
-
-@example
-staffCombinePianoStaffProperties = @{
-@end example
-
-@example
-% Coriolan 218-222
-@end example
-
-@example
-flautoI = \notes\relative c'' @{
-@end example
-
-@example
- \property Score.currentBarNumber = #218
-@end example
-
-@example
-flautoII = \notes\relative c'' @{
-@end example
-
-[skip]
-
-
-The hairyness of Staff combining
-
-@example
- \property PianoStaff.devNullThread = #'()
-@end example
-
-@example
- \property PianoStaff.soloADue = ##t
-@end example
-
-@example
- \property PianoStaff.soloText = #""
- \property PianoStaff.soloIIText = #""
-@end example
-
-@example
- % This is non-conventional, but currently it is
- % the only way to tell the difference.
- \property PianoStaff.aDueText = #"\\`a2"
-@end example
-
-@example
- \property PianoStaff.splitInterval = #'(1 . 0)
- \property PianoStaff.changeMoment = #`(,(make-moment 1 1) . ,(make-moment 1 1))
-@end example
-
-@example
- \property PianoStaff.noDirection = ##t
-@end example
-
-
-@example
-\score @{
- <
-@end example
-
-@example
- \context StaffGroup = wood <
-@end example
-
-@example
- \context Staff = flauti <
-@end example
-
-@example
- \property Staff.midiInstrument = #"flute"
-@end example
-
-@example
- \property Staff.instrument = "2 Flauti"
- \property Staff.instr = "Fl."
-@end example
-
-@example
- \context Voice=one \partcombine Voice
- \context Thread=one \flautoI
- \context Thread=two \flautoII
- >
-@end example
-
-[skip]
-
-@example
- \property Staff.instrument = #`(lines
- "2 Clarinetti" (rows "(B" ,text-flat ")"))
-@end example
-
-@example
- \property Staff.instr = #`(lines
- "Cl." (rows "(B" ,text-flat ")"))
-@end example
-
-@example
- \property Staff.transposing = #-2
-@end example
-
-@example
- \notes \key f \major;
-@end example
-
-@example
-@end example
+@quotation
+@lilypond[verbatim]
+\include "os-music.ly";
+\include "paper16.ly";
-[the syntax of staff combining]
-[the paper block]
+\score {
+ \context Staff <
+ \property Staff.midiInstrument = #"flute"
+ \global
+ \Key
+ \flautoII
+ >
+ \header {
+ instrument = "flute I";
+ }
+ \paper {
+ linewidth = 80 * \staffspace;
+ textheight = 200 * \staffspace;
+ \translator {
+ \OrchestralScoreContext
+ skipBars = ##t
+ }
+ }
+ \midi {
+ \tempo 4 = 75;
+ }
+}
+@end lilypond
+@end quotation
@node end of tutorial
@section The end
MAJOR_VERSION=1
MINOR_VERSION=3
PATCH_LEVEL=137
-MY_PATCH_LEVEL=jcn1
+MY_PATCH_LEVEL=jcn2
# use the above to send patches: MY_PATCH_LEVEL is always empty for a
# released version.
-dnl WARNING WARNING WARNING WARNING
-dnl do not edit! this is aclocal.m4, generated from stepmake/aclocal.m4
dnl aclocal.m4 -*-shell-script-*-
dnl StepMake subroutines for configure.in
debug_b=yes
AC_ARG_ENABLE(checking,
- [ enable-checking set runtime checks (assert calls). Default: on],
+ [ --enable-checking set runtime checks (assert calls). Default: on],
[checking_b=$enableval] )
- # actually, the default is: tja='-O' to get inlining...
- # off='' --jcn
+ AC_ARG_ENABLE(debugging,
+ [ --enable-debugging compile with debugging info. Default: on],
+ [debug_b=$enableval])
- #actually, that sucks.
- # tja looks like a typo. Default is optimisation off. --hwn
-
AC_ARG_ENABLE(optimise,
- [ enable-optimise use maximal speed optimisations. Default: off],
+ [ --enable-optimise use maximal speed optimisations. Default: off],
[optimise_b=$enableval])
AC_ARG_ENABLE(profiling,
- [ enable-profiling compile with gprof support. Default: off],
+ [ --enable-profiling compile with gprof support. Default: off],
[profile_b=$enableval])
- AC_ARG_ENABLE(debugging,
- [ enable-debugging set debug info. Default: on],
- [debug_b=$enableval])
-
AC_ARG_ENABLE(mingw-prefix,
- [ enable-mingw-prefix=DIR set the mingw32 directory (standalone windows32 exes)],
+ [ --enable-mingw-prefix=DIR
+ set the mingw32 directory (standalone windows32 exes)],
[MINGWPREFIX=$enableval],
[MINGWPREFIX=no])
CONFIGSUFFIX=
AC_ARG_ENABLE(config,
- [ enable-config=FILE put configure settings in config-FILE.make],
+ [ --enable-config=FILE put configure settings in config-FILE.make],
[CONFIGSUFFIX=-$enableval])
CONFIGFILE=config$CONFIGSUFFIX
AC_DEFUN(AC_STEPMAKE_KPATHSEA, [
kpathsea_b=yes
- AC_ARG_ENABLE(kpathsea,
- [ enable-kpathsea use kpathsea lib. Default: on],
+ AC_ARG_WITH(kpathsea,
+ [ --with-kpathsea use kpathsea lib. Default: on],
[kpathsea_b=$enableval])
if test $kpathsea_b = yes; then
# with/enable ??
AC_ARG_WITH(localedir,
- [ with-localedir=LOCALE use LOCALE as locale dir. Default: PREFIX/share/locale ],
+ [ --with-localedir=LOCALE use LOCALE as locale dir. Default:
+ PREFIX/share/locale ],
localedir=$with_localedir,
localedir='${prefix}/share/locale')
AC_ARG_WITH(lang,
- [ with-lang=LANG use LANG as language to emit messages],
+ [ --with-lang=LANG use LANG as language to emit messages],
language=$with_lang,
language=English)
#why has this been dropped?
AC_DEFUN(XXAC_STEPMAKE_TEXMF_DIRS, [
AC_ARG_ENABLE(tex-prefix,
- [ enable-tex-prefix=DIR set the tex-directory to find TeX subdirectories. Default: PREFIX],
+ [ --enable-tex-prefix=DIR set the tex-directory to find TeX
+ subdirectories. Default: PREFIX],
[TEXPREFIX=$enableval],
[TEXPREFIX=auto] )
AC_ARG_ENABLE(tex-dir,
- [ enable-tex-dir=DIR set the directory to put $PACKAGE_NAME TeX files in. ],
+ [ --enable-tex-dir=DIR set the directory to put $PACKAGE_NAME TeX files in. ],
[TEXDIR=$enableval],
[TEXDIR=auto] )
AC_ARG_ENABLE(mf-dir,
- [ enable-mf-dir=DIR set the directory to put $PACKAGE_NAME MetaFont files in. ],
+ [ --enable-mf-dir=DIR set the directory to put $PACKAGE_NAME MetaFont files in. ],
[MFDIR=$enableval],
[MFDIR=auto])
AC_DEFUN(AC_STEPMAKE_TEXMF_DIRS, [
AC_ARG_ENABLE(tfm-path,
- [ enable-tfm-path=PATH set path of tex directories where tfm files live, esp.: cmr10.tfm. Default: use kpsewhich],
+ [ --enable-tfm-path=PATH set path of tex directories where tfm files live,
+ esp.: cmr10.tfm. Default: use kpsewhich],
[tfm_path=$enableval],
[tfm_path=auto] )
-shiftI \property Voice.NoteColumn \override #'horizontal-shift = #0
-shiftII \property Voice.NoteColumn \override #'horizontal-shift = #1
-shiftIII \property Voice.NoteColumn \override #'horizontal-shift = #2
-shiftIV \property Voice.NoteColumn \override #'horizontal-shift = #3
-shiftV \property Voice.NoteColumn \override #'horizontal-shift = #4
+shiftI = \property Voice.NoteColumn \override #'horizontal-shift = #0
+shiftII = \property Voice.NoteColumn \override #'horizontal-shift = #1
+shiftIII = \property Voice.NoteColumn \override #'horizontal-shift = #2
+shiftIV = \property Voice.NoteColumn \override #'horizontal-shift = #3
+shiftV = \property Voice.NoteColumn \override #'horizontal-shift = #4
\score {
\context Voice \notes\relative c {
+++ /dev/null
-
-
-\include "paper13.ly";
-
-% #(set! point-and-click #t)
-
-% Coriolan 218-222
-flautoI = \notes\relative c'' {
- \property Score.currentBarNumber = #218
- des2.()c4|e(f e)f|\break
- r2 des4\sf()c|r2 des4\sf()c|
-}
-flautoII = \notes\relative c'' {
- g2.()as4|bes(as bes)as|
- R1*2
-}
-oboeI = \notes\relative c'' {
- e2.()f4|e(f e)f|
- r2 as|r as\sf|
-}
-oboeII = \notes\relative c'' {
- g2.()as4|bes(as bes)as|
- r2 as'|r as\sf|
-}
-clarinettoI = \notes\relative c' {
- es2.()d4|c(bis c)bes|
-% r2 es4\sf()d|r2 es4\sf()d|
-}
-clarinettoII = \notes\relative c' {
- es2.()d4|c(bes c)bes|
-% r2 es'4\sf()d|r2 es4\sf()d|
-}
-fagottoI = \notes\relative c' {
- bes2.()as4|g(f g)f|
- r r8 des' des4\sf()es|r r8 des des4\sf()es|
-}
-fagottoII = \notes\relative c' {
- bes2.()as4 | g(f g)f|
- f4 r r2 | f4 r r2|
-}
-cornoI = \notes\relative c''' {
- g2. f4|g f g f|
-% r4 r8 f f2|r4 r8 f f2|
-}
-cornoII = \notes\relative c''' {
- g,2. d'4|g, d' g, d'|
- r4 r8 d d4\sf()es|r4 r8 d d4\sf()es|
-}
-tromboI = \notes\relative c'' {
- c2. c4|c c c c|
- R1*2|
-}
-tromboII = \notes\relative c' {
- c2. c4|c c c c|
- R1*2|
-}
-timpani = \notes\relative c {
- c2:16 c4 c|c c c c |
- R1*2|
-}
-violinoI = \notes\relative c' {
- des'2:16\ff des4: c:|e,: f: e: f:|
- r8 as des,4\sf~des()c |r8 as' des,4\sf~des()c|
-}
-violinoII = \notes\relative c' {
- des2:16\ff des4: c: | bes: as: bes: as:|
-% r8 as des,4\sf ~ des()c| r8 as' des,4\sf ~ des()c|
-}
-violaI = \notes\relative c' {
- e2:16\ff e4: f:|b,: c: b: c:|
- r4 r8 as as2\sf|r4 r8 as as2\sf|
-}
-violaII = \notes\relative c' {
- bes2:16\ff bes4: as:|g: f: g: f: |
- r4 r8 f f4\sf()ges|r4 r8 f f4\sf()ges|
-}
-violoncello = \notes\relative c {
- bes2.\ff()as4|g( f g )f |
- r4 r8 f' f4\sf()ges |r4 r8 f f4\sf()ges |
-}
-contrabasso = \notes\relative c {
- bes2.\ff()as4|g( f g )f|
- f4 r r2 |f'4 r r2|
-}
-
-
-#(define text-flat '((font-relative-size . -2) (music "accidentals--1")))
-
-staffCombinePianoStaffProperties = {
- \property PianoStaff.devNullThread = #'()
- \property PianoStaff.soloADue = ##t
- \property PianoStaff.soloText = #""
- \property PianoStaff.soloIIText = #""
- % This is non-conventional, but currently it is
- % the only way to tell the difference.
- \property PianoStaff.aDueText = #"\\`a2"
- \property PianoStaff.splitInterval = #'(1 . 0)
- \property PianoStaff.changeMoment = #`(,(make-moment 1 1) . ,(make-moment 1 1))
- \property PianoStaff.noDirection = ##t
-}
-
-%%
-%% Hmm, can't we move this to a `template.ly'
-%%
-\score {
- <
- \context StaffGroup = wood <
- \context Staff = flauti <
- \property Staff.midiInstrument = #"flute"
- \property Staff.instrument = "2 Flauti"
- \property Staff.instr = "Fl."
- \context Voice=one \partcombine Voice
- \context Thread=one \flautoI
- \context Thread=two \flautoII
- >
- \context Staff = oboes <
- \property Staff.midiInstrument = #"oboe"
- \property Staff.instrument = "2 Oboi"
- \property Staff.instr = "Ob."
- \context Voice=one \partcombine Voice
- \context Thread=one \oboeI
- \context Thread=two \oboeII
- >
- \context Staff = clarinets <
- \property Staff.midiInstrument = #"clarinet"
- \property Staff.instrument = #`(lines
- "2 Clarinetti" (rows "(B" ,text-flat ")"))
- \property Staff.instr = #`(lines
- "Cl." (rows "(B" ,text-flat ")"))
- \property Staff.transposing = #-2
- \notes \key f \major;
- \context Voice=one \partcombine Voice
- \context Thread=one \clarinettoI
- \context Thread=two \clarinettoII
- >
- \context Staff = bassoons <
- \property Staff.midiInstrument = #"bassoon"
- \property Staff.instrument = "2 Fagotti"
- \property Staff.instr = "Fg."
- \clef bass;
- \context Voice=one \partcombine Voice
- \context Thread=one \fagottoI
- \context Thread=two \fagottoII
- >
- >
- \context StaffGroup = brass <
- \context Staff = frenchHorns <
- \property Staff.midiInstrument = #"french horn"
- \property Staff.instrument = #`(lines
- "2 Corni" (rows "(E" ,text-flat ")"))
- \property Staff.instr = #`(lines
- "Cor." (rows "(E" ,text-flat ")"))
- \property Staff.transposing = #3
- \notes \key c \major;
- \context Voice=one \partcombine Voice
- \context Thread=one \cornoI
- \context Thread=two \cornoII
- >
- \context Staff = trumpets <
- \property Staff.midiInstrument = #"trumpet"
- \property Staff.instrument = #`(lines
- "2 Trombe" (rows "(C)"))
- \property Staff.instr = #`(lines
- "Tbe." (rows "(C)"))
- \context Voice=one \partcombine Voice
- \context Thread=one \tromboI
- \context Thread=two \tromboII
- >
- >
- \context StaffGroup = timpani <
- \context Staff = timpani <
- \property Staff.midiInstrument = #"timpani"
- \property Staff.instrument = #'(lines
- "2 Timpani" "(C-G)")
- \property Staff.instr = #"Timp."
- \clef bass;
- \timpani
- >
- >
- \context StaffGroup = strings <
- \context GrandStaff = violins <
- \context Staff = viI <
- \property Staff.midiInstrument = #"violin"
- \property Staff.instrument = "Violino I"
- \property Staff.instr = "Vi. I"
- \violinoI
- >
- \context Staff = viII <
- \property Staff.midiInstrument = #"violin"
- \property Staff.instrument = "Violino II"
- \property Staff.instr = "Vi. II"
- \violinoII
- >
- >
- \context Staff = vla <
- \property Staff.midiInstrument = #"viola"
- \property Staff.instrument = "Viola"
- \property Staff.instr = "Vla."
- \clef alto;
- \context Voice=one \partcombine Voice
- \context Thread=one \violaI
- \context Thread=two \violaII
- >
- \context PianoStaff=bass <
- \staffCombinePianoStaffProperties
- \context Staff=one <
- \property Staff.midiInstrument = #"cello"
- \property Staff.instrument = #'(lines
- "Violoncello" " e" "Contrabasso")
- \property Staff.instr = "Vc."
- \clef bass;
- >
- \context Staff=two <
- \property Staff.midiInstrument = #"contrabass"
- \property Staff.instrument = "Contrabasso"
- \property Staff.instr = "C.B."
- \clef bass;
- \skip 1*4; % sustain clef
- >
- \context Staff=one \partcombine Staff
- \context Voice=one \violoncello
- \context Voice=two \contrabasso
- >
- >
- >
- \paper {
- \paperThirteen
- linewidth = 80 * \staffspace;
- textheight = 200 * \staffspace;
- \translator{
- \ThreadContext
- \consists "Rest_engraver";
-
- % Set value for engraver at thread level,
- % to override the default that is set in ScoreContext
- % for added engraver at Voice level
- devNullThread = #'()
- }
- \translator{
- \VoiceContext
- \remove "Rest_engraver";
-
- % The staff combine (bassi part) needs a
- % thread_devnull_engraver here.
- % Instead of maintaining two separate hierarchies,
- % we switch add it, but switch it off immediately.
- % --> move to Score level to be able to override
- % The staff combine part switches it on.
-
- %% devNullThread = #'never
- \consists "Thread_devnull_engraver";
- }
- \translator{
- \HaraKiriStaffContext
- \consists "Mark_engraver";
- }
- \translator {
- \OrchestralScoreContext
- % skipBars = ##t
-
- soloText = #"I."
- soloIIText = #"II."
- % By default, turn off the Thread_devnull_engraver
- % at Voice level
- devNullThread = #'never
-
- % Hmm
- currentBarNumber = #218
- BarNumber \override #'padding = #3
- RestCollision \override #'maximum-rest-count = #1
- TimeSignature \override #'style = #'C
- }
- }
-}
-
--- /dev/null
+
+\include "os-music.ly";
+\include "paper16.ly";
+
+\score {
+ \context Staff <
+ \property Staff.midiInstrument = #"flute"
+ \global
+ \Key
+ \flautoII
+ >
+ \header {
+ instrument = "flute I";
+ }
+ \paper {
+ linewidth = 80 * \staffspace;
+ textheight = 40 * \staffspace;
+ \translator {
+ \OrchestralScoreContext
+ skipBars = ##t
+ }
+ }
+ \midi {
+ \tempo 4 = 75;
+ }
+}
+
--- /dev/null
+\header {
+ title = "Zo, goed lieverd?";
+ subtitle = "How's, this babe?";
+ composer = "JCN";
+ piece = "Laid back";
+}
+global = \notes {
+ \time 2/4;
+ \skip 2*4; \bar "|.";
+}
+Key = \notes \key as \major;
+flautoI = \notes\relative c'' {
+ f8 g f g f g f g
+ bes as bes as bes as bes as
+}
+flautoII = \notes\relative c'' {
+% d8 es d es R1 d4 ~ d
+ as8 bes as bes R1 d4 ~ d
+}
+tromboI = \notes\relative c'' {
+ c4. c8 c8 c4. es4 R1*1/2 es4
+}
+tromboII = \notes\relative c'' {
+ as4. as8 as8 as4. R1*1/2 as4 es'
+}
+timpani = \notes\relative c, {
+ \times 2/3 { f4 f f }
+ \times 4/5 { as8 as as as as }
+}
+corno = \notes\relative c' {
+ bes4 d f, bes d f, bes d
+}
--- /dev/null
+
+\include "os-music.ly";
+\include "paper13.ly";
+
+#(set! point-and-click #t)
+#(define text-flat '((font-relative-size . -2) (music "accidentals--1")))
+
+\score {
+ \notes <
+ \global
+ \context StaffGroup = woodwind <
+ \context Staff = flauti <
+ \property Staff.midiInstrument = #"flute"
+ \property Staff.instrument = "2 Flauti"
+ \property Staff.instr = "Fl."
+ \Key
+ \context Voice=one { \voiceOne \flautoI }
+ \context Voice=two { \voiceTwo \flautoII }
+ >
+ >
+ \context StaffGroup = timpani <
+ \context Staff = timpani <
+ \property Staff.midiInstrument = #"timpani"
+ \property Staff.instrument = #'(lines "Timpani" "(C-G)")
+ \property Staff.instr = #"Timp."
+ \clef bass;
+ \Key
+ \timpani
+ >
+ >
+ \context StaffGroup = brass <
+ \context Staff = trombe <
+ \property Staff.midiInstrument = #"trumpet"
+ \property Staff.instrument = #`(lines "2 Trombe" (rows "(C)"))
+ \property Staff.instr = #`(lines "Tbe." (rows "(C)"))
+ \Key
+ \context Voice=one \partcombine Voice
+ \context Thread=one \tromboI
+ \context Thread=two \tromboII
+ >
+ \context Staff = corni <
+ \property Staff.midiInstrument = #"french horn"
+ \property Staff.instrument = #`(lines "Corno" (rows "(E" ,text-flat ")"))
+ \property Staff.instr = #`(lines "Cor." (rows "(E" ,text-flat ")"))
+ \property Staff.transposing = #3
+ \notes \key bes \major;
+ \context Voice=one \corno
+ >
+ >
+ >
+ \paper {
+ indent = 15 * \staffspace;
+ linewidth = 60 * \staffspace;
+ textheight = 90 * \staffspace;
+ \translator{
+ \ThreadContext
+ \consists "Rest_engraver";
+ }
+ \translator{
+ \VoiceContext
+ \remove "Rest_engraver";
+ }
+ \translator{
+ \HaraKiriStaffContext
+ }
+ \translator {
+ \OrchestralScoreContext
+ BarNumber \override #'padding = #3
+ }
+ }
+ \midi {
+ \tempo 4 = 75;
+ }
+}
+
FIXME: should not compute vertical positioning of accidentals, but
get them from the noteheads
+ The algorithm for accidentals should be documented, and made
+ tweakable.
+
*/
CONVERT_LY = $(script-dir)/convert-ly.py
LY2DVI = $(script-dir)/ly2dvi.py
LILYPOND_BOOK = $(script-dir)/lilypond-book.py
-LILYPOND_BOOK_INCLUDES = -I $(pwd) -I $(input-dir)/tricks/ -I $(input-dir)/regression/ -I $(input-dir)/test/
+LILYPOND_BOOK_INCLUDES = -I $(pwd) -I $(input-dir)/tricks/ -I $(input-dir)/regression/ -I $(input-dir)/test/ -I $(input-dir)/tutorial/
PS_TO_GIFS = $(buildscript-dir)/ps-to-gifs.sh
PS_TO_PNGS = $(buildscript-dir)/ps-to-pngs.sh
debug_b=yes
AC_ARG_ENABLE(checking,
- [ enable-checking set runtime checks (assert calls). Default: on],
+ [ --enable-checking set runtime checks (assert calls). Default: on],
[checking_b=$enableval] )
- # actually, the default is: tja='-O' to get inlining...
- # off='' --jcn
+ AC_ARG_ENABLE(debugging,
+ [ --enable-debugging compile with debugging info. Default: on],
+ [debug_b=$enableval])
- #actually, that sucks.
- # tja looks like a typo. Default is optimisation off. --hwn
-
AC_ARG_ENABLE(optimise,
- [ enable-optimise use maximal speed optimisations. Default: off],
+ [ --enable-optimise use maximal speed optimisations. Default: off],
[optimise_b=$enableval])
AC_ARG_ENABLE(profiling,
- [ enable-profiling compile with gprof support. Default: off],
+ [ --enable-profiling compile with gprof support. Default: off],
[profile_b=$enableval])
- AC_ARG_ENABLE(debugging,
- [ enable-debugging set debug info. Default: on],
- [debug_b=$enableval])
-
AC_ARG_ENABLE(mingw-prefix,
- [ enable-mingw-prefix=DIR set the mingw32 directory (standalone windows32 exes)],
+ [ --enable-mingw-prefix=DIR
+ set the mingw32 directory (standalone windows32 exes)],
[MINGWPREFIX=$enableval],
[MINGWPREFIX=no])
CONFIGSUFFIX=
AC_ARG_ENABLE(config,
- [ enable-config=FILE put configure settings in config-FILE.make],
+ [ --enable-config=FILE put configure settings in config-FILE.make],
[CONFIGSUFFIX=-$enableval])
CONFIGFILE=config$CONFIGSUFFIX
AC_DEFUN(AC_STEPMAKE_KPATHSEA, [
kpathsea_b=yes
- AC_ARG_ENABLE(kpathsea,
- [ enable-kpathsea use kpathsea lib. Default: on],
+ AC_ARG_WITH(kpathsea,
+ [ --with-kpathsea use kpathsea lib. Default: on],
[kpathsea_b=$enableval])
if test $kpathsea_b = yes; then
# with/enable ??
AC_ARG_WITH(localedir,
- [ with-localedir=LOCALE use LOCALE as locale dir. Default: PREFIX/share/locale ],
+ [ --with-localedir=LOCALE use LOCALE as locale dir. Default:
+ PREFIX/share/locale ],
localedir=$with_localedir,
localedir='${prefix}/share/locale')
AC_ARG_WITH(lang,
- [ with-lang=LANG use LANG as language to emit messages],
+ [ --with-lang=LANG use LANG as language to emit messages],
language=$with_lang,
language=English)
#why has this been dropped?
AC_DEFUN(XXAC_STEPMAKE_TEXMF_DIRS, [
AC_ARG_ENABLE(tex-prefix,
- [ enable-tex-prefix=DIR set the tex-directory to find TeX subdirectories. Default: PREFIX],
+ [ --enable-tex-prefix=DIR set the tex-directory to find TeX
+ subdirectories. Default: PREFIX],
[TEXPREFIX=$enableval],
[TEXPREFIX=auto] )
AC_ARG_ENABLE(tex-dir,
- [ enable-tex-dir=DIR set the directory to put $PACKAGE_NAME TeX files in. ],
+ [ --enable-tex-dir=DIR set the directory to put $PACKAGE_NAME TeX files in. ],
[TEXDIR=$enableval],
[TEXDIR=auto] )
AC_ARG_ENABLE(mf-dir,
- [ enable-mf-dir=DIR set the directory to put $PACKAGE_NAME MetaFont files in. ],
+ [ --enable-mf-dir=DIR set the directory to put $PACKAGE_NAME MetaFont files in. ],
[MFDIR=$enableval],
[MFDIR=auto])
AC_DEFUN(AC_STEPMAKE_TEXMF_DIRS, [
AC_ARG_ENABLE(tfm-path,
- [ enable-tfm-path=PATH set path of tex directories where tfm files live, esp.: cmr10.tfm. Default: use kpsewhich],
+ [ --enable-tfm-path=PATH set path of tex directories where tfm files live,
+ esp.: cmr10.tfm. Default: use kpsewhich],
[tfm_path=$enableval],
[tfm_path=auto] )