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 ではこれだけの楽器が指定できるようだ。 翻訳は、 GM 規格の音色番号と楽器名 (www.synapse.ne.jp)などから参照できる。 楽器名の前にある番号は、abcjs で %%MIDI ディレクティブで楽器を指定するときに使う数字である。
0. acoustic grand 43. contrabass lead 7 (fifths) 1. bright acoustic 44. tremolo strings lead 8 (bass+lead) 2. electric grand 45. pizzicato strings pad 1 (new age) 3. honky-tonk 46. orchestral harp pad 2 (warm) 4. electric piano 1 47. timpani pad 3 (polysynth) 5. electric piano 2 48. string ensemble 1 pad 4 (choir) 6. harpsichord 49. string ensemble 2 pad 5 (bowed) 7. clav 50. synthstrings 1 pad 6 (metallic) 8. celesta 51. synthstrings 2 pad 7 (halo) 9. glockenspiel 52. choir aahs pad 8 (sweep) 10. music box 53. voice oohs fx 1 (rain) 11. vibraphone 54. synth voice fx 2 (soundtrack) 12. marimba 55. orchestra hit fx 3 (crystal) 13. xylophone 56. trumpet fx 4 (atmosphere) 14. tubular bells 57. trombone fx 5 (brightness) 15. dulcimer 58. tuba fx 6 (goblins) 16. drawbar organ 59. muted trumpet fx 7 (echoes) 17. percussive organ 60. french horn fx 8 (sci-fi) 18. rock organ 61. brass section sitar 19. church organ 62. synthbrass 1 banjo 20. reed organ 63. synthbrass 2 shamisen 21. accordion 64. soprano sax koto 22. harmonica 65. alto sax kalimba 23. concertina 66. tenor sax bagpipe 24. acoustic guitar (nylon) 67. baritone sax fiddle 25. acoustic guitar (steel) 68. oboe shanai 26. electric guitar (jazz) 69. english horn tinkle bell 27. electric guitar (clean) 70. bassoon agogo 28. electric guitar (muted) 71. clarinet steel drums 29. overdriven guitar 72. piccolo woodblock 30. distorted guitar 73. flute taiko drum 31. guitar harmonics 74. recorder melodic tom 32. acoustic bass 75. pan flute synth drum 33. electric bass (finger) 76. blown bottle reverse cymbal 34. electric bass (pick) 77. shakuhachi guitar fret noise 35. fretless bass 78. whistle breath noise 36. slap bass 1 79. ocarina seashore 37. slap bass 2 80. lead 1 (square) bird tweet 38. synth bass 1 81. lead 2 (sawtooth) telephone ring 39. synth bass 2 82. lead 3 (calliope) helicopter 40. violin 83. lead 4 (chiff) applause 41. viola 84. lead 5 (charang) gunshot 42. cello 85. 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 : 雑多な話題