From ae49cadbcdee1a78fdf1b3770da3aeb19b3a74bf Mon Sep 17 00:00:00 2001
From: hanwen <hanwen>
Date: Sun, 23 Feb 2003 10:58:38 +0000
Subject: [PATCH] * Documentation/user/refman.itely (Printing named chords):
 add chord name tweak doco.

* input/template/gregorian-transcription.ly: new file.
---
 ChangeLog                                 |  7 +++
 Documentation/user/refman.itely           | 64 ++++++++++++++++++++++-
 input/template/gregorian-transcription.ly | 25 +++++++++
 lily/beam.cc                              |  3 --
 lily/separation-item.cc                   | 11 ++--
 lily/tie.cc                               |  4 +-
 lily/time-signature.cc                    | 51 +++++++++---------
 lily/translator-ctors.cc                  |  4 +-
 ly/chord-modifiers-init.ly                |  3 ++
 ly/engraver-init.ly                       |  2 +-
 10 files changed, 132 insertions(+), 42 deletions(-)
 create mode 100644 input/template/gregorian-transcription.ly

diff --git a/ChangeLog b/ChangeLog
index b84d4eb579..c2fbd47f2e 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2003-02-23  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
+
+	* Documentation/user/refman.itely (Printing named chords): add
+	chord name tweak doco.
+
+	* input/template/gregorian-transcription.ly: new file.
+
 2003-02-22  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
 
 	* input/test/*: lots of cleanups/comment-outs/removals in chord
diff --git a/Documentation/user/refman.itely b/Documentation/user/refman.itely
index 9ae15291a7..de6d69a9c9 100644
--- a/Documentation/user/refman.itely
+++ b/Documentation/user/refman.itely
@@ -3516,8 +3516,68 @@ Klaus Ignatzek (See @ref{Literature}).
 
 [TODO: add description for banter other jazz.]
 
-[TODO: describe tweak options, chordNameFunction,chordNameExceptions,
-majorSevenSymbol, chordNameSeparator]
+The Ignatzek chord name formatting can be tuned in a number of ways
+through the following properties:
+@table @code
+@item chordNameExceptions
+This is a list that contains the chords that have special formatting.
+For example.
+@lilypond[verbatim,singleline]
+chExceptionMusic = \notes { <<c f g bes>>1-\markup { \super "7" "wahh" }}
+chExceptions = #(append
+  (sequential-music-to-chord-exceptions chExceptionMusic)
+  ignatzekExceptions)
+
+\score {   \context ChordNames
+    \chords {
+      c:7sus4 c:dim7
+      \property ChordNames.chordNameExceptions = #chExceptions
+      c:7sus4 c:dim7 } }
+@end lilypond
+
+Putting the exceptions list encoded as
+@example
+ \notes @{ <<c f g bes>>1-\markup @{ \super "7" "wahh" @} @}
+@end example
+into the property takes a little manoeuvring. The following code
+transforms  @code{chExceptionMusic} (which is a sequential music)
+into a list of exceptions.
+@example
+  (sequential-music-to-chord-exceptions chExceptionMusic)
+@end example
+Then,
+@example
+#(append
+  ... ignatzekExceptions)
+@end example
+adds the new exceptions to the default ones, which are defined in
+@file{ly/chord-modifier-init.ly}.
+
+@item majorSevenSymbol
+This property contains the markup object used for the 7th step, when
+it is major. Predefined options are @code{whiteTriangleMarkup},
+@code{blackTriangleMarkup}. The following uses another popular shorthand. 
+@lilypond[fragment,verbatim]
+\context ChordNames \chords {
+      c:7
+      \property ChordNames.majorSevenSymbol = \markup { "j7" }
+      c:7 } 
+@end lilypond
+@item chordNameSeparator
+Different parts of a chord name are normally separated by a
+slash. By setting @code{chordNameSeparator}, you can specify other
+separators, e.g.
+@lilypond[fragment,verbatim]
+\context ChordNames \chords {
+      c:7sus4
+      \property ChordNames.chordNameSeparator = \markup { "|" }
+      c:7sus4 }
+@end lilypond
+@end table
+
+
+
+
 
 @node Writing parts
 @section Writing parts
diff --git a/input/template/gregorian-transcription.ly b/input/template/gregorian-transcription.ly
new file mode 100644
index 0000000000..f1928624da
--- /dev/null
+++ b/input/template/gregorian-transcription.ly
@@ -0,0 +1,25 @@
+\header {
+texidoc = "Modern  transcriptions  of gregrorian music.
+Gregorian music has no measure, no stems, only uses half and quarter notes,
+and two types of barlines, a short one indicating a rest, a second indicating a breath mark."
+}
+
+
+barOne = \notes { \once \property Staff.BarLine \override #'bar-size = #2
+	\bar "|" }
+barTwo = \notes { \once \property Staff.BarLine \override #'extra-offset = #'(0 . 2)
+
+		\once \property Staff.BarLine \override #'bar-size = #2
+	\bar "|" }
+\score {
+
+\notes \relative c' {
+	\property Score.timing = ##f
+	\property Staff.Stem \set #'transparent = ##t
+	f4 a2 \barTwo g4 a2  f2 \barOne g4( )f f(
+	\bar "empty" 
+	\break
+	)g a2
+}
+
+}
diff --git a/lily/beam.cc b/lily/beam.cc
index a74da01235..fc93ed4bc2 100644
--- a/lily/beam.cc
+++ b/lily/beam.cc
@@ -1227,9 +1227,6 @@ Beam::set_stem_lengths (Grob *me)
   Interval pos = ly_scm2interval (me->get_grob_property ("positions"));
   Real staff_space = Staff_symbol_referencer::staff_space (me);
 
-  bool french = to_boolean (me->get_grob_property ("french-beaming"));
-
-  
   bool gap = false;
   Real thick =0.0;
   if (gh_number_p (me->get_grob_property ("gap"))
diff --git a/lily/separation-item.cc b/lily/separation-item.cc
index 1c46854c5c..0b8776eead 100644
--- a/lily/separation-item.cc
+++ b/lily/separation-item.cc
@@ -135,10 +135,9 @@ Separation_item::width (Grob *me)
 
 
 ADD_INTERFACE (Separation_item,"separation-item-interface",
-  "Item that computes widths to generate spacing rods.
-
-Calc dimensions for the Separating_group_spanner; this has to be
-an item to get dependencies correct.  It can't be an grob_group
-since these usually are in a different X_group
-",
+  "Item that computes widths to generate spacing rods.\n"
+"\n"
+"Calc dimensions for the Separating_group_spanner; this has to be "
+"an item to get dependencies correct.  It can't be an grob_group "
+"since these usually are in a different X_group ",
   "X-extent conditional-elements elements");
diff --git a/lily/tie.cc b/lily/tie.cc
index 1b6ff9ed6b..99cf426d5c 100644
--- a/lily/tie.cc
+++ b/lily/tie.cc
@@ -331,6 +331,6 @@ Tie::brew_molecule (SCM smob)
 
 
 ADD_INTERFACE (Tie,"tie-interface",
-  "A tie connecting two noteheads.
-direction = Forced direction for all ties",
+  "A tie connecting two noteheads.\n"
+"direction = Forced direction for all ties",
   "y-offset staffline-clearance control-points heads details thickness x-gap direction minimum-length");
diff --git a/lily/time-signature.cc b/lily/time-signature.cc
index 606790e02e..dd8e06682e 100644
--- a/lily/time-signature.cc
+++ b/lily/time-signature.cc
@@ -121,30 +121,29 @@ Time_signature::numbered_time_signature (Grob*me,int num, int den)
 }
 
 ADD_INTERFACE (Time_signature, "time-signature-interface",
-  "A time signature, in different styles.
-  The following values for 'style are are recognized:
-
-    @table @samp
-      @item @code{C}
-        4/4 and 2/2 are typeset as C and struck C, respectively.  All
-        other time signatures are written with two digits.
-
-      @item @code{neo_mensural}
-        2/2, 3/2, 2/4, 3/4, 4/4, 6/4, 9/4, 4/8, 6/8 and 9/8 are
-        typeset with neo-mensural style mensuration marks.  All other time
-        signatures are written with two digits.
-
-      @item @code{mensural}
-        2/2, 3/2, 2/4, 3/4, 4/4, 6/4, 9/4, 4/8, 6/8 and 9/8 are
-        typeset with mensural style mensuration marks.  All other time
-        signatures are written with two digits.
-
-      @item @code{1xxx}
-        All time signatures are typeset with a single
-        digit, e.g. 3/2 is written as 3. (Any symbol starting
-	with the digit @code{1} will do.)
-    @end table
-
-See also the test-file @file{input/test/time.ly}.
-",
+  "A time signature, in different styles.\n"
+"  The following values for 'style are are recognized:\n"
+"\n"
+"    @table @samp\n"
+"      @item @code{C}\n"
+"        4/4 and 2/2 are typeset as C and struck C, respectively.  All\n"
+"        other time signatures are written with two digits.\n"
+"\n"
+"      @item @code{neo_mensural}\n"
+"        2/2, 3/2, 2/4, 3/4, 4/4, 6/4, 9/4, 4/8, 6/8 and 9/8 are\n"
+"        typeset with neo-mensural style mensuration marks.  All other time\n"
+"        signatures are written with two digits.\n"
+"\n"
+"      @item @code{mensural}\n"
+"        2/2, 3/2, 2/4, 3/4, 4/4, 6/4, 9/4, 4/8, 6/8 and 9/8 are\n"
+"        typeset with mensural style mensuration marks.  All other time\n"
+"        signatures are written with two digits.\n"
+"\n"
+"      @item @code{1xxx}\n"
+"        All time signatures are typeset with a single\n"
+"        digit, e.g. 3/2 is written as 3. (Any symbol starting\n"
+"	with the digit @code{1} will do.)\n"
+"    @end table\n"
+"\n"
+"See also the test-file @file{input/test/time.ly}.\n",
   "fraction style");
diff --git a/lily/translator-ctors.cc b/lily/translator-ctors.cc
index 000b012086..3c3a1d7552 100644
--- a/lily/translator-ctors.cc
+++ b/lily/translator-ctors.cc
@@ -20,8 +20,8 @@
 Dictionary<Translator*> *global_translator_dict=0;
 
 LY_DEFINE(get_all_translators,"ly:get-all-translators", 0, 0, 0,  (),
-	  "Return an list of a all translator objects that may be instantiated
-during a lilypond run.")
+	  "Return an list of a all translator objects that may be instantiated "
+" during a lilypond run.")
 {
   SCM l = SCM_EOL;
   for (std::map<String,Translator*>::const_iterator (ci (global_translator_dict->begin()));
diff --git a/ly/chord-modifiers-init.ly b/ly/chord-modifiers-init.ly
index f8266423c1..e01ab5d8ca 100644
--- a/ly/chord-modifiers-init.ly
+++ b/ly/chord-modifiers-init.ly
@@ -14,3 +14,6 @@ ignatzekExceptionMusic =  \notes {
 	<<c es ges bes>>-\markup { \super \combine "o" "/" }
 	<<c es ges beses>>-\markup { \super  "o7" }
 }
+
+ignatzekExceptions = #(sequential-music-to-chord-exceptions ignatzekExceptionMusic)
+
diff --git a/ly/engraver-init.ly b/ly/engraver-init.ly
index b02c481b6e..7e23cf9e81 100644
--- a/ly/engraver-init.ly
+++ b/ly/engraver-init.ly
@@ -449,7 +449,7 @@ ScoreContext = \translator {
 	chordNameFunction = #ignatzek-chord-names
 	majorSevenSymbol = #whiteTriangleMarkup
 	chordNameSeparator = #(make-simple-markup  "/")
-	chordNameExceptions = #(sequential-music-to-chord-exceptions ignatzekExceptionMusic)
+	chordNameExceptions = #ignatzekExceptions
 
 	\grobdescriptions #all-grob-descriptions
 }
-- 
2.39.5