1 @c -*- coding: utf-8; mode: texinfo; documentlanguage: ja -*-
4 Translation of GIT committish: 9a65042d49324f2e3dff18c4b0858def81232eea
6 When revising a translation, copy the HEAD committish of the
7 version that you are working on. For details, see the Contributors'
8 Guide, node Updating translation committishes..
13 @c Translators: Yoshiki Sawada
14 @c Translation status: post-GDP
17 @node convert-ly を使ってファイルを更新する
18 @chapter @command{convert-ly} を使ってファイルを更新する
19 @translationof Updating files with convert-ly
21 @cindex Updating a LilyPond file (LilyPond ファイルを更新する)
24 LilyPond の入力構文は、さまざまな方法で単純化または改善するために、@c
26 その副作用として、LilyPond のインタプリタは@c
27 しばしば古い入力ファイルと互換性を持たなくなります。@c
28 これを救済するために、プログラム @command{convert-ly} を用いることで、@c
29 たいていの LilyPond のバージョン間での構文変更を処理することができます。
35 * convert-ly のコマンド ライン オプション::
40 @section 何故構文は変更されるのか?
41 @translationof Why does the syntax change?
44 @node convert-ly を呼び出す
45 @section @command{convert-ly} を呼び出す
46 @translationof Invoking convert-ly
48 @command{convert-ly} は古いバージョン番号を検出するために@c
49 入力ファイルの @code{version} ステートメントを使用します。@c
50 たいていの場合、あなたの入力ファイルをアップグレードするには、@c
51 そのファイルを保持しているディレクトリで以下を実行することで十分です:
54 convert-ly -e myfile.ly
58 これにより、@code{myfile.ly} はアップグレードされ、@c
59 オリジナル ファイルは @code{myfile.ly~} に保存されます。
61 ディレクトリの中にある入力ファイルをすべて変換するには、@c
68 オリジナル ファイルをアップグレードされたファイルで置き換える代わりに、@c
69 アップグレードされたファイルに異なるファイル名を指定して、@c
70 オリジナル ファイルをそのまま残しておくには、@c
74 convert-ly myfile.ly > mynewfile.ly
77 @command{convert-ly} は常にそれが扱っている最新の構文変更に変換します。@c
78 このことは、通常、ファイルの中にある @code{version} 番号は
79 @command{convert-ly} 自体のバージョンよりも低いということを意味します。
81 このプログラムは変換元のバージョン番号をリストアップします。
82 バージョン番号がリストアップされない場合、@c
83 そのファイルは最新であるということになります。
85 MacOS@tie{}X ユーザはこのコマンドをメニュー エントリ
86 (@code{Compile > Update syntax}) 下で実行することになるかもしれません。
88 Windows ユーザはこれらのコマンドを @q{コマンド プロンプト} ウィンドウから@c
90 コマンド プロンプトは通常、@code{スタート > アクセサリ > コマンド プロンプト}
94 @node convert-ly のコマンド ライン オプション
95 @section @command{convert-ly} のコマンド ライン オプション
96 @translationof Command line options for convert-ly
98 一般に、このプログラムは以下のように呼び出されます:
101 convert-ly [@var{option}]@dots{} @var{filename}@dots{}
109 Apply the conversions direct to the input file, modifying it
112 @item -f,--from=@var{from-patchlevel}
115 @command{convert-ly} は入力ファイルの中にある
116 @code{version} 文字列を基に推測します。@c
117 例: @code{--from=2.10.25}
119 @item -n,--no-version
120 通常、@command{convert-ly} は @code{\version} インジケータを@c
122 このオプションを指定すると、それを抑制します。
124 @item -s, --show-rules
127 @item --to=@var{to-patchlevel}
129 デフォルトは利用可能な最新バージョンです。@c
130 例: @code{--to=2.12.2}
136 texinfo ファイルの中にある LilyPond 断片をアップグレードするには@c
140 convert-ly --from=... --to=... --no-version *.itely
143 2 つのバージョン間での LilyPond 構文の変更を調べるには、@c
147 convert-ly --from=... --to=... -s
151 @node convert-ly の問題点
152 @section @code{convert-ly} の問題点
153 @translationof Problems with convert-ly
155 Windows の @q{コマンド プロンプト} ウィンドウから@c
156 スペースを含むファイル名やパスを持つファイルに対して@c
157 convert-ly を実行する場合、@c
158 入力ファイル名全体を 3 つ (!) のダブル クォートで囲む必要があります:
161 convert-ly """D:/My Scores/Ode.ly""" > "D:/My Scores/new Ode.ly"
164 @command{convert-ly -e *.ly} コマンドが@c
166 @command{convert-ly} コマンドをループさせてやります。@c
168 カレント ディレクトリの中にあるすべての @code{.ly} ファイルを@c
172 for f in *.ly; do convert-ly -e $f; done;
175 Windows の @q{コマンド プロンプト} ウィンドウでの@c
176 上の例に対応するコマンドは以下の通りです:
179 for %x in (*.ly) do convert-ly -e """%x"""
182 言語の変更がすべて処理されるわけではありません。@c
183 指定できる出力オプションは 1 つだけです。@c
185 LilyPond の Scheme インタフェイスを更新することはまったく異なります。@c
186 Scheme コードの調整は手動で行う覚悟でいてください。
188 convert-ly が処理できないことがいくつかあります。@c
189 ここに、LilyPond コミュニティがそのことについて訴えたリストを挙げます。
191 convert-ly は必要とされるすべての変更を@c
192 スムーズに実装できるような構造にはなっていないため、@c
194 以下は対応して欲しいという望みのリストであり、@c
199 Doesn't always convert figured bass correctly, specifically things like {<
200 >}. Mats' comment on working around this:
201 To be able to run convert-ly
202 on it, I first replaced all occurrences of '{<' to some dummy like '{#'
203 and similarly I replaced '>}' with '&}'. After the conversion, I could
204 then change back from '{ #' to '{ <' and from '& }' to '> }'.
205 Doesn't convert all text markup correctly. In the old markup syntax,
206 it was possible to group a number of markup commands together within
208 -#'((bold italic) "string")
209 This will incorrectly be converted into
210 -\markup{{\bold italic} "string"}
211 instead of the correct
212 -\markup{\bold \italic "string"}
214 Doesn't handle \partcombine
215 Doesn't do \addlyrics => \lyricsto, this breaks some scores with multiple
218 \magnify isn't changed to \fontsize.
219 - \magnify #m => \fontsize #f, where f = 6ln(m)/ln(2)
220 remove-tag isn't changed.
221 - \applyMusic #(remove-tag '. . .) => \keepWithTag #'. . .
222 first-page-number isn't changed.
223 - first-page-number no => print-first-page-number = ##f
224 Line breaks in header strings aren't converted.
225 - \\\\ as line break in \header strings => \markup \center-align <
226 "First Line" "Second Line" >
227 Crescendo and decrescendo terminators aren't converted.
231 \turnOff (used in \set Staff.VoltaBracket = \turnOff) is not properly
234 \markup{ \center-align <{ ... }> } should be converted to:
235 \markup{ \center-align {\line { ... }} }
236 but now, \line is missing.
238 Special LaTeX characters such as $~$ in text are not converted to UTF8.
240 \score{} must now begin with a music expression. Anything else
241 (particularly \header{}) must come after the music.