]> git.donarmstrong.com Git - lilypond.git/commitdiff
Merge branch 'master' into translation
authorJean-Charles Malahieude <lilyfan@orange.fr>
Sat, 1 Jun 2013 07:42:31 +0000 (09:42 +0200)
committerJean-Charles Malahieude <lilyfan@orange.fr>
Sat, 1 Jun 2013 07:42:31 +0000 (09:42 +0200)
159 files changed:
Documentation/contributor/release-work.itexi
Documentation/de/notation/vocal.itely
Documentation/es/notation/vocal.itely
Documentation/fr/notation/vocal.itely
Documentation/ja/notation/vocal.itely
Documentation/notation/chords.itely
Documentation/notation/staff.itely
Documentation/notation/vocal.itely
Documentation/pictures/Gonville_after.png
Documentation/pictures/Gonville_before.png
Documentation/pictures/Learning_Macos_Compiling_log.png
Documentation/pictures/Learning_Macos_New_menu.png
Documentation/pictures/Learning_Macos_Open_Dialog_box.png
Documentation/pictures/Learning_Macos_Open_menu.png
Documentation/pictures/Learning_Macos_Save_file_with_name.png
Documentation/pictures/Learning_Macos_Save_menu.png
Documentation/pictures/Learning_Macos_Typeset_menu.png
Documentation/pictures/Learning_Macos_pdf_output.png
Documentation/pictures/Learning_Macos_welcome.png
Documentation/pictures/Learning_Win7_All_Files_Created.png
Documentation/pictures/Learning_Win7_Log_File.png
Documentation/pictures/Learning_Win7_New_Menu.png
Documentation/pictures/Learning_Win7_Open_Context_Menu.png
Documentation/pictures/Learning_Win7_Open_Dragndrop.png
Documentation/pictures/Learning_Win7_Open_Menu.png
Documentation/pictures/Learning_Win7_Pdf_Output.png
Documentation/pictures/Learning_Win7_Save_File_With_Name.png
Documentation/pictures/Learning_Win7_Save_Menu.png
Documentation/pictures/Learning_Win7_Welcome_File_Whole.png
Documentation/pictures/OpusAndFeta.png
Documentation/pictures/background-image.png
Documentation/pictures/baer-sarabande-hires.png
Documentation/pictures/baer-sarabande.png
Documentation/pictures/baer-suite1-fullpage-hires.png
Documentation/pictures/baer-suite1-fullpage.png
Documentation/pictures/baer-suite1-line.png
Documentation/pictures/bench-morgenlied.png
Documentation/pictures/bwv861-baer-alt-small.png
Documentation/pictures/bwv861-baer-alt.png
Documentation/pictures/bwv861-baer-small.png
Documentation/pictures/bwv861-baer.png
Documentation/pictures/bwv861-breitkopf-small.png
Documentation/pictures/bwv861-breitkopf.png
Documentation/pictures/bwv861-finale2008a.png
Documentation/pictures/bwv861-gessellschaft-small.png
Documentation/pictures/bwv861-gessellschaft.png
Documentation/pictures/bwv861mm28-29.png
Documentation/pictures/bwv861mm33-34-annotate.png
Documentation/pictures/bwv861mm33-34.png
Documentation/pictures/color1-active.png
Documentation/pictures/color1-bg.png
Documentation/pictures/color2-active.png
Documentation/pictures/color2-bg.png
Documentation/pictures/color2-hover.png
Documentation/pictures/color3-active.png
Documentation/pictures/color3-bg.png
Documentation/pictures/color3-hover.png
Documentation/pictures/color4-active.png
Documentation/pictures/color4-bg.png
Documentation/pictures/double-lily-modified3.png
Documentation/pictures/engraver-noteheads.png
Documentation/pictures/engraver-score.png
Documentation/pictures/finale-sarabande-full.png
Documentation/pictures/flat-design.png
Documentation/pictures/frescobaldi-lilypond-editor-small.png
Documentation/pictures/frescobaldi-lilypond-editor.png
Documentation/pictures/hader-collage.png
Documentation/pictures/hader-slaan.png
Documentation/pictures/henle-ledger.png
Documentation/pictures/henle-suite1-fullpage-hires.png
Documentation/pictures/henle-suite1-fullpage.png
Documentation/pictures/henle-suite1-line.png
Documentation/pictures/lelie.png
Documentation/pictures/lily-home-nav-active.png
Documentation/pictures/lily-home-nav-bg.png
Documentation/pictures/lily-home-nav-hover.png
Documentation/pictures/lily-ledger.png
Documentation/pictures/lily14-sarabande-annotated-hires.png
Documentation/pictures/lily14-sarabande-annotated.png
Documentation/pictures/lily14-sarabande-correct.png
Documentation/pictures/lily14-sarabande-hires.png
Documentation/pictures/lily17-sarabande.png
Documentation/pictures/lilykde-screenshot-small.png
Documentation/pictures/lilykde-screenshot.png
Documentation/pictures/lilypond-book.png
Documentation/pictures/lilypondtool-2.12-screenshot-400wide.png
Documentation/pictures/lilypondtool-2.12-screenshot.png
Documentation/pictures/logo-linux.png
Documentation/pictures/logo-slackware.png
Documentation/pictures/logo-suse.png
Documentation/pictures/logo-ubuntu.png
Documentation/pictures/logo-windows.png
Documentation/pictures/morgenlied-crop-2.png
Documentation/pictures/morgenlied-ly-crop2.png
Documentation/pictures/naive-notation.png
Documentation/pictures/nav-active-2.png
Documentation/pictures/nav-active.png
Documentation/pictures/nav-bg-2.png
Documentation/pictures/nav-bg.png
Documentation/pictures/nav-hover-2.png
Documentation/pictures/nav-hover.png
Documentation/pictures/nereid-shot-small.png
Documentation/pictures/nereid-shot.png
Documentation/pictures/nonnaive-notation.png
Documentation/pictures/screenshot-denemo-small.png
Documentation/pictures/screenshot-denemo.png
Documentation/pictures/simple-notation.png
Documentation/pictures/stone-distance.png
Documentation/pictures/text-input-1-annotate-hu.png
Documentation/pictures/text-input-1-annotate-it.png
Documentation/pictures/text-input-1-annotate-nl.png
Documentation/pictures/text-input-2-annotate-hu.png
Documentation/pictures/text-input-2-annotate-it.png
Documentation/pictures/text-input-2-annotate-nl.png
Documentation/pictures/text-input-parts-both-annotate-hu.png
Documentation/pictures/text-input-parts-both-annotate-it.png
Documentation/pictures/text-input-parts-both-annotate-nl.png
Documentation/pictures/text-input-parts-single-annotate-hu.png
Documentation/pictures/text-input-parts-single-annotate-it.png
Documentation/pictures/text-input-parts-single-annotate-nl.png
Documentation/pictures/text-input-pop-annotate-hu.png
Documentation/pictures/text-input-pop-annotate-it.png
Documentation/pictures/text-input-pop-annotate-nl.png
Documentation/pictures/text-input-score-annotate-hu.png
Documentation/pictures/text-input-score-annotate-it.png
Documentation/pictures/text-input-score-annotate-nl.png
Documentation/snippets/vertical-aligned-staffgroups-without-connecting-systemstartbar.ly
Documentation/web/news-front.itexi
Documentation/web/news.itexi
Documentation/web/we-wrote.bib
VERSION
input/regression/balloon.ly
input/regression/fret-diagrams-size.ly
input/regression/markup-note-styles.ly
input/regression/markup-rest.ly
input/regression/markup-special-characters.ly
input/regression/optimal-page-breaking-hstretch.ly
input/regression/page-headers-and-footers.ly
input/regression/page-limited-space.ly [deleted file]
input/regression/slur-cross-staff-beam.ly
lily/box.cc
lily/constrained-breaking.cc
lily/dots.cc
lily/include/box.hh
lily/include/stencil.hh
lily/side-position-interface.cc
lily/skyline.cc
lily/stencil-scheme.cc
lily/stencil.cc
ly/toc-init.ly
po/lilypond.pot
python/convertrules.py
scm/chord-name.scm
scm/define-grobs.scm
scm/define-markup-commands.scm
scm/markup.scm
scm/safe-lily.scm
scm/stencil.scm
scm/titling.scm

index 9120e6529ff1c225513026d21df7bd1a4e83cfd6..5dbc3082540a000a12acbdffc72198b85b31c420 100644 (file)
@@ -97,12 +97,23 @@ git merge origin/master
 make -C $LILYPOND_BUILD_DIR po-replace
 mv $LILYPOND_BUILD_DIR/po/lilypond.pot po/
 gedit Documentation/web/news-front.itexi Documentation/web/news.itexi
+gedit VERSION
 @end example
 
+@itemize
+@item
+VERSION_DEVEL = the current development version (previous VERSION_DEVEL + 0.01)
+
+@item
+VERSION_STABLE = the current stable version (probably no change here)
+
+@end itemize
+
 @item
 Commit, push, switch back to master (or wherever else):
 
 @example
+git commit -m "Release: bump VERSION_DEVEL." VERSION
 git commit -m "PO: update template." po/lilypond.pot
 git commit -m "Release: update news." Documentation/web/
 git push origin HEAD:release/unstable
@@ -144,14 +155,16 @@ make LILYPOND_BRANCH=release/unstable lilypond
 or something like:
 
 @example
-make LILYPOND_BRANCH=stable/2.12 lilypond
+make LILYPOND_BRANCH=stable/2.16 lilypond
 @end example
 
-@item Check the regtest comparison in @file{uploads/webtest/} for
+@item
+Check the regtest comparison in @file{uploads/webtest/} for
 any unintentional breakage.  More info in
 @ref{Precompiled regression tests}.
 
-@item If any work was done on GUB since the last release, upload
+@item
+If any work was done on GUB since the last release, upload
 binaries to a temporary location, ask for feedback, and wait a day
 or two in case there's any major problems.
 
@@ -172,8 +185,6 @@ test-lily/rsync-lily-doc.py
 test-lily/rsync-test.py
 @end example
 
-@code{graham} owns v2.13; @code{han-wen} owns v2.12.
-
 @item Upload GUB by running:
 
 @example
@@ -198,7 +209,8 @@ make lilypond-upload \
 
 @enumerate
 
-@item Update the current staging branch with the current news:
+@item
+Update the current staging branch with the current news:
 
 @example
 git fetch
@@ -206,26 +218,20 @@ git checkout origin/staging
 git merge origin/release/unstable
 @end example
 
-@item Update @file{VERSION} in lilypond git and upload changes:
+@item
+Update @file{VERSION} in lilypond git and upload changes:
 
 @example
-vi VERSION
+gedit VERSION
 @end example
 
 @itemize
 @item
 VERSION = what you just did +0.0.1
-
-@item
-DEVEL_VERSION = what you just did (i.e. is now online)
-
-@item
-STABLE_VERSION = what's online (probably no change here)
-
 @end itemize
 
 @example
-git commit -m "Release: bump version." VERSION
+git commit -m "Release: bump VERSION." VERSION
 git push origin HEAD:staging
 @end example
 
@@ -240,21 +246,6 @@ it means that somebody else updated the staging branch while you were
 preparing your change.  In that case, you need to restart the Post
 Release process.  Otherwise, proceed:
 
-@item (for now) do a @code{make doc} and manually upload:
-
-@example
-### upload-lily-web-media.sh
-#!/bin/sh
-BUILD_DIR=$HOME/src/build-lilypond
-
-PICS=$BUILD_DIR/Documentation/pictures/out-www/
-EXAMPLES=$BUILD_DIR/Documentation/ly-examples/out-www/
-
-cd $BUILD_DIR
-rsync -a $PICS graham@@lilypond.org:media/pictures
-rsync -a $EXAMPLES graham@@lilypond.org:media/ly-examples
-@end example
-
 @item Wait a few hours for the website to update.
 
 @item Email release notice to @code{info-lilypond}
index 2a9bf9157a3e3cef809f334e6f19bd6c93ca5eeb..858db18da05c3557eb2a1002efa48a6ca3782aa1 100644 (file)
@@ -7,7 +7,7 @@
     Guide, node Updating translation committishes.
 @end ignore
 
-@c \version "2.17.18"
+@c \version "2.17.19"
 
 @c Translators: Till Paala
 
@@ -2064,7 +2064,7 @@ text = \lyricmode {
           "It has two lines."
         }
       }
-      \vspace #0.1 % adds vertical spacing between verses
+      \combine \null \vspace #0.1 % adds vertical spacing between verses
       \line { \bold "3."
         \column {
           "This is verse three."
@@ -2080,7 +2080,7 @@ text = \lyricmode {
           "It has two lines."
         }
       }
-      \vspace #0.1 % adds vertical spacing between verses
+      \combine \null \vspace #0.1 % adds vertical spacing between verses
       \line { \bold "5."
         \column {
           "This is verse five."
index 12b63fd7b09277d3b822392aba89f09ac09aab45..e48b69ea6da49c58812ce8f4d8c2e37d00ab2f12 100644 (file)
@@ -8,7 +8,7 @@
     Guide, node Updating translation committishes..
 @end ignore
 
-@c \version "2.17.18"
+@c \version "2.17.19"
 
 @node Música vocal
 @section Música vocal
@@ -2056,7 +2056,7 @@ text = \lyricmode {
           "It has two lines."
         }
       }
-      \vspace #0.1 % adds vertical spacing between verses
+      \combine \null \vspace #0.1 % adds vertical spacing between verses
       \line { \bold "3."
         \column {
           "This is verse three."
@@ -2072,7 +2072,7 @@ text = \lyricmode {
           "It has two lines."
         }
       }
-      \vspace #0.1 % adds vertical spacing between verses
+      \combine \null \vspace #0.1 % adds vertical spacing between verses
       \line { \bold "5."
         \column {
           "This is verse five."
index 1bea70ebdd126c683562957d9e0f1731a3650f8f..c5d18b9d565b0747a3ad54f897d721ba52e48841 100644 (file)
@@ -8,7 +8,7 @@
     Guide, node Updating translation committishes..
 @end ignore
 
-@c \version "2.17.18"
+@c \version "2.17.19"
 
 @c Translators: Valentin Villenave, Jean-Charles Malahieude
 @c Translation checkers: Jean-Jacques Gerbaud
@@ -2065,7 +2065,7 @@ text = \lyricmode {
           "Je me suis fait sécher..."
         }
       }
-      \vspace #0.1 % ajout d'espace vertical entre les couplets
+      \combine \null \vspace #0.1 % ajout d'espace vertical entre les couplets
       \line { \bold "3."
         \column {
           "Chante, rossignol, chante,"
@@ -2081,7 +2081,7 @@ text = \lyricmode {
           "Sans l'avoir mérité..."
         }
       }
-      \vspace #0.1 % ajout d'espace vertical entre les couplets
+      \combine \null \vspace #0.1 % ajout d'espace vertical entre les couplets
       \line { \bold "5."
         \column {
           "Je voudrais que la rose"
index 884b10e50f7a06c163cf7cef7ab86ae533b01798..dff6c23f670ac84a96904487355dd667a787fb69 100644 (file)
@@ -8,7 +8,7 @@
     Guide, node Updating translation committishes..
 @end ignore
 
-@c \version "2.17.18"
+@c \version "2.17.19"
 
 @c Translators: Yoshiki Sawada
 @c Translation status: post-GDP
@@ -2025,7 +2025,7 @@ text = \lyricmode {
           "It has two lines."
         }
       }
-      \vspace #0.1 % 次の歌詞との間に垂直方向のスペースを入れます
+      \combine \null \vspace #0.1 % 次の歌詞との間に垂直方向のスペースを入れます
       \line { \bold "3."
         \column {
           "This is verse three."
@@ -2041,7 +2041,7 @@ text = \lyricmode {
           "It has two lines."
         }
       }
-      \vspace #0.1 % 次の歌詞との間に垂直方向のスペースを入れます
+      \combine \null \vspace #0.1 % 次の歌詞との間に垂直方向のスペースを入れます
       \line { \bold "5."
         \column {
           "This is verse five."
index 6660a201f2b02e104eac6106ffd625221f5c883a..593e04a05aef1df1047b3b21edc2a8b6e787bec9 100644 (file)
@@ -1077,13 +1077,13 @@ figures is adjusted automatically.
 
 @lilypond[verbatim,ragged-right,quote]
 <<
-  \new Staff = myStaff
+  \new Staff = "myStaff"
   \figuremode {
     <4>4 <10 6>8 s8
     <6 4>4 <6 4>
   }
   %% Put notes on same Staff as figures
-  \context Staff = myStaff
+  \context Staff = "myStaff"
   {
     \clef bass
     c4 c'8 r8 c4 c'
@@ -1097,14 +1097,14 @@ or below the staff.
 
 @lilypond[verbatim,ragged-right,quote]
 <<
-  \new Staff = myStaff
+  \new Staff = "myStaff"
   \figuremode {
     <4>4 <10 6>8 s8
     \bassFigureStaffAlignmentDown
     <6 4>4 <6 4>
   }
   %% Put notes on same Staff as figures
-  \context Staff = myStaff
+  \context Staff = "myStaff"
   {
     \clef bass
     c4 c'8 r8 c4 c'
index 235e94049c930d2193c9558e117ddb20c2b44ebf..55272a61210ea00e13a0f7414f1b8295581b214e 100644 (file)
@@ -432,10 +432,10 @@ f'4 d \startStaff g, e
 @endpredefined
 
 The lines of a staff belong to the @code{StaffSymbol} grob (including
-ledger lines) can be modified using @code{StaffSymbol} properties, but
+ledger lines) and can be modified using @code{StaffSymbol} properties, but
 these modifications must be made before the staff is (re)started.
 
-The number of staff lines can be altered,
+The number of staff lines can be altered:
 
 @lilypond[verbatim,quote,relative=2]
 f4 d \stopStaff
@@ -448,7 +448,7 @@ f'4 d \stopStaff
 @end lilypond
 
 The position of each staff line can also be altered.  A list of
-numbers sets each line's position.  @code{0} corresponds to the normal
+numbers sets each line's position.  @code{0}@tie{}corresponds to the normal
 center line, and the normal line positions are
 @code{(-4@tie{}-2@tie{}0@tie{}2@tie{}4)}.  A single staff line is
 printed for every value entered so that the number of staff lines, as
@@ -519,8 +519,8 @@ ledger lines when the explicit @code{ledger-position} is and is not set.
 The @code{\stopStaff} is needed in the example to revert the
 @code{\override} for the whole @code{StaffSymbol}.
 
-@lilypond[fragment,quote,relative=1]
-\override Staff.StaffSymbol.line-positions =   #'(-8 0 2 4)
+@lilypond[verbatim,quote,relative=1]
+\override Staff.StaffSymbol.line-positions = #'(-8 0 2 4)
 d4 e f g
 \stopStaff
 \startStaff
@@ -600,7 +600,7 @@ to align the ossia staff.  This method is most appropriate when
 only a few ossia staves are needed.
 
 @lilypond[verbatim,quote]
-\new Staff = main \relative c'' {
+\new Staff = "main" \relative c'' {
   c4 b d c
   <<
     { c4 b d c }
@@ -629,7 +629,7 @@ example.
 
 @lilypond[verbatim,quote,ragged-right]
 <<
-  \new Staff = ossia \with {
+  \new Staff = "ossia" \with {
     \remove "Time_signature_engraver"
     \override Clef.transparent = ##t
     fontSize = #-3
@@ -642,7 +642,7 @@ example.
     c4 b c2
     <<
       { e4 f e2 }
-      \context Staff = ossia {
+      \context Staff = "ossia" {
         \startStaff e4 g8 f e2 \stopStaff
       }
     >>
@@ -650,7 +650,7 @@ example.
     c4 b c2
     <<
       { g4 a g2 }
-      \context Staff = ossia {
+      \context Staff = "ossia" {
         \startStaff g4 e8 f g2 \stopStaff
       }
     >>
@@ -668,7 +668,7 @@ break.  For more information about
 
 @lilypond[verbatim,quote,ragged-right]
 <<
-  \new Staff = ossia \with {
+  \new Staff = "ossia" \with {
     \remove "Time_signature_engraver"
     \override Clef.transparent = ##t
     fontSize = #-3
index 54a656959183fa54feaadf145adb0b7c11bb0c2d..3d082ce8293da5e1d0e8c79097f905fd78928ec8 100644 (file)
@@ -7,7 +7,7 @@
     Guide, node Updating translation committishes..
 @end ignore
 
-@c \version "2.17.18"
+@c \version "2.17.19"
 
 @node Vocal music
 @section Vocal music
@@ -2009,7 +2009,7 @@ text = \lyricmode {
           "It has two lines."
         }
       }
-      \vspace #0.1 % adds vertical spacing between verses
+      \combine \null \vspace #0.1 % adds vertical spacing between verses
       \line { \bold "3."
         \column {
           "This is verse three."
@@ -2025,7 +2025,7 @@ text = \lyricmode {
           "It has two lines."
         }
       }
-      \vspace #0.1 % adds vertical spacing between verses
+      \combine \null \vspace #0.1 % adds vertical spacing between verses
       \line { \bold "5."
         \column {
           "This is verse five."
index 6bafc25a9d771b162ac80071e8e4de5ebb9af472..070ff0c64158848201571adc186b8b37ec50beb3 100644 (file)
Binary files a/Documentation/pictures/Gonville_after.png and b/Documentation/pictures/Gonville_after.png differ
index ef810fdda947b0bed727157ef555cde456b2fc28..9f0b3947ddc650ee1f3466b9f48c5a7a4b0d5f63 100644 (file)
Binary files a/Documentation/pictures/Gonville_before.png and b/Documentation/pictures/Gonville_before.png differ
index 3ad433f35f7a21b3721e624a0acb286c2817dfd7..2d21a2140c6e2ac80c9f5288a43990ee3d99688f 100644 (file)
Binary files a/Documentation/pictures/Learning_Macos_Compiling_log.png and b/Documentation/pictures/Learning_Macos_Compiling_log.png differ
index 4bfcbcb3315e6a60e0b4ae08f8931c6a12b8fe4c..e0c464fb22fbb62d08e5d8037f7dde074371dfdf 100644 (file)
Binary files a/Documentation/pictures/Learning_Macos_New_menu.png and b/Documentation/pictures/Learning_Macos_New_menu.png differ
index 3aefbc94c59597a33ec07a15d945eb90acd01aed..6c67f7d75f7c9b44e0ce8831e7e988d9c27df170 100644 (file)
Binary files a/Documentation/pictures/Learning_Macos_Open_Dialog_box.png and b/Documentation/pictures/Learning_Macos_Open_Dialog_box.png differ
index 7da0f54ce25f309203a580eed316db861598786e..e369df360a1f3fa5d09ad6f7d0811f10435720ab 100644 (file)
Binary files a/Documentation/pictures/Learning_Macos_Open_menu.png and b/Documentation/pictures/Learning_Macos_Open_menu.png differ
index 7a11e856f8a26c07de58663669d7b710dadb58e7..e594ea2bd1d4994fb489bcf174fcd3918f423389 100644 (file)
Binary files a/Documentation/pictures/Learning_Macos_Save_file_with_name.png and b/Documentation/pictures/Learning_Macos_Save_file_with_name.png differ
index 7fd05094486e57d60181c61b8a2c8d3042f556f1..6f51c4e5030481ef4696bf12de2674bd3af73be7 100644 (file)
Binary files a/Documentation/pictures/Learning_Macos_Save_menu.png and b/Documentation/pictures/Learning_Macos_Save_menu.png differ
index ed8924450596f77e9ce6fcc72eddfeedd770bed9..2fbc94b91a7d5bb179edc4e0529ad7d9db476e14 100644 (file)
Binary files a/Documentation/pictures/Learning_Macos_Typeset_menu.png and b/Documentation/pictures/Learning_Macos_Typeset_menu.png differ
index cba71447f477c85aab9e96edabb84d7d2b517348..560d7b0365b75e754d6a339eb1b938fdbb6fb608 100644 (file)
Binary files a/Documentation/pictures/Learning_Macos_pdf_output.png and b/Documentation/pictures/Learning_Macos_pdf_output.png differ
index f37ea9a95b8ee1d85b084da1ec0cee294d3efc56..e99a1de43ce43e218e90920490bd53f3fce2d9a1 100644 (file)
Binary files a/Documentation/pictures/Learning_Macos_welcome.png and b/Documentation/pictures/Learning_Macos_welcome.png differ
index f33cd814fbdc349338e3d4835cfc7835b773382f..5d608555c30afa1413cb00821266ed37aed8ef32 100644 (file)
Binary files a/Documentation/pictures/Learning_Win7_All_Files_Created.png and b/Documentation/pictures/Learning_Win7_All_Files_Created.png differ
index 642ac78a98e8112db4aa6ad3e8a416e158b82950..4a68339d458d64c5269c5def063489526bca3abe 100644 (file)
Binary files a/Documentation/pictures/Learning_Win7_Log_File.png and b/Documentation/pictures/Learning_Win7_Log_File.png differ
index 8946ec10fec1771fbd120f5a2b3b4b5710cfade3..eebabd4eb570943d343bb735877a4238db0352ff 100644 (file)
Binary files a/Documentation/pictures/Learning_Win7_New_Menu.png and b/Documentation/pictures/Learning_Win7_New_Menu.png differ
index 19c5db32d459583130b2fb82f22d7e10dd6e745f..8e7d420ee6075af8611cf8b2353d7e9e1765668f 100644 (file)
Binary files a/Documentation/pictures/Learning_Win7_Open_Context_Menu.png and b/Documentation/pictures/Learning_Win7_Open_Context_Menu.png differ
index 1e7fc8e04ae81583c224787cf678abc372788b7a..2df9b1714c0fc62cf8e864c3dc62c9d7a2ea6396 100644 (file)
Binary files a/Documentation/pictures/Learning_Win7_Open_Dragndrop.png and b/Documentation/pictures/Learning_Win7_Open_Dragndrop.png differ
index c81dee5c7ed224909e98cf4e39251b7793822379..68cdcb44c351a81481f6c67f9050163680e30b5d 100644 (file)
Binary files a/Documentation/pictures/Learning_Win7_Open_Menu.png and b/Documentation/pictures/Learning_Win7_Open_Menu.png differ
index c007685b2f56a99eee057da3be76b1127e0d8da3..57190f3255468bbe3e77600b5f3a7a907bb55135 100644 (file)
Binary files a/Documentation/pictures/Learning_Win7_Pdf_Output.png and b/Documentation/pictures/Learning_Win7_Pdf_Output.png differ
index 2ecf46cac8ed6b6a00b7e4f9be463cd1386504f2..ba605da09da076dc3badca672236185de29022fb 100644 (file)
Binary files a/Documentation/pictures/Learning_Win7_Save_File_With_Name.png and b/Documentation/pictures/Learning_Win7_Save_File_With_Name.png differ
index e261abfcdd24f2e95ed5b2f965dd4ea2930b4bbf..f9b3dd759bc98e407e746760f82768bbced728e7 100644 (file)
Binary files a/Documentation/pictures/Learning_Win7_Save_Menu.png and b/Documentation/pictures/Learning_Win7_Save_Menu.png differ
index 3dd588d63768a1c8ff74db044d0497f90c7e6328..ac3cc7907032483f084659db947e403119128952 100644 (file)
Binary files a/Documentation/pictures/Learning_Win7_Welcome_File_Whole.png and b/Documentation/pictures/Learning_Win7_Welcome_File_Whole.png differ
index f766063fa5aff4db4f9fe017e41c426cd61b22cc..03b740694dd46065e5bdb70b058db22899a252d9 100644 (file)
Binary files a/Documentation/pictures/OpusAndFeta.png and b/Documentation/pictures/OpusAndFeta.png differ
index dac7f63eb79dd9c2d787b8dee0df435b89070b89..202cf8bd31afb91550293790cf252f1d4fad8c99 100644 (file)
Binary files a/Documentation/pictures/background-image.png and b/Documentation/pictures/background-image.png differ
index 06be5138ad7b065b1bc7db01d1b46e8e7f33acf5..dbc399efe3622a2bb2ff9de1d45e69825d31a257 100644 (file)
Binary files a/Documentation/pictures/baer-sarabande-hires.png and b/Documentation/pictures/baer-sarabande-hires.png differ
index fa14958da304381b696601299350a6e0eeee153e..2db728c41057ad25ca72bae28cd9adf36aca4646 100644 (file)
Binary files a/Documentation/pictures/baer-sarabande.png and b/Documentation/pictures/baer-sarabande.png differ
index e2ccd60b48d785f4580423b33ab5da192bca42e4..bff34bb79389e60a254986b3be5bd4df781e5ae2 100644 (file)
Binary files a/Documentation/pictures/baer-suite1-fullpage-hires.png and b/Documentation/pictures/baer-suite1-fullpage-hires.png differ
index 494f6e0294ba774e2dbfcb60245367040f4f1a7b..537ab64cbec726a934334fd792ae980d7113bf50 100644 (file)
Binary files a/Documentation/pictures/baer-suite1-fullpage.png and b/Documentation/pictures/baer-suite1-fullpage.png differ
index d94ac32de665e350bf898fee0994d03a500d4e3d..ee43975040ef0ef1dd043afd14b510f20135049a 100644 (file)
Binary files a/Documentation/pictures/baer-suite1-line.png and b/Documentation/pictures/baer-suite1-line.png differ
index cfe0bcfaf2425d9f0d00a5440c0b958ca41ba5ff..420f14bc27d3c967327dd20b42d2b9986319781c 100644 (file)
Binary files a/Documentation/pictures/bench-morgenlied.png and b/Documentation/pictures/bench-morgenlied.png differ
index c4506abac8acc0e45526b3d61e6cf073fede5fde..044a494ce86e0dd279633b39ad41bc250453fabc 100644 (file)
Binary files a/Documentation/pictures/bwv861-baer-alt-small.png and b/Documentation/pictures/bwv861-baer-alt-small.png differ
index b13577a72d3b3aee6e18c26d5e49864c72a5756d..bc02b64e05099882a9f6e54788903d450e95832b 100644 (file)
Binary files a/Documentation/pictures/bwv861-baer-alt.png and b/Documentation/pictures/bwv861-baer-alt.png differ
index 1ceea362861473e9e58ef24c4d4b27440dad735b..ee828f9f06f44c158827ff415e33920a23900210 100644 (file)
Binary files a/Documentation/pictures/bwv861-baer-small.png and b/Documentation/pictures/bwv861-baer-small.png differ
index 229155c84c0e3ab0863ff6f29846375da2a7c7c7..b592213a91372f86db94e77704cd09274c92aa56 100644 (file)
Binary files a/Documentation/pictures/bwv861-baer.png and b/Documentation/pictures/bwv861-baer.png differ
index 00f873f72c57904d9f746eec6aa555c410b8b575..e13ae4997575249444148d36112cc85aaf3689e2 100644 (file)
Binary files a/Documentation/pictures/bwv861-breitkopf-small.png and b/Documentation/pictures/bwv861-breitkopf-small.png differ
index 797b4086ca603c90bd2b4af467d3088468df5dfe..9b3284a897b669f38df9f4f80a097f7588018582 100644 (file)
Binary files a/Documentation/pictures/bwv861-breitkopf.png and b/Documentation/pictures/bwv861-breitkopf.png differ
index cdf4da71f00184800c39f0f0e4cb99b61ace8f71..a2be64bd50fa2a9ee0082c7e2a86cd61adf5cdf1 100644 (file)
Binary files a/Documentation/pictures/bwv861-finale2008a.png and b/Documentation/pictures/bwv861-finale2008a.png differ
index 848e260b8ed01e2b979296fa9fd40dd84c4047ab..c55920e8993802aeba1b3ca342564febc053938c 100644 (file)
Binary files a/Documentation/pictures/bwv861-gessellschaft-small.png and b/Documentation/pictures/bwv861-gessellschaft-small.png differ
index 7fc73903b04e2cf1a5421fda076c88ab0084d898..5e03aec5fe7fb9655a16fd6b80e13e3f7c60423b 100644 (file)
Binary files a/Documentation/pictures/bwv861-gessellschaft.png and b/Documentation/pictures/bwv861-gessellschaft.png differ
index 3933f3f2135104748f76a927a04adaa838b7cd41..9a25ca95de36f2dcd0b2856d5ca5d71a6b68242d 100644 (file)
Binary files a/Documentation/pictures/bwv861mm28-29.png and b/Documentation/pictures/bwv861mm28-29.png differ
index 506601e6cbff4073baa0fc0f71e38478de6f657c..6fd08686e883372e24d273e79d9dec004b7426a7 100644 (file)
Binary files a/Documentation/pictures/bwv861mm33-34-annotate.png and b/Documentation/pictures/bwv861mm33-34-annotate.png differ
index f1bffb449535740b97f956388ddc63f6cf8b6225..371d8e0f6b9bbfef6d160a8067420fbe4905fab8 100644 (file)
Binary files a/Documentation/pictures/bwv861mm33-34.png and b/Documentation/pictures/bwv861mm33-34.png differ
index e91e80dc6797cafa17ea06f1ae5ec1f4d89707be..37b464ae4a32dc27fd5f59c744d5b0af1e3e3047 100644 (file)
Binary files a/Documentation/pictures/color1-active.png and b/Documentation/pictures/color1-active.png differ
index 187579954bf99cf6bda2310e5651dd0a65b7ce72..cb80c402071486bb4eb551796f9d4c9fc7112d31 100644 (file)
Binary files a/Documentation/pictures/color1-bg.png and b/Documentation/pictures/color1-bg.png differ
index 1bc51a9e2bae9ac5340209133a21403f2366666a..8f6ac576f7e71514d9a5240bf23629015fefb3bd 100644 (file)
Binary files a/Documentation/pictures/color2-active.png and b/Documentation/pictures/color2-active.png differ
index 4eeb9cba9b9ffd6d83f6f1c86ceddefad7e53610..154b365f8aa5a4c5d38d18a1bbbc145f5b44e328 100644 (file)
Binary files a/Documentation/pictures/color2-bg.png and b/Documentation/pictures/color2-bg.png differ
index 71ae3ea5ab7dc2b7b33d74330808553f64d0c33c..3232bce7b6d13b9eee6e07cb10876140d65028e5 100644 (file)
Binary files a/Documentation/pictures/color2-hover.png and b/Documentation/pictures/color2-hover.png differ
index ceefd4b18c9d937abc5667e8c7574df8c3bf1a95..b2aed09810615330472082b75eaa0d2cf1d706cf 100644 (file)
Binary files a/Documentation/pictures/color3-active.png and b/Documentation/pictures/color3-active.png differ
index 2fcc56be068b06ec9e6ec336c9fccaceb6d4c6b7..ab2134fd7e266a8efb72a576780aa52b8e1b790c 100644 (file)
Binary files a/Documentation/pictures/color3-bg.png and b/Documentation/pictures/color3-bg.png differ
index c692715efdccc6323fd648c12dd56e66f2ee2d77..b070274ad18299e79a15715b3cc947550a13e554 100644 (file)
Binary files a/Documentation/pictures/color3-hover.png and b/Documentation/pictures/color3-hover.png differ
index 0046c0e18a3686366715cf27ee6351e0854ac59e..0daee7f7064acb94702bdfb5fca6509ee06cd8b9 100644 (file)
Binary files a/Documentation/pictures/color4-active.png and b/Documentation/pictures/color4-active.png differ
index ff7ee3512edcf7eceb0b5c091b34b4bcf6d07299..d71b3d91ce5061f389387dd80b40aadf505b6d9f 100644 (file)
Binary files a/Documentation/pictures/color4-bg.png and b/Documentation/pictures/color4-bg.png differ
index 7bdb50b6b734aa0f85b813812043111b4167eb78..9d48f2898c64577ff8b5129de384750d77013856 100644 (file)
Binary files a/Documentation/pictures/double-lily-modified3.png and b/Documentation/pictures/double-lily-modified3.png differ
index 449d7edaa880cfbb309fc338a46c1f082bc33547..61c7c842f5d5706d8ac383c3310e2cd55be0421b 100644 (file)
Binary files a/Documentation/pictures/engraver-noteheads.png and b/Documentation/pictures/engraver-noteheads.png differ
index dc2b2e6512552e880a30209dc6872e11585a2f1d..57c931882e703bf4ca2688ff0ed5464f0ebce746 100644 (file)
Binary files a/Documentation/pictures/engraver-score.png and b/Documentation/pictures/engraver-score.png differ
index 36707ddf93bec51f699e62078bd6b157d22030f4..79c2c5c51b82e5d6098b9de2cfca3b9242446b9a 100644 (file)
Binary files a/Documentation/pictures/finale-sarabande-full.png and b/Documentation/pictures/finale-sarabande-full.png differ
index 80507a4224d9beb516e7289163211da5fb293cb0..e327a16e46debbb7d71f0aa396cefd36fc6dd2cc 100644 (file)
Binary files a/Documentation/pictures/flat-design.png and b/Documentation/pictures/flat-design.png differ
index 37fed95b73cb9052cd717111cb6ae5422a7eac3e..36a777e1bd9bca679822b34f1788c8c4edbb494b 100644 (file)
Binary files a/Documentation/pictures/frescobaldi-lilypond-editor-small.png and b/Documentation/pictures/frescobaldi-lilypond-editor-small.png differ
index 7edcfc0791f53448d8a9f8d1457d714adb2ae639..7f465c84d53120660e6ade0138ef9b2e9c9ede4b 100644 (file)
Binary files a/Documentation/pictures/frescobaldi-lilypond-editor.png and b/Documentation/pictures/frescobaldi-lilypond-editor.png differ
index 6687b1c538c96329ed8af1e9deccc19ce258daf1..f1a6caadc0405caf36089414b4aac45fd0fcf942 100644 (file)
Binary files a/Documentation/pictures/hader-collage.png and b/Documentation/pictures/hader-collage.png differ
index a6d66503d4131e1025b1c23b725d02980e5663ba..5369c725e574ca8f00f6b298ef4f521015b45c26 100644 (file)
Binary files a/Documentation/pictures/hader-slaan.png and b/Documentation/pictures/hader-slaan.png differ
index 184b2f03977bc858a0103f6369cc111fffe64934..2d7bcf50023c385ec4d843fdd153486ebfc74ab6 100644 (file)
Binary files a/Documentation/pictures/henle-ledger.png and b/Documentation/pictures/henle-ledger.png differ
index 44ac2f110159275b6213cbae9978af6bf7025d6b..77ac137b0a3abc97cf5e72af3b14777d4d02f1a1 100644 (file)
Binary files a/Documentation/pictures/henle-suite1-fullpage-hires.png and b/Documentation/pictures/henle-suite1-fullpage-hires.png differ
index 75ffa117910a1578d7029457b0fb5f914a5f374b..d2eacacd3e25b32a4219782784f081c919f1b525 100644 (file)
Binary files a/Documentation/pictures/henle-suite1-fullpage.png and b/Documentation/pictures/henle-suite1-fullpage.png differ
index fc6a2647857c7bd3e40fe2a9b85a72a0c7ca483b..e8d78988fff91b3fb5464a02592b9551559ce22a 100644 (file)
Binary files a/Documentation/pictures/henle-suite1-line.png and b/Documentation/pictures/henle-suite1-line.png differ
index 7e691a76aaf6b1c63f59e483bd0af3f3b41c9242..1b7bfb1b0f400c96ea57e219346ce5341f7d7389 100644 (file)
Binary files a/Documentation/pictures/lelie.png and b/Documentation/pictures/lelie.png differ
index e9400ed92f7423eab3913beffebd1ca5b6af65b4..f3fe2f237c3e95c1d8604b17831e3881fa5aa346 100644 (file)
Binary files a/Documentation/pictures/lily-home-nav-active.png and b/Documentation/pictures/lily-home-nav-active.png differ
index 9032c8384a38b7858cc7f0dbd73d471243fd1e93..9a3e4e8c41113f109282f018931fc6b582ff4120 100644 (file)
Binary files a/Documentation/pictures/lily-home-nav-bg.png and b/Documentation/pictures/lily-home-nav-bg.png differ
index 954a8074f6f7271d1fe73ddc700c1d42fc6d4b84..aaf1c2e10346ad552833e6babab633e08028cba3 100644 (file)
Binary files a/Documentation/pictures/lily-home-nav-hover.png and b/Documentation/pictures/lily-home-nav-hover.png differ
index ce4dcc4150a10943da9cfcac0bff175cdc7dda42..ad37906e2d9a27d41cb898f8cafc5c1079ec2798 100644 (file)
Binary files a/Documentation/pictures/lily-ledger.png and b/Documentation/pictures/lily-ledger.png differ
index 8879ccf8dc1b89335beb4ee8047fe0dc8ea8b359..bf00309d2762758d434e29f97e8efe82333da072 100644 (file)
Binary files a/Documentation/pictures/lily14-sarabande-annotated-hires.png and b/Documentation/pictures/lily14-sarabande-annotated-hires.png differ
index 98769d7584e1b83b78f8d4319eae5da71eca6262..6ccc0a1032f10ed311694cb3db1cb4599dad09e0 100644 (file)
Binary files a/Documentation/pictures/lily14-sarabande-annotated.png and b/Documentation/pictures/lily14-sarabande-annotated.png differ
index f114f12d07650c25ac9a3287fa0b85c8a2f10f13..2dffeb53b8ba9ec09d5c08533a8e31d2c138afa6 100644 (file)
Binary files a/Documentation/pictures/lily14-sarabande-correct.png and b/Documentation/pictures/lily14-sarabande-correct.png differ
index 755f9bce653e00fc6b617e864611e3829a1ec120..2465ac1dbb3c4e219ec98adb1f0aebc52b8dd3d1 100644 (file)
Binary files a/Documentation/pictures/lily14-sarabande-hires.png and b/Documentation/pictures/lily14-sarabande-hires.png differ
index 64813732daa6e4df9fad2dddcf202613f39689e5..d1994909fbc438c9f8ffa4f74acf6a49eba6d354 100644 (file)
Binary files a/Documentation/pictures/lily17-sarabande.png and b/Documentation/pictures/lily17-sarabande.png differ
index 5e31316b885fc8b39bfee9f5973f5e425d572585..41f29b897f248c422b19d84bf3c0d2e26e0c22d6 100644 (file)
Binary files a/Documentation/pictures/lilykde-screenshot-small.png and b/Documentation/pictures/lilykde-screenshot-small.png differ
index 33fdbb3d3ecb887bb6540a7d593b7371f11e4227..20ad28082750cd646cf60736e51001ef6afc26ee 100644 (file)
Binary files a/Documentation/pictures/lilykde-screenshot.png and b/Documentation/pictures/lilykde-screenshot.png differ
index cd05bd912f3d7005f5e063bd2df777df0df4f00b..113940fe8301e242f8b8b4c88f6c55bad7d0f194 100644 (file)
Binary files a/Documentation/pictures/lilypond-book.png and b/Documentation/pictures/lilypond-book.png differ
index b15aaffc16abefcd79f562cb19fdd02901deede9..9011661cea4ebd6219271738cd2116271bb5a6b1 100644 (file)
Binary files a/Documentation/pictures/lilypondtool-2.12-screenshot-400wide.png and b/Documentation/pictures/lilypondtool-2.12-screenshot-400wide.png differ
index ab2cb0e65562b915ead91b4b25be392f5959b8e6..2c4b71489c0f38a628bf0fcbeb104f2c13f518ab 100644 (file)
Binary files a/Documentation/pictures/lilypondtool-2.12-screenshot.png and b/Documentation/pictures/lilypondtool-2.12-screenshot.png differ
index b30937c581508a58bd8b0a2bb23f1509d7c56f28..edfe1bf1352ca3de47fcb86a12f235d78ac8f04e 100644 (file)
Binary files a/Documentation/pictures/logo-linux.png and b/Documentation/pictures/logo-linux.png differ
index 01765f8b68bf83fde64280292b22f4ba5ab9a0d7..749f9ee925ef20e178263944bf274cd2e5d9fab4 100644 (file)
Binary files a/Documentation/pictures/logo-slackware.png and b/Documentation/pictures/logo-slackware.png differ
index dba0cd17109a0a54ef0a22a85aa21d89fd64a836..a678b6dfaadae255da0edd5c902690eeade28ea6 100644 (file)
Binary files a/Documentation/pictures/logo-suse.png and b/Documentation/pictures/logo-suse.png differ
index bb9d0de4ffd848f60fbebdab579d9c716a6398aa..b7b14254b807671da0c5c15f7a14ca23f63164b4 100644 (file)
Binary files a/Documentation/pictures/logo-ubuntu.png and b/Documentation/pictures/logo-ubuntu.png differ
index d915c654e74d61aa8e992fe8b136d64b36f172cc..9f869b15fd0709de80daebd7fa324c9608a54029 100644 (file)
Binary files a/Documentation/pictures/logo-windows.png and b/Documentation/pictures/logo-windows.png differ
index f71d7924b7ee4797a68c2c2998573345349df769..a6d8ba61c578728cf82ad9be31beb7643a859df4 100644 (file)
Binary files a/Documentation/pictures/morgenlied-crop-2.png and b/Documentation/pictures/morgenlied-crop-2.png differ
index 7c51ebf21b1cfdcceb94f7d55aa25df1e5ec8485..b0df9970b82ae9e1752702e76219f33031267f04 100644 (file)
Binary files a/Documentation/pictures/morgenlied-ly-crop2.png and b/Documentation/pictures/morgenlied-ly-crop2.png differ
index 112c406a7a10af874ef7d56bddda038f806271e5..18f7ea98309ba437e45756940091927329c8de9f 100644 (file)
Binary files a/Documentation/pictures/naive-notation.png and b/Documentation/pictures/naive-notation.png differ
index 65e68e29743265476c69c13b464782f912d6ea9b..af41a69eafefef3ad308347a4b04d2b4e58e788e 100644 (file)
Binary files a/Documentation/pictures/nav-active-2.png and b/Documentation/pictures/nav-active-2.png differ
index 8deb6cf0f0c4e26340a2908d21cee3110a807d8e..2ef6477b0f495abc4927acc3966d7cf142bf487e 100644 (file)
Binary files a/Documentation/pictures/nav-active.png and b/Documentation/pictures/nav-active.png differ
index f368e918697cae4e60e96a969d206a7478ae16dd..e1ce8278f13bf173e8226a52a6cc7bdd836bc489 100644 (file)
Binary files a/Documentation/pictures/nav-bg-2.png and b/Documentation/pictures/nav-bg-2.png differ
index 6f05e45f768caeadaff445dfc329f3dd2fa8494b..b893d07b1a1a0b6b323ca0f7656dca379da58068 100644 (file)
Binary files a/Documentation/pictures/nav-bg.png and b/Documentation/pictures/nav-bg.png differ
index 09f1cb69d22a5eeeff771c4007db41ef667ed4f8..84c436badfdbb1d5eae875d24cc55c05efb808d0 100644 (file)
Binary files a/Documentation/pictures/nav-hover-2.png and b/Documentation/pictures/nav-hover-2.png differ
index c368525182bfaad2140df7b2becfca1bd68724ec..3213900699a8b2edab65e876186aecb446abebc5 100644 (file)
Binary files a/Documentation/pictures/nav-hover.png and b/Documentation/pictures/nav-hover.png differ
index 1e09a8e91b533bf7633fea8ef8656b33adaa9b5f..2076152ecffb6badc467293cfe8bfb97db05b8c6 100644 (file)
Binary files a/Documentation/pictures/nereid-shot-small.png and b/Documentation/pictures/nereid-shot-small.png differ
index 138c2db9e12b07c44abfc1fa53b67d5cb2e5b481..7fbfe18dbe0f1de5fba70f1a25440e9156417fd9 100644 (file)
Binary files a/Documentation/pictures/nereid-shot.png and b/Documentation/pictures/nereid-shot.png differ
index 1026928ccb243b25b0073484d42acf082a661fcf..ab2416fbf18c07a932e0b8bf8f05eab7e7b242f5 100644 (file)
Binary files a/Documentation/pictures/nonnaive-notation.png and b/Documentation/pictures/nonnaive-notation.png differ
index 4bc8d8480d69f2886ca13906618edf1193c29bdc..72936972602959cdc9291ec9317e2fb42a785274 100644 (file)
Binary files a/Documentation/pictures/screenshot-denemo-small.png and b/Documentation/pictures/screenshot-denemo-small.png differ
index 0ed28cd4fd126122c0a79ceec372814282b83beb..f880fc08c411f0c576c292edea7424e505bbd13d 100644 (file)
Binary files a/Documentation/pictures/screenshot-denemo.png and b/Documentation/pictures/screenshot-denemo.png differ
index f7110941cae8ad739f33555b0203b98300652da0..f0b08a3fdca75f6349c56e0e2b828d4c2e2334ff 100644 (file)
Binary files a/Documentation/pictures/simple-notation.png and b/Documentation/pictures/simple-notation.png differ
index 9c7fa542435ae9bb26292b67c9b27b19b1a2d4f8..18962932d8896002bcae94c062e897c5d558a70f 100644 (file)
Binary files a/Documentation/pictures/stone-distance.png and b/Documentation/pictures/stone-distance.png differ
index ce17d3867183218e5b19fbc53e7942bafbee330d..a9553ecd9b29c90e75b9b2dc14c06baf3b7b5377 100644 (file)
Binary files a/Documentation/pictures/text-input-1-annotate-hu.png and b/Documentation/pictures/text-input-1-annotate-hu.png differ
index 9c5583cea309ddca0b66f414dfc3b6ea88bd6c76..4d7610d41cd62fd45c7c23192338cc0a6138a2fe 100644 (file)
Binary files a/Documentation/pictures/text-input-1-annotate-it.png and b/Documentation/pictures/text-input-1-annotate-it.png differ
index 3a8c3d81461d5fca631fca2658e5ac5f745c0171..d43d590851b1e5126b86f8d5ae0eaf24c4574842 100644 (file)
Binary files a/Documentation/pictures/text-input-1-annotate-nl.png and b/Documentation/pictures/text-input-1-annotate-nl.png differ
index 600c5e5c942df9c4785270a6894b931328566e4f..70eafb34e6abdf311e96777fd4f655609463cffd 100644 (file)
Binary files a/Documentation/pictures/text-input-2-annotate-hu.png and b/Documentation/pictures/text-input-2-annotate-hu.png differ
index 6966dfd677b4a789ac3b8b5ec472ae8c8ef5aece..ee6f461634d6731a417a2baa84c94ec71545deea 100644 (file)
Binary files a/Documentation/pictures/text-input-2-annotate-it.png and b/Documentation/pictures/text-input-2-annotate-it.png differ
index 2d9dcf148b9caede957a88013c8b46d9cd867ce2..61457833d5ad778e3b62117575d29961335c233b 100644 (file)
Binary files a/Documentation/pictures/text-input-2-annotate-nl.png and b/Documentation/pictures/text-input-2-annotate-nl.png differ
index a734abaaae420f8264ac15675c112ff4c4c696eb..8019e584fe11bc0438cca1187df0936543946aef 100644 (file)
Binary files a/Documentation/pictures/text-input-parts-both-annotate-hu.png and b/Documentation/pictures/text-input-parts-both-annotate-hu.png differ
index bf8de6f8909644b9ba523f077dc8eaa62c8e5e60..7c5993d2bb670c03b9764f2c7b89eddef955cc82 100644 (file)
Binary files a/Documentation/pictures/text-input-parts-both-annotate-it.png and b/Documentation/pictures/text-input-parts-both-annotate-it.png differ
index 82e0fc00b15a572d92615ece4d0d41db50d63e25..830690c1374e797f212ac39ae13a75012d5c677b 100644 (file)
Binary files a/Documentation/pictures/text-input-parts-both-annotate-nl.png and b/Documentation/pictures/text-input-parts-both-annotate-nl.png differ
index 6608579a08972533149c525543b3e01ff58d38b0..cf0b96abaccfb66006380926367219b7952f2acf 100644 (file)
Binary files a/Documentation/pictures/text-input-parts-single-annotate-hu.png and b/Documentation/pictures/text-input-parts-single-annotate-hu.png differ
index 4ec32414c9b1161f9455a847a0aaceb6072e696d..082ea5bd293a176aa43c54fbb1b7023d655efd49 100644 (file)
Binary files a/Documentation/pictures/text-input-parts-single-annotate-it.png and b/Documentation/pictures/text-input-parts-single-annotate-it.png differ
index 650417083295e210076b5d7203dd0e66d1cfa323..751d230968921b970ac85637a800690a389b6b4c 100644 (file)
Binary files a/Documentation/pictures/text-input-parts-single-annotate-nl.png and b/Documentation/pictures/text-input-parts-single-annotate-nl.png differ
index 51e5140c9c10710abf8c90d5d51132b28c8778fc..f261b0d9c695d9c6854416bb669ab4acf18c6c1f 100644 (file)
Binary files a/Documentation/pictures/text-input-pop-annotate-hu.png and b/Documentation/pictures/text-input-pop-annotate-hu.png differ
index 1e051271aff3aed244c22f6cf5741a089601c475..26376de6278b598fd7e3d4d05b543f07a1d066d4 100644 (file)
Binary files a/Documentation/pictures/text-input-pop-annotate-it.png and b/Documentation/pictures/text-input-pop-annotate-it.png differ
index a418c5f41ef3e8882bdc71383ae2bb8b669ecbf4..0b4740319cf2cc4fd86fdf4a709c0f435f5343e5 100644 (file)
Binary files a/Documentation/pictures/text-input-pop-annotate-nl.png and b/Documentation/pictures/text-input-pop-annotate-nl.png differ
index b599e1f8d1129528f37578febdcf12962159a60f..1e498c721f0090b8b0fed5f3a32ff598e847ecbb 100644 (file)
Binary files a/Documentation/pictures/text-input-score-annotate-hu.png and b/Documentation/pictures/text-input-score-annotate-hu.png differ
index a43c8b362eb30187a8395e8a7a094b44730234bc..2a7e31bb4219db598022e55705821241e6e7cc36 100644 (file)
Binary files a/Documentation/pictures/text-input-score-annotate-it.png and b/Documentation/pictures/text-input-score-annotate-it.png differ
index b5415b414be8c5bf571fb13cc8c630ab1647a9b5..b54001aa383bf4137fecba3bbdf255ce3fb3e84c 100644 (file)
Binary files a/Documentation/pictures/text-input-score-annotate-nl.png and b/Documentation/pictures/text-input-score-annotate-nl.png differ
index 488eaef84c8fad7f6264d20931eee413480d9060..ca6a3ac017c8d5f4a5cf11912a1d2ab2be66c24c 100644 (file)
@@ -4,7 +4,7 @@
 %% and then run scripts/auxiliar/makelsr.py
 %%
 %% This file is in the public domain.
-\version "2.17.15"
+\version "2.17.19"
 
 \header {
   lsrtags = "paper-and-layout, staff-notation, syntax-and-expressions"
@@ -338,7 +338,7 @@ chromaticBach =
         \header {
                 title = \markup
                            \column {
-                             \vspace #1
+                             \combine \null \vspace #1
                              "Exercise: Improve the given choral"
                              " "
                             }
index 13ab4b61374df2fa5384ded1946e75198b1cdf23..3e13144e76e9dfa859ee072d5583c534453306f0 100644 (file)
@@ -9,9 +9,9 @@
 @c used for news about the upcoming release; see CG 10.2
 
 @newsItem
-@subsubheading LilyPond 2.17.18 released!  @emph{May 11, 2013}
+@subsubheading LilyPond 2.17.19 released!  @emph{May 26, 2013}
 
-We are happy to announce the release of LilyPond 2.17.18.  This
+We are happy to announce the release of LilyPond 2.17.19.  This
 release contains the usual number of bugfixes and enhancements, and contains
 some work in progress.  You will have access to the very latest features, but
 some may be incomplete, and you may encounter bugs and crashes.  If you require
index c829ebf738886bcdd48e9b0fd128fdf1e803ea3e..20d5ab0ee95b0eb420018a8273422f6561c22d05 100644 (file)
@@ -26,6 +26,17 @@ NOTE:
   * don't duplicate entries from news-front.itexi
 @end ignore
 
+@newsItem
+@subsubheading LilyPond 2.17.18 released!  @emph{May 11, 2013}
+
+We are happy to announce the release of LilyPond 2.17.18.  This
+release contains the usual number of bugfixes and enhancements, and contains
+some work in progress.  You will have access to the very latest features, but
+some may be incomplete, and you may encounter bugs and crashes.  If you require
+a stable version of Lilypond, we recommend using the 2.16 version.
+
+@newsEnd
+
 @newsItem
 @subsubheading LilyPond 2.17.17 released!  @emph{April 27, 2013}
 
index 2ed03b5350f57a843e890feb1a4fda05cfd4ca88..6b8b02c627936826d5b77fa9684a60f4f9d5d69f 100644 (file)
   note = {(@uref{http://lilypond.org/website/pdf/graham-sustainability-FOSS.pdf, PDF 333k})}
 }
 
+@inproceedings{hollerweger01,
+  title = {Lilypond: music notation for everyone!},
+  author = {Margarethe Maierhofer-Lischka & Florian Hollerweger},
+  booktitle = {Linux Audio Conference 2013 (LAC2013)},
+  year = 2013,
+  note = {(@uref{http://lilypond.org/website/pdf/lilypond_lac2013.pdf, PDF 890k})}
+}
 
diff --git a/VERSION b/VERSION
index e144b38584afedce61a717267cdbd5f9b407f9d6..67e5567d7d24059870cf78aa75bac55cdaffe5bc 100644 (file)
--- a/VERSION
+++ b/VERSION
@@ -1,7 +1,7 @@
 PACKAGE_NAME=LilyPond
 MAJOR_VERSION=2
 MINOR_VERSION=17
-PATCH_LEVEL=19
+PATCH_LEVEL=20
 MY_PATCH_LEVEL=
 VERSION_STABLE=2.16.2
-VERSION_DEVEL=2.17.18
+VERSION_DEVEL=2.17.19
index 47ea9fca954e41283281d0059fb0a998f3a94d01..65264d48332cf1f00dc85fa391886f7b83552065 100644 (file)
@@ -15,6 +15,12 @@ with lines and explanatory text added."
     \relative c'  {
       \balloonGrobText #'Stem #'(3 . 4) \markup { "I'm a Stem" }
       <c-\balloonText #'(-2 . -2) \markup { \simple #"hoi" }  >8
+      \balloonLengthOn
+      \balloonGrobText #'Rest #'(-1 . -2) \markup{ "Rest" }
+      r
+      \balloonLengthOff
+      \balloonGrobText #'Script #'(-1 . -1) \markup{ "Accent" }
+      c4->
     }
   }
 
index 95942f78e5d13cfda057618c0ef8d8846dd25765..1dce8a9f4592213004f4609c5bb79538949488a3 100644 (file)
@@ -19,8 +19,6 @@ myFretDiagram =
 
 \markup \override #'(fret-diagram-details . ((finger-code . below-string))) {
   \myFretDiagram
-  \hspace #4
   \override #'(size . 1.5) \myFretDiagram
-  \hspace #8
   \override #'(size . 3) \myFretDiagram
 }
index c24c6d43b7d3d41c474313c6a6a868e7731845c2..224eaf69d0886fbdc3415874fc4227004ecdc690 100644 (file)
@@ -1,4 +1,4 @@
-\version "2.17.12"
+\version "2.17.19"
 
 \header {
   texidoc = "@code{\\note-by-number} and @code{\\note} support
@@ -37,7 +37,7 @@ all note head styles and straight flags."
 
 \markup {
   \column {
-    \vspace #1
+    \combine \null \vspace #1
     \underline "Note-head-styles:"
     \override #'(baseline-skip . 6)
     \show-note-styles #styles-list
@@ -46,7 +46,7 @@ all note head styles and straight flags."
 
 \markup {
   \column {
-    \vspace #1
+    \combine \null \vspace #1
     \underline "Modern-straight-flag:"
     \override #'(flag-style . modern-straight-flag)
     \show-note-styles #'(default)
@@ -55,7 +55,7 @@ all note head styles and straight flags."
 
 \markup {
   \column {
-    \vspace #1
+    \combine \null \vspace #1
     \underline "Old-straight-flag:"
     \override #'(flag-style . old-straight-flag)
     \show-note-styles #'(default)
index 593a3ea276262311b77f83b97e98d2ef3504645f..3c4895df9df883065bee7578c21eedbbd35f275e 100644 (file)
@@ -1,4 +1,4 @@
-\version "2.17.9"
+\version "2.17.19"
 
 \header {
   texidoc = "The rest markup function works for a variety of style, dot and
@@ -81,10 +81,10 @@ showMultiMeasureRests =
            semipetrucci
            kievan)))))
 
-\markup \column { \bold "Simple Rests" \vspace #0.1 }
+\markup \column { \bold "Simple Rests" \combine \null \vspace #0.1 }
 
 \showSimpleRest #"."
 
-\markup \column { \vspace #0.1 \bold "MultiMeasureRests" \vspace #0.1 }
+\markup \column { \combine \null \vspace #0.1 \bold "MultiMeasureRests" \combine \null \vspace #0.1 }
 
 \showMultiMeasureRests
index 8d3f2ce58f3c94b68e80a4f42f5e9df89e161852..b65a6f728eb8646e1ae5939b1d3eb666d3618ce6 100644 (file)
@@ -1,4 +1,4 @@
-\version "2.16.0"
+\version "2.17.19"
 \header {
   texidoc = "
   A list of special character ASCII aliases can be easily included.
@@ -21,7 +21,7 @@
   \italic \justify {
     &numero;2 &ndash; &OE;dipe&hellip;
   }
-  \vspace #0.5
+  \combine \null \vspace #0.5
   \bold "Lyric example:"
 }
 \new Lyrics \lyricmode {
index 973e1f580df7e4f4352e5c988873446fadb13b1c..c37be4fd249f9230fb642bdd3b21f54f055223a6 100644 (file)
@@ -17,12 +17,14 @@ page should be horizontally stretched.
 
 \paper {
   #(define page-breaking ly:optimal-breaking)
-  page-spacing-weight = #10
+  page-spacing-weight = #100 % default is 10
   ragged-last-bottom = ##t
 }
 
 \relative c' {
+  <>_"this page stretched horizontally"
   \repeat unfold 5 {a b c d} \pageBreak
+  <>_"this page with natural spacing"
   \repeat unfold 5 {a b c d}
 }
 
index edec830b0e45d4a1d691bad8b9748ad1c08a609d..f50c73c8221451232b3387191805e45cf5a6da1f 100644 (file)
@@ -11,7 +11,7 @@
   ragged-last-bottom = ##f
 
   oddHeaderMarkup = \markup  {
-    \override #'(baseline-skip . 1)
+    \override #'(baseline-skip . 2.5)
     \center-column {
       \box \fill-line { \teeny " " " " }
       \on-the-fly #first-page "first-page-header-text"
@@ -24,7 +24,7 @@
   evenHeaderMarkup = \oddHeaderMarkup
 
   oddFooterMarkup = \markup \fill-line {
-    \override #'(baseline-skip . 0.5)
+    \override #'(baseline-skip . 1)
     \center-column {
        \on-the-fly #first-page "first-page-footer-text"
        \on-the-fly #last-page "last-page-footer-text"
diff --git a/input/regression/page-limited-space.ly b/input/regression/page-limited-space.ly
deleted file mode 100644 (file)
index 6af1fc1..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-\version "2.16.0"
-#(set-default-paper-size "a6")
-
-\header {
-  texidoc = "The space between systems can be limited when there is too
-much space left on the page by setting @code{page-limit-inter-system-space}."
-}
-
-\book {
-  \paper {
-    page-limit-inter-system-space = ##t
-    page-limit-inter-system-space-factor = 1.4
-
-    ragged-last-bottom = ##f
-
-    oddFooterMarkup = \markup "page bottom"
-    evenFooterMarkup = \markup "page bottom"
-    oddHeaderMarkup = \markup \fill-line {
-      "page top" \fromproperty #'page:page-number-string }
-    evenHeaderMarkup = \markup \fill-line {
-      "page top" \fromproperty #'page:page-number-string }
-  }
-  \new Staff << \repeat unfold 9 { g'4 g' g' g' \break }
-                { s1*2 \pageBreak
-                  s1*3 \pageBreak } >>
-}
index 7d34fbbf047a57a94faf66aa05ebb45cb6ebec8e..12c9c1f7a92683ec2e2df2270a361ff14bac9ff0 100644 (file)
@@ -1,15 +1,13 @@
 \version "2.16.0"
 
 \header {
-  texidoc = "Slurs that depend on a cross-staff beam are not calculated until
-after line-breaking and after inside-going articulations have been placed."
+  texidoc = "Slurs that depend on a cross-staff beam are not calculated until after line-breaking."
 }
 
 \paper { ragged-right=##t }
 \score {
     \new PianoStaff <<
-    \context Staff = rh \relative c'' { c8([ d) \change Staff = lh c,] r
-     \stemDown c'8 \change Staff = rh c_( \change Staff = lh c_\marcato c)}
-    \context Staff = lh { s1 }
+    \context Staff = rh \relative c'' { c8([ d) \change Staff = lh c,] }
+    \context Staff = lh { s4. }
     >>
 }
index bc0a975ed0d3d91b0be837f5810af3fb8b991795..df5ccb75b2649c2e547b976b129ba78cbc5aee0a 100644 (file)
@@ -23,7 +23,8 @@ void
 Box::translate (Offset o)
 {
   for (Axis i = X_AXIS; i < NO_AXES; incr (i))
-    interval_a_[i] += o[i];
+    if (!is_empty (i))
+      interval_a_[i] += o[i];
 }
 
 void
@@ -54,8 +55,16 @@ Box::set_empty ()
 bool
 Box::is_empty () const
 {
-  return interval_a_[X_AXIS].is_empty ()
-         || interval_a_[Y_AXIS].is_empty ();
+  return is_empty (X_AXIS) && is_empty (Y_AXIS);
+}
+
+bool
+Box::is_empty (Axis a) const
+{
+  Interval empty;
+  empty.set_empty ();
+  return interval_a_[a][LEFT] == empty[LEFT]
+    && interval_a_[a][RIGHT] == empty[RIGHT];
 }
 
 Box::Box (Interval ix, Interval iy)
index 8d3b6967e42a05f37e308e6926a3d532b6c729b7..f8d4b0f5b2280d10ca669a1cb1678b3bdd5dc7ab 100644 (file)
@@ -572,7 +572,7 @@ Line_details::Line_details (Prob *pb, Output_def *paper)
   last_column_ = 0;
   force_ = 0;
   Stencil *st = unsmob_stencil (pb->get_property ("stencil"));
-  Interval stencil_extent = st->is_empty () ? Interval (0, 0)
+  Interval stencil_extent = st->is_empty (Y_AXIS) ? Interval (0, 0)
     : st->extent (Y_AXIS);
   shape_ = Line_shape (stencil_extent, stencil_extent); // pretend it goes all the way across
   tallness_ = 0;
index 43c47b77199a4576a7de3890f8011d485e925e84..20503ca5ae4bfc414a3af60abf7190d6ec985f34 100644 (file)
@@ -62,7 +62,6 @@ Dots::print (SCM d)
 
       for (int i = scm_to_int (c); i--;)
         {
-          d.translate_axis (2 * dw, X_AXIS);
           mol.add_at_edge (X_AXIS, RIGHT, d, dw);
         }
     }
index 63224f2f880debeb58567524dfb7dac51e1ae6a4..b0f899431188bf4d653ac448afbb6e074efdd6fa 100644 (file)
@@ -22,6 +22,7 @@ public:
   Interval &operator [] (Axis a);
   Real area () const;
   bool is_empty () const;
+  bool is_empty (Axis a) const;
 
   Offset center () const;
 
index 65c0b7a0f1e295e0523b3f035c4b7ad8fa8bdd30..6a89e022daba721fe449b708bb5867616c21ccfa 100644 (file)
@@ -71,6 +71,7 @@ public:
      Set dimensions to empty, or to (Interval (0, 0), Interval (0, 0) */
   void set_empty (bool);
   void add_at_edge (Axis a, Direction d, const Stencil &m, Real padding);
+  void stack (Axis a, Direction d, const Stencil &m, Real padding, Real mindist);
   void add_stencil (Stencil const &m);
   void translate (Offset);
   Stencil translated (Offset) const;
@@ -84,6 +85,7 @@ public:
   Interval extent (Axis) const;
   Box extent_box () const;
   bool is_empty () const;
+  bool is_empty (Axis) const;
   Stencil in_color (Real r, Real g, Real b) const;
   static SCM skylines_from_stencil (SCM, Real, Axis);
 };
index 7b816ab0be76cee3156d8b819a2ebf3a116f9ec4..dad906f51bf2cef85fcf9ac617d3cdc381a1b28d 100644 (file)
@@ -284,7 +284,7 @@ Side_position_interface::aligned_side (Grob *me, Axis a, bool pure, int start, i
              (e->get_maybe_pure_property (a == X_AXIS
                                           ? "horizontal-skylines"
                                           : "vertical-skylines",
-                                          pure,
+                                          pure || cross_staff,
                                           start,
                                           end));
 
index 31f4c5a1841a9547f2f196dcae2abe17f2132594..5073e69e14b3eaccb805a712e8979be7d9b8856f 100644 (file)
@@ -486,7 +486,8 @@ Skyline::Skyline (vector<Box> const &boxes, Axis horizon_axis, Direction sky)
   sky_ = sky;
 
   for (vsize i = 0; i < boxes.size (); i++)
-    if (!boxes[i].is_empty ())
+    if (!boxes[i].is_empty (X_AXIS)
+        && !boxes[i].is_empty (Y_AXIS))
       buildings.push_front (Building (boxes[i], horizon_axis, sky));
 
   buildings_ = internal_build_skyline (&buildings);
@@ -553,9 +554,12 @@ Skyline::Skyline (vector<Skyline_pair> const &skypairs, Direction sky)
 Skyline::Skyline (Box const &b, Axis horizon_axis, Direction sky)
 {
   sky_ = sky;
-  Building front (b, horizon_axis, sky);
-  single_skyline (front, &buildings_);
-  normalize ();
+  if (!b.is_empty (X_AXIS) && !b.is_empty (Y_AXIS))
+    {
+      Building front (b, horizon_axis, sky);
+      single_skyline (front, &buildings_);
+      normalize ();
+    }
 }
 
 void
@@ -593,7 +597,7 @@ Skyline::insert (Box const &b, Axis a)
     }
 
   /* do the same filtering as in Skyline (vector<Box> const&, etc.) */
-  if (b.is_empty ())
+  if (b.is_empty (X_AXIS) || b.is_empty (Y_AXIS))
     return;
 
   my_bld.splice (my_bld.begin (), buildings_);
index 37203f4edaed9cb817809c19ffbe598b2f60efe0..70358cd81e071af4e4034b021d1e11aca7c557a5 100644 (file)
@@ -84,12 +84,17 @@ LY_DEFINE (ly_stencil_extent, "ly:stencil-extent",
 }
 
 LY_DEFINE (ly_stencil_empty_p, "ly:stencil-empty?",
-           1, 0, 0, (SCM stil),
-           "Return whether @var{stil} is empty.")
+           1, 1, 0, (SCM stil, SCM axis),
+           "Return whether @var{stil} is empty.  If an optional"
+           " @var{axis} is supplied, the emptiness check is"
+           " restricted to that axis.")
 {
   Stencil *s = unsmob_stencil (stil);
   LY_ASSERT_SMOB (Stencil, stil, 1);
-  return scm_from_bool (s->is_empty ());
+  if (SCM_UNBNDP (axis))
+    return scm_from_bool (s->is_empty ());
+  LY_ASSERT_TYPE (is_axis, axis, 2);
+  return scm_from_bool (s->is_empty (Axis (scm_to_int (axis))));
 }
 
 LY_DEFINE (ly_stencil_combine_at_edge, "ly:stencil-combine-at-edge",
@@ -131,6 +136,57 @@ LY_DEFINE (ly_stencil_combine_at_edge, "ly:stencil-combine-at-edge",
   return result.smobbed_copy ();
 }
 
+LY_DEFINE (ly_stencil_stack, "ly:stencil-stack",
+           4, 2, 0, (SCM first, SCM axis, SCM direction,
+                     SCM second,
+                     SCM padding,
+                     SCM mindist),
+           "Construct a stencil by stacking @var{second} next to @var{first}."
+           "  @var{axis} can be 0 (x-axis) or@tie{}1 (y-axis)."
+           "  @var{direction} can be -1 (left or down) or@tie{}1 (right or"
+           " up).  The stencils are juxtaposed with @var{padding} as extra"
+           " space.  @var{first} and @var{second} may also be @code{'()} or"
+           " @code{#f}.  As opposed to @code{ly:stencil-combine-at-edge},"
+           " metrics are suited for successively accumulating lines of"
+           " stencils.  Also, @var{second} stencil is drawn last.\n\n"
+           "If @var{mindist} is specified, reference points are placed"
+           " apart at least by this distance.  If either of the stencils"
+           " is spacing, @var{padding} and @var{mindist} do not apply.")
+{
+  Stencil *s1 = unsmob_stencil (first);
+  Stencil *s2 = unsmob_stencil (second);
+  Stencil result;
+
+  SCM_ASSERT_TYPE (s1 || first == SCM_BOOL_F || first == SCM_EOL,
+                   first, SCM_ARG1, __FUNCTION__, "Stencil, #f or ()");
+  SCM_ASSERT_TYPE (s2 || second == SCM_BOOL_F || second == SCM_EOL,
+                   second, SCM_ARG4, __FUNCTION__, "Stencil, #f or ()");
+  LY_ASSERT_TYPE (is_axis, axis, 2);
+  LY_ASSERT_TYPE (is_direction, direction, 3);
+
+  Real p = 0.0;
+  if (padding != SCM_UNDEFINED)
+    {
+      LY_ASSERT_TYPE (scm_is_number, padding, 5);
+      p = scm_to_double (padding);
+    }
+  Real d = -infinity_f;
+  if (!SCM_UNBNDP (mindist))
+    {
+      LY_ASSERT_TYPE (scm_is_number, mindist, 6);
+      d = scm_to_double (mindist);
+    }
+
+  if (s1)
+    result = *s1;
+
+  if (s2)
+    result.stack (Axis (scm_to_int (axis)),
+                  Direction (scm_to_int (direction)), *s2, p, d);
+
+  return result.smobbed_copy ();
+}
+
 LY_DEFINE (ly_stencil_add, "ly:stencil-add",
            0, 0, 1, (SCM args),
            "Combine stencils.  Takes any number of arguments.")
@@ -180,7 +236,7 @@ LY_DEFINE (ly_make_stencil, "ly:make-stencil",
            "@item\n"
            "The vertical and horizontal extents of the object, given as"
            " pairs.  If an extent is unspecified (or if you use"
-           " @code{(1000 . -1000)} as its value), it is taken to be empty.\n"
+           " @code{empty-interval} as its value), it is taken to be empty.\n"
            "@end enumerate\n")
 {
   SCM_ASSERT_TYPE (!scm_is_pair (expr)
index 0a7f40205d610ef16d331675657132752ecf0403..c8985105ea44f0216ca58a3153a31cb89f3b55f2 100644 (file)
@@ -66,13 +66,15 @@ Stencil::extent (Axis a) const
 
 bool
 Stencil::is_empty () const
-/* If only one of X- or Y-extent is empty; such a stencil can be useful
- * for backspacing, as with \hspace #-2, so we do not consider it empty.
- */
 {
   return (expr_ == SCM_EOL
-          || (dim_[X_AXIS].is_empty ()
-              && dim_[Y_AXIS].is_empty ()));
+          || dim_.is_empty ());
+}
+
+bool
+Stencil::is_empty (Axis a) const
+{
+  return dim_.is_empty (a);
 }
 
 SCM
@@ -176,9 +178,10 @@ Stencil::translate (Offset o)
       incr (a);
     }
 
-  expr_ = scm_list_n (ly_symbol2scm ("translate-stencil"),
-                      ly_offset2scm (o),
-                      expr_, SCM_UNDEFINED);
+  if (!scm_is_null (expr_))
+    expr_ = scm_list_n (ly_symbol2scm ("translate-stencil"),
+                        ly_offset2scm (o),
+                        expr_, SCM_UNDEFINED);
   if (!is_empty ())
     dim_.translate (o);
 }
@@ -206,7 +209,11 @@ void
 Stencil::add_stencil (Stencil const &s)
 {
   SCM cs = ly_symbol2scm ("combine-stencil");
-  if (scm_is_pair (expr_)
+  if (scm_is_null (expr_))
+    expr_ = s.expr_;
+  else if (scm_is_null (s.expr_))
+    ;
+  else if (scm_is_pair (expr_)
       && scm_is_eq (cs, scm_car (expr_)))
     {
       if (scm_is_pair (s.expr_)
@@ -244,7 +251,7 @@ Stencil::set_empty (bool e)
 void
 Stencil::align_to (Axis a, Real x)
 {
-  if (is_empty ())
+  if (is_empty (a))
     return;
 
   Interval i (extent (a));
@@ -252,28 +259,155 @@ Stencil::align_to (Axis a, Real x)
 }
 
 /*  See scheme Function.  */
+
+// Any stencil that is empty in the orthogonal axis is spacing.
+// Spacing is not subjected to the max (0) rule and can thus be
+// negative.
+
 void
 Stencil::add_at_edge (Axis a, Direction d, Stencil const &s, Real padding)
 {
-  Interval my_extent = dim_[a];
-  Interval i (s.extent (a));
-  Real his_extent;
-  if (i.is_empty ())
+  // Material that is empty in the axis of reference has only limited
+  // usefulness for combining.  We still retain as much information as
+  // available since there may be uses like setting page links or
+  // background color or watermarks, and off-axis extents.
+
+  if (is_empty (a))
     {
-      programming_error ("Stencil::add_at_edge: adding empty stencil.");
-      his_extent = 0.0;
+      add_stencil (s);
+      return;
     }
-  else
-    his_extent = i[-d];
 
-  Real offset = (my_extent.is_empty () ? 0.0 : my_extent[d] - his_extent)
-                + d * padding;
+  Interval first_extent = extent (a);
+
+  if (s.is_empty (a))
+    {
+      Stencil toadd (s);
+      // translation does not affect axis-empty extent box.
+      toadd.translate_axis (first_extent[d], a);
+      add_stencil (toadd);
+      return;
+    }
+
+  Interval next_extent = s.extent (a);
+
+  bool first_is_spacing = is_empty (other_axis (a));
+  bool next_is_spacing = s.is_empty (other_axis (a));
+
+  Real offset = first_extent[d] - next_extent[-d];
+
+  if (!(first_is_spacing || next_is_spacing))
+    {
+      offset += d * padding;
+    }
 
   Stencil toadd (s);
   toadd.translate_axis (offset, a);
   add_stencil (toadd);
 }
 
+// Stencil::stack is mainly used for assembling lines or columns
+// of stencils.  For the most common case of adding at the right, the
+// reference point of the added stencil is usually placed at the right
+// edge of the current one, unless the added stencil has a negative
+// left extent in which case its left edge is placed at the right edge
+// of the current one.
+//
+// Spacing is special in that it is applied without padding.  Spacing
+// at the right edge shifts the right edge accordingly.
+//
+// For spacing at the left edge, there are several approaches.  In
+// order to get to predictable behavior, we want to have at least a
+// continuous approach.  An obvious idea is to do a "translate" by the
+// appropriate amount.  Doing that while retaining the nominal left
+// edge seems like the most straightforward way.
+
+void
+Stencil::stack (Axis a, Direction d, Stencil const &s, Real padding, Real mindist)
+{
+  // Material that is empty in the axis of reference can't be sensibly
+  // stacked.  We just revert to add_at_edge behavior then.
+
+  if (is_empty (a))
+    {
+      Stencil toadd (s);
+      toadd.add_stencil (*this);
+      expr_ = toadd.expr ();
+      dim_ = toadd.extent_box ();
+      return;
+    }
+
+  Interval first_extent = extent (a);
+
+  if (s.is_empty (a))
+    {
+      Stencil toadd (s);
+      toadd.translate_axis (first_extent[d], a);
+      toadd.add_stencil (*this);
+      expr_ = toadd.expr ();
+      dim_ = toadd.extent_box ();
+      return;
+    }
+
+  Interval next_extent = s.extent (a);
+
+  // It is somewhat tedious to special-case all spacing, but it turns
+  // out that not doing so makes it astonishingly hard to make the
+  // code do the correct thing.
+
+  // If first is spacing, we translate second accordingly without
+  // letting this affect its backward edge.
+  if (is_empty (other_axis (a)))
+    {
+      Stencil toadd (s);
+      Real offset = d * first_extent.delta ();
+      toadd.translate_axis (offset, a);
+      toadd.add_stencil (*this);
+      expr_ = toadd.expr ();
+      dim_ = toadd.extent_box ();
+      dim_[a][-d] = next_extent[-d];
+      dim_[a][d] = next_extent[d] + offset;
+      return;
+    }
+
+  // If next is spacing, similar action:
+  if (s.is_empty (other_axis (a)))
+    {
+      Stencil toadd (s);
+      Real offset = first_extent [d];
+      toadd.translate_axis (offset, a);
+      toadd.add_stencil (*this);
+      expr_ = toadd.expr ();
+      dim_ = toadd.extent_box ();
+      dim_[a][-d] = first_extent[-d];
+      dim_[a][d] = first_extent[d] + d * next_extent.delta ();
+      return;
+    }
+
+
+  Real offset = first_extent[d];
+
+  // If the added stencil has a backwardly protruding edge, we make
+  // room for it when combining.
+
+  if (d * next_extent [-d] < 0)
+    offset -= next_extent [-d];
+
+  offset += d * padding;
+
+  if (offset * d < mindist)
+    offset = d * mindist;
+
+  Stencil toadd (s);
+  toadd.translate_axis (offset, a);
+  toadd.add_stencil (*this);
+  expr_ = toadd.expr ();
+  dim_ = toadd.extent_box ();
+  dim_[a][-d] = first_extent [-d];
+  dim_[a][d] = next_extent [d] + offset;
+}
+
+
 Stencil
 Stencil::in_color (Real r, Real g, Real b) const
 {
index 3a3f6e08ab1724f432285706c722792342b2dbee..32eeb462f8e77e0f3893058708334d68ddafc2b9 100644 (file)
@@ -25,7 +25,7 @@
 \paper {
   tocTitleMarkup = \markup \huge \column {
     \fill-line { \null "Table of Contents" \null }
-    \hspace #1
+    \null
   }
   tocItemMarkup = \markup \fill-line {
     \fromproperty #'toc:text \fromproperty #'toc:page
index b5e6e5b2599c59b4cb4eb887f41f59e95b27e0c1..5878e11b241e37287e62f93665ff76ce743b56d3 100644 (file)
@@ -6,10 +6,10 @@
 #, fuzzy
 msgid ""
 msgstr ""
-"Project-Id-Version: lilypond 2.17.18\n"
+"Project-Id-Version: lilypond 2.17.19\n"
 "Report-Msgid-Bugs-To: http://post.gmane.org/post.php?group=gmane.comp.gnu."
 "lilypond.bugs\n"
-"POT-Creation-Date: 2013-05-11 16:02+0100\n"
+"POT-Creation-Date: 2013-05-26 16:46+0100\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
@@ -2601,27 +2601,27 @@ msgid ""
 "values"
 msgstr ""
 
-#: page-layout-problem.cc:403
+#: page-layout-problem.cc:402
 msgid ""
 "A page layout problem has been initiated that cannot accommodate footnotes."
 msgstr ""
 
-#: page-layout-problem.cc:732
+#: page-layout-problem.cc:731
 msgid ""
 "cannot fit music on page: ragged-spacing was requested, but page was "
 "compressed"
 msgstr ""
 
-#: page-layout-problem.cc:735
+#: page-layout-problem.cc:734
 #, c-format
 msgid "cannot fit music on page: overflow is %f"
 msgstr ""
 
-#: page-layout-problem.cc:737
+#: page-layout-problem.cc:736
 msgid "compressing music to fit"
 msgstr ""
 
-#: page-layout-problem.cc:1197
+#: page-layout-problem.cc:1199
 msgid "staff-affinities should only decrease"
 msgstr ""
 
@@ -3367,31 +3367,31 @@ msgstr ""
 msgid "unknown parent class `~a'"
 msgstr ""
 
-#: define-markup-commands.scm:986
+#: define-markup-commands.scm:985
 msgid "no systems found in \\score markup, does it have a \\layout block?"
 msgstr ""
 
-#: define-markup-commands.scm:2772
+#: define-markup-commands.scm:2781
 #, scheme-format
 msgid "Cannot find glyph ~a"
 msgstr ""
 
-#: define-markup-commands.scm:3198
+#: define-markup-commands.scm:3207
 #, scheme-format
 msgid "no brace found for point size ~S "
 msgstr ""
 
-#: define-markup-commands.scm:3199
+#: define-markup-commands.scm:3208
 #, scheme-format
 msgid "defaulting to ~S pt"
 msgstr ""
 
-#: define-markup-commands.scm:3443
+#: define-markup-commands.scm:3452
 #, scheme-format
 msgid "not a valid duration string: ~a"
 msgstr ""
 
-#: define-markup-commands.scm:3654
+#: define-markup-commands.scm:3663
 #, scheme-format
 msgid "not a valid duration string: ~a - ignoring"
 msgstr ""
@@ -3550,12 +3550,12 @@ msgid ""
 "applied to function @var{getter}."
 msgstr ""
 
-#: lily-library.scm:977
+#: lily-library.scm:974
 #, scheme-format
 msgid "unknown unit: ~S"
 msgstr ""
 
-#: lily-library.scm:1002
+#: lily-library.scm:999
 #, scheme-format
 msgid "no \\version statement found, please add~afor future compatibility"
 msgstr ""
index 11cd1729fd509eb7f0ad5f0d7c8267ec5d2eefb1..aee0530e9c71e98297b468e33212b4126c88de42 100644 (file)
@@ -3560,6 +3560,27 @@ def conv(str):
     str = re.sub ('cueClefOctavationStyle',      'cueClefTranspositionStyle',      str)
     return str
 
+@rule((2, 17, 19), r"\column { \vspace #2 } -> \column { \combine \null \vspace #2 }")
+def conv(str):
+    def vspace_replace(m):
+
+# vspace now always adds space and does not, for example, change the
+# impact of either baselineskip or descenders on the line above.
+#
+# We can't simulate the old behavior in a simpler manner.  A command
+# of its own is not really warranted since this behavior combines
+# badly enough with other spacing considerations (like baselineskip
+# and descenders) as to make it not all that useful.  So this
+# conversion rule is here more for compatibility's sake rather than
+# preserving desirable behavior.
+
+        str = re.sub (r"(\\\\?)vspace(\s)", r"\1combine \1null \1vspace\2", m.group(0))
+        return str
+
+    str = re.sub (r"\\(?:left-|right-|center-|)column\s*\{" + brace_matcher (20) + r"\}",
+                  vspace_replace, str)
+    return str
+
 # Guidelines to write rules (please keep this at the end of this file)
 #
 # - keep at most one rule per version; if several conversions should be done,
index 9823d8a08b4e8ba6a5399b2c69c8bd58c216295b..606d8066605390934e4a065330aaea4c3e506f8e 100644 (file)
@@ -46,7 +46,7 @@
       (make-line-markup (list empty-markup))
       (conditional-kern-before
        (alteration->text-accidental-markup alteration)
-       (= alteration FLAT) 0.2)))
+       (= alteration FLAT) 0.094725)))
 
 (define (accidental->markup-italian alteration)
   "Return accidental markup for ALTERATION, for use after an italian chord root name."
@@ -54,7 +54,7 @@
       (make-hspace-markup 0.2)
       (make-line-markup
        (list
-        (make-hspace-markup (if (= alteration FLAT) 0.7 0.5))
+        (make-hspace-markup (if (= alteration FLAT) 0.57285385 0.5))
        (make-raise-markup 0.7 (alteration->text-accidental-markup alteration))
        (make-hspace-markup (if (= alteration SHARP) 0.2 0.1))
        ))))
index 6f169978a4b4025e69afbba0a23ea4655b6ec48c..a810dcf1c68b41c7360fd7bc2ce54bff46d97449 100644 (file)
      . (
        (annotation-balloon . #t)
        (annotation-line . #t)
+       (extra-spacing-width . (+inf.0 . -inf.0))
        (stencil . ,ly:balloon-interface::print)
        (text . ,(grob::calc-property-by-copy 'text))
        (X-offset . ,(grob::calc-property-by-copy 'X-offset))
        (Y-offset . ,(grob::calc-property-by-copy 'Y-offset))
+       (Y-extent . ,grob::always-Y-extent-from-stencil)
        (meta . ((class . Item)
                 (interfaces . (balloon-interface
                                font-interface
index 96236f176952a3140af0d6d8847d87ddbe9f0921..ecbe876ffa6e1a88b8f91d53b391cb5141340c7b 100755 (executable)
 ;; utility functions
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
 
-(define-public empty-stencil (ly:make-stencil '() '(1 . -1) '(1 . -1)))
+(define-public empty-stencil (ly:make-stencil '()
+                                              empty-interval empty-interval))
 (define-public point-stencil (ly:make-stencil "" '(0 . 0) '(0 . 0)))
 
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
@@ -692,7 +693,6 @@ Create a box of the same height as the space in the current font."
 (define-markup-command (hspace layout props amount)
   (number?)
   #:category align
-  #:properties ((word-space))
   "
 @cindex creating horizontal spaces in text
 
@@ -707,8 +707,7 @@ Create an invisible object taking up horizontal space @var{amount}.
   three
 }
 @end lilypond"
-  (let ((corrected-space (- amount word-space)))
-    (ly:make-stencil "" (cons 0 corrected-space) '(0 . 0))))
+  (ly:make-stencil "" (cons 0 amount) empty-interval))
 
 (define-markup-command (vspace layout props amount)
  (number?)
@@ -731,7 +730,7 @@ of @var{amount} multiplied by 3.
 }
 @end lilypond"
   (let ((amount (* amount 3.0)))
-    (ly:make-stencil "" (cons 0 0) (cons 0 amount))))
+    (ly:make-stencil "" empty-interval (cons 0 amount))))
 
 
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
@@ -1267,9 +1266,7 @@ determines the space between markups in @var{args}.
   (let ((stencils (interpret-markup-list layout props args)))
     (if (= text-direction LEFT)
         (set! stencils (reverse stencils)))
-    (stack-stencil-line
-     word-space
-     (remove ly:stencil-empty? stencils))))
+    (stack-stencil-line word-space stencils)))
 
 (define-markup-command (concat layout props args)
   (markup-list?)
@@ -1322,14 +1319,26 @@ equivalent to @code{\"fi\"}.
                     ;; justify only stretches lines.
                    (* 0.7 base-space)
                    base-space))
+  (define (stencil-space stencil line-start)
+    (if (ly:stencil-empty? stencil X)
+        0
+        (cdr (ly:stencil-extent
+              (ly:stencil-stack (if line-start
+                                    empty-stencil
+                                    point-stencil)
+                                X RIGHT stencil)
+              X))))
   (define (take-list width space stencils
                     accumulator accumulated-width)
     "Return (head-list . tail) pair, with head-list fitting into width"
     (if (null? stencils)
        (cons accumulator stencils)
        (let* ((first (car stencils))
-               (first-wid (cdr (ly:stencil-extent (car stencils) X)))
-               (newwid (+ space first-wid accumulated-width)))
+               (first-wid (stencil-space first (null? accumulator)))
+               (newwid (+ (if (or (ly:stencil-empty? first Y)
+                                  (ly:stencil-empty? first X))
+                              0 space)
+                          first-wid accumulated-width)))
          (if (or (null? accumulator)
                   (< newwid width))
               (take-list width space
@@ -1343,17 +1352,20 @@ equivalent to @code{\"fi\"}.
                                   '() 0.0))
           (line-stencils (car line-break))
           (space-left (- line-width
-                          (apply + (map (lambda (x) (cdr (ly:stencil-extent x X)))
-                                        line-stencils))))
+                          (stencil-space
+                           (stack-stencil-line 0 line-stencils)
+                           #t)))
+           (line-words (count (lambda (s) (not (or (ly:stencil-empty? s Y)
+                                                   (ly:stencil-empty? s X))))
+                              line-stencils))
           (line-word-space (cond ((not justify) space)
                                   ;; don't stretch last line of paragraph.
                                   ;; hmmm . bug - will overstretch the last line in some case.
                                   ((null? (cdr line-break))
                                    base-space)
-                                  ((null? line-stencils) 0.0)
-                                  ((null? (cdr line-stencils)) 0.0)
-                                  (else (/ space-left (1- (length line-stencils))))))
-          (line (stack-stencil-line line-word-space
+                                  ((< line-words 2) space)
+                                  (else (/ space-left (1- line-words)))))
+           (line (stack-stencil-line line-word-space
                                      (if (= text-dir RIGHT)
                                          (reverse line-stencils)
                                          line-stencils))))
@@ -1375,8 +1387,7 @@ equivalent to @code{\"fi\"}.
                (word-space)
                (text-direction RIGHT))
   "Internal markup list command used to define @code{\\justify} and @code{\\wordwrap}."
-  (wordwrap-stencils (remove ly:stencil-empty?
-                             (interpret-markup-list layout props args))
+  (wordwrap-stencils (interpret-markup-list layout props args)
                      justify
                      word-space
                      (or line-width
@@ -1446,10 +1457,9 @@ the line width, where @var{X} is the number of staff spaces.
                                para-strings))
          (para-lines (map (lambda (words)
                             (let* ((stencils
-                                    (remove ly:stencil-empty?
-                                            (map (lambda (x)
-                                                   (interpret-markup layout props x))
-                                                 words))))
+                                    (map (lambda (x)
+                                           (interpret-markup layout props x))
+                                         words)))
                               (wordwrap-stencils stencils
                                                  justify word-space
                                                  line-width text-direction)))
@@ -1627,8 +1637,7 @@ in @var{args}.
 }
 @end lilypond"
   (let ((arg-stencils (interpret-markup-list layout props args)))
-    (stack-lines -1 0.0 baseline-skip
-                 (remove ly:stencil-empty? arg-stencils))))
+    (stack-lines -1 0.0 baseline-skip arg-stencils)))
 
 (define-markup-command (dir-column layout props args)
   (markup-list?)
index 9253c378db998950de8cb4bdb3ee1a56f36575ee..45652c0a5c8c1a63b67ea4b0ca6b944c2dd747e9 100644 (file)
@@ -63,21 +63,11 @@ Example:
   (cons (acons key val (car chain)) (cdr chain)))
 
 (define-public (stack-stencil-line space stencils)
-  "Adjoin a list of STENCILS along the X axis, leaving SPACE between the
-   end of each stencil and the reference point of the following stencil."
-  (if (and (pair? stencils)
-           (ly:stencil? (car stencils)))
-
-      (if (and (pair? (cdr stencils))
-               (ly:stencil? (cadr stencils)))
-          (let* ((tail (stack-stencil-line space (cdr stencils)))
-                 (head (car stencils))
-                 (xoff (+ space (interval-end (ly:stencil-extent head X)))))
-            (ly:stencil-add head
-                            (ly:stencil-translate-axis tail xoff X)))
-          (car stencils))
-      (ly:make-stencil '() '(0 . 0) '(0 . 0))))
-
+  "Adjoin a list of @var{stencils} along the X axis, leaving
+@var{space} between the end of each stencil and the beginning of the
+following stencil.  Stencils with empty Y extent are not given
+@var{space} before them and don't avoid overlapping other stencils."
+  (stack-stencils X RIGHT space (filter ly:stencil? stencils)))
 
 ;;; convert a full markup object to an approximate pure string representation
 
index 202cad688375bf8dab64daf971a2abd0e661f295..cfc088c8b37dd6cd9d069452d66745e9c066094c 100644 (file)
    ly:stencil-combine-at-edge
    ly:stencil-expr
    ly:stencil-extent
+   ly:stencil-stack
    ly:stencil-translate
    ly:stencil-translate-axis
    ly:stencil?
index 678ba7c2e2d8912bd5bbe5a7c9945525ba6b8a8a..d7ba2e407901552fbaecd7327eba5b909cae0c10 100644 (file)
 (define-public (stack-stencils axis dir padding stils)
   "Stack stencils @var{stils} in direction @var{axis}, @var{dir}, using
 @var{padding}."
-  (cond
-   ((null? stils) empty-stencil)
-   ((null? (cdr stils)) (car stils))
-   (else (ly:stencil-combine-at-edge
-         (car stils) axis dir (stack-stencils axis dir padding (cdr stils))
-         padding))))
-
-(define-public (stack-stencils-padding-list axis dir padding stils)
+  (reduce
+   (lambda (next front)
+     (ly:stencil-stack front axis dir next padding))
+   empty-stencil
+   stils))
+
+(define-public (stack-stencils-padding-list axis dir paddings stils)
   "Stack stencils @var{stils} in direction @var{axis}, @var{dir}, using
-a list of @var{padding}."
-  (cond
-   ((null? stils) empty-stencil)
-   ((null? (cdr stils)) (car stils))
-   (else (ly:stencil-combine-at-edge
-         (car stils)
-         axis dir
-         (stack-stencils-padding-list axis dir (cdr padding) (cdr stils))
-         (car padding)))))
+a list of @var{paddings}."
+  (if (null? stils)
+      empty-stencil
+      (fold
+       (lambda (next padding front)
+         (ly:stencil-stack front axis dir next padding))
+       (car stils)
+       (cdr stils)
+       paddings)))
 
 (define-public (centered-stencil stencil)
   "Center stencil @var{stencil} in both the X and Y directions."
@@ -67,33 +66,20 @@ a list of @var{padding}."
 
 (define-public (stack-lines dir padding baseline stils)
   "Stack vertically with a baseline skip."
-  (define result empty-stencil)
-  (define last-y #f)
-  (do
-      ((last-stencil #f (car p))
-       (p stils (cdr p)))
-
-      ((null? p))
-
-    (if (number? last-y)
-       (begin
-         (let* ((dy (max (+ (* dir (interval-bound (ly:stencil-extent last-stencil Y) dir))
-                            padding
-                            (* (- dir) (interval-bound (ly:stencil-extent (car p) Y) (- dir))))
-                         baseline))
-                (y (+ last-y  (* dir dy))))
-
-
-
-           (set! result
-                 (ly:stencil-add result (ly:stencil-translate-axis (car p) y Y)))
-           (set! last-y y)))
-       (begin
-         (set! last-y 0)
-         (set! result (car p)))))
-
-  result)
-
+  (reduce-right
+   (lambda (next back) (ly:stencil-stack next Y dir back padding baseline))
+   empty-stencil
+   (map
+    (lambda (s)
+      ;; X-empty stencils may add vertical space.  A stencil that is
+      ;; merely Y-empty counts as horizontal spacing.  Since we want
+      ;; those to register as lines of their own (is this a good
+      ;; idea?), we make them a separately visible line.
+      (if (and (ly:stencil-empty? s Y)
+               (not (ly:stencil-empty? s X)))
+          (ly:make-stencil (ly:stencil-expr s) (ly:stencil-extent s X) '(0 . 0))
+          s))
+    stils)))
 
 (define-public (bracketify-stencil stil axis thick protrusion padding)
   "Add brackets around @var{stil}, producing a new stencil."
@@ -104,7 +90,7 @@ a list of @var{padding}."
     (set! stil
          (ly:stencil-combine-at-edge stil (other-axis axis) 1 rb padding))
     (set! stil
-         (ly:stencil-combine-at-edge lb (other-axis axis) 1 stil padding))
+         (ly:stencil-combine-at-edge stil (other-axis axis) -1 lb padding))
     stil))
 
 (define (make-parenthesis-stencil
@@ -180,7 +166,7 @@ the more angular the shape of the parenthesis."
              y-extent half-thickness (- width) angularity))
         (rp (make-parenthesis-stencil
              y-extent half-thickness width angularity)))
-    (set! stencil (ly:stencil-combine-at-edge lp X RIGHT stencil padding))
+    (set! stencil (ly:stencil-combine-at-edge stencil X LEFT lp padding))
     (set! stencil (ly:stencil-combine-at-edge stencil X RIGHT rp padding))
     stencil))
 
index b6c1e0583d1a3dd7fc39977df7e447a90faac538..7118fb1a06a91bba99ac4e5aae8b5718b8849eb1 100644 (file)
@@ -100,4 +100,4 @@ with `header:'."
 
     (if (markup? markup)
        (interpret-markup layout props markup)
-       (ly:make-stencil '() '(1 . -1) '(1 . -1)))))
+        empty-stencil)))