From ddba73fa2c87da905319461861c95d92a656e1d9 Mon Sep 17 00:00:00 2001 From: Davide Madrisan Date: Sun, 25 Feb 2024 00:02:57 +0100 Subject: [PATCH] J.S. Bach: Partita 2 BWV826 - Allemande Signed-off-by: Davide Madrisan --- CHANGELOG.md | 6 + README.md | 1 + configure.ac | 1 + lyinit/data/jsbach | 2 +- lyinit/lyscaffold.sh | 51 +++-- lyinit/templates/part-four-voices.ly | 4 +- .../BWV826/JS-Bach-BWV826-Partita-2.ly | 102 +++++++++ .../partitas/BWV826/Makefile.am | 39 ++++ .../partitas/BWV826/covercolor.ly.in | 1 + .../partitas/BWV826/global.ly | 3 + .../partitas/BWV826/header.ily | 65 ++++++ .../partitas/BWV826/logo.ly | 24 ++ .../BWV826/parts/bach-partita-2-1-sinfonia.ly | 77 +++++++ .../parts/bach-partita-2-2-allemande.ly | 207 ++++++++++++++++++ .../BWV826/parts/bach-partita-2-3-courante.ly | 77 +++++++ .../parts/bach-partita-2-4-sarabande.ly | 77 +++++++ .../BWV826/parts/bach-partita-2-5-rondeau.ly | 77 +++++++ .../parts/bach-partita-2-6-capriccio.ly | 77 +++++++ .../partitas/Makefile.am | 1 + 19 files changed, 874 insertions(+), 18 deletions(-) create mode 100644 src/johann-sebastian-bach/partitas/BWV826/JS-Bach-BWV826-Partita-2.ly create mode 100644 src/johann-sebastian-bach/partitas/BWV826/Makefile.am create mode 100644 src/johann-sebastian-bach/partitas/BWV826/covercolor.ly.in create mode 100644 src/johann-sebastian-bach/partitas/BWV826/global.ly create mode 100644 src/johann-sebastian-bach/partitas/BWV826/header.ily create mode 100644 src/johann-sebastian-bach/partitas/BWV826/logo.ly create mode 100644 src/johann-sebastian-bach/partitas/BWV826/parts/bach-partita-2-1-sinfonia.ly create mode 100644 src/johann-sebastian-bach/partitas/BWV826/parts/bach-partita-2-2-allemande.ly create mode 100644 src/johann-sebastian-bach/partitas/BWV826/parts/bach-partita-2-3-courante.ly create mode 100644 src/johann-sebastian-bach/partitas/BWV826/parts/bach-partita-2-4-sarabande.ly create mode 100644 src/johann-sebastian-bach/partitas/BWV826/parts/bach-partita-2-5-rondeau.ly create mode 100644 src/johann-sebastian-bach/partitas/BWV826/parts/bach-partita-2-6-capriccio.ly diff --git a/CHANGELOG.md b/CHANGELOG.md index d3400441..f1059086 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,6 +3,12 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/). +## [v49] - unreleased + +### Added + +- J.S. Bach: Partita 2 BWV826 + ## [v48] - 2024-02-24 ### Added diff --git a/README.md b/README.md index d119d18d..e4f52af8 100644 --- a/README.md +++ b/README.md @@ -137,6 +137,7 @@ make -C src/johann-sebastian-bach/italienisches-konzert-BWV971 make -C src/johann-sebastian-bach/musikalisches-opfer-BWV1079 make -C src/johann-sebastian-bach/organ-sonata-4-andante-BWV528-stradal make -C src/johann-sebastian-bach/partitas/BWV825 +make -C src/johann-sebastian-bach/partitas/BWV826 make -C src/johann-sebastian-bach/partitas/BWV830 make -C src/johann-sebastian-bach/praeludium-fuge-und-allegro-BWV998 make -C src/johann-sebastian-bach/praeludium-und-fughetta-BWV902 diff --git a/configure.ac b/configure.ac index caa0d884..8cfc40a8 100644 --- a/configure.ac +++ b/configure.ac @@ -122,6 +122,7 @@ AC_CONFIG_FILES([\ src/johann-sebastian-bach/organ-sonata-4-andante-BWV528-stradal/Makefile \ src/johann-sebastian-bach/partitas/Makefile \ src/johann-sebastian-bach/partitas/BWV825/Makefile \ + src/johann-sebastian-bach/partitas/BWV826/Makefile \ src/johann-sebastian-bach/partitas/BWV830/Makefile \ src/johann-sebastian-bach/praludien/Makefile \ src/johann-sebastian-bach/praludien/neun-kleine-praludien-BWV924-932/Makefile diff --git a/lyinit/data/jsbach b/lyinit/data/jsbach index 760c856d..d1e60dd5 100644 --- a/lyinit/data/jsbach +++ b/lyinit/data/jsbach @@ -1,6 +1,6 @@ composer_firstname='Johann Sebastian' composer_lastname="Bach" -instruments="For Piano or Harpsichord" +instruments="For Piano, Harpsichord, Clavichord" header_composer="Johann Sebastian Bach (1685-1750)" header_style="Baroque" mutopiacomposer="BachJS" diff --git a/lyinit/lyscaffold.sh b/lyinit/lyscaffold.sh index 7868d380..b65100b5 100755 --- a/lyinit/lyscaffold.sh +++ b/lyinit/lyscaffold.sh @@ -34,13 +34,13 @@ Example: --pdfname JS-Bach-BWV830-Partita-1.pdf \\ --source 'Muzgiz, Moscow' \\ --year "between 1725 and 1726" \\ - --part4 bach-partita-1-1-praeludium.ly \\ - --part4 bach-partita-1-2-allemande.ly \\ - --part4 bach-partita-1-3-corrente.ly \\ - --part4 bach-partita-1-4-sarabande.ly \\ - --part4 bach-partita-1-5-menuet-1.ly \\ - --part4 bach-partita-1-5-menuet-2.ly \\ - --part4 bach-partita-1-6-giga.ly + --part4 bach-partita-1-1-praeludium.ly Praeludium \\ + --part4 bach-partita-1-2-allemande.ly Allemande \\ + --part4 bach-partita-1-3-corrente.ly Corrente \\ + --part4 bach-partita-1-4-sarabande.ly Sarabande \\ + --part4 bach-partita-1-5-menuet-1.ly "Menuet I" \\ + --part4 bach-partita-1-5-menuet-2.ly "Menuet II" \\ + --part4 bach-partita-1-6-giga.ly Giga __EOF } @@ -85,6 +85,7 @@ ly_sed () { s^@mutopiacomposer@^${mutopiacomposer}^; s^@mutopiainstrument@^${mutopiainstrument}^; s^@opus@^${ly_opus}^g; + s^@partfile_title@^${partfile_title}^g; s^@source@^${ly_source}^g; s^@title@^${ly_title}^g; " < "${1:-/dev/stdin}" @@ -106,7 +107,9 @@ while test -n "$1"; do --parts|-p) ly_parts="true" ;; --part4) - ly_parts4_files+=("$2"); shift ;; + ly_parts4_files+=("$2") + ly_parts4_titles+=("$3") + shift; shift ;; --pdfname|-n) ly_pdfname="$2"; shift ;; --source|-s) @@ -170,6 +173,21 @@ echo "creating the makefile '$ly_targetdir/Makefile.am' ..." cat $PROGPATH/templates/makefile-head echo echo "EXTRA_DIST = ${ly_mainfile}.ly \\" + echo -e "\t covercolor.ly.in \\" + echo -e "\t header.ily \\" + echo -e "\t global.ly \\" + + nparts="${#ly_parts4_files[@]}" + + if [[ "${!ly_parts4_files[@]}" != "0" ]]; then + echo -e "\t logo.ly \\" + for i in ${!ly_parts4_files[@]}; do + echo -en "\t parts/${ly_parts4_files[$i]}" + [ "$i" != "$(( $nparts - 1 ))" ] && echo " \\" || echo "" + done + else + echo -e "\t logo.ly" + fi set -- $LY_COMMON_FILES while test -n "$1"; do @@ -190,16 +208,19 @@ echo "creating the makefile '$ly_targetdir/Makefile.am' ..." fi ) > "$ly_targetdir/Makefile.am" -for p in ${ly_parts4_files[@]}; do - if [ -s "$ly_targetdir/parts/$p" ]; then - echo "WARNING: skip non empty file: $ly_targetdir/parts/$p" +for i in ${!ly_parts4_files[@]}; do + partfile="${ly_parts4_files[$i]}" + title="${ly_parts4_titles[$i]}" + if [ -s "$ly_targetdir/parts/$partfile" ]; then + echo "WARNING: skip non empty file: $ly_targetdir/parts/$partfile" else - echo "creating $ly_targetdir/parts/$p ..." - ( ly_sed < $PROGPATH/templates/part-four-voices.ly ) \ - > "$ly_targetdir/parts/$p" + echo "creating $ly_targetdir/parts/$partfile ..." + ( partfile_title="$title" + ly_sed < $PROGPATH/templates/part-four-voices.ly ) \ + > "$ly_targetdir/parts/$partfile" fi echo "updating $ly_targetdir/${ly_mainfile}.ly" - echo "\\include \"./parts/$p\"" >> $ly_targetdir/${ly_mainfile}.ly + echo "\\include \"./parts/$partfile\"" >> $ly_targetdir/${ly_mainfile}.ly done echo " diff --git a/lyinit/templates/part-four-voices.ly b/lyinit/templates/part-four-voices.ly index 00128a5a..b0372d48 100644 --- a/lyinit/templates/part-four-voices.ly +++ b/lyinit/templates/part-four-voices.ly @@ -58,9 +58,9 @@ Bass = \context Voice = "four" \relative c { >> >> \header { - composer = ##f # "@composer_firstname@ @composer_lastnam@" + composer = ##f # "@composer_firstname@ @composer_lastname@" opus = ##f # "@opus@" - title = \markup { "MISSING TITLE" } + title = \markup { "@partfile_title@" } subtitle = ##f } \layout { diff --git a/src/johann-sebastian-bach/partitas/BWV826/JS-Bach-BWV826-Partita-2.ly b/src/johann-sebastian-bach/partitas/BWV826/JS-Bach-BWV826-Partita-2.ly new file mode 100644 index 00000000..2489577a --- /dev/null +++ b/src/johann-sebastian-bach/partitas/BWV826/JS-Bach-BWV826-Partita-2.ly @@ -0,0 +1,102 @@ +\version "2.25.12" + +#(ly:set-option 'relative-includes #t) + +\include "./covercolor.ly" + +\header { + tagline = ##f +} + +\paper { + #(set-paper-size "a4") + annotate-spacing = ##f + binding-offset = 0\mm + bottom-margin = 5\mm + first-page-number = 0 + indent = 0.0 + inner-margin = 10\mm +% last-bottom-spacing.padding = #2 + left-margin = 10\mm + line-width = 18.4\cm + markup-system-spacing = + #'((basic-distance . 2) + (minimum-distance . 1) + (padding . 2) + (stretchability . 24)) + outer-margin = 20\mm + print-all-headers = ##t + ragged-last-bottom = ##f + ragged-bottom = ##f + right-margin = 10\mm + system-system-spacing = + #'((basic-distance . 2) + (minimum-distance . 1) + (padding . 2) + (stretchability . 24)) + top-margin = 10\mm + top-markup-spacing.basic-distance = 0 + top-system-spacing.basic-distance = 1 +} + +\bookpart { + \header { + maintainer = "Davide Madrisan" + maintainerEmail = "d.madrisan@proton.me" + } + + \include "./header.ily" + \header { + title = ##f + composer = ##f + } + + \markup { + \with-dimensions #'(0 . 0) #'(0 . 0) + \with-color \coverColor + \filled-box #'(-200 . 200) #'(-200 . 200) #0 + } + \markup { + \fill-line { + \center-column { + \null\null\null\null + \null\null\null\null + \line { \abs-fontsize #30 \bold "Johann Sebastian" } + \null + \line { \abs-fontsize #80 \bold "Bach" } + \null + \fill-line { \draw-hline } + \null\null\null + \line { \abs-fontsize #40 \bold "Partita II" } + \null\null + \line { \abs-fontsize #20 "BWV 826" } + \null\null\null + \null\null\null + \fill-line { \abs-fontsize #20 "For Piano or Harpsichord" } + \null\null\null + \null\null\null + } + } + } + + \include "./logo.ly" + + \markup { + \fill-line { + \center-column { + \null\null\null\null + \fill-line { + \abs-fontsize #10 "Based on: Bach-Gesellschaft" + } + \null\null + } + } + } +} + +%\include "./parts/bach-partita-2-1-sinfonia.ly" +\include "./parts/bach-partita-2-2-allemande.ly" +%\include "./parts/bach-partita-2-3-courante.ly" +%\include "./parts/bach-partita-2-4-sarabande.ly" +%\include "./parts/bach-partita-2-5-rondeau.ly" +%\include "./parts/bach-partita-2-6-capriccio.ly" diff --git a/src/johann-sebastian-bach/partitas/BWV826/Makefile.am b/src/johann-sebastian-bach/partitas/BWV826/Makefile.am new file mode 100644 index 00000000..246b5bd1 --- /dev/null +++ b/src/johann-sebastian-bach/partitas/BWV826/Makefile.am @@ -0,0 +1,39 @@ +## the Free Software Foundation, either version 3 of the License, or +## (at your option) any later version. +## +## This program is distributed in the hope that it will be useful, +## but WITHOUT ANY WARRANTY; without even the implied warranty of +## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +## GNU General Public License for more details. +## +## You should have received a copy of the GNU General Public License +## along with this program. If not, see . + +SUFFIXES = .in +.in:; @echo "Generating $@...";\ + sed "s,@rgb_color@,$(RGB_COLOR),g;" \ + $< > $@ + +%: %.ly + $(LILYPOND) --pdf --output $@ $< + +BUILT_SOURCES = covercolor.ly + +EXTRA_DIST = JS-Bach-BWV826-Partita-2.ly \ + covercolor.ly.in \ + header.ily \ + global.ly \ + logo.ly \ + parts/bach-partita-2-1-sinfonia.ly \ + parts/bach-partita-2-2-allemande.ly \ + parts/bach-partita-2-3-courante.ly \ + parts/bach-partita-2-4-sarabande.ly \ + parts/bach-partita-2-5-rondeau.ly \ + parts/bach-partita-2-6-capriccio.ly + +all: $(BUILT_SOURCES) JS-Bach-BWV826-Partita-2 + +clean-local: + -rm -f $(BUILT_SOURCES) + -rm -f *.midi parts/*.midi + -rm -f *.pdf parts/*.pdf diff --git a/src/johann-sebastian-bach/partitas/BWV826/covercolor.ly.in b/src/johann-sebastian-bach/partitas/BWV826/covercolor.ly.in new file mode 100644 index 00000000..1276805b --- /dev/null +++ b/src/johann-sebastian-bach/partitas/BWV826/covercolor.ly.in @@ -0,0 +1 @@ +coverColor = #(rgb-color @rgb_color@) % lavender blue diff --git a/src/johann-sebastian-bach/partitas/BWV826/global.ly b/src/johann-sebastian-bach/partitas/BWV826/global.ly new file mode 100644 index 00000000..f0b84c09 --- /dev/null +++ b/src/johann-sebastian-bach/partitas/BWV826/global.ly @@ -0,0 +1,3 @@ +% Draw a box round the bar number(s) +\override Score.BarNumber.stencil + = #(make-stencil-boxer 0.1 0.25 ly:text-interface::print) diff --git a/src/johann-sebastian-bach/partitas/BWV826/header.ily b/src/johann-sebastian-bach/partitas/BWV826/header.ily new file mode 100644 index 00000000..83e2cd8d --- /dev/null +++ b/src/johann-sebastian-bach/partitas/BWV826/header.ily @@ -0,0 +1,65 @@ +\header { + composer = "Johann Sebastian Bach (1685-1750)" + date = "" + + footer = "Mutopia-2024/02/24" + + lastupdated = "2024 February 24" + license = "Creative Commons Attribution-ShareAlike 4.0" + maintainerEmail = "d.madrisan@proton.me" + maintainerWeb = "https://github.com/madrisan/open-scores" + + % Extra Mutopia Information + mutopiacomposer = "BachJS" + mutopiacopyright = "Creative Commons Attribution-ShareAlike 4.0" + mutopiainstrument = "Harpsichord, Piano" + mutopiamaintainer = "Davide Madrisan" + mutopiaopus = "BWV 826" + mutopiatitle = "Partita II" + + opus = "BWV 826" + title = "Partita II" + source = "Bach-Gesellschaft" + style = "Baroque" + + copyright = \markup { + \override #'(font-name . "DejaVu Sans, Bold") + \override #'(baseline-skip . 0) + \right-column { + \with-url #"http://www.MutopiaProject.org" { + \abs-fontsize #9 "Mutopia " + \concat { + \abs-fontsize #12 + \with-color \coverColor "ǀ" + \abs-fontsize #9 "Project " + } + } + } + \override #'(font-name . "DejaVu Sans, Bold") + \override #'(baseline-skip . 0 ) + \center-column { + \abs-fontsize #11.9 + \with-color #grey + \bold { "ǀ" "ǀ" } + } + \override #'(font-name . "DejaVu Sans,sans-serif") + \override #'(baseline-skip . 0) + \column { + \abs-fontsize #8 + \concat { + "Typeset using " \with-url #"http://www.lilypond.org" "LilyPond " ©" 2022-2024 ""by " \maintainer " — " \footer + } + \concat { + \concat { + \abs-fontsize #8 { + \with-url #"http://creativecommons.org/licenses/by-sa/40/" + "Creative Commons Attribution ShareAlike 4.0 International License" + " — free to distribute, modify, and perform" + } + } + \abs-fontsize #13 \with-color \coverColor "ǀ" + } + } + } + tagline = ##f +} diff --git a/src/johann-sebastian-bach/partitas/BWV826/logo.ly b/src/johann-sebastian-bach/partitas/BWV826/logo.ly new file mode 100644 index 00000000..72be42ea --- /dev/null +++ b/src/johann-sebastian-bach/partitas/BWV826/logo.ly @@ -0,0 +1,24 @@ +\markup { + \fill-line { + \center-column { + \fill-line { \abs-fontsize #20 \smallCaps "lavender" } + \fill-line { + \abs-fontsize #12 + \concat { + \draw-line #'(-3 . 0) + \smallCaps " b l u e " + \draw-line #'(-3 . 0) + } + } + \fill-line { \abs-fontsize #9 \smallCaps "Open Scores" } + \null + \fill-line { \abs-fontsize #10 "Engraved by Davide Madrisan" } + \fill-line { + \with-url #"https://github.com/madrisan/open-scores/" { + \abs-fontsize #10 + \typewriter "https://github.com/madrisan/open-scores/" + } + } + } + } +} diff --git a/src/johann-sebastian-bach/partitas/BWV826/parts/bach-partita-2-1-sinfonia.ly b/src/johann-sebastian-bach/partitas/BWV826/parts/bach-partita-2-1-sinfonia.ly new file mode 100644 index 00000000..4761b622 --- /dev/null +++ b/src/johann-sebastian-bach/partitas/BWV826/parts/bach-partita-2-1-sinfonia.ly @@ -0,0 +1,77 @@ +Global = { + \key c \major + \time 4/4 + \include "../global.ly" +} + +Soprano = \context Voice = "one" \relative c' { + \voiceOne + \stemUp + \override MultiMeasureRest.staff-position = #0 + \override Rest.staff-position = #0 + %1 + | R1 + \fine +} + +Alto = \context Voice = "two" \relative c' { + \voiceTwo + \stemDown + \override Rest.staff-position = #0 + %1 +} + +Tenor = \context Voice = "three" \relative c { + \voiceThree + \stemUp + \override Rest.staff-position = #0 + %1 +} + +Bass = \context Voice = "four" \relative c { + \voiceFour + \stemDown\tieNeutral + \override MultiMeasureRest.staff-position = #0 + \override Rest.staff-position = #0 + %1 + | R1 + \fine +} + +\score { + \new PianoStaff + << + \accidentalStyle Score.piano + \context Staff = "upper" << + \set Staff.midiInstrument = #"acoustic grand" + \Global + \clef treble + \Soprano + \Alto + >> + \context Staff = "lower" << + \set Staff.midiInstrument = #"acoustic grand" + \Global + \clef bass + \Tenor + \Bass + >> + >> + \header { + composer = ##f # "Johann Sebastian Bach" + opus = ##f # "BWV 826" + title = \markup { "Sinfonia" } + subtitle = ##f + } + \layout { + \context { + \PianoStaff + \override Parentheses.font-size = #-2 + \override TextScript.font-shape = #'italic + \override TextScript.font-size = #-1 + } + } + \midi { + \tempo 4 = 100 + } +} diff --git a/src/johann-sebastian-bach/partitas/BWV826/parts/bach-partita-2-2-allemande.ly b/src/johann-sebastian-bach/partitas/BWV826/parts/bach-partita-2-2-allemande.ly new file mode 100644 index 00000000..5f341d87 --- /dev/null +++ b/src/johann-sebastian-bach/partitas/BWV826/parts/bach-partita-2-2-allemande.ly @@ -0,0 +1,207 @@ +Global = { + \key c \minor + \time 2/2 + \include "../global.ly" +} + +Soprano = \context Voice = "one" \relative c'' { + \voiceOne + \stemNeutral\tieNeutral\slurNeutral + \override MultiMeasureRest.staff-position = #0 + \override Rest.staff-position = #0 + \set Timing.baseMoment = #(ly:make-moment 1/4) + \set Timing.beatStructure = 1,1,1,1 + \repeat volta 2 { + \partial 8. aes'16 g f + %1 + | g d ees b c f ees d ees b c g aes d c b + | c g aes ees f ees' d c b8.\prall a16 g8 b + | c16 d ees8 f,16 ees' d c d ees f8 g,16 f' ees d + | ees16 f g8 aes,16 g' f ees f g aes8 b,16 aes' g f + %5 + | \stemUp\tieUp ees4~ ees8. c16 d4~ d8. b16 + | c4. c16 b c4~ c16 c bes aes + | g16 c32 d ees16 c g8 aes bes4~ bes8 g'~ + | \stemNeutral\tieNeutral g16 c,32 d ees16 c a f' c32 d ees16 \stemUp\tieUp d4~ d8 d + | d c\prall g'16\rest fis g a ees8 d\prall a'16\rest g a bes + %10 + | f8 e\prall a16\rest a bes c g8 fis\prall a16\rest ees d c + | d16 a bes fis g c bes a bes fis g d ees a g fis + | g d ees b c f ees d ees c d fis a ees d c + | bes d g bes~ bes fis g bes, c ees g bes~ bes fis g c, + | d fis g bes~ bes fis g d ees fis g bes~ bes fis g bes + %15 + | e a, bes fis g bes a g fis d ees bes c ees d c + | bes8 d' bes a16 g + \once\shape #'((0 . 0.8) (0 . 1.5) (0 . 1) (0 . 0.3)) Tie + g4^~ g16 + } + \break + \repeat volta 2 { + \partial 8. \stemNeutral ees'16 d c + | d a b g aes f ees d ees( f32 g) c,8 r16 aes'' g f + | g d e c des bes aes g aes( bes32 c) f,8 r16 c f g + | aes e f c des c' bes aes bes f g d e! des' c bes + %20 + | c g aes e f ees'! des c des a bes g g'4~ + | g16( c,) f( e) aes( g f e) f( c) ees( des) bes'( aes g f) + | e( f32 g) c,16 bes aes f' g, e' f4~ f32 g f e f16 g + | aes e f c aes f ees' c d a bes d f aes g f + | g d ees! bes g ees d' b c g aes c ees g f ees + %25 + | f c d aes f d c' a b fis g b d f ees d + | ees b c aes g( f) ees' d c b c d g,8 d' + | ees16 g c g ees d c b c ees g8~ g16 bes, aes g + | aes c f c aes g f e f b d8~ d16 f, ees d + | c8[ ees'( aes, g)] d[ f'( aes, g)] + %30 + | ees[ g'( aes, g)] f aes'16 g aes g fis g + | fis4.~\prall fis16 e32 fis g16 d f ees d c b a + | \stemUp g8 g'\arpeggio + \override Beam.positions = #'(4.8 . 4.5) + ees d16 c c4^~ c16 + } +} + +Alto = \context Voice = "two" \relative c' { + \voiceTwo + \stemDown\tieDown + \override Rest.staff-position = #0 + %1 + \repeat volta 2 { + \partial 8. s8. + %1 + | s1*4 + %5 + | f16\rest b c g aes ees f8 f16\rest g aes f g d ees8~ + | ees16 f32 g aes16 f d f8.~ f16 f ees d ees8 f + | ees4 b\rest e16\rest f g ees ees8 e8\rest + | s2 g16\rest a bes8~ bes fis + | g4 f\rest a f\rest + %10 + | bes f\rest c' g\rest + | s1*5 + %16 + | e,8\rest + << { + \stemDown d' d c c16\rest d4 + } \\ { + \stemUp\shiftOn g8 g fis s16 d16[ b8.] + } >> + } + \repeat volta 2 { + \partial 8. s8. + | s1*15 + | c8\rest + << { + \stemDown\tieDown 8\arpeggio g f ees4~ ees16 + } \\ { + \stemUp\tieUp\shiftOn ees'8\arpeggio c bes g4~ g16 + } >> + } +} + +Tenor = \context Voice = "three" \relative c { + \voiceThree + \stemUp + \override Rest.staff-position = #0 + \repeat volta 2 { + \partial 8. s8. + %1 + | s1*15 + | s2 d8\rest d16\rest d g + } +} + +Bass = \context Voice = "four" \relative c { + \voiceFour + \stemNeutral\tieNeutral\slurNeutral + \override MultiMeasureRest.staff-position = #0 + \override Rest.staff-position = #0 + \set Timing.baseMoment = #(ly:make-moment 1/4) + \set Timing.beatStructure = 1,1,1,1 + \repeat volta 2 { + \partial 8. r8 r16 + %1 + | c8 c, \clef treble r16 aes''' g f g d ees b c f ees d + | ees b c g \clef "bass" aes8 f g g,~ g16 f' ees d + | ees b c g aes! g' f ees f c d a b! aes' g f + | g d ees b c bes' aes g aes ees f c d8 b' + %5 + | c8[ ees f, aes] b,[ d ees, g] + | aes[ f g g'] c, g' c4 + | c8. g32 f ees f g16 c,32 d ees16 g,8. bes32 aes g aes bes16 ees,32 f g16 + | a,8[ c f a] bes8. f''32 ees d ees f16 bes,32 c d16 + | ees,16 g a bes c d ees c fis, a bes c d e fis d + %10 + | g, bes c d e fis g ees a, c d ees d c bes a + | bes c d a bes ees d c d a bes fis g c bes a + | bes fis g d ees32 f g16 c,32 d ees16 fis,4 r8 d + | g[ bes'( ees, d)] a[ c'( ees, d)] + | bes[ d'( ees, d)] c[ ees'( ees, d)] + %15 + | 4 r8 c' d[ a fis d] + | g16 a bes c d8 d, \stemDown g4_~ g16 + } + \repeat volta 2 { + \partial 8. r8 r16 + | \stemNeutral g8 g' r16 aes g f g d ees b c f, ees d + | c8 c' r16 des' c bes c g aes e f bes, aes g + | f g aes8 bes,16 aes' g f g aes bes8 c,16 bes' aes g + %20 + | aes16 bes c8 des,16 c' bes aes bes c des8 e,16 des' c bes + | aes8[ c f, aes] des[ f g, bes~] + | bes aes16 bes c8 c, f16 c' f g aes f aes c + | f8[ aes, c f,] bes[ f' d bes] + | ees[ g, bes ees,] aes[ ees' c aes] + %25 + | d[ f, aes d,] g[ d' b g] + | c[ ees, aes f] g g,~ g16 aes' g f + | g d ees b c f ees d ees b c g aes des c bes + | c g aes e f bes aes g aes f g b d aes g f + | ees( g c ees)~ ees b c ees, f( aes c ees)~ ees b c f, + %30 + | g( b c ees)~ ees b c g aes! b! c ees~ ees b c ees + | a d, ees b c ees d c b g aes! ees f aes g f + | ees g c ees g8 g, 4~ q16 + } + \fine +} + +\score { + \new PianoStaff \with { connectArpeggios = ##t } + << + \accidentalStyle Score.piano + \context Staff = "upper" << + \set Staff.midiInstrument = #"acoustic grand" + \Global + \clef treble + \Soprano + \Alto + >> + \context Staff = "lower" << + \set Staff.midiInstrument = #"acoustic grand" + \Global + \clef bass + \Tenor + \Bass + >> + >> + \header { + composer = ##f # "Johann Sebastian Bach" + opus = ##f # "BWV 826" + title = \markup { "Allemande" } + subtitle = ##f + } + \layout { + \context { + \PianoStaff + \override Parentheses.font-size = #-2 + \override TextScript.font-shape = #'italic + \override TextScript.font-size = #-1 + } + } + \midi { + \tempo 4 = 100 + } +} diff --git a/src/johann-sebastian-bach/partitas/BWV826/parts/bach-partita-2-3-courante.ly b/src/johann-sebastian-bach/partitas/BWV826/parts/bach-partita-2-3-courante.ly new file mode 100644 index 00000000..b78fd434 --- /dev/null +++ b/src/johann-sebastian-bach/partitas/BWV826/parts/bach-partita-2-3-courante.ly @@ -0,0 +1,77 @@ +Global = { + \key c \major + \time 4/4 + \include "../global.ly" +} + +Soprano = \context Voice = "one" \relative c' { + \voiceOne + \stemUp + \override MultiMeasureRest.staff-position = #0 + \override Rest.staff-position = #0 + %1 + | R1 + \fine +} + +Alto = \context Voice = "two" \relative c' { + \voiceTwo + \stemDown + \override Rest.staff-position = #0 + %1 +} + +Tenor = \context Voice = "three" \relative c { + \voiceThree + \stemUp + \override Rest.staff-position = #0 + %1 +} + +Bass = \context Voice = "four" \relative c { + \voiceFour + \stemDown\tieNeutral + \override MultiMeasureRest.staff-position = #0 + \override Rest.staff-position = #0 + %1 + | R1 + \fine +} + +\score { + \new PianoStaff + << + \accidentalStyle Score.piano + \context Staff = "upper" << + \set Staff.midiInstrument = #"acoustic grand" + \Global + \clef treble + \Soprano + \Alto + >> + \context Staff = "lower" << + \set Staff.midiInstrument = #"acoustic grand" + \Global + \clef bass + \Tenor + \Bass + >> + >> + \header { + composer = ##f # "Johann Sebastian Bach" + opus = ##f # "BWV 826" + title = \markup { "Courante" } + subtitle = ##f + } + \layout { + \context { + \PianoStaff + \override Parentheses.font-size = #-2 + \override TextScript.font-shape = #'italic + \override TextScript.font-size = #-1 + } + } + \midi { + \tempo 4 = 100 + } +} diff --git a/src/johann-sebastian-bach/partitas/BWV826/parts/bach-partita-2-4-sarabande.ly b/src/johann-sebastian-bach/partitas/BWV826/parts/bach-partita-2-4-sarabande.ly new file mode 100644 index 00000000..22d0ae66 --- /dev/null +++ b/src/johann-sebastian-bach/partitas/BWV826/parts/bach-partita-2-4-sarabande.ly @@ -0,0 +1,77 @@ +Global = { + \key c \major + \time 4/4 + \include "../global.ly" +} + +Soprano = \context Voice = "one" \relative c' { + \voiceOne + \stemUp + \override MultiMeasureRest.staff-position = #0 + \override Rest.staff-position = #0 + %1 + | R1 + \fine +} + +Alto = \context Voice = "two" \relative c' { + \voiceTwo + \stemDown + \override Rest.staff-position = #0 + %1 +} + +Tenor = \context Voice = "three" \relative c { + \voiceThree + \stemUp + \override Rest.staff-position = #0 + %1 +} + +Bass = \context Voice = "four" \relative c { + \voiceFour + \stemDown\tieNeutral + \override MultiMeasureRest.staff-position = #0 + \override Rest.staff-position = #0 + %1 + | R1 + \fine +} + +\score { + \new PianoStaff + << + \accidentalStyle Score.piano + \context Staff = "upper" << + \set Staff.midiInstrument = #"acoustic grand" + \Global + \clef treble + \Soprano + \Alto + >> + \context Staff = "lower" << + \set Staff.midiInstrument = #"acoustic grand" + \Global + \clef bass + \Tenor + \Bass + >> + >> + \header { + composer = ##f # "Johann Sebastian Bach" + opus = ##f # "BWV 826" + title = \markup { "Sarabande" } + subtitle = ##f + } + \layout { + \context { + \PianoStaff + \override Parentheses.font-size = #-2 + \override TextScript.font-shape = #'italic + \override TextScript.font-size = #-1 + } + } + \midi { + \tempo 4 = 100 + } +} diff --git a/src/johann-sebastian-bach/partitas/BWV826/parts/bach-partita-2-5-rondeau.ly b/src/johann-sebastian-bach/partitas/BWV826/parts/bach-partita-2-5-rondeau.ly new file mode 100644 index 00000000..43aa3663 --- /dev/null +++ b/src/johann-sebastian-bach/partitas/BWV826/parts/bach-partita-2-5-rondeau.ly @@ -0,0 +1,77 @@ +Global = { + \key c \major + \time 4/4 + \include "../global.ly" +} + +Soprano = \context Voice = "one" \relative c' { + \voiceOne + \stemUp + \override MultiMeasureRest.staff-position = #0 + \override Rest.staff-position = #0 + %1 + | R1 + \fine +} + +Alto = \context Voice = "two" \relative c' { + \voiceTwo + \stemDown + \override Rest.staff-position = #0 + %1 +} + +Tenor = \context Voice = "three" \relative c { + \voiceThree + \stemUp + \override Rest.staff-position = #0 + %1 +} + +Bass = \context Voice = "four" \relative c { + \voiceFour + \stemDown\tieNeutral + \override MultiMeasureRest.staff-position = #0 + \override Rest.staff-position = #0 + %1 + | R1 + \fine +} + +\score { + \new PianoStaff + << + \accidentalStyle Score.piano + \context Staff = "upper" << + \set Staff.midiInstrument = #"acoustic grand" + \Global + \clef treble + \Soprano + \Alto + >> + \context Staff = "lower" << + \set Staff.midiInstrument = #"acoustic grand" + \Global + \clef bass + \Tenor + \Bass + >> + >> + \header { + composer = ##f # "Johann Sebastian Bach" + opus = ##f # "BWV 826" + title = \markup { "Rondeau" } + subtitle = ##f + } + \layout { + \context { + \PianoStaff + \override Parentheses.font-size = #-2 + \override TextScript.font-shape = #'italic + \override TextScript.font-size = #-1 + } + } + \midi { + \tempo 4 = 100 + } +} diff --git a/src/johann-sebastian-bach/partitas/BWV826/parts/bach-partita-2-6-capriccio.ly b/src/johann-sebastian-bach/partitas/BWV826/parts/bach-partita-2-6-capriccio.ly new file mode 100644 index 00000000..a98f2d65 --- /dev/null +++ b/src/johann-sebastian-bach/partitas/BWV826/parts/bach-partita-2-6-capriccio.ly @@ -0,0 +1,77 @@ +Global = { + \key c \major + \time 4/4 + \include "../global.ly" +} + +Soprano = \context Voice = "one" \relative c' { + \voiceOne + \stemUp + \override MultiMeasureRest.staff-position = #0 + \override Rest.staff-position = #0 + %1 + | R1 + \fine +} + +Alto = \context Voice = "two" \relative c' { + \voiceTwo + \stemDown + \override Rest.staff-position = #0 + %1 +} + +Tenor = \context Voice = "three" \relative c { + \voiceThree + \stemUp + \override Rest.staff-position = #0 + %1 +} + +Bass = \context Voice = "four" \relative c { + \voiceFour + \stemDown\tieNeutral + \override MultiMeasureRest.staff-position = #0 + \override Rest.staff-position = #0 + %1 + | R1 + \fine +} + +\score { + \new PianoStaff + << + \accidentalStyle Score.piano + \context Staff = "upper" << + \set Staff.midiInstrument = #"acoustic grand" + \Global + \clef treble + \Soprano + \Alto + >> + \context Staff = "lower" << + \set Staff.midiInstrument = #"acoustic grand" + \Global + \clef bass + \Tenor + \Bass + >> + >> + \header { + composer = ##f # "Johann Sebastian Bach" + opus = ##f # "BWV 826" + title = \markup { "Capriccio" } + subtitle = ##f + } + \layout { + \context { + \PianoStaff + \override Parentheses.font-size = #-2 + \override TextScript.font-shape = #'italic + \override TextScript.font-size = #-1 + } + } + \midi { + \tempo 4 = 100 + } +} diff --git a/src/johann-sebastian-bach/partitas/Makefile.am b/src/johann-sebastian-bach/partitas/Makefile.am index 3dccc55f..cfd8db88 100644 --- a/src/johann-sebastian-bach/partitas/Makefile.am +++ b/src/johann-sebastian-bach/partitas/Makefile.am @@ -1,2 +1,3 @@ SUBDIRS = BWV825 \ + BWV826 \ BWV830