]> git.donarmstrong.com Git - lilypond.git/blob - Documentation/cs/usage/updating.itely
Docs: run convert-ly for 2.14.0.
[lilypond.git] / Documentation / cs / usage / updating.itely
1 @c -*- coding: utf-8; mode: texinfo; -*-
2
3 @ignore
4     Translation of GIT committish: 0764a50d470cab82ca29da30298dacd333d3da12
5
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.
9 @end ignore
10
11 @c \version "2.14.0"
12
13 @c Translators: Pavel Fric
14
15
16 @node Aktualizace souborů pomocí convert-ly
17 @chapter Aktualizace souborů pomocí @command{convert-ly}
18 @translationof Updating files with convert-ly
19
20 @cindex Aktualizace souboru LilyPond
21 @cindex convert-ly
22
23 Vstupní skladba LilyPondu je vždy znovu měněna kvůli zjednodušení
24 nebo různým vylepšením a vývoji.
25 Vedlejší účinek toho je ale, že LilyPond často nadále nedokáže správně zpracovat
26 starší vstupní soubory.  Aby tento problém obešel, může program
27 používat @command{convert-ly}, který zvládá většinu změn ve skladbě
28 mezi různými verzemi LilyPondu.
29
30 @menu
31 * Proč se mění skladba?::
32 * Vyvolání convert-ly::
33 * Volby příkazového řádku pro convert-ly::
34 * Potíže s convert-ly::
35 * Ruční převod::
36 @end menu
37
38
39 @node Proč se mění skladba?
40 @section Proč se mění skladba?
41 @translationof Why does the syntax change?
42
43 @cindex convert-ly
44 @cindex Aktualizace starých vstupních souborů
45 @cindex Obnova starých vstupních souborů
46
47 Vstupní skladba LilyPondu se čas od času mění.
48 Když je program LilyPond zlepšen, je odpovídajícím způsobem
49 přizpůsobena i skladba (zadávací jazyk).  Některé změny dělají
50 vstupní text snadnější pro zápis a ke čtení,
51 jiné do LilyPondu přinášejí nové vlastnosti.
52
53 Například všechny názvy vlastností @code{\paper} a @code{\layout}
54 se mají zapisovat ve tvaru @code{první-druhá-třetí}. Ve
55 verzi 2.11.60 si však všímáme, že vlastnost
56 @code{printallheaders} se tohoto pravidla nedrží.
57 Měli bychom to tak teď nechat (díky čemuž budou noví uživatelé zmateni, protože
58 se musí vyrovnat se vstupním formátem, který není logický), nebo bychom to měli změnit (čímž
59 naštveme staré uživatele s jejich již napsanými notovými zápisy)?
60 V tomto případě jsme se rozhodli, že změníme název v
61 @code{print-all-headers}.  Naštěstí může být tato změna zautomatizována
62 naším nástrojem @command{convert-ly}.
63
64
65 Bohužel si @code{convert-ly} neporadí se všemi změnami ve skladbě.
66 Například v LilyPondu 2.4 a dřívějších byly přízvuky a neanglická písmena
67 v jiných jazycích zadávány příkazy LaTeXu -- tak například německé Änderung
68 (změna) bylo zapsáno jako @code{\"Anderung}, nebo v případě zobrazení
69 francouzského slova pro Vánoce bylo zadáno @code{No\"el}.  Od verze 2.6
70 se ale musí přízvuky a zvláštní znaky za zapsat
71 přímo jako znak UTF-8.  @code{convert-ly} nedokáže převést všechny
72 znaky LaTeXu, takže se musí kvůli aktualizaci starých souborů LilyPond převzít ručně.
73
74
75 @node Vyvolání convert-ly
76 @section Vyvolání @command{convert-ly}
77 @translationof Invoking convert-ly
78
79 @command{convert-ly} používá příkaz @code{\version} pro zjištění čísla
80 staré verze LilyPondu ve vstupním souboru.  Ve většině případů jednoduše stačí
81 napsat v příkazovém řádku
82
83 @example
84 convert-ly -e můjsoubor.ly
85 @end example
86
87 @noindent
88 v adresáři, v němž soubor leží.  Tím je
89 @file{můjsoubor.ly} přímo zaktualizován a původní soubor zachován v
90 @file{můjsoubor.ly~}.
91
92 @warning{@command{convert-ly} vždy převádí až po poslední změnu ve skladbě,
93 kterou program zvládá.  To znamená, že číslo @code{\version},
94 které v souboru stojí po převodu, je obvykle nižší než
95 verze samotného @command{convert-ly}.}
96
97 Pro převod všech souborů v adresáři se v příkazovém řádku
98 napíše:
99
100 @example
101 convert-ly -e *.ly
102 @end example
103
104 Převedenému souboru lze rovněž určit jiný název, takže původní
105 soubor zůstane nezměněn.  K tomu se v příkazovém řádku napíše
106
107 @example
108 convert-ly můjsoubor.ly > můjnovýsoubor.ly
109 @end example
110
111 Program sestaví seznam s čísly všech verzí, pro které byl převod
112 proveden.  Pokud nejsou vypsána žádná čísla verzí, je soubor
113 v nejnovější verzi.
114
115 Uživatelé MacOS@tie{}X mohou příkazy spouštět přes položku nabídky
116 @code{Compile > Update syntax}.
117
118 Uživatelé Windows by tyto příkazy měli spouštět v příkazovém okně,
119 které se obvykle nachází pod @code{Start > Příslušenství > Příkazy}.
120
121
122 @node Volby příkazového řádku pro convert-ly
123 @section Volby příkazového řádku pro @command{convert-ly}
124 @translationof Command line options for convert-ly
125
126 Program je vyvolán následujícím způsobem:
127
128 @example
129 convert-ly [@var{volba}]@dots{} @var{souborovýnázev}@dots{}
130 @end example
131
132 Mohou se používat následující volby:
133
134 @table @code
135 @item -e,--edit
136 Použít převod přímo na vstupní soubor, takže je přímo změněn.
137
138 @item -f,--from=@var{od-čísloverze}
139 Nastavuje číslo verze, od kterého má převod začít.  Když
140 tato volba není použita, odhadne @command{convert-ly} číslo verze
141 na základě údaje o @code{\version} v souboru.  Například
142 @code{--from=2.10.25}
143
144 @item -n,--no-version
145 Obvykle do výstupu @command{convert-ly} přidá záznam @code{\version}
146 k převáděnému souboru.  Zadání této volby povede k potlačení tohoto chování.
147
148 @item -s, --show-rules
149 Ukázat všechny známé převody a ukončit.
150
151 @item --to=@var{po-čísloverze}
152 Nastavit cílovou verzi převodu.  Výchozí je poslední možná verze,
153 kterou program zvládá.  Například @code{--to=2.12.2}
154
155 @item -h, --help
156 Ukázat nápovědu k použití.
157 @end table
158
159 K aktualizaci úryvků LilyPondu v souborech texinfo lze použít
160
161 @example
162 convert-ly --from=... --to=... --no-version *.itely
163 @end example
164
165 @noindent
166 .
167
168 Pro zobrazení změn ve skladbě LilyPondu mezi dvěma verzemi se
169 napíše
170
171 @example
172 convert-ly --from=... --to=... -s
173 @end example
174
175
176 @node Potíže s convert-ly
177 @section Probleme mit @code{convert-ly}
178 @translationof Problems running convert-ly
179
180 Když se @command{convert-ly} používá v příkazovém okně ve Windows
181 na souboru, který má v názvu souboru nebo v cestě k němu mezery,
182 musí se celý název souboru obklopit třemi (!) dvojitými
183 uvozovkami:
184
185 @example
186 convert-ly """D:/My Scores/Ode.ly""" > "D:/My Scores/new Ode.ly"
187 @end example
188
189 Když jednoduchý příkaz @command{convert-ly -e *.ly} nepracuje,
190 protože je rozepsaný příkazový řádek příliš dlouhý, je také možné
191 @command{convert-ly} nechat běžet opakovaně ve smyčce.  Tento
192 příklad pro UNIX převede všechny soubory @file{-ly} v nynějším
193 adresáři:
194
195 @example
196 for f in *.ly; do convert-ly -e $f; done;
197 @end example
198
199 Pro příkazové okno ve Windows zní odpovídající příkaz takto:
200
201 @example
202 for %x in (*.ly) do convert-ly -e """%x"""
203 @end example
204
205 Ne všechny změny ve skladbě jsou převáděny.  Lze zadat jen volbu pro
206 výstup.  Automatická aktualizace Scheme a kódu Scheme v LilyPondu
207 je celkem nepravděpodobná, velice pravděpodobně se zde musí provést
208 aktualizace ručně.
209
210
211 @node Ruční převod
212 @section Ruční převod
213 @translationof Manual conversions
214
215 Teoreticky by mohl program jako @command{convert-ly} zvládnout všechny
216 změny ve skladbě.  Konečně je to počítačový program, který vykládá
217 starou a novou verzi souboru s notovým zápisem, takže jiný počítačový program
218 by mohl přeložit jeden soubor do druhého.@footnote{To je každopádně možné u každého souboru LilyPond,
219 který neobsahuje Scheme.  Když bylo v souboru použito Scheme,
220 potom takový soubor obsahuje úplný Turingův jazyk a my se tím dostáváme
221 do potíží se slavným @qq{Zastavovacím problémem} informatiky.}
222
223 Nicméně projekt LilyPond má omezené prostředky, počet členů jeho družstva je
224 malý, takže ne všechny převody pracují automaticky.  Dole je seznam známých potíží:
225
226
227 @verbatim
228 1.6->2.0:
229  Číslovaný bas není vždy převeden správně, obzvláště věci jako {<
230  >}.  Matovy poznámky k řešení:
231    To be able to run convert-ly
232    on it, I first replaced all occurrences of '{<' to some dummy like '{#'
233    and similarly I replaced '>}' with '&}'.  After the conversion, I could
234    then change back from '{ #' to '{ <' and from '& }' to '> }'.
235  Ne všechny textové popisy jsou vždy převeden správně.  Ve staré skladbě
236  šlo seskupit více popisů závorkami, například:
237    -#'((bold italic) "string")
238    Toto je nesprávně převáděno na:
239    -\markup{{\bold italic} "string"}
240    namísto:
241    -\markup{\bold \italic "string"}
242 2.0->2.2:
243  Nerozumí \partcombine
244  Nedělá \addlyrics => \lyricsto, takže některé soubory s mnoha slokami nepracují
245 2.0->2.4:
246  \magnify není změněno na \fontsize.
247     - \magnify #m => \fontsize #f, where f = 6ln(m)/ln(2)
248  remove-tag není změněn.
249     - \applyMusic #(remove-tag '. . .) => \keepWithTag #'. . .
250  first-page-number není změněn.
251     - first-page-number no => print-first-page-number = ##f
252  Zalomení řádků v hlavičkách nejsou převedeny.
253     - \\\\  jako zalomení řádku v polích \header => \markup \center-align <
254       "První řádek" "Druhý řádek" >
255  Koncové body pro crescendo a decrescendo-Endpunkte nejsou převedeny.
256     - \rced => \!
257     - \rc => \!
258 2.2->2.4:
259  \turnOff (použito v \set Staff.VoltaBracket = \turnOff) není převeden správně
260 2.4.2->2.5.9
261  \markup{ \center-align <{ ... }> } by měl být převeden na:
262  \markup{ \center-align {\line { ... }} }
263  nyní ale chybí \line.
264 2.4->2.6
265  Zvláštní LaTeXové znaky jako $~$ v textu nejsou převedeny na UTF-8.
266 2.8
267  \score{} nyní musí vždy začínat hudebním výrazem. Všechno ostatní
268 (obzvláště \header{}) smí přijít teprve po notách.
269 @end verbatim