]> git.donarmstrong.com Git - lilypond.git/blob - po/fi.po
* Documentation/user/lilypond-book.itely
[lilypond.git] / po / fi.po
1 # Finnish Translation of lilypond.
2 # Copyright (C) 2003 Han-Wen Nienhuys, Jan Nieuwenhuizen
3 # This file is distributed under the same license as the lilypond package.
4 # FIRST AUTHOR: Heikki Junes <hjunes@cc.hut.fi>, 2003.
5 # (ersetzt die Übersetzung von 1999 von Erwin Dieterich <bamse@gmx.de>)
6 #
7 msgid ""
8 msgstr ""
9 "Project-Id-Version: lilypond 1.7.27\n"
10 "POT-Creation-Date: 2003-07-23 0:40+0300\n"
11 "PO-Revision-Date: 2003-07-23 13:37+0300\n"
12 "Last-Translator: Heikki Junes <hjunes@cc.hut.fi>\n"
13 "Language-Team: Finnish <fi@li.org>\n"
14 "MIME-Version: 1.0\n"
15 "Content-Type: text/plain; charset=ISO-8859-1\n"
16 "Content-Transfer-Encoding: 8bit\n"
17
18 #. this is where special info is often stored
19 #. ###############################################################
20 #. lilylib.py -- options and stuff
21 #.
22 #. source file of the GNU LilyPond music typesetter
23 #.
24 #. (c)  1998--2003  Han-Wen Nienhuys <hanwen@cs.uu.nl>
25 #. Jan Nieuwenhuizen <janneke@gnu.org>
26 #. ##  subst:\(^\|[^._a-z]\)\(abspath\|identify\|warranty\|progress\|warning\|error\|exit\|getopt_args\|option_help_str\|options_help_str\|help\|setup_temp\|read_pipe\|system\|cleanup_temp\|strip_extension\|cp_to_dir\|mkdir_p\|init\) *(
27 #. ##  replace:\1ly.\2 (
28 #. ## subst: \(help_summary\|keep_temp_dir_p\|option_definitions\|original_dir\|program_name\|pseudo_filter_p\|temp_dir\|verbose_p\)
29 #. ###############################################################
30 #. Users of python modules should include this snippet
31 #. and customize variables below.
32 #. We'll suffer this path init stuff as long as we don't install our
33 #. python packages in <prefix>/lib/pythonx.y (and don't kludge around
34 #. it as we do with teTeX on Red Hat Linux: set some environment var
35 #. (PYTHONPATH) in profile)
36 #. If set, LILYPONDPREFIX must take prevalence
37 #. if datadir is not set, we're doing a build and LILYPONDPREFIX
38 #. Customize these
39 #. lilylib globals
40 #: lilylib.py:60
41 msgid "lilylib module"
42 msgstr "lilylib moduuli"
43
44 #: lilylib.py:63 lilypond-book.py:131 lilypond.py:128 midi2ly.py:100
45 #: mup2ly.py:75 main.cc:111
46 msgid "print this help"
47 msgstr "näytä tämä opastus"
48
49 #. ###############################################################
50 #. Handle bug in Python 1.6-2.1
51 #.
52 #. there are recursion limits for some patterns in Python 1.6 til 2.1.
53 #. fix this by importing pre instead. Fix by Mats.
54 #. Attempt to fix problems with limited stack size set by Python!
55 #. Sets unlimited stack size. Note that the resource module only
56 #. is available on UNIX.
57 #: lilylib.py:114 midi2ly.py:136 mup2ly.py:130 main.cc:188 main.cc:200
58 #, c-format, python-format
59 msgid "Copyright (c) %s by"
60 msgstr "Copyright (c) %s by"
61
62 #: lilylib.py:114
63 msgid " 1998--2003"
64 msgstr "1998--2003"
65
66 #: lilylib.py:118
67 msgid "Distributed under terms of the GNU General Public License."
68 msgstr "Levitettävissä ehdoilla GNU General Public License."
69
70 #: lilylib.py:120
71 msgid "It comes with NO WARRANTY."
72 msgstr "Se toimitetaan ILMAN TAKUUTA."
73
74 #: lilylib.py:127 midi2ly.py:150 mup2ly.py:144 input.cc:88
75 msgid "warning: "
76 msgstr "varoitus: "
77
78 #. lots of midi files use plain text for lyric events
79 #. FIXME: read from stdin when files[0] = '-'
80 #: lilylib.py:130 midi2ly.py:165 midi2ly.py:1018 midi2ly.py:1083 mup2ly.py:147
81 #: mup2ly.py:161 input.cc:93
82 msgid "error: "
83 msgstr "virhe: "
84
85 #: lilylib.py:134
86 #, python-format
87 msgid "Exiting (%d)..."
88 msgstr "Lopetetaan (%d)..."
89
90 #: lilylib.py:194 midi2ly.py:224 mup2ly.py:220
91 #, python-format
92 msgid "Usage: %s [OPTIONS]... FILE"
93 msgstr "Käyttö: %s [OPTIOT]... TIEDOSTO"
94
95 #: lilylib.py:198 midi2ly.py:228 mup2ly.py:224 main.cc:166
96 msgid "Options:"
97 msgstr "Optiot:"
98
99 #: lilylib.py:202 midi2ly.py:232 mup2ly.py:228 main.cc:172
100 #, c-format, python-format
101 msgid "Report bugs to %s."
102 msgstr "Raportoi virheet osoitteeseen %s."
103
104 #: lilylib.py:228
105 #, python-format
106 msgid "Opening pipe `%s'"
107 msgstr "Avataan putki `%s'"
108
109 #. successful pipe close returns 'None'
110 #: lilylib.py:240
111 #, python-format
112 msgid "`%s' failed (%d)"
113 msgstr "`%s' epäonnistui (%d)"
114
115 #: lilylib.py:242 lilylib.py:289 lilypond-book.py:231 lilypond.py:512
116 msgid "The error log is as follows:"
117 msgstr "Virheloki on seuraava:"
118
119 #: lilylib.py:262 midi2ly.py:260 mup2ly.py:256
120 #, python-format
121 msgid "Invoking `%s'"
122 msgstr "Kutsutaan `%s'"
123
124 #: lilylib.py:264
125 #, python-format
126 msgid "Running %s..."
127 msgstr "Ajetaan %s..."
128
129 #: lilylib.py:282
130 #, python-format
131 msgid "`%s' failed (%s)"
132 msgstr "`%s' epäonnistui (%s)"
133
134 #: lilylib.py:285 midi2ly.py:266 mup2ly.py:264
135 msgid "(ignored)"
136 msgstr "(sivuutetaan)"
137
138 #: lilylib.py:299 midi2ly.py:276 mup2ly.py:274
139 #, python-format
140 msgid "Cleaning %s..."
141 msgstr "Siivotaan pois %s..."
142
143 #. Duh.  Python style portable: cp *.EXT OUTDIR
144 #. system ('cp *.%s %s' % (ext, outdir), 1)
145 #. Python < 1.5.2 compatibility
146 #.
147 #. On most platforms, this is equivalent to
148 #. `normpath(join(os.getcwd()), PATH)'.  *Added in Python version 1.5.2*
149 #. tex needs lots of memory, more than it gets by default on Debian
150 #. TODO: * prevent multiple addition.
151 #. * clean TEXINPUTS, MFINPUTS, TFMFONTS,
152 #. as these take prevalence over $TEXMF
153 #. and thus may break tex run?
154 #. $TEXMF is special, previous value is already taken care of
155 #. # -sOutputFile does not work with bbox?
156 #. # todo:
157 #. # have better algorithm for deciding when to crop page,
158 #. # and when to show full page
159 #: lilylib.py:458
160 msgid "Removing output file"
161 msgstr "Poistetaan tulostustiedosto"
162
163 #. !@PYTHON@
164 #. once upon a rainy monday afternoon.
165 #.
166 #. ...
167 #.
168 #. (not finished.)
169 #. ABC standard v1.6:  http://www.gre.ac.uk/~c.walshaw/abc2mtex/abc.txt
170 #.
171 #. Enhancements  (Roy R. Rankin)
172 #.
173 #. Header section moved to top of lilypond file
174 #. handle treble, treble-8, alto, and bass clef
175 #. Handle voices (V: headers) with clef and part names, multiple voices
176 #. Handle w: lyrics with multiple verses
177 #. Handle key mode names for minor, major, phrygian, ionian, locrian, aeolian,
178 #. mixolydian, lydian, dorian
179 #. Handle part names from V: header
180 #. Tuplets handling fixed up
181 #. Lines starting with |: not discarded as header lines
182 #. Multiple T: and C: header entries handled
183 #. Accidental maintained until next bar check
184 #. Silent rests supported
185 #. articulations fermata, upbow, downbow, ltoe, accent, tenuto supported
186 #. Chord strings([-^]"string") can contain a '#'
187 #. Header fields enclosed by [] in notes string processed
188 #. W: words output after tune as abc2ps does it (they failed before)
189 #. Enhancements (Laura Conrad)
190 #.
191 #. Barring now preserved between ABC and lilypond
192 #. the default placement for text in abc is above the staff.
193 #. %%LY now supported.
194 #. \breve and \longa supported.
195 #. M:none doesn't crash lily.
196 #. Limitations
197 #.
198 #. Multiple tunes in single file not supported
199 #. Blank T: header lines should write score and open a new score
200 #. Not all header fields supported
201 #. ABC line breaks are ignored
202 #. Block comments generate error and are ignored
203 #. Postscript commands are ignored
204 #. lyrics not resynchronized by line breaks (lyrics must fully match notes)
205 #. %%LY slyrics can't be directly before a w: line.
206 #. ???
207 #. TODO:
208 #.
209 #. Convert to new chord styles.
210 #.
211 #. UNDEF -> None
212 #.
213 #. uGUHGUHGHGUGH
214 #. UGH
215 #. treble8 is used by abctab2ps; -8va is used by barfly,
216 #. and by my patch to abc2ps. If there's ever a standard
217 #. about this we'll support that.
218 #. find keywork
219 #. assume that Q takes the form "Q:1/4=120"
220 #. There are other possibilities, but they are deprecated
221 #. outf.write ("\t\t\\consists Staff_margin_engraver\n")
222 #. pitch manipulation. Tuples are (name, alteration).
223 #. 0 is (central) C. Alteration -1 is a flat, Alteration +1 is a sharp
224 #. pitch in semitones.
225 #. abc to lilypond key mode names
226 #. semitone shifts for key mode names
227 #. latex does not like naked #'s
228 #. latex does not like naked "'s
229 #. break lyrics to words and put "'s around words containing numbers and '"'s
230 #. escape "
231 #. _ causes probs inside ""
232 #. _ to ' _ '
233 #. split words with -
234 #. unless \-
235 #. ~ to space('_')
236 #. * to to space
237 #. latex does not like naked #'s
238 #. put numbers and " and ( into quoted string
239 #. insure space between lines
240 #. title
241 #. strip trailing blanks
242 #. Meter
243 #. KEY
244 #. seperate clef info
245 #. there may or may not be a space
246 #. between the key letter and the mode
247 #. ugh.
248 #. ugh.
249 #. Notes
250 #. Origin
251 #. Reference Number
252 #. Area
253 #. History
254 #. Book
255 #. Composer
256 #. Default note length
257 #. Voice
258 #. Words
259 #. vocals
260 #. tempo
261 #. we use in this order specified accidental, active accidental for bar,
262 #. active accidental for key
263 #. (num /  den)  / defaultlen < 1/base
264 #. return (str, num,den,dots)
265 #. ignore slide
266 #. ignore roll
267 #. s7m2 input doesnt care about spaces
268 #.
269 #. remember accidental for rest of bar
270 #.
271 #. get accidental set in this bar or UNDEF if not set
272 #. WAT IS ABC EEN ONTZETTENDE PROGRAMMEERPOEP  !
273 #. failed; not a note!
274 #. escape '#'s
275 #.
276 #. |] thin-thick double bar line
277 #. || thin-thin double bar line
278 #. [| thick-thin double bar line
279 #. :| left repeat
280 #. |: right repeat
281 #. :: left-right repeat
282 #. |1 volta 1
283 #. |2 volta 2
284 #. first try the longer one
285 #. bracket escape
286 #. the nobarlines option is necessary for an abc to lilypond translator for
287 #. exactly the same reason abc2midi needs it: abc requires the user to enter
288 #. the note that will be printed, and MIDI and lilypond expect entry of the
289 #. pitch that will be played.
290 #.
291 #. In standard 19th century musical notation, the algorithm for translating
292 #. between printed note and pitch involves using the barlines to determine
293 #. the scope of the accidentals.
294 #.
295 #. Since ABC is frequently used for music in styles that do not use this
296 #. convention, such as most music written before 1700, or ethnic music in
297 #. non-western scales, it is necessary to be able to tell a translator that
298 #. the barlines should not affect its interpretation of the pitch.
299 #. write other kinds of appending  if we ever need them.
300 #. add comments to current voice
301 #. Try nibbling characters off until the line doesn't change.
302 #. dump_global (outf)
303 #. !@PYTHON@
304 #.
305 #. convert-ly.py -- Update old LilyPond input files (fix name?)
306 #.
307 #. source file of the GNU LilyPond music typesetter
308 #.
309 #. (c)  1998--2003  Han-Wen Nienhuys <hanwen@cs.uu.nl>
310 #. Jan Nieuwenhuizen <janneke@gnu.org>
311 #. TODO
312 #. use -f and -t for -s output
313 #. NEWS
314 #. 0.2
315 #. - rewrite in python
316 #. Did we ever have \mudela-version?  I doubt it.
317 #. lilypond_version_re_str = '\\\\version *\"(.*)\"'
318 #. ###########################
319 #. need new a namespace
320 #. raise FatalConversionError()
321 #. need new a namespace
322 #. harmful to current .lys
323 #. str = re.sub ('\\\\key([^;]+);', '\\\\accidentals \\1;', str)
324 #. raise FatalConversionError()
325 #. raise FatalConversionError()
326 #. raise FatalConversionError()
327 #. TODO: lots of other syntax change should be done here as well
328 #. Ugh, but meaning of \stemup changed too
329 #. maybe we should do \stemup -> \stemUp\slurUp\tieUp ?
330 #. I don't know exactly when these happened...
331 #. ugh, we loose context setting here...
332 #. (lacks capitalisation slur -> Slur)
333 #. # dynamic..
334 #. TODO: add lots of these
335 #. ugh
336 #. old fix
337 #. Make sure groups of more than one ; have space before
338 #. them, so that non of them gets removed by next rule
339 #. Only remove ; that are not after spaces, # or ;
340 #. Otherwise  we interfere with Scheme comments,
341 #. which is badbadbad.
342 #. 40 ?
343 #. ###############################
344 #. END OF CONVERSIONS
345 #. ###############################
346 #. !@PYTHON@
347 #. info mostly taken from looking at files. See also
348 #. http://lilypond.org/wiki/?EnigmaTransportFormat
349 #. This supports
350 #.
351 #. * notes
352 #. * rests
353 #. * ties
354 #. * slurs
355 #. * lyrics
356 #. * articulation
357 #. * grace notes
358 #. * tuplets
359 #.
360 #. todo:
361 #. * slur/stem directions
362 #. * voices (2nd half of frame?)
363 #. * more intelligent lyrics
364 #. * beams (better use autobeam?)
365 #. * more robust: try entertainer.etf (freenote)
366 #. * dynamics
367 #. * empty measures (eg. twopt03.etf from freenote)
368 #.
369 #. uGUHGUHGHGUGH
370 #. notename 0 == central C
371 #. represent pitches as (notename, alteration), relative to C-major scale
372 #. a fifth up
373 #. should cache this.
374 #. flag1 isn't all that interesting.
375 #. 3: '>',
376 #. 18: '\arpeggio' ,
377 #. do grace notes.
378 #. ugh.
379 #. we don't attempt voltas since they fail easily.
380 #. and g.repeat_bar == '|:' or g.repeat_bar == ':|:' or g.bracket:
381 #. 4 layers.
382 #. let's not do this: this really confuses when eE happens to be before  a ^text.
383 #. if last_tag and last_indices:
384 #. etf_file_dict[last_tag][last_indices].append (l)
385 #. # do it
386 #. staff-spec
387 #. should use \addlyrics ?
388 #. !@PYTHON@
389 #. vim: set noexpandtab:
390 #. This is was the idea for handling of comments:
391 #. Multiline comments, @ignore .. @end ignore is scanned for
392 #. in read_doc_file, and the chunks are marked as 'ignore', so
393 #. lilypond-book will not touch them any more. The content of the
394 #. chunks are written to the output file. Also 'include' and 'input'
395 #. regex has to check if they are commented out.
396 #.
397 #. Then it is scanned for 'lilypond', 'lilypond-file' and 'lilypond-block'.
398 #. These three regex's has to check if they are on a commented line,
399 #. % for latex, @c for texinfo.
400 #.
401 #. Then lines that are commented out with % (latex) and @c (Texinfo)
402 #. are put into chunks marked 'ignore'. This cannot be done before
403 #. searching for the lilypond-blocks because % is also the comment character
404 #. for lilypond.
405 #.
406 #. The the rest of the rexeces are searched for. They don't have to test
407 #. if they are on a commented out line.
408 #. ###############################################################
409 #. Users of python modules should include this snippet
410 #. and customize variables below.
411 #. We'll suffer this path init stuff as long as we don't install our
412 #. python packages in <prefix>/lib/pythonx.y (and don't kludge around
413 #. it as we do with teTeX on Red Hat Linux: set some environment var
414 #. (PYTHONPATH) in profile)
415 #. If set, LILYPONDPREFIX must take prevalence
416 #. if datadir is not set, we're doing a build and LILYPONDPREFIX
417 #. Customize these
418 #. if __name__ == '__main__':
419 #. lilylib globals
420 #. temp_dir = os.path.join (original_dir,  '%s.dir' % program_name)
421 #. urg
422 #. # FIXME
423 #. # do -P or -p by default?
424 #. #help_summary = _ ("Run LilyPond using LaTeX for titling")
425 #: lilypond-book.py:120
426 msgid "Process LilyPond snippets in hybrid html, LaTeX or texinfo document"
427 msgstr "Prossoi LilyPond-osioita sekarakenteisessa html, LaTeX tai texinfo -dokumentissa"
428
429 #. another bug in option parser: --output=foe is taken as an abbreviation
430 #. for --output-format
431 #: lilypond-book.py:125 main.cc:110
432 msgid "EXT"
433 msgstr "EXT"
434
435 #: lilypond-book.py:125
436 msgid "use output format EXT (texi [default], texi-html, latex, html)"
437 msgstr "tulostusmuotona käytetään formaattia EXT (texi [oletus], texi-html, latex, html)"
438
439 #: lilypond-book.py:126 lilypond-book.py:127 lilypond-book.py:129
440 #: lilypond-book.py:130
441 msgid "DIM"
442 msgstr "DIM"
443
444 #: lilypond-book.py:126
445 msgid "default fontsize for music.  DIM is assumed to be in points"
446 msgstr "oletusfonttikoko musiikille.  DIM ilmoitetaan pisteinä"
447
448 #: lilypond-book.py:127
449 msgid "deprecated, use --default-music-fontsize"
450 msgstr "vanhentunut, käytä --default-music-fontsize"
451
452 #: lilypond-book.py:128
453 msgid "OPT"
454 msgstr "OPT"
455
456 #: lilypond-book.py:128
457 msgid "pass OPT quoted to the lilypond command line"
458 msgstr "syötä OPT lainausmerkeissä lilypond-komentoriville"
459
460 #: lilypond-book.py:129
461 msgid "force fontsize for all inline lilypond. DIM is assumed be to in points"
462 msgstr "pakota fonttikoko kullekin LilyPond-osiolle. DIM oletetaan olevan pisteinä"
463
464 #: lilypond-book.py:130
465 msgid "deprecated, use --force-music-fontsize"
466 msgstr "vanhentunut, käytä --force-music-fontsize"
467
468 #: lilypond-book.py:132 lilypond.py:130 main.cc:113 main.cc:118
469 msgid "DIR"
470 msgstr "DIR"
471
472 #: lilypond-book.py:132
473 msgid "include path"
474 msgstr "sisällytä polku"
475
476 #: lilypond-book.py:133
477 msgid "write dependencies"
478 msgstr "kirjoita riippuvuudet"
479
480 #: lilypond-book.py:134
481 msgid "PREF"
482 msgstr "PREF"
483
484 #: lilypond-book.py:134
485 msgid "prepend PREF before each -M dependency"
486 msgstr "laita PREF kunkin -M riippuvuuden eteen"
487
488 #: lilypond-book.py:135
489 msgid "don't run lilypond"
490 msgstr "jätä suorittamatta lilypond"
491
492 #: lilypond-book.py:136
493 msgid "don't generate pictures"
494 msgstr "jätä tuottamatta kuvat"
495
496 #: lilypond-book.py:137
497 msgid "strip all lilypond blocks from output"
498 msgstr "riisu kaikki lilypond -osiot tulostuksesta"
499
500 #: lilypond-book.py:138 lilypond-book.py:139 lilypond.py:135 lilypond.py:136
501 #: midi2ly.py:102 main.cc:114 main.cc:117
502 msgid "FILE"
503 msgstr "TIEDOSTO"
504
505 #: lilypond-book.py:138
506 msgid "filename main output file"
507 msgstr "tiedostonimi päätulostustiedostolle"
508
509 #: lilypond-book.py:139
510 msgid "where to place generated files"
511 msgstr "tuotettujen tiedostojen sijoituspaikka"
512
513 #: lilypond-book.py:140 lilypond.py:137
514 msgid "RES"
515 msgstr "RES"
516
517 #: lilypond-book.py:141 lilypond.py:138
518 msgid "set the resolution of the preview to RES"
519 msgstr "aseta esikatselulle tarkkuus RES"
520
521 #: lilypond-book.py:142 lilypond.py:148 midi2ly.py:105 mup2ly.py:78 main.cc:126
522 msgid "be verbose"
523 msgstr "ole runsassanainen"
524
525 #: lilypond-book.py:143
526 msgid "print version information"
527 msgstr "tulosta versioinformaatio"
528
529 #: lilypond-book.py:144 lilypond.py:150 midi2ly.py:107 mup2ly.py:80 main.cc:127
530 msgid "show warranty and copyright"
531 msgstr "näytä takuu ja copyright"
532
533 #. format specific strings, ie. regex-es for input, and % strings for output
534 #. global variables
535 #. lilypond_binary = 'valgrind --suppressions=/home/hanwen/usr/src/guile-1.6.supp  --num-callers=10 /home/hanwen/usr/src/lilypond/lily/out/lilypond'
536 #. only use installed binary  when we're installed too.
537 #. only use installed binary  when we're installed too.
538 #. ###############################################################
539 #. Dimension handling for LaTeX.
540 #.
541 #. Ugh.  (La)TeX writes progress and error messages on stdout
542 #. Redirect to stderr
543 #: lilypond-book.py:230
544 msgid "LaTeX failed."
545 msgstr "LaTeX epäonnistui."
546
547 #. URG see lilypond
548 #. Convert numeric values, with or without specific dimension, to floats.
549 #. Keep other strings
550 #. ###############################################################
551 #. How to output various structures.
552 #. # maybe <hr> ?
553 #. Verbatim text is always finished with \n.  FIXME: For HTML,
554 #. this newline should be removed.
555 #. Verbatim text is always finished with \n.  FIXME: For HTML,
556 #. this newline should be removed.
557 #. # Ugh we need to differentiate on origin:
558 #. # lilypond-block origin wants an extra <p>, but
559 #. # inline music doesn't.
560 #. # possibly other center options?
561 #. verbatim text is always finished with \n
562 #. verbatim text is always finished with \n
563 #. verbatim text is always finished with \n
564 #. verbatim text is always finished with \n
565 #. do some tweaking: @ is needed in some ps stuff.
566 #.
567 #. ugh, the <p> below breaks inline images...
568 #. clumsy workaround for python 2.2 pre bug.
569 #. ###############################################################
570 #. Recognize special sequences in the input
571 #. Warning: This uses extended regular expressions.  Tread with care.
572 #.
573 #. legenda
574 #.
575 #. (?P<name>regex) -- assign result of REGEX to NAME
576 #. *? -- match non-greedily.
577 #. (?m) -- multiline regex: make ^ and $ match at each line
578 #. (?s) -- make the dot match all characters including newline
579 #. why do we have distinction between @mbinclude and @include?
580 #. # we'd like to catch and reraise a more
581 #. # detailed error, but alas, the exceptions
582 #. # changed across the 1.5/2.1 boundary.
583 #. ughUGH not original options
584 #. First we want to scan the \documentclass line
585 #. it should be the first non-comment line.
586 #. The only thing we really need to know about the \documentclass line
587 #. is if there are one or two columns to begin with.
588 #. Then we add everything before \begin{document} to
589 #. paperguru.m_document_preamble so that we can later write this header
590 #. to a temporary file in find_latex_dims() to find textwidth.
591 #. this is not bulletproof..., it checks the first 10 chunks
592 #. newchunks.extend (func (m))
593 #. python 1.5 compatible:
594 #. we have to check for verbatim before doing include,
595 #. because we don't want to include files that are mentioned
596 #. inside a verbatim environment
597 #. ugh fix input
598 #. # Hmm, we should hash only lilypond source, and skip the
599 #. # %options are ...
600 #. # comment line
601 #. # todo: include path, but strip
602 #. # first part of the path.
603 #. format == 'html'
604 #. ugh rename
605 #. Count sections/chapters.
606 #. # TODO: do something like
607 #. # this for texinfo/latex as well ?
608 #. ugh
609 #. fixme: be sys-independent.
610 #.
611 #. Ugh, fixing up dependencies for .tex generation
612 #.
613 #. Ugh.  (La)TeX writes progress and error messages on stdout
614 #. Redirect to stderr
615 #. # There used to be code to write .tex dependencies, but
616 #. # that is silly: lilypond-book has its own dependency scheme
617 #. # to ensure that all lily-XXX.tex files are there
618 #. # TODO: put file name in front of texidoc.
619 #. #
620 #. # what's this? Docme --hwn
621 #. #
622 #. #docme: why global?
623 #. Do It.
624 #. should chmod -w
625 #: lilypond-book.py:1557 lilypond.py:673 midi2ly.py:1018
626 #, python-format
627 msgid "getopt says: `%s'"
628 msgstr "getopt sanoo: `%s'"
629
630 #. HACK
631 #. status = os.system ('lilypond -w')
632 #: lilypond-book.py:1630 lilypond.py:777
633 msgid "no files specified on command line"
634 msgstr "tiedostoja ei määritelty komentorivillä"
635
636 #.
637 #. Petr, ik zou willen dat ik iets zinvoller deed,
638 #. maar wat ik kan ik doen, het verandert toch niets?
639 #. --hwn 20/aug/99
640 #. !@PYTHON@
641 #.
642 #. lilypond.py -- Run LilyPond, add titles to bare score, generate printable
643 #. document
644 #. Invokes: lilypond, latex (or pdflatex), dvips, ps2pdf, gs
645 #.
646 #. source file of the GNU LilyPond music typesetter
647 #.
648 #. (c)  1998--2003  Han-Wen Nienhuys <hanwen@cs.uu.nl>
649 #. Jan Nieuwenhuizen <janneke@gnu.org>
650 #. This is the third incarnation of lilypond.
651 #.
652 #. Earlier incarnations of lilypond were written by
653 #. Jeffrey B. Reed<daboys@austin.rr.com> (Python version)
654 #. Jan Arne Fagertun <Jan.A.Fagertun@@energy.sintef.no> (Bourne shell script)
655 #.
656 #. Note: gettext work best if we use ' for docstrings and "
657 #. for gettextable strings.
658 #. --> DO NOT USE ''' for docstrings.
659 #. ###############################################################
660 #. Users of python modules should include this snippet
661 #. and customize variables below.
662 #. We'll suffer this path init stuff as long as we don't install our
663 #. python packages in <prefix>/lib/pythonx.y (and don't kludge around
664 #. it as we do with teTeX on Red Hat Linux: set some environment var
665 #. (PYTHONPATH) in profile)
666 #. If set, LILYPONDPREFIX must take prevalence
667 #. if datadir is not set, we're doing a build and LILYPONDPREFIX
668 #. Customize these
669 #. if __name__ == '__main__':
670 #. lilylib globals
671 #. # FIXME
672 #. # do -P or -p by default?
673 #. #help_summary = _ ("Run LilyPond using LaTeX for titling")
674 #: lilypond.py:121
675 msgid "Run LilyPond, add titles, generate printable document."
676 msgstr "Aja LilyPond, lisää otsikot, tuota tulostettava dokumentti."
677
678 #: lilypond.py:127 main.cc:115
679 msgid "write Makefile dependencies for every input file"
680 msgstr "kirjoita Makefile -riippuvuudet kullekin tulostustiedostolle"
681
682 #: lilypond.py:129
683 msgid "print even more output"
684 msgstr "kirjoita vieläpä enemmän tulostetta"
685
686 #: lilypond.py:130
687 msgid "add DIR to LilyPond's search path"
688 msgstr "lisää DIR LilyPondin hakupolkuun"
689
690 #: lilypond.py:132
691 #, python-format
692 msgid "keep all output, output to directory %s.dir"
693 msgstr "säilytä kaikki tulosteet, kirjoita hakemistoon %s.dir"
694
695 #: lilypond.py:133
696 msgid "don't run LilyPond"
697 msgstr "jätä ajamatta LilyPond"
698
699 #: lilypond.py:134 main.cc:116
700 msgid "produce MIDI output only"
701 msgstr "tuota vain MIDI -tuloste"
702
703 #: lilypond.py:135 midi2ly.py:102
704 msgid "write output to FILE"
705 msgstr "tulosta tiedostoon TIEDOSTO"
706
707 #: lilypond.py:136
708 msgid "find pfa fonts used in FILE"
709 msgstr "etsi pfa fontit joita käytettiin tiedostossa TIEDOSTO"
710
711 #: lilypond.py:139
712 msgid "generate PostScript output"
713 msgstr "tuota PostScript -tuloste"
714
715 #: lilypond.py:140
716 msgid "generate PNG page images"
717 msgstr "tuota PNG -kuvat sivuista"
718
719 #: lilypond.py:141
720 msgid "generate PS.GZ"
721 msgstr "tuota PS.GZ"
722
723 #: lilypond.py:142
724 msgid "generate PDF output"
725 msgstr "tuota PDF -tuloste"
726
727 # käytä pdflatex:ia tuottaaksesi PDF -tulosteen
728 #: lilypond.py:143
729 msgid "use pdflatex to generate a PDF output"
730 msgstr "käytä pdflatex:ia tuottaaksesi PDF -tulosteen"
731
732 #. FIXME: preview, picture; to indicate creation of a PNG?
733 #: lilypond.py:145
734 msgid "make a picture of the first system"
735 msgstr "tee kuva ensimmäisestä kokonaisuudesta"
736
737 #: lilypond.py:146
738 msgid "make HTML file with links to all output"
739 msgstr "tee HTML -tiedosto johon on linkitetty kaikki tulosteet"
740
741 #: lilypond.py:147
742 msgid "KEY=VAL"
743 msgstr "KEY=VAL"
744
745 #: lilypond.py:147
746 msgid "change global setting KEY to VAL"
747 msgstr "vaihda globaali asetus KEY arvoksi VAL"
748
749 #: lilypond.py:149 midi2ly.py:106 mup2ly.py:79 main.cc:125
750 msgid "print version number"
751 msgstr "tulosta versionumero"
752
753 #. other globals
754 #. Pdftex support
755 #. # yuk.
756 #. lilypond_binary = 'valgrind --suppressions=%(home)s/usr/src/guile-1.6.supp --num-callers=10 %(home)s/usr/src/lilypond/lily/out/lilypond '% { 'home' : '/home/hanwen' }
757 #. only use installed binary  when we're installed too.
758 #. init to empty; values here take precedence over values in the file
759 #. # TODO: change name.
760 #. for geometry v3
761 #. Output formats that lilypond should create
762 #. what a name.
763 #. ly.warning (_ ("invalid value: %s") % `val`)
764 #. ly.warning (_ ("invalid value: %s") % `val`)
765 #: lilypond.py:232
766 #, python-format
767 msgid "no such setting: `%s'"
768 msgstr "asetusta ei löydy: `%s'"
769
770 #. 2 == user interrupt.
771 #: lilypond.py:274
772 #, python-format
773 msgid "LilyPond crashed (signal %d)."
774 msgstr "LilyPond kaatui (signaali %d)."
775
776 #: lilypond.py:275
777 msgid "Please submit a bug report to bug-lilypond@gnu.org"
778 msgstr "Ole hyvä ja lähetä virheraportti osoitteeseen bug-lilypond@gnu.org"
779
780 #: lilypond.py:281
781 #, python-format
782 msgid "LilyPond failed on input file %s (exit status %d)"
783 msgstr "LilyPond epäonnistui syöttötiedoston %s kohdalla (lopetustila %d)."
784
785 #: lilypond.py:284
786 #, python-format
787 msgid "LilyPond failed on an input file (exit status %d)"
788 msgstr "LilyPond epäonnistui syöttötiedoston kohdalla (lopetustila %d)."
789
790 #: lilypond.py:285
791 msgid "Continuing..."
792 msgstr "Jatketaan..."
793
794 #. urg
795 #: lilypond.py:296
796 #, python-format
797 msgid "Analyzing %s..."
798 msgstr "Analysoidaan %s..."
799
800 #. search only the first 10k
801 #: lilypond.py:354
802 #, python-format
803 msgid "no LilyPond output found for `%s'"
804 msgstr "`%s' jäi ilman LilyPond -tulostetta"
805
806 #. The final \n seems important here. It ensures that the footers and taglines end up on the right page.
807 #. TODO: should set textheight (enlarge) depending on papersize.
808 #: lilypond.py:397
809 #, python-format
810 msgid "invalid value: `%s'"
811 msgstr "epäkelpo arvo: `%s'"
812
813 #. set sane geometry width (a4-width) for linewidth = -1.
814 #. who the hell is 597 ?
815 #. Ugh.  (La)TeX writes progress and error messages on stdout
816 #. Redirect to stderr
817 #: lilypond.py:511
818 msgid "LaTeX failed on the output file."
819 msgstr "LaTeX epäonnistui tulostustiedossa."
820
821 #. make a preview by rendering only the 1st line
822 #. of each score
823 #: lilypond.py:568
824 msgid ""
825 "Trying create PDF, but no PFA fonts found.\n"
826 "Using bitmap fonts instead. This will look bad."
827 msgstr ""
828 "Yritetään tuottaa PDF, mutta PFA fontteja ei löytynyt.\n"
829 "Käytetään bittikarttafonttejan niiden sijasta. Tulos ei näytä hyvältä."
830
831 #. ugh. Different targets?
832 #. Added as functionality to lilypond, because lilypond may well need to do this
833 #. in future too.
834 #. no ps header?
835 #: lilypond.py:615
836 #, python-format
837 msgid "not a PostScript file: `%s'"
838 msgstr "ei ole PostScript-tiedosto: `%s'"
839
840 #. todo
841 #: lilypond.py:660
842 #, python-format
843 msgid "Writing HTML menu `%s'"
844 msgstr "Kirjoitetan HTML-valikko `%s'..."
845
846 #. signal programming error
847 #. Don't convert input files to abspath, rather prepend '.' to include
848 #. path.
849 #. As a neat trick, add directory part of first input file
850 #. to include path.  That way you can do without the clumsy -I in:
851 #. lilypond -I foe/bar/baz foo/bar/baz/baz.ly
852 #: lilypond.py:769
853 msgid "pseudo filter"
854 msgstr "valefiltteri"
855
856 #: lilypond.py:772
857 msgid "pseudo filter only for single input file"
858 msgstr "valefiltteroi ain yksi tulostetiedosto"
859
860 #. Ugh, maybe make a setup () function
861 #. hmmm. Wish I'd 've written comments when I wrote this.
862 #. now it looks complicated.
863 #: lilypond.py:806
864 #, python-format
865 msgid "filename should not contain spaces: `%s'"
866 msgstr "tiedostoniemessä ei saa olla välilyöntejä: `%s'"
867
868 #. to be sure, add tmpdir *in front* of inclusion path.
869 #. os.environ['TEXINPUTS'] =  tmpdir + ':' + os.environ['TEXINPUTS']
870 #. We catch all exceptions, because we need to do stuff at exit:
871 #. * copy any successfully generated stuff from tempdir and
872 #. notify user of that
873 #. * cleanout tempdir
874 #. ## ARGH. This also catches python programming errors.
875 #. ## this should only catch lilypond nonzero exit  status
876 #. ## --hwn
877 #. TODO: friendly message about LilyPond setup/failing?
878 #.
879 #: lilypond.py:845
880 msgid "Running LilyPond failed. Rerun with --verbose for a trace."
881 msgstr "LilyPond -ajo epäonnistui. Aja uudelleen lisäten --verbose jäljitystä varten."
882
883 #. Our LilyPond pseudo filter always outputs to 'lelie'
884 #. have subsequent stages and use 'lelie' output.
885 #. unless: add --tex, or --latex?
886 #. TODO: friendly message about TeX/LaTeX setup,
887 #. trying to run tex/latex by hand
888 #: lilypond.py:886
889 msgid "Failed to make PS file. Rerun with --verbose for a trace."
890 msgstr "Epäonnistui PS -tiedoston tuottamisessa. Aja uudelleen lisäten --verbose jäljitystä varten."
891
892 #. unless: add --tex, or --latex?
893 #. TODO: friendly message about TeX/LaTeX setup,
894 #. trying to run tex/latex by hand
895 #: lilypond.py:916
896 msgid "Running LaTeX falied. Rerun with --verbose for a trace."
897 msgstr "LaTeX -ajo epäonnistui. Aja uudelleen lisäten --verbose jäljitystä varten."
898
899 #. add DEP to targets?
900 #: lilypond.py:926 input-file-results.cc:68
901 #, c-format, python-format
902 msgid "dependencies output to `%s'..."
903 msgstr "riippuvuuksien tulosteet paikkaan `%s'"
904
905 #: lilypond.py:937
906 #, python-format
907 msgid "%s output to <stdout>..."
908 msgstr "%s -tuloste paikkaan <stdout>..."
909
910 #: lilypond.py:942 lilypond.py:968 includable-lexer.cc:57
911 #: input-file-results.cc:191 input-file-results.cc:197 lily-guile.cc:86
912 #, c-format, python-format
913 msgid "can't find file: `%s'"
914 msgstr "tiedostoa ei löydy: `%s'"
915
916 #. Hmm, if this were a function, we could call it the except: clauses
917 #: lilypond.py:965
918 #, python-format
919 msgid "%s output to %s..."
920 msgstr "%s -tuloste paikkaan %s..."
921
922 #. !@PYTHON@
923 #.
924 #. midi2ly.py -- LilyPond midi import script
925 #.
926 #. source file of the GNU LilyPond music typesetter
927 #.
928 #. (c)  1998--2003  Han-Wen Nienhuys <hanwen@cs.uu.nl>
929 #. Jan Nieuwenhuizen <janneke@gnu.org>
930 #. ###############################################################
931 #. Users of python modules should include this snippet.
932 #.
933 #. This soon to be removed for: import lilypond.lilylib as ly
934 #. ###############################################################
935 #. ###############################################################
936 #. ############### CONSTANTS
937 #. ###############################################################
938 #. temp_dir = os.path.join (original_dir,  '%s.dir' % program_name)
939 #. original_dir = os.getcwd ()
940 #. keep_temp_dir_p = 0
941 #: midi2ly.py:94
942 msgid "Convert MIDI to LilyPond source."
943 msgstr "Muunna MIDI LilyPond -muotoon."
944
945 #: midi2ly.py:97
946 msgid "print absolute pitches"
947 msgstr "tulosta tarkat äänenkorkeudet"
948
949 #: midi2ly.py:98 midi2ly.py:103
950 msgid "DUR"
951 msgstr "PIT"
952
953 #: midi2ly.py:98
954 msgid "quantise note durations on DUR"
955 msgstr "kvantisoi nuottipituuden PIT perusteella"
956
957 # tulosta yksikäsitteiset nuottipituudet
958 #: midi2ly.py:99
959 msgid "print explicit durations"
960 msgstr "tulosta yksikäsitteiset nuottipituudet"
961
962 #: midi2ly.py:101
963 msgid "ALT[:MINOR]"
964 msgstr "ETUMERKIT[:MOLLI]"
965
966 #: midi2ly.py:101
967 msgid "set key: ALT=+sharps|-flats; MINOR=1"
968 msgstr "aseta sävellaji: ETUMERKIT=+ylennykset|-alennukset; MOLLI=1"
969
970 #: midi2ly.py:103
971 msgid "quantise note starts on DUR"
972 msgstr "nuottien kvantisointi alkukohtana PIT"
973
974 #: midi2ly.py:104
975 msgid "DUR*NUM/DEN"
976 msgstr "PIT*OSOITTAJA/NIMITTÄJÄ"
977
978 # tuplet = Wertaufteilung nach: Peter Giger: Die Kunst des Rhythmus, Seite 25
979 #: midi2ly.py:104
980 msgid "allow tuplet durations DUR*NUM/DEN"
981 msgstr "salli tupletti -pituudet PIT*OSOITTAJA/NIMITTÄJÄ"
982
983 #: midi2ly.py:108
984 msgid "treat every text as a lyric"
985 msgstr "käsittele kaikki tekstit lyriikkana"
986
987 #: midi2ly.py:136 mup2ly.py:130
988 msgid " 2001--2003"
989 msgstr " 2001--2003"
990
991 #: midi2ly.py:141 mup2ly.py:135
992 msgid ""
993 "\n"
994 "Distributed under terms of the GNU General Public License. It comes with\n"
995 "NO WARRANTY."
996 msgstr ""
997 "\n"
998 "Levitetään ehdolla GNU General Public License\n"
999 "ja ilman TAKUUTA."
1000
1001 #: midi2ly.py:166 mup2ly.py:162
1002 msgid "Exiting ... "
1003 msgstr "Lopettaa ... "
1004
1005 #: midi2ly.py:264 mup2ly.py:261
1006 #, python-format
1007 msgid "command exited with value %d"
1008 msgstr "komento lopetettiin tilassa %d"
1009
1010 #. ###############################################################
1011 #. END Library
1012 #. ###############################################################
1013 #. hmm
1014 #. major scale: do-do
1015 #. minor scale: la-la  (= + 5) '''
1016 #. By tradition, all scales now consist of a sequence
1017 #. of 7 notes each with a distinct name, from amongst
1018 #. a b c d e f g.  But, minor scales have a wide
1019 #. second interval at the top - the 'leading note' is
1020 #. sharped. (Why? it just works that way! Anything
1021 #. else doesn't sound as good and isn't as flexible at
1022 #. saying things. In medieval times, scales only had 6
1023 #. notes to avoid this problem - the hexachords.)
1024 #. So, the d minor scale is d e f g a b-flat c-sharp d
1025 #. - using d-flat for the leading note would skip the
1026 #. name c and duplicate the name d.  Why isn't c-sharp
1027 #. put in the key signature? Tradition. (It's also
1028 #. supposedly based on the Pythagorean theory of the
1029 #. cycle of fifths, but that really only applies to
1030 #. major scales...)  Anyway, g minor is g a b-flat c d
1031 #. e-flat f-sharp g, and all the other flat minor keys
1032 #. end up with a natural leading note. And there you
1033 #. have it.
1034 #. John Sankey <bf250@freenet.carleton.ca>
1035 #.
1036 #. Let's also do a-minor: a b c d e f gis a
1037 #.
1038 #. --jcn
1039 #. as -> gis
1040 #. des -> cis
1041 #. ges -> fis
1042 #. g -> fisis
1043 #. d -> cisis
1044 #. a -> gisis
1045 #. b -> ces
1046 #. e -> fes
1047 #. f -> eis
1048 #. c -> bis
1049 #. # FIXME: compile fix --jcn
1050 #. TODO: move space
1051 #. fis cis gis dis ais eis bis
1052 #. bes es as des ges ces fes
1053 #. urg, we should be sure that we're in a lyrics staff
1054 #. all include ALL_NOTES_OFF
1055 #. ugh, must set key while parsing
1056 #. because Note init uses key
1057 #. Better do Note.calc () at dump time?
1058 #. last_lyric.clocks = t - last_time
1059 #. hmm
1060 #. urg, this will barf at meter changes
1061 #. urg LilyPond doesn't start at c4, but
1062 #. remembers from previous tracks!
1063 #. reference_note = Note (clocks_per_4, 4*12, 0)
1064 #. must be in \notes mode for parsing \skip
1065 #: midi2ly.py:1002
1066 #, python-format
1067 msgid "%s output to `%s'..."
1068 msgstr "%s -tuloste paikkaan `%s'..."
1069
1070 #: midi2ly.py:1033
1071 msgid "Example:"
1072 msgstr "Esimerkki:"
1073
1074 #: midi2ly.py:1083
1075 msgid "no files specified on command line."
1076 msgstr "tiedostoja ei annettu komentorivillä."
1077
1078 #. !@PYTHON@
1079 #. mup2ly.py -- mup input converter
1080 #.
1081 #. source file of the GNU LilyPond music typesetter
1082 #.
1083 #. (c) 2001
1084 #. if set, LILYPONDPREFIX must take prevalence
1085 #. if datadir is not set, we're doing a build and LILYPONDPREFIX
1086 #: mup2ly.py:70
1087 msgid "Convert mup to LilyPond source."
1088 msgstr "Muunna mup LilyPond-muotoon."
1089
1090 #: mup2ly.py:73
1091 msgid "debug"
1092 msgstr "testaa"
1093
1094 #: mup2ly.py:74
1095 msgid "define macro NAME [optional expansion EXP]"
1096 msgstr "määrittele makro NAME [vaihtoehtoinen laajennus EXP]"
1097
1098 #: mup2ly.py:77
1099 msgid "only pre-process"
1100 msgstr "vain esiprosessointi"
1101
1102 #. Duh.  Python style portable: cp *.EXT OUTDIR
1103 #. system ('cp *.%s %s' % (ext, outdir), 1)
1104 #. Python < 1.5.2 compatibility
1105 #.
1106 #. On most platforms, this is equivalent to
1107 #. `normpath(join(os.getcwd()), PATH)'.  *Added in Python version 1.5.2*
1108 #. if set, LILYPONDPREFIX must take prevalence
1109 #. if datadir is not set, we're doing a build and LILYPONDPREFIX
1110 #. ###############################################################
1111 #. END Library
1112 #.
1113 #. PMX cut and paste
1114 #.
1115 #. if not self.entries:
1116 #. #return '\n'
1117 #. #ugh ugh
1118 #. return '\n%s = {}\n\n' % self.idstring ()
1119 #. ugh
1120 #. def set_clef (self, letter):
1121 #. clstr = clef_table[letter]
1122 #. self.voices[0].add_nonchord (Clef (clstr))
1123 #. urg
1124 #. maybe use import copy?
1125 #. for i in self.pitches:
1126 #. ch.pitches.append (i)
1127 #. for i in self.scripts:
1128 #. ch.scripts.append (i)
1129 #. http://www.arkkra.com/doc/uguide/contexts.html
1130 #. #self.current_staffs = []
1131 #. duh
1132 #. FIXME: 1?
1133 #. FIXME: does key play any role in this?
1134 #. ch = self.current_voices[0].last_chord ()
1135 #. ch.basic_duration = self.current_voices[0].last_chord ().basic_duration
1136 #. ugh
1137 #. ch = self.current_voices[0].last_chord ()
1138 #. `;' is not a separator, chords end with ';'
1139 #. mup resets default duration and pitch each bar
1140 #. ugh: these (and lots more) should also be parsed in
1141 #. context staff.  we should have a class Staff_properties
1142 #. and parse/set all those.
1143 #. shortcut: set to official mup maximum (duh)
1144 #. self.set_staffs (40)
1145 #: mup2ly.py:1076
1146 #, python-format
1147 msgid "no such context: %s"
1148 msgstr "kontekstia ei ole: %s"
1149
1150 #. hmm
1151 #. dig this: mup allows ifdefs inside macro bodies
1152 #. don't do nested multi-line defines
1153 #. duh: mup is strictly line-based, except for `define',
1154 #. which is `@' terminated and may span several lines
1155 #. don't define new macros in unactive areas
1156 #. To support nested multi-line define's
1157 #. process_function and macro_name, macro_body
1158 #. should become lists (stacks)
1159 #. The mup manual is undetermined on this
1160 #. and I haven't seen examples doing it.
1161 #.
1162 #. don't do nested multi-line define's
1163 #. writes to stdout for help2man
1164 #. don't call
1165 #. identify ()
1166 #. sys.stdout.flush ()
1167 #. handy emacs testing
1168 #. if not files:
1169 #. files = ['template.mup']
1170 #: mup2ly.py:1300
1171 #, python-format
1172 msgid "Processing `%s'..."
1173 msgstr "Prosessoidaan `%s'..."
1174
1175 #: mup2ly.py:1319
1176 #, python-format
1177 msgid "Writing `%s'..."
1178 msgstr "Kirjoitetaan `%s'..."
1179
1180 #: getopt-long.cc:146
1181 #, c-format
1182 msgid "option `%s' requires an argument"
1183 msgstr "optio `%s' vaatii argumentin"
1184
1185 #: getopt-long.cc:150
1186 #, c-format
1187 msgid "option `%s' doesn't allow an argument"
1188 msgstr "optio `%s' ei salli argumenttia"
1189
1190 #: getopt-long.cc:154
1191 #, c-format
1192 msgid "unrecognized option: `%s'"
1193 msgstr "tunnistamaton optio: `%s'"
1194
1195 #: getopt-long.cc:161
1196 #, c-format
1197 msgid "invalid argument `%s' to option `%s'"
1198 msgstr "epäkelpo argumentti `%s' optiolle `%s'"
1199
1200 #: warn.cc:25
1201 #, c-format
1202 msgid "warning: %s\n"
1203 msgstr "varoitus: %s\n"
1204
1205 #: warn.cc:31
1206 #, c-format
1207 msgid "error: %s\n"
1208 msgstr "virhe: %s\n"
1209
1210 #: warn.cc:44
1211 #, c-format
1212 msgid "programming error: %s (Continuing; cross thumbs)\n"
1213 msgstr "ohjelmointivirhe: %s (jatketaan; risti kädet)\n"
1214
1215 #: accidental.cc:202 key-signature-interface.cc:137
1216 #, c-format
1217 msgid "accidental `%s' not found"
1218 msgstr "korotusmerkkiä `%s' ei löydy"
1219
1220 #: accidental-engraver.cc:171 new-accidental-engraver.cc:238
1221 #, c-format
1222 msgid "Accidental typesetting list must begin with context-name: %s"
1223 msgstr "Korotusmerkkien ladontalista täytyy alkaa konteksti-nimellä: %s"
1224
1225 #: accidental-engraver.cc:196 new-accidental-engraver.cc:263
1226 #, c-format
1227 msgid "unknown accidental typesetting: %s. Ignored"
1228 msgstr "tuntematan kortusmerkkien ladonta: %s. Sivuutetaan"
1229
1230 #: accidental-engraver.cc:212 new-accidental-engraver.cc:279
1231 #, c-format
1232 msgid "Symbol is not a parent context: %s. Ignored"
1233 msgstr "Symboli ei ole yläkonteksti: %s. Sivuutetaan"
1234
1235 #: accidental-engraver.cc:215 new-accidental-engraver.cc:282
1236 #, c-format
1237 msgid "Accidental typesetting must be pair or context-name: %s"
1238 msgstr "Korotusmerkkien ladonta täytyy olla pari tai konteksti-nimi: %s"
1239
1240 #: afm.cc:66
1241 #, c-format
1242 msgid "can't find character number: %d"
1243 msgstr "ei löytynyt merkkiä: %d"
1244
1245 #: afm.cc:81
1246 #, c-format
1247 msgid "can't find character called: `%s'"
1248 msgstr "ei löytynyt merkkiä nimeltä: `%s'"
1249
1250 #: afm.cc:142
1251 #, c-format
1252 msgid "Error parsing AFM file: `%s'"
1253 msgstr "Virhe jäsennettäessä AFM-tiedostoa: `%s'"
1254
1255 #: all-font-metrics.cc:95
1256 #, c-format
1257 msgid "checksum mismatch for font file: `%s'"
1258 msgstr "virhesumma ei täsmää fonttitiedostolle: `%s'"
1259
1260 #: all-font-metrics.cc:97
1261 #, c-format
1262 msgid "does not match: `%s'"
1263 msgstr "ei täsmää: `%s'"
1264
1265 #: all-font-metrics.cc:102
1266 msgid " Rebuild all .afm files, and remove all .pk and .tfm files.  Rerun with -V to show font paths."
1267 msgstr " Uudista kaikki .afm -tiedosto, ja poista kaikki .pk ja .tfm -tiedostot.  Aja uudelleen lisäten -V nähdäksesi fonttipolut."
1268
1269 #: all-font-metrics.cc:103
1270 msgid ""
1271 "A script for removing font-files is delivered with the source-code,\n"
1272 "in buildscripts/clean-fonts.sh"
1273 msgstr ""
1274 "Skripti fonttitiedostojen poistamista varten toimitetaan lähde-koodin mukaan,\n"
1275 "tiedostossa buildscripts/clean-fonts.sh"
1276
1277 #: all-font-metrics.cc:169
1278 #, c-format
1279 msgid "can't find font: `%s'"
1280 msgstr "ei löytynyt fonttia: `%s'"
1281
1282 #: all-font-metrics.cc:170
1283 msgid "Loading default font"
1284 msgstr "Ladataan oletusfontti"
1285
1286 #: all-font-metrics.cc:185
1287 #, c-format
1288 msgid "can't find default font: `%s'"
1289 msgstr "ei löytynyt oletusfonttia: `%s'"
1290
1291 #: all-font-metrics.cc:186 includable-lexer.cc:59 input-file-results.cc:192
1292 #, c-format
1293 msgid "(search path: `%s')"
1294 msgstr "(hakupolku: `%s')"
1295
1296 #: all-font-metrics.cc:187
1297 msgid "Giving up"
1298 msgstr "Luovutetaan"
1299
1300 #: auto-change-iterator.cc:43 change-iterator.cc:60
1301 #: part-combine-music-iterator.cc:120
1302 msgid "Can't switch translators, I'm there already"
1303 msgstr "Ei voitu muuttaa kääntää, on jo valittuna"
1304
1305 #: bar-check-iterator.cc:51
1306 #, c-format
1307 msgid "barcheck failed at: %s"
1308 msgstr "tahtiviivan tarkistus epäonnistui kohdassa: %s"
1309
1310 #: beam.cc:146
1311 msgid "beam has less than two visible stems"
1312 msgstr "palkissa on vähemmän kuin kaksi pystyviivaa"
1313
1314 #: beam.cc:151
1315 msgid "Beam has less than two stems. Removing beam."
1316 msgstr "Palkissa on vähemmän kuin kaksi pystyviivaa. Poistetaan palkki."
1317
1318 #: beam.cc:976
1319 msgid "Not sure that we can find a nice beam slope (no viable initial configuration found)."
1320 msgstr "Ei ole varma löydetäänko sopivaa palkin kaltevuutta (ei löytynyt toimivaa alkuasetusta)"
1321
1322 #: beam-engraver.cc:176
1323 msgid "already have a beam"
1324 msgstr "palkki löytyi jo"
1325
1326 #: beam-engraver.cc:259
1327 msgid "unterminated beam"
1328 msgstr "päättymätön palkki"
1329
1330 #: beam-engraver.cc:292 chord-tremolo-engraver.cc:197
1331 msgid "stem must have Rhythmic structure"
1332 msgstr "varrella on oltava Rhytmic -rakenne"
1333
1334 #: beam-engraver.cc:306
1335 msgid "stem doesn't fit in beam"
1336 msgstr "varsi ei sovi palkkiin"
1337
1338 #: beam-engraver.cc:307
1339 msgid "beam was started here"
1340 msgstr "palkki aloitettiin täältä"
1341
1342 #: break-align-interface.cc:173
1343 #, c-format
1344 msgid "No spacing entry from %s to `%s'"
1345 msgstr "Ei välistyksen syöttöä paikasta %s paikkaan `%s'"
1346
1347 #: change-iterator.cc:22
1348 #, c-format
1349 msgid "can't change `%s' to `%s'"
1350 msgstr "ei voitu vaihtaa `%s' tilalle `%s'"
1351
1352 #.
1353 #. We could change the current translator's id, but that would make
1354 #. errors hard to catch
1355 #.
1356 #. last->translator_id_string_  = get_change ()->change_to_id_string_;
1357 #.
1358 #: change-iterator.cc:79
1359 msgid "I'm one myself"
1360 msgstr "Olen yksinäni"
1361
1362 #: change-iterator.cc:82
1363 msgid "none of these in my family"
1364 msgstr "ei yksikään näistä perheessäni"
1365
1366 #: chord-tremolo-engraver.cc:98
1367 #, c-format
1368 msgid "Chord tremolo with %d elements. Must have two elements."
1369 msgstr "Sointutremolo %d:lla elementillä. Täytyy olla kaksi elementtiä."
1370
1371 #: chord-tremolo-engraver.cc:157
1372 msgid "unterminated chord tremolo"
1373 msgstr "päättymätön sointutremolo"
1374
1375 #: chord-tremolo-iterator.cc:69
1376 msgid "no one to print a tremolos"
1377 msgstr "ei ketään joka voisi tulostaan tremolon"
1378
1379 #: clef.cc:64
1380 #, c-format
1381 msgid "clef `%s' not found"
1382 msgstr "avainta `%s' ei löydy"
1383
1384 #: cluster.cc:131
1385 #, c-format
1386 msgid "unknown cluster style `%s'"
1387 msgstr "tuntematon klusterityyli: `%s'"
1388
1389 #: coherent-ligature-engraver.cc:84
1390 #, c-format
1391 msgid "gotcha: ptr=%ul"
1392 msgstr "löytyi: ptr=%ul"
1393
1394 #: coherent-ligature-engraver.cc:96
1395 #, c-format
1396 msgid "distance=%f"
1397 msgstr "etäisyys=%f"
1398
1399 #: coherent-ligature-engraver.cc:139
1400 #, c-format
1401 msgid "Coherent_ligature_engraver: setting `spacing-increment = 0.01': ptr=%ul"
1402 msgstr "Coherent_ligature_engraver: asetetaan `spacing-increment = 0.01': ptr=%ul"
1403
1404 #: custos.cc:92
1405 #, c-format
1406 msgid "custos `%s' not found"
1407 msgstr "custos `%s' ei löytynyt"
1408
1409 #: dimensions.cc:13
1410 msgid "NaN"
1411 msgstr "NaN"
1412
1413 #: dynamic-engraver.cc:204 span-dynamic-performer.cc:82
1414 msgid "can't find start of (de)crescendo"
1415 msgstr "ei löytynyt alkua (de)crescendolle"
1416
1417 #: dynamic-engraver.cc:216
1418 msgid "already have a crescendo"
1419 msgstr "crescendo jo käytössä"
1420
1421 #: dynamic-engraver.cc:217
1422 msgid "already have a decrescendo"
1423 msgstr "decresendo jo käytössä"
1424
1425 #: dynamic-engraver.cc:220
1426 msgid "Cresc started here"
1427 msgstr "Cresc aloitettiin tästä"
1428
1429 #: dynamic-engraver.cc:323
1430 msgid "unterminated (de)crescendo"
1431 msgstr "päätymätön (de)crescendo"
1432
1433 #: event.cc:49
1434 #, c-format
1435 msgid "Transposition by %s makes alteration larger than two"
1436 msgstr "Transponointi %s tekee muutokset suuremmaksi kuin kaksi"
1437
1438 #: event-chord-iterator.cc:76 output-property-music-iterator.cc:27
1439 #, c-format
1440 msgid "Junking event: `%s'"
1441 msgstr "Hylätään tapahtuma: `%s'"
1442
1443 #: extender-engraver.cc:94
1444 msgid "unterminated extender"
1445 msgstr "päättymätön pidennys"
1446
1447 #: extender-engraver.cc:106
1448 msgid "Nothing to connect extender to on the left.  Ignoring extender event."
1449 msgstr "Pidennystä ei voitu liittää vasemmalle.  Hylätään pidennystapahtuma.\""
1450
1451 #: folded-repeat-iterator.cc:88
1452 msgid "no one to print a repeat brace"
1453 msgstr "kukaan ei voinut tulostaa toistoa"
1454
1455 #: font-interface.cc:239
1456 msgid "couldn't find any font satisfying "
1457 msgstr "mikään fontti ei tuottanut toivottua tulosta"
1458
1459 #: glissando-engraver.cc:100
1460 msgid "Unterminated glissando."
1461 msgstr "Päättymätön glissando."
1462
1463 #: gourlay-breaking.cc:188
1464 #, c-format
1465 msgid "Optimal demerits: %f"
1466 msgstr "Optimaalinen heikennys: %f"
1467
1468 #: gourlay-breaking.cc:193
1469 msgid "No feasible line breaking found"
1470 msgstr "Ei löytynyt sopivaa viivan katkaisukohtaa"
1471
1472 #: gregorian-ligature-engraver.cc:59
1473 #, c-format
1474 msgid "\\%s ignored"
1475 msgstr "\\%s sivuutettiin"
1476
1477 #: gregorian-ligature-engraver.cc:64
1478 #, c-format
1479 msgid "implied \\%s added"
1480 msgstr "lisättiin vihjattu \\%s"
1481
1482 #.
1483 #. Todo: do something sensible. The grob-pq-engraver is not water
1484 #. tight, and stuff like tupletSpannerDuration confuses it.
1485 #.
1486 #: grob-pq-engraver.cc:130
1487 #, c-format
1488 msgid ""
1489 "Skipped something?\n"
1490 "Grob %s ended before I expected it to end."
1491 msgstr ""
1492 "Jotain ohitettiin?\n"
1493 "Piirto %s loppui ennen kuin sen oletettiin loppuvan."
1494
1495 #: hairpin.cc:98
1496 msgid "decrescendo too small"
1497 msgstr "liian lyhyt decrescendo"
1498
1499 #: hairpin.cc:99
1500 msgid "crescendo too small"
1501 msgstr "liian lyhyt crescendo"
1502
1503 #: horizontal-bracket-engraver.cc:64
1504 msgid "Don't have that many brackets."
1505 msgstr "Ei ole käytössä niin monia sulkeita."
1506
1507 #: horizontal-bracket-engraver.cc:73
1508 msgid "Conflicting note group events."
1509 msgstr "Ristiriitainen nuottiryhmä -tapaus."
1510
1511 #: hyphen-engraver.cc:87
1512 msgid "unterminated hyphen"
1513 msgstr "päättymätön tavuviiva"
1514
1515 #: hyphen-engraver.cc:99
1516 msgid "Nothing to connect hyphen to on the left.  Ignoring hyphen event."
1517 msgstr "Mitään ei voitu liittää tavuviivan vasemmalle puolelle.  Sivutetaan tavutus."
1518
1519 #: input.cc:99
1520 msgid "non fatal error: "
1521 msgstr "ei-keskeyttävä virhe:"
1522
1523 #: input.cc:107 source-file.cc:146 source-file.cc:239
1524 msgid "position unknown"
1525 msgstr "sijainti tuntematon:"
1526
1527 #: input-file-results.cc:72 source-file.cc:54 streams.cc:38
1528 #, c-format
1529 msgid "can't open file: `%s'"
1530 msgstr "tiedostoa ei voitu avata: `%s'"
1531
1532 #: input-file-results.cc:132
1533 msgid "Score contains errors; will not process it"
1534 msgstr "Viivastossa on virheitä; sitä ei prosessoida"
1535
1536 #: input-file-results.cc:172
1537 #, c-format
1538 msgid "Now processing: `%s'"
1539 msgstr "Prosessoidaan: `%s'"
1540
1541 #: key-performer.cc:96
1542 msgid "FIXME: key change merge"
1543 msgstr "KORJATTAVA: sävellajin vaihdon sulautuma"
1544
1545 #: kpath.cc:76
1546 #, c-format
1547 msgid "Kpathsea couldn't find TFM file `%s'"
1548 msgstr "Kpathsea ei löytänyt TFM-tiedostoa `%s'"
1549
1550 #: ligature-engraver.cc:159
1551 msgid "can't find start of ligature"
1552 msgstr "ei löytynyt alkua ligature:lle"
1553
1554 #: ligature-engraver.cc:165
1555 msgid "no right bound"
1556 msgstr "ei oikeata reunaa"
1557
1558 #: ligature-engraver.cc:191
1559 msgid "already have a ligature"
1560 msgstr "ligature löytyi jo"
1561
1562 #: ligature-engraver.cc:207
1563 msgid "no left bound"
1564 msgstr "ei vasenta reunaa"
1565
1566 #: ligature-engraver.cc:258
1567 msgid "unterminated ligature"
1568 msgstr "päättymätön ligature"
1569
1570 #: ligature-engraver.cc:282
1571 msgid "ligature may not contain rest; ignoring rest"
1572 msgstr "ligature ei voi sisältää taukoa; sivuutetaan tauko"
1573
1574 #: ligature-engraver.cc:283
1575 msgid "ligature was started here"
1576 msgstr "ligature alkoi tästä"
1577
1578 #: lily-guile.cc:88
1579 #, c-format
1580 msgid "(load path: `%s')"
1581 msgstr "(hakupolku: `%s')"
1582
1583 #: lily-guile.cc:576
1584 #, c-format
1585 msgid "Can't find property type-check for `%s' (%s)."
1586 msgstr "Ei löytynyt tyyppitarkistusta ominaisuudelle `%s' (%s)."
1587
1588 #: lily-guile.cc:579
1589 msgid "Perhaps you made a typing error?"
1590 msgstr "Tekinet näppäilyvirheen?"
1591
1592 #: lily-guile.cc:585
1593 msgid "Doing assignment anyway."
1594 msgstr "Tehdään tehtävä joka tapauksessa."
1595
1596 #: lily-guile.cc:599
1597 #, c-format
1598 msgid "Type check for `%s' failed; value `%s' must be of type `%s'"
1599 msgstr "Tyypin `%s' tarkistus epäonnistui; arvon `%s' on oltava tyyppiä `%s'"
1600
1601 #: lookup.cc:173
1602 msgid "round filled box horizontal extent smaller than blot; decreasing blot"
1603 msgstr "pyöristetyn, täytetyn laatikon horisontaali laajuus on pilkkua pienempi; pienennetään pilkkua"
1604
1605 #: lookup.cc:178
1606 msgid "round filled box vertical extent smaller than blot; decreasing blot"
1607 msgstr "pyöristetyn, täytetyn laatikon vertikaali laajuus on pilkkua pienempi; pienennetään pilkku"
1608
1609 #: lyric-phrasing-engraver.cc:311
1610 msgid "lyrics found without any matching notehead"
1611 msgstr "lyriikkaa löytyi ilman vastaavaa nuotinpäätä"
1612
1613 #: lyric-phrasing-engraver.cc:317
1614 msgid "Huh? Melismatic note found to have associated lyrics."
1615 msgstr "Täh? Melismoitu nuotti ilman siihen liittyvään lyriikkaa."
1616
1617 #: main.cc:106
1618 msgid "EXPR"
1619 msgstr "EXPR"
1620
1621 #: main.cc:107
1622 msgid "set options, use -e '(ly-option-usage)' for help"
1623 msgstr "aseta optiot, käytä -e '(ly-option-usage)' saadaksesi opastusta"
1624
1625 #: main.cc:110
1626 msgid "use output format EXT"
1627 msgstr "käytä tulostemuotoa EXT"
1628
1629 #: main.cc:112
1630 msgid "FIELD"
1631 msgstr "KENTTÄ"
1632
1633 #: main.cc:112
1634 msgid "write header field to BASENAME.FIELD"
1635 msgstr "kirjoita otsakekenttä paikkaan PERUSNIMI.KENTTÄ"
1636
1637 #: main.cc:113
1638 msgid "add DIR to search path"
1639 msgstr "lisää DIR hakupolkuun"
1640
1641 #: main.cc:114
1642 msgid "use FILE as init file"
1643 msgstr "käytetään TIEDOSTO alustustiedostona"
1644
1645 #: main.cc:118
1646 msgid "prepend DIR to dependencies"
1647 msgstr "lisää DIR riippuvuuksien alkuun"
1648
1649 #.
1650 #. should audit again.
1651 #.
1652 #: main.cc:123
1653 msgid "inhibit file output naming and exporting"
1654 msgstr "estä tiedostotulosteen nimeäminen ja siirtotiedostoon kirjoittaminen"
1655
1656 #. No version number or newline here. It confuses help2man.
1657 #: main.cc:155
1658 #, c-format
1659 msgid "Usage: %s [OPTIONS]... FILE..."
1660 msgstr "Käyttö: %s [OPTIOT]... TIEDOSTO..."
1661
1662 #: main.cc:157
1663 msgid "Typeset music and or play MIDI from FILE."
1664 msgstr "Lado musiikki ja tai soita MIDI tiedostosta TIEDOSTO."
1665
1666 #: main.cc:160
1667 msgid ""
1668 "LilyPond is a music typesetter.  It produces beautiful sheet music\n"
1669 "using a high level description file as input.  LilyPond is part of \n"
1670 "the GNU Project.\n"
1671 msgstr ""
1672 "LilyPond on musiikin ladontaohjelma. Se tuottaa kaunista nuottikuvaa\n"
1673 "käyttäen korkean tason kuvauskieltä syötteenä.  LilyPond on osa\n"
1674 "GNU Projektia.\n"
1675
1676 #: main.cc:182
1677 #, c-format
1678 msgid ""
1679 "This is free software.  It is covered by the GNU General Public License,\n"
1680 "and you are welcome to change it and/or distribute copies of it under\n"
1681 "certain conditions.  Invoke as `%s --warranty' for more information.\n"
1682 msgstr ""
1683 "Tämä on ilmaisohjelmisto. Siihen sovelletaan GNU General Public License,\n"
1684 "ja olet tervetullut muuttamaan sitä ja/tai levittämään siitä kopioita\n"
1685 "tietyillä ehdoilla. Suorita `%s --warranty' saadaksesi lisäinformaatiota.\n"
1686
1687 #: main.cc:198
1688 msgid "GNU LilyPond -- The music typesetter"
1689 msgstr "GNU LilyPond -- Musiikin ladontaohjelma"
1690
1691 #: main.cc:206
1692 msgid ""
1693 "    This program is free software; you can redistribute it and/or\n"
1694 "modify it under the terms of the GNU General Public License version 2\n"
1695 "as published by the Free Software Foundation.\n"
1696 "\n"
1697 "    This program is distributed in the hope that it will be useful,\n"
1698 "but WITHOUT ANY WARRANTY; without even the implied warranty of\n"
1699 "MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU\n"
1700 "General Public License for more details.\n"
1701 "\n"
1702 "    You should have received a copy (refer to the file COPYING) of the\n"
1703 "GNU General Public License along with this program; if not, write to\n"
1704 "the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307,\n"
1705 "USA.\n"
1706 msgstr ""
1707 "    Tämä ohjelma on vapaata lähdekoodia; voit levittää sitä ja/tai\n"
1708 "muokata sitä lisenssin GNU General Public License versio 2 ehdoilla, \n"
1709 "kuten Free Software Foundation on sen julkaissut.\n"
1710 "\n"
1711 "    Ohjelmaa levitetään siinä toivossa että se on hyödyllinen, mutta\n"
1712 "ILMAN MITÄÄN TAKUUTA; ilman että edes annettaisiin ymmärtää takeista\n"
1713 "KAUPAKSIKÄYVYYDESTÄ tai SOPIVUUDESTA TIETTYYN TARKOITUKSEEN.  Lisätietoja\n"
1714 "voit katsoa lisenssistä GNU General Public Licence.\n"
1715 "\n"
1716 "    Saat kopion (katso tiedosto COPYING) lisenssistä GNU General Public\n"
1717 "License ohjelman mukana; jos et saanut; kirjoita osoitteeseen\n"
1718 "Free Software Foundation, Inc., 59 Temple Place - Suite 330,\n"
1719 "Boston, MA 02111-1307, USA.\n"
1720
1721 #: mensural-ligature.cc:153
1722 #, c-format
1723 msgid "Mensural_ligature:thickness undefined on flexa %d; assuming 1.4"
1724 msgstr "Mensural_ligature: paksuus määrittämättä kohdassa flexa %d; oletetaan 1.4"
1725
1726 #: mensural-ligature.cc:169
1727 #, c-format
1728 msgid "Mensural_ligature:delta-pitch undefined on flexa %d; assuming 0"
1729 msgstr "Mensural_ligature: delta-pitch määrittämättä kohdassa flexa %d; oletetaan 0"
1730
1731 #: mensural-ligature.cc:182
1732 #, c-format
1733 msgid "Mensural_ligature:flexa-width undefined on flexa %d; assuming 2.0"
1734 msgstr "Mensural_ligature: flexa-width määrittämättä kohdassa flexa %d; oletetaan 2.0\""
1735
1736 #: mensural-ligature.cc:215
1737 msgid "Mensural_ligature:unexpected case fall-through"
1738 msgstr "Mensural_ligature: odottamaton tapauksen raukeaminen"
1739
1740 #: mensural-ligature.cc:225
1741 msgid "Mensural_ligature: (join_left == 0)"
1742 msgstr "Mensural_ligature: (join_left == 0)"
1743
1744 #: mensural-ligature-engraver.cc:248 mensural-ligature-engraver.cc:397
1745 msgid "unexpected case fall-through"
1746 msgstr "odottamaton tapauksen raukeaminen"
1747
1748 #: mensural-ligature-engraver.cc:259
1749 msgid "ligature with less than 2 heads -> skipping"
1750 msgstr "ligatuuri vähemmällä kuin 2:lla nuottipäällä -> ohitetaan"
1751
1752 #: mensural-ligature-engraver.cc:279
1753 msgid "can not determine pitch of ligature primitive -> skipping"
1754 msgstr "ei voitu määrittää nuottikorkeutta ligatuurin osalle -> ohitetaan"
1755
1756 #: mensural-ligature-engraver.cc:302
1757 msgid "prime interval within ligature -> skipping"
1758 msgstr "priimi-intervalli ligatuurissa -> ohitetaan"
1759
1760 #: mensural-ligature-engraver.cc:312
1761 msgid "mensural ligature: duration none of L, B, S -> skipping"
1762 msgstr "mensuraaliligatuuri: kesto ei ollut L, B tai S -> ohitetaan"
1763
1764 #: midi-item.cc:148
1765 #, c-format
1766 msgid "no such instrument: `%s'"
1767 msgstr "ei löytynyt instrumenttia: `%s'"
1768
1769 #: midi-item.cc:238
1770 msgid "silly duration"
1771 msgstr "sekava kesto"
1772
1773 #: midi-item.cc:251
1774 msgid "silly pitch"
1775 msgstr "sekava äänenkorkeus"
1776
1777 #: music-output-def.cc:111
1778 #, c-format
1779 msgid "can't find `%s' context"
1780 msgstr "ei löytynyt kontekstia `%s'"
1781
1782 #: my-lily-lexer.cc:169
1783 #, c-format
1784 msgid "Identifier name is a keyword: `%s'"
1785 msgstr "Tunnistenimi on avainsana: `%s'"
1786
1787 #: my-lily-lexer.cc:191
1788 #, c-format
1789 msgid "error at EOF: %s"
1790 msgstr "virhe tiedoston lopussa (EOF): %s"
1791
1792 #: my-lily-parser.cc:44
1793 msgid "Parsing..."
1794 msgstr "Jäsennetään..."
1795
1796 #: my-lily-parser.cc:54
1797 msgid "Braces don't match"
1798 msgstr "Aaltosulkumerkit eivät täsmää"
1799
1800 #.
1801 #. music for the softenon children?
1802 #.
1803 #: new-fingering-engraver.cc:143
1804 msgid "music for the martians."
1805 msgstr "musiikkia marsilaisille"
1806
1807 #: new-tie-engraver.cc:166 tie-engraver.cc:217
1808 msgid "lonely tie"
1809 msgstr "yksinäinen sidos"
1810
1811 #: note-collision.cc:340
1812 msgid "Too many clashing notecolumns.  Ignoring them."
1813 msgstr "Liian monta törmäävää nuottisaraketta.  Sivuutetaan ne."
1814
1815 #: note-head.cc:127
1816 #, c-format
1817 msgid "note head `%s' not found"
1818 msgstr "nuottipäätä `%s' ei löytynyt"
1819
1820 #: paper-def.cc:96
1821 #, c-format
1822 msgid "paper output to `%s'..."
1823 msgstr "paperituloste paikkaan `%s'..."
1824
1825 #: paper-score.cc:78
1826 #, c-format
1827 msgid "Element count %d (spanners %d) "
1828 msgstr "Elementtien määrä: %d (ladokkeita: %d)"
1829
1830 #: paper-score.cc:83
1831 msgid "Preprocessing graphical objects..."
1832 msgstr "Esiprosessoidaan graafisia kohteita..."
1833
1834 #: paper-score.cc:116
1835 msgid "Outputting Score, defined at: "
1836 msgstr "Tulostetaan viivasto, määrittelypaikasta: "
1837
1838 #: parse-scm.cc:79
1839 msgid "GUILE signaled an error for the expression begining here"
1840 msgstr "GUILE aitoi virheen lausekkeelle, joka alkoi täältä"
1841
1842 #.
1843 #. We could change the current translator's id, but that would make
1844 #. errors hard to catch
1845 #.
1846 #. last->translator_id_string_  = get_change ()->change_to_id_string_;
1847 #.
1848 #: part-combine-music-iterator.cc:139
1849 #, c-format
1850 msgid "I'm one myself: `%s'"
1851 msgstr "Olen yksikseni: '%s'"
1852
1853 #: part-combine-music-iterator.cc:142
1854 #, c-format
1855 msgid "none of these in my family: `%s'"
1856 msgstr "yksikään näistä ei ole perheestäni: `%s'"
1857
1858 #: percent-repeat-engraver.cc:109
1859 msgid "Don't know how to handle a percent repeat of this length."
1860 msgstr "Ei tiedetä kuinka kohdella tämän mittaista prosenttitoistoa."
1861
1862 #: percent-repeat-engraver.cc:163
1863 msgid "unterminated percent repeat"
1864 msgstr "päättymätön prosenttitoisto"
1865
1866 #: percent-repeat-iterator.cc:65
1867 msgid "no one to print a percent"
1868 msgstr "kukaan ei voinut tulostaa prosenttia"
1869
1870 #: performance.cc:51
1871 msgid "Track ... "
1872 msgstr "Jälki ... "
1873
1874 #: performance.cc:83
1875 msgid "Creator: "
1876 msgstr "Tekijä: "
1877
1878 #: performance.cc:103
1879 msgid "at "
1880 msgstr "kohdassa "
1881
1882 #: performance.cc:114
1883 #, c-format
1884 msgid "from musical definition: %s"
1885 msgstr "musiikkimäärityksestä: %s"
1886
1887 #: performance.cc:169
1888 #, c-format
1889 msgid "MIDI output to `%s'..."
1890 msgstr "MIDI-tuloste paikkaan `%s'..."
1891
1892 #: phrasing-slur-engraver.cc:123
1893 msgid "unterminated phrasing slur"
1894 msgstr "päättymätön fraasikaari"
1895
1896 #: phrasing-slur-engraver.cc:141
1897 msgid "can't find start of phrasing slur"
1898 msgstr "ei voitu löytää alkua fraasikaarelle"
1899
1900 #: piano-pedal-engraver.cc:235 piano-pedal-engraver.cc:250
1901 #: piano-pedal-engraver.cc:305 piano-pedal-performer.cc:82
1902 #, c-format
1903 msgid "can't find start of piano pedal: `%s'"
1904 msgstr "ei voitu löytää alkua pianopedaalille: `%s'"
1905
1906 #: piano-pedal-engraver.cc:410
1907 msgid "unterminated pedal bracket"
1908 msgstr "päättymätön pedaalisulkumerkki"
1909
1910 #: property-iterator.cc:97
1911 #, c-format
1912 msgid "Not a grob name, `%s'."
1913 msgstr "Ei ollut nimi graafiselle objektille (grob): `%s'."
1914
1915 #: rest.cc:139
1916 #, c-format
1917 msgid "rest `%s' not found, "
1918 msgstr "taukoa `%s' ei löytynyt, "
1919
1920 #: rest-collision.cc:199
1921 msgid "too many colliding rests"
1922 msgstr "liian monta törmäävää taukoa"
1923
1924 #: scm-option.cc:45
1925 msgid "lilypond -e EXPR means:"
1926 msgstr "lilypond -e EXPR tarkoittaa:"
1927
1928 #: scm-option.cc:47
1929 msgid "  Evalute the Scheme EXPR before parsing any .ly files."
1930 msgstr "  Evaluoidaan skeema EXPR ennen kuin jäsennetään yhtäkään .ly -tiedostoista."
1931
1932 #: scm-option.cc:49
1933 msgid "  Multiple -e options may be given, they will be evaluated sequentially."
1934 msgstr "  Useita -e optioita voidaan antaa, ne evaluoidaan peräkkäisinä"
1935
1936 #: scm-option.cc:51
1937 msgid "  The function ly-set-option allows for access to some internal variables."
1938 msgstr "  Funktio ly-set-option sallii pääsyn joihinkin sisäisiin muuttujiin"
1939
1940 #: scm-option.cc:53
1941 msgid "Usage: lilypond -e \"(ly-set-option SYMBOL VAL)\""
1942 msgstr "Käyttö: lilypond -e \"(ly-set-option SYMBOLI ARVO)\""
1943
1944 #: scm-option.cc:55
1945 msgid "Where SYMBOL VAL pair is any of:"
1946 msgstr "Missä (SYMBOLI,ARVO)-pari on jokin näistä:"
1947
1948 #: scm-option.cc:128
1949 msgid "Unknown internal option!"
1950 msgstr "Tuntematon sisäinen optio!"
1951
1952 #: score.cc:85
1953 msgid "Interpreting music..."
1954 msgstr "Tulkitaan musiikkia..."
1955
1956 #: score.cc:97
1957 msgid "Need music in a score"
1958 msgstr "Laita musiikkia viivastolle"
1959
1960 #. should we? hampers debugging.
1961 #: score.cc:111
1962 msgid "Errors found/*, not processing score*/"
1963 msgstr "Virheitä löytyi/*, ei prosessoida viivastoa*/"
1964
1965 #: score.cc:118
1966 #, c-format
1967 msgid "elapsed time: %.2f seconds"
1968 msgstr "kulunut aika: %.2f sekuntia"
1969
1970 #: score-engraver.cc:99
1971 #, c-format
1972 msgid "can't find `%s'"
1973 msgstr "`%s' jäi löytymättä"
1974
1975 #: score-engraver.cc:100
1976 msgid "Fonts have not been installed properly.  Aborting"
1977 msgstr "Fontteja ei oltu asennettu kunnolla. Keskeytetään"
1978
1979 #: score-engraver.cc:205
1980 #, c-format
1981 msgid "unbound spanner `%s'"
1982 msgstr "sitomaton ladoke `%s'"
1983
1984 #: script-engraver.cc:90
1985 #, c-format
1986 msgid "Don't know how to interpret articulation `%s'"
1987 msgstr "Ei tiedetä kuinka tulkita artikulaatio: `%s'"
1988
1989 #. this shouldn't happen, but let's continue anyway.
1990 #: separation-item.cc:53 separation-item.cc:101
1991 msgid "Separation_item:  I've been drinking too much"
1992 msgstr "Separation_item:  Olen juonut liikaa"
1993
1994 #: simple-spacer.cc:248
1995 #, c-format
1996 msgid "No spring between column %d and next one"
1997 msgstr "Ei jousta sarakkeen %d ja sitä seuraavan välillä"
1998
1999 #: slur-engraver.cc:141
2000 msgid "unterminated slur"
2001 msgstr "päättymätön kaari"
2002
2003 #. How to shut up this warning, when Voice_devnull_engraver has
2004 #. eaten start event?
2005 #: slur-engraver.cc:159
2006 msgid "can't find start of slur"
2007 msgstr "ei löytynyt alkua kaarelle"
2008
2009 #: source-file.cc:67
2010 #, c-format
2011 msgid "Huh?  Got %d, expected %d characters"
2012 msgstr "Täh?  Saatiin %d merkkiä, oletetun %d asemesta"
2013
2014 #: spacing-spanner.cc:379
2015 #, c-format
2016 msgid "Global shortest duration is %s\n"
2017 msgstr "Globaali lyhin kesto on %s\n"
2018
2019 #: spring-smob.cc:32
2020 #, c-format
2021 msgid "#<spring smob d= %f>"
2022 msgstr "#<spring smob d= %f>"
2023
2024 #: staff-symbol.cc:61
2025 msgid "staff symbol: indentation yields beyond end of line"
2026 msgstr "viivastosymboli: sisennys vie rivin lopun taakse"
2027
2028 #: stem.cc:118
2029 msgid "Weird stem size; check for narrow beams"
2030 msgstr "Outo varren koko; koeta lyhyempiä palkkeja"
2031
2032 #: stem.cc:611
2033 #, c-format
2034 msgid "flag `%s' not found"
2035 msgstr "lippua `%s' ei löydetty"
2036
2037 #: stem.cc:624
2038 #, c-format
2039 msgid "flag stroke `%s' not found"
2040 msgstr "lipun piirtoa `%s' ei löytynyt"
2041
2042 #: stem-engraver.cc:96
2043 msgid "tremolo duration is too long"
2044 msgstr "tremolon kesto on liian pitkä"
2045
2046 #: stem-engraver.cc:124
2047 #, c-format
2048 msgid "Adding note head to incompatible stem (type = %d)"
2049 msgstr "Lisätään nuottipää sopimattomaan varteen (tyyppi = %d)"
2050
2051 #: stem-engraver.cc:125
2052 msgid "Don't you want polyphonic voices instead?"
2053 msgstr "Etkö haluaisi polyfonisia äänisiä sen sijaan?"
2054
2055 #: streams.cc:34
2056 #, c-format
2057 msgid "can't create directory: `%s'"
2058 msgstr "ei voitu tehdä hakemistoa: `%s'"
2059
2060 #: streams.cc:48
2061 msgid "Error syncing file (disk full?)"
2062 msgstr "Virhe synkronisoitaessa tiedostoa (onko levy täysi?)"
2063
2064 #: system.cc:125
2065 #, c-format
2066 msgid "Element count %d."
2067 msgstr "Elementtien määrä: %d."
2068
2069 #: system.cc:372
2070 #, c-format
2071 msgid "Grob count %d "
2072 msgstr "Graafisien objektien (grob) määrä: %d "
2073
2074 #: system.cc:386
2075 msgid "Calculating line breaks..."
2076 msgstr "Lasketaan rivinvaihtoja..."
2077
2078 #: text-spanner-engraver.cc:81
2079 msgid "can't find start of text spanner"
2080 msgstr "ei löydetty alkua tekstiladokkeelle"
2081
2082 #: text-spanner-engraver.cc:95
2083 msgid "already have a text spanner"
2084 msgstr "tekstiladoke löytyi jo"
2085
2086 #: text-spanner-engraver.cc:164
2087 msgid "unterminated text spanner"
2088 msgstr "päättymätön tekstiladoke"
2089
2090 #: tfm.cc:83
2091 #, c-format
2092 msgid "can't find ascii character: %d"
2093 msgstr "ei löydetty ASCII-merkkiä: %d"
2094
2095 #. Not using ngettext's plural feature here, as this message is
2096 #. more of a programming error.
2097 #: tfm-reader.cc:108
2098 #, c-format
2099 msgid "TFM header of `%s' has only %u word (s)"
2100 msgstr "TFM-otsakkeessa `%s' on vain %u sana(a)"
2101
2102 #: tfm-reader.cc:142
2103 #, c-format
2104 msgid "%s: TFM file has %u parameters, which is more than the %u I can handle"
2105 msgstr "%s: TFM-tiedostossa on %u parametria, mikä on enemmän kuin maksimimäärä %u"
2106
2107 #: tie-performer.cc:159
2108 msgid "No ties were created!"
2109 msgstr "Sidoksia ei tehty!"
2110
2111 #: time-scaled-music-iterator.cc:25
2112 msgid "no one to print a tuplet start bracket"
2113 msgstr "ketään ei löytynyt tulostamaan tupletin alkusulkua"
2114
2115 #. If there is no such symbol, we default to the numbered style.
2116 #. (Here really with a warning!)
2117 #: time-signature.cc:87
2118 #, c-format
2119 msgid "time signature symbol `%s' not found; reverting to numbered style"
2120 msgstr "aikamerkintäsymbolia `%s' ei löytynyt; vaihdetaan numeroituun tyyliin"
2121
2122 #.
2123 #. Todo: should make typecheck?
2124 #.
2125 #. OTOH, Tristan Keuris writes 8/20 in his Intermezzi.
2126 #.
2127 #: time-signature-engraver.cc:57
2128 #, c-format
2129 msgid "Found strange time signature %d/%d."
2130 msgstr "Löydettiin outo aikamerkintä: %d/%d."
2131
2132 #: translator-ctors.cc:53
2133 #, c-format
2134 msgid "unknown translator: `%s'"
2135 msgstr "tuntematon tulkitsija: `%s'"
2136
2137 #: translator-def.cc:105
2138 msgid "Program has no such type"
2139 msgstr "Ohjelmalla ei ole sellaista tyyppiä"
2140
2141 #: translator-def.cc:111
2142 #, c-format
2143 msgid "Already contains: `%s'"
2144 msgstr "Sisällytettiin jo: `%s'"
2145
2146 #: translator-def.cc:112
2147 #, c-format
2148 msgid "Not adding translator: `%s'"
2149 msgstr "Ei lisätty tulkitsijaa: `%s'"
2150
2151 #: translator-def.cc:229
2152 #, c-format
2153 msgid "can't find: `%s'"
2154 msgstr "ei löytynyt `%s'"
2155
2156 #: translator-group.cc:158
2157 #, c-format
2158 msgid "can't find or create `%s' called `%s'"
2159 msgstr "ei löydetty tai ei luotu `%s' nimeltä `%s'"
2160
2161 #: translator-group.cc:230
2162 #, c-format
2163 msgid "can't find or create: `%s'"
2164 msgstr "ei löydetty tai ei luotu: `%s'"
2165
2166 #: vaticana-ligature.cc:49
2167 msgid "ascending vaticana style flexa"
2168 msgstr "laskeva vaticana-tyylinen flexa"
2169
2170 #: vaticana-ligature.cc:219
2171 msgid "Vaticana_ligature:thickness undefined; assuming 1.4"
2172 msgstr "Vaticana_ligature: määrittämätön paksuus; oletetaan 1.4"
2173
2174 #: vaticana-ligature.cc:233
2175 msgid "Vaticana_ligature:x-offset undefined; assuming 0.0"
2176 msgstr "Vaticana_ligature: x-offset määrittämätön; oletetaan 0.0"
2177
2178 #: vaticana-ligature.cc:258
2179 msgid "Vaticana_ligature: (delta_pitch == 0)"
2180 msgstr "Vaticana_ligature: (delta_pitch == 0)"
2181
2182 #: vaticana-ligature.cc:271
2183 msgid "Vaticana_ligature:delta-pitch -> ignoring join"
2184 msgstr "Vaticana_ligature:delta-pitch -> sivuutetaan sidos"
2185
2186 #: vaticana-ligature-engraver.cc:477
2187 #, c-format
2188 msgid "Vaticana_ligature_engraver: setting `spacing-increment = %f': ptr=%ul"
2189 msgstr "Vaticana_ligature_engraver: asetetaan `spacing-increment = %f': ptr=%ul"
2190
2191 #: volta-engraver.cc:112
2192 msgid "No volta spanner to end"
2193 msgstr "Ei päätettävää volta-ladoketta"
2194
2195 #: volta-engraver.cc:123
2196 msgid "Already have a volta spanner.  Stopping that one prematurely."
2197 msgstr "Löytyi ja volta-ladoke.  Lopetetaan se ennenaikaisesti."
2198
2199 #: volta-engraver.cc:127
2200 msgid "Also have a stopped spanner.  Giving up."
2201 msgstr "Löytyi myös lopetettu ladoke.  Luovutetaan."
2202
2203 #: parser.yy:480
2204 msgid "Identifier should have alphabetic characters only"
2205 msgstr "Tunnisteessa saa olla vain aakkosellisia merkkejä"
2206
2207 #: parser.yy:779
2208 msgid "More alternatives than repeats.  Junking excess alternatives."
2209 msgstr "Enemmän vaihtoehtoja kuin kertauksia.  Heitetään pois liialliset vaihtoehdot."
2210
2211 #: parser.yy:861 parser.yy:868
2212 msgid "\\applycontext takes function argument"
2213 msgstr "\\applycontext vaati funktioargumentin"
2214
2215 #: parser.yy:877
2216 msgid "Second argument must be a symbol"
2217 msgstr "Toisen argumentin on oltava symboli"
2218
2219 #: parser.yy:882
2220 msgid "First argument must be a procedure taking one argument"
2221 msgstr "Ensimmäisen argumentin on oltava aliohjelma, joka sa yhden argumentin"
2222
2223 #: parser.yy:1009
2224 msgid "\\apply takes function argument"
2225 msgstr "\\apply vaatii funktioargumentin"
2226
2227 #: parser.yy:1501
2228 msgid "Expecting string as script definition"
2229 msgstr "Oletetaan merkkijonon olevan skriptimäärittely"
2230
2231 #: parser.yy:1598
2232 msgid "Expecting musical-pitch value"
2233 msgstr "Oletetaan musiikillinen nuottikorkeusarvo"
2234
2235 #: parser.yy:1609
2236 msgid "Must have duration object"
2237 msgstr "Täytyy olla kesto-objekti"
2238
2239 #: parser.yy:1618 parser.yy:1626
2240 msgid "Have to be in Lyric mode for lyrics"
2241 msgstr "Täytyy olla Lyrics -moodissa lyriikkaa varten"
2242
2243 #: parser.yy:1798 parser.yy:1853
2244 #, c-format
2245 msgid "not a duration: %d"
2246 msgstr "ei ole kesto: %d"
2247
2248 #: parser.yy:1949
2249 msgid "Have to be in Note mode for notes"
2250 msgstr "Täytyy olla Note -moodissa nuotteja varten"
2251
2252 #: parser.yy:2032
2253 msgid "Have to be in Chord mode for chords"
2254 msgstr "Täytyy olla Chord -moodissa sointuja varten"
2255
2256 #: parser.yy:2171
2257 msgid "need integer number arg"
2258 msgstr "tarvitaan kokonaislukuargumentti"
2259
2260 #: parser.yy:2316
2261 msgid "Suspect duration found following this beam"
2262 msgstr "Epäilty kesto löytyi palkin jälkeen"
2263
2264 #: lexer.ll:186
2265 msgid "EOF found inside a comment"
2266 msgstr "EOF löytyi kommentin sisältä"
2267
2268 #: lexer.ll:200
2269 msgid "\\maininput disallowed outside init files"
2270 msgstr "\\maininput ei ole sallittu init-alustustiedoston ulkopuolella"
2271
2272 #: lexer.ll:224
2273 #, c-format
2274 msgid "wrong or undefined identifier: `%s'"
2275 msgstr "väärä tai määrittämätön tunniste: `%s'"
2276
2277 #. backup rule
2278 #: lexer.ll:233
2279 msgid "Missing end quote"
2280 msgstr "Puuttuva loppulainausmerkki"
2281
2282 #. backup rule
2283 #: lexer.ll:255 lexer.ll:259
2284 msgid "white expected"
2285 msgstr "oletettiin välilyönti"
2286
2287 #: lexer.ll:268
2288 msgid "Can't evaluate Scheme in safe mode"
2289 msgstr "Scheme ei evaluoitunut turvamoodissa"
2290
2291 #: lexer.ll:397 lexer.ll:487
2292 msgid "Brace found at end of lyric.  Did you forget a space?"
2293 msgstr "Sulkumerkki löytyi lyriikan lopussa. Unohditko välilyönnin?"
2294
2295 #: lexer.ll:574
2296 #, c-format
2297 msgid "invalid character: `%c'"
2298 msgstr "epäkelpo merkki: `%c'"
2299
2300 #: lexer.ll:651
2301 #, c-format
2302 msgid "unknown escaped string: `\\%s'"
2303 msgstr "tuntematon koodinvaihtomerkillinen merkkijono: `\\\\%s'"
2304
2305 #: lexer.ll:742
2306 #, c-format
2307 msgid "Incorrect lilypond version: %s (%s, %s)"
2308 msgstr "Epäkelpo lilypond versio: %s (%s, %s)"
2309
2310 #: lexer.ll:743
2311 msgid "Consider updating the input with the convert-ly script"
2312 msgstr "Harkitse syötteen päivittämistä convert-ly scriptillä"
2313
2314 #~ msgid "Run LilyPond using LaTeX for titling"
2315 #~ msgstr "Aja LilyPond käyttäen LaTeX:ia otsikoimiseen"
2316
2317 #~ msgid "Fetch and rebuild from latest source package"
2318 #~ msgstr "Hae ja käännä uudelleen viimeisestä lähdekoodipakkauksesta"
2319
2320 #~ msgid "unpack and build in DIR [%s]"
2321 #~ msgstr "pura paketti ja käännä hakemistiin DIR [%s]"
2322
2323 #~ msgid "execute COMMAND, subtitute:"
2324 #~ msgstr "suorita KOMENTO, korvaa:"
2325
2326 #~ msgid "%b: build root"
2327 #~ msgstr "%b: laatimisen juuri"
2328
2329 #~ msgid "%n: package name"
2330 #~ msgstr "%n: paketin nimi"
2331
2332 #~ msgid "%r: release directory"
2333 #~ msgstr "%r: julkaisuhakemisto"
2334
2335 #~ msgid "%t: tarball"
2336 #~ msgstr "%t: tar-paketti"
2337
2338 #~ msgid "%v: package version"
2339 #~ msgstr "%v: paketin versio"
2340
2341 #~ msgid "keep all output, and name the directory %s"
2342 #~ msgstr "säilytä kaikki tulosteet ja nimeä tiedosto %s"
2343
2344 #~ msgid "upon failure notify EMAIL[,EMAIL]"
2345 #~ msgstr "virheen sattuessa ilmoita osoitteeseen EMAIL[,EMAIL]"
2346
2347 #~ msgid "remove previous build"
2348 #~ msgstr "poista aiempi laadinta"
2349
2350 #~ msgid "fetch and build URL [%s]"
2351 #~ msgstr "nouda ja laadi URL [%s]"
2352
2353 #~ msgid "Listing `%s'..."
2354 #~ msgstr "Listataan `%s'..."
2355
2356 #~ msgid "latest is: %s"
2357 #~ msgstr "viimeisin on: %s"
2358
2359 #~ msgid "relax, %s is up to date"
2360 #~ msgstr "rentoudu, %s on päivitetty"
2361
2362 #~ msgid "Fetching `%s'..."
2363 #~ msgstr "Noudetaan `%s'..."
2364
2365 #~ msgid "Building `%s'..."
2366 #~ msgstr "Rakennetaan `%s'..."
2367
2368 #~ msgid "invalid subtraction: not part of chord: %s"
2369 #~ msgstr "epäkelpo korvaus: ei ole soinnun osa: %s"
2370
2371 #~ msgid "invalid inversion pitch: not part of chord: %s"
2372 #~ msgstr "epäkelpo käänteinen äänenkorkeus: ei ole sounnun osa: %s"
2373
2374 #~ msgid "This was the other key definition."
2375 #~ msgstr "Tämä oli toinen sävellajin määritys."
2376
2377 #~ msgid ", at "
2378 #~ msgstr ", kohdassa "
2379
2380 #~ msgid "Pitch arguments out of range"
2381 #~ msgstr "Äänenkorkeusargumentti vaihteluvälin ulkopuolella"
2382
2383 #~ msgid "(left_head == 0)"
2384 #~ msgstr "(left_head == 0)"
2385
2386 #~ msgid "undefined left_head"
2387 #~ msgstr "määrittämätön left_head"
2388
2389 #~ msgid "(right_head == 0)"
2390 #~ msgstr "(right_head == 0)"
2391
2392 #~ msgid "undefined right_head"
2393 #~ msgstr "määrittämätön right_head"
2394
2395 #~ msgid "junking lonely porrectus"
2396 #~ msgstr "heitetään pois yksinäinen Porrectus"
2397
2398 #~ msgid "porrectus style undefined; using mensural"
2399 #~ msgstr "porrectus-tyyli määrittämätön; käytetään mensuraalia"
2400
2401 #~ msgid "stack size cur %d, max %d\n"
2402 #~ msgstr "nyk pinokoko: %d, maximi %d\n"
2403
2404 #~ msgid "Putting slur over rest."
2405 #~ msgstr "Laitetaan kaari tauon päälle."
2406
2407 #~ msgid "Slur over rest?"
2408 #~ msgstr "Kaari tauon päällä?"
2409
2410 #~ msgid "Text_spanner too small"
2411 #~ msgstr "Tekstiladoke on liian pieni"
2412
2413 #~ msgid "Can't specify direction for this request"
2414 #~ msgstr "Ei voitu määritelllä suuntaa tälle pyynnölle"