lilypond-user
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: lyrics entry help!!!-was hebrew lily


From: Aaron
Subject: Re: lyrics entry help!!!-was hebrew lily
Date: 04 Jul 2003 01:53:29 +0300

Thanks for the effort,
I am sorry I seem so dumb at times,
It is my lack of latex tex and lilypond knowledge.
I am as you can tell trying to do something before I know how, sort of
like leaping before I look.
So thanks
again, I will read and try it again.
Aaron
On Fri, 2003-07-04 at 02:43, Ferenc Wagner wrote:
> 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.
> 
> 
> _______________________________________________
> Lilypond-user mailing list
> address@hidden
> http://mail.gnu.org/mailman/listinfo/lilypond-user





reply via email to

[Prev in Thread] Current Thread [Next in Thread]