LilyPond みんなの楽譜作成 ~第10回 日本OSS奨励賞 受賞 活動紹介~3. このソースを
{ c d e f g a b }
入力:ソースファイル test.ly
テキストファイル(UTF-8)
4. コンパイルします
{ c d e f g a b }
$ lilypond test.ly
コンパイル
入力:ソースファイル test.ly
テキストファイル(UTF-8)
5. 楽譜ができました
{ c d e f g a b }
$ lilypond test.ly
コンパイル
出力:楽譜 test.pdf
入力:ソースファイル test.ly
テキストファイル(UTF-8)
PDFなど
6. 例えば、こんなソースから、
LilyPondソースファイル一式中の
input/regression/typography-demo.ly
より抜粋
header {
title = "LilyPond demo"
enteredby="Han-Wen Nienhuys"
maintainer="hanwen@xs4all.nl"
texidoc = "
heavily mutilated Edition Peters Morgenlied by Schubert"
}
version "2.19.21"
#(ly:expect-warning (_ "(De)crescendo with unspecified starting volume in MIDI."))
ignoreMelisma = set ignoreMelismata = ##t
ignoreMelismaOff = unset ignoreMelismata
#(set-global-staff-size 21)
paper {
%#(set-global-staff-size (* 5.8 mm))
indent = #(* mm 4)
line-width = #(* mm 140)
system-system-spacing.basic-distance = #10.3
ragged-bottom = ##t
% Font settings for Cyrillic and Hebrew
% Linux Libertine fonts contain Cyrillic and Hebrew glyphs.
#(define fonts
(set-global-fonts
#:roman "Linux Libertine O,serif"
#:sans "Linux Biolinum O,sans-serif"
#:typewriter "Linux Libertine Mono O,monospace"
))
}
modernAccidentals = {
set Staff.extraNatural = ##f
set Staff.autoAccidentals = #'(Staff (same-octave . 1) (any-octave . 0))
set Staff.autoCautionaries = #'()
}
melody = relative c'' repeat volta 2 context Voice = "singer" {
time 6/8
autoBeamOff
<< s2.^markup { larger line { hspace #-3.1 Lieblich, etwas geschwind } }
R2.
>>
r4 r8 c4 g8 |
acciaccatura { f16 } e4 c8
<<
new Voice { stemUp f8. g16 }
{ stemDown f8.[ g16] } >> stemNeutral a8 |
fis4 g8 c16[ b a g] f[ e] |
d4 f8
transpose a' e' relative { a'16[ g fis! g] f![ d] } |
g4. r8 gis gis |
a4 a16.[ b32] c8[( a]) fis8 |
g4.~ 8-fermata
}
firstVerse = lyricmode {
set stanza = "1."
Sü -- ßes Licht! Aus
ignoreMelisma
gol --
ignoreMelismaOff
de -- nen Pfor -- ten brichst du __ |
sie -- gend durch __ die Nacht. Schö -- ner Tag, du __ bist er -- wacht. __
}
...
7. header {
title = "LilyPond demo"
enteredby="Han-Wen Nienhuys"
maintainer="hanwen@xs4all.nl"
texidoc = "
heavily mutilated Edition Peters Morgenlied by Schubert"
}
version "2.19.21"
#(ly:expect-warning (_ "(De)crescendo with unspecified starting volume in MIDI."))
ignoreMelisma = set ignoreMelismata = ##t
ignoreMelismaOff = unset ignoreMelismata
#(set-global-staff-size 21)
paper {
%#(set-global-staff-size (* 5.8 mm))
indent = #(* mm 4)
line-width = #(* mm 140)
system-system-spacing.basic-distance = #10.3
ragged-bottom = ##t
% Font settings for Cyrillic and Hebrew
% Linux Libertine fonts contain Cyrillic and Hebrew glyphs.
#(define fonts
(set-global-fonts
#:roman "Linux Libertine O,serif"
#:sans "Linux Biolinum O,sans-serif"
#:typewriter "Linux Libertine Mono O,monospace"
))
}
modernAccidentals = {
set Staff.extraNatural = ##f
set Staff.autoAccidentals = #'(Staff (same-octave . 1) (any-octave . 0))
set Staff.autoCautionaries = #'()
}
melody = relative c'' repeat volta 2 context Voice = "singer" {
time 6/8
autoBeamOff
<< s2.^markup { larger line { hspace #-3.1 Lieblich, etwas geschwind } }
R2.
>>
r4 r8 c4 g8 |
acciaccatura { f16 } e4 c8
<<
new Voice { stemUp f8. g16 }
{ stemDown f8.[ g16] } >> stemNeutral a8 |
fis4 g8 c16[ b a g] f[ e] |
d4 f8
transpose a' e' relative { a'16[ g fis! g] f![ d] } |
g4. r8 gis gis |
a4 a16.[ b32] c8[( a]) fis8 |
g4.~ 8-fermata
}
firstVerse = lyricmode {
set stanza = "1."
Sü -- ßes Licht! Aus
ignoreMelisma
gol --
ignoreMelismaOff
de -- nen Pfor -- ten brichst du __ |
sie -- gend durch __ die Nacht. Schö -- ner Tag, du __ bist er -- wacht. __
}
こんな楽譜ができます
...
17. ビルドツールGUB
● 公式バイナリ全8種をmake一発でビルド
● やっていること
– 必要なソースをダウンロード
● 環境構築用から依存関係からとにかくすべて
– クロスコンパイル環境を構築
● binutils, gcc, glibc, etc.
– 依存関係のあるライブラリ類をクロスコンパイル
● fontconfig, pango, freetype, ghostscript, guile, etc.
– LilyPond本体をクロスコンパイル
● 楽譜用フォントも生成
– 公式バイナリのインストーラをビルド
22. リリース履歴抜粋
● LilyPond 2.19.13 2014-08-31
● LilyPond 2.19.14 2014-09-14
● LilyPond 2.19.15 2014-09-28
– ここで停滞しはじめました
なんとかしてみよう!
(ついでにbinutilsも新しくしよう!!)
→というわけで少しずつ直し始めました
23. LilyPond 2.19.16 released February 28, 2015
At long last, we are very happy to announce the release of LilyPond 2.19.16. This release includes a number of enhancements, and contains
some work in progress. You will have access to the very latest features, but some may be incomplete, and you may encounter bugs and crashes.
If you require a stable version of Lilypond, we recommend using the 2.18 version.
We would like to acknowledge and thank Masamichi Hosoda for making this release possible with his work on updating GUB, the build tool.
約半年の沈黙を破ってリリース
ニュースに謝辞をのせていただきました
文字化けも直りました
24. その後は順調にリリース
● LilyPond 2.19.13 2014-08-31
● LilyPond 2.19.14 2014-09-14
● LilyPond 2.19.15 2014-09-28
– 約半年のブランク
● LilyPond 2.19.16 2015-02-28
● LilyPond 2.19.17 2015-03-15
● LilyPond 2.19.18 2015-04-05 以下続く
25. さいごに
● ぜひ使ってみてください
● 公式サイトにチュートリアル等あります
– http://www.lilypond.org/introduction.ja.html
– http://www.lilypond.org/manuals.ja.html
– 先人の方々のおかげで、日本語化はかなり進んでいます
– (開発版Ver. 2.19系列では)最新化されていないマニュアル
もありますが、少しずつ進めています
● おかしいなと思ったら英語版マニュアルと見比べてみてください
● オープンソースな楽譜ソースファイルもあります
– http://www.mutopiaproject.org/