]> git.donarmstrong.com Git - lilypond.git/blobdiff - Documentation/snippets/displaying-grob-ancestry.ly
Rerun scripts/auxiliar/update-with-convert-ly.sh
[lilypond.git] / Documentation / snippets / displaying-grob-ancestry.ly
index 632e8c0ff004cc1dc3a394858dcf2918a89d4425..d6c8d46a2a2534599c2d762f3ae70d91b76de6ed 100644 (file)
@@ -1,39 +1,29 @@
-% Do not edit this file; it is automatically
-% generated from Documentation/snippets/new
-% This file is in the public domain.
-%% Note: this file works from version 2.13.10
-\version "2.13.16"
+%% DO NOT EDIT this file manually; it is automatically
+%% generated from LSR http://lsr.dsi.unimi.it
+%% Make any changes in LSR itself, or in Documentation/snippets/new/ ,
+%% and then run scripts/auxiliar/makelsr.py
+%%
+%% This file is in the public domain.
+\version "2.17.6"
 
 \header {
-  lsrtags = "tweaks-and-overrides"
+  lsrtags = "devel, scheme-language, tweaks-and-overrides"
 
   texidoc = "
 When working with grob callbacks, it can be helpful to understand a
-grob's @qq{ancestry}.  Most grobs have @qq{parents} which influence the
-positioning of the grob.  X- and Y-parents influence the horizontal and
-vertical positions for the grob, respectively.  Additionally, each
+grob's @qq{ancestry}. Most grobs have @qq{parents} which influence the
+positioning of the grob. X- and Y-parents influence the horizontal and
+vertical positions for the grob, respectively. Additionally, each
 parent may have parents of its own.
 
 
 Unfortunately, there are several aspects of a grob's ancestry that can
 lead to confusion:
 
-
-@itemize
-
-@item
-The types of parents a grob has may depend on context.
-
-@item
-For some grobs, the X- and Y-parents are the same.
-
-@item
-A particular @qq{ancestor} may be related to a grob in multiple ways.
-
-@item
-The concept of @qq{generations} is misleading.
-
-@end itemize
+* The types of parents a grob has may depend on context. * For some
+grobs, the X- and Y-parents are the same. * A particular @qq{ancestor}
+may be related to a grob in multiple ways. * The concept of
+@qq{generations} is misleading.
 
 
 For example, the @code{System} grob can be both parent (on the Y-side)
@@ -47,18 +37,15 @@ ancestry.
 
 When called this way
 
-@example
+
 @{
-   \\once \\override NoteHead #'before-line-breaking = #display-ancestry
-   c4
-@}
-@end example
+ \\once \\override NoteHead.before-line-breaking = #display-ancestry
+ c @}
 
 
 The following output is generated:
 
 
-@example
 ------------------------------------
 
 NoteHead X,Y: NoteColumn
@@ -71,14 +58,13 @@ NoteHead X,Y: NoteColumn
           X: NonMusicalPaperColumn
              X,Y: System
           Y: System
-@end example
+
 
 
 "
   doctitle = "Displaying grob ancestry"
 } % begin verbatim
 
-
 #(define (grob-name grob)
    (if (ly:grob? grob)
        (assoc-ref (ly:grob-property grob 'meta) 'name)
@@ -122,16 +108,15 @@ NoteHead X,Y: NoteColumn
     (format #f "~&")))
 
 #(define (display-ancestry grob)
-   (display
-    (string-append
-     (format #f "~3&~a~2%" (make-string 36 #\-))
-     (format-ancestry (get-ancestry grob) 0)
-     (format #f "~2&"))))
+   (format (current-error-port)
+      "~3&~a~2%~a~&"
+      (make-string 36 #\-)
+      (format-ancestry (get-ancestry grob) 0)))
 
 \relative c' {
-  \once \override NoteHead #'before-line-breaking = #display-ancestry
+  \once \override NoteHead.before-line-breaking = #display-ancestry
   f4
-  \once \override Accidental #'before-line-breaking = #display-ancestry
-  \once \override Arpeggio #'before-line-breaking = #display-ancestry
+  \once \override Accidental.before-line-breaking = #display-ancestry
+  \once \override Arpeggio.before-line-breaking = #display-ancestry
   <f as c>4\arpeggio
 }