Lilypond : 雑多な話題 |
作成日:2007-09-23 最終更新日: |
Lilypond の基本は他のページを参照していただくとして、 今回は自分が迷ってしまったところを打ち明けます。
1オクターブ上げるときには、8va...... と書かれる、あれである。
Ver 2.12 から次のようになった。
%% 1オクターブ上げる
\ottava #1
(ここに記述)
%% もとに戻す
\ottava #0
%% ...
%% 1オクターブ下げる
(ここに記述)
\ottava #-1
%% もとに戻す
\ottava #1
つのふえ さんのご教授に感謝する。
コントラバスのように、実音より1オクターブ高く記譜される楽器がある。
言い換えれば、記譜より実音は1オクターブ低い。
普通に記譜すると、生成される MIDI がオクターブ高くなってしまう。
これを防ぐためには、音部記号(クレフ)で調整するのがよい。
\clef "bass_8"
これは、ヘ音記号で実音は記譜より1オクターブ低いことを表す。
逆に、実音が記譜より1オクターブ高い楽器、たとえばピッコロなどは、
次のように書くとよい。
\clef "treble^8"
通常小節番号は変更する必要はない。しかし、1カッコ、2カッコなどを書くと、
ずれることがある。このときは小節番号を強制的に変更する。ある小節を
50小節としたいときは、次の文を挿入する。
\set Score.currentBarNumber = #50
通常、臨時記号はよきに計らって Lilypond が付けてくれる。 しかし、本来臨時記号が必要でない個所でも、 注意の意味(または親切の意味)で臨時記号を付ける場合がある。 たとえば、前の小節で付けていたcシャープが、現在の小節では必要ない場合、 記法としては現在のcにナチュラルを記す必要はない。 しかし、通常見る楽譜は、最初の音だけシャープがありませんよ、 という親切心を出すために、ナチュラルを記す場合がほとんどだ。 この場合は、c! という、びっくりマークを入れる。
なお、控えめにカッコに入れた臨時記号を書きたい場合は、c?とする。
水平方向間隔を調整したい場合は、
base-shortest-duration
プロパティを用いる。
lilypond 2.12 マニュアル (lilypond.org/)
全休符は、r ではなく、R を用いる。4/4拍子の全休符はR1、 3/4拍子の全休符は R2. である。 全休符にしないと、休符記号が左によってしまう。
三連符は次のように表記する。
\times 2/3 {c d e}
三連符の数字を消すには次のように表記する。
\override TupletNumber #'transparent = ##t
これを行うと三連符の枠(括弧)も消えるのだが、
休符を挟む三連符だと枠が消えない。これを強制的に消すには、次のようにする。
\override TupletBracket #'transparent = ##t
|を使って小節をチェックする方法を用いると、 小節をまたがるスラーのコンパイルでエラーが出ることがある。
C:/home/maruyama/hogehoge.ly:26:8: error: syntax error, unexpected '('
(d4 f bes) |
これが出る理由は、左閉カッコと | の位置がずれているからである。
つまり、
のように書くと、エラーが出る。次のように書けばよい。
複数小節の休み (multi measure rests) を表示するには、
\set Score.skipBars = ##t
を指定して、
R1*17 R1*4
などとする。
最後に著作権表示をしたいときには、 「copyright」という要素がある。 copyright は、最初のページの下段に表示される。 いくつか楽譜を見てみると、確かに著作権表示は曲の最初にある。
一方、tagline という要素がある。こちらは最後のページの下段に表示される。
デフォルト状態では、
「この楽譜はlilypondでかかれました」のような文章が自動で挿入される。
'Music engraving by LilyPond 2.12.2.www.lilypond.org'
そのため、この表記を消すために、taglineは##fにしておくとよい。
\set Score.tagline = ##f
もし、積極的に書きたければ、
\header {} の {} の中に、
tagline = "hogehoge"
と書く。
なお、曲の最後のみにつける表記は、あまり例がない。 フランスのデュラン版などでは楽譜の最後のページに情報が書かれていることがある。
copyright と tagline については、 つのふえ さんからのご教授を受けた。 感謝します。
MIDI ファイルを作るときは、\midi 手続きを使う。
\score {
...楽譜記述...
\layout { }
\midi {
\context {
\Score
tempoWholesPerMinute = #(ly:make-moment 120 4)
}
}
}
tempoWholesPerMinute の右辺にある 120 4 は、4分音符でメトロノームの速さが120であることを表す。
MIDIファイルの作成 (lilypond.org、英語) 参照。
現在、Lilypond ではこれだけの楽器が指定できるようだ。 翻訳は、MIDI楽器名一覧表(www2u.biglobe.ne.jp)などから参照できる。
acoustic grand contrabass lead 7 (fifths) bright acoustic tremolo strings lead 8 (bass+lead) electric grand pizzicato strings pad 1 (new age) honky-tonk orchestral harp pad 2 (warm) electric piano 1 timpani pad 3 (polysynth) electric piano 2 string ensemble 1 pad 4 (choir) harpsichord string ensemble 2 pad 5 (bowed) clav synthstrings 1 pad 6 (metallic) celesta synthstrings 2 pad 7 (halo) glockenspiel choir aahs pad 8 (sweep) music box voice oohs fx 1 (rain) vibraphone synth voice fx 2 (soundtrack) marimba orchestra hit fx 3 (crystal) xylophone trumpet fx 4 (atmosphere) tubular bells trombone fx 5 (brightness) dulcimer tuba fx 6 (goblins) drawbar organ muted trumpet fx 7 (echoes) percussive organ french horn fx 8 (sci-fi) rock organ brass section sitar church organ synthbrass 1 banjo reed organ synthbrass 2 shamisen accordion soprano sax koto harmonica alto sax kalimba concertina tenor sax bagpipe acoustic guitar (nylon) baritone sax fiddle acoustic guitar (steel) oboe shanai electric guitar (jazz) english horn tinkle bell electric guitar (clean) bassoon agogo electric guitar (muted) clarinet steel drums overdriven guitar piccolo woodblock distorted guitar flute taiko drum guitar harmonics recorder melodic tom acoustic bass pan flute synth drum electric bass (finger) blown bottle reverse cymbal electric bass (pick) shakuhachi guitar fret noise fretless bass whistle breath noise slap bass 1 ocarina seashore slap bass 2 lead 1 (square) bird tweet synth bass 1 lead 2 (sawtooth) telephone ring synth bass 2 lead 3 (calliope) helicopter violin lead 4 (chiff) applause viola lead 5 (charang) gunshot cello lead 6 (voice)
強弱記号に、fp というものがある。これは、フォルテ(f)を出してすぐにピアノ(p)にすることを表す。 シベリウスの作品に、mfp がある。これはメゾフォルテを出して、すぐにピアノにすることである。 ところが、Lilypond では fp は \fp という記法で出せるが mfp は \mfp という記号では出せない。 mfp を出すためには、自分で定義する。
mfp = #(make-dynamic-script "mfp")
c\mfp
スラー記号が二重に書かれていることがある。 このときは、単にかっこを入れ子にしてもうまくいかない。 Lilypond では、小さなスラーをレガートスラー、 大きなスラーをフレージングスラーとして区別している。 フレージングスラーは、\( で始め、\) で終わる。 こうすれば、二重のスラーが書ける。
ly ファイルから pdf ファイルを作るには、make コマンドを使うとよい。 このとき、makefile で拡張子を指定する。
.ly.pdf :
lilypond $<
.SUFFIXES : .pdf .png .ly
以上の準備をして、make bach-concerto5-vn1.pdf とすれば、 lilypond bach-concerto5-vn1.ly が起動する。
記述時間の見当をつけるとよい。私の場合、 バッハのチェンバロ協奏曲第5番の第1楽章で、 第1ヴァイオリンのパート譜作成に、2小節で10秒要することがわかった。
練習記号(リハーサルマーク)と小節線上のフェルマータを同時に出すにはどうすればよいか。
練習記号は次の通り。
\mark \default
小節線上のフェルマータは次の通り。
\mark \markup { \musicglyph #"scripts.ufermata" }
これを続けてかくことはできない。
\mark \markup { \musicglyph #"scripts.ufermata" } \mark \default
こう書くと、次のウォーニングが出てあとのほうが無視される
warning: Two simultaneous mark events, junking this one
\mark をまとめて書いてもやはりできない。
\mark \default \markup { \musicglyph #"scripts.ufermata" }
C:/home/maruyama/scores/lilypond_test.ly:9:15: error: syntax error, unexpected \markup
\mark \default
\markup { \musicglyph #"scripts.ufermata" }
そこで、hogehoge さんから教授いただいた方法で解決した。hogehoge さんに感謝する。 方法を下に示す。
\time 4/4
c1 \mark \default
c1 \mark \markup { \center-align { \bold B \musicglyph #"scripts.ufermata" } }
c1 \mark #3
c1
この方法は、フェルマータはmusicglyph により設定するが、練習記号は直接字を太字で表記する、 ということである。これにより、mark の順番を調整する必要があるので、c1 \mark #3 が必要となる。
\paper {
between-system-space = 10.5\cm
}
\score {
・・・
}
とする。上記方法を指摘してくださった hogehoge さんに感謝する。
いまのところありません。
まりんきょ学問所 > コンピュータの部屋 > マーク付け言語手習い > Lilypond : 雑多な話題