From 682914ec64fc376ec85271f34788fe26b10eae0c Mon Sep 17 00:00:00 2001 From: Jacques Menu Date: Fri, 10 Jan 2020 11:21:20 +0100 Subject: [PATCH 01/16] Preparations for Salzburg conference --- .../IntroductionToMusicXML.pdf | Bin 699084 -> 728113 bytes .../IntroductionToMusicXML.tex | 293 +- .../NestedPartGroups.png | Bin 18347 -> 23675 bytes .../MaintainerSGuideToXml2ly.pdf | Bin 145733 -> 145235 bytes .../MaintainerSGuideToXml2ly.tex | 9 +- doc/userSGuideToXml2ly/userSGuideToXml2ly.pdf | Bin 192625 -> 192315 bytes doc/userSGuideToXml2ly/userSGuideToXml2ly.tex | 9 +- files/samples/musicxml/times/FiveQuarters.xml | 4 +- src/lilypond/lpsr2LilypondTranslator.cpp | 5 +- src/lilypond/msrMeasures.cpp | 148 +- src/lilypond/msrMeasures_MUT_DEP.h | 2 +- src/lilypond/msrRepeats.cpp | 2624 ++++++++--------- src/lilypond/msrSegments.cpp | 375 +-- src/lilypond/msrSegments_MUT_DEP.h | 13 +- src/lilypond/msrVoices.cpp | 331 ++- src/lilypond/msrVoices_MUT_DEP.h | 4 + 16 files changed, 1932 insertions(+), 1885 deletions(-) diff --git a/doc/introductionToMusicxml/IntroductionToMusicXML.pdf b/doc/introductionToMusicxml/IntroductionToMusicXML.pdf index fe03cce13d9c56855961e1370653987b504e8cec..8793a30b388d3c01c4d70f89d1d444902cb44669 100644 GIT binary patch delta 252144 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