X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=Documentation%2Fja%2Fnotation%2Fspacing.itely;h=dad396f71759151a88fc30d341035d568c69d071;hb=c9726c410b1e7be35283b20e1f8719d272057f14;hp=3c3c94f776c2ef8b330b70d488b46ffcedaddbff;hpb=f93e4199873c91ae32f0e84a610d14853dc379df;p=lilypond.git diff --git a/Documentation/ja/notation/spacing.itely b/Documentation/ja/notation/spacing.itely index 3c3c94f776..dad396f717 100644 --- a/Documentation/ja/notation/spacing.itely +++ b/Documentation/ja/notation/spacing.itely @@ -1,14 +1,14 @@ @c -*- coding: utf-8; mode: texinfo; documentlanguage: ja -*- @ignore - Translation of GIT committish: 0af52987f3694217fa81c29bd4fdc0443d2fac49 + Translation of GIT committish: cc3b9e1430f4cc9c54da7252e504f3d274a7ea17 When revising a translation, copy the HEAD committish of the version that you are working on. For details, see the Contributors' Guide, node Updating translation committishes.. @end ignore -@c \version "2.14.0" +@c \version "2.19.22" @c Translators: Yoshiki Sawada @@ -35,7 +35,7 @@ staff lines." Could we add a sentence: "Use instead the pair fontSize = #@var{N} - \override StaffSymbol #'staff-space = #(magstep + \override StaffSymbol.staff-space = #(magstep @var{N}) inside the Staff context to change the size of the font and the distance between @@ -107,16 +107,16 @@ http://code.google.com/p/lilypond/issues/detail?id=68 オプションについて説明します。 @menu -* \paper ブロック:: +* paper ブロック:: * 紙面サイズと自動拡縮:: -* 固定された垂直方向の \paper スペース変数:: -* 可変な垂直方向の \paper スペース変数:: -* 水平方向の \paper スペース変数:: -* 他の \paper 変数:: +* 固定された垂直方向の paper スペース変数:: +* 可変な垂直方向の paper スペース変数:: +* 水平方向の paper スペース変数:: +* 他の paper 変数:: @end menu -@node \paper ブロック +@node paper ブロック @subsection @code{\paper} ブロック @translationof The \paper block @@ -214,72 +214,85 @@ Scheme を用いて @code{\paper} の値を定義することも可能です。@ @node 紙面サイズを設定する @unnumberedsubsubsec 紙面サイズを設定する -@translationof Setting paper size +@translationof Setting the paper size 紙面サイズを変更するために 2 つの関数が利用可能です: @code{set-default-paper-size} と @code{set-paper-size} です。 @code{set-default-paper-size} は最上位スコープに配置する必要があり、@c and @code{set-paper-size} は @code{\paper} ブロックの中に@c 配置する必要があります: +@q{A4} が紙面サイズを明示的に設定しなかった場合のデフォルト値です。@c +しかしながら、デフォルト値を変更するために使うことができる関数が 2 つあります。@c +1 つは @code{set-default-paper-size} です: @example -#(set-default-paper-size "a4") +#(set-default-paper-size "quarto") @end example +この関数は常に最上位スコープに配置する必要があります。@c +もう 1 つは @code{set-paper-size} です: + @example \paper @{ - #(set-paper-size "a4") + #(set-paper-size "tabloid") @} @end example -@noindent -最上位スコープにおいて、@c -@code{set-default-paper-size} 関数はどこにあっても@c -最初の @code{\paper} ブロックより先に安全に呼び出されます。@c -@code{\paper} ブロック内において、@c -最も安全に @code{set-paper-size} を呼び出せる場所はブロックの先頭、@c -変数宣言の上です。@c -この理由は、@ref{紙面サイズに応じた自動拡縮} で説明しています。 - -@code{set-default-paper-size} はすべてのページのサイズをセットします。@c -一方、@code{set-paper-size} は、@c -その @code{\paper} ブロックが適用されたページのサイズのみをセットします。@c -例えば、@code{\paper} ブロックがファイルの先頭にある場合、@c -その紙面サイズはすべてのページに適用されます。@c -@code{\paper} ブロックが @code{\book} の中にある場合、@c -紙面サイズはその book にのみ適用されます。 - -@code{a4}, @code{letter}, @code{legal}, それに @code{11x17} -(タブロイド サイズとも呼ばれます) -などの一般的な紙面サイズを利用することができます。@c -さらに多くの紙面サイズがデフォルトでサポートされています。@c -詳細は @file{scm/paper.scm} を参照して、@c -@code{paper-alist} の定義を探してください。 - -@c TODO add a new appendix for paper sizes (auto-generated) -pm - -@warning{デフォルトの紙面サイズは @code{a4} です。} - -初期ファイル @file{scm/paper.scm} の中にある -@code{paper-alist} の定義を編集することにより、@c -紙面サイズを追加することができます。@c -しかしながら、追加した紙面サイズは、@c -その後のインストールにより上書きされてしまいます。 - -@cindex orientation (縦長の紙面) -@cindex landscape (横長の紙面) - -@code{set-default-paper-size} への引数として@c -シンボル @code{'landscape} を渡すと、@c -ページは 90°回転し、それに応じてより長い行幅となります。 +この間数は常に @code{\paper} ブロックの中に配置する必要があります。 + +@code{set-default-paper-size} 関数を最上位スコープで用いる場合、@c +どの @code{\paper} ブロックよりも前に配置する必要があります。@c +@code{set-default-paper-size} はすべてのページの紙面サイズを設定しますが、@c +@code{set-paper-size} が設定する紙面サイズは @code{\paper} ブロックが適用@c +されるページだけです。@c +例えば、@code{\paper} ブロックがファイルの最上位に配置されている場合、すべての@c +ページの紙面サイズに摘要されます。@c +@code{\paper} ブロックが @code{\book} の中に配置されている場合、そのブックの@c +ページだけに適用されます。 + +@code{set-paper-size} 関数を用いる場合、同じ @code{\paper} ブロック内で@c +用いられる他のすべての関数よりも @emph{前に} 配置する必要があります。@c +@ref{Automatic scaling to paper size} を参照してください。 + +紙面サイズは @file{scm/paper.scm} で定義されていて、カスタム サイズを追加する@c +ことも可能ですが、追加後のソフトウェア アップデートにより上書きされます。@c +利用可能な紙面サイズは @ref{Predefined paper sizes} でリスト アップされています。 + +@c An appendix entry exists for paper sizes but is not auto-generated + +以下のコマンドを用いてカスタム紙面サイズを追加することができ、追加した紙面サイズは +@code{set-default-paper-size} または @code{set-paper-size} で使用することが@c +でいます。 + + +@example +#(set! paper-alist (cons '("my size" . (cons (* 15 in) (* 3 in))) paper-list)) + +\paper @{ + #(set-paper-size "my size") +@} +@end example + +単位 @code{in} (インチ)、@code{cm} (センチメートル)、それに @code{mm} +(ミリメートル) のすべてを使うことができます。 + +@cindex paper size, orientation (紙面サイズの向き) +@cindex page, orientation (紙面の向き) +@cindex paper size, landscape (横向きの紙面サイズ) + +紙面サイズ関数にシンボル @code{'landscape} を渡すとページは 90°回転し、@c +それに応じてより長い行幅となります。 @example #(set-default-paper-size "a6" 'landscape) @end example +紙面が回転するだけで、楽譜は回転 @emph{しません}。 + @seealso 記譜法リファレンス: -@ref{紙面サイズに応じた自動拡縮} +@ref{Automatic scaling to paper size}, +@ref{Predefined paper sizes} インストールされているファイル: @file{scm/paper.scm} @@ -299,16 +312,16 @@ Scheme 関数 自動拡縮は起こらないということに注意してください。@c しかしながら @code{paper-width} 変数の変更は他の値に影響を与えます (これは拡縮とは別のことで、後で説明します)。 -@code{set-default-paper-size} 関数と @code{set-paper-size} 関数は@c -@ref{紙面サイズを設定する} で説明します。 +@code{set-default-paper-size} 関数と @code{set-paper-size} 関数については +@ref{Setting the paper size} で説明します。 自動拡縮によって影響を受ける垂直方向の長さは @code{top-margin} と @code{bottom-margin} です -(@ref{固定された垂直方向の \paper スペース変数} を参照してください)。@c +(@ref{固定された垂直方向の paper スペース変数,,固定された垂直方向の @code{@bs{}paper} スペース変数} を参照してください)。@c 自動拡縮によって影響を受ける水平方向の長さは @code{right-margin}, @code{inner-margin}, @code{outer-margin}, @code{binding-offset}, @code{indent}, それに @code{short-indent} です -(@ref{水平方向の \paper スペース変数} を参照してください)。 +(@ref{水平方向の paper スペース変数,,水平方向の @code{@bs{}paper} スペース変数} を参照してください)。 これらの長さに対するデフォルト値は @code{top-margin-default}, @code{bottom-margin-default} 等の内部変数を@c @@ -320,15 +333,15 @@ Scheme 関数 @seealso 記譜法リファレンス: -@ref{固定された垂直方向の \paper スペース変数}, -@ref{水平方向の \paper スペース変数} +@ref{固定された垂直方向の paper スペース変数,,固定された垂直方向の @code{@bs{}paper} スペース変数}, +@ref{水平方向の paper スペース変数,,水平方向の @code{@bs{}paper} スペース変数} インストールされているファイル: @file{ly/paper-defaults-init.ly}, @file{scm/paper.scm} -@node 固定された垂直方向の \paper スペース変数 +@node 固定された垂直方向の paper スペース変数 @subsection 固定された垂直方向の @code{\paper} スペース変数 @translationof Fixed vertical spacing \paper variables @@ -370,7 +383,7 @@ Scheme 関数 @funindex ragged-last-bottom 偽に設定されている場合、最後のページでシステムはページ下端まで広がります。@c -2 ページ以上ある楽曲では、この変数を真に設定すべきです。@c +2 ページ以上ある楽曲では、この変数を偽に設定すべきです。@c これは book パート -- すなわち @code{\bookpart} ブロックによって作成された部分 -- の最後のページにも影響を与えます。 @@ -388,14 +401,15 @@ Scheme 関数 @rlsr{Spacing} @knownissues - (@code{\header} ブロックによって作成された) タイトルはシステムとして扱われます。@c このため、@code{ragged-bottom} と @code{ragged-last-bottom} は@c タイトルと score の最初のシステムとの間にスペースを追加します。 +明示的に定義された紙面サイズは、ユーザ定義の上または下のマージン設定を上書きします。 -@node 可変な垂直方向の \paper スペース変数 + +@node 可変な垂直方向の paper スペース変数 @subsection 可変な垂直方向の @code{\paper} スペース変数 @translationof Flexible vertical spacing \paper variables @@ -416,7 +430,7 @@ Scheme 関数 @menu * 可変な垂直方向スペース連想リストの構造:: -* 可変な垂直方向の \paper スペース変数のリスト:: +* 可変な垂直方向の paper スペース変数のリスト:: @end menu @@ -484,13 +498,16 @@ largest of: @end itemize +複数ページの楽譜で、最後のページの楽譜がページ下端まで広がらない場合、最後の@c +ページのスペースは前のページと同じです。 + 配列リストを変更する方法は、@ref{Modifying alists} で説明します。@c 以下の例は、連想配列を変更する 2 つの方法を提示しています。@c 最初の宣言はキー値を個別に変更していて、2 つ目は変数全体を再定義しています: @example \paper @{ - system-system-spacing #'basic-distance = #8 + system-system-spacing.basic-distance = #8 score-system-spacing = #'((basic-distance . 12) (minimum-distance . 6) @@ -500,7 +517,7 @@ largest of: @end example -@node 可変な垂直方向の \paper スペース変数のリスト +@node 可変な垂直方向の paper スペース変数のリスト @unnumberedsubsubsec 可変な垂直方向の @code{\paper} スペース変数のリスト @translationof List of flexible vertical spacing \paper variables @@ -577,7 +594,7 @@ score の最後のシステムと、その後に score の最初のシステム @rlsr{Spacing} -@node 水平方向の \paper スペース変数 +@node 水平方向の paper スペース変数 @subsection 水平方向の @code{\paper} スペース変数 @translationof Horizontal spacing \paper variables @@ -586,13 +603,13 @@ score の最後のシステムと、その後に score の最初のシステム @ref{紙面サイズに応じた自動拡縮} を参照してください。} @menu -* 幅とマージンの \paper 変数:: -* 両面モードのための \paper 変数:: -* シフトとインデントのための \paper 変数:: +* 幅とマージンの paper 変数:: +* 両面モードのための paper 変数:: +* シフトとインデントのための paper 変数:: @end menu -@node 幅とマージンの \paper 変数 +@node 幅とマージンの paper 変数 @unnumberedsubsubsec 幅とマージンの @code{\paper} 変数 @translationof \paper variables for widths and margins @@ -695,8 +712,11 @@ score の最後のシステムと、その後に score の最初のシステム インストールされているファイル: @file{ly/paper-defaults-init.ly} +@knownissues +明示的に定義された紙面サイズは、ユーザ定義の左または右のマージン設定を上書きします。 + -@node 両面モードのための \paper 変数 +@node 両面モードのための paper 変数 @unnumberedsubsubsec 両面モードのための @code{\paper} 変数 @translationof \paper variables for two-sided mode @@ -750,7 +770,7 @@ book の一部であるページすべてが見開きページの外側に持つ @file{ly/paper-defaults-init.ly} -@node シフトとインデントのための \paper 変数 +@node シフトとインデントのための paper 変数 @unnumberedsubsubsec シフトとインデントのための @code{\paper} 変数 @translationof \paper variables for shifts and indents @@ -795,19 +815,19 @@ score の最初のシステムに対するインデントのレベルです。@c @rlsr{Spacing} -@node 他の \paper 変数 +@node 他の paper 変数 @subsection 他の @code{\paper} 変数 @translationof Other \paper variables @menu -* 改行のための \paper 変数:: -* 改ページのための \paper 変数:: -* ページ番号のための \paper 変数:: -* その他の \paper 変数:: +* 改行のための paper 変数:: +* 改ページのための paper 変数:: +* ページ番号のための paper 変数:: +* その他の paper 変数:: @end menu -@node 改行のための \paper 変数 +@node 改行のための paper 変数 @unnumberedsubsubsec 改行のための @code{\paper} 変数 @translationof \paper variables for line breaking @@ -851,7 +871,7 @@ score で使用すべきシステム数です。@c @ref{改行} -@node 改ページのための \paper 変数 +@node 改ページのための paper 変数 @unnumberedsubsubsec 改ページのための @code{\paper} 変数 @translationof \paper variables for page breaking @@ -860,47 +880,41 @@ score で使用すべきシステム数です。@c @table @code -@item blank-after-score-page-force -@funindex blank-after-score-page-force +@item blank-after-score-page-penalty +@funindex blank-after-score-page-penalty -@c 未訳 -The penalty for having a blank page after the end of one score and -before the next. By default, this is smaller than -@code{blank-page-force}, so that we prefer blank pages after -scores to blank pages within a score. +楽譜の後ろ (と次の楽譜の前) に強制的に白紙を挿入します。@c +デフォルトでは、この値は @code{blank-page-penalty} よりも小さいため、@c +楽譜の途中ではなく後ろに白紙が挿入されます。 -@item blank-last-page-force -@funindex blank-last-page-force +@item blank-last-page-penalty +@funindex blank-last-page-penalty -@c 未訳 -The penalty for ending the score on an odd-numbered page. +楽譜の最後が奇数ページの場合、楽譜の後ろに白紙を挿入します。 -@item blank-page-force -@funindex blank-page-force +@item blank-page-penalty +@funindex blank-page-penalty -@c 未訳 -The penalty for having a blank page in the middle of a -score. This is not used by @code{ly:optimal-breaking} since it will -never consider blank pages in the middle of a score. +楽譜の途中に強制的に白紙を挿入します。@c +この値は @code{ly:optimal-breaking} では用いられません。@c +なぜなら、楽譜の途中の白紙を考慮しないからです。 @item page-breaking @funindex page-breaking -@c 未訳 -The page-breaking algorithm to use. Choices are -@code{ly:minimal-breaking}, @code{ly:page-turn-breaking}, and -@code{ly:optimal-breaking}. +改ページのアルゴリズムを指定します。@c +選択肢は @code{ly:minimal-breaking}, @code{ly:page-turn-breaking}, +それに @code{ly:optimal-breaking} です。 @item page-breaking-system-system-spacing @funindex page-breaking-system-system-spacing -@c 未訳 -Tricks the page breaker into thinking that -@code{system-system-spacing} is set to something different than -it really is. For example, if -@code{page-breaking-system-system-spacing #'padding} is set to something -substantially larger than @code{system-system-spacing #'padding}, then the -page-breaker will put fewer systems on each page. Default: unset. +改ページ アルゴリズムに @code{system-system-spacing} を実際の値とは異なる@c +値だと思わせるトリックです。@c +例えば、@code{page-breaking-system-system-spacing #'padding} を +@code{system-system-spacing #'padding} よりも十分に大きくすると、@c +改ページ アルゴリズムは各ページに数個のシステムしか配置しません。@c +デフォルトではセットされていません。 @item page-count @funindex page-count @@ -915,13 +929,14 @@ score で使用すべきページ数です。@c @ref{改ページ}, @ref{最適改ページ}, @ref{最適ページめくり}, -@ref{最小改ページ} +@ref{最小改ページ}, +@ref{1 行の改ページ} インストールされているファイル: @file{ly/paper-defaults-init.ly} -@node ページ番号のための \paper 変数 +@node ページ番号のための paper 変数 @unnumberedsubsubsec ページ番号のための @code{\paper} 変数 @translationof \paper variables for page numbering @@ -971,7 +986,7 @@ increased by one. Default: @code{#f}. ページ 1 が右側にくるようにする必要があります。 -@node その他の \paper 変数 +@node その他の paper 変数 @unnumberedsubsubsec その他の @code{\paper} 変数 @translationof Miscellaneous \paper variables @@ -982,7 +997,7 @@ increased by one. Default: @code{#f}. (垂直方向の) ページ スペースと (水平方向の) 行スペースの重要度の関係です。@c 大きな値だと、ページ スペースがより重要になります。@c -デフォルトでは、@code{#10} です。 +デフォルトでは、@code{10} です。 @item print-all-headers @funindex print-all-headers @@ -1013,14 +1028,13 @@ increased by one. Default: @code{#f}. tagline = ##f } \score { - \relative c'' { c1 \break c1 \break c1 } + \relative { c''1 \break c1 \break c1 } } } @end lilypond @end table - @seealso インストールされているファイル: @file{ly/titling-init.ly} @@ -1028,10 +1042,7 @@ increased by one. Default: @code{#f}. コード断片集: @rlsr{Spacing} - @knownissues - - デフォルトのページ ヘッダは、@c ページ番号と @code{\header} ブロックの @code{instrument} フィールドを@c 同一の行に配置します。 @@ -1082,15 +1093,15 @@ increased by one. Default: @code{#f}. @item @code{line-width}, @code{ragged-right} それに @code{ragged-last} -(@ref{幅とマージンの \paper 変数} を参照してください) +(@ref{幅とマージンの paper 変数,,幅とマージンの @code{@bs{}paper} 変数} を参照してください) @item @code{indent} と @code{short-indent} -(@ref{シフトとインデントのための \paper 変数} を参照してください) +(@ref{シフトとインデントのための paper 変数,,シフトとインデントのための @code{@bs{}paper} 変数} を参照してください) @item @code{system-count} -(@ref{改行のための \paper 変数} を参照してください) +(@ref{改行のための paper 変数,,改行のための @code{@bs{}paper} 変数} を参照してください) @end itemize @@ -1101,16 +1112,110 @@ increased by one. Default: @code{#f}. indent = 2\cm \context @{ \StaffGroup - \override StaffGrouper #'staff-staff-spacing #'basic-distance = #8 + \override StaffGrouper.staff-staff-spacing.basic-distance = #8 + @} + \context @{ + \Voice + \override TextScript.padding = #1 + \override Glissando.thickness = #3 + @} +@} +@end example + +最上位の表記として複数の @code{\layout} ブロックを配置することができます。@c +これは、例えば、異なる設定が別個のファイルに保存されていて、任意の方法で@c +インクルードする場合に有用です。@c +内部的には、@code{\layout} ブロックが評価される時、カレントの +@code{\layout} 構成のコピーが作成され、評価する @code{\layout} ブロックの@c +内部で定義されている変更が適用され、その結果が新しいカレントの構成として@c +保存されます。@c +ユーザからは @code{\layout} ブロックが組み合わされたように見えますが、@c +衝突が発生した場合 (複数のブロックで同じプロパティが変更された場合)、@c +最後の定義が有効になります。 + +例えば、下記のブロック: + +@example +\layout @{ + \context @{ + \Voice + \override TextScript.color = #magenta + \override Glissando.thickness = #1.5 + @} +@} +@end example + +これが一つ前の例の後に配置された場合、@code{TextScript} の @code{'padding} +設定と @code{'color} 設定は組み合わせれますが、@code{Glissando} の +@code{'thickness} 設定は前の設定と置き換わります (前の設定を上書きします)。 + +@code{\layout} ブロックを後で再利用するために変数に代入することができます。@c +しかしながら、この方法は @code{\layout} ブロックを直接記述した場合とは@c +少しですが重大な違いがあります。 + +変数を以下のように定義した場合: + +@example +layoutVariable = \layout @{ + \context @{ + \Voice + \override NoteHead.font-size = #4 @} +@} +@end example + +カレントの @code{\layout} 構成に @code{NoteHead #'font-size} 設定を追加@c +しますが、この組み合わせは新しいカレントの構成として保存され @emph{ません}。@c +@q{カレントの構成} は変数が定義された時に評価されるのであり、変数が使われる@c +時に評価されるのではありません。@c +そのため、変数の効果は変数がソースに配置された位置によって異なります。 + +変数を他の @code{\layout} ブロックの中で使うことができます。@c +例えば、以下のように: + +@example +\layout @{ + \layoutVariable \context @{ \Voice - \override TextScript #'padding = #1 - \override Glissando #'thickness = #3 + \override NoteHead.color = #red @} @} @end example +上記のような変数を含む @code{\layout} ブロックは、カレントの構成をコピー@c +せず、設定を追加するためのベースとなる構成として @code{\layoutVariable} の@c +内容を用います。@c +このことは、変数が定義されてから使われるまでの間に定義された変更は失われる@c +ということを意味します。 + +@code{layoutVariable} が使われる (あるいは @code{\include} される) 直前に@c +定義されている場合、@code{layoutVariable} の内容はカレントの構成に変数内部@c +で定義した設定を加えたものになります。@c +そのため、上で示した @code{\layoutVariable} の使用例の場合、最終的な +@code{\layout} ブロックの構成は以下のようになります: + +@example + TextScript.padding = #1 + TextScript.color = #magenta + Glissando.thickness = #1.5 + NoteHead.font-size = #4 + NoteHead.color = #red +@end example + +これに @code{indent} と @code{StaffGrouper} の設定がプラスしたものです。 + +しかしながら、変数が最初の @code{\layout} ブロックより前に定義されていた@c +場合、カレントの構成は以下だけになってしまいます: + +@example + NoteHead.font-size= #4 % (変数定義で記述されたものです) + NoteHead.color = #red % (変数が使用された後に追加されたものです) +@end example + +注意深く計画を立てれば、@code{\layout} 変数はソースのレイアウト設計を構築@c +して、@code{\layout} 構成を既知の状態にリセットするための有用なツールに@c +なります。 @seealso 記譜法リファレンス: @@ -1222,7 +1327,6 @@ Feta フォントは 8 つのサイズの音楽シンボルを提供します。 個々の譜に対してサイズを調整することができます。@c 個々の譜のサイズはグローバル サイズとの相対値です。 - @seealso 記譜法リファレンス: @ref{記譜フォント サイズを選択する} @@ -1230,9 +1334,7 @@ Feta フォントは 8 つのサイズの音楽シンボルを提供します。 コード断片集: @rlsr{Spacing} - @knownissues - @code{layout-set-staff-size} は譜線の間隔を変更しません。 @@ -1246,6 +1348,7 @@ Feta フォントは 8 つのサイズの音楽シンボルを提供します。 * 最適改ページ:: * 最適ページめくり:: * 最小改ページ:: +* 1 行の改ページ:: * 明示的な改行/改ページ:: * 改行/改ページのために追加のボイスを使用する:: @end menu @@ -1264,9 +1367,11 @@ Feta フォントは 8 つのサイズの音楽シンボルを提供します。 小節線が引かれる場所で手動で強制的に改行を入れるには、@c @code{\break} コマンドを使用します: -@lilypond[quote,ragged-right,relative=2,verbatim] -c4 c c c | \break -c4 c c c | +@lilypond[quote,ragged-right,verbatim] +\relative c'' { + c4 c c c | \break + c4 c c c | +} @end lilypond デフォルトでは、小節の途中での @code{\break} は無視され、@c @@ -1274,11 +1379,13 @@ c4 c c c | 小節の途中で強制的に改行を入れるには、@c @w{@samp{\bar ""}} を用いて不可視の小節線を追加します: -@lilypond[quote,ragged-right,relative=2,verbatim] -c4 c c -\bar "" \break -c | -c4 c c c | +@lilypond[quote,ragged-right,verbatim] +\relative c'' { + c4 c c + \bar "" \break + c | + c4 c c c | +} @end lilypond 連符が開始する小節と終了する小節が異なる場合などのように、@c @@ -1292,23 +1399,25 @@ c4 c c c | @lilypond[quote,ragged-right,verbatim] \new Voice \with { - \remove Forbid_line_break_engraver -} \relative c'' { + \remove "Forbid_line_break_engraver" +} \relative { << - { c2. \times 2/3 { c4 c c } c2. | } + { c''2. \tuplet 3/2 { c4 c c } c2. | } { s1 | \break s1 | } >> } @end lilypond 同様に、通常は連桁が小節線を跨いでいる場合も、改行は禁止されます。@c -この振る舞いは、@code{\override Beam #'breakable = ##t} により、@c +この振る舞いは、@code{\override Beam.breakable = ##t} により、@c 変更することができます: -@lilypond[quote,ragged-right,relative=2,verbatim] -\override Beam #'breakable = ##t -c2. c8[ c | \break -c8 c] c2. | +@lilypond[quote,ragged-right,verbatim] +\relative c'' { + \override Beam.breakable = ##t + c2. c8[ c | \break + c8 c] c2. | +} @end lilypond @code{\noBreak} コマンドは、コマンドが配置された小節線での改行を禁止します。 @@ -1378,7 +1487,7 @@ c8 c] c2. | @seealso 記譜法リファレンス: -@ref{改行のための \paper 変数} +@ref{改行のための paper 変数,,改行のための @code{@bs{}paper} 変数} コード断片集: @rlsr{Spacing} @@ -1407,10 +1516,10 @@ score や最上位レベルのマークアップの間に挿入することが @code{ragged-right} や @code{ragged-last} と類似で、@c 垂直方向のスペースに対して同じ効果を持つ設定があります: @code{ragged-bottom} と @code{ragged-last-bottom} です。@c -これらの設定が @code{##t} にセットされている場合、@c +これらの設定が @code{#t} にセットされている場合、@c すべてのページあるいは最後のページのシステムは@c ページの垂直方向全体には広がりません。@c -@ref{固定された垂直方向の \paper スペース変数} を参照してください。 +@ref{固定された垂直方向の paper スペース変数,,固定された垂直方向の @code{@bs{}paper} スペース変数} を参照してください。 改ページは @code{page-breaking} 関数によって算出されます。@c LilyPond は改ページを算出するために 3 つのアルゴリズムを提供します: @@ -1468,10 +1577,9 @@ LilyPond は改ページを算出するために 3 つのアルゴリズムを @code{\noPageBreak} @endpredefined - @seealso 記譜法リファレンス: -@ref{改行のための \paper 変数} +@ref{改行のための paper 変数,,改行のための @code{@bs{}paper} 変数} コード断片集: @rlsr{Spacing} @@ -1539,7 +1647,7 @@ LilyPond が改ページを決定するためのデフォルトの手法です コンテキスト プロパティ @code{minimumPageTurnLength} を読み込んで、@c どれくらい音符が無いセクションが続いたらページめくりを考慮するかを決定します。@c @code{minimumPageTurnLength} のデフォルト値は -@code{#(ly:make-moment 1 1)} です。@c +@code{(ly:make-moment 1/1)} です。@c ページめくりを不可にしたいのならば、@c @code{minimumPageTurnLength} に非常に大きな値をセットします。 @@ -1549,7 +1657,7 @@ LilyPond が改ページを決定するためのデフォルトの手法です a4 b c d | R1 | % ここでページめくりが許可されます a4 b c d | - \set Staff.minimumPageTurnLength = #(ly:make-moment 5 2) + \set Staff.minimumPageTurnLength = #(ly:make-moment 5/2) R1 | % ここではページめくりは許可されません a4 b r2 | R1*2 | % ここでページめくりが許可されます @@ -1573,7 +1681,6 @@ LilyPond が改ページを決定するためのデフォルトの手法です それに @code{\allowPageTurn} は、@c 最上位レベル、score や最上位のマークアップの間で使用される可能性もあります。 - @predefined @funindex \pageTurn @code{\pageTurn}, @@ -1583,14 +1690,11 @@ LilyPond が改ページを決定するためのデフォルトの手法です @code{\allowPageTurn} @endpredefined - @seealso コード断片集: @rlsr{Spacing} - @knownissues - score の中に配置する @code{Page_turn_engraver} は 1 つだけにするべきです。@c 複数の @code{Page_turn_engraver} がある場合、@c 互いに干渉し合います。 @@ -1616,11 +1720,25 @@ The @code{ly:minimal-breaking} 関数は最小限の改ページを算出しま @} @end example - @seealso コード断片集: @rlsr{Spacing} +@node 1 行の改ページ +@subsection 1 行の改ページ +@translationof One-line page breaking + +@funindex ly:one-line-breaking + +@code{ly:one-line-breaking} 関数は特殊な目的のための改ページアルゴリズム@c +で、楽譜をそれぞれ 1 ページに 1 行で配置します。@c +この改ページ関数はタイトルやマージンを譜刻しません。楽譜だけを譜刻します。 + +ページ幅は最も長い楽譜が 1 行に納まるように調節されます。@c +@code{\paper} ブロックの中にある変数 @code{paper-width}, @code{line-width} +それに @code{indent} は無視されますが、@code{left-margin} と +@code{right-margin} は有効です。@c +ページの高さは変更されません。 @node 明示的な改行/改ページ @subsection 明示的な改行/改ページ @@ -1631,8 +1749,8 @@ LilyPond はしばしば明示的な @code{\break} や @code{\pageBreak} を@c この振る舞いを上書きするための 2 つのコマンドがあります: @example -\override NonMusicalPaperColumn #'line-break-permission = ##f -\override NonMusicalPaperColumn #'page-break-permission = ##f +\override NonMusicalPaperColumn.line-break-permission = ##f +\override NonMusicalPaperColumn.page-break-permission = ##f @end example @code{line-break-permission} が偽に上書きされた場合、@c @@ -1650,7 +1768,7 @@ LilyPond は明示的な改ページである ragged-bottom = ##t } -music = \relative c'' { c8 c c c } +music = \relative { c''8 c c c } \score { \new Staff { @@ -1666,14 +1784,13 @@ music = \relative c'' { c8 c c c } \layout { \context { \Score - \override NonMusicalPaperColumn #'line-break-permission = ##f - \override NonMusicalPaperColumn #'page-break-permission = ##f + \override NonMusicalPaperColumn.line-break-permission = ##f + \override NonMusicalPaperColumn.page-break-permission = ##f } } } @end lilypond - @seealso コード断片集: @rlsr{Spacing} @@ -1686,7 +1803,7 @@ music = \relative c'' { c8 c c c } 通常、改行/改ページ情報は音符入力部分に直接入力します。 @example -music = \relative c'' @{ c4 c c c @} +music = \relative @{ c''4 c c c @} \score @{ \new Staff @{ @@ -1705,7 +1822,7 @@ music = \relative c'' @{ c4 c c c @} その他の改行/改ページ情報だけを保持します。 @lilypond[quote,verbatim] -music = \relative c'' { c4 c c c } +music = \relative { c''4 c c c } \score { \new Staff << @@ -1736,25 +1853,21 @@ This pattern becomes especially helpful when overriding 他の有用だが長いプロパティを上書きするときに、非常に役に立ちます。 @lilypond[quote,verbatim] -music = \relative c'' { c4 c c c } +music = \relative { c''4 c c c } \score { \new Staff << \new Voice { - \overrideProperty "Score.NonMusicalPaperColumn" - #'line-break-system-details #'((Y-offset . 0)) + \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details #'((Y-offset . 0)) s1 * 2 \break - \overrideProperty "Score.NonMusicalPaperColumn" - #'line-break-system-details #'((Y-offset . 35)) + \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details #'((Y-offset . 35)) s1 * 3 \break - \overrideProperty "Score.NonMusicalPaperColumn" - #'line-break-system-details #'((Y-offset . 70)) + \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details #'((Y-offset . 70)) s1 * 6 \break - \overrideProperty "Score.NonMusicalPaperColumn" - #'line-break-system-details #'((Y-offset . 105)) + \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details #'((Y-offset . 105)) s1 * 5 \break } \new Voice { @@ -1767,7 +1880,6 @@ music = \relative c'' { c4 c c c } } @end lilypond - @seealso 記譜法リファレンス: @ref{垂直方向のスペース} @@ -1833,7 +1945,7 @@ music = \relative c'' { c4 c c c } 仕組みだけを説明しているということに注意してください。@c システム、score、マークアップ、それにマージン間の垂直方向のスペースは、@c @code{\paper} 変数によって制御されます --- @ref{可変な垂直方向の \paper スペース変数} で説明しています。 +-- @ref{可変な垂直方向の paper スペース変数,,可変な垂直方向の @code{@bs{}paper} スペース変数} で説明しています。 @menu * システム内部のスペース プロパティ:: @@ -1876,7 +1988,7 @@ music = \relative c'' { c4 c c c } 要素です。@c @code{@var{item2}} は必ずしも @code{@var{item1}} の下にある要素ではないという@c ことに注意してください。@c -例えば、@code{staff-affinity} が @code{#UP} である場合、@c +例えば、@code{staff-affinity} が @code{UP} である場合、@c @code{nonstaff-relatedstaff-spacing} は譜ではない行から@c 上向きにスペースをとります。 @@ -1903,20 +2015,20 @@ music = \relative c'' { c4 c c c } #(define zero-space '((padding . -inf.0) (basic-distance . 0))) alignToZero = \with { - \override VerticalAxisGroup #'nonstaff-relatedstaff-spacing = #zero-space - \override VerticalAxisGroup #'nonstaff-nonstaff-spacing = #zero-space + \override VerticalAxisGroup.nonstaff-relatedstaff-spacing = #zero-space + \override VerticalAxisGroup.nonstaff-nonstaff-spacing = #zero-space } lowerCaseChords = \with { chordNameLowercaseMinor = ##t } staffAffinityDown = \with { - \override VerticalAxisGroup #'staff-affinity = #DOWN + \override VerticalAxisGroup.staff-affinity = #DOWN } labelContext = #(define-music-function - (parser location context) + (context) (string?) - #{ s1*0^\markup { \typewriter $context } #}) + #{ s1*0^\markup { \typewriter #context } #}) \layout { \context { \Dynamics \alignToZero } @@ -1928,13 +2040,13 @@ labelContext = \lowerCaseChords } \context { \FretBoards \alignToZero \staffAffinityDown } \context { \Score - \override BarLine #'stencil = ##f - \override DynamicText #'self-alignment-X = #-1 - \override FretBoard #'X-offset = #1.75 - \override InstrumentName #'minimum-Y-extent = #'(-2 . 2) - \override InstrumentName #'extra-offset = #'(0 . -0.5) - \override TextScript #'minimum-Y-extent = #'(-2 . 3) - \override TimeSignature #'stencil = ##f + \omit BarLine + \override DynamicText.self-alignment-X = #-1 + \override FretBoard.X-offset = #1.75 + \override InstrumentName.minimum-Y-extent = #'(-2 . 2) + \override InstrumentName.extra-offset = #'(0 . -0.5) + \override TextScript.minimum-Y-extent = #'(-2 . 3) + \omit TimeSignature } } @@ -1984,7 +2096,7 @@ labelContext = 垂直方向のスペースのグラフィカル オブジェクト プロパティは (@code{staff-affinity} を除いて)、@c -@ref{可変な垂直方向の \paper スペース変数} で説明した +@ref{可変な垂直方向の paper スペース変数,,可変な垂直方向の @code{@bs{}paper} スペース変数} で説明した @code{\paper} スペース変数と同じ連想配列構造を使用します。 連想配列を変更する方法は、@ref{Modifying alists} で説明します。@c グラフィカル オブジェクト プロパティの調節は、@c @@ -1997,12 +2109,11 @@ labelContext = @example \new Staff \with @{ - \override VerticalAxisGroup #'default-staff-staff-spacing - #'basic-distance = #10 + \override VerticalAxisGroup.default-staff-staff-spacing.basic-distance = #10 @} @{ @dots{} @} \new Staff \with @{ - \override VerticalAxisGroup #'default-staff-staff-spacing = + \override VerticalAxisGroup.default-staff-staff-spacing = #'((basic-distance . 10) (minimum-distance . 9) (padding . 1) @@ -2017,8 +2128,7 @@ labelContext = \layout @{ \context @{ \Staff - \override VerticalAxisGroup #'default-staff-staff-spacing - #'basic-distance = #10 + \override VerticalAxisGroup.default-staff-staff-spacing.basic-distance = #10 @} @} @end example @@ -2137,18 +2247,18 @@ labelContext = @seealso 記譜法リファレンス: -@ref{可変な垂直方向の \paper スペース変数}, +@ref{可変な垂直方向の paper スペース変数,,可変な垂直方向の @code{@bs{}paper} スペース変数}, @ref{Modifying alists} +インストールされているファイル: +@file{ly/engraver-init.ly}, +@file{scm/define-grobs.scm} + 内部リファレンス: @rinternals{Contexts}, @rinternals{VerticalAxisGroup}, @rinternals{StaffGrouper} -Installed Files: -@file{ly/engraver-init.ly}, -@file{scm/define-grobs.scm} - @node グループ化されていない譜のスペース @unnumberedsubsubsec グループ化されていない譜のスペース @@ -2184,7 +2294,7 @@ Installed Files: \layout { \context { \Staff - \override VerticalAxisGroup #'default-staff-staff-spacing = + \override VerticalAxisGroup.default-staff-staff-spacing = #'((basic-distance . 8) (minimum-distance . 7) (padding . 1)) @@ -2207,7 +2317,7 @@ Installed Files: % 'padding に負の値を設定することにより、譜を重ねることができます。 % 'basic-distance が取り得る最小の値は 0 です。 \new Staff \with { - \override VerticalAxisGroup #'default-staff-staff-spacing = + \override VerticalAxisGroup.default-staff-staff-spacing = #'((basic-distance . 3.5) (padding . -10)) } { \clef bass g2 r | } @@ -2262,14 +2372,14 @@ Installed Files: \layout { \context { \Score - \override StaffGrouper #'staff-staff-spacing #'padding = #0 - \override StaffGrouper #'staff-staff-spacing #'basic-distance = #1 + \override StaffGrouper.staff-staff-spacing.padding = #0 + \override StaffGrouper.staff-staff-spacing.basic-distance = #1 } } << \new PianoStaff \with { - \override StaffGrouper #'staffgroup-staff-spacing #'basic-distance = #20 + \override StaffGrouper.staffgroup-staff-spacing.basic-distance = #20 } << \new Staff { c'1 } \new Staff { c'1 } @@ -2329,24 +2439,23 @@ Installed Files: \layout { \context { \Lyrics - \override VerticalAxisGroup - #'nonstaff-nonstaff-spacing #'stretchability = #1000 + \override VerticalAxisGroup.nonstaff-nonstaff-spacing.stretchability = #1000 } } \new StaffGroup << \new Staff \with { - \override VerticalAxisGroup #'staff-staff-spacing = #'((basic-distance . 30)) + \override VerticalAxisGroup.staff-staff-spacing = #'((basic-distance . 30)) } { c'1 } \new Lyrics \with { - \override VerticalAxisGroup #'staff-affinity = #UP + \override VerticalAxisGroup.staff-affinity = #UP } \lyricmode { up } \new Lyrics \with { - \override VerticalAxisGroup #'staff-affinity = #CENTER + \override VerticalAxisGroup.staff-affinity = #CENTER } \lyricmode { center } \new Lyrics \with { - \override VerticalAxisGroup #'staff-affinity = #DOWN + \override VerticalAxisGroup.staff-affinity = #DOWN } \lyricmode { down } \new Staff { c'1 } >> @@ -2412,21 +2521,16 @@ Installed Files: @code{NonMusicalPaperColumn} を上書きする例をいくつか挙げます: @example -\overrideProperty NonMusicalPaperColumn - #'line-break-system-details #'((X-offset . 20)) +\overrideProperty NonMusicalPaperColumn.line-break-system-details #'((X-offset . 20)) -\overrideProperty NonMusicalPaperColumn - #'line-break-system-details #'((Y-offset . 40)) +\overrideProperty NonMusicalPaperColumn.line-break-system-details #'((Y-offset . 40)) -\overrideProperty NonMusicalPaperColumn - #'line-break-system-details #'((X-offset . 20) +\overrideProperty NonMusicalPaperColumn.line-break-system-details #'((X-offset . 20) (Y-offset . 40)) -\overrideProperty NonMusicalPaperColumn - #'line-break-system-details #'((alignment-distances . (15))) +\overrideProperty NonMusicalPaperColumn.line-break-system-details #'((alignment-distances . (15))) -\overrideProperty NonMusicalPaperColumn - #'line-break-system-details #'((X-offset . 20) +\overrideProperty NonMusicalPaperColumn.line-break-system-details #'((X-offset . 20) (Y-offset . 40) (alignment-distances . (15))) @end example @@ -2480,14 +2584,11 @@ Installed Files: << \new Staff << \new Voice { - \overrideProperty #"Score.NonMusicalPaperColumn" - #'line-break-system-details #'((Y-offset . 0)) + \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details #'((Y-offset . 0)) s1*5 \break - \overrideProperty #"Score.NonMusicalPaperColumn" - #'line-break-system-details #'((Y-offset . 40)) + \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details #'((Y-offset . 40)) s1*5 \break - \overrideProperty #"Score.NonMusicalPaperColumn" - #'line-break-system-details #'((Y-offset . 80)) + \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details #'((Y-offset . 80)) s1*5 \break } \new Voice { \repeat unfold 15 { c'4 c' c' c' } } @@ -2520,16 +2621,13 @@ Installed Files: << \new Staff << \new Voice { - \overrideProperty #"Score.NonMusicalPaperColumn" - #'line-break-system-details #'((Y-offset . 20) + \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details #'((Y-offset . 20) (alignment-distances . (15))) s1*5 \break - \overrideProperty #"Score.NonMusicalPaperColumn" - #'line-break-system-details #'((Y-offset . 60) + \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details #'((Y-offset . 60) (alignment-distances . (15))) s1*5 \break - \overrideProperty #"Score.NonMusicalPaperColumn" - #'line-break-system-details #'((Y-offset . 100) + \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details #'((Y-offset . 100) (alignment-distances . (15))) s1*5 \break } @@ -2563,16 +2661,13 @@ Installed Files: << \new Staff << \new Voice { - \overrideProperty #"Score.NonMusicalPaperColumn" - #'line-break-system-details #'((Y-offset . 0) + \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details #'((Y-offset . 0) (alignment-distances . (30 10))) s1*5 \break - \overrideProperty #"Score.NonMusicalPaperColumn" - #'line-break-system-details #'((Y-offset . 60) + \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details #'((Y-offset . 60) (alignment-distances . (10 10))) s1*5 \break - \overrideProperty #"Score.NonMusicalPaperColumn" - #'line-break-system-details #'((Y-offset . 100) + \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details #'((Y-offset . 100) (alignment-distances . (10 30))) s1*5 \break } @@ -2606,7 +2701,6 @@ Installed Files: これらの設定に適切な値を渡すことで、そのようなことは避けられます。 @end itemize - @seealso コード断片集: @rlsr{Spacing} @@ -2650,13 +2744,13 @@ LilyPond は譜外部オブジェクトを、既に配置済みのオブジェ @lilypond[quote,ragged-right,relative=2,verbatim] c4_"Text"\pp r2. -\once \override TextScript #'outside-staff-priority = #1 +\once \override TextScript.outside-staff-priority = #1 c4_"Text"\pp % ここでは、テキストが譜の近くに配置されます r2. % outside-staff-priority に数ではない値を設定することにより、 % 自動衝突回避を無効にします -\once \override TextScript #'outside-staff-priority = ##f -\once \override DynamicLineSpanner #'outside-staff-priority = ##f +\once \override TextScript.outside-staff-priority = ##f +\once \override DynamicLineSpanner.outside-staff-priority = ##f c4_"Text"\pp % ここでは、2 つのオブジェクトが衝突します @end lilypond @@ -2665,10 +2759,10 @@ c4_"Text"\pp % ここでは、2 つのオブジェクトが衝突します @code{outside-staff-padding} で制御することができます。 @c KEEP LY -@lilypond[quote,ragged-right,relative=2,verbatim] -\once \override TextScript #'outside-staff-padding = #0 +@lilypond[quote,ragged-right,relative=2,verbatim,staffsize=18] +\once \override TextScript.outside-staff-padding = #0 a'^"このテキストは音符のすぐ近くに配置されます。" -\once \override TextScript #'outside-staff-padding = #3 +\once \override TextScript.outside-staff-padding = #3 c^"このテキストは前のテキストから離れた位置に配置されます" c^"この手キスとは前にテキストの近くに配置されます" @end lilypond @@ -2692,13 +2786,12 @@ c4 c''2 % outside-staff-horizontal-padding を設定することで修正します R1 -\once \override TextScript #'outside-staff-horizontal-padding = #1 +\once \override TextScript.outside-staff-horizontal-padding = #1 c,,4^"Text" c4 c''2 @end lilypond - @seealso コード断片集: @rlsr{Spacing} @@ -2768,7 +2861,7 @@ c8 c4 c4 c4 各小節において、最短の演奏時間が決定されます。@c スペースの基本として、最も共通する最短演奏時間が選択されます。@c 条件として、この最短演奏時間は常に 8 分音符以上の長さになります。@c -@code{lilypond} を @code{--verbose} オプションを付けて実行すると、@c +@code{lilypond} を @option{--verbose} オプションを付けて実行すると、@c 最短演奏時間が表示されます。 この演奏時間はカスタマイズすることもできます。@c @@ -2809,21 +2902,23 @@ c2 c4. c8 c4. c16[ c] c4. c8 c8 c8 c4 c4 c4 後半は修正を誇張しています: @lilypond[quote,ragged-right] -{ - c'4 e''4 e'4 b'4 | - b'4 e''4 b'4 e''4 | - \override Staff.NoteSpacing #'stem-spacing-correction = #1.5 - \override Staff.StaffSpacing #'stem-spacing-correction = #1.5 - c'4 e''4 e'4 b'4 | - b'4 e''4 b'4 e''4 | +\fixed c' { + c4 e'4 e4 b4 | + b4 e'4 b4 e'4 | + \override Staff.NoteSpacing.stem-spacing-correction = #1.5 + \override Staff.StaffSpacing.stem-spacing-correction = #1.5 + c4 e'4 e4 b4 | + b4 e'4 b4 e'4 | } @end lilypond プロポーショナル ノーテーション (proportional notation) がサポートされます。@c @ref{プロポーショナル ノーテーション} を参照してください。 - @seealso +Essay on automated music engraving: +@ressay{Optical spacing} + コード断片集: @rlsr{Spacing} @@ -2833,14 +2928,13 @@ c2 c4. c8 c4. c16[ c] c4. c8 c8 c8 c4 c4 c4 @rinternals{StaffSpacing}, @rinternals{NonMusicalPaperColumn} - @knownissues - スペースを手動で上書きするための、手軽な仕組みはありません。@c 余分なスペースを楽譜に挿入するために、以下の手段があります -- 必要に応じて、パディングの値を調整しています。 + @example - \override Score.NonMusicalPaperColumn #'padding = #10 + \override Score.NonMusicalPaperColumn.padding = #10 @end example スペースを減らすための手段はありません。 @@ -2848,7 +2942,7 @@ c2 c4. c8 c4. c16[ c] c4. c8 c8 c8 c4 c4 c4 @node 新しいスペース領域 @subsection 新しいスペース領域 -@translationof New spacing area +@translationof New spacing section @code{newSpacingSection} を用いることで、@c 異なるスペース パラメータを持つ新しいセクションを開始することができます。@c @@ -2858,20 +2952,21 @@ c2 c4. c8 c4. c16[ c] c4. c8 c8 c8 c4 c4 c4 拍子記号が新たしいセクションを導入しています。@c その結果、16 分音符の間隔が広くなっています。 -@lilypond[relative=1,verbatim,quote] -\time 2/4 -c4 c8 c -c8 c c4 c16[ c c8] c4 -\newSpacingSection -\time 4/16 -c16[ c c8] +@lilypond[verbatim,quote] +\relative c' { + \time 2/4 + c4 c8 c + c8 c c4 c16[ c c8] c4 + \newSpacingSection + \time 4/16 + c16[ c c8] +} @end lilypond @code{\newSpacingSection} コマンドは新たに @code{SpacingSpanner} オブジェクトを作成します。@c そのため、その場所で新たに @code{\override} が使用される可能性があります。 - @seealso コード断片集: @rlsr{Spacing} @@ -2896,8 +2991,8 @@ c16[ c c8] @lilypond[verbatim,line-width=12\cm] \score { - \relative c'' { - g4 e e2 | f4 d d2 | c4 d e f | g4 g g2 | + \relative { + g'4 e e2 | f4 d d2 | c4 d e f | g4 g g2 | g4 e e2 | f4 d d2 | c4 e g g | c,1 | d4 d d d | d4 e f2 | e4 e e e | e4 f g2 | g4 e e2 | f4 d d2 | c4 e g g | c,1 | @@ -2907,8 +3002,8 @@ c16[ c c8] @lilypond[verbatim,line-width=12\cm] \score { - \relative c'' { - g4 e e2 | f4 d d2 | c4 d e f | g4 g g2 | + \relative { + g'4 e e2 | f4 d d2 | c4 d e f | g4 g g2 | g4 e e2 | f4 d d2 | c4 e g g | c,1 | d4 d d d | d4 e f2 | e4 e e e | e4 f g2 | g4 e e2 | f4 d d2 | c4 e g g | c,1 | @@ -2916,8 +3011,7 @@ c16[ c c8] \layout { \context { \Score - \override SpacingSpanner - #'base-shortest-duration = #(ly:make-moment 1 16) + \override SpacingSpanner.base-shortest-duration = #(ly:make-moment 1/16) } } } @@ -2937,14 +3031,14 @@ c16[ c c8] \score { << \new Staff { - \times 4/5 { + \tuplet 5/4 { c8 c8 c8 c8 c8 } c8 c8 c8 c8 } \new Staff { c8 c8 c8 c8 - \times 4/5 { + \tuplet 5/4 { c8 c8 c8 c8 c8 } } @@ -2952,7 +3046,7 @@ c16[ c c8] \layout { \context { \Score - \override SpacingSpanner #'uniform-stretching = ##t + \override SpacingSpanner.uniform-stretching = ##t } } } @@ -2963,11 +3057,10 @@ c16[ c c8] 音符にスペースが割り当てられます。 @lilypond[quote,ragged-right,relative=2,verbatim] -\override Score.SpacingSpanner #'strict-note-spacing = ##t -\new Staff { c8[ c \clef alto c \grace { c16[ c] } c8 c c] c32[ c32] } +\override Score.SpacingSpanner.strict-note-spacing = ##t +\new Staff { c8[ c \clef alto c \grace { c16 c } c8 c c] c32[ c32] } @end lilypond - @seealso コード断片集: @rlsr{Spacing} @@ -3026,7 +3119,6 @@ c16[ c c8] @} @end example - @seealso コード断片集: @rlsr{Spacing} @@ -3036,7 +3128,7 @@ c16[ c c8] @subsection プロポーショナル ノーテーション @translationof Proportional notation -Lilypond はプロポーショナル ノーテーションをサポートします。@c +LilyPond はプロポーショナル ノーテーションをサポートします。@c この記譜法では、各音符は演奏時間に相当する水平方向のスペースをとります。@c このタイプの水平スペースは、方眼紙上の水平方向スペースと同等です。@c 20 世紀後半、21 世紀前半の楽譜の中には、@c @@ -3051,8 +3143,8 @@ LilyPond はプロポーショナル ノーテーション用に 5 つの設定 @item @code{proportionalNotationDuration} @item @code{uniform-stretching} @item @code{strict-note-spacing} -@item @code{\remove Separating_line_group_engraver} -@item @code{\override PaperColumn #'used = ##t} +@item @code{\remove "Separating_line_group_engraver"} +@item @code{\override PaperColumn.used = ##t} @end itemize 以下の例では、@c @@ -3069,7 +3161,7 @@ LilyPond はプロポーショナル ノーテーション用に 5 つの設定 \new RhythmicStaff { c'2 c'16 c'16 c'16 c'16 - \times 4/5 { + \tuplet 5/4 { c'16 c'16 c'16 c'16 c'16 } } @@ -3099,7 +3191,7 @@ LilyPond はプロポーショナル ノーテーション用に 5 つの設定 \new RhythmicStaff { c'2 c'16 c'16 c'16 c'16 - \times 4/5 { + \tuplet 5/4 { c'16 c'16 c'16 c'16 c'16 } } @@ -3107,7 +3199,7 @@ LilyPond はプロポーショナル ノーテーション用に 5 つの設定 \layout { \context { \Score - proportionalNotationDuration = #(ly:make-moment 1 20) + proportionalNotationDuration = #(ly:make-moment 1/20) } } } @@ -3132,10 +3224,10 @@ LilyPond はプロポーショナル ノーテーション用に 5 つの設定 これはすべての音楽要素へのスペースに関係する参照演奏時間です。@c LilyPond Scheme 関数 @code{make-moment} は 2 つの引数をとります -- 全音符の分数を表す分子と分母です。@c -それゆえ、@code{#(ly:make-moment 1 20)} という呼び出しは、@c +それゆえ、@code{(ly:make-moment 1/20)} という呼び出しは、@c 20 分音符の参照演奏時間となります。@c -@code{#(ly:make-moment 1 16)}, @code{#(ly:make-moment 1 8)}, それに -@code{#(ly:make-moment 3 97)} という値はすべてとり得る値です。 +@code{(ly:make-moment 1/16)}, @code{(ly:make-moment 1/8)}, それに +@code{(ly:make-moment 3/97)} という値はすべてとり得る値です。 では、どのように @code{proportionalNotationDuration} に渡す@c 適切な参照演奏時間を決めるのでしょうか?@c @@ -3150,7 +3242,7 @@ LilyPond Scheme 関数 @code{make-moment} は 2 つの引数をとります \new RhythmicStaff { c'2 c'16 c'16 c'16 c'16 - \times 4/5 { + \tuplet 5/4 { c'16 c'16 c'16 c'16 c'16 } } @@ -3158,7 +3250,7 @@ LilyPond Scheme 関数 @code{make-moment} は 2 つの引数をとります \layout { \context { \Score - proportionalNotationDuration = #(ly:make-moment 1 8) + proportionalNotationDuration = #(ly:make-moment 1/8) } } } @@ -3168,7 +3260,7 @@ LilyPond Scheme 関数 @code{make-moment} は 2 つの引数をとります \new RhythmicStaff { c'2 c'16 c'16 c'16 c'16 - \times 4/5 { + \tuplet 5/4 { c'16 c'16 c'16 c'16 c'16 } } @@ -3176,7 +3268,7 @@ LilyPond Scheme 関数 @code{make-moment} は 2 つの引数をとります \layout { \context { \Score - proportionalNotationDuration = #(ly:make-moment 1 16) + proportionalNotationDuration = #(ly:make-moment 1/16) } } } @@ -3186,7 +3278,7 @@ LilyPond Scheme 関数 @code{make-moment} は 2 つの引数をとります \new RhythmicStaff { c'2 c'16 c'16 c'16 c'16 - \times 4/5 { + \tuplet 5/4 { c'16 c'16 c'16 c'16 c'16 } } @@ -3194,7 +3286,7 @@ LilyPond Scheme 関数 @code{make-moment} は 2 つの引数をとります \layout { \context { \Score - proportionalNotationDuration = #(ly:make-moment 1 32) + proportionalNotationDuration = #(ly:make-moment 1/32) } } } @@ -3219,12 +3311,12 @@ LilyPond Scheme 関数 @code{make-moment} は 2 つの引数をとります \new RhythmicStaff { c'2 c'16 c'16 c'16 c'16 - \times 4/5 { + \tuplet 5/4 { c'16 c'16 c'16 c'16 c'16 } } \new RhythmicStaff { - \times 8/9 { + \tuplet 9/8 { c'8 c'8 c'8 c'8 c'8 c'8 c'8 c'8 c'8 } } @@ -3245,12 +3337,12 @@ LilyPond Scheme 関数 @code{make-moment} は 2 つの引数をとります \new RhythmicStaff { c'2 c'16 c'16 c'16 c'16 - \times 4/5 { + \tuplet 5/4 { c'16 c'16 c'16 c'16 c'16 } } \new RhythmicStaff { - \times 8/9 { + \tuplet 9/8 { c'8 c'8 c'8 c'8 c'8 c'8 c'8 c'8 c'8 } } @@ -3258,7 +3350,7 @@ LilyPond Scheme 関数 @code{make-moment} は 2 つの引数をとります \layout { \context { \Score - proportionalNotationDuration = #(ly:make-moment 1 20) + proportionalNotationDuration = #(ly:make-moment 1/20) } } } @@ -3277,12 +3369,12 @@ LilyPond Scheme 関数 @code{make-moment} は 2 つの引数をとります \new RhythmicStaff { c'2 c'16 c'16 c'16 c'16 - \times 4/5 { + \tuplet 5/4 { c'16 c'16 c'16 c'16 c'16 } } \new RhythmicStaff { - \times 8/9 { + \tuplet 9/8 { c'8 c'8 c'8 c'8 c'8 c'8 c'8 c'8 c'8 } } @@ -3290,8 +3382,8 @@ LilyPond Scheme 関数 @code{make-moment} は 2 つの引数をとります \layout { \context { \Score - proportionalNotationDuration = #(ly:make-moment 1 20) - \override SpacingSpanner #'uniform-stretching = ##t + proportionalNotationDuration = #(ly:make-moment 1/20) + \override SpacingSpanner.uniform-stretching = ##t } } } @@ -3356,7 +3448,7 @@ OFF であるかのどちらかであるということです。@c } \new Staff \with { - \remove Separating_line_group_engraver + \remove "Separating_line_group_engraver" } { c'1 \break @@ -3387,7 +3479,7 @@ OFF であるかのどちらかであるということです。@c @lilypond[quote,verbatim,ragged-right] \new Staff { - \set Score.proportionalNotationDuration = #(ly:make-moment 1 16) + \set Score.proportionalNotationDuration = #(ly:make-moment 1/16) c''8 c''8 c''8 @@ -3397,8 +3489,8 @@ OFF であるかのどちらかであるということです。@c } \new Staff { - \set Score.proportionalNotationDuration = #(ly:make-moment 1 16) - \override Score.SpacingSpanner #'strict-note-spacing = ##t + \set Score.proportionalNotationDuration = #(ly:make-moment 1/16) + \override Score.SpacingSpanner.strict-note-spacing = ##t c''8 c''8 c''8 @@ -3420,12 +3512,12 @@ OFF であるかのどちらかであるということです。@c 以下のような設定です: @itemize -@item @code{\override SpacingSpanner #'strict-grace-spacing = ##t} +@item @code{\override SpacingSpanner.strict-grace-spacing = ##t} @item @code{tupletFullLength = ##t} -@item @code{\override Beam #'breakable = ##t} -@item @code{\override Glissando #'breakable = ##t} -@item @code{\override TextSpanner #'breakable = ##t} -@item @code{\remove Forbid_line_break_engraver in the Voice context} +@item @code{\override Beam.breakable = ##t} +@item @code{\override Glissando.breakable = ##t} +@item @code{\override TextSpanner.breakable = ##t} +@item @code{\remove "Forbid_line_break_engraver" in the Voice context} @end itemize これらの設定は、装飾小音符のスペースを厳密にし、@c @@ -3434,7 +3526,6 @@ OFF であるかのどちらかであるということです。@c システムやページが改まるときに中断されることを許可します。@c これらの設定について、本書の関連パートを参照してください。 - @seealso 記譜法リファレンス: @ref{新しいスペース領域} @@ -3447,7 +3538,7 @@ OFF であるかのどちらかであるということです。@c @section 音楽を少ないページに収める @translationof Fitting music onto fewer pages -ときどき、譜の 1 つ、2 つが 2 番目 (あるいは、3 番目、4 番目 ...) +ときどき、譜の 1 つ、2 つが 2 番目 (あるいは、3 番目、4 番目@dots{}) のページに配置されてしまうことがあります。@c これは腹立たしいことです -- 特に、前のページに十分なスペースがあるように見える場合は。 @@ -3511,7 +3602,6 @@ OFF であるかのどちらかであるということです。@c ペア (@var{a},@var{b}) は間隔を表します。@c @var{a} は間隔の下端を、@var{b} は上端を表します。 - @seealso 記譜法リファレンス: @ref{譜サイズを設定する} @@ -3520,7 +3610,6 @@ OFF であるかのどちらかであるということです。@c @rlsr{Spacing} -@c ここから L3349 @node スペースを変更する @subsection スペースを変更する @translationof Changing spacing @@ -3563,6 +3652,16 @@ OFF であるかのどちらかであるということです。@c @} @end example +@item +強制的にページ数を設定する。@c +例えば、以下の設定は強制的に 2 ページにレイアウトさせます。 + +@example +\paper @{ + page-count = #2 +@} +@end example + @item オブジェクトがシステムの垂直方向のサイズを増加させるのを避ける (あるいは減らす)。@c @@ -3577,7 +3676,7 @@ OFF であるかのどちらかであるということです。@c @lilypond[verbatim,quote,relative=1] e4 c g\f c -e4 c g-\tweak #'X-offset #-2.7 -\tweak #'Y-offset #2.5 \f c +e4 c g-\tweak X-offset #-2.7 -\tweak Y-offset #2.5 \f c @end lilypond @item @@ -3587,8 +3686,8 @@ e4 c g-\tweak #'X-offset #-2.7 -\tweak #'Y-offset #2.5 \f c @lilypond[verbatim,quote] \score { - \relative c'' { - g4 e e2 | + \relative { + g'4 e e2 | f4 d d2 | c4 d e f | g4 g g2 | @@ -3606,8 +3705,8 @@ e4 c g-\tweak #'X-offset #-2.7 -\tweak #'Y-offset #2.5 \f c @lilypond[verbatim,quote] \score { - \relative c'' { - g4 e e2 | + \relative { + g'4 e e2 | f4 d d2 | c4 d e f | g4 g g2 | @@ -3616,8 +3715,7 @@ e4 c g-\tweak #'X-offset #-2.7 -\tweak #'Y-offset #2.5 \f c \layout { \context { \Score - \override SpacingSpanner - #'common-shortest-duration = #(ly:make-moment 1 2) + \override SpacingSpanner.common-shortest-duration = #(ly:make-moment 1/2) } } } @@ -3630,7 +3728,6 @@ e4 c g-\tweak #'X-offset #-2.7 -\tweak #'Y-offset #2.5 \f c @end itemize - @seealso 記譜法リファレンス: @ref{ページ レイアウト},