[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
template died
From: |
Aaron |
Subject: |
template died |
Date: |
Tue, 27 Jan 2004 01:25:20 +0200 |
User-agent: |
Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.4) Gecko/20031119 Debian/1.4.0.x.1-20 |
Hi all,
I have a template for hebrew lyrics that I have been using and
converting to the newest lilypond versions as the become available.
I just installed a new version and converted the template only to find
it doesn't work.
Could someone tell me whats wrong and how to fix it?
--------------------------snip----------------------------------------------------
\version "2.1.13" % Thanks, Han-Wen!
% Do you still have problems with the titles?
\header {
title = "Title"
% languague = "hebrew,english" % don't forget to uncomment this!
}
#(set-global-staff-size 26)
% 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
}
}
---------------------------snip------------------------------------
The error:
address@hidden:~/.vim/template$ lilypond hebtem.ly
lilypond (GNU LilyPond) 2.1.14
Running usr...
Now processing: `hebtem.ly'
Parsing...ERROR: Wrong number of arguments to #<procedure text-map (func
music)>
lilypond: error: LilyPond failed on input file hebtem (exit status 2)
lilypond: warning: Running LilyPond failed. Rerun with --verbose for a
trace.
address@hidden:~/.vim/template$ gvim hebtem.ly
filetypedetect
address@hidden:~/.vim/template$
Thanks
Aaron