音楽の話 (19)

Lilypond: テキストから楽譜を出力するソフトウェア

Posted:

LilyPond - music notation for everyone

独自の文法で書いたテキストファイルから、楽譜を出力するソフトウェア。

今までは TuxGuitar という GUI アプリを使っていたが、マウスでの操作が面倒なこと、差分の管理ができない (やりにくい) ことに不満を感じていた。 また、グリッサンドやタイを書くのも面倒で、思ったとおりに書けないことも多々あった (やり方を知らないだけかもしれないが)。

LilyPond ではそうした不満は一切ない。 思ったとおりに書けるし、扱うファイルは拡張子こそ違えど (.ly) ただのテキストファイルなので差分の管理もかんたんだ。 楽譜は PDF, SVG, PNG, PostScript のフォーマットで出力できる。

\version "2.24.4"

\header {
  title = "Sample"
  composer = "inkch"
}

bass = {
  \time 4/4
  \set TabStaff.minimumFret = #7

  c, e, d, f, e, g, f, a, g, b, a, c b, d c2
  e4 c d b, c a, b, g, a, f, g, e, f, d, c,2
}

% Output
\score {
  <<
    %% Uncomment below if needs staff
    \new Voice {
      \clef "bass_8"
      \bass
    }
    \new TabStaff \with {
      stringTunings = #bass-tuning
      restrainOpenStrings = ##t
      minimumFret = 0
    } {
      \clef "moderntab"
      \tabFullNotation
      \bass
    }
  >>

  \layout {
    \context {
      \Score
      \override Glissando.minimum-length =  3
      \override Glissando.springs-and-rods = #ly:spanner::set-spacing-rods
      \override Glissando.thickness = 2
      \override PercentRepeat.thickness = 0.2
      \override RepeatSlash.thickness = 0.1
      \omit StringNumber
    }
  }
}

\paper {
  left-margin = 12
  right-margin = 12
}

とっつきにくいとは思う。

文法を学ぶ必要があるし、編集・閲覧にはそれぞれ別のソフトウェアが必要になる。 MIDI を出力することもできるが再生することはできないので、やはり別のソフトウェアが必要になる。 TuxGuitar やその他の GUI アプリケーションのような、「楽譜を書くためのソフト」ではないのである。

しかし、だからこそ LilyPond は素晴らしい。 編集・閲覧・MIDI の再生に別のソフトウェアを使うということは、ユーザーに選択の自由があるということだ。 また、楽譜の出力に特化しているからこそ、音符、記号、文字の色や太さ、余白などなどあらゆるカスタマイズができる。 そうしたカスタマイズのためにあちこちクリックする必要はなくて、丁寧に書かれたマニュアルを読めば良い (テキストが主体なのでマニュアルの検索性は抜群だ)。

オールインワンなソフトウェアにはない柔軟性と、単機能ゆえの高機能が LilyPond の魅力だ。