Re: many-lyrics separator (slightly OT)
Schön leucht der 3D97 Schön leucht der [Tp] Und die Beziefrung allzumal DD leucht schöner DD glänzt reiner usw... Danke Gracias Merci Thank you so much! 2015-01-06 12:11 GMT-05:00, Klaus Blum benbigno...@gmx.de: David Nalesnik-2 wrote There is an old thread which describes how to adapt input/regression/ scheme-text-spanner.ly to create intelligent underlining of lyrics: http://www.mail-archive.com/lilypond-user%40gnu.org/msg60732.html Hi David, thanks for pointing to that old thread. It helped me to solve another problem: http://lists.gnu.org/archive/html/lilypond-user/2014-12/msg00123.html http://lists.gnu.org/archive/html/lilypond-user/2014-12/msg00123.html Now snippet 967 is updated: http://lsr.di.unimi.it/LSR/Item?id=967 http://lsr.di.unimi.it/LSR/Item?id=967 ...sorry for getting even more OT... cheers, Klaus -- View this message in context: http://lilypond.1069038.n5.nabble.com/many-lyrics-separator-slightly-OT-tp170129p170167.html Sent from the User mailing list archive at Nabble.com. ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: many-lyrics separator (slightly OT)
David Nalesnik-2 wrote There is an old thread which describes how to adapt input/regression/ scheme-text-spanner.ly to create intelligent underlining of lyrics: http://www.mail-archive.com/lilypond-user%40gnu.org/msg60732.html Hi David, thanks for pointing to that old thread. It helped me to solve another problem: http://lists.gnu.org/archive/html/lilypond-user/2014-12/msg00123.html http://lists.gnu.org/archive/html/lilypond-user/2014-12/msg00123.html Now snippet 967 is updated: http://lsr.di.unimi.it/LSR/Item?id=967 http://lsr.di.unimi.it/LSR/Item?id=967 ...sorry for getting even more OT... cheers, Klaus -- View this message in context: http://lilypond.1069038.n5.nabble.com/many-lyrics-separator-slightly-OT-tp170129p170167.html Sent from the User mailing list archive at Nabble.com. ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
many-lyrics separator (slightly OT)
Hello, Considering a choir-setting with many stanzas, the text makes this is a little bit ugly to read, specially for amateur-choirs in stressing situation (concert...). How does engravers eventually make these lyrics more readable? I think of four possibilities: - repeating the stanza # at each system, but I dont want this solution... - make some stanzas in italic - change some stanzas for sans-serif - draw a line-separator every 3-4 stanzas (but how to do that with ly?) Did somebody found any hymn-setting with this kind of typesetting? Thanks in advance, Francois ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: many-lyrics separator (slightly OT)
On 2015-01-05 16:42, Alicuota618 wrote: Dear Alexander, About poem, yes, I agree, but spanish songs translators generally dont care about original rythm (in other words, they dont do the job right - but the songs are known this way) and there are songs with different rythm from stanza to stanza too. So this is better to have the text under music, at least in this case, I suppose. I see. That's a fair exception... How do you: - set stanza # repeating at each new system? - draw a line-separator between lyrics Sorry, I think I can help with neither of those. I've got almost no idea at all about the second - except that you could add a special staff with no symbols and only one staff line, but that will look awful, I guess. Maybe something like an artificial stanza containing { \markup \null __ %{ many %} _ \markup \null }? But this looks quite cumbersome to use, and needs tweaking for the vertical distances, and probably also some horizontal shifting of the first and last empty markups... For the first, StanzaNumber supports the item-interface, but unfortunately \override StanzaNumber.break-visibility = #begin-of-line-visible does not work as expected; probably because the syllable is below the first note, which is not quite the first element in a line. My idea was to have a function which adds the stanza number to /each/ syllable of a stanza and use it with begin-of-line-visible to kill all but the first occurence per line. Perhaps an after-line-breaking callback inspecting the Y-parent of a LyricText element might work instead, but that's more than what I can test right now, sorry. Best, Alexander ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: many-lyrics separator (slightly OT)
Francois, Francois Planiol wrote How do you: - set stanza # repeating at each new system? I'm not aware of any automagic way of doing it (but that doesn't mean it can't be done, of course :), so in the mean time, simply add the \set stanza = # wherever you want it to appear! It's that easy! You might want to add it once you know where the line breaks are, though, or you could get stanza numbers in the middle of a system :) May be a hassle, but it works without that much effort. Francois Planiol wrote - draw a line-separator between lyrics There is a markup function called \draw-hline, but I couldn't figure out how to put it in-between the lyrics. By default, it extends the entire line-length, but that can be customized. Here's the documentation for it: http://www.lilypond.org/doc/v2.19/Documentation/notation/graphic#index-_005cdraw_002dhline http://www.lilypond.org/doc/v2.19/Documentation/notation/graphic#index-_005cdraw_002dhline HTH, Abraham -- View this message in context: http://lilypond.1069038.n5.nabble.com/many-lyrics-separator-slightly-OT-tp170129p170140.html Sent from the User mailing list archive at Nabble.com. ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: many-lyrics separator (slightly OT)
Hi Francois, I prefer to simply repeat the music: http://yen-hansen.ca/hymns/mlh03.pdf Improved readability that often doesn't even cost extra paper. Regards, Mogens On 2015-01-05, at 6:03, Alicuota618 alicuota...@gmail.com wrote: Hello, Considering a choir-setting with many stanzas, the text makes this is a little bit ugly to read, specially for amateur-choirs in stressing situation (concert...). How does engravers eventually make these lyrics more readable? I think of four possibilities: - repeating the stanza # at each system, but I dont want this solution... - make some stanzas in italic - change some stanzas for sans-serif - draw a line-separator every 3-4 stanzas (but how to do that with ly?) Did somebody found any hymn-setting with this kind of typesetting? Thanks in advance, Francois manyStanzas.jpg ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: many-lyrics separator (slightly OT)
Anyway, 2.18.0 didnt like it. And adapt this chinese thing (scheme) is still for me not an option. So I suppose its time to upgrade... Thanks to all, Francois 2015-01-05 17:19 GMT-05:00, David Nalesnik david.nales...@gmail.com: On Mon, Jan 5, 2015 at 4:08 PM, David Nalesnik david.nales...@gmail.com wrote: I've adapted this to create the divider. A bit cleaner--overrides moved to grob definition. ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: many-lyrics separator (slightly OT)
Hi Francois, On Mon, Jan 5, 2015 at 4:46 PM, Alicuota618 alicuota...@gmail.com wrote: Anyway, 2.18.0 didnt like it. And adapt this chinese thing (scheme) is still for me not an option. So I suppose its time to upgrade... The change I mentioned above should be sufficient to make this work with 2.18: Notice in the comments to 'add-grob-definition' near the top of the file that there is a change you need to make for versions 2.19.13 or before. Best, david ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: many-lyrics separator (slightly OT)
Hi, On Mon, Jan 5, 2015 at 10:50 AM, tisimst tisimst.lilyp...@gmail.com wrote: Francois, Francois Planiol wrote How do you: - set stanza # repeating at each new system? I'm not aware of any automagic way of doing it (but that doesn't mean it can't be done, of course :), so in the mean time, simply add the \set stanza = # wherever you want it to appear! It's that easy! You might want to add it once you know where the line breaks are, though, or you could get stanza numbers in the middle of a system :) May be a hassle, but it works without that much effort. Unfortunately, the attached won't work properly when repeating the stanza number like this. I'll fiddle around with it, but first things first :) Francois Planiol wrote - draw a line-separator between lyrics There is an old thread which describes how to adapt input/regression/ scheme-text-spanner.ly to create intelligent underlining of lyrics: http://www.mail-archive.com/lilypond-user%40gnu.org/msg60732.html I've adapted this to create the divider. Notice in the comments to add-grob-definition near the top of the file that there is a change you need to make for versions 2.19.13 or before. (Depending on how old the version you're using, there may be other changes needed.) Hope this is helpful! --David \version 2.19.15 \header { tagline = ##f } #(define (add-grob-definition grob-name grob-entry) (let* ((meta-entry (assoc-get 'meta grob-entry)) (class(assoc-get 'class meta-entry)) (ifaces-entry (assoc-get 'interfaces meta-entry))) ; if version is 2.19.13 or before, replace ly:grob-properties? ; in the following line with list? (set-object-property! grob-name 'translation-type? ly:grob-properties?) (set-object-property! grob-name 'is-grob? #t) (set! ifaces-entry (append (case class ((Item) '(item-interface)) ((Spanner) '(spanner-interface)) ((Paper_column) '((item-interface paper-column-interface))) ((System) '((system-interface spanner-interface))) (else '(unknown-interface))) ifaces-entry)) (set! ifaces-entry (uniq-list (sort ifaces-entry symbol?))) (set! ifaces-entry (cons 'grob-interface ifaces-entry)) (set! meta-entry (assoc-set! meta-entry 'name grob-name)) (set! meta-entry (assoc-set! meta-entry 'interfaces ifaces-entry)) (set! grob-entry (assoc-set! grob-entry 'meta meta-entry)) (set! all-grob-descriptions (cons (cons grob-name grob-entry) all-grob-descriptions #(add-grob-definition 'LyricSeparator `( (bound-details . ((left . ((Y . 0) (padding . 0.25) (attach-dir . ,LEFT) )) (left-broken . ((end-on-note . #t))) (right . ((Y . 0) (padding . 0.25) )) )) (dash-fraction . 0.2) (dash-period . 3.0) (direction . ,UP) (font-shape . italic) (left-bound-info . ,ly:line-spanner::calc-left-bound-info) (outside-staff-priority . 350) (right-bound-info . ,ly:line-spanner::calc-right-bound-info) (staff-padding . 0.8) (stencil . ,ly:line-spanner::print) (style . dashed-line) (meta . ((class . Spanner) (interfaces . (font-interface line-interface line-spanner-interface outside-staff-interface side-position-interface)) #(define (add-bound-item spanner item) (if (null? (ly:spanner-bound spanner LEFT)) (ly:spanner-set-bound! spanner LEFT item) (ly:spanner-set-bound! spanner RIGHT item))) #(define (axis-offset-symbol axis) (if (eq? axis X) 'X-offset 'Y-offset)) #(define (set-axis! grob axis) (if (not (number? (ly:grob-property grob 'side-axis))) (begin (set! (ly:grob-property grob 'side-axis) axis) (ly:grob-chain-callback grob (if (eq? axis X) ly:side-position-interface::x-aligned-side side-position-interface::y-aligned-side) (axis-offset-symbol axis) LyricSeparatorEngraver = #(lambda (context) (let ((span '())) (make-engraver (acknowledgers ((stanza-number-interface engraver grob source-engraver) (if (ly:spanner? span) (begin (ly:pointer-group-interface::add-grob span 'lyric-bits grob) (ly:spanner-set-bound! span LEFT grob ((lyric-syllable-interface engraver grob source-engraver) (if
Re: many-lyrics separator (slightly OT)
On Mon, Jan 5, 2015 at 4:08 PM, David Nalesnik david.nales...@gmail.com wrote: I've adapted this to create the divider. A bit cleaner--overrides moved to grob definition. \version 2.19.15 \header { tagline = ##f } #(define (add-grob-definition grob-name grob-entry) (let* ((meta-entry (assoc-get 'meta grob-entry)) (class(assoc-get 'class meta-entry)) (ifaces-entry (assoc-get 'interfaces meta-entry))) ; if version is 2.19.13 or before, replace ly:grob-properties? ; in the following line with list? (set-object-property! grob-name 'translation-type? ly:grob-properties?) (set-object-property! grob-name 'is-grob? #t) (set! ifaces-entry (append (case class ((Item) '(item-interface)) ((Spanner) '(spanner-interface)) ((Paper_column) '((item-interface paper-column-interface))) ((System) '((system-interface spanner-interface))) (else '(unknown-interface))) ifaces-entry)) (set! ifaces-entry (uniq-list (sort ifaces-entry symbol?))) (set! ifaces-entry (cons 'grob-interface ifaces-entry)) (set! meta-entry (assoc-set! meta-entry 'name grob-name)) (set! meta-entry (assoc-set! meta-entry 'interfaces ifaces-entry)) (set! grob-entry (assoc-set! grob-entry 'meta meta-entry)) (set! all-grob-descriptions (cons (cons grob-name grob-entry) all-grob-descriptions #(add-grob-definition 'LyricSeparator `( (bound-details . ((left . ((Y . 0) (padding . 0) (attach-dir . ,LEFT) )) (right . ((Y . 0) (padding . 0) (attach-dir . ,RIGHT) )) )) (dash-fraction . 0.2) (dash-period . 3.0) (direction . ,DOWN) (font-shape . italic) (left-bound-info . ,ly:line-spanner::calc-left-bound-info) ;(outside-staff-priority . 350) (right-bound-info . ,ly:line-spanner::calc-right-bound-info) (staff-padding . 0.8) (stencil . ,ly:line-spanner::print) (style . line) (meta . ((class . Spanner) (interfaces . (font-interface line-interface line-spanner-interface outside-staff-interface side-position-interface)) #(define (add-bound-item spanner item) (if (null? (ly:spanner-bound spanner LEFT)) (ly:spanner-set-bound! spanner LEFT item) (ly:spanner-set-bound! spanner RIGHT item))) #(define (axis-offset-symbol axis) (if (eq? axis X) 'X-offset 'Y-offset)) #(define (set-axis! grob axis) (if (not (number? (ly:grob-property grob 'side-axis))) (begin (set! (ly:grob-property grob 'side-axis) axis) (ly:grob-chain-callback grob (if (eq? axis X) ly:side-position-interface::x-aligned-side side-position-interface::y-aligned-side) (axis-offset-symbol axis) LyricSeparatorEngraver = #(lambda (context) (let ((span '())) (make-engraver (acknowledgers ((stanza-number-interface engraver grob source-engraver) (if (ly:spanner? span) (begin (ly:pointer-group-interface::add-grob span 'lyric-bits grob) (ly:spanner-set-bound! span LEFT grob ((lyric-syllable-interface engraver grob source-engraver) (if (ly:spanner? span) (begin (ly:pointer-group-interface::add-grob span 'lyric-bits grob) (add-bound-item span grob) ((process-music trans) (if (not (ly:spanner? span)) (let ((ccc (ly:context-property context 'currentCommandColumn))) (set! span (ly:engraver-make-grob trans 'LyricSeparator ccc)) (set-axis! span Y ((finalize trans) (set! span '()) \score { \new Staff \new Voice = melody { \time 3/4 g'2 g'4 \break e'2 a'4 g'2. e' } \new Lyrics \lyricsto melody{ \set stanza = #1. Na na na na na na } \new Lyrics \lyricsto melody{ \set stanza = #2. Na na na na na na } \new Lyrics \with { \consists \LyricSeparatorEngraver % the following line controls space above and below \override LyricSeparator #'Y-extent = #'(-1 . 1) } \lyricsto melody { \set stanza = #3. Na na na na na naaah } \new Lyrics \lyricsto melody{ \set stanza = #4. Na na na na na na } \new Lyrics
Re: many-lyrics separator (slightly OT)
On 6 January 2015 at 02:57, Mogens Lemvig Hansen mog...@kayju.com wrote: Hi Francois, I prefer to simply repeat the music: http://yen-hansen.ca/hymns/mlh03.pdf Improved readability that often doesn't even cost extra paper. Regards, Mogens I agree. I think extra paper is “cheaper” than performer-stress. Vaughan ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: many-lyrics separator (slightly OT)
Dear Alexander, About poem, yes, I agree, but spanish songs translators generally dont care about original rythm (in other words, they dont do the job right - but the songs are known this way) and there are songs with different rythm from stanza to stanza too. So this is better to have the text under music, at least in this case, I suppose. How do you: - set stanza # repeating at each new system? - draw a line-separator between lyrics Thanks again F 2015-01-05 10:18 GMT-05:00, Alexander Kobel n...@a-kobel.de: On 2015-01-05 15:03, Alicuota618 wrote: Hello, Considering a choir-setting with many stanzas, the text makes this is a little bit ugly to read, specially for amateur-choirs in stressing situation (concert...). How does engravers eventually make these lyrics more readable? I think of four possibilities: - repeating the stanza # at each system, but I dont want this solution... - make some stanzas in italic - change some stanzas for sans-serif - draw a line-separator every 3-4 stanzas (but how to do that with ly?) Did somebody found any hymn-setting with this kind of typesetting? Hi, I've never seen option 3 (sans-serif), but all the others. The one I like most is 4, using a little bit of whitespace (instead of a rule-/line-separator) after three stanzas. This can easily be achieved by overriding nonstaff-nonstaff-spacing.minimum-distance for the last stanza of each such group. Option 1 can help in addition, in particular if for some reason only some of the stanzas are sung. (Happens more often than not for those pieces in churches here.) Italics I prefer if text is given in several languages. If you go for readability, however... As a singer, I prefer if additional stanzas are written after the score, like a poem, and only = 3 are printed between the staves. More than 4 stanzas (at most, and only if there is no fifth one) are too difficult for me to catch easily. In particular, if you have a usual SATB setting with = 2 staves, the lower voices notoriously have trouble with large distance between notes and first stanza. OTOH, if the singers get the melody after three stanzas, it suffices to have them as a poem (in particular if you can avoid page turns in between). If they don't get the melody, they have to rehearse the piece anyway to coordinate lyrics even if you print eleven stanzas below the notes, and once they rehearsed, the poem will be enough again. Just my two pence... HTH, Alexander ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: many-lyrics separator (slightly OT)
On 2015-01-05 15:03, Alicuota618 wrote: Hello, Considering a choir-setting with many stanzas, the text makes this is a little bit ugly to read, specially for amateur-choirs in stressing situation (concert...). How does engravers eventually make these lyrics more readable? I think of four possibilities: - repeating the stanza # at each system, but I dont want this solution... - make some stanzas in italic - change some stanzas for sans-serif - draw a line-separator every 3-4 stanzas (but how to do that with ly?) Did somebody found any hymn-setting with this kind of typesetting? Hi, I've never seen option 3 (sans-serif), but all the others. The one I like most is 4, using a little bit of whitespace (instead of a rule-/line-separator) after three stanzas. This can easily be achieved by overriding nonstaff-nonstaff-spacing.minimum-distance for the last stanza of each such group. Option 1 can help in addition, in particular if for some reason only some of the stanzas are sung. (Happens more often than not for those pieces in churches here.) Italics I prefer if text is given in several languages. If you go for readability, however... As a singer, I prefer if additional stanzas are written after the score, like a poem, and only = 3 are printed between the staves. More than 4 stanzas (at most, and only if there is no fifth one) are too difficult for me to catch easily. In particular, if you have a usual SATB setting with = 2 staves, the lower voices notoriously have trouble with large distance between notes and first stanza. OTOH, if the singers get the melody after three stanzas, it suffices to have them as a poem (in particular if you can avoid page turns in between). If they don't get the melody, they have to rehearse the piece anyway to coordinate lyrics even if you print eleven stanzas below the notes, and once they rehearsed, the poem will be enough again. Just my two pence... HTH, Alexander ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user