Difference between revisions of "LilyPond"
(some notes of fonts in LilyPond) |
m (windows workaround for lilypond) |
||
Line 73: | Line 73: | ||
--[[User:Hraban|Hraban]] 2005-08-20 | --[[User:Hraban|Hraban]] 2005-08-20 | ||
+ | |||
+ | == Workarounds == | ||
+ | |||
+ | Calling lilypond from command line in Windows fails. (Seems like a bug in lilypond.) You have to modify the module, so that lilypond is called with the whole path (<code>C:/prog/lilypond/usr/bin/lilypond</code> for example instead of <code>lilypond</code> alone). | ||
[[Category:Modules]] | [[Category:Modules]] | ||
[[Category:Music]] | [[Category:Music]] | ||
[[Category:Requests]] | [[Category:Requests]] |
Revision as of 16:46, 16 September 2005
< Graphics | Using Graphics > ((Please leave this page orphaned until LilyPond integration is ready!))
LilyPond is a great music engraver, and this page is for future LilyPond integration in ConTeXt. At the moment you can use LilyPond's PDFs as graphics just fine.
Setup
- First you need a working LilyPond installation plus dependencies like GhostScript.
- see \setupLilyPond
Snippets
There are some notes \LilyPond{ \relative{bes a c b} } embedded in this line.
Sections
E.g. for a songbook you want to place big chunks of LilyPond output (i.e. note staffs) in your text. It behaves like any other graphics, especially similar to embedded MetaPost code:
\section{A Tune} \startLilyPond \relative { \repeat volta 2 { \partial 4 e4 | a2 c4 d | e2 f4 e | d2. c4 | b4. c8 d4 e | a,2 c4 d | e2 f4 e | g,2 a | \partial 2. b2. | } \repeat volta 2 { \partial 4 r4 | f' g f d | e f e c | a b c d | e2. e4 | f g f8 e d4 | e f e c | a c b8 a g4 | } \alternative { { \partial 2. g2. } { \partial 2. a2. } } } \stopLilyPond There's nothing to say about this tune yet; my friend heard it from Lúnasa.
Developer's Corner
I need to figure out how LilyPond's LaTeX integration in lilypond-book works. It is a different approach: LilyPond preprocesses the LaTeX code, replaces LilyPond code with images and runs LaTeX. Instead with ConTeXt, texexec would do this preprocessing step, avoiding the need to run different programs yourself. I guess I can copy the needed setup (LilyPond stub file) from lilypond-book (a messy Python script).
I don't yet know how to prepare \setupLilyPond. It should be able to:
- set the text font (default should be ConTeXt's bodyfont instead of LilyPond's)
- set line width
- set staff and text size
- access most other layout parameters
LilyPond uses fontconfig for font search. At least on MacOS X it's very restricted what kind of fonts it can use - only single-style TrueType (including dfont). I didn't manage yet to use fonts from the TeX tree. (That doesn't seem to be fontconfig's fault - it writes appropriate font cache files everywhere.)
To remember:
- see LilyPond Docs!
- How do we handle version/syntax changes of LilyPond?
- !! How do we get clean PDFs (EPS for DVI mode), without anything around the staffs? Is lilypond-book's setup enough?
--Hraban 2005-08-20
Workarounds
Calling lilypond from command line in Windows fails. (Seems like a bug in lilypond.) You have to modify the module, so that lilypond is called with the whole path (C:/prog/lilypond/usr/bin/lilypond
for example instead of lilypond
alone).