Hi Adam,

2011/9/10 Adam Spiers <lilypond-de...@adamspiers.org>:
> Sorry Janek, I did receive the email but I've been away travelling for
> 3 months and only just got back.

No problem!  I was afraid that your disappearance meant that you lost
interest in these patches.

> I would be glad to work with you on
> getting these patches finalised and submitted, although please bear
> with me over the next few days as I have some other pressing issues to
> attend to first.

Of course, there's no rush.

> I think the best way would be if I help you with github because it's
> an absolutely beautiful service and IMHO much nicer than emailing
> patches once you get used to it.  If you haven't already done so,
> please try adding my github repository to your own as a remote:
>
>  git remote add aspiers git://github.com/aspiers/lilypond.git
>
> and then simply fetch or pull the commits from my remote branch:
>
>  git fetch aspiers master
>
> or:
>
>  git pull aspiers master
>
> (pull is equivalent to fetch followed by a merge into your current
> branch).
>
> Let me know how you get on (but please be patient if I don't reply
> quickly!)

Done - it was amaznigly painless!

Uploaded to Rietveld: http://codereview.appspot.com/4981052/

One thing: please follow these guidelines concerning commit messages:
http://lilypond.org/doc/v2.15/Documentation/contributor-big-page#commit-messages
I've changed the messages in my repository; i don't know if this
change can cause incompatibilities between our repositories, but if it
does (and we need to be compatible because the patches will probably
have some revisions which i will also have to upload) i attach patch
files created from my repository.

thanks,
Janek
From a65e982b3429f5a4e4786cdc068786622552ee28 Mon Sep 17 00:00:00 2001
From: Adam Spiers <lilypond-fr...@adamspiers.org>
Date: Thu, 28 Jul 2011 00:51:12 -0700
Subject: [PATCH 1/5] enlarge half-diminished slashed circle symbol

---
 ly/chord-modifiers-init.ly |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/ly/chord-modifiers-init.ly b/ly/chord-modifiers-init.ly
index 75b804b..eb86644 100644
--- a/ly/chord-modifiers-init.ly
+++ b/ly/chord-modifiers-init.ly
@@ -27,7 +27,7 @@ ignatzekExceptionMusic = {
 	<c es ges>-\markup { \super "o" } % should be $\circ$ ?
 	<c es ges bes>-\markup {
 	  %%  f8 is o with slash.
-	  \super #(ly:export (ly:wide-char->utf-8 #x00f8))
+	  \normal-size-super #(ly:export (ly:wide-char->utf-8 #x00f8))
 	}
 	<c es ges beses>-\markup { \super  "o7" }
 }
-- 
1.7.0.4

From 634e5e8cee5176c423dc7106bff437d04c6a3923 Mon Sep 17 00:00:00 2001
From: Adam Spiers <lilypond-fr...@adamspiers.org>
Date: Thu, 28 Jul 2011 00:51:57 -0700
Subject: [PATCH 2/5] Issue 1503 - Recognise Lydian chords

---
 ly/chord-modifiers-init.ly |    1 +
 1 files changed, 1 insertions(+), 0 deletions(-)

diff --git a/ly/chord-modifiers-init.ly b/ly/chord-modifiers-init.ly
index eb86644..91cb1e1 100644
--- a/ly/chord-modifiers-init.ly
+++ b/ly/chord-modifiers-init.ly
@@ -30,6 +30,7 @@ ignatzekExceptionMusic = {
 	  \normal-size-super #(ly:export (ly:wide-char->utf-8 #x00f8))
 	}
 	<c es ges beses>-\markup { \super  "o7" }
+	<c e g b fis'>-\markup { \super "lyd" } % Lydian
 }
 
 partialJazzMusic = {
-- 
1.7.0.4

From b43dcc12920ad8b26b33f0e1fc52de03e8cdb842 Mon Sep 17 00:00:00 2001
From: Adam Spiers <lilypond-fr...@adamspiers.org>
Date: Thu, 28 Jul 2011 01:03:31 -0700
Subject: [PATCH 3/5] add chordInversionSeparator

Issue 1572 and issue 1503 - Allow choice of
chord modifier separator independently of
chord inversion separator, since conventionally
the latter is always a slash (hence the term
"slash chords"), whereas the former seldom
involves slashes.
---
 ly/engraver-init.ly               |    3 ++-
 scm/chord-ignatzek-names.scm      |    3 ++-
 scm/define-context-properties.scm |    2 ++
 3 files changed, 6 insertions(+), 2 deletions(-)

diff --git a/ly/engraver-init.ly b/ly/engraver-init.ly
index a2ba655..013f41a 100644
--- a/ly/engraver-init.ly
+++ b/ly/engraver-init.ly
@@ -643,7 +643,8 @@ automatically when an output definition (a @code{\score} or
   chordNameFunction = #ignatzek-chord-names
   majorSevenSymbol = #whiteTriangleMarkup
   chordNameLowercaseMinor = ##f
-  chordNameSeparator = #(make-simple-markup  "/")
+  chordNameSeparator = #(make-hspace-markup 0.5)
+  chordInversionSeparator = #(make-simple-markup "/")
   chordNameExceptions = #ignatzekExceptions
   chordNoteNamer = #'()
   chordRootNamer = #note-name->markup
diff --git a/scm/chord-ignatzek-names.scm b/scm/chord-ignatzek-names.scm
index 696d02f..08eb118 100644
--- a/scm/chord-ignatzek-names.scm
+++ b/scm/chord-ignatzek-names.scm
@@ -168,6 +168,7 @@ work than classifying the pitches."
 	(make-line-markup total)))
 
     (let* ((sep (ly:context-property context 'chordNameSeparator))
+           (invsep (ly:context-property context 'chordInversionSeparator))
 	   (root-markup (name-root root lowercase-root?))
 	   (add-markups (map (lambda (x) (glue-word-to-step "add" x))
 			     addition-pitches))
@@ -183,7 +184,7 @@ work than classifying the pitches."
 				 suffixes
 				 add-markups) sep))
 	   (base-stuff (if (ly:pitch? bass-pitch)
-			   (list sep (name-note bass-pitch #f))
+			   (list invsep (name-note bass-pitch #f))
 			   '())))
 
       (set! base-stuff
diff --git a/scm/define-context-properties.scm b/scm/define-context-properties.scm
index e9acd96..9df745d 100644
--- a/scm/define-context-properties.scm
+++ b/scm/define-context-properties.scm
@@ -148,6 +148,8 @@ of pitches to chord names.")
      (chordNameLowercaseMinor ,boolean? "Downcase roots of minor chords?")
      (chordNameSeparator ,markup? "The markup object used to
 separate parts of a chord name.")
+     (chordInversionSeparator ,markup? "The markup object used to
+separate a chord name from its root note in case of inversions.")
      (chordNoteNamer ,procedure? "A function that converts from a pitch
 object to a text markup.  Used for single pitches.")
      (chordPrefixSpacer ,number? "The space added between the root
-- 
1.7.0.4

From f9ecf98833f416412f377123745d912b3b43339a Mon Sep 17 00:00:00 2001
From: Adam Spiers <lilypond-fr...@adamspiers.org>
Date: Thu, 28 Jul 2011 01:05:12 -0700
Subject: [PATCH 4/5] Issue 1503 - Allow choice of minor chord modifier.

For example, often it is preferred to use a hyphen
instead of "m". This can now be achieved via:

  \set minorChordModifier = \markup { "-" }
---
 ly/engraver-init.ly               |    1 +
 scm/chord-ignatzek-names.scm      |    3 ++-
 scm/define-context-properties.scm |    2 ++
 3 files changed, 5 insertions(+), 1 deletions(-)

diff --git a/ly/engraver-init.ly b/ly/engraver-init.ly
index 013f41a..96d2813 100644
--- a/ly/engraver-init.ly
+++ b/ly/engraver-init.ly
@@ -641,6 +641,7 @@ automatically when an output definition (a @code{\score} or
 
 %% chord names:
   chordNameFunction = #ignatzek-chord-names
+  minorChordModifier = "m"
   majorSevenSymbol = #whiteTriangleMarkup
   chordNameLowercaseMinor = ##f
   chordNameSeparator = #(make-hspace-markup 0.5)
diff --git a/scm/chord-ignatzek-names.scm b/scm/chord-ignatzek-names.scm
index 08eb118..bf3dac1 100644
--- a/scm/chord-ignatzek-names.scm
+++ b/scm/chord-ignatzek-names.scm
@@ -130,7 +130,8 @@ work than classifying the pitches."
     (define (prefix-modifier->markup mod)
       (if (and (= 3 (pitch-step mod))
 	       (= FLAT (ly:pitch-alteration mod)))
-	  (make-simple-markup (if lowercase-root? "" "m"))
+      (if lowercase-root? (empty-markup)
+          (ly:context-property context 'minorChordModifier))
 	  (make-simple-markup "huh")))
 
     (define (filter-alterations alters)
diff --git a/scm/define-context-properties.scm b/scm/define-context-properties.scm
index 9df745d..2f7e763 100644
--- a/scm/define-context-properties.scm
+++ b/scm/define-context-properties.scm
@@ -375,6 +375,8 @@ page turn to be allowed.")
      (minimumRepeatLengthForPageTurn ,ly:moment? "Minimum length of a
 repeated section for a page turn to be allowed within that section.")
 
+     (minorChordModifier ,markup? "How should minor chords be formatted
+in a chord name?")
 
      (noChordSymbol ,markup? "Markup to be displayed for rests in a
 ChordNames context.")
-- 
1.7.0.4

From f2453ac250fece60689d121673afa6058950e6b7 Mon Sep 17 00:00:00 2001
From: Adam Spiers <lilypond-fr...@adamspiers.org>
Date: Thu, 28 Jul 2011 01:06:40 -0700
Subject: [PATCH 5/5] 1503 - Allow choice of prefix for chord modifiers.

This was previously "add", e.g. "Cmaj7 add6add9",
but this results in too much clutter and
is rarely used.
---
 ly/engraver-init.ly               |    1 +
 scm/chord-ignatzek-names.scm      |    3 ++-
 scm/define-context-properties.scm |    2 ++
 3 files changed, 5 insertions(+), 1 deletions(-)

diff --git a/ly/engraver-init.ly b/ly/engraver-init.ly
index 96d2813..37cd695 100644
--- a/ly/engraver-init.ly
+++ b/ly/engraver-init.ly
@@ -642,6 +642,7 @@ automatically when an output definition (a @code{\score} or
 %% chord names:
   chordNameFunction = #ignatzek-chord-names
   minorChordModifier = "m"
+  additionalPitchPrefix = "" % was "add"
   majorSevenSymbol = #whiteTriangleMarkup
   chordNameLowercaseMinor = ##f
   chordNameSeparator = #(make-hspace-markup 0.5)
diff --git a/scm/chord-ignatzek-names.scm b/scm/chord-ignatzek-names.scm
index bf3dac1..0302f35 100644
--- a/scm/chord-ignatzek-names.scm
+++ b/scm/chord-ignatzek-names.scm
@@ -171,7 +171,8 @@ work than classifying the pitches."
     (let* ((sep (ly:context-property context 'chordNameSeparator))
            (invsep (ly:context-property context 'chordInversionSeparator))
 	   (root-markup (name-root root lowercase-root?))
-	   (add-markups (map (lambda (x) (glue-word-to-step "add" x))
+       (add-pitch-prefix (ly:context-property context 'additionalPitchPrefix))
+	   (add-markups (map (lambda (x) (glue-word-to-step add-pitch-prefix x))
 			     addition-pitches))
 	   (filtered-alterations (filter-alterations alteration-pitches))
 	   (alterations (map name-step filtered-alterations))
diff --git a/scm/define-context-properties.scm b/scm/define-context-properties.scm
index 2f7e763..e03cd10 100644
--- a/scm/define-context-properties.scm
+++ b/scm/define-context-properties.scm
@@ -45,6 +45,8 @@
      ;; TODO FIXME
 
      (aDueText ,markup? "Text to print at a unisono passage.")
+     (additionalPitchPrefix ,string? "Text with which to prefix
+additional pitches within a chord name.")
      (alignAboveContext ,string? "Where to insert newly created context in
 vertical alignment.")
      (alignBassFigureAccidentals ,boolean? "If true, then the accidentals
-- 
1.7.0.4

_______________________________________________
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel

Reply via email to