[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: lyrics entry help!!!-was hebrew lily
From: |
Ferenc Wagner |
Subject: |
Re: lyrics entry help!!!-was hebrew lily |
Date: |
Fri, 04 Jul 2003 01:43:14 +0200 |
User-agent: |
Gnus/5.1002 (Gnus v5.10.2) Emacs/21.2 (gnu/linux) |
Aaron <address@hidden> writes:
> I tried the $$ etc. but have no idea what file to add it
> to and in what format. \\$$ ??
How did you try them, then? :) Simply tack them to the
beginning of end of a syllabe. Because the preprocessor you
use does not care about quotes, you can not simply add a
space like " this". Do it like ~this instead (~ is a space
for TeX, where it must not break a line -- irrelevant in
your case). $$ is rubbish, do not try at home. You can
"insert" arbitrary (even negative) amount of space by e.g.
\\hskip-3cm (doubled backslash for Lilypond). But this
technique also confuses Lilypond's internal calculation of
syllabe widths (beyond the confusion created by \\R{}'s), so
you may want to change Lilypond's own alignment mechanism:
\property ... How is it exactly? [Google gives
http://www.lilypond.org/stable/Documentation/user/out-www/lilypond/Fine-tuning-a-piece.html
Reading a couple of times... Hacking a couple of hours...]
So here is something you may find interesting (and also
familiar :):
------------- cut ------8<------ here ---------
\version "1.6.10" % Thanks, Han-Wen!
% Do you still have problems with the titles?
\header {
title = "Title"
% languague = "hebrew,english" % don't forget to uncomment this!
}
\include "paper26.ly"
% General purpose mapping function: applies FUNC to every
% text field in MUSIC.
#(define (text-map func music)
(let ((text (ly-get-mus-property music 'text))
(element (ly-get-mus-property music 'element))
(elements (ly-get-mus-property music 'elements)))
(if (not (null? text))
(ly-set-mus-property! music 'text (func text)))
(if (not (null? element))
(ly-set-mus-property! music 'element (text-map func element)))
(if (not (null? elements))
(ly-set-mus-property! music 'elements
(map (lambda (m) (text-map func m)) elements)))
music))
% Does Scheme really not include this function?
#(define (string-reverse str)
(list->string (reverse (string->list str))))
% Reverse every word (in terms of the above two functions)
#(define (text-reverse lyric)
(text-map string-reverse lyric))
% Sandwich every word between PRE and POST
#(define (text-augment pre post)
(lambda (lyric)
(text-map (lambda (word) (string-append pre word post)) lyric)))
% I factored out the lyrics, and also tried setting
% the extra-offset property randomly. It works.
lyr = \lyrics {
Tamm,
\property LyricsVoice . LyricText \override #'extra-offset = #'(5 . 0)
ta
\property LyricsVoice . LyricText \revert #'extra-offset
damm
}
\score {
\addlyrics
\notes {
\clef "bass"
\key d \major
\time 3/4
d4. a8 g4
}
\context Lyrics < \lyr \apply #(text-augment "A" "B") \lyr >
% Here you probably want to use "\\R{" and "}" instead.
\paper {
papersize = "a4"
indent = 0.0\cm
}
}
------------- and ------8<------ here ---------
Hmm, the documentation seems *MUCH* more comprehensible than
last time I checked (half a year or so). But I declare
Scheme the worst functional language ever. Or maybe I
should learn it. I am really interested in the right way of
doing the above. Hmm. What is the way to munge the text
AFTER Lily's positioning work?
Feri.
- Re: lyrics entry help!!!-was hebrew lily, (continued)
- Re: lyrics entry help!!!-was hebrew lily, Han-Wen Nienhuys, 2003/07/02
- Re: lyrics entry help!!!-was hebrew lily, Amelie Zapf, 2003/07/02
- Re: lyrics entry help!!!-was hebrew lily, Aaron, 2003/07/02
- Re: lyrics entry help!!!-was hebrew lily, Amelie Zapf, 2003/07/02
- Message not available
- Re: lyrics entry help!!!-was hebrew lily, Amelie Zapf, 2003/07/03
- Re: lyrics entry help!!!-was hebrew lily, Aaron, 2003/07/03
- Re: lyrics entry help!!!-was hebrew lily, Amelie Zapf, 2003/07/03
- Re: lyrics entry help!!!-was hebrew lily, Ferenc Wagner, 2003/07/03
- Re: lyrics entry help!!!-was hebrew lily, Aaron, 2003/07/03
- Re: lyrics entry help!!!-was hebrew lily,
Ferenc Wagner <=
- Re: lyrics entry help!!!-was hebrew lily, Aaron, 2003/07/03
- Re: lyrics entry help!!!-was hebrew lily, Han-Wen Nienhuys, 2003/07/03
- Re: lyrics entry help!!!-was hebrew lily, Ferenc Wagner, 2003/07/04
- Re: lyrics entry help!!!-was hebrew lily, Han-Wen Nienhuys, 2003/07/04
- Re: lyrics entry help!!!-was hebrew lily, Ferenc Wagner, 2003/07/04
- Re: lyrics entry help!!!-was hebrew lily, Han-Wen Nienhuys, 2003/07/04
- Message not available
- Re: lyrics entry help!!!-was hebrew lily, Ferenc Wagner, 2003/07/04
- Re: lyrics entry help!!!-was hebrew lily, Aaron, 2003/07/04
- Re: lyrics entry help!!!-was hebrew lily, Ferenc Wagner, 2003/07/04
- Message not available
- Re: lyrics entry help!!!-was hebrew lily, Ferenc Wagner, 2003/07/04