1 #LyX 2.1 created this file. For more info see http://www.lyx.org/
6 \use_default_options true
10 \maintain_unincluded_children false
12 \language_package default
13 \inputencoding utf8-platex
19 \font_default_family default
20 \use_non_tex_fonts false
26 \default_output_format pdf
28 \bibtex_command default
29 \index_command default
30 \paperfontsize default
33 \pdf_title "LilyPond-book and LyX"
34 \pdf_author "The LyX Team"
36 \pdf_bookmarksnumbered true
37 \pdf_bookmarksopen true
38 \pdf_bookmarksopenlevel 1
43 \pdf_pdfusetitle false
44 \pdf_quoted_options "linkcolor=blue,urlcolor=blue,pdfstartview=XYZ"
47 \use_package amsmath 1
48 \use_package amssymb 1
51 \use_package mathdots 1
52 \use_package mathtools 0
54 \use_package stackrel 0
55 \use_package stmaryrd 0
56 \use_package undertilde 0
58 \cite_engine_type default
62 \paperorientation portrait
76 \paragraph_separation indent
77 \paragraph_indentation default
78 \quotes_language english
81 \paperpagestyle default
82 \tracking_changes false
103 \begin_layout Abstract
104 この文書は、LyX文書への楽譜片の取り込み方の説明と例示を行います。記譜法としては、LilyPond文法を用い、処理にはLilyPond-bookユーティリティ
108 \begin_layout Section
112 \begin_layout Standard
113 LilyPondは、コンピュータで生成した美しい音楽スコアを生成することを可能にするオープンソースプロジェクトです。このプロジェクトには、テキストベースの記譜言
114 語と、この記譜法を音楽スコアに変換するプログラムが含まれています。
117 \begin_layout Standard
118 LilyPond自身も、タイトルや作者情報、脚注、巻末注などの表示をサポートしていますが、主な目的はあくまで楽譜の組版です。文章の組版には、一般的に云って、他の
119 プログラムの方が向いています。LilyPond-bookは、LilyPond記譜法を使った音楽スコアを、なかんずくLaTeX文書に組み込むことを補助するための、
120 LilyPondプロジェクトが提供するユーティリティです。
123 \begin_layout Standard
124 この文書は、LaTeXベースのレイアウトを用いたLyX文書中で、LilyPond記譜法を用いることで、LaTeXとLilyPondの両方を結びつけて実現される、
125 美しく高品質な組版を得る方法を説明します。記譜のために、LiliPond文法の基本を理解していることが必要ですが、LyXを使用している限りはLaTeXの知識は必
129 \begin_layout Standard
131 \begin_inset CommandInset ref
133 reference "sec:LilyPondコードを使用"
137 節は、必要要件と使用法、LyX中でLiliPond記譜法を用いることの短所を説明します。第
138 \begin_inset CommandInset ref
140 reference "sec:LilyPond-examples"
144 節は、いくつかの例を用いて、その組版の美しさと品質をお見せします。
147 \begin_layout Section
148 LyX中でLilyPondコードを使用する
149 \begin_inset CommandInset label
151 name "sec:LilyPondコードを使用"
158 \begin_layout Standard
159 使用中の文書に、LilyPondモジュールを追加すると、LyXでのLilyPond記譜法(LilyPondコード)のサポートが有効になります。これは、
161 文書\SpecialChar \menuseparator
164 メニューを開いて、モジュール一覧からLilyPondを選択することで、実現できます。LaTeXベースのLyXレイアウトはどれでも使うことができ、通常のプレビュー
165 や書き出し機構も使用できます。LyXは、LaTeX/LilyPond混在コードを、LilyPond-bookを用いて処理してくれます。LilyPond-book
166 は、DocBookやHTML文書も扱うことができますが、これらの文書型をLilyPond-bookとLyXに統合することは、今のところ実現していません。
169 \begin_layout Subsection
173 \begin_layout Standard
174 LilyPond-book第2.13版以降。
178 \begin_layout Plain Layout
179 LilyPond-bookは、第2.1版以降で、LaTeX出力をサポートしていますが、PDFLaTeXサポート(第2.9版以降)や、
187 フラグ(第2.13版以降)など、LyXが使用する機能の一部は、それよりも最近の版でしか利用することができません。
195 \begin_layout Subsection
199 \begin_layout Standard
200 本モジュールは、LilyPond差込枠を提供しており、
202 挿入\SpecialChar \menuseparator
205 メニューで挿入することができます。この差込枠は、LilyPondコードを入力するためのもので、このコードが楽譜に組まれることになります。まずは、簡単な音階から始
209 \begin_layout Standard
210 \begin_inset Flex LilyPond
213 \begin_layout Plain Layout
215 \begin_inset Argument 1
218 \begin_layout Plain Layout
227 \begin_layout Plain Layout
234 \begin_layout Plain Layout
239 \begin_layout Plain Layout
249 \begin_layout Standard
251 上記のLyX差込枠は、以下のようなLaTeX様のコードを生成します。
254 \begin_layout LyX-Code
257 begin{lilypond}[staffsize=28]
260 \begin_layout LyX-Code
264 \begin_layout LyX-Code
270 \begin_layout LyX-Code
274 \begin_layout LyX-Code
278 \begin_layout LyX-Code
284 \begin_layout Standard
285 最初の角括弧の中に書かれているのは、LilyPond-bookに渡すオプションです。これは、LyX中では、LilyPond差込枠を挿入したときと同じように、
289 メニューから挿入されたものです。ここでは、譜表(staff)の大きさを28
290 \begin_inset space \thinspace{}
295 [staffsize=28,verbatim]
297 のように、コンマで区切れば、他のオプションを追加することができます。譜表オプションの一覧は、LilyPond説明書の中にあります。既定の設定が欲しい場合には、角
298 括弧ブロック全体を省略することができます。
301 \begin_layout Standard
302 オプションブロックの後に来るのは、LilyPond文法で書かれた楽譜片の文字表記です。このコードは、実はLaTeXが処理するのではなく、LilyPond-boo
303 kが前処理を行います。LilyPond-bookは、グラフィックファイルを生成し、このコード部分を置き換えた
307 includegraphics{\SpecialChar \ldots{}
310 コマンドが、このファイルをLaTeX文書に取り込みます。
313 \begin_layout Standard
316 LyX\SpecialChar \menuseparator
317 LilyPond-book\SpecialChar \menuseparator
320 のようになります。LyXは.lytexファイルを生成し、次にLilyPond-bookが.texファイルと付随する画像ファイルを生成し、最後にLaTeXが最終文書を
321 生成します。ツール連鎖の各段階では、あなたが選択した配置方法に従います。つまり、楽譜片を行内に配置するか、独立した段落にするか、中央揃えか左揃えか等々、LyXウ
322 ィンドウ内での表示のされ方は、出力書式でも尊重されます。行内での使用の例としては、
323 \begin_inset Flex LilyPond
326 \begin_layout Plain Layout
328 \begin_inset Argument 1
331 \begin_layout Plain Layout
350 のようにコード名を表示したい場合や、非常に短い楽譜片を表示したい時などが挙げられます。
353 \begin_layout Subsection
357 \begin_layout Standard
358 記譜がどのように見えるかについては、LyX内で直接フィードバックを得ることができます。そのためには、LilyPond差込枠を、
360 挿入\SpecialChar \menuseparator
363 メニューを使って得られるプレビュー差込枠の中に入れなくてはなりません。これは、以下のように、LyX内での表示に影響するだけで出力には関係しません。
366 \begin_layout Standard
369 \begin_layout Standard
370 \begin_inset Flex LilyPond
373 \begin_layout Plain Layout
380 \begin_layout Plain Layout
385 \begin_layout Plain Layout
400 \begin_layout Standard
401 残念ながら、プレビューがそれほど即座に表示されないことに気づかれるかもしれません。コンパイルを開始するには、カーソルをプレビュー差込枠の外にカーソルを出す必要が
402 あり、さらに、処理には数秒の時間がかかり得ます。しかしながら、編集中に、直接フィードバックを得ることには相応の価値があり、文書内の移動を非常に楽にします。
405 \begin_layout Subsection
409 \begin_layout Standard
410 ここでは、LilyPond-bookとLyXを統合する上で経験された認識のいくつかを紹介します。
413 \begin_layout Subsubsection
417 \begin_layout Standard
418 LilyPondモジュールを用いたLyX文書は、「Input」法を用いた子文書を持つことができません。
420 挿入\SpecialChar \menuseparator
421 ファイル\SpecialChar \menuseparator
424 において、「取り込みの型」として「Input」を選択すると、出力を生成する際にエラーが発生します。これは、LilyPond-bookが、これらのインプットファイ
425 ルを、自動で再帰的に処理してしまうせいです。現在のところ、LilyPond-bookには、この挙動を停止するコマンドラインオプションは存在しないので、代わりに「
426 Include」法を使用することを推奨致します。
429 \begin_layout Standard
430 なお、LilyPondモジュールを使用していない親文書に、LilyPondモジュールを使用した子文書を挿入することは、「Input」法でも「Include」法で
433 文書\SpecialChar \menuseparator
439 \begin_layout LyX-Code
445 \begin_layout Standard
449 \begin_layout Subsubsection
453 \begin_layout Standard
454 LilyPond-bookは、コードが楽譜片に過ぎないかどうかを確かめるために、LilyPond-book
466 コマンドを検索します。LilyPondコマンドを全く入れないことも可能ですが、その場合には{囲み波括弧}が必要です。したがって、下記のコード
469 \begin_layout LyX-Code
475 \begin_layout LyX-Code
481 \begin_layout LyX-Code
487 \begin_layout Standard
488 では、LilyPond-bookは、以下のように混乱してしまいます。
491 \begin_layout LyX-Code
492 error: syntax error, unexpected NOTENAME_PITCH
495 \begin_layout LyX-Code
501 \begin_layout Standard
502 囲み波括弧を用いれば、下記のようにうまく行きます。
505 \begin_layout Standard
508 \begin_layout Standard
509 \begin_inset Flex LilyPond
512 \begin_layout Plain Layout
514 {ais' f'' g' e''} % no
529 \begin_layout Standard
530 LilyPondコマンドを使用せずに、波括弧内に直接音符を書くと、短い楽譜片を書く場合に便利です。熟練ユーザーは、おそらく、楽曲をLilyPond変数やコマンド
531 を使用して入力したいものと思われますが、もちろんその方法もサポートされています。
534 \begin_layout Subsubsection
538 \begin_layout Standard
545 マークアップコマンドを用いた、連続したLilyPond楽譜片についてです。
548 \begin_layout LyX-Code
554 \begin_layout LyX-Code
559 fret-diagram-terse #"x;3;2;o;1;o;" }
562 \begin_layout LyX-Code
568 \begin_layout LyX-Code
572 \begin_layout LyX-Code
578 \begin_layout LyX-Code
583 fret-diagram-terse #"x;x;o;2;3;2;" }
586 \begin_layout LyX-Code
592 \begin_layout Standard
593 何らかの理由で、LilyPond-book第2.13版は、これを安全モードで走らせると(意図を理解していない限り、つねにこうするべきです)、文句を云います。これは
594 第2.15版の時点では修正されています(LilyPond issue #1900にファイルされています)。
597 \begin_layout Subsubsection
607 \begin_layout Standard
614 コマンドによって、外部ファイルに存在するLilyPondコードを取込むことをサポートしています。このコマンドによって、LilyPondコードは、文書内で打ち込ま
615 れたかのように処理され、出力スコアは、行幅・改頁等、LaTeXが定める組版に従います。これは、LyXに長らく存在する、LilyPondスコアを外部素材として取り
616 込む機能とは対照的です。そこでは、外部ファイルを処理するのにLilyPondを呼び出し、固定した画像を生成した上で、文書中にこの画像を取り込んでいたので、組版の
617 決定はLilyPondに委ねられていました。残念ながら、LyXでの
623 コマンドのサポートは、まだ実装されていませんが、望むファイルへの完全な絶対パスを与えるということさえ守れば、TeXコードブロック中でこれを使用することは可能です
627 \begin_layout Section
629 \begin_inset CommandInset label
631 name "sec:LilyPond-examples"
638 \begin_layout Standard
640 \begin_inset CommandInset ref
642 reference "sub:Editorial-headword"
646 は、LilyPond要素を多用した複雑なスコアです。安全モードで実行できるように、この楽譜片のオリジナルソースからは、スキームコードの一部が取り除かれています。
648 \begin_inset CommandInset ref
650 reference "sub:タブ譜のひな型"
654 は、ギター奏者に魅力的なLilyPondの出力を示しています。
657 \begin_layout Subsection
659 \begin_inset CommandInset label
661 name "sub:Editorial-headword"
668 \begin_layout Standard
669 NR 1.7 編註 ベートーヴェン作品31-3 ピアノソナタ第18番 第2楽章 スケルツォ 第9--14小節
672 \begin_layout Standard
677 \begin_layout Standard
678 \begin_inset Flex LilyPond
681 \begin_layout Plain Layout
688 \begin_layout Plain Layout
693 \begin_layout Plain Layout
698 \begin_layout Plain Layout
705 \begin_layout Plain Layout
712 \begin_layout Plain Layout
721 \begin_layout Plain Layout
728 \begin_layout Plain Layout
732 set Staff.fingeringOrientations = #'(up)
735 \begin_layout Plain Layout
739 set Score.currentBarNumber = #9
742 \begin_layout Plain Layout
749 \begin_layout Plain Layout
756 \begin_layout Plain Layout
761 \begin_layout Plain Layout
765 set doubleSlurs = ##t
768 \begin_layout Plain Layout
773 \begin_layout Plain Layout
780 \begin_layout Plain Layout
787 \begin_layout Plain Layout
796 \begin_layout Plain Layout
801 \begin_layout Plain Layout
808 \begin_layout Plain Layout
813 \begin_layout Plain Layout
818 \begin_layout Plain Layout
825 \begin_layout Plain Layout
832 \begin_layout Plain Layout
837 \begin_layout Plain Layout
842 \begin_layout Plain Layout
847 \begin_layout Plain Layout
853 override Script #'script-priority = #-100
856 \begin_layout Plain Layout
863 \begin_layout Plain Layout
874 \begin_layout Plain Layout
879 \begin_layout Plain Layout
884 \begin_layout Plain Layout
889 \begin_layout Plain Layout
894 \begin_layout Plain Layout
901 \begin_layout Plain Layout
908 \begin_layout Plain Layout
913 \begin_layout Plain Layout
918 \begin_layout Plain Layout
923 \begin_layout Plain Layout
928 \begin_layout Plain Layout
933 \begin_layout Plain Layout
938 \begin_layout Plain Layout
945 \begin_layout Plain Layout
954 \begin_layout Plain Layout
961 \begin_layout Plain Layout
965 override Fingering #'direction = #down
968 \begin_layout Plain Layout
972 set Staff.fingeringOrientations = #'(down)
975 \begin_layout Plain Layout
982 \begin_layout Plain Layout
989 \begin_layout Plain Layout
993 set doubleSlurs = ##t
996 \begin_layout Plain Layout
1001 \begin_layout Plain Layout
1008 \begin_layout Plain Layout
1015 \begin_layout Plain Layout
1022 \begin_layout Plain Layout
1029 \begin_layout Plain Layout
1034 \begin_layout Plain Layout
1038 set doubleSlurs = ##f
1041 \begin_layout Plain Layout
1046 \begin_layout Plain Layout
1051 \begin_layout Plain Layout
1058 \begin_layout Plain Layout
1065 \begin_layout Plain Layout
1070 \begin_layout Plain Layout
1075 \begin_layout Plain Layout
1080 \begin_layout Plain Layout
1087 \begin_layout Plain Layout
1098 \begin_layout Plain Layout
1103 \begin_layout Plain Layout
1108 \begin_layout Plain Layout
1113 \begin_layout Plain Layout
1118 \begin_layout Plain Layout
1125 \begin_layout Plain Layout
1132 \begin_layout Plain Layout
1137 \begin_layout Plain Layout
1142 \begin_layout Plain Layout
1147 \begin_layout Plain Layout
1152 \begin_layout Plain Layout
1157 \begin_layout Plain Layout
1171 \begin_layout Standard
1174 \begin_inset Flex URL
1177 \begin_layout Plain Layout
1179 http://lsr.dsi.unimi.it/LSR/Item?id=627
1184 より。スキームコードは削除。段落設定で中央揃えに。]
1187 \begin_layout Subsection
1189 \begin_inset CommandInset label
1198 \begin_layout Standard
1199 \begin_inset Preview
1201 \begin_layout Standard
1202 \begin_inset Flex LilyPond
1205 \begin_layout Plain Layout
1212 \begin_layout Plain Layout
1218 \begin_layout Plain Layout
1223 \begin_layout Plain Layout
1230 \begin_layout Plain Layout
1235 \begin_layout Plain Layout
1240 \begin_layout Plain Layout
1247 \begin_layout Plain Layout
1254 \begin_layout Plain Layout
1258 new Staff = "guitar" <<
1261 \begin_layout Plain Layout
1265 context Voice = "upper guitar" {
1274 \begin_layout Plain Layout
1278 context Voice = "lower guitar" {
1287 \begin_layout Plain Layout
1292 \begin_layout Plain Layout
1296 new TabStaff = "tab" <<
1299 \begin_layout Plain Layout
1303 context TabVoice = "upper tab" {
1312 \begin_layout Plain Layout
1316 context TabVoice = "lower tab" {
1325 \begin_layout Plain Layout
1330 \begin_layout Plain Layout
1335 \begin_layout Plain Layout
1350 \begin_layout Standard
1353 \begin_inset Flex URL
1356 \begin_layout Plain Layout
1358 http://lsr.dsi.unimi.it/LSR/Item?id=634