X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=Documentation%2Fsnippets%2Fdisplaying-grob-ancestry.ly;h=7a75bb1a33fa98170414298349e200e51c5c806d;hb=5178fc01c82223a2fa1a7dbbce55772022612210;hp=fd6010af97d2a4016482a76768389442b0725819;hpb=4cadb44485b704de34192cfdd9ed9fbb4dfa0dee;p=lilypond.git diff --git a/Documentation/snippets/displaying-grob-ancestry.ly b/Documentation/snippets/displaying-grob-ancestry.ly index fd6010af97..7a75bb1a33 100644 --- a/Documentation/snippets/displaying-grob-ancestry.ly +++ b/Documentation/snippets/displaying-grob-ancestry.ly @@ -1,112 +1,29 @@ -% DO NOT EDIT this file manually; it is automatically -% generated from Documentation/snippets/new -% Make any changes in Documentation/snippets/new/ -% and then run scripts/auxiliar/makelsr.py -% -% This file is in the public domain. -%% Note: this file works from version 2.14.0 -\version "2.14.0" +%% DO NOT EDIT this file manually; it is automatically +%% generated from LSR http://lsr.di.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.18.0" \header { -%% Translation of GIT committish: 2d548a99cb9dba80f2ff035582009477cd37eceb - - texidoces = " -Al trabajar con los callbacks de un grob, puede ser de mucha ayuda -entender el @qq{árbol genealógico} de un grob. La mayor parte de los -grobs tienen @qq{padres} que influyen en el posicionamiento del grob. -los padres X e Y influyen en las posiciones horizontal y vertical del -grob, respectivamente. Además, cada pade puede tener padres a su vez. - - -Por desgracia, existen varios aspectos de la genealogía de un grob que -pueden llevar a confusión: - - -@itemize - -@item Los tipos de padre que tiene un grob pueden depender del -contexto. - -@item Para ciertos grobs, los padres X e Y son el mismo. - -@item Un @qq{ancestro} concreto puede estar relacionado con un grob de -mas de una manera. - -@item El concepto de @qq{generaciones} es engañoso. - -@end itemize - - -Por ejemplo, el grob @code{System} puede ser tanto un padre (sobre el -lado Y) como un abuelo (dos veces en el lado X) de un grob -@code{VerticalAlignment}. - - -Este macro imprime, en la consola, una representación textual de la -genealogía de un grob. - - -Cuando se llama de esta forma - -@example -@{ - \\once \\override NoteHead #'before-line-breaking = #display-ancestry - c4 -@} -@end example - - -Se genera la siguiente salida: - - -@example ------------------------------------- - -NoteHead X,Y: NoteColumn - X: PaperColumn - X,Y: System - Y: VerticalAxisGroup - X: NonMusicalPaperColumn - X,Y: System - Y: VerticalAlignment - X: NonMusicalPaperColumn - X,Y: System - Y: System -@end example - -" - - doctitlees = "Imprimir el árbol genealógico de un grob" - - 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) @@ -120,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 @@ -144,13 +58,15 @@ NoteHead X,Y: NoteColumn X: NonMusicalPaperColumn X,Y: System Y: System -@end example + " doctitle = "Displaying grob ancestry" } % begin verbatim +%% http://lsr.di.unimi.it/LSR/Item?id=622 +%% see also http://www.lilypond.org/doc/v2.18/Documentation/snippets/tweaks-and-overrides#tweaks-and-overrides-displaying-grob-ancestry #(define (grob-name grob) (if (ly:grob? grob) @@ -195,16 +111,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 4\arpeggio }