On Mon, 2004-07-05 at 17:18, Carl Sorensen wrote:
> I've added documentation for fret diagram properties to
> define-grob-properties.scm and define-grob-interfaces.scm. These
> changes, along with updates to the ChangeLog are included in the
> attached patch.
>
> Note: The CVS has not yet been updated with my previous patch
> (20040705fret.patch), so the ChangeLog entry in this patch duplicates
> the previous one. How should I handle this type of situation in the
> future?
>
> Thanks,
>
> Carl
This patch is updated from the latest CVS release. It updates
fret-diagrams.scm, define-grob-properties.scm, and
define-grob-interfaces.scm.
It should replace the patch attached to the previous email.
I'm sorry about the multiple patches. I believe I'm finally learning
how to develop with the current CVS.
Thanks,
Carl
Index: ChangeLog
===================================================================
RCS file: /cvsroot/lilypond/lilypond/ChangeLog,v
retrieving revision 1.2314
diff -u -r1.2314 ChangeLog
--- ChangeLog 5 Jul 2004 22:25:03 -0000 1.2314
+++ ChangeLog 6 Jul 2004 01:57:35 -0000
@@ -1,3 +1,12 @@
+2004-07-05 Carl Sorensen <[EMAIL PROTECTED]>
+
+ * scm/fret-diagrams.scm: change name of size and thicness properties
+ to avoid collisions with other properties
+
+ * scm/define-grob-interfaces.scm: add interface for fret diagram
+
+ * scm/define-grob-properties.scm: add properties for fret-diagram.scm
+
2004-07-06 Han-Wen Nienhuys <[EMAIL PROTECTED]>
* ly/book-paper-defaults.ly: set default encoding to ec.
Index: scm/fret-diagrams.scm
===================================================================
RCS file: /cvsroot/lilypond/lilypond/scm/fret-diagrams.scm,v
retrieving revision 1.10
diff -u -r1.10 fret-diagrams.scm
--- scm/fret-diagrams.scm 5 Jul 2004 19:23:13 -0000 1.10
+++ scm/fret-diagrams.scm 6 Jul 2004 01:57:35 -0000
@@ -315,7 +315,7 @@
; of the procedures called from this routine. If they're only used in one of the sub-procedure, they're
; obtained in that procedure
- (size (chain-assoc-get 'size props 1.0)) ; needed for everything
+ (size (chain-assoc-get 'fret-diagram-size props 1.0)) ; needed for everything
;TODO -- get string-count directly from length of stringTunings; requires FretDiagram engraver, which is not yet available
;TODO -- adjust padding for fret label? it appears to be too close to dots
(string-count (chain-assoc-get 'string-count props 6)) ; needed for everything
@@ -326,7 +326,7 @@
(dot-radius (chain-assoc-get 'dot-radius props default-dot-radius)) ; needed for both draw-dots and draw-barre
(dot-position (chain-assoc-get 'dot-position props default-dot-position)) ; needed for both draw-dots and draw-barre
(th (* (ly:paper-lookup paper 'linethickness)
- (chain-assoc-get 'thickness props 0.5))) ; needed for both draw-frets and draw-strings
+ (chain-assoc-get 'fret-thickness props 0.5))) ; needed for both draw-frets and draw-strings
(alignment (chain-assoc-get 'alignment props -0.4)) ; needed only here
(xo-padding (* th (chain-assoc-get 'xo-padding props 2))) ; needed only here
Index: scm/define-grob-interfaces.scm
===================================================================
RCS file: /cvsroot/lilypond/lilypond/scm/define-grob-interfaces.scm,v
retrieving revision 1.12
diff -u -r1.12 define-grob-interfaces.scm
--- scm/define-grob-interfaces.scm 24 Mar 2004 15:42:24 -0000 1.12
+++ scm/define-grob-interfaces.scm 6 Jul 2004 01:57:35 -0000
@@ -23,6 +23,12 @@
)
(ly:add-interface
+ 'fret-diagram-interface
+ "A fret diagram"
+ '()
+)
+
+(ly:add-interface
'ligature-interface
"A ligature"
'()
Index: scm/define-grob-properties.scm
===================================================================
RCS file: /cvsroot/lilypond/lilypond/scm/define-grob-properties.scm,v
retrieving revision 1.56
diff -u -r1.56 define-grob-properties.scm
--- scm/define-grob-properties.scm 5 Jul 2004 06:41:06 -0000 1.56
+++ scm/define-grob-properties.scm 6 Jul 2004 01:57:35 -0000
@@ -46,6 +46,8 @@
(align-dir ,ly:dir? "Which side to align? @code{-1}: left side,
@code{0}: around center of width, @code{1}: right side.")
+;;TODO -- change to fret-alignment?
+ (alignment ,ly:dir? "Alignment for fret diagram. See @code {align-dir}.")
(arch-angle ,number? "Turning angle of the hook of a system brace" )
(arch-height ,ly:dimension? "Height of the hook of a system brace.")
(arch-thick ,number? "Thickness of the hook of system brace.")
@@ -80,6 +82,10 @@
(bar-size ,ly:dimension? "size of a bar line.")
(bar-size-procedure ,procedure? "Procedure that computes the size of a bar line.")
+ (barre-type ,symbol? "Type of barre indication used in a fret diagram.
+Choices include @code{curved} and @code{straight}.")
+ (barre-vertical-offset ,number? "Offset for barre indication on fret
+diagram, from center of dot, in terms of dot radius.")
(base-shortest-duration ,ly:moment?
"Spacing is based on the shortest notes in a piece. Normally, pieces are spaced as if notes at least as short as this are present.")
(baseline-skip ,ly:dimension? "Distance between base lines of
@@ -105,6 +111,10 @@
called before line breaking, but after splitting breakable items at
potential line breaks.")
(between-cols ,pair? "Where to attach a loose column to")
+ (bezier-height ,number? "Height of bezier sandwich used for curved
+barre indicator in fret diagrams.")
+ (bezier-thick, ,number? "Thickness of bezier sandwich used for curved
+barre indicator in fret diagrams.")
(bracket-thick ,number? "width of a system start bracket.")
(break-align-symbol ,symbol? "This key is used for aligning and
spacing breakable items.")
@@ -186,6 +196,15 @@
")
(direction ,ly:dir? "Up or down, left or right?")
+ (dot-color ,symbol? "Color of dots in fret diagram. Options include
[EMAIL PROTECTED] and @code{white}.")
+ (dot-label-font-mag ,number? "Magnification of font used to label dots in
+fret diagram.")
+ (dot-position ,number? "Position of dot for fret diagram, in terms of
+fret spacing. 0.5 is middle of fret space, 1.0 is on bottom fret line,
+0.0 is on top fret line. Generally slightly above 0.5.")
+ (dot-radius ,number? "Radius of dots used in fret diagrams, in terms of
+fret spacing.")
(dot-count ,integer? "The number of dots.")
(duration-log ,integer? "The 2-log of the note head duration, i.e. 0=whole note, 1 = half note, etc.")
(edge-height ,pair? "A pair of number specifying the heights of
@@ -219,7 +238,14 @@
;;
(extremity-function ,procedure? "A function that calculates the
-attachment of a slur-end. The function takes a slur and direction argument and returns a symbol.")
+attachment of a slur-end. The function takes a slur and direction argument and returns a symbol.")
+ (finger-code ,symbol? "Code for the type of fingering indication in a
+fret diagram. Options include @code{none}, @code{in-dot}, and @code{below-string}.")
+ (finger-xoffset ,number? "X offset of the text labeling fingering below
+the string of a fret-diagram, in units of string spaces.")
+ (finger-yoffset ,number? "Y offset of the text labeling fingering below
+the string of a fret-diagram, in units of fret spaces.")
+
(flag-style ,symbol?
"a string determining what style of flag-glyph is
typeset on a Stem. Valid options include @code{()} and
@@ -256,7 +282,12 @@
signature object.")
(french-beaming ,boolean? "Use French beaming style for this
stem. The stem will stop at the innermost beams.")
-
+ (fret-count ,integer? "The number of frets in a fret diagram.")
+ (fret-diagram-size ,number? "Size of fret diagram.")
+ (fret-label-vertical-offset ,number? "Vertical offset of text used to
+label the top fret in a fret diagram.")
+ (fret-thickness ,number? "Thickness of fret and string lines in a fret
+diagram. Multiplier on bar thickness.")
;; ugh: double, change.
(full-size-change ,boolean? "Don't make a change clef smaller.")
(non-default ,boolean? "Set for manually specified clefs.")
@@ -283,15 +314,14 @@
(horizontal-shift ,integer? "An integer that identifies ranking
of note-column for horizontal shifting. This is used by
@internalsref{note-collision-interface}.")
- (inspect-quants ,number-pair? "If debugging is set,
-set beam quant to this position, and print the respective scores.")
-
(kern ,ly:dimension? "Amount of extra white space to add. For
bar line, this is the amount of space after a thick line.")
(knee ,boolean? "Is this beam kneed?")
(knee-spacing-correction ,number? "Factor for the optical
correction amount for kneed beams. Set between 0 for no correction and
1 for full correction.")
+ (label-font-magnification ,number? "Magnification of font used to
+label the top fret on a fret diagram")
(layer ,number? "The output layer [0..2]: layers define the order
of printing objects. Objects in lower layers are overprinted by
objects in higher layers.")
@@ -445,10 +475,14 @@
stems that are placed in tight configurations. For opposite
directions, this amount is the correction for two normal sized stems
that overlap completely.")
+ (string-count ,integer? "The number of strings in a fret diagram.")
+ (string-label-font-mag ,number? "Mangification for font used to label
+finger indications below strings in fret diagram")
(style ,symbol? "This setting determines in what style a grob is
typeset. Valid choices depend on the @code{print-function} that is
reading this property.")
(text ,markup? "Text markup. See @usermanref{Text markup}.")
+;;FIXME -- Should both be the same?
(thick-thickness ,number? "Bar line thickness, measured in
@code{linethickness}.")
(thickness ,number? "Bar line thickness, measured in
@@ -459,6 +493,8 @@
(threshold ,number-pair? "(@var{min} . @var{max}), where
@var{min} and @var{max} are dimensions in staff space.")
+ (top-fret-thickness ,number? "Thickness of the top fret in a fret
+diagram, as a multiplier of the standard fret thickness.")
(transparent ,boolean? "This is almost the same as setting
@code{print-function} to @code{#f}, but this retains the dimensions of
this grob, which means that grobs can be erased individually.")
@@ -485,6 +521,12 @@
words in texts.")
(width ,ly:dimension? "The width of a grob measured in staff space.")
(x-gap ,ly:dimension? "The horizontal gap between note head and tie.")
+ (xo-font-mag ,number? "Magnification for the font used to label mute
+and open strings in a fret diagram.")
+ (xo-horizontal-offset ,number? "Horizontal offset for characters used
+to label mute and open strings in a fret diagram.")
+ (xo-padding ,number? "Vertical padding for mute and open indicators
+in fret diagram.")
(y-free ,ly:dimension? "The minimal vertical gap between slur and
note heads or stems.")
(y-offset ,ly:dimension? "Extra vertical offset for ties away
_______________________________________________
lilypond-devel mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/lilypond-devel