LilyPondは、楽譜を彫版するためのコンピュータプログラムおよびファイル形式です。LilyPondの主な目的の一つは、楽譜が手作業で彫版されていた時代を反映した、伝統的なレイアウト規則に従って彫版された楽譜を作成することです。
LilyPondはクロスプラットフォームであり、いくつかの一般的なオペレーティングシステムで利用可能です。GNU一般公衆利用許諾契約書に基づいてリリースされたLilyPondはフリーソフトウェアであり、 GNUプロジェクトの一部です。
LilyPondプロジェクトは、1995年に共同で取り組んでいたMPP(MusiXTeX PreProcessor)プロジェクトを断念することを決めた後、 1996年にHan-Wen NienhuysとJan Nieuwenhuizenによって開始されました。 [ 7 ] [ 8 ]その名前は、Rosegardenプロジェクトと、NienhuysとNieuwenhuizenの知人であるSuzanneという名前から着想を得ており、Suzanneはヘブライ語でユリを意味します(שׁוֹשַׁנָּה)。[ 9 ]
LilyPond 1.0は1998年7月31日にリリースされ、カスタム音楽フォントFetaの開発と、LilyPondとMusiXTeXの完全な分離が特徴でした。[ 10 ]
LilyPond 2.0は2003年9月24日にリリースされ、簡略化された構文モデルと、さまざまなスタイルの音楽を記譜するためのより完全な機能セットが発表されました。[ 11 ]

LilyPondは主にC++で記述されており、拡張言語としてScheme ( GNU Guileで解釈される)を使用しているため、ユーザーによるカスタマイズが可能です。 [ 12 ]比較的大きなコードベースを持ち、2017年3月10日現在、ソースコードには60万行を超えるC++、14万行のScheme、12万行のPythonコードが含まれています。[ 13 ]
LilyPondは、音楽入力にシンプルなテキスト表記を使用し、それを一連の段階で解釈および処理します。[ 14 ]最終段階では、音楽表記がPDF(PostScript経由)またはSVGやPNGなどの他のグラフィック形式に出力されます。LilyPondは、音楽表記の出力に対応するMIDIファイルを生成することもできます。
LilyPondはテキストベースのアプリケーションであるため、楽譜作成を支援する独自のグラフィカルユーザーインターフェースは備えていません。(ただし、WindowsおよびmacOS用のテキストエディタベースの「LilyPad」GUIは、これらのシステムにデフォルトで含まれています。)しかし、LilyPondは、新規ユーザーの学習曲線を緩やかにするために、シンプルさを追求した柔軟な入力言語を備えています。LilyPondはWYSIWYMパラダイムに準拠しており、LilyPondで楽譜を組版するワークフローは、LaTeXでドキュメントを作成するワークフローと似ています。
LilyPondは実験的な楽譜表記をサポートしています。ギター機能は長三度チューニングなどの代替チューニングをサポートしています。[ 15 ]
LilyPond の主な目標は、機械的でコンピューターで生成されたように見える出力ではなく、プロが彫刻した楽譜に匹敵する出力を生成することです。LilyPond の Web サイトに掲載されている LilyPond 開発者によるエッセイでは、LilyPond が対処しているいくつかのタイポグラフィ上の問題について説明しています。[ 16 ]
LilyPondのネイティブ入力言語は包括的で、あらゆる種類のアーティキュレーション、強弱記号、拍子などを表現するために必要な多くのコマンドで構成されています。これはTeXの言語に似ています。LilyPondソースファイル内にSchemeコードを埋め込む機能により、入力言語を自由に拡張でき、アルゴリズムによる作曲を支援します。一般的な構文機能の一部を以下に示します。
%。[ 18 ]a'4は基本 A (科学的音高記譜法では A3 ) から 1 オクターブ上の A で、四分音符の長さです。[ 19 ]\time、または\slurUp)。コマンドの配置場所は、そのコマンドの機能によって決まります。たとえば、コマンドが特定の音符に固定の強弱記号を指定するために使用される場合は、その音符の後に配置されます。 [ 20 ](それぞれ)スラーの開始と終了を示します。[ 21 ]また、手動ビームの場合、[と は]ビームの範囲を示します。[ 22 ]LilyPond のPangoとのインターフェースでは、入力文字エンコーディングがUTF-8である必要があります。[ 23 ]この利点の 1 つは、同じソースファイルに複数の言語を含めることができることです。
バージョン"2.22.2"\include "english.ly"\header { title = \markup { "フィボナッチ数列からの抜粋" \italic "fibonacci" } composer = "Patrick McCarty" % copyright = \markup \fontsize #-5 % { % Copyright © 2009. % GNU LilyPondで組版。% 作曲者によりパブリックドメインに公開。% } }\paper { paper-height = 4.6 \in paper-width = 8.5 \in indent = # 0 system-count = # 2 }\score { \new PianoStaff = "pianostaff" << \new Staff = "RH" \relative c' { \accidentalStyle Score . piano \clef "treble" \time 2/4 \set Score . currentBarNumber = # 51 \tempo "Slow and steady" 4 = 60 < e gs, > 4 \acciaccatura { cs 16 [ ds ] } < e gs, > 4 | % m. 51 < ds gs, > 4 \acciaccatura { e 16 [ ds ] } < cs gs > 4 | % m. 52 < cs gs > 4 \acciaccatura { ds 16 [ cs ] } < c g > 4 | % m. 53 < cs gs > 4 \acciaccatura { ds 16 [ e ] } < es bs gs > 4 | % m. 54< e gs, > 4 \acciaccatura { cs 16 [ ds ] } e 16 f gs a | % m. 55 < gs c, > 8 \acciaccatura { as 16 [ gs ] } < es b > 8 ~ < es b > 16 ds b as | % m. 56b 16 d 8 bf 32 f' g 16 af bf c | % m. 57 < df df, > 16 ( c af ) < e' e, > ( ds b ) < g' g, > ( ds | % m. 58\time 3/4 < gs gs, > 16 ) \noBeam d, 16 f gs a 16 e f b c 16 d, ( f gs | % m. 59a 16 b ) e, ( f gs 16 b c ) f, ( gs 16 as b c ) | % m. 60 }\new Dynamics = "Dynamics_pf" { s 4 \p \< s 4 | % m. 51 s 4 s 4 | % m. 52 s 4 \mp \> s 4 | % m. 53 s 4 s 4 \! | % m. 54 s 4 \p s 4 | % m. 55 s 1 * 2/4 | % m. 56 s 4 \< s 4 | % m. 57 s 4 s 4 | % m. 58 \override DynamicText . extra-spacing-width = # ' ( -0.75 . 0.75 ) s 16 \mf s 16 \p s 8 s 4 s 4 | % m. 59 s 2. | % m. 60 }\new Staff = "LH" \relative c, { \clef "bass" \time 2/4 cs 4. cs 8 | % m. 51 cs 4. d 8 | % m. 52 f 4. a 8 | % m. 53 f 4. d 8 | % m. 54cs 4. cs 8 | % m. 55 d 4 ds | % m. 56 gs 4. bf, 8 | % m. 57 f' 4 b, | % m. 58\time 3/4 d 4. d 8 ~ d 4 | % m. 59 ef 2 f 4 | % m. 60 } >> }![]()
Lilypondは、高度にカスタマイズされた出力を作成することもできます。下の例は、カールハインツ・シュトックハウゼンのピアノ曲の短い抜粋です。
![]()

Rosegarden、NoteEdit、Canorus、Denemo、TuxGuitarなどのグラフィカルな楽譜作成ツールは、ファイルをLilyPond形式に直接エクスポートできます。Frescobaldi(Pythonで記述され、Wilbert Berendsen氏がメンテナンスを担当)やjEdit用のLilyPondToolプラグインなど、LilyPondのフロントエンドとして機能するグラフィカルアプリケーションも存在します。DenemoはLilyPondのPDF出力を表示画面に統合し、最終的な組版楽譜に対して編集操作を可能にします。
無料の楽譜コンテンツを配布するMutopia Projectは、LilyPondを使用して楽譜を組版している。共同編集型の音楽百科事典であるMusipediaも同様である。
Emacsのorg-modeには、LilyPondのスコアをドキュメントに埋め込む機能が含まれています。[ 24 ]
LibreOffice拡張機能であるOOoLilyPondは、LilyPondを呼び出して楽譜をドキュメントに埋め込む機能を提供します。[ 25 ]
Lilypond は、 Score 拡張コードを介してMediaWikiで利用できます。たとえば、これは記譜法を変換します。
<score sound= "1" > \relative c' { \key d \major fis4フィスガアグフィスドデフィスフィス4 。 e8 e2 } </スコア>の中へ

上記は、ルートヴィヒ・ヴァン・ベートーヴェンの交響曲第9番、通称「歓喜の歌」からの抜粋です。MediaWikiのウィキでは、歌詞を含むより複雑な楽譜も作成可能です。
LilyPond の音楽要素をさまざまなドキュメント形式 ( LaTeXやTexinfoなどのTeXベースのシステム、およびDocBookやHTMLページ) に統合することは、LilyPond コミュニティによって開発および保守されている付属プログラムlilypond-bookを通じてネイティブにサポートされています。 [ 26 ]これにより、ユーザーは音楽学、歌集、教育用ワークシート、学校の試験などのテキストに音楽要素を埋め込むことができます。
LaTeX文書作成システムへの統合のために、lyLuaTeX はテキスト内に音楽要素を埋め込む LuaLaTeX パッケージとして開発されました。これには、音楽要素のレイアウトと外観を周囲のテキスト文書に合わせる機能が含まれています。[ 27 ]音楽要素は、音楽記号、歌詞、ギターコード図、リードシート、音楽抜粋、ギタータブ譜、または複数ページの楽譜で構成されます。
FinaleとSibeliusは、LilyPondと比較されることが多い2つの商用楽譜作成ソフトです。LilyPondユーザーのAndrew Hawrylukは、FinaleとLilyPondの出力品質を比較した一連の記事を執筆しました。[ 28 ]
LilyPondと同等の機能を備えた楽譜作成ソフトとしてSCOREがありますが、SCOREはLilyPondよりも手動での位置決めに大きく依存しています。
スコアライターの比較も参照してください。