From 93ba565c5193199defb3c3cd899bb8887184b891 Mon Sep 17 00:00:00 2001
From: Till Paala <till.rettig@gmx.de>
Date: Sun, 23 Nov 2008 11:59:58 +0200
Subject: [PATCH] Add dashed and dotted phrasing slurs

*Add definitions to property-init.ly
*Add regression test
*Update to the documentation
---
 Documentation/user/expressive.itely    | 24 +++++++++++++++++++++++-
 input/regression/phrasing-slur-dash.ly | 24 ++++++++++++++++++++++++
 ly/property-init.ly                    | 14 +++++++++++++-
 3 files changed, 60 insertions(+), 2 deletions(-)
 create mode 100644 input/regression/phrasing-slur-dash.ly

diff --git a/Documentation/user/expressive.itely b/Documentation/user/expressive.itely
index 2376904d93..1c8730ddbb 100644
--- a/Documentation/user/expressive.itely
+++ b/Documentation/user/expressive.itely
@@ -630,6 +630,12 @@ e2) d\)
 @funindex phrasingSlurDown
 @funindex \phrasingSlurNeutral
 @funindex phrasingSlurNeutral
+@funindex phrasingSlurDashed
+@funindex \phrasingSlurDashed
+@funindex \phrasingSlurDotted
+@funindex phrasingSlurDotted
+@funindex \phrasingSlurSolid
+@funindex phrasingSlurSolid
 
 Typographically, a phrasing slur behaves almost exactly like a
 normal slur.  However, they are treated as different objects; a
@@ -652,12 +658,28 @@ c4\( g' c,( b) | c1\)
 
 Simultaneous or overlapping phrasing slurs are not permitted.
 
+Phrasing slurs can be solid, dotted, or dashed.  Solid is the default
+style for phrasing slurs:
+
+@lilypond[verbatim,quote,relative=1]
+c4\( e g2\)
+\phrasingSlurDashed
+g4\( e c2\)
+\phrasingSlurDotted
+c4\( e g2\)
+\phrasingSlurSolid
+g4\( e c2\)
+@end lilypond
+
 
 @predefined
 
 @code{\phrasingSlurUp},
 @code{\phrasingSlurDown},
-@code{\phrasingSlurNeutral}.
+@code{\phrasingSlurNeutral},
+@code{\phrasingSlurDashed},
+@code{\phrasingSlurDotted},
+@code{\phrasingSlurSolid}.
 
 
 @seealso
diff --git a/input/regression/phrasing-slur-dash.ly b/input/regression/phrasing-slur-dash.ly
new file mode 100644
index 0000000000..6fad54b21e
--- /dev/null
+++ b/input/regression/phrasing-slur-dash.ly
@@ -0,0 +1,24 @@
+\version "2.11.65"
+\header { texidoc = "
+The appearance of phrasing slurs may be changed from solid to dotted or dashed.
+"
+}
+
+\relative c'{
+  c\( d e  c\) |
+  \phrasingSlurDotted
+  c\( d e  c\) |
+  \phrasingSlurDashed
+  c\( d e  c\) |
+  \override PhrasingSlur #'dash-period = #2.0
+  \override PhrasingSlur #'dash-fraction = #0.4
+  c\( d e  c\) |
+  \phrasingSlurSolid
+  c\( d e  c\) |
+}
+
+
+
+
+
+
diff --git a/ly/property-init.ly b/ly/property-init.ly
index c0d43eb980..8f4a2e3366 100644
--- a/ly/property-init.ly
+++ b/ly/property-init.ly
@@ -10,7 +10,6 @@ slurUp = \override Slur #'direction = #UP
 slurDown = \override Slur #'direction = #DOWN
 slurNeutral = \revert Slur #'direction
 
-%% There's also dash, but setting dash period/length should be fixed.
 slurDashed = {
   \override Slur #'dash-period = #0.75
   \override Slur #'dash-fraction = #0.4
@@ -29,6 +28,19 @@ phrasingSlurUp = \override PhrasingSlur #'direction = #UP
 phrasingSlurDown = \override PhrasingSlur #'direction = #DOWN
 phrasingSlurNeutral = \revert PhrasingSlur #'direction
 
+phrasingSlurDashed = {
+  \override PhrasingSlur #'dash-period = #0.75
+  \override PhrasingSlur #'dash-fraction = #0.4
+}
+phrasingSlurDotted = {
+  \override PhrasingSlur #'dash-period = #0.75
+  \override PhrasingSlur #'dash-fraction = #0.1
+}
+phrasingSlurSolid = {
+  \revert PhrasingSlur #'dash-period
+  \revert PhrasingSlur #'dash-fraction
+}
+
 mergeDifferentlyDottedOn = {
   \override Staff.NoteCollision #'merge-differently-dotted = ##t
 }
-- 
2.39.5