# Finnish Translation of lilypond. # Copyright (C) 2003 Han-Wen Nienhuys, Jan Nieuwenhuizen # This file is distributed under the same license as the lilypond package. # FIRST AUTHOR: Heikki Junes , 2003. # (ersetzt die Übersetzung von 1999 von Erwin Dieterich ) # msgid "" msgstr "" "Project-Id-Version: lilypond 1.7.27\n" "POT-Creation-Date: 2003-07-23 0:40+0300\n" "PO-Revision-Date: 2003-07-23 13:37+0300\n" "Last-Translator: Heikki Junes \n" "Language-Team: Finnish \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=ISO-8859-1\n" "Content-Transfer-Encoding: 8bit\n" #. this is where special info is often stored #. ############################################################### #. lilylib.py -- options and stuff #. #. source file of the GNU LilyPond music typesetter #. #. (c) 1998--2003 Han-Wen Nienhuys #. Jan Nieuwenhuizen #. ## 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\) *( #. ## replace:\1ly.\2 ( #. ## subst: \(help_summary\|keep_temp_dir_p\|option_definitions\|original_dir\|program_name\|pseudo_filter_p\|temp_dir\|verbose_p\) #. ############################################################### #. Users of python modules should include this snippet #. and customize variables below. #. We'll suffer this path init stuff as long as we don't install our #. python packages in /lib/pythonx.y (and don't kludge around #. it as we do with teTeX on Red Hat Linux: set some environment var #. (PYTHONPATH) in profile) #. If set, LILYPONDPREFIX must take prevalence #. if datadir is not set, we're doing a build and LILYPONDPREFIX #. Customize these #. lilylib globals #: lilylib.py:60 msgid "lilylib module" msgstr "lilylib moduuli" #: lilylib.py:63 lilypond-book.py:131 ly2dvi.py:128 midi2ly.py:100 #: mup2ly.py:75 main.cc:111 msgid "print this help" msgstr "näytä tämä opastus" #. ############################################################### #. Handle bug in Python 1.6-2.1 #. #. there are recursion limits for some patterns in Python 1.6 til 2.1. #. fix this by importing pre instead. Fix by Mats. #. Attempt to fix problems with limited stack size set by Python! #. Sets unlimited stack size. Note that the resource module only #. is available on UNIX. #: lilylib.py:114 midi2ly.py:136 mup2ly.py:130 main.cc:188 main.cc:200 #, c-format, python-format msgid "Copyright (c) %s by" msgstr "Copyright (c) %s by" #: lilylib.py:114 msgid " 1998--2003" msgstr "1998--2003" #: lilylib.py:118 msgid "Distributed under terms of the GNU General Public License." msgstr "Levitettävissä ehdoilla GNU General Public License." #: lilylib.py:120 msgid "It comes with NO WARRANTY." msgstr "Se toimitetaan ILMAN TAKUUTA." #: lilylib.py:127 midi2ly.py:150 mup2ly.py:144 input.cc:88 msgid "warning: " msgstr "varoitus: " #. lots of midi files use plain text for lyric events #. FIXME: read from stdin when files[0] = '-' #: lilylib.py:130 midi2ly.py:165 midi2ly.py:1018 midi2ly.py:1083 mup2ly.py:147 #: mup2ly.py:161 input.cc:93 msgid "error: " msgstr "virhe: " #: lilylib.py:134 #, python-format msgid "Exiting (%d)..." msgstr "Lopetetaan (%d)..." #: lilylib.py:194 midi2ly.py:224 mup2ly.py:220 #, python-format msgid "Usage: %s [OPTION]... FILE" msgstr "Käyttö: %s [OPTIOT]... TIEDOSTO" #: lilylib.py:198 midi2ly.py:228 mup2ly.py:224 main.cc:166 msgid "Options:" msgstr "Optiot:" #: lilylib.py:202 midi2ly.py:232 mup2ly.py:228 main.cc:172 #, c-format, python-format msgid "Report bugs to %s." msgstr "Raportoi virheet osoitteeseen %s." #: lilylib.py:228 #, python-format msgid "Opening pipe `%s'" msgstr "Avataan putki `%s'" #. successful pipe close returns 'None' #: lilylib.py:240 #, python-format msgid "`%s' failed (%d)" msgstr "`%s' epäonnistui (%d)" #: lilylib.py:242 lilylib.py:289 lilypond-book.py:231 ly2dvi.py:512 msgid "The error log is as follows:" msgstr "Virheloki on seuraava:" #: lilylib.py:262 midi2ly.py:260 mup2ly.py:256 #, python-format msgid "Invoking `%s'" msgstr "Kutsutaan `%s'" #: lilylib.py:264 #, python-format msgid "Running %s..." msgstr "Ajetaan %s..." #: lilylib.py:282 #, python-format msgid "`%s' failed (%s)" msgstr "`%s' epäonnistui (%s)" #: lilylib.py:285 midi2ly.py:266 mup2ly.py:264 msgid "(ignored)" msgstr "(sivuutetaan)" #: lilylib.py:299 midi2ly.py:276 mup2ly.py:274 #, python-format msgid "Cleaning %s..." msgstr "Siivotaan pois %s..." #. Duh. Python style portable: cp *.EXT OUTDIR #. system ('cp *.%s %s' % (ext, outdir), 1) #. Python < 1.5.2 compatibility #. #. On most platforms, this is equivalent to #. `normpath(join(os.getcwd()), PATH)'. *Added in Python version 1.5.2* #. tex needs lots of memory, more than it gets by default on Debian #. TODO: * prevent multiple addition. #. * clean TEXINPUTS, MFINPUTS, TFMFONTS, #. as these take prevalence over $TEXMF #. and thus may break tex run? #. $TEXMF is special, previous value is already taken care of #. # -sOutputFile does not work with bbox? #. # todo: #. # have better algorithm for deciding when to crop page, #. # and when to show full page #: lilylib.py:458 msgid "Removing output file" msgstr "Poistetaan tulostustiedosto" #. !@PYTHON@ #. once upon a rainy monday afternoon. #. #. ... #. #. (not finished.) #. ABC standard v1.6: http://www.gre.ac.uk/~c.walshaw/abc2mtex/abc.txt #. #. Enhancements (Roy R. Rankin) #. #. Header section moved to top of lilypond file #. handle treble, treble-8, alto, and bass clef #. Handle voices (V: headers) with clef and part names, multiple voices #. Handle w: lyrics with multiple verses #. Handle key mode names for minor, major, phrygian, ionian, locrian, aeolian, #. mixolydian, lydian, dorian #. Handle part names from V: header #. Tuplets handling fixed up #. Lines starting with |: not discarded as header lines #. Multiple T: and C: header entries handled #. Accidental maintained until next bar check #. Silent rests supported #. articulations fermata, upbow, downbow, ltoe, accent, tenuto supported #. Chord strings([-^]"string") can contain a '#' #. Header fields enclosed by [] in notes string processed #. W: words output after tune as abc2ps does it (they failed before) #. Enhancements (Laura Conrad) #. #. Barring now preserved between ABC and lilypond #. the default placement for text in abc is above the staff. #. %%LY now supported. #. \breve and \longa supported. #. M:none doesn't crash lily. #. Limitations #. #. Multiple tunes in single file not supported #. Blank T: header lines should write score and open a new score #. Not all header fields supported #. ABC line breaks are ignored #. Block comments generate error and are ignored #. Postscript commands are ignored #. lyrics not resynchronized by line breaks (lyrics must fully match notes) #. %%LY slyrics can't be directly before a w: line. #. ??? #. TODO: #. #. Convert to new chord styles. #. #. UNDEF -> None #. #. uGUHGUHGHGUGH #. UGH #. treble8 is used by abctab2ps; -8va is used by barfly, #. and by my patch to abc2ps. If there's ever a standard #. about this we'll support that. #. find keywork #. assume that Q takes the form "Q:1/4=120" #. There are other possibilities, but they are deprecated #. outf.write ("\t\t\\consists Staff_margin_engraver\n") #. pitch manipulation. Tuples are (name, alteration). #. 0 is (central) C. Alteration -1 is a flat, Alteration +1 is a sharp #. pitch in semitones. #. abc to lilypond key mode names #. semitone shifts for key mode names #. latex does not like naked #'s #. latex does not like naked "'s #. break lyrics to words and put "'s around words containing numbers and '"'s #. escape " #. _ causes probs inside "" #. _ to ' _ ' #. split words with - #. unless \- #. ~ to space('_') #. * to to space #. latex does not like naked #'s #. put numbers and " and ( into quoted string #. insure space between lines #. title #. strip trailing blanks #. Meter #. KEY #. seperate clef info #. there may or may not be a space #. between the key letter and the mode #. ugh. #. ugh. #. Notes #. Origin #. Reference Number #. Area #. History #. Book #. Composer #. Default note length #. Voice #. Words #. vocals #. tempo #. we use in this order specified accidental, active accidental for bar, #. active accidental for key #. (num / den) / defaultlen < 1/base #. return (str, num,den,dots) #. ignore slide #. ignore roll #. s7m2 input doesnt care about spaces #. #. remember accidental for rest of bar #. #. get accidental set in this bar or UNDEF if not set #. WAT IS ABC EEN ONTZETTENDE PROGRAMMEERPOEP ! #. failed; not a note! #. escape '#'s #. #. |] thin-thick double bar line #. || thin-thin double bar line #. [| thick-thin double bar line #. :| left repeat #. |: right repeat #. :: left-right repeat #. |1 volta 1 #. |2 volta 2 #. first try the longer one #. bracket escape #. the nobarlines option is necessary for an abc to lilypond translator for #. exactly the same reason abc2midi needs it: abc requires the user to enter #. the note that will be printed, and MIDI and lilypond expect entry of the #. pitch that will be played. #. #. In standard 19th century musical notation, the algorithm for translating #. between printed note and pitch involves using the barlines to determine #. the scope of the accidentals. #. #. Since ABC is frequently used for music in styles that do not use this #. convention, such as most music written before 1700, or ethnic music in #. non-western scales, it is necessary to be able to tell a translator that #. the barlines should not affect its interpretation of the pitch. #. write other kinds of appending if we ever need them. #. add comments to current voice #. Try nibbling characters off until the line doesn't change. #. dump_global (outf) #. !@PYTHON@ #. #. convert-ly.py -- Update old LilyPond input files (fix name?) #. #. source file of the GNU LilyPond music typesetter #. #. (c) 1998--2003 Han-Wen Nienhuys #. Jan Nieuwenhuizen #. TODO #. use -f and -t for -s output #. NEWS #. 0.2 #. - rewrite in python #. Did we ever have \mudela-version? I doubt it. #. lilypond_version_re_str = '\\\\version *\"(.*)\"' #. ########################### #. need new a namespace #. raise FatalConversionError() #. need new a namespace #. harmful to current .lys #. str = re.sub ('\\\\key([^;]+);', '\\\\accidentals \\1;', str) #. raise FatalConversionError() #. raise FatalConversionError() #. raise FatalConversionError() #. TODO: lots of other syntax change should be done here as well #. Ugh, but meaning of \stemup changed too #. maybe we should do \stemup -> \stemUp\slurUp\tieUp ? #. I don't know exactly when these happened... #. ugh, we loose context setting here... #. (lacks capitalisation slur -> Slur) #. # dynamic.. #. TODO: add lots of these #. ugh #. old fix #. Make sure groups of more than one ; have space before #. them, so that non of them gets removed by next rule #. Only remove ; that are not after spaces, # or ; #. Otherwise we interfere with Scheme comments, #. which is badbadbad. #. 40 ? #. ############################### #. END OF CONVERSIONS #. ############################### #. !@PYTHON@ #. info mostly taken from looking at files. See also #. http://lilypond.org/wiki/?EnigmaTransportFormat #. This supports #. #. * notes #. * rests #. * ties #. * slurs #. * lyrics #. * articulation #. * grace notes #. * tuplets #. #. todo: #. * slur/stem directions #. * voices (2nd half of frame?) #. * more intelligent lyrics #. * beams (better use autobeam?) #. * more robust: try entertainer.etf (freenote) #. * dynamics #. * empty measures (eg. twopt03.etf from freenote) #. #. uGUHGUHGHGUGH #. notename 0 == central C #. represent pitches as (notename, alteration), relative to C-major scale #. a fifth up #. should cache this. #. flag1 isn't all that interesting. #. 3: '>', #. 18: '\arpeggio' , #. do grace notes. #. ugh. #. we don't attempt voltas since they fail easily. #. and g.repeat_bar == '|:' or g.repeat_bar == ':|:' or g.bracket: #. 4 layers. #. let's not do this: this really confuses when eE happens to be before a ^text. #. if last_tag and last_indices: #. etf_file_dict[last_tag][last_indices].append (l) #. # do it #. staff-spec #. should use \addlyrics ? #. !@PYTHON@ #. vim: set noexpandtab: #. This is was the idea for handling of comments: #. Multiline comments, @ignore .. @end ignore is scanned for #. in read_doc_file, and the chunks are marked as 'ignore', so #. lilypond-book will not touch them any more. The content of the #. chunks are written to the output file. Also 'include' and 'input' #. regex has to check if they are commented out. #. #. Then it is scanned for 'lilypond', 'lilypond-file' and 'lilypond-block'. #. These three regex's has to check if they are on a commented line, #. % for latex, @c for texinfo. #. #. Then lines that are commented out with % (latex) and @c (Texinfo) #. are put into chunks marked 'ignore'. This cannot be done before #. searching for the lilypond-blocks because % is also the comment character #. for lilypond. #. #. The the rest of the rexeces are searched for. They don't have to test #. if they are on a commented out line. #. ############################################################### #. Users of python modules should include this snippet #. and customize variables below. #. We'll suffer this path init stuff as long as we don't install our #. python packages in /lib/pythonx.y (and don't kludge around #. it as we do with teTeX on Red Hat Linux: set some environment var #. (PYTHONPATH) in profile) #. If set, LILYPONDPREFIX must take prevalence #. if datadir is not set, we're doing a build and LILYPONDPREFIX #. Customize these #. if __name__ == '__main__': #. lilylib globals #. temp_dir = os.path.join (original_dir, '%s.dir' % program_name) #. urg #. # FIXME #. # ly2dvi: silly name? #. # do -P or -p by default? #. #help_summary = _ ("Run LilyPond using LaTeX for titling") #: lilypond-book.py:120 msgid "Process LilyPond snippets in hybrid html, LaTeX or texinfo document" msgstr "Prossoi LilyPond-osioita sekarakenteisessa html, LaTeX tai texinfo -dokumentissa" #. another bug in option parser: --output=foe is taken as an abbreviation #. for --output-format #: lilypond-book.py:125 main.cc:110 msgid "EXT" msgstr "EXT" #: lilypond-book.py:125 msgid "use output format EXT (texi [default], texi-html, latex, html)" msgstr "tulostusmuotona käytetään formaattia EXT (texi [oletus], texi-html, latex, html)" #: lilypond-book.py:126 lilypond-book.py:127 lilypond-book.py:129 #: lilypond-book.py:130 msgid "DIM" msgstr "DIM" #: lilypond-book.py:126 msgid "default fontsize for music. DIM is assumed to be in points" msgstr "oletusfonttikoko musiikille. DIM ilmoitetaan pisteinä" #: lilypond-book.py:127 msgid "deprecated, use --default-music-fontsize" msgstr "vanhentunut, käytä --default-music-fontsize" #: lilypond-book.py:128 msgid "OPT" msgstr "OPT" #: lilypond-book.py:128 msgid "pass OPT quoted to the lilypond command line" msgstr "syötä OPT lainausmerkeissä lilypond-komentoriville" #: lilypond-book.py:129 msgid "force fontsize for all inline lilypond. DIM is assumed be to in points" msgstr "pakota fonttikoko kullekin LilyPond-osiolle. DIM oletetaan olevan pisteinä" #: lilypond-book.py:130 msgid "deprecated, use --force-music-fontsize" msgstr "vanhentunut, käytä --force-music-fontsize" #: lilypond-book.py:132 ly2dvi.py:130 main.cc:113 main.cc:118 msgid "DIR" msgstr "DIR" #: lilypond-book.py:132 msgid "include path" msgstr "sisällytä polku" #: lilypond-book.py:133 msgid "write dependencies" msgstr "kirjoita riippuvuudet" #: lilypond-book.py:134 msgid "PREF" msgstr "PREF" #: lilypond-book.py:134 msgid "prepend PREF before each -M dependency" msgstr "laita PREF kunkin -M riippuvuuden eteen" #: lilypond-book.py:135 msgid "don't run lilypond" msgstr "jätä suorittamatta lilypond" #: lilypond-book.py:136 msgid "don't generate pictures" msgstr "jätä tuottamatta kuvat" #: lilypond-book.py:137 msgid "strip all lilypond blocks from output" msgstr "riisu kaikki lilypond -osiot tulostuksesta" #: lilypond-book.py:138 lilypond-book.py:139 ly2dvi.py:135 ly2dvi.py:136 #: midi2ly.py:102 main.cc:114 main.cc:117 msgid "FILE" msgstr "TIEDOSTO" #: lilypond-book.py:138 msgid "filename main output file" msgstr "tiedostonimi päätulostustiedostolle" #: lilypond-book.py:139 msgid "where to place generated files" msgstr "tuotettujen tiedostojen sijoituspaikka" #: lilypond-book.py:140 ly2dvi.py:137 msgid "RES" msgstr "RES" #: lilypond-book.py:141 ly2dvi.py:138 msgid "set the resolution of the preview to RES" msgstr "aseta esikatselulle tarkkuus RES" #: lilypond-book.py:142 ly2dvi.py:148 midi2ly.py:105 mup2ly.py:78 main.cc:126 msgid "be verbose" msgstr "ole runsassanainen" #: lilypond-book.py:143 msgid "print version information" msgstr "tulosta versioinformaatio" #: lilypond-book.py:144 ly2dvi.py:150 midi2ly.py:107 mup2ly.py:80 main.cc:127 msgid "show warranty and copyright" msgstr "näytä takuu ja copyright" #. format specific strings, ie. regex-es for input, and % strings for output #. global variables #. lilypond_binary = 'valgrind --suppressions=/home/hanwen/usr/src/guile-1.6.supp --num-callers=10 /home/hanwen/usr/src/lilypond/lily/out/lilypond' #. only use installed binary when we're installed too. #. only use installed binary when we're installed too. #. ############################################################### #. Dimension handling for LaTeX. #. #. Ugh. (La)TeX writes progress and error messages on stdout #. Redirect to stderr #: lilypond-book.py:230 msgid "LaTeX failed." msgstr "LaTeX epäonnistui." #. URG see ly2dvi #. Convert numeric values, with or without specific dimension, to floats. #. Keep other strings #. ############################################################### #. How to output various structures. #. # maybe
? #. Verbatim text is always finished with \n. FIXME: For HTML, #. this newline should be removed. #. Verbatim text is always finished with \n. FIXME: For HTML, #. this newline should be removed. #. # Ugh we need to differentiate on origin: #. # lilypond-block origin wants an extra

, but #. # inline music doesn't. #. # possibly other center options? #. verbatim text is always finished with \n #. verbatim text is always finished with \n #. verbatim text is always finished with \n #. verbatim text is always finished with \n #. do some tweaking: @ is needed in some ps stuff. #. #. ugh, the

below breaks inline images... #. clumsy workaround for python 2.2 pre bug. #. ############################################################### #. Recognize special sequences in the input #. Warning: This uses extended regular expressions. Tread with care. #. #. legenda #. #. (?Pregex) -- assign result of REGEX to NAME #. *? -- match non-greedily. #. (?m) -- multiline regex: make ^ and $ match at each line #. (?s) -- make the dot match all characters including newline #. why do we have distinction between @mbinclude and @include? #. # we'd like to catch and reraise a more #. # detailed error, but alas, the exceptions #. # changed across the 1.5/2.1 boundary. #. ughUGH not original options #. First we want to scan the \documentclass line #. it should be the first non-comment line. #. The only thing we really need to know about the \documentclass line #. is if there are one or two columns to begin with. #. Then we add everything before \begin{document} to #. paperguru.m_document_preamble so that we can later write this header #. to a temporary file in find_latex_dims() to find textwidth. #. this is not bulletproof..., it checks the first 10 chunks #. newchunks.extend (func (m)) #. python 1.5 compatible: #. we have to check for verbatim before doing include, #. because we don't want to include files that are mentioned #. inside a verbatim environment #. ugh fix input #. # Hmm, we should hash only lilypond source, and skip the #. # %options are ... #. # comment line #. # todo: include path, but strip #. # first part of the path. #. format == 'html' #. ugh rename #. Count sections/chapters. #. # TODO: do something like #. # this for texinfo/latex as well ? #. ugh #. fixme: be sys-independent. #. #. Ugh, fixing up dependencies for .tex generation #. #. Ugh. (La)TeX writes progress and error messages on stdout #. Redirect to stderr #. # There used to be code to write .tex dependencies, but #. # that is silly: lilypond-book has its own dependency scheme #. # to ensure that all lily-XXX.tex files are there #. # TODO: put file name in front of texidoc. #. # #. # what's this? Docme --hwn #. # #. #docme: why global? #. Do It. #. should chmod -w #: lilypond-book.py:1557 ly2dvi.py:673 midi2ly.py:1018 #, python-format msgid "getopt says: `%s'" msgstr "getopt sanoo: `%s'" #. HACK #. status = os.system ('lilypond -w') #: lilypond-book.py:1630 ly2dvi.py:777 msgid "no files specified on command line" msgstr "tiedostoja ei määritelty komentorivillä" #. #. Petr, ik zou willen dat ik iets zinvoller deed, #. maar wat ik kan ik doen, het verandert toch niets? #. --hwn 20/aug/99 #. !@PYTHON@ #. #. ly2dvi.py -- Run LilyPond, add titles to bare score, generate printable #. document #. Invokes: lilypond, latex (or pdflatex), dvips, ps2pdf, gs #. #. source file of the GNU LilyPond music typesetter #. #. (c) 1998--2003 Han-Wen Nienhuys #. Jan Nieuwenhuizen #. This is the third incarnation of ly2dvi. #. #. Earlier incarnations of ly2dvi were written by #. Jeffrey B. Reed (Python version) #. Jan Arne Fagertun (Bourne shell script) #. #. Note: gettext work best if we use ' for docstrings and " #. for gettextable strings. #. --> DO NOT USE ''' for docstrings. #. ############################################################### #. Users of python modules should include this snippet #. and customize variables below. #. We'll suffer this path init stuff as long as we don't install our #. python packages in /lib/pythonx.y (and don't kludge around #. it as we do with teTeX on Red Hat Linux: set some environment var #. (PYTHONPATH) in profile) #. If set, LILYPONDPREFIX must take prevalence #. if datadir is not set, we're doing a build and LILYPONDPREFIX #. Customize these #. if __name__ == '__main__': #. lilylib globals #. # FIXME #. # ly2dvi: silly name? #. # do -P or -p by default? #. #help_summary = _ ("Run LilyPond using LaTeX for titling") #: ly2dvi.py:121 msgid "Run LilyPond, add titles, generate printable document" msgstr "Aja LilyPond, lisää otsikot, tuota tulostettava dokumentti" #: ly2dvi.py:127 main.cc:115 msgid "write Makefile dependencies for every input file" msgstr "kirjoita Makefile -riippuvuudet kullekin tulostustiedostolle" #: ly2dvi.py:129 msgid "print even more output" msgstr "kirjoita vieläpä enemmän tulostetta" #: ly2dvi.py:130 msgid "add DIR to LilyPond's search path" msgstr "lisää DIR LilyPondin hakupolkuun" #: ly2dvi.py:132 #, python-format msgid "keep all output, output to directory %s.dir" msgstr "säilytä kaikki tulosteet, kirjoita hakemistoon %s.dir" #: ly2dvi.py:133 msgid "don't run LilyPond" msgstr "jätä ajamatta LilyPond" #: ly2dvi.py:134 main.cc:116 msgid "produce MIDI output only" msgstr "tuota vain MIDI -tuloste" #: ly2dvi.py:135 midi2ly.py:102 msgid "write ouput to FILE" msgstr "tulosta tiedostoon TIEDOSTO" #: ly2dvi.py:136 msgid "find pfa fonts used in FILE" msgstr "etsi pfa fontit joita käytettiin tiedostossa TIEDOSTO" #: ly2dvi.py:139 msgid "generate PostScript output" msgstr "tuota PostScript -tuloste" #: ly2dvi.py:140 msgid "generate PNG page images" msgstr "tuota PNG -kuvat sivuista" #: ly2dvi.py:141 msgid "generate PS.GZ" msgstr "tuota PS.GZ" #: ly2dvi.py:142 msgid "generate PDF output" msgstr "tuota PDF -tuloste" # käytä pdflatex:ia tuottaaksesi PDF -tulosteen #: ly2dvi.py:143 msgid "use pdflatex to generate a PDF output" msgstr "käytä pdflatex:ia tuottaaksesi PDF -tulosteen" #. FIXME: preview, picture; to indicate creation of a PNG? #: ly2dvi.py:145 msgid "make a picture of the first system" msgstr "tee kuva ensimmäisestä kokonaisuudesta" #: ly2dvi.py:146 msgid "make HTML file with links to all output" msgstr "tee HTML -tiedosto johon on linkitetty kaikki tulosteet" #: ly2dvi.py:147 msgid "KEY=VAL" msgstr "KEY=VAL" #: ly2dvi.py:147 msgid "change global setting KEY to VAL" msgstr "vaihda globaali asetus KEY arvoksi VAL" #: ly2dvi.py:149 midi2ly.py:106 mup2ly.py:79 main.cc:125 msgid "print version number" msgstr "tulosta versionumero" #. other globals #. Pdftex support #. # yuk. #. 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' } #. only use installed binary when we're installed too. #. init to empty; values here take precedence over values in the file #. # TODO: change name. #. for geometry v3 #. Output formats that ly2dvi should create #. what a name. #. ly.warning (_ ("invalid value: %s") % `val`) #. ly.warning (_ ("invalid value: %s") % `val`) #: ly2dvi.py:232 #, python-format msgid "no such setting: `%s'" msgstr "asetusta ei löydy: `%s'" #. 2 == user interrupt. #: ly2dvi.py:274 #, python-format msgid "LilyPond crashed (signal %d)." msgstr "LilyPond kaatui (signaali %d)." #: ly2dvi.py:275 msgid "Please submit a bug report to bug-lilypond@gnu.org" msgstr "Ole hyvä ja lähetä virheraportti osoitteeseen bug-lilypond@gnu.org" #: ly2dvi.py:281 #, python-format msgid "LilyPond failed on input file %s (exit status %d)" msgstr "LilyPond epäonnistui syöttötiedoston %s kohdalla (lopetustila %d)." #: ly2dvi.py:284 #, python-format msgid "LilyPond failed on an input file (exit status %d)" msgstr "LilyPond epäonnistui syöttötiedoston kohdalla (lopetustila %d)." #: ly2dvi.py:285 msgid "Continuing..." msgstr "Jatketaan..." #. urg #: ly2dvi.py:296 #, python-format msgid "Analyzing %s..." msgstr "Analysoidaan %s..." #. search only the first 10k #: ly2dvi.py:354 #, python-format msgid "no LilyPond output found for `%s'" msgstr "`%s' jäi ilman LilyPond -tulostetta" #. The final \n seems important here. It ensures that the footers and taglines end up on the right page. #. TODO: should set textheight (enlarge) depending on papersize. #: ly2dvi.py:397 #, python-format msgid "invalid value: `%s'" msgstr "epäkelpo arvo: `%s'" #. set sane geometry width (a4-width) for linewidth = -1. #. who the hell is 597 ? #. Ugh. (La)TeX writes progress and error messages on stdout #. Redirect to stderr #: ly2dvi.py:511 msgid "LaTeX failed on the output file." msgstr "LaTeX epäonnistui tulostustiedossa." #. make a preview by rendering only the 1st line #. of each score #: ly2dvi.py:568 msgid "" "Trying create PDF, but no PFA fonts found.\n" "Using bitmap fonts instead. This will look bad." msgstr "" "Yritetään tuottaa PDF, mutta PFA fontteja ei löytynyt.\n" "Käytetään bittikarttafonttejan niiden sijasta. Tulos ei näytä hyvältä." #. ugh. Different targets? #. Added as functionality to ly2dvi, because ly2dvi may well need to do this #. in future too. #. no ps header? #: ly2dvi.py:615 #, python-format msgid "not a PostScript file: `%s'" msgstr "ei ole PostScript-tiedosto: `%s'" #. todo #: ly2dvi.py:660 #, python-format msgid "Writing HTML menu `%s'" msgstr "Kirjoitetan HTML-valikko `%s'..." #. signal programming error #. Don't convert input files to abspath, rather prepend '.' to include #. path. #. As a neat trick, add directory part of first input file #. to include path. That way you can do without the clumsy -I in: #. ly2dvi -I foe/bar/baz foo/bar/baz/baz.ly #: ly2dvi.py:769 msgid "pseudo filter" msgstr "valefiltteri" #: ly2dvi.py:772 msgid "pseudo filter only for single input file" msgstr "valefiltteroi ain yksi tulostetiedosto" #. Ugh, maybe make a setup () function #. hmmm. Wish I'd 've written comments when I wrote this. #. now it looks complicated. #: ly2dvi.py:806 #, python-format msgid "filename should not contain spaces: `%s'" msgstr "tiedostoniemessä ei saa olla välilyöntejä: `%s'" #. to be sure, add tmpdir *in front* of inclusion path. #. os.environ['TEXINPUTS'] = tmpdir + ':' + os.environ['TEXINPUTS'] #. We catch all exceptions, because we need to do stuff at exit: #. * copy any successfully generated stuff from tempdir and #. notify user of that #. * cleanout tempdir #. ## ARGH. This also catches python programming errors. #. ## this should only catch lilypond nonzero exit status #. ## --hwn #. TODO: friendly message about LilyPond setup/failing? #. #: ly2dvi.py:845 msgid "Running LilyPond failed. Rerun with --verbose for a trace." msgstr "LilyPond -ajo epäonnistui. Aja uudelleen lisäten --verbose jäljitystä varten." #. Our LilyPond pseudo filter always outputs to 'lelie' #. have subsequent stages and use 'lelie' output. #. unless: add --tex, or --latex? #. TODO: friendly message about TeX/LaTeX setup, #. trying to run tex/latex by hand #: ly2dvi.py:886 msgid "Failed to make PS file. Rerun with --verbose for a trace." msgstr "Epäonnistui PS -tiedoston tuottamisessa. Aja uudelleen lisäten --verbose jäljitystä varten." #. unless: add --tex, or --latex? #. TODO: friendly message about TeX/LaTeX setup, #. trying to run tex/latex by hand #: ly2dvi.py:916 msgid "Running LaTeX falied. Rerun with --verbose for a trace." msgstr "LaTeX -ajo epäonnistui. Aja uudelleen lisäten --verbose jäljitystä varten." #. add DEP to targets? #: ly2dvi.py:926 input-file-results.cc:68 #, c-format, python-format msgid "dependencies output to `%s'..." msgstr "riippuvuuksien tulosteet paikkaan `%s'" #: ly2dvi.py:937 #, python-format msgid "%s output to ..." msgstr "%s -tuloste paikkaan ..." #: ly2dvi.py:942 ly2dvi.py:968 includable-lexer.cc:57 #: input-file-results.cc:191 input-file-results.cc:197 lily-guile.cc:86 #, c-format, python-format msgid "can't find file: `%s'" msgstr "tiedostoa ei löydy: `%s'" #. Hmm, if this were a function, we could call it the except: clauses #: ly2dvi.py:965 #, python-format msgid "%s output to %s..." msgstr "%s -tuloste paikkaan %s..." #. !@PYTHON@ #. #. midi2ly.py -- LilyPond midi import script #. #. source file of the GNU LilyPond music typesetter #. #. (c) 1998--2003 Han-Wen Nienhuys #. Jan Nieuwenhuizen #. ############################################################### #. Users of python modules should include this snippet. #. #. This soon to be removed for: import lilypond.lilylib as ly #. ############################################################### #. ############################################################### #. ############### CONSTANTS #. ############################################################### #. temp_dir = os.path.join (original_dir, '%s.dir' % program_name) #. original_dir = os.getcwd () #. keep_temp_dir_p = 0 #: midi2ly.py:94 msgid "Convert MIDI to LilyPond source" msgstr "Muunna MIDI LilyPond -koodiksi" #: midi2ly.py:97 msgid "print absolute pitches" msgstr "tulosta tarkat äänenkorkeudet" #: midi2ly.py:98 midi2ly.py:103 msgid "DUR" msgstr "PIT" #: midi2ly.py:98 msgid "quantise note durations on DUR" msgstr "kvantisoi nuottipituuden PIT perusteella" # tulosta yksikäsitteiset nuottipituudet #: midi2ly.py:99 msgid "print explicit durations" msgstr "tulosta yksikäsitteiset nuottipituudet" #: midi2ly.py:101 msgid "ALT[:MINOR]" msgstr "ETUMERKIT[:MOLLI]" #: midi2ly.py:101 msgid "set key: ALT=+sharps|-flats; MINOR=1" msgstr "aseta sävellaji: ETUMERKIT=+ylennykset|-alennukset; MOLLI=1" #: midi2ly.py:103 msgid "quantise note starts on DUR" msgstr "nuottien kvantisointi alkukohtana PIT" #: midi2ly.py:104 msgid "DUR*NUM/DEN" msgstr "PIT*OSOITTAJA/NIMITTÄJÄ" # tuplet = Wertaufteilung nach: Peter Giger: Die Kunst des Rhythmus, Seite 25 #: midi2ly.py:104 msgid "allow tuplet durations DUR*NUM/DEN" msgstr "salli tupletti -pituudet PIT*OSOITTAJA/NIMITTÄJÄ" #: midi2ly.py:108 msgid "treat every text as a lyric" msgstr "käsittele kaikki tekstit lyriikkana" #: midi2ly.py:136 mup2ly.py:130 msgid " 2001--2003" msgstr " 2001--2003" #: midi2ly.py:141 mup2ly.py:135 msgid "" "\n" "Distributed under terms of the GNU General Public License. It comes with\n" "NO WARRANTY." msgstr "" "\n" "Levitetään ehdolla GNU General Public License\n" "ja ilman TAKUUTA." #: midi2ly.py:166 mup2ly.py:162 msgid "Exiting ... " msgstr "Lopettaa ... " #: midi2ly.py:264 mup2ly.py:261 #, python-format msgid "command exited with value %d" msgstr "komento lopetettiin tilassa %d" #. ############################################################### #. END Library #. ############################################################### #. hmm #. major scale: do-do #. minor scale: la-la (= + 5) ''' #. By tradition, all scales now consist of a sequence #. of 7 notes each with a distinct name, from amongst #. a b c d e f g. But, minor scales have a wide #. second interval at the top - the 'leading note' is #. sharped. (Why? it just works that way! Anything #. else doesn't sound as good and isn't as flexible at #. saying things. In medieval times, scales only had 6 #. notes to avoid this problem - the hexachords.) #. So, the d minor scale is d e f g a b-flat c-sharp d #. - using d-flat for the leading note would skip the #. name c and duplicate the name d. Why isn't c-sharp #. put in the key signature? Tradition. (It's also #. supposedly based on the Pythagorean theory of the #. cycle of fifths, but that really only applies to #. major scales...) Anyway, g minor is g a b-flat c d #. e-flat f-sharp g, and all the other flat minor keys #. end up with a natural leading note. And there you #. have it. #. John Sankey #. #. Let's also do a-minor: a b c d e f gis a #. #. --jcn #. as -> gis #. des -> cis #. ges -> fis #. g -> fisis #. d -> cisis #. a -> gisis #. b -> ces #. e -> fes #. f -> eis #. c -> bis #. # FIXME: compile fix --jcn #. TODO: move space #. fis cis gis dis ais eis bis #. bes es as des ges ces fes #. urg, we should be sure that we're in a lyrics staff #. all include ALL_NOTES_OFF #. ugh, must set key while parsing #. because Note init uses key #. Better do Note.calc () at dump time? #. last_lyric.clocks = t - last_time #. hmm #. urg, this will barf at meter changes #. urg LilyPond doesn't start at c4, but #. remembers from previous tracks! #. reference_note = Note (clocks_per_4, 4*12, 0) #. must be in \notes mode for parsing \skip #: midi2ly.py:1002 #, python-format msgid "%s output to `%s'..." msgstr "%s -tuloste paikkaan `%s'..." #: midi2ly.py:1033 msgid "Example:" msgstr "Esimerkki:" #: midi2ly.py:1083 msgid "no files specified on command line." msgstr "tiedostoja ei annettu komentorivillä." #. !@PYTHON@ #. mup2ly.py -- mup input converter #. #. source file of the GNU LilyPond music typesetter #. #. (c) 2001 #. if set, LILYPONDPREFIX must take prevalence #. if datadir is not set, we're doing a build and LILYPONDPREFIX #: mup2ly.py:70 msgid "Convert mup to LilyPond source" msgstr "Muunna mup LilyPond-koodiksi" #: mup2ly.py:73 msgid "debug" msgstr "testaa" #: mup2ly.py:74 msgid "define macro NAME [optional expansion EXP]" msgstr "määrittele makro NAME [vaihtoehtoinen laajennus EXP]" #: mup2ly.py:76 main.cc:117 msgid "write output to FILE" msgstr "tulostetaan tiedostoon TIEDOSTO" #: mup2ly.py:77 msgid "only pre-process" msgstr "vain esiprosessointi" #. Duh. Python style portable: cp *.EXT OUTDIR #. system ('cp *.%s %s' % (ext, outdir), 1) #. Python < 1.5.2 compatibility #. #. On most platforms, this is equivalent to #. `normpath(join(os.getcwd()), PATH)'. *Added in Python version 1.5.2* #. if set, LILYPONDPREFIX must take prevalence #. if datadir is not set, we're doing a build and LILYPONDPREFIX #. ############################################################### #. END Library #. #. PMX cut and paste #. #. if not self.entries: #. #return '\n' #. #ugh ugh #. return '\n%s = {}\n\n' % self.idstring () #. ugh #. def set_clef (self, letter): #. clstr = clef_table[letter] #. self.voices[0].add_nonchord (Clef (clstr)) #. urg #. maybe use import copy? #. for i in self.pitches: #. ch.pitches.append (i) #. for i in self.scripts: #. ch.scripts.append (i) #. http://www.arkkra.com/doc/uguide/contexts.html #. #self.current_staffs = [] #. duh #. FIXME: 1? #. FIXME: does key play any role in this? #. ch = self.current_voices[0].last_chord () #. ch.basic_duration = self.current_voices[0].last_chord ().basic_duration #. ugh #. ch = self.current_voices[0].last_chord () #. `;' is not a separator, chords end with ';' #. mup resets default duration and pitch each bar #. ugh: these (and lots more) should also be parsed in #. context staff. we should have a class Staff_properties #. and parse/set all those. #. shortcut: set to official mup maximum (duh) #. self.set_staffs (40) #: mup2ly.py:1076 #, python-format msgid "no such context: %s" msgstr "kontekstia ei ole: %s" #. hmm #. dig this: mup allows ifdefs inside macro bodies #. don't do nested multi-line defines #. duh: mup is strictly line-based, except for `define', #. which is `@' terminated and may span several lines #. don't define new macros in unactive areas #. To support nested multi-line define's #. process_function and macro_name, macro_body #. should become lists (stacks) #. The mup manual is undetermined on this #. and I haven't seen examples doing it. #. #. don't do nested multi-line define's #. writes to stdout for help2man #. don't call #. identify () #. sys.stdout.flush () #. handy emacs testing #. if not files: #. files = ['template.mup'] #: mup2ly.py:1300 #, python-format msgid "Processing `%s'..." msgstr "Prosessoidaan `%s'..." #: mup2ly.py:1319 #, python-format msgid "Writing `%s'..." msgstr "Kirjoitetaan `%s'..." #: getopt-long.cc:146 #, c-format msgid "option `%s' requires an argument" msgstr "optio `%s' vaatii argumentin" #: getopt-long.cc:150 #, c-format msgid "option `%s' doesn't allow an argument" msgstr "optio `%s' ei salli argumenttia" #: getopt-long.cc:154 #, c-format msgid "unrecognized option: `%s'" msgstr "tunnistamaton optio: `%s'" #: getopt-long.cc:161 #, c-format msgid "invalid argument `%s' to option `%s'" msgstr "epäkelpo argumentti `%s' optiolle `%s'" #: warn.cc:25 #, c-format msgid "warning: %s\n" msgstr "varoitus: %s\n" #: warn.cc:31 #, c-format msgid "error: %s\n" msgstr "virhe: %s\n" #: warn.cc:44 #, c-format msgid "programming error: %s (Continuing; cross thumbs)\n" msgstr "ohjelmointivirhe: %s (jatketaan; risti kädet)\n" #: accidental.cc:202 key-signature-interface.cc:137 #, c-format msgid "accidental `%s' not found" msgstr "korotusmerkkiä `%s' ei löydy" #: accidental-engraver.cc:171 new-accidental-engraver.cc:238 #, c-format msgid "Accidental typesetting list must begin with context-name: %s" msgstr "Korotusmerkkien ladontalista täytyy alkaa konteksti-nimellä: %s" #: accidental-engraver.cc:196 new-accidental-engraver.cc:263 #, c-format msgid "unknown accidental typesetting: %s. Ignored" msgstr "tuntematan kortusmerkkien ladonta: %s. Sivuutetaan" #: accidental-engraver.cc:212 new-accidental-engraver.cc:279 #, c-format msgid "Symbol is not a parent context: %s. Ignored" msgstr "Symboli ei ole yläkonteksti: %s. Sivuutetaan" #: accidental-engraver.cc:215 new-accidental-engraver.cc:282 #, c-format msgid "Accidental typesetting must be pair or context-name: %s" msgstr "Korotusmerkkien ladonta täytyy olla pari tai konteksti-nimi: %s" #: afm.cc:66 #, c-format msgid "can't find character number: %d" msgstr "ei löytynyt merkkiä: %d" #: afm.cc:81 #, c-format msgid "can't find character called: `%s'" msgstr "ei löytynyt merkkiä nimeltä: `%s'" #: afm.cc:142 #, c-format msgid "Error parsing AFM file: `%s'" msgstr "Virhe jäsennettäessä AFM-tiedostoa: `%s'" #: all-font-metrics.cc:95 #, c-format msgid "checksum mismatch for font file: `%s'" msgstr "virhesumma ei täsmää fonttitiedostolle: `%s'" #: all-font-metrics.cc:97 #, c-format msgid "does not match: `%s'" msgstr "ei täsmää: `%s'" #: all-font-metrics.cc:102 msgid " Rebuild all .afm files, and remove all .pk and .tfm files. Rerun with -V to show font paths." msgstr " Uudista kaikki .afm -tiedosto, ja poista kaikki .pk ja .tfm -tiedostot. Aja uudelleen lisäten -V nähdäksesi fonttipolut." #: all-font-metrics.cc:103 msgid "" "A script for removing font-files is delivered with the source-code,\n" "in buildscripts/clean-fonts.sh" msgstr "" "Skripti fonttitiedostojen poistamista varten toimitetaan lähde-koodin mukaan,\n" "tiedostossa buildscripts/clean-fonts.sh" #: all-font-metrics.cc:169 #, c-format msgid "can't find font: `%s'" msgstr "ei löytynyt fonttia: `%s'" #: all-font-metrics.cc:170 msgid "Loading default font" msgstr "Ladataan oletusfontti" #: all-font-metrics.cc:185 #, c-format msgid "can't find default font: `%s'" msgstr "ei löytynyt oletusfonttia: `%s'" #: all-font-metrics.cc:186 includable-lexer.cc:59 input-file-results.cc:192 #, c-format msgid "(search path: `%s')" msgstr "(hakupolku: `%s')" #: all-font-metrics.cc:187 msgid "Giving up" msgstr "Luovutetaan" #: auto-change-iterator.cc:43 change-iterator.cc:60 #: part-combine-music-iterator.cc:120 msgid "Can't switch translators, I'm there already" msgstr "Ei voitu muuttaa kääntää, on jo valittuna" #: bar-check-iterator.cc:51 #, c-format msgid "barcheck failed at: %s" msgstr "tahtiviivan tarkistus epäonnistui kohdassa: %s" #: beam.cc:146 msgid "beam has less than two visible stems" msgstr "palkissa on vähemmän kuin kaksi pystyviivaa" #: beam.cc:151 msgid "Beam has less than two stems. Removing beam." msgstr "Palkissa on vähemmän kuin kaksi pystyviivaa. Poistetaan palkki." #: beam.cc:976 msgid "Not sure that we can find a nice beam slope (no viable initial configuration found)." msgstr "Ei ole varma löydetäänko sopivaa palkin kaltevuutta (ei löytynyt toimivaa alkuasetusta)" #: beam-engraver.cc:176 msgid "already have a beam" msgstr "palkki löytyi jo" #: beam-engraver.cc:259 msgid "unterminated beam" msgstr "päättymätön palkki" #: beam-engraver.cc:292 chord-tremolo-engraver.cc:197 msgid "stem must have Rhythmic structure" msgstr "varrella on oltava Rhytmic -rakenne" #: beam-engraver.cc:306 msgid "stem doesn't fit in beam" msgstr "varsi ei sovi palkkiin" #: beam-engraver.cc:307 msgid "beam was started here" msgstr "palkki aloitettiin täältä" #: break-align-interface.cc:173 #, c-format msgid "No spacing entry from %s to `%s'" msgstr "Ei välistyksen syöttöä paikasta %s paikkaan `%s'" #: change-iterator.cc:22 #, c-format msgid "can't change `%s' to `%s'" msgstr "ei voitu vaihtaa `%s' tilalle `%s'" #. #. We could change the current translator's id, but that would make #. errors hard to catch #. #. last->translator_id_string_ = get_change ()->change_to_id_string_; #. #: change-iterator.cc:79 msgid "I'm one myself" msgstr "Olen yksinäni" #: change-iterator.cc:82 msgid "none of these in my family" msgstr "ei yksikään näistä perheessäni" #: chord-tremolo-engraver.cc:98 #, c-format msgid "Chord tremolo with %d elements. Must have two elements." msgstr "Sointutremolo %d:lla elementillä. Täytyy olla kaksi elementtiä." #: chord-tremolo-engraver.cc:157 msgid "unterminated chord tremolo" msgstr "päättymätön sointutremolo" #: chord-tremolo-iterator.cc:69 msgid "no one to print a tremolos" msgstr "ei ketään joka voisi tulostaan tremolon" #: clef.cc:64 #, c-format msgid "clef `%s' not found" msgstr "avainta `%s' ei löydy" #: cluster.cc:131 #, c-format msgid "unknown cluster style `%s'" msgstr "tuntematon klusterityyli: `%s'" #: coherent-ligature-engraver.cc:84 #, c-format msgid "gotcha: ptr=%ul" msgstr "löytyi: ptr=%ul" #: coherent-ligature-engraver.cc:96 #, c-format msgid "distance=%f" msgstr "etäisyys=%f" #: coherent-ligature-engraver.cc:139 #, c-format msgid "Coherent_ligature_engraver: setting `spacing-increment = 0.01': ptr=%ul" msgstr "Coherent_ligature_engraver: asetetaan `spacing-increment = 0.01': ptr=%ul" #: custos.cc:92 #, c-format msgid "custos `%s' not found" msgstr "custos `%s' ei löytynyt" #: dimensions.cc:13 msgid "NaN" msgstr "NaN" #: dynamic-engraver.cc:204 span-dynamic-performer.cc:82 msgid "can't find start of (de)crescendo" msgstr "ei löytynyt alkua (de)crescendolle" #: dynamic-engraver.cc:216 msgid "already have a crescendo" msgstr "crescendo jo käytössä" #: dynamic-engraver.cc:217 msgid "already have a decrescendo" msgstr "decresendo jo käytössä" #: dynamic-engraver.cc:220 msgid "Cresc started here" msgstr "Cresc aloitettiin tästä" #: dynamic-engraver.cc:323 msgid "unterminated (de)crescendo" msgstr "päätymätön (de)crescendo" #: event.cc:49 #, c-format msgid "Transposition by %s makes alteration larger than two" msgstr "Transponointi %s tekee muutokset suuremmaksi kuin kaksi" #: event-chord-iterator.cc:76 output-property-music-iterator.cc:27 #, c-format msgid "Junking event: `%s'" msgstr "Hylätään tapahtuma: `%s'" #: extender-engraver.cc:94 msgid "unterminated extender" msgstr "päättymätön pidennys" #: extender-engraver.cc:106 msgid "Nothing to connect extender to on the left. Ignoring extender event." msgstr "Pidennystä ei voitu liittää vasemmalle. Hylätään pidennystapahtuma.\"" #: folded-repeat-iterator.cc:88 msgid "no one to print a repeat brace" msgstr "kukaan ei voinut tulostaa toistoa" #: font-interface.cc:239 msgid "couldn't find any font satisfying " msgstr "mikään fontti ei tuottanut toivottua tulosta" #: glissando-engraver.cc:100 msgid "Unterminated glissando." msgstr "Päättymätön glissando." #: gourlay-breaking.cc:188 #, c-format msgid "Optimal demerits: %f" msgstr "Optimaalinen heikennys: %f" #: gourlay-breaking.cc:193 msgid "No feasible line breaking found" msgstr "Ei löytynyt sopivaa viivan katkaisukohtaa" #: gregorian-ligature-engraver.cc:59 #, c-format msgid "\\%s ignored" msgstr "\\%s sivuutettiin" #: gregorian-ligature-engraver.cc:64 #, c-format msgid "implied \\%s added" msgstr "lisättiin vihjattu \\%s" #. #. Todo: do something sensible. The grob-pq-engraver is not water #. tight, and stuff like tupletSpannerDuration confuses it. #. #: grob-pq-engraver.cc:130 #, c-format msgid "" "Skipped something?\n" "Grob %s ended before I expected it to end." msgstr "" "Jotain ohitettiin?\n" "Piirto %s loppui ennen kuin sen oletettiin loppuvan." #: hairpin.cc:98 msgid "decrescendo too small" msgstr "liian lyhyt decrescendo" #: hairpin.cc:99 msgid "crescendo too small" msgstr "liian lyhyt crescendo" #: horizontal-bracket-engraver.cc:64 msgid "Don't have that many brackets." msgstr "Ei ole käytössä niin monia sulkeita." #: horizontal-bracket-engraver.cc:73 msgid "Conflicting note group events." msgstr "Ristiriitainen nuottiryhmä -tapaus." #: hyphen-engraver.cc:87 msgid "unterminated hyphen" msgstr "päättymätön tavuviiva" #: hyphen-engraver.cc:99 msgid "Nothing to connect hyphen to on the left. Ignoring hyphen event." msgstr "Mitään ei voitu liittää tavuviivan vasemmalle puolelle. Sivutetaan tavutus." #: input.cc:99 msgid "non fatal error: " msgstr "ei-keskeyttävä virhe:" #: input.cc:107 source-file.cc:146 source-file.cc:239 msgid "position unknown" msgstr "sijainti tuntematon:" #: input-file-results.cc:72 source-file.cc:54 streams.cc:38 #, c-format msgid "can't open file: `%s'" msgstr "tiedostoa ei voitu avata: `%s'" #: input-file-results.cc:132 msgid "Score contains errors; will not process it" msgstr "Viivastossa on virheitä; sitä ei prosessoida" #: input-file-results.cc:172 #, c-format msgid "Now processing: `%s'" msgstr "Prosessoidaan: `%s'" #: key-performer.cc:96 msgid "FIXME: key change merge" msgstr "KORJATTAVA: sävellajin vaihdon sulautuma" #: kpath.cc:76 #, c-format msgid "Kpathsea couldn't find TFM file `%s'" msgstr "Kpathsea ei löytänyt TFM-tiedostoa `%s'" #: ligature-engraver.cc:159 msgid "can't find start of ligature" msgstr "ei löytynyt alkua ligature:lle" #: ligature-engraver.cc:165 msgid "no right bound" msgstr "ei oikeata reunaa" #: ligature-engraver.cc:191 msgid "already have a ligature" msgstr "ligature löytyi jo" #: ligature-engraver.cc:207 msgid "no left bound" msgstr "ei vasenta reunaa" #: ligature-engraver.cc:258 msgid "unterminated ligature" msgstr "päättymätön ligature" #: ligature-engraver.cc:282 msgid "ligature may not contain rest; ignoring rest" msgstr "ligature ei voi sisältää taukoa; sivuutetaan tauko" #: ligature-engraver.cc:283 msgid "ligature was started here" msgstr "ligature alkoi tästä" #: lily-guile.cc:88 #, c-format msgid "(load path: `%s')" msgstr "(hakupolku: `%s')" #: lily-guile.cc:576 #, c-format msgid "Can't find property type-check for `%s' (%s)." msgstr "Ei löytynyt tyyppitarkistusta ominaisuudelle `%s' (%s)." #: lily-guile.cc:579 msgid "Perhaps you made a typing error?" msgstr "Tekinet näppäilyvirheen?" #: lily-guile.cc:585 msgid "Doing assignment anyway." msgstr "Tehdään tehtävä joka tapauksessa." #: lily-guile.cc:599 #, c-format msgid "Type check for `%s' failed; value `%s' must be of type `%s'" msgstr "Tyypin `%s' tarkistus epäonnistui; arvon `%s' on oltava tyyppiä `%s'" #: lookup.cc:173 msgid "round filled box horizontal extent smaller than blot; decreasing blot" msgstr "pyöristetyn, täytetyn laatikon horisontaali laajuus on pilkkua pienempi; pienennetään pilkkua" #: lookup.cc:178 msgid "round filled box vertical extent smaller than blot; decreasing blot" msgstr "pyöristetyn, täytetyn laatikon vertikaali laajuus on pilkkua pienempi; pienennetään pilkku" #: lyric-phrasing-engraver.cc:311 msgid "lyrics found without any matching notehead" msgstr "lyriikkaa löytyi ilman vastaavaa nuotinpäätä" #: lyric-phrasing-engraver.cc:317 msgid "Huh? Melismatic note found to have associated lyrics." msgstr "Täh? Melismoitu nuotti ilman siihen liittyvään lyriikkaa." #: main.cc:106 msgid "EXPR" msgstr "EXPR" #: main.cc:107 msgid "set options, use -e '(ly-option-usage)' for help" msgstr "aseta optiot, käytä -e '(ly-option-usage)' saadaksesi opastusta" #: main.cc:110 msgid "use output format EXT" msgstr "käytä tulostemuotoa EXT" #: main.cc:112 msgid "FIELD" msgstr "KENTTÄ" #: main.cc:112 msgid "write header field to BASENAME.FIELD" msgstr "kirjoita otsakekenttä paikkaan PERUSNIMI.KENTTÄ" #: main.cc:113 msgid "add DIR to search path" msgstr "lisää DIR hakupolkuun" #: main.cc:114 msgid "use FILE as init file" msgstr "käytetään TIEDOSTO alustustiedostona" #: main.cc:118 msgid "prepend DIR to dependencies" msgstr "lisää DIR riippuvuuksien alkuun" #. #. should audit again. #. #: main.cc:123 msgid "inhibit file output naming and exporting" msgstr "estä tiedostotulosteen nimeäminen ja siirtotiedostoon kirjoittaminen" #. No version number or newline here. It confuses help2man. #: main.cc:155 #, c-format msgid "Usage: %s [OPTION]... FILE..." msgstr "Käyttö: %s [OPTIOT]... TIEDOSTO..." #: main.cc:157 msgid "Typeset music and or play MIDI from FILE." msgstr "Lado musiikki ja tai soita MIDI tiedostosta TIEDOSTO." #: main.cc:160 msgid "" "LilyPond is a music typesetter. It produces beautiful sheet music\n" "using a high level description file as input. LilyPond is part of \n" "the GNU Project.\n" msgstr "" "LilyPond on musiikin ladontaohjelma. Se tuottaa kaunista nuottikuvaa\n" "käyttäen korkean tason kuvaus kieltä syötteenä. LilyPond on osa\n" "GNU Projektia.\n" #: main.cc:182 #, c-format msgid "" "This is free software. It is covered by the GNU General Public License,\n" "and you are welcome to change it and/or distribute copies of it under\n" "certain conditions. Invoke as `%s --warranty' for more information.\n" msgstr "" "Tämä on ilmaisohjelmisto. Siihen sovelletaan GNU General Public License,\n" "ja olet tervetullut muuttamaan sitä ja/tai levittämään siitä kopioita\n" "tietyillä ehdoilla. Suorita `%s --warranty' saadaksesi lisäinformaatiota.\n" #: main.cc:198 msgid "GNU LilyPond -- The music typesetter" msgstr "GNU LilyPond -- Musiikin ladontaohjelma" #: main.cc:206 msgid "" " This program is free software; you can redistribute it and/or\n" "modify it under the terms of the GNU General Public License version 2\n" "as published by the Free Software Foundation.\n" "\n" " This program is distributed in the hope that it will be useful,\n" "but WITHOUT ANY WARRANTY; without even the implied warranty of\n" "MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU\n" "General Public License for more details.\n" "\n" " You should have received a copy (refer to the file COPYING) of the\n" "GNU General Public License along with this program; if not, write to\n" "the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307,\n" "USA.\n" msgstr "" " Tämä ohjelma on vapaata lähdekoodia; voit levittää sitä ja/tai\n" "muokata sitä lisenssin GNU General Public License versio 2 ehdoilla, \n" "kuten Free Software Foundation on sen julkaissut.\n" "\n" " Ohjelmaa levitetään siinä toivossa että se on hyödyllinen, mutta\n" "ILMAN MITÄÄN TAKUUTA; ilman että edes annettaisiin ymmärtää takeista\n" "KAUPAKSIKÄYVYYDESTÄ tai SOPIVUUDESTA TIETTYYN TARKOITUKSEEN. Lisätietoja\n" "voit katsoa lisenssistä GNU General Public Licence.\n" "\n" " Saat kopion (katso tiedosto COPYING) lisenssistä GNU General Public\n" "License ohjelman mukana; jos et saanut; kirjoita osoitteeseen\n" "Free Software Foundation, Inc., 59 Temple Place - Suite 330,\n" "Boston, MA 02111-1307, USA.\n" #: mensural-ligature.cc:153 #, c-format msgid "Mensural_ligature:thickness undefined on flexa %d; assuming 1.4" msgstr "Mensural_ligature: paksuus määrittämättä kohdassa flexa %d; oletetaan 1.4" #: mensural-ligature.cc:169 #, c-format msgid "Mensural_ligature:delta-pitch undefined on flexa %d; assuming 0" msgstr "Mensural_ligature: delta-pitch määrittämättä kohdassa flexa %d; oletetaan 0" #: mensural-ligature.cc:182 #, c-format msgid "Mensural_ligature:flexa-width undefined on flexa %d; assuming 2.0" msgstr "Mensural_ligature: flexa-width määrittämättä kohdassa flexa %d; oletetaan 2.0\"" #: mensural-ligature.cc:215 msgid "Mensural_ligature:unexpected case fall-through" msgstr "Mensural_ligature: odottamaton tapauksen raukeaminen" #: mensural-ligature.cc:225 msgid "Mensural_ligature: (join_left == 0)" msgstr "Mensural_ligature: (join_left == 0)" #: mensural-ligature-engraver.cc:248 mensural-ligature-engraver.cc:397 msgid "unexpected case fall-through" msgstr "odottamaton tapauksen raukeaminen" #: mensural-ligature-engraver.cc:259 msgid "ligature with less than 2 heads -> skipping" msgstr "ligatuuri vähemmällä kuin 2:lla nuottipäällä -> ohitetaan" #: mensural-ligature-engraver.cc:279 msgid "can not determine pitch of ligature primitive -> skipping" msgstr "ei voitu määrittää nuottikorkeutta ligatuurin osalle -> ohitetaan" #: mensural-ligature-engraver.cc:302 msgid "prime interval within ligature -> skipping" msgstr "priimi-intervalli ligatuurissa -> ohitetaan" #: mensural-ligature-engraver.cc:312 msgid "mensural ligature: duration none of L, B, S -> skipping" msgstr "mensuraaliligatuuri: kesto ei ollut L, B tai S -> ohitetaan" #: midi-item.cc:148 #, c-format msgid "no such instrument: `%s'" msgstr "ei löytynyt instrumenttia: `%s'" #: midi-item.cc:238 msgid "silly duration" msgstr "sekava kesto" #: midi-item.cc:251 msgid "silly pitch" msgstr "sekava äänenkorkeus" #: music-output-def.cc:111 #, c-format msgid "can't find `%s' context" msgstr "ei löytynyt kontekstia `%s'" #: my-lily-lexer.cc:169 #, c-format msgid "Identifier name is a keyword: `%s'" msgstr "Tunnistenimi on avainsana: `%s'" #: my-lily-lexer.cc:191 #, c-format msgid "error at EOF: %s" msgstr "virhe tiedoston lopussa (EOF): %s" #: my-lily-parser.cc:44 msgid "Parsing..." msgstr "Jäsennetään..." #: my-lily-parser.cc:54 msgid "Braces don't match" msgstr "Aaltosulkumerkit eivät täsmää" #. #. music for the softenon children? #. #: new-fingering-engraver.cc:143 msgid "music for the martians." msgstr "musiikkia marsilaisille" #: new-tie-engraver.cc:166 tie-engraver.cc:217 msgid "lonely tie" msgstr "yksinäinen sidos" #: note-collision.cc:340 msgid "Too many clashing notecolumns. Ignoring them." msgstr "Liian monta törmäävää nuottisaraketta. Sivuutetaan ne." #: note-head.cc:127 #, c-format msgid "note head `%s' not found" msgstr "nuottipäätä `%s' ei löytynyt" #: paper-def.cc:96 #, c-format msgid "paper output to `%s'..." msgstr "paperituloste paikkaan `%s'..." #: paper-score.cc:78 #, c-format msgid "Element count %d (spanners %d) " msgstr "Elementtien määrä: %d (ladokkeita: %d)" #: paper-score.cc:83 msgid "Preprocessing graphical objects..." msgstr "Esiprosessoidaan graafisia kohteita..." #: paper-score.cc:116 msgid "Outputting Score, defined at: " msgstr "Tulostetaan viivasto, määrittelypaikasta: " #: parse-scm.cc:79 msgid "GUILE signaled an error for the expression begining here" msgstr "GUILE aitoi virheen lausekkeelle, joka alkoi täältä" #. #. We could change the current translator's id, but that would make #. errors hard to catch #. #. last->translator_id_string_ = get_change ()->change_to_id_string_; #. #: part-combine-music-iterator.cc:139 #, c-format msgid "I'm one myself: `%s'" msgstr "Olen yksikseni: '%s'" #: part-combine-music-iterator.cc:142 #, c-format msgid "none of these in my family: `%s'" msgstr "yksikään näistä ei ole perheestäni: `%s'" #: percent-repeat-engraver.cc:109 msgid "Don't know how to handle a percent repeat of this length." msgstr "Ei tiedetä kuinka kohdella tämän mittaista prosenttitoistoa." #: percent-repeat-engraver.cc:163 msgid "unterminated percent repeat" msgstr "päättymätön prosenttitoisto" #: percent-repeat-iterator.cc:65 msgid "no one to print a percent" msgstr "kukaan ei voinut tulostaa prosenttia" #: performance.cc:51 msgid "Track ... " msgstr "Jälki ... " #: performance.cc:83 msgid "Creator: " msgstr "Tekijä: " #: performance.cc:103 msgid "at " msgstr "kohdassa " #: performance.cc:114 #, c-format msgid "from musical definition: %s" msgstr "musiikkimäärityksestä: %s" #: performance.cc:169 #, c-format msgid "MIDI output to `%s'..." msgstr "MIDI-tuloste paikkaan `%s'..." #: phrasing-slur-engraver.cc:123 msgid "unterminated phrasing slur" msgstr "päättymätön fraasikaari" #: phrasing-slur-engraver.cc:141 msgid "can't find start of phrasing slur" msgstr "ei voitu löytää alkua fraasikaarelle" #: piano-pedal-engraver.cc:235 piano-pedal-engraver.cc:250 #: piano-pedal-engraver.cc:305 piano-pedal-performer.cc:82 #, c-format msgid "can't find start of piano pedal: `%s'" msgstr "ei voitu löytää alkua pianopedaalille: `%s'" #: piano-pedal-engraver.cc:410 msgid "unterminated pedal bracket" msgstr "päättymätön pedaalisulkumerkki" #: property-iterator.cc:97 #, c-format msgid "Not a grob name, `%s'." msgstr "Ei ollut nimi graafiselle objektille (grob): `%s'." #: rest.cc:139 #, c-format msgid "rest `%s' not found, " msgstr "taukoa `%s' ei löytynyt, " #: rest-collision.cc:199 msgid "too many colliding rests" msgstr "liian monta törmäävää taukoa" #: scm-option.cc:45 msgid "lilypond -e EXPR means:" msgstr "lilypond -e EXPR tarkoittaa:" #: scm-option.cc:47 msgid " Evalute the Scheme EXPR before parsing any .ly files." msgstr " Evaluoidaan skeema EXPR ennen kuin jäsennetään yhtäkään .ly -tiedostoista." #: scm-option.cc:49 msgid " Multiple -e options may be given, they will be evaluated sequentially." msgstr " Useita -e optioita voidaan antaa, ne evaluoidaan peräkkäisinä" #: scm-option.cc:51 msgid " The function ly-set-option allows for access to some internal variables." msgstr " Funktio ly-set-option sallii pääsyn joihinkin sisäisiin muuttujiin" #: scm-option.cc:53 msgid "Usage: lilypond -e \"(ly-set-option SYMBOL VAL)\"" msgstr "Käyttö: lilypond -e \"(ly-set-option SYMBOLI ARVO)\"" #: scm-option.cc:55 msgid "Where SYMBOL VAL pair is any of:" msgstr "Missä (SYMBOLI,ARVO)-pari on jokin näistä:" #: scm-option.cc:128 msgid "Unknown internal option!" msgstr "Tuntematon sisäinen optio!" #: score.cc:85 msgid "Interpreting music..." msgstr "Tulkitaan musiikkia..." #: score.cc:97 msgid "Need music in a score" msgstr "Laita musiikkia viivastolle" #. should we? hampers debugging. #: score.cc:111 msgid "Errors found/*, not processing score*/" msgstr "Virheitä löytyi/*, ei prosessoida viivastoa*/" #: score.cc:118 #, c-format msgid "elapsed time: %.2f seconds" msgstr "kulunut aika: %.2f sekuntia" #: score-engraver.cc:99 #, c-format msgid "can't find `%s'" msgstr "`%s' jäi löytymättä" #: score-engraver.cc:100 msgid "Fonts have not been installed properly. Aborting" msgstr "Fontteja ei oltu asennettu kunnolla. Keskeytetään" #: score-engraver.cc:205 #, c-format msgid "unbound spanner `%s'" msgstr "sitomaton ladoke `%s'" #: script-engraver.cc:90 #, c-format msgid "Don't know how to interpret articulation `%s'" msgstr "Ei tiedetä kuinka tulkita artikulaatio: `%s'" #. this shouldn't happen, but let's continue anyway. #: separation-item.cc:53 separation-item.cc:101 msgid "Separation_item: I've been drinking too much" msgstr "Separation_item: Olen juonut liikaa" #: simple-spacer.cc:248 #, c-format msgid "No spring between column %d and next one" msgstr "Ei jousta sarakkeen %d ja sitä seuraavan välillä" #: slur-engraver.cc:141 msgid "unterminated slur" msgstr "päättymätön kaari" #. How to shut up this warning, when Voice_devnull_engraver has #. eaten start event? #: slur-engraver.cc:159 msgid "can't find start of slur" msgstr "ei löytynyt alkua kaarelle" #: source-file.cc:67 #, c-format msgid "Huh? Got %d, expected %d characters" msgstr "Täh? Saatiin %d merkkiä, oletetun %d asemesta" #: spacing-spanner.cc:379 #, c-format msgid "Global shortest duration is %s\n" msgstr "Globaali lyhin kesto on %s\n" #: spring-smob.cc:32 #, c-format msgid "#" msgstr "#" #: staff-symbol.cc:61 msgid "staff symbol: indentation yields beyond end of line" msgstr "viivastosymboli: sisennys vie rivin lopun taakse" #: stem.cc:118 msgid "Weird stem size; check for narrow beams" msgstr "Outo varren koko; koeta lyhyempiä palkkeja" #: stem.cc:611 #, c-format msgid "flag `%s' not found" msgstr "lippua `%s' ei löydetty" #: stem.cc:624 #, c-format msgid "flag stroke `%s' not found" msgstr "lipun piirtoa `%s' ei löytynyt" #: stem-engraver.cc:96 msgid "tremolo duration is too long" msgstr "tremolon kesto on liian pitkä" #: stem-engraver.cc:124 #, c-format msgid "Adding note head to incompatible stem (type = %d)" msgstr "Lisätään nuottipää sopimattomaan varteen (tyyppi = %d)" #: stem-engraver.cc:125 msgid "Don't you want polyphonic voices instead?" msgstr "Etkö haluaisi polyfonisia äänisiä sen sijaan?" #: streams.cc:34 #, c-format msgid "can't create directory: `%s'" msgstr "ei voitu tehdä hakemistoa: `%s'" #: streams.cc:48 msgid "Error syncing file (disk full?)" msgstr "Virhe synkronisoitaessa tiedostoa (onko levy täysi?)" #: system.cc:125 #, c-format msgid "Element count %d." msgstr "Elementtien määrä: %d." #: system.cc:372 #, c-format msgid "Grob count %d " msgstr "Graafisien objektien (grob) määrä: %d " #: system.cc:386 msgid "Calculating line breaks..." msgstr "Lasketaan rivinvaihtoja..." #: text-spanner-engraver.cc:81 msgid "can't find start of text spanner" msgstr "ei löydetty alkua tekstiladokkeelle" #: text-spanner-engraver.cc:95 msgid "already have a text spanner" msgstr "tekstiladoke löytyi jo" #: text-spanner-engraver.cc:164 msgid "unterminated text spanner" msgstr "päättymätön tekstiladoke" #: tfm.cc:83 #, c-format msgid "can't find ascii character: %d" msgstr "ei löydetty ASCII-merkkiä: %d" #. Not using ngettext's plural feature here, as this message is #. more of a programming error. #: tfm-reader.cc:108 #, c-format msgid "TFM header of `%s' has only %u word (s)" msgstr "TFM-otsakkeessa `%s' on vain %u sana(a)" #: tfm-reader.cc:142 #, c-format msgid "%s: TFM file has %u parameters, which is more than the %u I can handle" msgstr "%s: TFM-tiedostossa on %u parametria, mikä on enemmän kuin maksimimäärä %u" #: tie-performer.cc:159 msgid "No ties were created!" msgstr "Sidoksia ei tehty!" #: time-scaled-music-iterator.cc:25 msgid "no one to print a tuplet start bracket" msgstr "ketään ei löytynyt tulostamaan tupletin alkusulkua" #. If there is no such symbol, we default to the numbered style. #. (Here really with a warning!) #: time-signature.cc:87 #, c-format msgid "time signature symbol `%s' not found; reverting to numbered style" msgstr "aikamerkintäsymbolia `%s' ei löytynyt; vaihdetaan numeroituun tyyliin" #. #. Todo: should make typecheck? #. #. OTOH, Tristan Keuris writes 8/20 in his Intermezzi. #. #: time-signature-engraver.cc:57 #, c-format msgid "Found strange time signature %d/%d." msgstr "Löydettiin outo aikamerkintä: %d/%d." #: translator-ctors.cc:53 #, c-format msgid "unknown translator: `%s'" msgstr "tuntematon tulkitsija: `%s'" #: translator-def.cc:105 msgid "Program has no such type" msgstr "Ohjelmalla ei ole sellaista tyyppiä" #: translator-def.cc:111 #, c-format msgid "Already contains: `%s'" msgstr "Sisällytettiin jo: `%s'" #: translator-def.cc:112 #, c-format msgid "Not adding translator: `%s'" msgstr "Ei lisätty tulkitsijaa: `%s'" #: translator-def.cc:229 #, c-format msgid "can't find: `%s'" msgstr "ei löytynyt `%s'" #: translator-group.cc:158 #, c-format msgid "can't find or create `%s' called `%s'" msgstr "ei löydetty tai ei luotu `%s' nimeltä `%s'" #: translator-group.cc:230 #, c-format msgid "can't find or create: `%s'" msgstr "ei löydetty tai ei luotu: `%s'" #: vaticana-ligature.cc:49 msgid "ascending vaticana style flexa" msgstr "laskeva vaticana-tyylinen flexa" #: vaticana-ligature.cc:219 msgid "Vaticana_ligature:thickness undefined; assuming 1.4" msgstr "Vaticana_ligature: määrittämätön paksuus; oletetaan 1.4" #: vaticana-ligature.cc:233 msgid "Vaticana_ligature:x-offset undefined; assuming 0.0" msgstr "Vaticana_ligature: x-offset määrittämätön; oletetaan 0.0" #: vaticana-ligature.cc:258 msgid "Vaticana_ligature: (delta_pitch == 0)" msgstr "Vaticana_ligature: (delta_pitch == 0)" #: vaticana-ligature.cc:271 msgid "Vaticana_ligature:delta-pitch -> ignoring join" msgstr "Vaticana_ligature:delta-pitch -> sivuutetaan sidos" #: vaticana-ligature-engraver.cc:477 #, c-format msgid "Vaticana_ligature_engraver: setting `spacing-increment = %f': ptr=%ul" msgstr "Vaticana_ligature_engraver: asetetaan `spacing-increment = %f': ptr=%ul" #: volta-engraver.cc:112 msgid "No volta spanner to end" msgstr "Ei päätettävää volta-ladoketta" #: volta-engraver.cc:123 msgid "Already have a volta spanner. Stopping that one prematurely." msgstr "Löytyi ja volta-ladoke. Lopetetaan se ennenaikaisesti." #: volta-engraver.cc:127 msgid "Also have a stopped spanner. Giving up." msgstr "Löytyi myös lopetettu ladoke. Luovutetaan." #: parser.yy:480 msgid "Identifier should have alphabetic characters only" msgstr "Tunnisteessa saa olla vain aakkosellisia merkkejä" #: parser.yy:779 msgid "More alternatives than repeats. Junking excess alternatives." msgstr "Enemmän vaihtoehtoja kuin kertauksia. Heitetään pois liialliset vaihtoehdot." #: parser.yy:861 parser.yy:868 msgid "pplycontext takes function argument" msgstr "\applycontext vaati funktioargumentin" #: parser.yy:877 msgid "Second argument must be a symbol" msgstr "Toisen argumentin on oltava symboli" #: parser.yy:882 msgid "First argument must be a procedure taking one argument" msgstr "Ensimmäisen argumentin on oltava aliohjelma, joka sa yhden argumentin" #: parser.yy:1009 msgid "pply takes function argument" msgstr "\apply vaatii funktioargumentin" #: parser.yy:1501 msgid "Expecting string as script definition" msgstr "Oletetaan merkkijonon olevan skriptimäärittely" #: parser.yy:1598 msgid "Expecting musical-pitch value" msgstr "Oletetaan musiikillinen nuottikorkeusarvo" #: parser.yy:1609 msgid "Must have duration object" msgstr "Täytyy olla kesto-objekti" #: parser.yy:1618 parser.yy:1626 msgid "Have to be in Lyric mode for lyrics" msgstr "Täytyy olla Lyrics -moodissa lyriikkaa varten" #: parser.yy:1798 parser.yy:1853 #, c-format msgid "not a duration: %d" msgstr "ei ole kesto: %d" #: parser.yy:1949 msgid "Have to be in Note mode for notes" msgstr "Täytyy olla Note -moodissa nuotteja varten" #: parser.yy:2032 msgid "Have to be in Chord mode for chords" msgstr "Täytyy olla Chord -moodissa sointuja varten" #: parser.yy:2171 msgid "need integer number arg" msgstr "tarvitaan kokonaislukuargumentti" #: parser.yy:2316 msgid "Suspect duration found following this beam" msgstr "Epäilty kesto löytyi palkin jälkeen" #: lexer.ll:186 msgid "EOF found inside a comment" msgstr "EOF löytyi kommentin sisältä" #: lexer.ll:200 msgid "\\maininput disallowed outside init files" msgstr "\\maininput ei ole sallittu init-alustustiedoston ulkopuolella" #: lexer.ll:224 #, c-format msgid "wrong or undefined identifier: `%s'" msgstr "väärä tai määrittämätön tunniste: `%s'" #. backup rule #: lexer.ll:233 msgid "Missing end quote" msgstr "Puuttuva loppulainausmerkki" #. backup rule #: lexer.ll:255 lexer.ll:259 msgid "white expected" msgstr "oletettiin välilyönti" #: lexer.ll:268 msgid "Can't evaluate Scheme in safe mode" msgstr "Scheme ei evaluoitunut turvamoodissa" #: lexer.ll:397 lexer.ll:487 msgid "Brace found at end of lyric. Did you forget a space?" msgstr "Sulkumerkki löytyi lyriikan lopussa. Unohditko välilyönnin?" #: lexer.ll:574 #, c-format msgid "invalid character: `%c'" msgstr "epäkelpo merkki: `%c'" #: lexer.ll:651 #, c-format msgid "unknown escaped string: `\\%s'" msgstr "tuntematon koodinvaihtomerkillinen merkkijono: `\\\\%s'" #: lexer.ll:742 #, c-format msgid "Incorrect lilypond version: %s (%s, %s)" msgstr "Epäkelpo lilypond versio: %s (%s, %s)" #: lexer.ll:743 msgid "Consider updating the input with the convert-ly script" msgstr "Harkitse syötteen päivittämistä convert-ly scriptillä" #~ msgid "Run LilyPond using LaTeX for titling" #~ msgstr "Aja LilyPond käyttäen LaTeX:ia otsikoimiseen" #~ msgid "Fetch and rebuild from latest source package" #~ msgstr "Hae ja käännä uudelleen viimeisestä lähdekoodipakkauksesta" #~ msgid "unpack and build in DIR [%s]" #~ msgstr "pura paketti ja käännä hakemistiin DIR [%s]" #~ msgid "execute COMMAND, subtitute:" #~ msgstr "suorita KOMENTO, korvaa:" #~ msgid "%b: build root" #~ msgstr "%b: laatimisen juuri" #~ msgid "%n: package name" #~ msgstr "%n: paketin nimi" #~ msgid "%r: release directory" #~ msgstr "%r: julkaisuhakemisto" #~ msgid "%t: tarball" #~ msgstr "%t: tar-paketti" #~ msgid "%v: package version" #~ msgstr "%v: paketin versio" #~ msgid "keep all output, and name the directory %s" #~ msgstr "säilytä kaikki tulosteet ja nimeä tiedosto %s" #~ msgid "upon failure notify EMAIL[,EMAIL]" #~ msgstr "virheen sattuessa ilmoita osoitteeseen EMAIL[,EMAIL]" #~ msgid "remove previous build" #~ msgstr "poista aiempi laadinta" #~ msgid "fetch and build URL [%s]" #~ msgstr "nouda ja laadi URL [%s]" #~ msgid "Listing `%s'..." #~ msgstr "Listataan `%s'..." #~ msgid "latest is: %s" #~ msgstr "viimeisin on: %s" #~ msgid "relax, %s is up to date" #~ msgstr "rentoudu, %s on päivitetty" #~ msgid "Fetching `%s'..." #~ msgstr "Noudetaan `%s'..." #~ msgid "Building `%s'..." #~ msgstr "Rakennetaan `%s'..." #~ msgid "invalid subtraction: not part of chord: %s" #~ msgstr "epäkelpo korvaus: ei ole soinnun osa: %s" #~ msgid "invalid inversion pitch: not part of chord: %s" #~ msgstr "epäkelpo käänteinen äänenkorkeus: ei ole sounnun osa: %s" #~ msgid "This was the other key definition." #~ msgstr "Tämä oli toinen sävellajin määritys." #~ msgid ", at " #~ msgstr ", kohdassa " #~ msgid "Pitch arguments out of range" #~ msgstr "Äänenkorkeusargumentti vaihteluvälin ulkopuolella" #~ msgid "(left_head == 0)" #~ msgstr "(left_head == 0)" #~ msgid "undefined left_head" #~ msgstr "määrittämätön left_head" #~ msgid "(right_head == 0)" #~ msgstr "(right_head == 0)" #~ msgid "undefined right_head" #~ msgstr "määrittämätön right_head" #~ msgid "junking lonely porrectus" #~ msgstr "heitetään pois yksinäinen Porrectus" #~ msgid "porrectus style undefined; using mensural" #~ msgstr "porrectus-tyyli määrittämätön; käytetään mensuraalia" #~ msgid "stack size cur %d, max %d\n" #~ msgstr "nyk pinokoko: %d, maximi %d\n" #~ msgid "Putting slur over rest." #~ msgstr "Laitetaan kaari tauon päälle." #~ msgid "Slur over rest?" #~ msgstr "Kaari tauon päällä?" #~ msgid "Text_spanner too small" #~ msgstr "Tekstiladoke on liian pieni" #~ msgid "Can't specify direction for this request" #~ msgstr "Ei voitu määritelllä suuntaa tälle pyynnölle"