in particular the windows32 binaries, are only made every once in a while.
They may lag several versions behind the latest version.
+@subsection Beams, slurs and crescendi are not displayed at all!
+
+XDvi uses GhostScript for displaying PostScript, check that you have
+GhostScript installed. If you use a different DVI viewer (eg, on
+Windows), check if it will display embedded PostScript. Don't worry,
+the symbols should appear on the printout.
+
+
@bye
@example
- lilypond [OPTION]... [MUDELA-FILE]...
+ lilypond [OPTION]... [FILE]...
@end example
-@unnumberedsec Command Options
+@unnumberedsec Options
@table @code
--- /dev/null
+\documentclass[a4paper]{article}
+
+
+
+%\def\preLilypondExample{}}
+%\def\postLilypondExample{}
+
+
+\begin{document}
+
+\begin{lilypond}
+\score {
+ \notes\relative c' { c d e f g a b c }
+}
+\end{lilypond}
+
+
+\begin[fragment]{lilypond}
+c d e
+\end{lilypond}
+
+
+% generate standard lilypond titles
+\input titledefs.tex
+\def\preLilypondExample{\def\mustmakelilypondtitle{}}
+
+\begin{lilypond}
+\header {
+ title = "Title";
+ subtitle = "Subtitle";
+ subsubtitle = "Subsubtitle";
+ opus = "Opus 1";
+ piece = "Piece";
+ composer = "Composer";
+ enteredby = "JCN";
+ instrument = "instrument";
+}
+\paper { linewidth = -1.; }
+\score {
+ \notes \relative c'' { a b c d }
+}
+\end{lilypond}
+
+\begin{enumerate}
+\item Vers one. aaa aaa aaa aaa aaa aaa aaa aaa aaa aaa
+\item Vers two. bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb
+\end{enumerate}
+
+\end{document}
-% kommentar
+%
+% This is way too long and hairy
+%
+%
+
+
+
\documentclass[a4paper, 12pt]{article}
-%\def\preMudelaExample{}
-%\def\postMudelaExample{}
+
+%\def\preLilypondExample{}
+%\def\postLilypondExample{}
%\usepackage{graphics}
%\usepackage{landscape}
+
\begin{document}
%uncomment this to try twocolumn mode
%\twocolumn
-\section{Mudelabook + LaTeX}
+\section{Lilypond-book + LaTeX}
This is an examplefile for mixing Lilypond and Latex. It is also
used to test lilypond-book. View the source to see how it is done.
+New features in 1.4
+
* Finale (.etf), PMX (.pmx) and musedata import tools.
* Point and click functionality using emacs and Xdvi.
+* Comprehensive documentation, including tutorial.
+
+* Self-documenting: generated internal documentation.
+
+* Includes an extensive glossary of musical terms.
+
* Improved design and implementation: Complete rewrite of the
internals: LilyPond is smaller, cleaner, more flexible, etc.
and stanza numbering.
* Part combining for orchestral scores and hymns: two voices are
- combined into a staff automatically, including Solo/`a2
+ combined into a staff automatically, including Solo/a2
indications as appropriate.
* Chordnames are now configurable in every respect
-* Includes an extensive glossary of musical terms.
-
-* Many bugfixes.
+* Easy-play notation
* Finished ouverture Coriolan as full orchestral score example.
-* Self-documenting: generated internal documentation.
+* Mutopia ports collection: easy accessible music archive.
* AsciiScript: ASCII-art output
* Translations into Japanese, French and Russian
-* EZ play notation
+* Many bugfixes.
+
+
+Removed features
+
+* margin shape
#
# FIXME breaks on multiple strings.
#
-def read_mudela_header (fn):
+def read_lilypond_header (fn):
s = open(fn).read ()
s = re.sub('%.*$', '', s)
s = re.sub('\n', ' ', s)
ext = ext2 + ext
print '%s, ' % ex
- header = read_mudela_header(ex)
+ header = read_lilypond_header(ex)
def read_dict(s, default, h =header):
try:
}
/*
- Produce GNU-compliant error message. Correcting mudela is such a
- breeze if you ('re edidor) know (s) the error column too
+ Produce GNU-compliant error message. Correcting lilypond source is
+ such a breeze if you ('re edidor) know (s) the error column too
Format:
--- /dev/null
+\header{
+filename = "denneboom.ly";
+enteredby = "jcn";
+copyright = "public domain";
+}
+%{ file tests silly line shapes %}
+
+\include "paper20.ly"
+
+
+
+oden = \lyrics{
+ O |
+ den- ne- boom, o |
+ den- ne- boom Wat |
+ zijn uw tak- ken |
+ won- der- schoon
+}
+
+ikheb = \lyrics{
+ Ik |
+ heb u laatst in_'t |
+ bos zien staan toen |
+ zat- en er geen |
+ kaars- jes aan
+}
+
+ugloeit = \lyrics{
+ U |
+ gloeit in bar- re |
+ win- ter- tijd, als |
+ sneeuw op aar- de |
+ licht ge- spreid
+}
+
+oboom = \notes\transpose c''{
+ g,8 |
+ c8. c16 c4. d8 |
+ e8. e16 e4. e8 |
+ d e f4 b, |
+ d8. c16 c4 r8
+}
+
+bos = \notes\transpose c''{
+ g8 |
+ g e a4. g8 |
+ g8. f16 f4 r8 f8 |
+ f d g4. f8 |
+ f8. e16 e4 r8
+}
+
+
+melody = \notes{
+ \oboom
+ \oboom
+ \bos
+ \oboom
+}
+
+
+verseOne = \notes{
+ \oden
+ \oden
+ \ikheb
+ \oden
+}
+
+verseOneStaff = \context Lyrics = one
+ \$verse_one
+
+
+verseTwo = \notes{
+ \oden
+ \oden
+ \ugloeit
+ \oden
+}
+
+verseTwoStaff = \context Lyrics = two
+ \$verse_two
+
+
+denneboomShape = \paper{
+ \paperTwenty
+ indent = 20. \mm;
+
+ % UGH -- THIS IS HAIRY
+ #'margin-shape = #(map
+ (lambda (x) (cons-map mm-to-pt x))
+ '((70.0 . 20.)
+ (65.0 . 30.0)
+ (57.5 . 45.0)
+ (50.0 . 60.0)
+ (42.5 . 75.)
+ (35.0 . 90.)
+ (27.5 . 105.)
+ (20.0 . 120.0)
+ (10.0 . 140.0)
+ (65.0 . 30.0))
+ )
+
+ gourlay_maxmeasures = 30.;
+ arithmetic_basicspace = 3.8;
+ arithmetic_multiplier = 8.\pt;
+}
+
+\score{
+ \addlyrics
+ \context Staff { \time 3/4; \melody }
+ \context Lyrics \$verse_one
+ \paper{
+ \$denneboom_shape
+ }
+ \midi{ \tempo 4 = 90; }
+}
--- /dev/null
+% minimal what?
+% dumps core
+
+
+\score {
+ \sequential {\clef bass ; }
+ \paper {
+% \translator { \context Score_engraver ; \name "Score"; }
+ \translator { \type "Score_engraver"; \name "Score"; }
+ linewidth = 30 * \staffspace;
+ }
+}
--- /dev/null
+% ugh: strange order of things, this:
+% a16 * 1/2 (
+% must be
+% a16 ( * 1/2
+
+
+\score {
+ \context Voice \notes\relative c {
+ % to see the magic: uncomment size stuff in init/paper20.ly
+
+ c'4 c4
+
+ \property Voice.fontSize= -2
+ % ugh ugh
+ b16 * 1 / 2 (
+ \property Voice.fontSize= 0 )
+ g4 *31/32
+
+ a a g2
+
+ }
+ \paper { }
+ \midi { }
+}
\skip 2;
\skip 1*2;
-#ifndef FAKE_GRACE
+#ifndef FAKE_GRACE /* First run this through cpp. See head les-nereides.ly */
\skip 1;
#else % FAKE_GRACE
\skip 2.; \partial 32*24;
slurVerticalDirection = #1
verticalDirection = -1
- autoBeamSettings \override (end * * * *) = #(make-moment 1 2)
+ autoBeamSettings \override #'(end * * * *) = #(make-moment 1 2)
}
}
\midi {
c8 c c4
r8 c c c
% no autobeaming
- \property Voice.beamAuto = ##f
+ \property Voice.noAutoBeaming = ##t
c8 c c c
}
\paper{
% declare the standard dynamic identifiers.
%
+pppp = \dynamicscript #"pppp"
ppp = \dynamicscript #"ppp"
pp = \dynamicscript #"pp"
p = \dynamicscript #"p"
f = \dynamicscript #"e" % see feta-din layout
ff = \dynamicscript #"ff"
fff = \dynamicscript #"fff"
+ffff = \dynamicscript #"ffff"
fp = \dynamicscript #"fp"
sf = \dynamicscript #"sf"
\translator { \NoteNamesContext }
\translator { \ScoreContext }
-\translator { \ChoirStaffContext}
-\translator { \GraceContext}
+\translator { \ChoirStaffContext }
+\translator { \GraceContext }
\translator { \RhythmicStaffContext}
\translator { \StaffContext }
-\translator { \VoiceContext}
+\translator { \VoiceContext }
\translator { \StaffGroupContext }
\translator { \ChordNamesContext }
-\translator { \ChordNamesVoiceContext}
-\translator { \GrandStaffContext}
+\translator { \GrandStaffContext }
\translator { \LyricsContext }
-\translator { \ThreadContext}
-\translator { \PianoStaffContext}
+\translator { \ThreadContext }
+\translator { \PianoStaffContext }
\translator { \LyricsVoiceContext }
\translator { \StaffContainerContext }
#
# Magic: find and include LilyPond's StepMake rules
#
-# 0: follow LILYPONDPREFIX
-# 1: try source tree
-# 2: try installed tree in $HOME
-# 3: try system installed tree
-#
-make-root=$(wildcard $(LILYPONDPREFIX)/make)
+# 0: try local tree
+# 1: follow LILYPONDPREFIX
+# 2: try source tree in home
+# 3: try installed tree in $HOME
+# 4: try system installed tree
+# 5: try system installed tree
+#
+make-root=$(wildcard $(depth)/make)
+make-root?=$(wildcard $(LILYPONDPREFIX)/make)
make-root?=$(wildcard $(HOME)/usr/src/lilypond/make)
+make-root?=$(wildcard $(HOME)/usr/share/lilypond/make)
make-root?=$(wildcard /usr/share/lilypond/make)
-make-root?=$(wildcard /usr/share/lilypond/make)
+make-root?=$(wildcard /usr/local/share/lilypond/make)
#make-root=<LilyPond's datadir>/make
ifneq ($(make-root),)
### some versions apparently choke on $(message)
### $(message running from $(make-root))
-depth=$(make-root)/..
+depth:=$(make-root)/..
LOCALSTEPMAKE_TEMPLATES=ly mutopia
include $(make-root)/stepmake.make
else
# or make `foo-book' to make out/foo-book.ps
#
%: $(outdir)/%.ps
- @echo Making $@ from $<
+ @echo Generated $< for target $@.
#
# Also clean hand-compiled stuff in cwd
--- /dev/null
+ifeq ($(zipped),)
+%.ly:
+ wget $(MUTOPIA_MIRROR)/$(mutopia-dir)/$@
+ $(MAKE) local-convert-ly
+else
+%.zip:
+ wget $(MUTOPIA_MIRROR)/$(mutopia-dir)/$@
+
+%.ly: %-lys.zip
+ unzip -n $<
+ $(MAKE) local-convert-ly
+endif
+
+%/GNUmakefile:
+ mkdir -p $(@D)
+ $(if $(shell grep '[.]ly' $(@D)/index.html), \
+ echo 'mutopia-name = $(@D)' > $@, \
+ $(if $(shell grep '[.]zip' $(@D)/index.html), \
+ echo -e 'zipped = true\nmutopia-name = $(@D)' > $@))
+ echo -e $(GNUmakefile) >> $@
+
+
/// Return Rational representation (fraction of whole note).
static Rational dur2_mom (Duration dur );
- /// Return Mudela string representation.
+ /// Return Lilypond string representation.
static String dur2_str (Duration dur );
/// Return duration from Rational (fraction of whole) representation.
--- /dev/null
+//
+// lilypond-column.hh -- declare Lilypond_column
+//
+// copyright 1997 Jan Nieuwenhuizen <janneke@gnu.org>
+
+#ifndef LILYPOND_COLUMN_HH
+#define LILYPOND_COLUMN_HH
+
+#include "flower-proto.hh"
+#include "midi2ly-proto.hh"
+#include "rational.hh"
+#include "cons.hh"
+
+/// (lilypond_column)
+class Lilypond_column
+{
+public:
+ Lilypond_column (Lilypond_score* lilypond_score_l, Rational mom);
+
+ void add_item (Lilypond_item* lilypond_item_l);
+ Rational at_mom ();
+
+ Cons_list<Lilypond_item> lilypond_item_l_list_;
+ Rational at_mom_;
+ Lilypond_score* lilypond_score_l_;
+};
+
+#endif // LILYPOND_COLUMN_HH
+
--- /dev/null
+//
+// lilypond-item.hh -- declare lilypond_item
+//
+// copyright 1997 Jan Nieuwenhuizen <janneke@gnu.org>
+
+#ifndef LILYPOND_ITEM_HH
+#define LILYPOND_ITEM_HH
+
+#include "midi2ly-proto.hh"
+#include "string.hh"
+#include "rational.hh"
+#include "duration.hh"
+
+// should these:
+// * be Lilypond_items
+// * be Voice_elements/requests
+// * get a name-change
+// ?
+
+/// (lilypond_item)
+class Lilypond_item
+{
+public:
+ Lilypond_item (Lilypond_column* lilypond_column_l);
+ virtual ~Lilypond_item ();
+
+ virtual Rational at_mom ();
+ virtual Rational duration_mom ();
+ void output (Lilypond_stream& lilypond_stream_r);
+ virtual String str () = 0;
+
+ Lilypond_column* lilypond_column_l_;
+};
+
+class Lilypond_key : public Lilypond_item
+{
+public:
+ Lilypond_key (int accidentals_i, int minor_i);
+
+ String notename_str (int pitch_i);
+ virtual String str ();
+
+ //private:
+ int accidentals_i_;
+ int minor_i_;
+};
+
+class Lilypond_time_signature : public Lilypond_item
+{
+public:
+ Lilypond_time_signature (int num_i, int den_i, int division_4_i, int count_32_i);
+
+ Duration i2_dur (int time_i, int division_1_i);
+ int clocks_1_i ();
+ int den_i ();
+ int num_i ();
+ virtual String str ();
+ Rational bar_mom ();
+
+private:
+ Real sync_f_;
+ Duration sync_dur_;
+ int clocks_1_i_;
+ int num_i_;
+ int den_i_;
+};
+
+class Lilypond_note : public Lilypond_item
+{
+public:
+ Lilypond_note (Lilypond_column* lilypond_column_l, int channel_i, int pitch_i, int dyn_i);
+
+ Duration duration ();
+ virtual Rational duration_mom ();
+ virtual String str ();
+
+ // int const c0_pitch_i_c_ = 60; // huh?
+ static int const c0_pitch_i_c_ = 48;
+
+ static bool const simple_plet_b_s = false;
+ int channel_i_;
+ int pitch_i_;
+ Lilypond_column* end_column_l_;
+};
+
+class Lilypond_skip : public Lilypond_item
+{
+public:
+ Lilypond_skip (Lilypond_column* lilypond_column_l, Rational skip_mom);
+
+ Duration duration ();
+ virtual Rational duration_mom ();
+ virtual String str ();
+
+private:
+ Rational mom_;
+};
+
+
+class Lilypond_tempo : public Lilypond_item
+{
+public:
+ Lilypond_tempo (int useconds_per_4_i);
+
+ int get_tempo_i (Rational rational);
+ virtual String str ();
+ int useconds_per_4_i ();
+
+private:
+ int useconds_per_4_i_;
+ Rational seconds_per_1_mom_;
+};
+
+class Lilypond_text : public Lilypond_item
+{
+public:
+ enum Type {
+ TEXT = 1, COPYRIGHT, TRACK_NAME, INSTRUMENT_NAME, LYRIC,
+ MARKER, CUE_POINT
+ };
+ Lilypond_text (Lilypond_text::Type type, String str);
+ virtual String str ();
+
+ //private:
+ Type type_;
+ String text_str_;
+};
+
+#endif // LILYPOND_ITEM_HH
+
--- /dev/null
+//
+// lilypond-score.hh -- declare Lilypond_score
+//
+// copyright 1997 Jan Nieuwenhuizen <janneke@gnu.org>
+
+#ifndef LILYPOND_SCORE_HH
+#define LILYPOND_SCORE_HH
+
+#include "midi2ly-proto.hh"
+#include "flower-proto.hh"
+#include "cons.hh"
+#include "parray.hh"
+
+/// (lilypond_score)
+class Lilypond_score {
+public:
+ Lilypond_score (int format_i, int tracks_i, int tempo_i);
+ ~Lilypond_score ();
+
+ void add_item (Lilypond_item* lilypond_item_p);
+ void add_staff (Lilypond_staff* lilypond_staff_p);
+
+ Lilypond_column* find_column_l (Rational mom);
+ Lilypond_column* get_column_l (Rational mom);
+
+ void output (String filename_str);
+ void process ();
+
+ // ugh
+ Lilypond_key* lilypond_key_l_;
+ Lilypond_time_signature* lilypond_time_signature_l_;
+ Lilypond_tempo* lilypond_tempo_l_;
+ Lilypond_staff * last_staff_l_;
+private:
+ void filter_tempo ();
+ void quantify_columns ();
+ void quantify_durations ();
+ void settle_columns ();
+
+ Cons_list<Lilypond_staff> lilypond_staff_p_list_;
+ Link_array<Lilypond_column> column_l_array_;
+
+ // ugh, ugh, ugh
+public:
+ int format_i_;
+ int tracks_i_;
+ int tempo_i_;
+};
+
+#endif // LILYPOND_SCORE_HH
+
--- /dev/null
+//
+// lilypond-staff.hh -- declare lilypond_staff
+//
+// copyright 1997 Jan Nieuwenhuizen <janneke@gnu.org>
+
+#ifndef LILYPOND_STAFF_HH
+#define LILYPOND_STAFF_HH
+
+#include "midi2ly-proto.hh"
+#include "flower-proto.hh"
+#include "cons.hh"
+#include "string.hh"
+
+/// (lilypond_staff)
+class Lilypond_staff
+{
+public:
+ Lilypond_staff (int number_i, String copyright_str, String track_name_str, String instrument_str);
+
+ void add_item (Lilypond_item* lilypond_item_p);
+ void eat_voice (Cons_list<Lilypond_item>& items);
+ String id_str ();
+ String name_str ();
+ void output (Lilypond_stream& lilypond_stream_r);
+ void process ();
+
+ String copyright_str_;
+ String instrument_str_;
+ String name_str_;
+ Lilypond_key* lilypond_key_l_;
+ Lilypond_time_signature* lilypond_time_signature_l_;
+ Lilypond_tempo* lilypond_tempo_l_;
+ int number_i_;
+
+private:
+ void output_lilypond_begin_bar (Lilypond_stream& lilypond_stream_r, Rational now_mom, int bar_i);
+
+ Cons_list<Lilypond_voice> lilypond_voice_p_list_;
+ Cons_list<Lilypond_item> lilypond_item_p_list_;
+};
+
+#endif // LILYPOND_STAFF_HH
+
--- /dev/null
+//
+// lilypond-stream.hh -- part of LilyPond
+//
+// copyright 1997 Jan Nieuwenhuizen <janneke@gnu.org>
+
+// should i be named Lilypond_stream?
+
+#ifndef LILYPOND_STREAM_HH
+#define LILYPOND_STREAM_HH
+
+#include "midi2ly-proto.hh"
+#include "string.hh"
+//#include "scalar.hh"
+
+/// Lily output
+class Lilypond_stream {
+public:
+ Lilypond_stream (String filename_str);
+ ~Lilypond_stream();
+
+ Lilypond_stream& operator << (char c);
+ Lilypond_stream& operator << (String s);
+ Lilypond_stream& operator << (Lilypond_item& lilypond_item_r);
+
+private:
+ void handle_pending_indent();
+ void header();
+ void open();
+ void output (String str);
+ void output_wrapped (String str);
+
+ ostream* os_p_;
+ String filename_str_;
+ int indent_i_;
+ int column_i_;
+ int pending_indent_i_;
+ int wrap_column_i_;
+ bool comment_mode_b_;
+};
+
+#endif // LILYPOND_STREAM_HH
+
--- /dev/null
+//
+// lilypond-voice.hh -- declare Lilypond_voice
+//
+// copyright 1997 Jan Nieuwenhuizen <janneke@gnu.org>
+
+#ifndef LILYPOND_VOICE_HH
+#define LILYPOND_VOICE_HH
+
+#include "midi2ly-proto.hh"
+#include "cons.hh"
+
+/// (lilypond_voice)
+class Lilypond_voice
+{
+public:
+ Lilypond_voice (Lilypond_staff* lilypond_staff_l);
+ void add_item (Lilypond_item* lilypond_item_l);
+ void output (Lilypond_stream& lilypond_stream_r);
+ String get_clef () const;
+ Lilypond_item * last_item_l_;
+ Lilypond_note * last_note_l_;
+private:
+ Lilypond_staff* lilypond_staff_l_;
+ Cons_list<Lilypond_item> lilypond_item_l_list_;
+
+};
+
+#endif // LILYPOND_VOICE_HH
+
Byte const* byte_L_;
Byte const* end_byte_L_;
Source_file* source_l_;
- Mudela_score* score_l_;
+ Lilypond_score* score_l_;
Rational bar_mom_;
};
class Midi_score_parser : public Midi_parser
{
public:
- Mudela_score* parse (String filename_str, Sources*);
+ Lilypond_score* parse (String filename_str, Sources*);
private:
void open (String filename_str, Sources*);
void parse_header ();
int find_earliest_i (Link_array<Midi_track_parser>& tracks);
- Mudela_score* parse_score ();
+ Lilypond_score* parse_score ();
};
#endif // MIDI_SCORE_PARSER_HH
~Midi_track_parser ();
Rational at_mom ();
- Mudela_staff* parse (Mudela_column* col_l);
+ Lilypond_staff* parse (Lilypond_column* col_l);
private:
bool eot ();
- void note_end (Mudela_column* col_l, int channel_i, int pitch_i, int aftertouch_i );
- void note_end_all (Mudela_column* col_l) ;
+ void note_end (Lilypond_column* col_l, int channel_i, int pitch_i, int aftertouch_i );
+ void note_end_all (Lilypond_column* col_l) ;
void parse_delta_time ();
- Mudela_item* parse_event (Mudela_column* col_l);
+ Lilypond_item* parse_event (Lilypond_column* col_l);
void parse_header ();
Rational at_mom_;
Byte running_byte_;
- Cons_list<Mudela_note> open_note_l_list_;
- Mudela_staff* mudela_staff_p_;
+ Cons_list<Lilypond_note> open_note_l_list_;
+ Lilypond_staff* lilypond_staff_p_;
Midi_parser_info* track_info_p_;
};
struct Midi_parser_info;
class Midi_score_parser;
class Midi_track_parser;
-class Mudela_stream;
-class Mudela_item;
-class Mudela_key;
-class Mudela_time_signature;
-class Mudela_note;
-class Mudela_tempo;
-class Mudela_text;
-class Mudela_score;
-class Mudela_staff;
-class Mudela_voice;
-class Mudela_column;
+class Lilypond_stream;
+class Lilypond_item;
+class Lilypond_key;
+class Lilypond_time_signature;
+class Lilypond_note;
+class Lilypond_tempo;
+class Lilypond_text;
+class Lilypond_score;
+class Lilypond_staff;
+class Lilypond_voice;
+class Lilypond_column;
#endif // MIDI2LY_PROTO_HH
--- /dev/null
+//
+// lilypond-column.cc -- implement Lilypond_column
+//
+// copyright 1997 Jan Nieuwenhuizen <janneke@gnu.org>
+
+#include "lilypond-column.hh"
+
+Lilypond_column::Lilypond_column (Lilypond_score* lilypond_score_l, Rational mom)
+{
+ lilypond_score_l_ = lilypond_score_l;
+ at_mom_ = mom;
+}
+
+void
+Lilypond_column::add_item (Lilypond_item* lilypond_item_l)
+{
+ lilypond_item_l_list_.append (new Cons<Lilypond_item> (lilypond_item_l, 0));
+}
+
+Rational
+Lilypond_column::at_mom()
+{
+ return at_mom_;
+}
--- /dev/null
+//
+// lilypond-item.cc -- implement Lilypond_item
+//
+// copyright 1997 Jan Nieuwenhuizen <janneke@gnu.org>
+
+#include <string.h>
+#include <assert.h>
+#include "midi2ly-global.hh"
+#include "string-convert.hh"
+#include "duration-convert.hh"
+#include "lilypond-column.hh"
+#include "lilypond-item.hh"
+#include "lilypond-stream.hh"
+#include "lilypond-score.hh"
+
+Lilypond_item::Lilypond_item (Lilypond_column* lilypond_column_l)
+{
+ lilypond_column_l_ = lilypond_column_l;
+}
+
+Lilypond_item::~Lilypond_item ()
+{
+}
+
+Rational
+Lilypond_item::at_mom ()
+{
+ return lilypond_column_l_->at_mom ();
+}
+
+Rational
+Lilypond_item::duration_mom ()
+{
+ return Rational (0);
+}
+
+void
+Lilypond_item::output (Lilypond_stream& lilypond_stream_r)
+{
+ lilypond_stream_r << str () << " ";
+}
+
+Lilypond_key::Lilypond_key (int accidentals_i, int minor_i)
+ : Lilypond_item (0)
+{
+ accidentals_i_ = accidentals_i;
+ minor_i_ = minor_i;
+}
+
+char const *accname[] = {"eses", "es", "", "is" , "isis"};
+
+String
+Lilypond_key::str ()
+{
+ int key_i = accidentals_i_ >= 0
+ ? ((accidentals_i_ % 7) ["cgdaebf"] - 'a' - 2 -2 * minor_i_ + 7) % 7
+ : ((-accidentals_i_ % 7) ["cfbeadg"] - 'a' - 2 -2 * minor_i_ + 7) % 7;
+
+ String notename_str = !minor_i_
+ ? to_str ((char) ((key_i + 2) % 7 + 'a'))
+ : to_str ((char) ((key_i + 2) % 7 + 'a'));
+
+ // fis cis gis dis ais eis bis
+ static int sharps_i_a [7] = { 2, 4, 6, 1, 3, 5, 7 };
+ // bes es as des ges ces fes
+ static int flats_i_a [7] = { 6, 4, 2, 7, 5, 3, 1 };
+ int accidentals_i = accidentals_i_ >= 0
+ ? sharps_i_a [key_i] <= accidentals_i_ ? 1 : 0
+ : flats_i_a [key_i] <= -accidentals_i_ ? -1 : 0;
+
+ if (accidentals_i)
+ notename_str += String (accname [accidentals_i + 2]);
+
+ return "\\key " + notename_str + (minor_i_ ? "\\minor" : "\\major") + ";\n";
+}
+
+String
+Lilypond_key::notename_str (int pitch_i)
+{
+ // this may seem very smart,
+ // but it-s only an excuse not to read a notename table
+
+ // major scale: do-do
+ // minor scale: la-la (= + 5)
+ static int notename_i_a [12] = { 0, 0, 1, 1, 2, 3, 3, 4, 4, 5, 5, 6 };
+ int notename_i = notename_i_a [pitch_i % 12];
+
+ static int accidentals_i_a [12] = { 0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 1, 0 };
+ int accidental_i = accidentals_i_a [(minor_i_ * 5 + pitch_i) % 12];
+ if (accidental_i && (accidentals_i_ < 0))
+ {
+ accidental_i *= -1;
+ notename_i = (notename_i + 1) % 7;
+ }
+
+ String notename_str = to_str ((char)(((notename_i + 2) % 7) + 'a'));
+ if (accidental_i)
+ notename_str += String (accname [accidental_i + 2]);
+
+ /*
+ 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 <bf250@freenet.carleton.ca>
+
+ Let's also do a-minor: a b c d e f gis a
+
+ --jcn
+
+ */
+
+ /* ok, bit ugly, but here we go -- jcn */
+
+
+ if (minor_i_)
+ {
+ if ((accidentals_i_ == 0) && (notename_str == "as"))
+ notename_str = "gis";
+ else if ((accidentals_i_ == -1) && (notename_str == "des"))
+ notename_str = "cis";
+ else if ((accidentals_i_ == -2) && (notename_str == "ges"))
+ notename_str = "fis";
+ else if ((accidentals_i_ == 5) && (notename_str == "g"))
+ notename_str = "fisis";
+ else if ((accidentals_i_ == 6) && (notename_str == "d"))
+ notename_str = "cisis";
+ else if ((accidentals_i_ == 7) && (notename_str == "a"))
+ notename_str = "gisis";
+
+ if ((accidentals_i_ <= -6) && (notename_str == "b"))
+ notename_str = "ces";
+ if ((accidentals_i_ <= -7) && (notename_str == "e"))
+ notename_str = "fes";
+ }
+
+ String de_octavate_str = to_str (',', (Lilypond_note::c0_pitch_i_c_ + 11 - pitch_i) / 12);
+ String octavate_str = to_str ('\'', (pitch_i - Lilypond_note::c0_pitch_i_c_) / 12);
+ return notename_str +de_octavate_str + octavate_str;
+}
+
+Lilypond_time_signature::Lilypond_time_signature (int num_i, int den_i, int clocks_4_i, int count_32_i)
+ : Lilypond_item (0)
+{
+ sync_dur_.durlog_i_ = 3;
+ sync_f_ = 1.0;
+ if (count_32_i != 8)
+ warning (_f ("#32 in quarter: %d", count_32_i));
+ num_i_ = num_i;
+ den_i_ = den_i;
+ clocks_1_i_ = clocks_4_i * 4;
+}
+
+Rational
+Lilypond_time_signature::bar_mom ()
+{
+ Duration d;
+ d.durlog_i_ = den_i_;
+ return Rational (num_i_) * Duration_convert::dur2_mom (d);
+}
+
+int
+Lilypond_time_signature::clocks_1_i ()
+{
+ return clocks_1_i_;
+}
+
+int
+Lilypond_time_signature::den_i ()
+{
+ return den_i_;
+}
+
+int
+Lilypond_time_signature::num_i ()
+{
+ return num_i_;
+}
+
+String
+Lilypond_time_signature::str ()
+{
+ String str = "\\time "
+ + to_str (num_i_) + "/" + to_str (1 << den_i_)
+ + ";\n";
+ return str;
+}
+
+
+// statics Lilypond_note
+/*
+ this switch can be used to write simple plets like
+ c4*2/3
+ as
+ \plet 2/3; c4 \plet 1/1;
+ */
+/*
+ UGH: .hh says false, .cc says true.
+ FIXME.
+ */
+bool const Lilypond_note::simple_plet_b_s;
+
+Lilypond_note::Lilypond_note (Lilypond_column* lilypond_column_l,
+ int channel_i, int pitch_i, int dyn_i)
+ : Lilypond_item (lilypond_column_l)
+{
+ // junk dynamics
+ (void)dyn_i;
+ channel_i_ = channel_i;
+ pitch_i_ = pitch_i;
+ end_column_l_ = 0;
+}
+
+Duration
+Lilypond_note::duration ()
+{
+ assert (end_column_l_);
+ Rational mom = end_column_l_->at_mom () - at_mom ();
+ return Duration_convert::mom2_dur (mom);
+}
+
+Rational
+Lilypond_note::duration_mom ()
+{
+ assert (end_column_l_);
+ return end_column_l_->at_mom () - at_mom ();
+}
+
+String
+Lilypond_note::str ()
+{
+ Duration dur = duration ();
+ if (dur.durlog_i_ < -10)
+ return "";
+
+ String name_str
+ = lilypond_column_l_->lilypond_score_l_->lilypond_key_l_->notename_str (pitch_i_);
+
+ if (simple_plet_b_s)
+ return name_str + Duration_convert::dur2_str (dur) + " ";
+
+ String str;
+
+ //ugh
+ if (dur.plet_b ())
+ str += String ("\\times ")
+ + String_convert::i2dec_str (dur.plet_.iso_i_, 0, 0)
+ + "/"
+ + String_convert::i2dec_str (dur.plet_.type_i_, 0, 0)
+ + " { ";
+
+
+ str += name_str;
+
+ Duration tmp = dur;
+ tmp.set_plet (1,1);
+ str += Duration_convert::dur2_str (tmp);
+
+ if (dur.plet_b ())
+ str += String (" }");
+
+ /*
+ note of zero duration is nonsense,
+ but let's output anyway for convenient debugging
+ */
+ if (!duration_mom ())
+ return String ("\n% ") + str + "\n";
+
+ return str + " ";
+}
+
+Lilypond_skip::Lilypond_skip (Lilypond_column* lilypond_column_l, Rational skip_mom)
+ : Lilypond_item (lilypond_column_l)
+{
+ mom_ = skip_mom;
+}
+
+Duration
+Lilypond_skip::duration ()
+{
+ return Duration_convert::mom2_dur (mom_);
+}
+
+Rational
+Lilypond_skip::duration_mom ()
+{
+ return Duration_convert::dur2_mom (duration ());
+}
+
+String
+Lilypond_skip::str ()
+{
+ if (!mom_)
+ return String ("");
+
+ Duration dur = duration ();
+ if (dur.durlog_i_<-10)
+ return "";
+
+ String str = "\\skip ";
+ str += Duration_convert::dur2_str (dur) + "; ";
+
+ return str;
+}
+
+Lilypond_tempo::Lilypond_tempo (int useconds_per_4_i)
+ : Lilypond_item (0)
+{
+ useconds_per_4_i_ = useconds_per_4_i;
+ seconds_per_1_mom_ = Rational(useconds_per_4_i_ *4, 1e6);
+}
+
+String
+Lilypond_tempo::str ()
+{
+ String str = "\\tempo 4=";
+ str += to_str (get_tempo_i (Rational (1, 4)));
+ str += ";\n";
+ return str;
+}
+
+int
+Lilypond_tempo::useconds_per_4_i ()
+{
+ return useconds_per_4_i_;
+}
+
+int
+Lilypond_tempo::get_tempo_i (Rational rational)
+{
+ Rational m1 = Rational (60) / rational;
+ Rational m2 = seconds_per_1_mom_;
+ return m1 / m2;
+}
+
+Lilypond_text::Lilypond_text (Lilypond_text::Type type, String text_str)
+ : Lilypond_item (0)
+{
+ type_ = type;
+ text_str_ = text_str;
+}
+
+String
+Lilypond_text::str ()
+{
+ if (!text_str_.length_i ()
+ || (text_str_.length_i () != (int)strlen (text_str_.ch_C ())))
+ return "";
+
+ return "% " + text_str_ + "\n";
+}
--- /dev/null
+//
+// lilypond-score.cc -- implement Lilypond_score
+//
+// copyright 1997 Jan Nieuwenhuizen <janneke@gnu.org>
+
+#include <assert.h>
+#include "rational.hh"
+#include "duration.hh"
+#include "duration-convert.hh"
+#include "midi2ly-global.hh"
+#include "lilypond-column.hh"
+#include "lilypond-item.hh"
+#include "lilypond-score.hh"
+#include "lilypond-staff.hh"
+#include "lilypond-stream.hh"
+
+#include "killing-cons.tcc"
+
+//static Lilypond_key key_c (0, 0);
+static Lilypond_time_signature time_sig_4 (4, 2, 24, 8);
+// useconds per 4: 250000 === 60 4 per minute
+static Lilypond_tempo tempo_60 (1000000);
+
+Lilypond_score::Lilypond_score (int format_i, int tracks_i, int tempo_i)
+{
+ last_staff_l_ =0;
+ format_i_ = format_i;
+ tracks_i_ = tracks_i;
+ tempo_i_ = tempo_i;
+ column_l_array_.push (new Lilypond_column (this, Rational (0)));
+ // lilypond_key_l_ = &key_c;
+ lilypond_key_l_ = 0;
+ lilypond_time_signature_l_ = &time_sig_4;
+ lilypond_tempo_l_ = &tempo_60;
+}
+
+Lilypond_score::~Lilypond_score ()
+{
+}
+
+void
+Lilypond_score::add_item (Lilypond_item* lilypond_item_p)
+{
+ last_staff_l_->add_item (lilypond_item_p);
+}
+
+void
+Lilypond_score::add_staff (Lilypond_staff* lilypond_staff_p)
+{
+ lilypond_staff_p_list_.append (new Killing_cons<Lilypond_staff> (lilypond_staff_p, 0));
+ last_staff_l_ = lilypond_staff_p;
+}
+
+Lilypond_column*
+Lilypond_score::find_column_l (Rational mom)
+{
+ int upper_i = max (0, column_l_array_.size () - 1);
+ int lower_i = 0;
+ int i = 0; //upper_i;
+ while (1)
+ {
+ Rational i_mom = column_l_array_ [i]->at_mom ();
+ if (i_mom == mom)
+ return column_l_array_ [i];
+ if (mom < i_mom)
+ upper_i = i;
+ else
+ lower_i = i;
+ if ( (upper_i == lower_i) || (i == column_l_array_.size () - 1))
+ {
+ // we don't do inserts
+ assert (0);
+ Lilypond_column* col_p = new Lilypond_column (this, mom);
+ column_l_array_.push (col_p);
+ return col_p;
+ }
+ i = (upper_i + lower_i + 1 ) / 2;
+ }
+ assert (0);
+ return 0;
+}
+
+Lilypond_column*
+Lilypond_score::get_column_l (Rational mom)
+{
+ int i;
+ Lilypond_column *c=0;
+ for (i=column_l_array_.size () - 1; !c && i >=0; i--)
+ {
+ if (column_l_array_ [i]->at_mom () == mom )
+ c = column_l_array_[i];
+ else if (column_l_array_[i]->at_mom () < mom)
+ break;
+ }
+ if (!c)
+ {
+ c = new Lilypond_column (this, mom);
+ column_l_array_.insert (c, i+1);
+ }
+
+ assert (c->at_mom () == mom);
+ return c;
+}
+
+void
+Lilypond_score::output (String filename_str)
+{
+ LOGOUT (NORMAL_ver) << _f ("Lily output to %s...", filename_str) << endl;
+
+ // ugh, ugly midi type 1 fix
+ if ( (lilypond_staff_p_list_.size_i () == 1)
+ && !lilypond_staff_p_list_.head_->car_->number_i_)
+ lilypond_staff_p_list_.head_->car_->number_i_ = 1;
+
+ int track_i = 0;
+ Lilypond_stream lilypond_stream (filename_str);
+ for (Cons<Lilypond_staff>* i = lilypond_staff_p_list_.head_; i; i = i->next_)
+ {
+ LOGOUT (NORMAL_ver) << _f ("track %d:", track_i++) << flush;
+ i->car_->output (lilypond_stream);
+ lilypond_stream << '\n';
+ LOGOUT (NORMAL_ver) << endl;
+ }
+
+ lilypond_stream << "\\score{\n";
+ if (lilypond_staff_p_list_.size_i () > 1)
+ lilypond_stream << "< \n";
+ for (Cons<Lilypond_staff>* i = lilypond_staff_p_list_.head_; i; i = i->next_)
+ {
+ if ( (lilypond_staff_p_list_.size_i () != 1)
+ && (i->car_ == lilypond_staff_p_list_.head_->car_))
+ continue;
+ lilypond_stream << "\\context Staff = \"" << i->car_->id_str () << "\" ";
+ lilypond_stream << String ("\\" + i->car_->id_str ()) << '\n';
+ }
+ if (lilypond_staff_p_list_.size_i () > 1)
+ lilypond_stream << ">\n";
+
+ lilypond_stream << "\\paper{}\n";
+
+#if 1
+ lilypond_stream << "\\midi{\n";
+
+ // let's not use silly 0 track
+ last_cons (lilypond_staff_p_list_.head_)->car_->lilypond_tempo_l_->output (lilypond_stream);
+ lilypond_stream << "}\n";
+#endif
+
+ lilypond_stream << "}\n";
+}
+
+void
+Lilypond_score::process ()
+{
+ LOGOUT (NORMAL_ver) << '\n' << _ ("Processing...") << endl;
+
+ LOGOUT (DEBUG_ver) << "columns\n";
+
+ settle_columns ();
+ filter_tempo ();
+ quantify_columns ();
+ quantify_durations ();
+
+ LOGOUT (NORMAL_ver) << '\n' << _ ("Creating voices...") << endl;
+ int track_i = 0;
+ for (Cons<Lilypond_staff>* i = lilypond_staff_p_list_.head_; i; i = i->next_)
+ {
+ LOGOUT (NORMAL_ver) << _ ("track ") << track_i++ << ": " << flush;
+ i->car_->process ();
+ LOGOUT (NORMAL_ver) << endl;
+ }
+}
+
+void
+Lilypond_score::filter_tempo ()
+{
+ LOGOUT (NORMAL_ver) << '\n' << _ ("NOT Filtering tempo...") << endl;
+}
+
+void
+Lilypond_score::quantify_columns ()
+{
+ // ugh
+ if (Duration_convert::no_quantify_b_s)
+ {
+ LOGOUT (NORMAL_ver) << '\n' << _ ("NOT Quantifying columns...") << endl;
+ return;
+ }
+
+ LOGOUT (NORMAL_ver) << '\n' << _ ("Quantifying columns...") << endl;
+
+ int current_bar_i = 0;
+ Rational bar_mom = lilypond_time_signature_l_->bar_mom ();
+
+ int n = 5 >? Duration_convert::no_smaller_than_i_s;
+ n = Duration_convert::type2_i (n);
+ Rational s = Rational (1, n);
+ for (int i = 0; i < column_l_array_.size (); i++)
+ {
+ column_l_array_ [i]->at_mom_ =
+ s * Rational ( (int) ( (column_l_array_ [i]->at_mom ()) / s));
+
+ int bar_i = (int) (column_l_array_ [i]->at_mom () / bar_mom) + 1;
+ if (bar_i > current_bar_i)
+
+ {
+ LOGOUT (NORMAL_ver) << "[" << bar_i << "]" << flush;
+ current_bar_i = bar_i;
+ }
+ }
+ LOGOUT (NORMAL_ver) << endl;
+}
+
+void
+Lilypond_score::quantify_durations ()
+{
+
+}
+
+void
+Lilypond_score::settle_columns ()
+{
+ LOGOUT (NORMAL_ver) << '\n' << _ ("Settling columns...") << endl;
+
+ int n = column_l_array_.size ();
+
+ int start_i = 0;
+ int end_i = 0;
+ Rational start_mom = 0;
+
+ Duration smallest_dur;
+ smallest_dur.durlog_i_ = 6;
+ Rational const noise_mom = Duration_convert::dur2_mom (smallest_dur)
+ / Rational (2);
+ for (int i = 0; i < n; i++)
+ {
+ if (!start_i)
+ {
+ start_i = end_i = i;
+ start_mom = column_l_array_ [i]->at_mom ();
+ continue;
+ }
+
+ // find all columns within noise's distance
+ while ( (i < n)
+ && (column_l_array_ [i]->at_mom () - start_mom < noise_mom))
+ end_i = ++i;
+
+ // bluntly set all to time of first in group
+ for (int j = start_i; j < end_i; j++)
+ column_l_array_ [j]->at_mom_ = start_mom;
+
+ start_i = end_i = 0;
+ }
+}
+
--- /dev/null
+//
+// lilypond-staff.cc -- implement Lilypond_staff
+//
+// copyright 1997 Jan Nieuwenhuizen <janneke@gnu.org>
+
+#include <assert.h>
+#include <ctype.h>
+#include "rational.hh"
+#include "duration-convert.hh"
+#include "string-convert.hh"
+#include "midi2ly-proto.hh"
+#include "midi2ly-global.hh"
+#include "lilypond-column.hh"
+#include "lilypond-item.hh"
+#include "lilypond-staff.hh"
+#include "lilypond-stream.hh"
+#include "lilypond-voice.hh"
+#include "lilypond-score.hh"
+
+#include "killing-cons.tcc"
+
+extern Lilypond_score* lilypond_score_l_g;
+
+Lilypond_staff::Lilypond_staff (int number_i, String copyright_str, String track_name_str, String instrument_str)
+{
+ number_i_ = number_i;
+ copyright_str_ = copyright_str;
+ instrument_str_ = instrument_str;
+ name_str_ = track_name_str;
+ lilypond_key_l_ = 0;
+ lilypond_time_signature_l_ = 0;
+ lilypond_tempo_l_ = 0;
+}
+
+void
+Lilypond_staff::add_item (Lilypond_item* lilypond_item_p)
+{
+ lilypond_item_p_list_.append (new Killing_cons <Lilypond_item> (lilypond_item_p, 0));
+ if (lilypond_item_p->lilypond_column_l_)
+ lilypond_item_p->lilypond_column_l_->add_item (lilypond_item_p);
+}
+/**
+ Walk ITEMS and find voices. Remove categorised items.
+
+ TODO:
+
+ * collect all channels into separate voices. Use chords for sim
+ notes on same channel.
+ * assume voices/assume chords modes.
+
+ */
+void
+Lilypond_staff::eat_voice (Cons_list<Lilypond_item>& items)
+{
+ Lilypond_voice* voice_p = new Lilypond_voice (this);
+ lilypond_voice_p_list_.append (new Killing_cons<Lilypond_voice> (voice_p, 0));
+
+ // Rational mom = items.top ()->at_mom ();
+ Rational mom = 0;
+
+ for (Cons<Lilypond_item>** pp = &items.head_; *pp;)
+ {
+ Cons<Lilypond_item>* i = *pp;
+ if (i->car_->at_mom () > mom)
+ {
+ if (no_rests_b_g && voice_p->last_note_l_)
+ {
+ voice_p->last_note_l_->end_column_l_ = i->car_->lilypond_column_l_;
+ }
+ else
+ {
+ /* uh, what about quantisation? This should probably
+ use mom2standardised_dur ()
+ arg, urg: skip should get duration from start/end columns!
+ */
+
+ Rational r = i->car_->at_mom () - mom;
+ // ugh, need score
+ Lilypond_column* start = lilypond_score_l_g->find_column_l (mom);
+ voice_p->add_item (new Lilypond_skip (start, r));
+ }
+
+ mom = i->car_->at_mom ();
+ continue; // unnecessary
+ }
+
+ Link_array<Lilypond_item> now_items;
+ for (Cons<Lilypond_item> *cp = i; cp && cp->car_->at_mom () == mom; cp = cp->next_)
+ now_items.push (i->car_);
+
+#if 0
+ /*
+ Why don't we use <note>, if voice has:
+
+ <note> <key-change>
+
+ we'd get last_item == key_change -> last_note == 0;
+ */
+ Lilypond_note * last_note = dynamic_cast<Lilypond_note*> (voice_p->last_item_l_);
+#else
+ /*
+ Not sure, is this better?
+ */
+ Lilypond_note * last_note = voice_p->last_note_l_;
+#endif
+
+ Link_array<Lilypond_item> candidates;
+
+ for (int i=0; last_note && i < now_items.size (); i++)
+ {
+ Lilypond_note * now_note = dynamic_cast<Lilypond_note*> (now_items[i]);
+ if (now_note && last_note->channel_i_ != now_note->channel_i_)
+ candidates.push (now_note);
+ }
+
+ if (candidates.size())
+ {
+ now_items = candidates;
+ }
+
+ Lilypond_item * which = 0;
+ if (now_items.size () > 1)
+ {
+ int mindiff = 100000; // ugh
+ for (int i=0; last_note && i < now_items.size (); i++)
+ {
+ Lilypond_note *nt = dynamic_cast<Lilypond_note*> (now_items[i]);
+ if (!nt)
+ continue;
+ int diff = abs (last_note->pitch_i_ - nt->pitch_i_ );
+ if(diff < mindiff)
+ {
+ mindiff = diff;
+ which = now_items [i];
+ }
+ }
+
+ if (which && mindiff > 18) // more than 1.5 octaves apart. Don't put in same voice.
+ {
+ which =0;
+ }
+ }
+ else if (now_items.size () == 1)
+ which = now_items[0];
+
+ if (which)
+ {
+ while ((*pp)->car_ != which)
+ pp = &(*pp)->next_;
+
+ mom += (*pp)->car_->duration_mom ();
+ Cons<Lilypond_item>* c = items.remove_cons (pp);
+ voice_p->add_item (c->car_);
+ delete c;
+ }
+ else
+ {
+ pp = &(*pp)->next_;
+ continue;
+ }
+ }
+}
+
+String
+Lilypond_staff::id_str ()
+{
+ String id (name_str ());
+ char *cp = id.ch_l ();
+ char *end = cp + id.length_i ();
+ for (;cp < end; cp++)
+ {
+ if (!isalpha (*cp))
+ {
+ *cp = 'X';
+ }
+ }
+ return id;
+}
+
+String
+Lilypond_staff::name_str ()
+{
+ if (name_str_.length_i ())
+ return name_str_;
+ return String ("track") + to_str (char ('A' - 1 + number_i_));
+}
+
+
+
+void
+Lilypond_staff::output (Lilypond_stream& lilypond_stream_r)
+{
+ int c =0;
+
+ String trackbody = "";
+ for (Cons<Lilypond_voice>* i = lilypond_voice_p_list_.head_; i; i = i->next_)
+ {
+ String voicename = id_str () + "voice" + to_str (char (c + 'A'));
+
+ lilypond_stream_r << voicename << " = \\notes ";
+
+ trackbody += "\\" + voicename + "\n";
+
+ lilypond_stream_r << '\n';
+ i->car_->output (lilypond_stream_r);
+ c++;
+ }
+
+ lilypond_stream_r << _ ("% MIDI copyright:") << copyright_str_ << '\n';
+ lilypond_stream_r << _ ("% MIDI instrument:") << instrument_str_ << '\n';
+ lilypond_stream_r << id_str () << " = ";
+ lilypond_stream_r << "<\n " << trackbody << " >\n";
+
+ lilypond_stream_r << " % " << name_str () << '\n';
+}
+
+void
+Lilypond_staff::output_lilypond_begin_bar (Lilypond_stream& lilypond_stream_r, Rational now_mom, int bar_i)
+{
+ Rational bar_mom = lilypond_time_signature_l_->bar_mom ();
+ Rational into_bar_mom = now_mom - Rational (bar_i - 1) * bar_mom;
+ if (bar_i > 1)
+ {
+ if (!into_bar_mom)
+ lilypond_stream_r << "|\n";
+ }
+ lilypond_stream_r << "% " << String_convert::i2dec_str (bar_i, 0, ' ');
+ if (into_bar_mom)
+ lilypond_stream_r << ":" << Duration_convert::dur2_str (Duration_convert::mom2_dur (into_bar_mom));
+ lilypond_stream_r << '\n';
+}
+
+
+#if 0 // not used for now
+void
+Lilypond_staff::output_lilypond_rest (Lilypond_stream& lilypond_stream_r, Rational begin_mom, Rational end_mom)
+{
+ Rational bar_mom = lilypond_time_signature_l_->bar_mom ();
+ Rational now_mom = begin_mom;
+
+ int begin_bar_i = (int) (now_mom / bar_mom) + 1;
+ int end_bar_i = (int) (end_mom / bar_mom) + 1;
+
+ if (end_bar_i == begin_bar_i)
+ {
+ output_lilypond_rest_remain (lilypond_stream_r, end_mom - begin_mom);
+ return;
+ }
+
+ // multiple bars involved
+ int bar_i = (int) (now_mom / bar_mom) + 1;
+
+ //fill current bar
+ Rational begin_bar_mom = Rational (begin_bar_i - 1) * bar_mom;
+ if (now_mom > begin_bar_mom)
+ {
+ int next_bar_i = (int) (now_mom / bar_mom) + 2;
+ Rational next_bar_mom = Rational (next_bar_i - 1) * bar_mom;
+ assert (next_bar_mom <= end_mom);
+
+ Rational remain_mom = next_bar_mom - now_mom;
+ if (remain_mom > Rational (0))
+ {
+ output_lilypond_rest_remain (lilypond_stream_r, remain_mom);
+ now_mom += remain_mom;
+ }
+
+ bar_i = check_end_bar_i (now_mom, bar_i);
+ }
+
+ // fill whole bars
+ int count_i = end_bar_i - bar_i;
+ for (int i = 0; i < count_i; i++)
+ {
+ int begin_bar_i = check_begin_bar_i (now_mom, bar_i);
+ if (begin_bar_i)
+ output_lilypond_begin_bar (lilypond_stream_r, now_mom, begin_bar_i);
+ lilypond_stream_r << "r1 ";
+ // *lilypond_stream_r.os_p_ << flush;
+ if (begin_bar_i)
+ LOGOUT (NORMAL_ver) << begin_bar_i << flush;
+ bar_i = check_end_bar_i (now_mom, bar_i);
+ now_mom += bar_mom;
+ }
+
+ // use "int i" here, and gcc 2.7.2 hits internal compiler error
+ int ii = check_begin_bar_i (now_mom, bar_i);
+ if (ii)
+ output_lilypond_begin_bar (lilypond_stream_r, now_mom, ii);
+
+ // bar_i = check_end_bar_i (now_mom, bar_i);
+
+ Rational remain_mom = end_mom - Rational (end_bar_i - 1) * bar_mom;
+ if (remain_mom > Rational (0))
+ {
+ output_lilypond_rest_remain (lilypond_stream_r, remain_mom);
+ now_mom += remain_mom;
+ }
+ assert (now_mom == end_mom);
+}
+
+void
+Lilypond_staff::output_lilypond_rest_remain (Lilypond_stream& lilypond_stream_r, Rational mom)
+{
+ if (Duration_convert::no_quantify_b_s)
+ {
+ Duration dur = Duration_convert::mom2_dur (mom);
+ lilypond_stream_r << "r" << dur.str () << " ";
+ // assert (mom == dur.mom ());
+ assert (mom == dur.length ());
+ return;
+ }
+
+ Duration dur = Duration_convert::mom2standardised_dur (mom);
+ if (dur.type_i_>-10)
+ lilypond_stream_r << "r" << dur.str () << " ";
+}
+#endif
+
+
+void
+Lilypond_staff::process ()
+{
+ /*
+ group items into voices
+ */
+
+ assert (lilypond_score_l_g);
+ lilypond_key_l_ = lilypond_score_l_g->lilypond_key_l_;
+ lilypond_time_signature_l_ = lilypond_score_l_g->lilypond_time_signature_l_;
+ lilypond_tempo_l_ = lilypond_score_l_g->lilypond_tempo_l_;
+
+ Cons_list<Lilypond_item> items;
+ for (Cons<Lilypond_item>* i = lilypond_item_p_list_.head_; i; i = i->next_)
+ items.append (new Cons<Lilypond_item> (i->car_, 0));
+
+ while (items.size_i ())
+ eat_voice (items);
+}
--- /dev/null
+//
+// lilypond-stream.cc
+//
+// source file of the LilyPond music typesetter
+//
+// (c) 1997--1998, 1998 Jan Nieuwenhuizen <janneke@gnu.org>
+
+#include <assert.h>
+#include <time.h>
+#include <fstream.h>
+#include "midi2ly-global.hh"
+#include "lilypond-item.hh"
+#include "lilypond-stream.hh"
+#include "string-convert.hh"
+
+extern String filename_str_g;
+
+static int const INDENT_i = 8;
+
+Lilypond_stream::Lilypond_stream (String filename_str)
+{
+ filename_str_ = filename_str;
+ pending_indent_i_ = 0;
+ os_p_ = 0;
+ indent_i_ = 0;
+ comment_mode_b_ = false;
+ column_i_ = 0;
+ wrap_column_i_ = 68;
+ open();
+ header();
+}
+
+Lilypond_stream::~Lilypond_stream ()
+{
+ delete os_p_;
+ if (indent_i_)
+ warning (_f ("lily indent level: %d", indent_i_));
+}
+
+Lilypond_stream&
+Lilypond_stream::operator << (char c)
+{
+ *this << to_str (c);
+ return *this;
+}
+
+Lilypond_stream&
+Lilypond_stream::operator << (String s)
+{
+ static String word_sep_str = "{} \t\n";
+ while (s.length_i())
+ {
+ int i = s.index_any_i (word_sep_str) + 1;
+ if (!i)
+ i = s.length_i();
+ String word = s.left_str (i);
+ s = s.cut_str (i, s.length_i());
+ output_wrapped (word);
+ }
+ return *this;
+}
+
+Lilypond_stream&
+Lilypond_stream::operator << (Lilypond_item& lilypond_item_r)
+{
+ lilypond_item_r.output (*this);
+ *os_p_ << flush;
+ return *this;
+}
+
+void
+Lilypond_stream::handle_pending_indent()
+{
+ *os_p_ << String_convert::char_str ('\t', pending_indent_i_);
+ column_i_ += pending_indent_i_ * INDENT_i;
+ pending_indent_i_ = 0;
+}
+
+void
+Lilypond_stream::header()
+{
+ /* Maybe better not to translate these? */
+ *os_p_ << _ ("% Creator: ");
+ if (no_timestamps_b_g)
+ *os_p_ << "GNU LilyPond\n";
+ else
+ *os_p_ << midi2ly_version_str() << '\n';
+ *os_p_ << _ ("% Automatically generated");
+ if (no_timestamps_b_g)
+ *os_p_ << ".\n";
+ else
+ {
+ *os_p_ << _ (", at ");
+ time_t t (time (0));
+ *os_p_ << ctime (&t) << "%\n";
+ }
+ *os_p_ << _ ("% from input file: ");
+ // *os_p_ << midi_parser_l_g->filename_str_;
+ // ugh
+ *os_p_ << filename_str_g;
+ *os_p_ << "\n\n";
+ // ugh
+ *os_p_ << "\\version \"1.3.76\";\n";
+}
+
+void
+Lilypond_stream::open()
+{
+ os_p_ = new ofstream (filename_str_.ch_C ());
+ if (!*os_p_)
+ error (_f ("can't open file: `%s'", filename_str_));
+}
+
+void
+Lilypond_stream::output (String str)
+{
+ for (int i = 0; i < str.length_i(); i++)
+ {
+ char c = str[ i ];
+ switch (c)
+ {
+ case '{' :
+ case '<' :
+ handle_pending_indent();
+ if (column_i_ == indent_i_ * INDENT_i)
+ output ("\t");
+ indent_i_++;
+ *os_p_ << c;
+ column_i_++;
+ break;
+ case '}' :
+ case '>' :
+ assert (indent_i_);
+ indent_i_--;
+ if (pending_indent_i_)
+ pending_indent_i_--;
+ handle_pending_indent();
+ *os_p_ << c;
+ column_i_++;
+ break;
+ case '%' :
+ handle_pending_indent();
+ comment_mode_b_ = true;
+ *os_p_ << c;
+ column_i_++;
+ break;
+ case '\t' :
+ handle_pending_indent();
+ *os_p_ << c;
+ column_i_ += INDENT_i;
+ break;
+ case '\n' :
+ *os_p_ << endl;
+ pending_indent_i_ = indent_i_;
+ column_i_ = 0;
+ comment_mode_b_ = false;
+ break;
+ default :
+ handle_pending_indent();
+ *os_p_ << c;
+ column_i_++;
+ break;
+ }
+ }
+}
+
+void
+Lilypond_stream::output_wrapped (String str)
+{
+ // enough room left -> doit
+ if (column_i_ + str.length_i() <= wrap_column_i_)
+ {
+ output (str);
+ return;
+ }
+
+ // we're at BOL already; this will never fit -> doit
+ if (column_i_ == indent_i_ * INDENT_i)
+ {
+ output (str);
+ return;
+ }
+
+ // ok, let's wrap
+ // preserve comment mode
+ if (comment_mode_b_)
+ output (String ("\n%"));
+ else
+ output (String ("\n"));
+
+ output (str);
+}
--- /dev/null
+//
+// lilypond-voice.cc -- implement Lilypond_voice
+//
+// copyright 1997 Jan Nieuwenhuizen <janneke@gnu.org>
+
+#include "string-convert.hh"
+#include "midi2ly-global.hh"
+#include "lilypond-column.hh"
+#include "lilypond-item.hh"
+#include "lilypond-staff.hh"
+#include "lilypond-stream.hh"
+#include "lilypond-voice.hh"
+#include "lilypond-score.hh"
+
+extern Lilypond_score* lilypond_score_l_g;
+
+Lilypond_voice::Lilypond_voice (Lilypond_staff* lilypond_staff_l)
+{
+ lilypond_staff_l_ = lilypond_staff_l;
+ last_item_l_ =0;
+ last_note_l_ =0;
+}
+
+void
+Lilypond_voice::add_item (Lilypond_item* lilypond_item_l)
+{
+ last_item_l_ = lilypond_item_l;
+ if (Lilypond_note* n = dynamic_cast<Lilypond_note*> (lilypond_item_l))
+ {
+ last_note_l_ = n;
+ }
+ lilypond_item_l_list_.append (new Cons<Lilypond_item> (lilypond_item_l, 0));
+}
+
+/**
+ analyse pitches to determine clef.
+ */
+String
+Lilypond_voice::get_clef () const
+{
+ Lilypond_note * n =0;
+
+ for (Cons<Lilypond_item> *cp = lilypond_item_l_list_.head_; !n && cp; cp = cp->next_)
+ {
+ n = dynamic_cast<Lilypond_note*> (cp->car_);
+ }
+
+ if (!n)
+ return "";
+
+ int p = n->pitch_i_;
+
+ if (p < 56)
+ return "\\clef \"bass\";\n";
+ else if (p > 67)
+ return "\\clef \"treble\";\n";
+ else
+ return "";
+}
+
+static int const FAIRLY_LONG_VOICE_i = 6;
+
+void
+Lilypond_voice::output (Lilypond_stream& lilypond_stream_r)
+{
+ lilypond_stream_r << "{ ";
+ if (lilypond_item_l_list_.size_i () > FAIRLY_LONG_VOICE_i)
+ lilypond_stream_r << '\n';
+
+
+ lilypond_stream_r << get_clef () << '\n';
+
+ int current_bar_i = 0;
+ Rational bar_mom = lilypond_staff_l_->lilypond_time_signature_l_->bar_mom ();
+
+ for (Cons<Lilypond_item>* i = lilypond_item_l_list_.head_; i; i = i->next_)
+ {
+ Rational at_mom = i->car_->lilypond_column_l_->at_mom ();
+ int bar_i = (int) (at_mom / bar_mom) + 1;
+ if (bar_i > current_bar_i)
+ {
+ if (current_bar_i)
+ {
+ if (at_mom == Rational (bar_i - 1) * bar_mom)
+ lilypond_stream_r << "|";
+ lilypond_stream_r << "\n% ";
+ lilypond_stream_r << String_convert::i2dec_str (bar_i, 0, ' ');
+ lilypond_stream_r << '\n';
+ }
+ LOGOUT (NORMAL_ver) << "[" << bar_i << "]" << flush;
+ current_bar_i = bar_i;
+ }
+
+ lilypond_stream_r << *i->car_;
+ if (Lilypond_key* k = dynamic_cast<Lilypond_key*> (i->car_))
+ lilypond_staff_l_->lilypond_key_l_ = lilypond_score_l_g->lilypond_key_l_ = k;
+ }
+
+ if (lilypond_item_l_list_.size_i () > FAIRLY_LONG_VOICE_i)
+ lilypond_stream_r << '\n';
+
+ lilypond_stream_r << "} ";
+}
+
+
#include "midi2ly-global.hh"
#include "midi-score-parser.hh"
-#include "mudela-item.hh"
-#include "mudela-score.hh"
+#include "lilypond-item.hh"
+#include "lilypond-score.hh"
#if HAVE_GETTEXT
#include <libintl.h>
String filename_str_g;
// ugh
-Mudela_score* mudela_score_l_g = 0;
+Lilypond_score* lilypond_score_l_g = 0;
bool no_timestamps_b_g = false;
bool no_rests_b_g = false;
{
cout << _f ("Usage: %s [OPTION]... [FILE]", "midi2ly");
cout << '\n';
- cout << _ ("Translate MIDI-file to mudela");
+ cout << _ ("Translate MIDI-file to lilypond");
cout << '\n';
cout << '\n';
cout << _ ("Options:");
#endif
bool key_override_b = false;
- Mudela_key key (0, 0);
+ Lilypond_key key (0, 0);
Getopt_long getopt_long (argc_i, argv_sz_a, long_option_init_a);
show_settings ();
filename_str_g = arg_sz;
Midi_score_parser midi_parser;
- Mudela_score* score_p = midi_parser.parse (arg_sz, &source);
+ Lilypond_score* score_p = midi_parser.parse (arg_sz, &source);
if (!score_p)
return 1;
// if given on command line: override
- if (key_override_b || !score_p->mudela_key_l_)
- score_p->mudela_key_l_ = &key;
- mudela_score_l_g = score_p;
+ if (key_override_b || !score_p->lilypond_key_l_)
+ score_p->lilypond_key_l_ = &key;
+ lilypond_score_l_g = score_p;
score_p->process();
if (!output_str.length_i ())
#include "midi2ly-global.hh"
#include "midi-score-parser.hh"
#include "midi-track-parser.hh"
-#include "mudela-item.hh"
-#include "mudela-score.hh"
+#include "lilypond-item.hh"
+#include "lilypond-score.hh"
void
info_l_->end_byte_L_ = info_l_->byte_L_ + info_l_->source_l_->length_i () + 1;
}
-Mudela_score*
+Lilypond_score*
Midi_score_parser::parse (String filename_str, Sources* sources_l)
{
Midi_parser_info info;
return earliest_i;
}
-Mudela_score*
+Lilypond_score*
Midi_score_parser::parse_score ()
{
int current_bar_i = 0;
- Mudela_time_signature m4 (4, 2, 24, 8);
+ Lilypond_time_signature m4 (4, 2, 24, 8);
Rational bar4_mom = m4.bar_mom ();
- Mudela_score* score_p = new Mudela_score( 1, 1, 1 );
+ Lilypond_score* score_p = new Lilypond_score( 1, 1, 1 );
info_l_->score_l_ = score_p;
Link_array<Midi_track_parser> tracks;
{
int i = find_earliest_i (tracks);
Rational at_mom = tracks [i]->at_mom ();
- Mudela_column* column_l = score_p->get_column_l (at_mom);
- Mudela_staff* staff_p = tracks [i]->parse (column_l);
+ Lilypond_column* column_l = score_p->get_column_l (at_mom);
+ Lilypond_staff* staff_p = tracks [i]->parse (column_l);
if ( staff_p )
{
score_p->add_staff (staff_p);
#include "string-convert.hh"
#include "midi2ly-global.hh"
#include "midi-track-parser.hh"
-#include "mudela-column.hh"
-#include "mudela-item.hh"
-#include "mudela-score.hh"
-#include "mudela-staff.hh"
+#include "lilypond-column.hh"
+#include "lilypond-item.hh"
+#include "lilypond-score.hh"
+#include "lilypond-staff.hh"
Midi_track_parser::Midi_track_parser (Midi_parser_info* info_l, int i)
{
info_l_ = info_l;
at_mom_ = 0;
track_info_p_ = 0;
- mudela_staff_p_ = new Mudela_staff (i, "", "", "");
+ lilypond_staff_p_ = new Lilypond_staff (i, "", "", "");
parse_header ();
parse_delta_time ();
}
Midi_track_parser::~Midi_track_parser ()
{
- delete mudela_staff_p_;
+ delete lilypond_staff_p_;
delete track_info_p_;
}
}
void
-Midi_track_parser::note_end (Mudela_column* col_l, int channel_i, int pitch_i, int aftertouch_i )
+Midi_track_parser::note_end (Lilypond_column* col_l, int channel_i, int pitch_i, int aftertouch_i )
{
// junk dynamics
(void)aftertouch_i;
assert (col_l);
- for (Cons<Mudela_note>** pp = &open_note_l_list_.head_; *pp;)
+ for (Cons<Lilypond_note>** pp = &open_note_l_list_.head_; *pp;)
{
- Cons<Mudela_note>* i = *pp;
+ Cons<Lilypond_note>* i = *pp;
if ((i->car_->pitch_i_ == pitch_i) && (i->car_->channel_i_ == channel_i))
{
i->car_->end_column_l_ = col_l;
}
void
-Midi_track_parser::note_end_all (Mudela_column* col_l)
+Midi_track_parser::note_end_all (Lilypond_column* col_l)
{
// find
assert (col_l);
- for (Cons<Mudela_note>* i = open_note_l_list_.head_; i; i = i->next_)
+ for (Cons<Lilypond_note>* i = open_note_l_list_.head_; i; i = i->next_)
{
i->car_->end_column_l_ = col_l;
}
open_note_l_list_.init ();
}
-Mudela_staff*
-Midi_track_parser::parse (Mudela_column* col_l)
+Lilypond_staff*
+Midi_track_parser::parse (Lilypond_column* col_l)
{
Rational mom = at_mom ();
while (!eot () && (mom == at_mom ()))
{
- Mudela_item* p = parse_event (col_l);
+ Lilypond_item* p = parse_event (col_l);
if (p)
- mudela_staff_p_->add_item (p);
+ lilypond_staff_p_->add_item (p);
}
if (!eot())
// catch-all
note_end_all (col_l);
- Mudela_staff* p = mudela_staff_p_;
- mudela_staff_p_ = 0;
+ Lilypond_staff* p = lilypond_staff_p_;
+ lilypond_staff_p_ = 0;
return p;
}
at_mom_ += Rational (delta_i, info_l_->division_1_i_);
}
-Mudela_item*
-Midi_track_parser::parse_event (Mudela_column* col_l)
+Lilypond_item*
+Midi_track_parser::parse_event (Lilypond_column* col_l)
{
Byte byte = peek_byte ();
// RUNNING_STATUS [\x00-\x5f]
else
byte = next_byte ();
- Mudela_item* item_p = 0;
+ Lilypond_item* item_p = 0;
// DATA_ENTRY [\x60-\x79]
if ((byte >= 0x60) && (byte <= 0x79))
{
*/
if (dyn_i)
{
- Mudela_note* p = new Mudela_note (col_l, channel_i, pitch_i, dyn_i);
+ Lilypond_note* p = new Lilypond_note (col_l, channel_i, pitch_i, dyn_i);
item_p = p;
- open_note_l_list_.append (new Cons<Mudela_note> (p, 0));
+ open_note_l_list_.append (new Cons<Lilypond_note> (p, 0));
}
else
{
int length_i = get_var_i ();
String str = get_str (length_i);
// LOGOUT (DEBUG_ver) << str << endl;
- Mudela_text::Type t = (Mudela_text::Type)byte;
- Mudela_text* p = new Mudela_text (t, str);
+ Lilypond_text::Type t = (Lilypond_text::Type)byte;
+ Lilypond_text* p = new Lilypond_text (t, str);
item_p = p;
- if (t == Mudela_text::COPYRIGHT)
- mudela_staff_p_->copyright_str_ = p->text_str_;
- else if (t == Mudela_text::TRACK_NAME)
- mudela_staff_p_->name_str_ = p->text_str_;
- else if (t == Mudela_text::INSTRUMENT_NAME)
- mudela_staff_p_->instrument_str_ = p->text_str_;
+ if (t == Lilypond_text::COPYRIGHT)
+ lilypond_staff_p_->copyright_str_ = p->text_str_;
+ else if (t == Lilypond_text::TRACK_NAME)
+ lilypond_staff_p_->name_str_ = p->text_str_;
+ else if (t == Lilypond_text::INSTRUMENT_NAME)
+ lilypond_staff_p_->instrument_str_ = p->text_str_;
}
// END_OF_TRACK [\x2f][\x00]
else
{
next_byte ();
unsigned useconds_per_4_u = get_u (3);
- // $$ = new Mudela_tempo ( ($2 << 16) + ($3 << 8) + $4);
+ // $$ = new Lilypond_tempo ( ($2 << 16) + ($3 << 8) + $4);
// LOGOUT (DEBUG_ver) << $$->str() << endl;
- Mudela_tempo* p = new Mudela_tempo ( useconds_per_4_u );
+ Lilypond_tempo* p = new Lilypond_tempo ( useconds_per_4_u );
item_p = p;
- info_l_->score_l_->mudela_tempo_l_ = p;
- mudela_staff_p_->mudela_tempo_l_ = p;
+ info_l_->score_l_->lilypond_tempo_l_ = p;
+ lilypond_staff_p_->lilypond_tempo_l_ = p;
}
// SMPTE_OFFSET [\x54][\x05]
else if ((byte == 0x54) && (next == 0x05))
int den_i = (int)next_byte ();
int clocks_4_i = (int)next_byte ();
int count_32_i = (int)next_byte ();
- Mudela_time_signature* p = new Mudela_time_signature ( num_i, den_i, clocks_4_i, count_32_i );
+ Lilypond_time_signature* p = new Lilypond_time_signature ( num_i, den_i, clocks_4_i, count_32_i );
item_p = p;
- info_l_->score_l_->mudela_time_signature_l_ = p;
+ info_l_->score_l_->lilypond_time_signature_l_ = p;
info_l_->bar_mom_ = p->bar_mom ();
- mudela_staff_p_->mudela_time_signature_l_ = p;
+ lilypond_staff_p_->lilypond_time_signature_l_ = p;
}
// KEY [\x59][\x02]
else if ((byte == 0x59) && (next == 0x02))
next_byte ();
int accidentals_i = (int)(signed char)next_byte ();
int minor_i = (int)(bool)next_byte ();
- Mudela_key* p = new Mudela_key (accidentals_i, minor_i);
+ Lilypond_key* p = new Lilypond_key (accidentals_i, minor_i);
item_p = p;
#if 0
- info_l_->score_l_->mudela_key_l_ = p;
- mudela_staff_p_->mudela_key_l_ = p;
+ info_l_->score_l_->lilypond_key_l_ = p;
+ lilypond_staff_p_->lilypond_key_l_ = p;
#endif
}
// SSME [\0x7f][\x03]
next_byte ();
int length_i = get_var_i ();
String str = get_str (length_i);
- item_p = new Mudela_text ((Mudela_text::Type)byte, str);
+ item_p = new Lilypond_text ((Lilypond_text::Type)byte, str);
}
else
{
exit (_ ("invalid MIDI event"));
if (item_p)
- item_p->mudela_column_l_ = col_l;
+ item_p->lilypond_column_l_ = col_l;
parse_delta_time ();
depth = ../..
-SUBDIRS = Petites-Preludes Solo-Cello-Suites Cembalo-Partitas Duette
+SUBDIRS = Petites-Preludes Cembalo-Partitas Duette
EXTRA_DIST_FILES=
msgid ""
msgstr ""
"Project-Id-Version: Lilypond 1.2.8\n"
-"POT-Creation-Date: 2001-03-06 12:36+0100\n"
+"POT-Creation-Date: 2001-03-21 16:06+0100\n"
"PO-Revision-Date: 1999-09-18 01:30+0200\n"
"Last-Translator: Erwin Dieterich <bamse@gmx.de>\n"
"Language-Team: LANGUAGE <de@li.org>\n"
"Content-Type: text/plain; charset=ISO-8859-1\n"
"Content-Transfer-Encoding: ENCODING\n"
-#: ly2dvi.py:67 main.cc:95 main.cc:109
+#: ly2dvi.py:86 main.cc:95 main.cc:105
msgid "this help"
msgstr "Diese Hilfe"
-#: ly2dvi.py:68
+#: ly2dvi.py:87
msgid "change global setting KEY to VAL"
msgstr ""
-#: ly2dvi.py:69
+#: ly2dvi.py:88
#, fuzzy
msgid "generate PostScript output"
msgstr "Degenerierte Zwangsbedingungen"
-#: ly2dvi.py:70
+#: ly2dvi.py:89
msgid "keep all output, and name the directory ly2dvi.dir"
msgstr ""
-#: ly2dvi.py:71
+#: ly2dvi.py:90
msgid "don't run LilyPond"
msgstr ""
-#: ly2dvi.py:72 main.cc:104 main.cc:119
+#: ly2dvi.py:91 main.cc:115
+#, fuzzy
+msgid "verbose"
+msgstr "Sei geschwätzig"
+
+#: ly2dvi.py:92 main.cc:104 main.cc:114
msgid "print version number"
msgstr "Zeige die Versionsnummer"
-#: ly2dvi.py:73 main.cc:106 main.cc:121
+#: ly2dvi.py:93 main.cc:106 main.cc:116
msgid "show warranty and copyright"
msgstr "Zeige Garantie und Urheberrechte"
-#: ly2dvi.py:74
+#: ly2dvi.py:94
msgid "dump all final output into DIR"
msgstr ""
-#: ly2dvi.py:75 main.cc:113
+#: ly2dvi.py:95 main.cc:109
msgid "write Makefile dependencies for every input file"
msgstr "Schreibe Makefile-Abhängigkeiten für jede Eingabedatei"
-#: ly2dvi.py:101
+#: data-file.cc:118 input.cc:85 ly2dvi.py:123 midi-parser.cc:100 warn.cc:23
+msgid "warning: "
+msgstr "Warnung: "
+
+#: input.cc:90 ly2dvi.py:128 ly2dvi.py:263 warn.cc:9 warn.cc:17
+msgid "error: "
+msgstr "Fehler: "
+
+#: ly2dvi.py:130
#, fuzzy
msgid "Exiting ... "
msgstr "Linie ... "
-#: ly2dvi.py:120
+#: ly2dvi.py:149
#, fuzzy, c-format
-msgid "Reading `%s'"
+msgid "Reading %s..."
msgstr "Uralt-Bitte: `%s'"
-#: ly2dvi.py:124 mapped-file-storage.cc:87 mudela-stream.cc:111
+#: lilypond-stream.cc:111 ly2dvi.py:153 mapped-file-storage.cc:87
#: paper-stream.cc:40 scores.cc:48 simple-file-storage.cc:44 text-stream.cc:23
#, c-format
msgid "can't open file: `%s'"
msgstr "Kann die Datei %s nicht öffnen"
-#: ly2dvi.py:187
+#: ly2dvi.py:216
#, fuzzy, c-format
msgid "Usage: %s [OPTION]... FILE"
msgstr "Verwendung: %s [OPTIONEN] ... [DATEI]"
-#: ly2dvi.py:189
+#: ly2dvi.py:218
msgid "Generate .dvi with LaTeX for LilyPond"
msgstr ""
-#: ly2dvi.py:191 main.cc:119 main.cc:151
+#: ly2dvi.py:220 main.cc:119 main.cc:146
msgid "Options:"
msgstr "Optionen:"
-#: data-file.cc:118 input.cc:85 ly2dvi.py:195 midi-parser.cc:100 warn.cc:23
-msgid "warning: "
-msgstr "Warnung: "
-
-#: ly2dvi.py:196
+#: ly2dvi.py:224
msgid "all output is written in the CURRENT directory"
msgstr ""
-#: ly2dvi.py:198 main.cc:123 main.cc:174
+#: ly2dvi.py:226 main.cc:123 main.cc:169
#, fuzzy, c-format
msgid "Report bugs to %s"
msgstr "Melde Fehler an"
-#: ly2dvi.py:230
+#: ly2dvi.py:260
#, fuzzy, c-format
msgid "Invoking `%s'"
msgstr "Uralt-Bitte: `%s'"
-#: input.cc:90 ly2dvi.py:234 warn.cc:9 warn.cc:17
-msgid "error: "
-msgstr "Fehler: "
-
-#: ly2dvi.py:234
+#: ly2dvi.py:263
#, c-format
msgid "command exited with value %d"
msgstr ""
-#: ly2dvi.py:236
+#: ly2dvi.py:265
msgid "(ignored)"
msgstr ""
-#: ly2dvi.py:277
+#: ly2dvi.py:301
+#, fuzzy, c-format
+msgid "no such setting: %s"
+msgstr "Kein solches instrument: `%s'"
+
+#: ly2dvi.py:309
#, c-format
msgid "Analyzing `%s'"
msgstr ""
-#: ly2dvi.py:539 scores.cc:44
+#: ly2dvi.py:353
+#, c-format
+msgid "no lilypond output found for %s"
+msgstr ""
+
+#: ly2dvi.py:395
+#, fuzzy, c-format
+msgid "invalid value: %s"
+msgstr "Ungültiger Buchstabe `%c'"
+
+#: ly2dvi.py:602 scores.cc:44
#, fuzzy, c-format
msgid "dependencies output to %s..."
msgstr "Ausgabe auf Papier auf %s..."
-#: ly2dvi.py:540
-#, c-format
-msgid "%s file left in `%s'"
-msgstr ""
+#: ly2dvi.py:603
+#, fuzzy, c-format
+msgid "%s output to %s..."
+msgstr "MIDI-Ausgabe nach %s..."
#: data-file.cc:54
msgid "EOF in a string"
msgid "can't find default font: `%s'"
msgstr "Kann Schrift `%s' nicht finden"
-#: all-font-metrics.cc:172 includable-lexer.cc:50 scores.cc:137
+#: all-font-metrics.cc:172 includable-lexer.cc:51 scores.cc:137
#, c-format
msgid "(search path: `%s')"
msgstr "(Suchpfad: `%s')"
-#: all-font-metrics.cc:173 parser.yy:1663
+#: all-font-metrics.cc:173 parser.yy:1681
msgid "Giving up"
msgstr ""
msgid "invalid inversion pitch: not part of chord: %s"
msgstr "Unerlaubter Baßton: gehört nicht zum Akkord: %s"
-#: chord-tremolo-engraver.cc:141
+#: chord-tremolo-engraver.cc:141 percent-repeat-engraver.cc:162
#, fuzzy
msgid "unterminated chord tremolo"
msgstr "Unbeendeter Bindestrich"
msgid "no one to print a tremolos"
msgstr "Keiner darf eine Wiederholungsklammer drucken"
-#: collision.cc:116
+#: collision.cc:118
msgid "Too many clashing notecolumns. Ignoring them."
msgstr "Zu viele aneinanderstoßende Notenspalten. Ich ignoriere sie."
msgid "already have a decrescendo"
msgstr "Habe schon einen Balken"
-#: dynamic-engraver.cc:307
+#: dynamic-engraver.cc:318
#, fuzzy
msgid "unterminated (de)crescendo"
msgstr "Nichtbeendetes Crescendo"
msgid "no one to print a repeat brace"
msgstr "Keiner darf eine Wiederholungsklammer drucken"
-#: font-interface.cc:220
+#: font-interface.cc:237
msgid "couldn't find any font satisfying "
msgstr ""
msgid "Nothing to connect hyphen to on the left. Ignoring hyphen request."
msgstr ""
-#: includable-lexer.cc:48 lily-guile.cc:139 midi-score-parser.cc:24
+#: includable-lexer.cc:49 lily-guile.cc:139 midi-score-parser.cc:24
#: scores.cc:136 scores.cc:142
#, c-format
msgid "can't find file: `%s'"
msgid "Huh? Melismatic note found to have associated lyrics."
msgstr ""
-#: main.cc:108
+#: main.cc:104
msgid "EXT"
msgstr "EXT"
-#: main.cc:108
+#: main.cc:104
#, fuzzy
msgid "use output format EXT (scm, ps, tex or as)"
msgstr "Benutze das Ausgabeformat EXT"
-#: main.cc:110
+#: main.cc:106
#, fuzzy
msgid "FIELD"
msgstr "DATEI"
-#: main.cc:110
+#: main.cc:106
msgid "write header field to BASENAME.FIELD"
msgstr ""
-#: main.cc:111 main.cc:114
+#: main.cc:107 main.cc:110
msgid "DIR"
msgstr "DIR"
-#: main.cc:111
+#: main.cc:107
msgid "add DIR to search path"
msgstr "Hänge DIR an den Suchpfad an"
-#: main.cc:98 main.cc:112
+#: main.cc:98 main.cc:108
msgid "FILE"
msgstr "DATEI"
-#: main.cc:112
+#: main.cc:108
msgid "use FILE as init file"
msgstr "Verwende FILE als Initialisierungsdatei"
-#: main.cc:114
+#: main.cc:110
msgid "prepend DIR to dependencies"
msgstr ""
-#: main.cc:115
+#: main.cc:111
#, fuzzy
msgid "produce MIDI output only"
msgstr "Nur Midiausgabe"
-#: main.cc:116
+#: main.cc:112
#, fuzzy
msgid "NAME"
msgstr "BASENAME"
-#: main.cc:116
+#: main.cc:112
#, fuzzy
msgid "write output to NAME"
msgstr "Schreibe die Ausgabe in BASENAME[-x].Erweiterung"
-#: main.cc:117
+#: main.cc:113
msgid "inhibit file output naming and exporting"
msgstr "Unterdrücke die automatische Benennung von Ausgabedateien und Export"
-#: main.cc:103 main.cc:118
-msgid "don't timestamp the output"
-msgstr "Keine Datumsangabe auf der Ausgabe"
-
-#: main.cc:120
-#, fuzzy
-msgid "verbose"
-msgstr "Sei geschwätzig"
+#: main.cc:117
+msgid "EXPR"
+msgstr ""
-#: main.cc:122
-msgid "write midi ouput in formatted ascii"
+#: main.cc:117
+msgid "evalute EXPR as Scheme after .scm init is read"
msgstr ""
#.
#. No version number or newline here. It confuses help2man
#.
-#: main.cc:139
+#: main.cc:134
#, c-format
msgid "Usage: %s [OPTION]... [FILE]..."
msgstr "Benutzung: %s [OPTIONEN] ... [DATEI] ..."
-#: main.cc:141
+#: main.cc:136
#, fuzzy
msgid "Typeset music and or play MIDI from FILE"
msgstr "Setze Musik oder spiele MIDI von DATEI"
-#: main.cc:145
+#: main.cc:140
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"
"Notenblätter erzeugen. Dazu verwendet es eine eigene Beschreibungssprache.\n"
"lilyPond ist Teil des GNU-Projekts\n"
-#: main.cc:155
+#: main.cc:150
msgid "This binary was compiled with the following options:"
msgstr "Diese Programm wurde mit den folgenden Optionen übersetzt:"
-#: main.cc:55 main.cc:182
+#: main.cc:55 main.cc:177
#, c-format
msgid ""
"This is free software. It is covered by the GNU General Public License,\n"
"einhalten. Wenn Sie das Programm mit `%s --warranty starten, bekommen\n"
"Sie mehr Informationen.\n"
-#: main.cc:62 main.cc:189 main.cc:201
+#: main.cc:62 main.cc:184 main.cc:196
#, c-format
msgid "Copyright (c) %s by"
msgstr "Urheberrechte (Copyright) (c) %s bei"
-#: main.cc:199
+#: main.cc:194
#, fuzzy
msgid "GNU LilyPond -- The music typesetter"
msgstr "GNU LilyPond -- Der Notensatz des GNU-Projekts"
-#: main.cc:71 main.cc:207
+#: main.cc:71 main.cc:202
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"
msgid "Transposition by %s makes accidental larger than two"
msgstr "Transponieren um %s macht Vorzecihen größer als zwei"
-#: music.cc:222
+#: music.cc:224
msgid "ly_get_mus_property (): Not a Music"
msgstr ""
-#: music.cc:236
+#: music.cc:238
msgid "ly_set_mus_property (): Not a symbol"
msgstr ""
-#: music.cc:248
+#: music.cc:250
msgid "ly_set_mus_property (): not of type Music"
msgstr ""
+#: music.cc:264
+msgid "ly_make_music (): Not a string"
+msgstr ""
+
+#: music.cc:284
+msgid "ly_music_name (): Not a music expression"
+msgstr ""
+
#: music-output-def.cc:115
#, fuzzy, c-format
msgid "can't find `%s' context"
msgstr "Kann Partiturkontext nicht finden"
-#: my-lily-lexer.cc:137
+#: my-lily-lexer.cc:138
#, fuzzy, c-format
msgid "Identifier name is a keyword: `%s'"
msgstr "name ist ein Schlüsselbegriff (keyword) (`%s')"
-#: my-lily-lexer.cc:157
+#: my-lily-lexer.cc:158
#, c-format
msgid "error at EOF: %s"
msgstr "Fehler am Dateiende(EOF): %s"
msgid "Parsing..."
msgstr "Verarbeite..."
-#: my-lily-parser.cc:55
+#: my-lily-parser.cc:57
#, fuzzy
msgid "Braces don't match"
msgstr "Klammern passen nicht zusammen"
msgid "paper output to %s..."
msgstr "Ausgabe auf Papier auf %s..."
-#: mudela-stream.cc:93 paper-outputter.cc:94 performance.cc:102
+#: lilypond-stream.cc:93 paper-outputter.cc:85 performance.cc:95
msgid ", at "
msgstr ", bei "
-#: paper-outputter.cc:245
+#: paper-outputter.cc:232
#, fuzzy, c-format
msgid "writing header field %s to %s..."
msgstr "Schreibe Datei mit Abhängigkeiten: `%s'..."
msgid "Preprocessing elements..."
msgstr "Verarbeite Element vor..."
-#: paper-score.cc:113
+#: paper-score.cc:114
#, fuzzy
msgid "Outputting Score, defined at: "
msgstr "Gebe Partitur aus, definiert bei: "
msgid "none of these in my family: `%s'"
msgstr ""
+#: percent-repeat-engraver.cc:108
+#, fuzzy
+msgid "Don't know yet how to handle this percent repeat."
+msgstr "Weiß nicht, wie ich eine fehlende Tonart behandeln soll"
+
+#: percent-repeat-iterator.cc:53
+#, fuzzy
+msgid "no one to print a percent"
+msgstr "Keiner darf eine Wiederholungsklammer drucken"
+
#: performance.cc:51
msgid "Track ... "
msgstr "Stück ... "
msgid "Creator: "
msgstr "Erstellt von: "
-#: performance.cc:116
+#: performance.cc:109
#, c-format
msgid "from musical definition: %s"
msgstr "von der musiaklischen Definition: %s"
-#: performance.cc:171
+#: performance.cc:164
#, c-format
msgid "MIDI output to %s..."
msgstr "MIDI-Ausgabe nach %s..."
msgid "elapsed time: %.2f seconds"
msgstr "verstrichene Zeit %.2f Sekunden"
-#: score-engraver.cc:177
+#: score-engraver.cc:183
#, fuzzy, c-format
msgid "unbound spanner `%s'"
msgstr "Unbeschränkter Abstand `%s'"
msgid "unterminated slur"
msgstr "Unbeendeter Bindebogen"
-#: slur-engraver.cc:142
+#. How to shut up this warning, when Voice_devnull_engraver has
+#. eaten start request?
+#: slur-engraver.cc:144
#, fuzzy
msgid "can't find start of slur"
msgstr "Kann nicht beide Enden von %s finden"
msgid "can't find ascii character: %d"
msgstr "Kann ASCII-Zeichen `%d' nicht finden"
-#: tfm-reader.cc:105
-#, c-format
-msgid "TFM header of `%s' has only %u word(s)"
+#: tfm-reader.cc:106
+#, fuzzy, c-format
+msgid "TFM header of `%s' has only %u word (s)"
msgstr "TFM header von `%s' hat nur %u Wort(e)"
-#: tfm-reader.cc:139
+#: tfm-reader.cc:140
#, fuzzy, c-format
msgid "%s: TFM file has %u parameters, which is more than the %u I can handle"
msgstr "%s: TFM-Datei hat %u Parameter. Das ist mehr als die"
-#: tie-engraver.cc:211 tie-performer.cc:173
+#. How to shut up this warning, when no notes appeared because
+#. they were suicided by Thread_devnull_engraver?
+#: tie-engraver.cc:215 tie-performer.cc:173
msgid "No ties were created!"
msgstr "Es wurden keine Haltebögen erzeugt!"
-#: tie-engraver.cc:230
+#: tie-engraver.cc:234
msgid "lonely tie"
msgstr "Einsamer Haltebogen"
msgid "unknown translator: `%s'"
msgstr "unbekannter Übersetzer `%s'"
-#: translator-def.cc:96
+#: translator-def.cc:99
msgid "Program has no such type"
msgstr ""
-#: translator-def.cc:102
+#: translator-def.cc:105
#, fuzzy, c-format
msgid "Already contains: `%s'"
msgstr "Enthält schon ein `%s'"
-#: translator-def.cc:103
+#: translator-def.cc:106
#, fuzzy, c-format
msgid "Not adding translator: `%s'"
msgstr "unbekannter Übersetzer `%s'"
-#: translator-def.cc:215
+#: translator-def.cc:224
#, fuzzy, c-format
msgid "can't find: `%s'"
msgstr "Kann `%s' nicht finden"
msgid "can't find or create: `%s'"
msgstr "Kann ein `%s' weder finden noch erzeugen"
-#: translator-group.cc:403
+#: translator-group.cc:414
#, c-format
msgid ""
"Can't find property type-check for `%s'. Perhaps you made a typing error?"
msgstr ""
-#: translator-group.cc:417
+#: translator-group.cc:428
#, c-format
msgid "Type check for `%s' failed; value `%s' must be of type `%s'"
msgstr ""
#. programming_error?
-#: translator-group.cc:436
+#: translator-group.cc:447
msgid "ly-get-trans-property: expecting a Translator_group argument"
msgstr ""
msgid "Oldest supported input version: %s"
msgstr "Älteste noch unterstütze Version der Eingabe: %s"
-#: parser.yy:471
+#: parser.yy:473
msgid "Wrong type for property value"
msgstr "Falsche Type für Besitz-Wert"
-#: parser.yy:666
+#: parser.yy:672
msgid "More alternatives than repeats. Junking excess alternatives."
msgstr ""
-#: parser.yy:730
+#: parser.yy:736
msgid "Second argument must be a symbol"
msgstr ""
-#: parser.yy:735
+#: parser.yy:741
msgid "First argument must be a procedure taking 1 argument"
msgstr ""
-#: parser.yy:1211
+#: parser.yy:1236
msgid "Expecting string as script definition"
msgstr ""
-#: parser.yy:1221
+#: parser.yy:1246
msgid "Can't specify direction for this request"
msgstr ""
-#: parser.yy:1353
+#: parser.yy:1371
msgid "Expecting musical-pitch value"
msgstr ""
-#: parser.yy:1364
+#: parser.yy:1382
#, fuzzy
msgid "Must have duration object"
msgstr "Setze kürzeste Dauer (?)"
-#: parser.yy:1373 parser.yy:1381 parser.yy:1661
+#: parser.yy:1391 parser.yy:1399 parser.yy:1679
#, fuzzy
msgid "Have to be in Lyric mode for lyrics"
msgstr "Um Text zu verarbeiten, muß ich im Text-(Lyrics)-Modus sein"
-#: parser.yy:1546 parser.yy:1575
+#: parser.yy:1564 parser.yy:1593
#, c-format
msgid "not a duration: %d"
msgstr "Keine Dauer: %d"
-#: parser.yy:1584
+#: parser.yy:1602
#, fuzzy
msgid "Have to be in Note mode for notes"
msgstr "Für Noten muß ich im Noten-(Note)-Modus sein"
-#: parser.yy:1680
+#: parser.yy:1698
#, fuzzy
msgid "Have to be in Chord mode for chords"
msgstr "Für Akkorde muß ich im Akkord-(Chord)-Modus sein"
-#: parser.yy:1842 parser.yy:1860
+#: parser.yy:1860 parser.yy:1878
msgid "need integer number arg"
msgstr ""
-#: parser.yy:1846
+#: parser.yy:1864
msgid "Must be positive integer"
msgstr ""
-#: lexer.ll:165
+#: lexer.ll:166
msgid "EOF found inside a comment"
msgstr "Während eines Kommentar war die Datei zu Ende (EOF gefunden)"
-#: lexer.ll:179
+#: lexer.ll:180
msgid "\\maininput disallowed outside init files"
msgstr ""
-#: lexer.ll:203
+#: lexer.ll:204
#, fuzzy, c-format
msgid "wrong or undefined identifier: `%s'"
msgstr "Unbekannter Identifier: `%s'"
#. backup rule
-#: lexer.ll:208
+#: lexer.ll:209
#, fuzzy
msgid "Missing end quote"
msgstr "Endnote fehlt"
#. backup rule
-#: lexer.ll:230 lexer.ll:234
+#: lexer.ll:231 lexer.ll:235
msgid "white expected"
msgstr "Erwarte Weiß"
-#: lexer.ll:243
+#: lexer.ll:244
#, fuzzy
msgid "Can't evaluate Scheme in safe mode"
msgstr "Kann Scheme nicht interpretieren, wenn ich im sicheren Modus bin"
-#: lexer.ll:335
+#: lexer.ll:336
msgid "Brace found at end of lyric. Did you forget a space?"
msgstr ""
-#: lexer.ll:439
+#: lexer.ll:440
#, c-format
msgid "invalid character: `%c'"
msgstr "Ungültiger Buchstabe `%c'"
-#: lexer.ll:520
+#: lexer.ll:521
#, c-format
msgid "unknown escaped string: `\\%s'"
msgstr "Unbekannte Sonder-Zeichenkette"
-#: lexer.ll:602
+#: lexer.ll:603
#, fuzzy, c-format
msgid "incorrect lilypond version: %s (%s, %s)"
-msgstr "Falsche Version von Mudela: (s /%s, %s)"
+msgstr "Falsche Version von Lilypond: %s (%s, %s)"
-#: lexer.ll:603
+#: lexer.ll:604
msgid "Consider converting the input with the convert-ly script"
msgstr ""
+#: lilypond-item.cc:161
+#, c-format
+msgid "#32 in quarter: %d"
+msgstr "#32 in Vierteln: %d"
+
+#: lilypond-score.cc:108
+#, c-format
+msgid "Lily output to %s..."
+msgstr "Lily-Ausgabe nach %s..."
+
+#: lilypond-score.cc:119
+#, fuzzy, c-format
+msgid "track %d:"
+msgstr "Spur "
+
+#: lilypond-score.cc:155
+msgid "Processing..."
+msgstr "Verarbeite..."
+
+#: lilypond-score.cc:164
+msgid "Creating voices..."
+msgstr "Erzeuge Stimmen..."
+
+#: lilypond-score.cc:168
+msgid "track "
+msgstr "Spur "
+
+#: lilypond-score.cc:177
+msgid "NOT Filtering tempo..."
+msgstr "Ich filtere das Tempo NICHT..."
+
+#: lilypond-score.cc:186
+msgid "NOT Quantifying columns..."
+msgstr "ich quantifiziere die Spalten NICHT..."
+
+#: lilypond-score.cc:190
+msgid "Quantifying columns..."
+msgstr "Quantifiziere Spalten..."
+
+#: lilypond-score.cc:223
+msgid "Settling columns..."
+msgstr "Erledige Spalten..."
+
+#: lilypond-staff.cc:209
+#, fuzzy
+msgid "% MIDI copyright:"
+msgstr "% Midi Urheberrecht:"
+
+#: lilypond-staff.cc:210
+#, fuzzy
+msgid "% MIDI instrument:"
+msgstr "% Instrument:"
+
+#: lilypond-stream.cc:37
+#, c-format
+msgid "lily indent level: %d"
+msgstr "lily Einrücklevel: %d"
+
+#. Maybe better not to translate these?
+#: lilypond-stream.cc:83
+msgid "% Creator: "
+msgstr "% erstellt von: "
+
+#: lilypond-stream.cc:88
+msgid "% Automatically generated"
+msgstr "% Automatisch generiert"
+
+#: lilypond-stream.cc:97
+#, c-format
+msgid "% from input file: "
+msgstr "% aus Eingabedatei: "
+
#: main.cc:93
msgid "write exact durations, e.g.: a4*385/384"
msgstr "Schreibe genaue Dauer, z.B.: a4*385/384"
msgid "set smallest duration"
msgstr "Setze kürzeste Dauer (?)"
+#: main.cc:103
+msgid "don't timestamp the output"
+msgstr "Keine Datumsangabe auf der Ausgabe"
+
#: main.cc:105
msgid "be verbose"
msgstr "Sei geschwätzig"
#: main.cc:116
#, fuzzy
-msgid "Translate MIDI-file to mudela"
-msgstr "Übersetze MIDI in mudela"
+msgid "Translate MIDI-file to lilypond"
+msgstr "Übersetze MIDI in Lilypond"
#: main.cc:130
#, c-format
msgid "invalid track length"
msgstr "Unzulässige Länge für ein Stück"
-#: mudela-item.cc:161
-#, c-format
-msgid "#32 in quarter: %d"
-msgstr "#32 in Vierteln: %d"
-
-#: mudela-score.cc:108
-#, c-format
-msgid "Lily output to %s..."
-msgstr "Lily-Ausgabe nach %s..."
-
-#: mudela-score.cc:119
-#, fuzzy, c-format
-msgid "track %d:"
-msgstr "Spur "
-
-#: mudela-score.cc:155
-msgid "Processing..."
-msgstr "Verarbeite..."
-
-#: mudela-score.cc:164
-msgid "Creating voices..."
-msgstr "Erzeuge Stimmen..."
-
-#: mudela-score.cc:168
-msgid "track "
-msgstr "Spur "
-
-#: mudela-score.cc:177
-msgid "NOT Filtering tempo..."
-msgstr "Ich filtere das Tempo NICHT..."
-
-#: mudela-score.cc:186
-msgid "NOT Quantifying columns..."
-msgstr "ich quantifiziere die Spalten NICHT..."
-
-#: mudela-score.cc:190
-msgid "Quantifying columns..."
-msgstr "Quantifiziere Spalten..."
-
-#: mudela-score.cc:223
-msgid "Settling columns..."
-msgstr "Erledige Spalten..."
-
-#: mudela-staff.cc:209
-#, fuzzy
-msgid "% MIDI copyright:"
-msgstr "% Midi Urheberrecht:"
-
-#: mudela-staff.cc:210
-#, fuzzy
-msgid "% MIDI instrument:"
-msgstr "% Instrument:"
-
-#: mudela-stream.cc:37
-#, c-format
-msgid "lily indent level: %d"
-msgstr "lily Einrücklevel: %d"
-
-#. Maybe better not to translate these?
-#: mudela-stream.cc:83
-msgid "% Creator: "
-msgstr "% erstellt von: "
-
-#: mudela-stream.cc:88
-msgid "% Automatically generated"
-msgstr "% Automatisch generiert"
-
-#: mudela-stream.cc:97
-#, c-format
-msgid "% from input file: "
-msgstr "% aus Eingabedatei: "
-
#, fuzzy
#~ msgid "Dependency file left in `%s'"
#~ msgstr "Schreibe Datei mit Abhängigkeiten: `%s'..."
#~ msgid "No key name, assuming `C'"
#~ msgstr "Keine Tonart: ich nehme `C' an"
-#, fuzzy
-#~ msgid "Don't know how handle empty keys"
-#~ msgstr "Weiß nicht, wie ich eine fehlende Tonart behandeln soll"
-
#, fuzzy
#~ msgid "out of tune:"
#~ msgstr "Verstimmt"
msgid ""
msgstr ""
"Project-Id-Version: lilypond 1.3.18\n"
-"POT-Creation-Date: 2001-03-06 12:36+0100\n"
+"POT-Creation-Date: 2001-03-21 16:06+0100\n"
"PO-Revision-Date: 1999-12-28 00:32 +1\n"
"Last-Translator: Laurent Martelli <laurent@linuxfan.com>\n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
-#: ly2dvi.py:67 main.cc:95 main.cc:109
+#: ly2dvi.py:86 main.cc:95 main.cc:105
msgid "this help"
msgstr "cette aide"
-#: ly2dvi.py:68
+#: ly2dvi.py:87
msgid "change global setting KEY to VAL"
msgstr ""
-#: ly2dvi.py:69
+#: ly2dvi.py:88
msgid "generate PostScript output"
msgstr ""
-#: ly2dvi.py:70
+#: ly2dvi.py:89
msgid "keep all output, and name the directory ly2dvi.dir"
msgstr ""
-#: ly2dvi.py:71
+#: ly2dvi.py:90
msgid "don't run LilyPond"
msgstr ""
-#: ly2dvi.py:72 main.cc:104 main.cc:119
+#: ly2dvi.py:91 main.cc:115
+msgid "verbose"
+msgstr ""
+
+#: ly2dvi.py:92 main.cc:104 main.cc:114
msgid "print version number"
msgstr "afficher le numéro de version"
-#: ly2dvi.py:73 main.cc:106 main.cc:121
+#: ly2dvi.py:93 main.cc:106 main.cc:116
msgid "show warranty and copyright"
msgstr ""
-#: ly2dvi.py:74
+#: ly2dvi.py:94
msgid "dump all final output into DIR"
msgstr ""
-#: ly2dvi.py:75 main.cc:113
+#: ly2dvi.py:95 main.cc:109
msgid "write Makefile dependencies for every input file"
msgstr ""
-#: ly2dvi.py:101
+#: data-file.cc:118 input.cc:85 ly2dvi.py:123 midi-parser.cc:100 warn.cc:23
+msgid "warning: "
+msgstr "avertissement: "
+
+#: input.cc:90 ly2dvi.py:128 ly2dvi.py:263 warn.cc:9 warn.cc:17
+msgid "error: "
+msgstr "erreur: "
+
+#: ly2dvi.py:130
#, fuzzy
msgid "Exiting ... "
msgstr "Ligne ..."
-#: ly2dvi.py:120
-#, c-format
-msgid "Reading `%s'"
-msgstr ""
+#: ly2dvi.py:149
+#, fuzzy, c-format
+msgid "Reading %s..."
+msgstr "Création des voix..."
-#: ly2dvi.py:124 mapped-file-storage.cc:87 mudela-stream.cc:111
+#: lilypond-stream.cc:111 ly2dvi.py:153 mapped-file-storage.cc:87
#: paper-stream.cc:40 scores.cc:48 simple-file-storage.cc:44 text-stream.cc:23
#, c-format
msgid "can't open file: `%s'"
msgstr "impossible d'ouvrir le fichier: `%s'"
-#: ly2dvi.py:187
+#: ly2dvi.py:216
#, fuzzy, c-format
msgid "Usage: %s [OPTION]... FILE"
msgstr "Usage: %s [OPTION... [FICHIER]"
-#: ly2dvi.py:189
+#: ly2dvi.py:218
msgid "Generate .dvi with LaTeX for LilyPond"
msgstr ""
-#: ly2dvi.py:191 main.cc:119 main.cc:151
+#: ly2dvi.py:220 main.cc:119 main.cc:146
msgid "Options:"
msgstr "Options: "
-#: data-file.cc:118 input.cc:85 ly2dvi.py:195 midi-parser.cc:100 warn.cc:23
-msgid "warning: "
-msgstr "avertissement: "
-
-#: ly2dvi.py:196
+#: ly2dvi.py:224
msgid "all output is written in the CURRENT directory"
msgstr ""
-#: ly2dvi.py:198 main.cc:123 main.cc:174
+#: ly2dvi.py:226 main.cc:123 main.cc:169
#, fuzzy, c-format
msgid "Report bugs to %s"
msgstr "Rapporter les bugs à"
-#: ly2dvi.py:230
+#: ly2dvi.py:260
#, c-format
msgid "Invoking `%s'"
msgstr ""
-#: input.cc:90 ly2dvi.py:234 warn.cc:9 warn.cc:17
-msgid "error: "
-msgstr "erreur: "
-
-#: ly2dvi.py:234
+#: ly2dvi.py:263
#, c-format
msgid "command exited with value %d"
msgstr ""
-#: ly2dvi.py:236
+#: ly2dvi.py:265
msgid "(ignored)"
msgstr ""
-#: ly2dvi.py:277
+#: ly2dvi.py:301
+#, fuzzy, c-format
+msgid "no such setting: %s"
+msgstr "Pas d'instrument tel: `%s'"
+
+#: ly2dvi.py:309
#, c-format
msgid "Analyzing `%s'"
msgstr ""
-#: ly2dvi.py:539 scores.cc:44
+#: ly2dvi.py:353
+#, c-format
+msgid "no lilypond output found for %s"
+msgstr ""
+
+#: ly2dvi.py:395
+#, fuzzy, c-format
+msgid "invalid value: %s"
+msgstr "caractères illégal: `%c'"
+
+#: ly2dvi.py:602 scores.cc:44
#, fuzzy, c-format
msgid "dependencies output to %s..."
msgstr "Sortie papier vers %s..."
-#: ly2dvi.py:540
-#, c-format
-msgid "%s file left in `%s'"
-msgstr ""
+#: ly2dvi.py:603
+#, fuzzy, c-format
+msgid "%s output to %s..."
+msgstr "Sortie de Lily vers %s..."
#: data-file.cc:54
#, fuzzy
msgid "can't find default font: `%s'"
msgstr "Impossible de trouver la fonte par défaut `%s', abandon."
-#: all-font-metrics.cc:172 includable-lexer.cc:50 scores.cc:137
+#: all-font-metrics.cc:172 includable-lexer.cc:51 scores.cc:137
#, fuzzy, c-format
msgid "(search path: `%s')"
msgstr "chemin de recherche= %s"
-#: all-font-metrics.cc:173 parser.yy:1663
+#: all-font-metrics.cc:173 parser.yy:1681
msgid "Giving up"
msgstr ""
msgid "invalid inversion pitch: not part of chord: %s"
msgstr "renversement invalide: ne fait pas partie de l'accord: %s"
-#: chord-tremolo-engraver.cc:141
+#: chord-tremolo-engraver.cc:141 percent-repeat-engraver.cc:162
msgid "unterminated chord tremolo"
msgstr ""
msgid "no one to print a tremolos"
msgstr ""
-#: collision.cc:116
+#: collision.cc:118
#, fuzzy
msgid "Too many clashing notecolumns. Ignoring them."
msgstr "Trop de colonnes de notes superposées. Je les ignore."
msgid "already have a decrescendo"
msgstr "Il y a déjà une barre"
-#: dynamic-engraver.cc:307
+#: dynamic-engraver.cc:318
#, fuzzy
msgid "unterminated (de)crescendo"
msgstr "crescendo non terminé"
msgid "no one to print a repeat brace"
msgstr ""
-#: font-interface.cc:220
+#: font-interface.cc:237
msgid "couldn't find any font satisfying "
msgstr ""
msgid "Nothing to connect hyphen to on the left. Ignoring hyphen request."
msgstr ""
-#: includable-lexer.cc:48 lily-guile.cc:139 midi-score-parser.cc:24
+#: includable-lexer.cc:49 lily-guile.cc:139 midi-score-parser.cc:24
#: scores.cc:136 scores.cc:142
#, c-format
msgid "can't find file: `%s'"
msgid "Huh? Melismatic note found to have associated lyrics."
msgstr ""
-#: main.cc:108
+#: main.cc:104
msgid "EXT"
msgstr ""
-#: main.cc:108
+#: main.cc:104
msgid "use output format EXT (scm, ps, tex or as)"
msgstr ""
-#: main.cc:110
+#: main.cc:106
#, fuzzy
msgid "FIELD"
msgstr "FICHIER"
-#: main.cc:110
+#: main.cc:106
msgid "write header field to BASENAME.FIELD"
msgstr ""
-#: main.cc:111 main.cc:114
+#: main.cc:107 main.cc:110
msgid "DIR"
msgstr "REP"
-#: main.cc:111
+#: main.cc:107
#, fuzzy
msgid "add DIR to search path"
msgstr "ajoute REP au chemin de recherche"
-#: main.cc:98 main.cc:112
+#: main.cc:98 main.cc:108
msgid "FILE"
msgstr "FICHIER"
-#: main.cc:112
+#: main.cc:108
#, fuzzy
msgid "use FILE as init file"
msgstr "utilise FICHIER comme fichier d'initialisation"
-#: main.cc:114
+#: main.cc:110
msgid "prepend DIR to dependencies"
msgstr ""
-#: main.cc:115
+#: main.cc:111
#, fuzzy
msgid "produce MIDI output only"
msgstr "produit seulement la sortie MIDI"
-#: main.cc:116
+#: main.cc:112
msgid "NAME"
msgstr ""
-#: main.cc:116
+#: main.cc:112
msgid "write output to NAME"
msgstr ""
-#: main.cc:117
+#: main.cc:113
msgid "inhibit file output naming and exporting"
msgstr ""
-#: main.cc:103 main.cc:118
-msgid "don't timestamp the output"
-msgstr ""
-
-#: main.cc:120
-msgid "verbose"
+#: main.cc:117
+msgid "EXPR"
msgstr ""
-#: main.cc:122
-msgid "write midi ouput in formatted ascii"
+#: main.cc:117
+msgid "evalute EXPR as Scheme after .scm init is read"
msgstr ""
#.
#. No version number or newline here. It confuses help2man
#.
-#: main.cc:139
+#: main.cc:134
#, c-format
msgid "Usage: %s [OPTION]... [FILE]..."
msgstr "Usage: %s [OPTION]... [FICHIER]..."
-#: main.cc:141
+#: main.cc:136
msgid "Typeset music and or play MIDI from FILE"
msgstr ""
-#: main.cc:145
+#: main.cc:140
#, fuzzy
msgid ""
"LilyPond is a music typesetter. It produces beautiful sheet music\n"
"paritions à partir de description de gaut niveau en entrée. Lilypond\n"
"fait partie du projet GNU.\n"
-#: main.cc:155
+#: main.cc:150
#, fuzzy
msgid "This binary was compiled with the following options:"
msgstr "Cet exécutable a été compilé avec les options suivantes:"
-#: main.cc:55 main.cc:182
+#: main.cc:55 main.cc:177
#, c-format
msgid ""
"This is free software. It is covered by the GNU General Public License,\n"
"certain conditions. Invoke as `%s --warranty' for more information.\n"
msgstr ""
-#: main.cc:62 main.cc:189 main.cc:201
+#: main.cc:62 main.cc:184 main.cc:196
#, c-format
msgid "Copyright (c) %s by"
msgstr "Copyright (c) %s par"
-#: main.cc:199
+#: main.cc:194
#, fuzzy
msgid "GNU LilyPond -- The music typesetter"
msgstr "GNU LilyPond -- Il tipografo musicale del progetto GNU"
-#: main.cc:71 main.cc:207
+#: main.cc:71 main.cc:202
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"
msgid "Transposition by %s makes accidental larger than two"
msgstr ""
-#: music.cc:222
+#: music.cc:224
msgid "ly_get_mus_property (): Not a Music"
msgstr ""
-#: music.cc:236
+#: music.cc:238
msgid "ly_set_mus_property (): Not a symbol"
msgstr ""
-#: music.cc:248
+#: music.cc:250
msgid "ly_set_mus_property (): not of type Music"
msgstr ""
+#: music.cc:264
+msgid "ly_make_music (): Not a string"
+msgstr ""
+
+#: music.cc:284
+msgid "ly_music_name (): Not a music expression"
+msgstr ""
+
#: music-output-def.cc:115
#, fuzzy, c-format
msgid "can't find `%s' context"
msgstr "ne peut pas trouver `%s'"
-#: my-lily-lexer.cc:137
+#: my-lily-lexer.cc:138
#, c-format
msgid "Identifier name is a keyword: `%s'"
msgstr ""
-#: my-lily-lexer.cc:157
+#: my-lily-lexer.cc:158
#, c-format
msgid "error at EOF: %s"
msgstr ""
msgid "Parsing..."
msgstr "Analyse..."
-#: my-lily-parser.cc:55
+#: my-lily-parser.cc:57
msgid "Braces don't match"
msgstr ""
msgid "paper output to %s..."
msgstr "Sortie papier vers %s..."
-#: mudela-stream.cc:93 paper-outputter.cc:94 performance.cc:102
+#: lilypond-stream.cc:93 paper-outputter.cc:85 performance.cc:95
msgid ", at "
msgstr ", à "
-#: paper-outputter.cc:245
+#: paper-outputter.cc:232
#, fuzzy, c-format
msgid "writing header field %s to %s..."
msgstr "impossible d'ouvrir le fichier: `%s'"
msgid "Preprocessing elements..."
msgstr ""
-#: paper-score.cc:113
+#: paper-score.cc:114
msgid "Outputting Score, defined at: "
msgstr ""
msgid "none of these in my family: `%s'"
msgstr ""
+#: percent-repeat-engraver.cc:108
+#, fuzzy
+msgid "Don't know yet how to handle this percent repeat."
+msgstr "ne sait pas traiter les clés vides"
+
+#: percent-repeat-iterator.cc:53
+msgid "no one to print a percent"
+msgstr ""
+
#: performance.cc:51
#, fuzzy
msgid "Track ... "
msgid "Creator: "
msgstr "Auteur: "
-#: performance.cc:116
+#: performance.cc:109
#, c-format
msgid "from musical definition: %s"
msgstr ""
-#: performance.cc:171
+#: performance.cc:164
#, c-format
msgid "MIDI output to %s..."
msgstr ""
msgid "elapsed time: %.2f seconds"
msgstr "temps ecoulé: %.2f secondes"
-#: score-engraver.cc:177
+#: score-engraver.cc:183
#, fuzzy, c-format
msgid "unbound spanner `%s'"
msgstr "traducteur inconnu `%s'"
msgid "unterminated slur"
msgstr ""
-#: slur-engraver.cc:142
+#. How to shut up this warning, when Voice_devnull_engraver has
+#. eaten start request?
+#: slur-engraver.cc:144
#, fuzzy
msgid "can't find start of slur"
msgstr "impossible de trouver le caractères numéro %d"
msgid "can't find ascii character: %d"
msgstr "ne peut pas trouver le caractère ascii `%d'"
-#: tfm-reader.cc:105
+#: tfm-reader.cc:106
#, c-format
-msgid "TFM header of `%s' has only %u word(s)"
+msgid "TFM header of `%s' has only %u word (s)"
msgstr ""
-#: tfm-reader.cc:139
+#: tfm-reader.cc:140
#, c-format
msgid "%s: TFM file has %u parameters, which is more than the %u I can handle"
msgstr ""
-#: tie-engraver.cc:211 tie-performer.cc:173
+#. How to shut up this warning, when no notes appeared because
+#. they were suicided by Thread_devnull_engraver?
+#: tie-engraver.cc:215 tie-performer.cc:173
msgid "No ties were created!"
msgstr "Aucune liaison n'a été crée"
-#: tie-engraver.cc:230
+#: tie-engraver.cc:234
msgid "lonely tie"
msgstr "liaison solitaire"
msgid "unknown translator: `%s'"
msgstr "traducteur inconnu `%s'"
-#: translator-def.cc:96
+#: translator-def.cc:99
msgid "Program has no such type"
msgstr ""
-#: translator-def.cc:102
+#: translator-def.cc:105
#, fuzzy, c-format
msgid "Already contains: `%s'"
msgstr "Contient déjà un `%s'"
-#: translator-def.cc:103
+#: translator-def.cc:106
#, fuzzy, c-format
msgid "Not adding translator: `%s'"
msgstr "traducteur inconnu `%s'"
-#: translator-def.cc:215
+#: translator-def.cc:224
#, fuzzy, c-format
msgid "can't find: `%s'"
msgstr "ne peut pas trouver `%s'"
msgid "can't find or create: `%s'"
msgstr "ne peut pas trouver ou créer `%s'"
-#: translator-group.cc:403
+#: translator-group.cc:414
#, c-format
msgid ""
"Can't find property type-check for `%s'. Perhaps you made a typing error?"
msgstr ""
-#: translator-group.cc:417
+#: translator-group.cc:428
#, c-format
msgid "Type check for `%s' failed; value `%s' must be of type `%s'"
msgstr ""
#. programming_error?
-#: translator-group.cc:436
+#: translator-group.cc:447
msgid "ly-get-trans-property: expecting a Translator_group argument"
msgstr ""
msgid "Oldest supported input version: %s"
msgstr "Plus ancienne version supportée: %s"
-#: parser.yy:471
+#: parser.yy:473
msgid "Wrong type for property value"
msgstr "Mauvais type pour la valeur de la propriété"
-#: parser.yy:666
+#: parser.yy:672
msgid "More alternatives than repeats. Junking excess alternatives."
msgstr ""
-#: parser.yy:730
+#: parser.yy:736
msgid "Second argument must be a symbol"
msgstr ""
-#: parser.yy:735
+#: parser.yy:741
msgid "First argument must be a procedure taking 1 argument"
msgstr ""
-#: parser.yy:1211
+#: parser.yy:1236
msgid "Expecting string as script definition"
msgstr ""
-#: parser.yy:1221
+#: parser.yy:1246
msgid "Can't specify direction for this request"
msgstr ""
-#: parser.yy:1353
+#: parser.yy:1371
msgid "Expecting musical-pitch value"
msgstr ""
-#: parser.yy:1364
+#: parser.yy:1382
#, fuzzy
msgid "Must have duration object"
msgstr "Positionne la plus petite durée (?)"
-#: parser.yy:1373 parser.yy:1381 parser.yy:1661
+#: parser.yy:1391 parser.yy:1399 parser.yy:1679
#, fuzzy
msgid "Have to be in Lyric mode for lyrics"
msgstr "il fayt être en mode Parole pour les paroles"
-#: parser.yy:1546 parser.yy:1575
+#: parser.yy:1564 parser.yy:1593
#, c-format
msgid "not a duration: %d"
msgstr "pas une durée: %d"
-#: parser.yy:1584
+#: parser.yy:1602
#, fuzzy
msgid "Have to be in Note mode for notes"
msgstr "il faut être en mode Note pour les notes"
-#: parser.yy:1680
+#: parser.yy:1698
#, fuzzy
msgid "Have to be in Chord mode for chords"
msgstr "il faut être en mode Accord pour les accords"
-#: parser.yy:1842 parser.yy:1860
+#: parser.yy:1860 parser.yy:1878
msgid "need integer number arg"
msgstr ""
-#: parser.yy:1846
+#: parser.yy:1864
msgid "Must be positive integer"
msgstr ""
-#: lexer.ll:165
+#: lexer.ll:166
msgid "EOF found inside a comment"
msgstr "EOF trouvé dans un commentaire"
-#: lexer.ll:179
+#: lexer.ll:180
msgid "\\maininput disallowed outside init files"
msgstr ""
-#: lexer.ll:203
+#: lexer.ll:204
#, fuzzy, c-format
msgid "wrong or undefined identifier: `%s'"
msgstr "indentifiant non défini: `%s'"
#. backup rule
-#: lexer.ll:208
+#: lexer.ll:209
msgid "Missing end quote"
msgstr ""
#. backup rule
-#: lexer.ll:230 lexer.ll:234
+#: lexer.ll:231 lexer.ll:235
msgid "white expected"
msgstr "blanche attendue"
-#: lexer.ll:243
+#: lexer.ll:244
msgid "Can't evaluate Scheme in safe mode"
msgstr ""
-#: lexer.ll:335
+#: lexer.ll:336
msgid "Brace found at end of lyric. Did you forget a space?"
msgstr ""
-#: lexer.ll:439
+#: lexer.ll:440
#, fuzzy, c-format
msgid "invalid character: `%c'"
msgstr "caractères illégal: `%c'"
-#: lexer.ll:520
+#: lexer.ll:521
#, c-format
msgid "unknown escaped string: `\\%s'"
msgstr "chaîne d'échappement inconnue: `\\%s'"
-#: lexer.ll:602
+#: lexer.ll:603
#, fuzzy, c-format
msgid "incorrect lilypond version: %s (%s, %s)"
msgstr "version de mudela incorrecte: %s (%s, %s)"
-#: lexer.ll:603
+#: lexer.ll:604
msgid "Consider converting the input with the convert-ly script"
msgstr ""
+#: lilypond-item.cc:161
+#, c-format
+msgid "#32 in quarter: %d"
+msgstr ""
+
+#: lilypond-score.cc:108
+#, c-format
+msgid "Lily output to %s..."
+msgstr "Sortie de Lily vers %s..."
+
+#: lilypond-score.cc:119
+#, fuzzy, c-format
+msgid "track %d:"
+msgstr "piste "
+
+#: lilypond-score.cc:155
+msgid "Processing..."
+msgstr "Traitement..."
+
+#: lilypond-score.cc:164
+msgid "Creating voices..."
+msgstr "Création des voix..."
+
+#: lilypond-score.cc:168
+msgid "track "
+msgstr "piste "
+
+#: lilypond-score.cc:177
+msgid "NOT Filtering tempo..."
+msgstr "PAS de filtrage du tempo..."
+
+#: lilypond-score.cc:186
+msgid "NOT Quantifying columns..."
+msgstr "PAS de quantification des colonnes..."
+
+#: lilypond-score.cc:190
+msgid "Quantifying columns..."
+msgstr "Quantification des colonnes..."
+
+#: lilypond-score.cc:223
+msgid "Settling columns..."
+msgstr ""
+
+#: lilypond-staff.cc:209
+msgid "% MIDI copyright:"
+msgstr ""
+
+#: lilypond-staff.cc:210
+#, fuzzy
+msgid "% MIDI instrument:"
+msgstr "Pas d'instrument tel: `%s'"
+
+#: lilypond-stream.cc:37
+#, c-format
+msgid "lily indent level: %d"
+msgstr "Niveau d'indentation de lily: %d"
+
+#. Maybe better not to translate these?
+#: lilypond-stream.cc:83
+msgid "% Creator: "
+msgstr "% Auteur: "
+
+#: lilypond-stream.cc:88
+msgid "% Automatically generated"
+msgstr "% Généré automatiquement"
+
+#: lilypond-stream.cc:97
+#, c-format
+msgid "% from input file: "
+msgstr "% dal file di input: "
+
#: main.cc:93
msgid "write exact durations, e.g.: a4*385/384"
msgstr ""
msgid "set smallest duration"
msgstr "Positionne la plus petite durée (?)"
+#: main.cc:103
+msgid "don't timestamp the output"
+msgstr ""
+
#: main.cc:105
msgid "be verbose"
msgstr ""
#: main.cc:116
#, fuzzy
-msgid "Translate MIDI-file to mudela"
+msgid "Translate MIDI-file to lilypond"
msgstr "Traduction du fichier MIDI en mudela"
#: main.cc:130
msgid "invalid track length"
msgstr "taille de piste invalide"
-#: mudela-item.cc:161
-#, c-format
-msgid "#32 in quarter: %d"
-msgstr ""
-
-#: mudela-score.cc:108
-#, c-format
-msgid "Lily output to %s..."
-msgstr "Sortie de Lily vers %s..."
-
-#: mudela-score.cc:119
-#, fuzzy, c-format
-msgid "track %d:"
-msgstr "piste "
-
-#: mudela-score.cc:155
-msgid "Processing..."
-msgstr "Traitement..."
-
-#: mudela-score.cc:164
-msgid "Creating voices..."
-msgstr "Création des voix..."
-
-#: mudela-score.cc:168
-msgid "track "
-msgstr "piste "
-
-#: mudela-score.cc:177
-msgid "NOT Filtering tempo..."
-msgstr "PAS de filtrage du tempo..."
-
-#: mudela-score.cc:186
-msgid "NOT Quantifying columns..."
-msgstr "PAS de quantification des colonnes..."
-
-#: mudela-score.cc:190
-msgid "Quantifying columns..."
-msgstr "Quantification des colonnes..."
-
-#: mudela-score.cc:223
-msgid "Settling columns..."
-msgstr ""
-
-#: mudela-staff.cc:209
-msgid "% MIDI copyright:"
-msgstr ""
-
-#: mudela-staff.cc:210
-#, fuzzy
-msgid "% MIDI instrument:"
-msgstr "Pas d'instrument tel: `%s'"
-
-#: mudela-stream.cc:37
-#, c-format
-msgid "lily indent level: %d"
-msgstr "Niveau d'indentation de lily: %d"
-
-#. Maybe better not to translate these?
-#: mudela-stream.cc:83
-msgid "% Creator: "
-msgstr "% Auteur: "
-
-#: mudela-stream.cc:88
-msgid "% Automatically generated"
-msgstr "% Généré automatiquement"
-
-#: mudela-stream.cc:97
-#, c-format
-msgid "% from input file: "
-msgstr "% dal file di input: "
-
#, fuzzy
#~ msgid "Dependency file left in `%s'"
#~ msgstr "impossible d'ouvrir le fichier: `%s'"
#~ msgid "No key name, assuming `C'"
#~ msgstr "Pas de nom de clé: Do assumé"
-#, fuzzy
-#~ msgid "Don't know how handle empty keys"
-#~ msgstr "ne sait pas traiter les clés vides"
-
#, fuzzy
#~ msgid "out of tune:"
#~ msgstr "hors de la tonalité"
#, fuzzy
msgid ""
msgstr ""
-"POT-Creation-Date: 2001-03-06 12:36+0100\n"
+"POT-Creation-Date: 2001-03-21 16:06+0100\n"
"Content-Type: text/plain; charset=ISO-8859-1\n"
"Date: 1998-05-30 00:17:12+0200\n"
"From: <jantien@xs4all.nl>\n"
"--output-dir=../po/out --add-comments --keyword=_ --keyword=_f\n"
"Files: bow.cc int.cc\n"
-#: ly2dvi.py:67 main.cc:95 main.cc:109
+#: ly2dvi.py:86 main.cc:95 main.cc:105
msgid "this help"
msgstr ""
-#: ly2dvi.py:68
+#: ly2dvi.py:87
msgid "change global setting KEY to VAL"
msgstr ""
-#: ly2dvi.py:69
+#: ly2dvi.py:88
#, fuzzy
msgid "generate PostScript output"
msgstr "vincoli degenerati"
-#: ly2dvi.py:70
+#: ly2dvi.py:89
msgid "keep all output, and name the directory ly2dvi.dir"
msgstr ""
-#: ly2dvi.py:71
+#: ly2dvi.py:90
msgid "don't run LilyPond"
msgstr ""
-#: ly2dvi.py:72 main.cc:104 main.cc:119
+#: ly2dvi.py:91 main.cc:115
+msgid "verbose"
+msgstr ""
+
+#: ly2dvi.py:92 main.cc:104 main.cc:114
msgid "print version number"
msgstr ""
-#: ly2dvi.py:73 main.cc:106 main.cc:121
+#: ly2dvi.py:93 main.cc:106 main.cc:116
#, fuzzy
msgid "show warranty and copyright"
msgstr " -w, --warranty mostra la garanzia e il copyright\n"
-#: ly2dvi.py:74
+#: ly2dvi.py:94
msgid "dump all final output into DIR"
msgstr ""
-#: ly2dvi.py:75 main.cc:113
+#: ly2dvi.py:95 main.cc:109
#, fuzzy
msgid "write Makefile dependencies for every input file"
msgstr ""
" -d, --dependencies scrive le dependenze del Makefile per ogni file di "
"input\n"
-#: ly2dvi.py:101
+#: data-file.cc:118 input.cc:85 ly2dvi.py:123 midi-parser.cc:100 warn.cc:23
+msgid "warning: "
+msgstr "attenzione: "
+
+#: input.cc:90 ly2dvi.py:128 ly2dvi.py:263 warn.cc:9 warn.cc:17
+msgid "error: "
+msgstr "errore: "
+
+#: ly2dvi.py:130
msgid "Exiting ... "
msgstr ""
-#: ly2dvi.py:120
-#, c-format
-msgid "Reading `%s'"
-msgstr ""
+#: ly2dvi.py:149
+#, fuzzy, c-format
+msgid "Reading %s..."
+msgstr "Genero le voci..."
-#: ly2dvi.py:124 mapped-file-storage.cc:87 mudela-stream.cc:111
+#: lilypond-stream.cc:111 ly2dvi.py:153 mapped-file-storage.cc:87
#: paper-stream.cc:40 scores.cc:48 simple-file-storage.cc:44 text-stream.cc:23
#, c-format
msgid "can't open file: `%s'"
msgstr "non posso aprire il file: `%s'"
-#: ly2dvi.py:187
+#: ly2dvi.py:216
#, fuzzy, c-format
msgid "Usage: %s [OPTION]... FILE"
msgstr "Uso: %s [OPZIONE... [FILE]"
-#: ly2dvi.py:189
+#: ly2dvi.py:218
msgid "Generate .dvi with LaTeX for LilyPond"
msgstr ""
-#: ly2dvi.py:191 main.cc:119 main.cc:151
+#: ly2dvi.py:220 main.cc:119 main.cc:146
msgid "Options:"
msgstr "Opzioni: "
-#: data-file.cc:118 input.cc:85 ly2dvi.py:195 midi-parser.cc:100 warn.cc:23
-msgid "warning: "
-msgstr "attenzione: "
-
-#: ly2dvi.py:196
+#: ly2dvi.py:224
msgid "all output is written in the CURRENT directory"
msgstr ""
-#: ly2dvi.py:198 main.cc:123 main.cc:174
+#: ly2dvi.py:226 main.cc:123 main.cc:169
#, c-format
msgid "Report bugs to %s"
msgstr ""
-#: ly2dvi.py:230
+#: ly2dvi.py:260
#, c-format
msgid "Invoking `%s'"
msgstr ""
-#: input.cc:90 ly2dvi.py:234 warn.cc:9 warn.cc:17
-msgid "error: "
-msgstr "errore: "
-
-#: ly2dvi.py:234
+#: ly2dvi.py:263
#, c-format
msgid "command exited with value %d"
msgstr ""
-#: ly2dvi.py:236
+#: ly2dvi.py:265
msgid "(ignored)"
msgstr ""
-#: ly2dvi.py:277
+#: ly2dvi.py:301
+#, fuzzy, c-format
+msgid "no such setting: %s"
+msgstr "% strumento:"
+
+#: ly2dvi.py:309
#, c-format
msgid "Analyzing `%s'"
msgstr ""
-#: ly2dvi.py:539 scores.cc:44
+#: ly2dvi.py:353
+#, c-format
+msgid "no lilypond output found for %s"
+msgstr ""
+
+#: ly2dvi.py:395
+#, fuzzy, c-format
+msgid "invalid value: %s"
+msgstr "carattere illegale: `%c'"
+
+#: ly2dvi.py:602 scores.cc:44
#, fuzzy, c-format
msgid "dependencies output to %s..."
msgstr "L'output stampato è inviato a %s..."
-#: ly2dvi.py:540
-#, c-format
-msgid "%s file left in `%s'"
-msgstr ""
+#: ly2dvi.py:603
+#, fuzzy, c-format
+msgid "%s output to %s..."
+msgstr "L'output MIDI è inviato a %s..."
#: data-file.cc:54
msgid "EOF in a string"
msgid "can't find default font: `%s'"
msgstr "non trovo il file: `%s'"
-#: all-font-metrics.cc:172 includable-lexer.cc:50 scores.cc:137
+#: all-font-metrics.cc:172 includable-lexer.cc:51 scores.cc:137
#, fuzzy, c-format
msgid "(search path: `%s')"
msgstr "(Il path di caricamento è `%s'"
-#: all-font-metrics.cc:173 parser.yy:1663
+#: all-font-metrics.cc:173 parser.yy:1681
msgid "Giving up"
msgstr ""
msgid "invalid inversion pitch: not part of chord: %s"
msgstr ""
-#: chord-tremolo-engraver.cc:141
+#: chord-tremolo-engraver.cc:141 percent-repeat-engraver.cc:162
#, fuzzy
msgid "unterminated chord tremolo"
msgstr "beam non terminato"
msgid "no one to print a tremolos"
msgstr ""
-#: collision.cc:116
+#: collision.cc:118
#, fuzzy
msgid "Too many clashing notecolumns. Ignoring them."
msgstr "Troppe collisioni tra colonne di note. Le ignoro."
msgid "already have a decrescendo"
msgstr "crescendo non terminato"
-#: dynamic-engraver.cc:307
+#: dynamic-engraver.cc:318
#, fuzzy
msgid "unterminated (de)crescendo"
msgstr "crescendo non terminato"
msgid "no one to print a repeat brace"
msgstr ""
-#: font-interface.cc:220
+#: font-interface.cc:237
msgid "couldn't find any font satisfying "
msgstr ""
msgid "Nothing to connect hyphen to on the left. Ignoring hyphen request."
msgstr ""
-#: includable-lexer.cc:48 lily-guile.cc:139 midi-score-parser.cc:24
+#: includable-lexer.cc:49 lily-guile.cc:139 midi-score-parser.cc:24
#: scores.cc:136 scores.cc:142
#, c-format
msgid "can't find file: `%s'"
msgid "Huh? Melismatic note found to have associated lyrics."
msgstr ""
-#: main.cc:108
+#: main.cc:104
msgid "EXT"
msgstr ""
-#: main.cc:108
+#: main.cc:104
msgid "use output format EXT (scm, ps, tex or as)"
msgstr ""
-#: main.cc:110
+#: main.cc:106
msgid "FIELD"
msgstr ""
-#: main.cc:110
+#: main.cc:106
msgid "write header field to BASENAME.FIELD"
msgstr ""
-#: main.cc:111 main.cc:114
+#: main.cc:107 main.cc:110
msgid "DIR"
msgstr ""
-#: main.cc:111
+#: main.cc:107
#, fuzzy
msgid "add DIR to search path"
msgstr " -I, --include=DIR aggiunge DIR ai path di ricerca\n"
-#: main.cc:98 main.cc:112
+#: main.cc:98 main.cc:108
msgid "FILE"
msgstr ""
-#: main.cc:112
+#: main.cc:108
#, fuzzy
msgid "use FILE as init file"
msgstr " -i, --init=NOMEFILE usa NOMEFILE come file iniziale\n"
-#: main.cc:114
+#: main.cc:110
msgid "prepend DIR to dependencies"
msgstr ""
-#: main.cc:115
+#: main.cc:111
#, fuzzy
msgid "produce MIDI output only"
msgstr " -M, --no-paper produce solo output midi\n"
-#: main.cc:116
+#: main.cc:112
msgid "NAME"
msgstr ""
-#: main.cc:116
+#: main.cc:112
msgid "write output to NAME"
msgstr ""
-#: main.cc:117
+#: main.cc:113
#, fuzzy
msgid "inhibit file output naming and exporting"
msgstr ""
" -s, --safe inibisce la rinomina dei file di output e "
"l'esportazione di macro di TeX\n"
-#: main.cc:103 main.cc:118
-#, fuzzy
-msgid "don't timestamp the output"
-msgstr ""
-" -T, --no-timestamps non inserisce marcatori temporali nell'output\n"
-
-#: main.cc:120
-msgid "verbose"
+#: main.cc:117
+msgid "EXPR"
msgstr ""
-#: main.cc:122
-msgid "write midi ouput in formatted ascii"
+#: main.cc:117
+msgid "evalute EXPR as Scheme after .scm init is read"
msgstr ""
#.
#. No version number or newline here. It confuses help2man
#.
-#: main.cc:139
+#: main.cc:134
#, c-format
msgid "Usage: %s [OPTION]... [FILE]..."
msgstr "Uso: %s [OPZIONE]... [FILE]..."
-#: main.cc:141
+#: main.cc:136
#, fuzzy
msgid "Typeset music and or play MIDI from FILE"
msgstr "Stampa partitura oppure suona una song MIDI da FILE o <stdin>"
-#: main.cc:145
+#: main.cc:140
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 ""
-#: main.cc:155
+#: main.cc:150
#, fuzzy
msgid "This binary was compiled with the following options:"
msgstr "GNU LilyPond è stata compilata con le seguenti impostazioni:"
-#: main.cc:55 main.cc:182
+#: main.cc:55 main.cc:177
#, c-format
msgid ""
"This is free software. It is covered by the GNU General Public License,\n"
"certain conditions. Invoke as `%s --warranty' for more information.\n"
msgstr ""
-#: main.cc:62 main.cc:189 main.cc:201
+#: main.cc:62 main.cc:184 main.cc:196
#, c-format
msgid "Copyright (c) %s by"
msgstr "Copyright (c) %s di"
-#: main.cc:199
+#: main.cc:194
#, fuzzy
msgid "GNU LilyPond -- The music typesetter"
msgstr "GNU LilyPond -- Il tipografo musicale del progetto GNU"
-#: main.cc:71 main.cc:207
+#: main.cc:71 main.cc:202
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"
msgid "Transposition by %s makes accidental larger than two"
msgstr "la trasposizine di %s rende le alterazioni più che doppie"
-#: music.cc:222
+#: music.cc:224
msgid "ly_get_mus_property (): Not a Music"
msgstr ""
-#: music.cc:236
+#: music.cc:238
msgid "ly_set_mus_property (): Not a symbol"
msgstr ""
-#: music.cc:248
+#: music.cc:250
msgid "ly_set_mus_property (): not of type Music"
msgstr ""
+#: music.cc:264
+msgid "ly_make_music (): Not a string"
+msgstr ""
+
+#: music.cc:284
+msgid "ly_music_name (): Not a music expression"
+msgstr ""
+
#: music-output-def.cc:115
#, fuzzy, c-format
msgid "can't find `%s' context"
msgstr "non trovo `%s'"
-#: my-lily-lexer.cc:137
+#: my-lily-lexer.cc:138
#, fuzzy, c-format
msgid "Identifier name is a keyword: `%s'"
msgstr "Il nome dell'identificatore è una parola chiave (`%s')"
-#: my-lily-lexer.cc:157
+#: my-lily-lexer.cc:158
#, c-format
msgid "error at EOF: %s"
msgstr "errore alla fine del file: %s"
msgid "Parsing..."
msgstr "Analisi..."
-#: my-lily-parser.cc:55
+#: my-lily-parser.cc:57
#, fuzzy
msgid "Braces don't match"
msgstr "le bretelle no si accoppiano"
msgid "paper output to %s..."
msgstr "L'output stampato è inviato a %s..."
-#: mudela-stream.cc:93 paper-outputter.cc:94 performance.cc:102
+#: lilypond-stream.cc:93 paper-outputter.cc:85 performance.cc:95
msgid ", at "
msgstr ", a "
-#: paper-outputter.cc:245
+#: paper-outputter.cc:232
#, fuzzy, c-format
msgid "writing header field %s to %s..."
msgstr "scrivo il file delle dipendenze: `%s'..."
msgid "Preprocessing elements..."
msgstr "Pre-elaborazione..."
-#: paper-score.cc:113
+#: paper-score.cc:114
#, fuzzy
msgid "Outputting Score, defined at: "
msgstr "emetto lo Score, definito a: "
msgid "none of these in my family: `%s'"
msgstr ""
+#: percent-repeat-engraver.cc:108
+#, fuzzy
+msgid "Don't know yet how to handle this percent repeat."
+msgstr "non so manipolare tasti vuoti"
+
+#: percent-repeat-iterator.cc:53
+msgid "no one to print a percent"
+msgstr ""
+
#: performance.cc:51
#, fuzzy
msgid "Track ... "
msgid "Creator: "
msgstr "Autore: "
-#: performance.cc:116
+#: performance.cc:109
#, c-format
msgid "from musical definition: %s"
msgstr "della definizione musicale: %s"
-#: performance.cc:171
+#: performance.cc:164
#, c-format
msgid "MIDI output to %s..."
msgstr "L'output MIDI è inviato a %s..."
msgid "elapsed time: %.2f seconds"
msgstr "durata: %.2f secondi"
-#: score-engraver.cc:177
+#: score-engraver.cc:183
#, fuzzy, c-format
msgid "unbound spanner `%s'"
msgstr "Spanner non legato `%s'"
msgid "unterminated slur"
msgstr "slur non terminato"
-#: slur-engraver.cc:142
+#. How to shut up this warning, when Voice_devnull_engraver has
+#. eaten start request?
+#: slur-engraver.cc:144
#, fuzzy
msgid "can't find start of slur"
msgstr "non trovo le estremità di %s"
msgid "can't find ascii character: %d"
msgstr "non riesco a trovare il carattere `%s'"
-#: tfm-reader.cc:105
+#: tfm-reader.cc:106
#, c-format
-msgid "TFM header of `%s' has only %u word(s)"
+msgid "TFM header of `%s' has only %u word (s)"
msgstr ""
-#: tfm-reader.cc:139
+#: tfm-reader.cc:140
#, c-format
msgid "%s: TFM file has %u parameters, which is more than the %u I can handle"
msgstr ""
-#: tie-engraver.cc:211 tie-performer.cc:173
+#. How to shut up this warning, when no notes appeared because
+#. they were suicided by Thread_devnull_engraver?
+#: tie-engraver.cc:215 tie-performer.cc:173
msgid "No ties were created!"
msgstr ""
-#: tie-engraver.cc:230
+#: tie-engraver.cc:234
msgid "lonely tie"
msgstr ""
msgid "unknown translator: `%s'"
msgstr "traduttore sconosciuto `%s'"
-#: translator-def.cc:96
+#: translator-def.cc:99
msgid "Program has no such type"
msgstr ""
-#: translator-def.cc:102
+#: translator-def.cc:105
#, c-format
msgid "Already contains: `%s'"
msgstr ""
-#: translator-def.cc:103
+#: translator-def.cc:106
#, fuzzy, c-format
msgid "Not adding translator: `%s'"
msgstr "traduttore sconosciuto `%s'"
-#: translator-def.cc:215
+#: translator-def.cc:224
#, fuzzy, c-format
msgid "can't find: `%s'"
msgstr "non trovo `%s'"
msgid "can't find or create: `%s'"
msgstr "non trovo e non posso creare `%s'"
-#: translator-group.cc:403
+#: translator-group.cc:414
#, c-format
msgid ""
"Can't find property type-check for `%s'. Perhaps you made a typing error?"
msgstr ""
-#: translator-group.cc:417
+#: translator-group.cc:428
#, c-format
msgid "Type check for `%s' failed; value `%s' must be of type `%s'"
msgstr ""
#. programming_error?
-#: translator-group.cc:436
+#: translator-group.cc:447
msgid "ly-get-trans-property: expecting a Translator_group argument"
msgstr ""
msgid "Oldest supported input version: %s"
msgstr ""
-#: parser.yy:471
+#: parser.yy:473
msgid "Wrong type for property value"
msgstr "Tipo sbagliato per il valore di una proprietà"
-#: parser.yy:666
+#: parser.yy:672
msgid "More alternatives than repeats. Junking excess alternatives."
msgstr ""
-#: parser.yy:730
+#: parser.yy:736
msgid "Second argument must be a symbol"
msgstr ""
-#: parser.yy:735
+#: parser.yy:741
msgid "First argument must be a procedure taking 1 argument"
msgstr ""
-#: parser.yy:1211
+#: parser.yy:1236
msgid "Expecting string as script definition"
msgstr ""
-#: parser.yy:1221
+#: parser.yy:1246
msgid "Can't specify direction for this request"
msgstr ""
-#: parser.yy:1353
+#: parser.yy:1371
msgid "Expecting musical-pitch value"
msgstr ""
-#: parser.yy:1364
+#: parser.yy:1382
#, fuzzy
msgid "Must have duration object"
msgstr "indicazione durata priva di senso"
-#: parser.yy:1373 parser.yy:1381 parser.yy:1661
+#: parser.yy:1391 parser.yy:1399 parser.yy:1679
#, fuzzy
msgid "Have to be in Lyric mode for lyrics"
msgstr "bisogna essere in Lyric mode per i testi"
-#: parser.yy:1546 parser.yy:1575
+#: parser.yy:1564 parser.yy:1593
#, c-format
msgid "not a duration: %d"
msgstr "non è una durata: %d"
-#: parser.yy:1584
+#: parser.yy:1602
#, fuzzy
msgid "Have to be in Note mode for notes"
msgstr "bisogna essere in Note mode per le note"
-#: parser.yy:1680
+#: parser.yy:1698
#, fuzzy
msgid "Have to be in Chord mode for chords"
msgstr "bisogna essere in Chord mode per gli accordi"
-#: parser.yy:1842 parser.yy:1860
+#: parser.yy:1860 parser.yy:1878
msgid "need integer number arg"
msgstr ""
-#: parser.yy:1846
+#: parser.yy:1864
msgid "Must be positive integer"
msgstr ""
-#: lexer.ll:165
+#: lexer.ll:166
msgid "EOF found inside a comment"
msgstr "ho trovato un EOF in un commento"
-#: lexer.ll:179
+#: lexer.ll:180
msgid "\\maininput disallowed outside init files"
msgstr ""
-#: lexer.ll:203
+#: lexer.ll:204
#, fuzzy, c-format
msgid "wrong or undefined identifier: `%s'"
msgstr "indentificatore non definito: `%s'"
#. backup rule
-#: lexer.ll:208
+#: lexer.ll:209
#, fuzzy
msgid "Missing end quote"
msgstr "apice finale mancante"
#. backup rule
-#: lexer.ll:230 lexer.ll:234
+#: lexer.ll:231 lexer.ll:235
msgid "white expected"
msgstr "aspettavo uno spazio bianco"
-#: lexer.ll:243
+#: lexer.ll:244
msgid "Can't evaluate Scheme in safe mode"
msgstr ""
-#: lexer.ll:335
+#: lexer.ll:336
msgid "Brace found at end of lyric. Did you forget a space?"
msgstr ""
-#: lexer.ll:439
+#: lexer.ll:440
#, fuzzy, c-format
msgid "invalid character: `%c'"
msgstr "carattere illegale: `%c'"
-#: lexer.ll:520
+#: lexer.ll:521
#, c-format
msgid "unknown escaped string: `\\%s'"
msgstr "stringa di escape sconosciuta: `\\%s'"
-#: lexer.ll:602
+#: lexer.ll:603
#, fuzzy, c-format
msgid "incorrect lilypond version: %s (%s, %s)"
msgstr "versione di mudela errata: %s (%s, %s)"
-#: lexer.ll:603
+#: lexer.ll:604
msgid "Consider converting the input with the convert-ly script"
msgstr ""
+#: lilypond-item.cc:161
+#, c-format
+msgid "#32 in quarter: %d"
+msgstr "#32 in un quarto: %d"
+
+#: lilypond-score.cc:108
+#, c-format
+msgid "Lily output to %s..."
+msgstr "Output di Lily in %s..."
+
+#: lilypond-score.cc:119
+#, fuzzy, c-format
+msgid "track %d:"
+msgstr "traccia "
+
+#: lilypond-score.cc:155
+msgid "Processing..."
+msgstr "Elaboro..."
+
+#: lilypond-score.cc:164
+msgid "Creating voices..."
+msgstr "Genero le voci..."
+
+#: lilypond-score.cc:168
+msgid "track "
+msgstr "traccia "
+
+#: lilypond-score.cc:177
+msgid "NOT Filtering tempo..."
+msgstr "NON filtro il tempo..."
+
+#: lilypond-score.cc:186
+msgid "NOT Quantifying columns..."
+msgstr "NON quantifico le colonne..."
+
+#: lilypond-score.cc:190
+msgid "Quantifying columns..."
+msgstr "Quantifico le colonne..."
+
+#: lilypond-score.cc:223
+msgid "Settling columns..."
+msgstr "Sistemo le colonne..."
+
+#: lilypond-staff.cc:209
+msgid "% MIDI copyright:"
+msgstr ""
+
+#: lilypond-staff.cc:210
+#, fuzzy
+msgid "% MIDI instrument:"
+msgstr "% strumento:"
+
+#: lilypond-stream.cc:37
+#, c-format
+msgid "lily indent level: %d"
+msgstr "livello di indentazione di lili: %d"
+
+#. Maybe better not to translate these?
+#: lilypond-stream.cc:83
+msgid "% Creator: "
+msgstr "% Autore: "
+
+#: lilypond-stream.cc:88
+msgid "% Automatically generated"
+msgstr "% Generato automaticamente"
+
+#: lilypond-stream.cc:97
+#, c-format
+msgid "% from input file: "
+msgstr "% dal file di input: "
+
#: main.cc:93
#, fuzzy
msgid "write exact durations, e.g.: a4*385/384"
msgid "set smallest duration"
msgstr "indicazione durata priva di senso"
+#: main.cc:103
+#, fuzzy
+msgid "don't timestamp the output"
+msgstr ""
+" -T, --no-timestamps non inserisce marcatori temporali nell'output\n"
+
#: main.cc:105
msgid "be verbose"
msgstr ""
#: main.cc:116
#, fuzzy
-msgid "Translate MIDI-file to mudela"
+msgid "Translate MIDI-file to lilypond"
msgstr "Traduce un file midi in mudela"
#: main.cc:130
msgid "invalid track length"
msgstr "lunghezza della traccia non valida"
-#: mudela-item.cc:161
-#, c-format
-msgid "#32 in quarter: %d"
-msgstr "#32 in un quarto: %d"
-
-#: mudela-score.cc:108
-#, c-format
-msgid "Lily output to %s..."
-msgstr "Output di Lily in %s..."
-
-#: mudela-score.cc:119
-#, fuzzy, c-format
-msgid "track %d:"
-msgstr "traccia "
-
-#: mudela-score.cc:155
-msgid "Processing..."
-msgstr "Elaboro..."
-
-#: mudela-score.cc:164
-msgid "Creating voices..."
-msgstr "Genero le voci..."
-
-#: mudela-score.cc:168
-msgid "track "
-msgstr "traccia "
-
-#: mudela-score.cc:177
-msgid "NOT Filtering tempo..."
-msgstr "NON filtro il tempo..."
-
-#: mudela-score.cc:186
-msgid "NOT Quantifying columns..."
-msgstr "NON quantifico le colonne..."
-
-#: mudela-score.cc:190
-msgid "Quantifying columns..."
-msgstr "Quantifico le colonne..."
-
-#: mudela-score.cc:223
-msgid "Settling columns..."
-msgstr "Sistemo le colonne..."
-
-#: mudela-staff.cc:209
-msgid "% MIDI copyright:"
-msgstr ""
-
-#: mudela-staff.cc:210
-#, fuzzy
-msgid "% MIDI instrument:"
-msgstr "% strumento:"
-
-#: mudela-stream.cc:37
-#, c-format
-msgid "lily indent level: %d"
-msgstr "livello di indentazione di lili: %d"
-
-#. Maybe better not to translate these?
-#: mudela-stream.cc:83
-msgid "% Creator: "
-msgstr "% Autore: "
-
-#: mudela-stream.cc:88
-msgid "% Automatically generated"
-msgstr "% Generato automaticamente"
-
-#: mudela-stream.cc:97
-#, c-format
-msgid "% from input file: "
-msgstr "% dal file di input: "
-
#, fuzzy
#~ msgid "Dependency file left in `%s'"
#~ msgstr "scrivo il file delle dipendenze: `%s'..."
#~ msgid "No key name, assuming `C'"
#~ msgstr "Nessuna armatura di chiave: assumo Do'"
-#, fuzzy
-#~ msgid "Don't know how handle empty keys"
-#~ msgstr "non so manipolare tasti vuoti"
-
#, fuzzy
#~ msgid "out of tune:"
#~ msgstr "stonato"
msgid ""
msgstr ""
"Project-Id-Version: lilypond 1.2.17\n"
-"POT-Creation-Date: 2001-03-06 12:36+0100\n"
+"POT-Creation-Date: 2001-03-21 16:06+0100\n"
"PO-Revision-Date: 2000-03-29 20:50+0900\n"
"Last-Translator: Daisuke Yamashita <yamad@mb.infoweb.ne.jp>\n"
"Language-Team: Japanese <ja@li.org>\n"
"Content-Type: text/plain; charset=EUC-JP\n"
"Content-Transfer-Encoding: 8bit\n"
-#: ly2dvi.py:67 main.cc:95 main.cc:109
+#: ly2dvi.py:86 main.cc:95 main.cc:105
msgid "this help"
msgstr "¤³¤Î¥Ø¥ë¥×"
-#: ly2dvi.py:68
+#: ly2dvi.py:87
msgid "change global setting KEY to VAL"
msgstr ""
-#: ly2dvi.py:69
+#: ly2dvi.py:88
#, fuzzy
msgid "generate PostScript output"
msgstr "À©¸Â¤ò´ËÏÂ"
-#: ly2dvi.py:70
+#: ly2dvi.py:89
msgid "keep all output, and name the directory ly2dvi.dir"
msgstr ""
-#: ly2dvi.py:71
+#: ly2dvi.py:90
msgid "don't run LilyPond"
msgstr ""
-#: ly2dvi.py:72 main.cc:104 main.cc:119
+#: ly2dvi.py:91 main.cc:115
+#, fuzzy
+msgid "verbose"
+msgstr "¾ÜºÙ¤Ê¾ðÊó¤òɽ¼¨¤·¤Þ¤¹"
+
+#: ly2dvi.py:92 main.cc:104 main.cc:114
msgid "print version number"
msgstr "¥Ð¡¼¥¸¥ç¥óÈÖ¹æ¤òɽ¼¨"
-#: ly2dvi.py:73 main.cc:106 main.cc:121
+#: ly2dvi.py:93 main.cc:106 main.cc:116
msgid "show warranty and copyright"
msgstr "ÊݾڤÈÃøºî¸¢¤Ë¤Ä¤¤¤Æɽ¼¨¤¹¤ë"
-#: ly2dvi.py:74
+#: ly2dvi.py:94
msgid "dump all final output into DIR"
msgstr ""
-#: ly2dvi.py:75 main.cc:113
+#: ly2dvi.py:95 main.cc:109
msgid "write Makefile dependencies for every input file"
msgstr "Á´¤Æ¤ÎÆþÎÏ¥Õ¥¡¥¤¥ë¤Î Makefile °Í¸´Ø·¸¤ò½ñ¤¹þ¤à"
-#: ly2dvi.py:101
+#: data-file.cc:118 input.cc:85 ly2dvi.py:123 midi-parser.cc:100 warn.cc:23
+msgid "warning: "
+msgstr "·Ù¹ð: "
+
+#: input.cc:90 ly2dvi.py:128 ly2dvi.py:263 warn.cc:9 warn.cc:17
+msgid "error: "
+msgstr "¥¨¥é¡¼: "
+
+#: ly2dvi.py:130
#, fuzzy
msgid "Exiting ... "
msgstr "¹Ô ..."
-#: ly2dvi.py:120
+#: ly2dvi.py:149
#, fuzzy, c-format
-msgid "Reading `%s'"
+msgid "Reading %s..."
msgstr "Í×µá¤ò¼Î¤Æ¤Þ¤¹: `%s'"
-#: ly2dvi.py:124 mapped-file-storage.cc:87 mudela-stream.cc:111
+#: lilypond-stream.cc:111 ly2dvi.py:153 mapped-file-storage.cc:87
#: paper-stream.cc:40 scores.cc:48 simple-file-storage.cc:44 text-stream.cc:23
#, fuzzy, c-format
msgid "can't open file: `%s'"
msgstr "¥Õ¥¡¥¤¥ë¤ò³«¤±¤Þ¤»¤ó: `%s'"
-#: ly2dvi.py:187
+#: ly2dvi.py:216
#, fuzzy, c-format
msgid "Usage: %s [OPTION]... FILE"
msgstr "»È¤¤Êý: %s [¥ª¥×¥·¥ç¥ó]... [¥Õ¥¡¥¤¥ë]"
-#: ly2dvi.py:189
+#: ly2dvi.py:218
msgid "Generate .dvi with LaTeX for LilyPond"
msgstr ""
-#: ly2dvi.py:191 main.cc:119 main.cc:151
+#: ly2dvi.py:220 main.cc:119 main.cc:146
msgid "Options:"
msgstr "¥ª¥×¥·¥ç¥ó:"
-#: data-file.cc:118 input.cc:85 ly2dvi.py:195 midi-parser.cc:100 warn.cc:23
-msgid "warning: "
-msgstr "·Ù¹ð: "
-
-#: ly2dvi.py:196
+#: ly2dvi.py:224
msgid "all output is written in the CURRENT directory"
msgstr ""
-#: ly2dvi.py:198 main.cc:123 main.cc:174
+#: ly2dvi.py:226 main.cc:123 main.cc:169
#, c-format
msgid "Report bugs to %s"
msgstr "¥Ð¥°¥ì¥Ý¡¼¥È¤Ï %s ¤Ø"
-#: ly2dvi.py:230
+#: ly2dvi.py:260
#, fuzzy, c-format
msgid "Invoking `%s'"
msgstr "Í×µá¤ò¼Î¤Æ¤Þ¤¹: `%s'"
-#: input.cc:90 ly2dvi.py:234 warn.cc:9 warn.cc:17
-msgid "error: "
-msgstr "¥¨¥é¡¼: "
-
-#: ly2dvi.py:234
+#: ly2dvi.py:263
#, c-format
msgid "command exited with value %d"
msgstr ""
-#: ly2dvi.py:236
+#: ly2dvi.py:265
msgid "(ignored)"
msgstr ""
-#: ly2dvi.py:277
+#: ly2dvi.py:301
+#, fuzzy, c-format
+msgid "no such setting: %s"
+msgstr "¤½¤ÎÍͤʳڴï¤Ï¤¢¤ê¤Þ¤»¤ó: `%s'"
+
+#: ly2dvi.py:309
#, c-format
msgid "Analyzing `%s'"
msgstr ""
-#: ly2dvi.py:539 scores.cc:44
+#: ly2dvi.py:353
+#, c-format
+msgid "no lilypond output found for %s"
+msgstr ""
+
+#: ly2dvi.py:395
+#, fuzzy, c-format
+msgid "invalid value: %s"
+msgstr "̵¸ú¤Êʸ»ú: `%c'"
+
+#: ly2dvi.py:602 scores.cc:44
#, fuzzy, c-format
msgid "dependencies output to %s..."
msgstr "%s ¤Ø paper ½ÐÎÏ..."
-#: ly2dvi.py:540
-#, c-format
-msgid "%s file left in `%s'"
-msgstr ""
+#: ly2dvi.py:603
+#, fuzzy, c-format
+msgid "%s output to %s..."
+msgstr "%s ¤Ø¤Î MIDI ½ÐÎÏ"
#: data-file.cc:54
msgid "EOF in a string"
msgid "can't find default font: `%s'"
msgstr "¥Ç¥Õ¥©¥ë¥È¥Õ¥©¥ó¥È¤¬¸«¤Ä¤«¤ê¤Þ¤»¤ó: `%s'"
-#: all-font-metrics.cc:172 includable-lexer.cc:50 scores.cc:137
+#: all-font-metrics.cc:172 includable-lexer.cc:51 scores.cc:137
#, c-format
msgid "(search path: `%s')"
msgstr "(¸¡º÷¥Ñ¥¹: `%s')"
-#: all-font-metrics.cc:173 parser.yy:1663
+#: all-font-metrics.cc:173 parser.yy:1681
msgid "Giving up"
msgstr "Äü¤á¤Þ¤·¤¿"
msgid "invalid inversion pitch: not part of chord: %s"
msgstr "̵¸ú¤Êž²ó¥Ô¥Ã¥Á: ¥³¡¼¥É¤Î°ìÉô¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó: %s"
-#: chord-tremolo-engraver.cc:141
+#: chord-tremolo-engraver.cc:141 percent-repeat-engraver.cc:162
#, fuzzy
msgid "unterminated chord tremolo"
msgstr "½ªÃ¼¤Î¤Ê¤¤¥Ï¥¤¥Õ¥ó"
msgid "no one to print a tremolos"
msgstr "È¿Éüµ¹æ¤òɽ¼¨¤¹¤ë¤â¤Î¤¬¤¢¤ê¤Þ¤»¤ó"
-#: collision.cc:116
+#: collision.cc:118
msgid "Too many clashing notecolumns. Ignoring them."
msgstr "Äà¤ê¹ç¤ï¤Ê¤¤²»É䤬¿¤¹¤®¤Þ¤¹¡£¤½¤ì¤é¤ò̵»ë¤·¤Þ¤¹¡£"
msgid "already have a decrescendo"
msgstr "´û¤Ë³Ã¤¬¤¢¤ê¤Þ¤¹"
-#: dynamic-engraver.cc:307
+#: dynamic-engraver.cc:318
#, fuzzy
msgid "unterminated (de)crescendo"
msgstr "½ªÎ»¤·¤Æ¤¤¤Ê¤¤¥¯¥ì¥Ã¥·¥§¥ó¥É"
msgid "no one to print a repeat brace"
msgstr "È¿Éüµ¹æ¤òɽ¼¨¤¹¤ë¤â¤Î¤¬¤¢¤ê¤Þ¤»¤ó"
-#: font-interface.cc:220
+#: font-interface.cc:237
msgid "couldn't find any font satisfying "
msgstr ""
msgid "Nothing to connect hyphen to on the left. Ignoring hyphen request."
msgstr "º¸Â¦¤Ë·Ò¤²¤ë¥Ï¥¤¥Õ¥ó¤¬¤¢¤ê¤Þ¤»¤ó¡£¥Ï¥¤¥Õ¥ó¤ÎÍ×µá¤ò̵»ë¤·¤Þ¤¹"
-#: includable-lexer.cc:48 lily-guile.cc:139 midi-score-parser.cc:24
+#: includable-lexer.cc:49 lily-guile.cc:139 midi-score-parser.cc:24
#: scores.cc:136 scores.cc:142
#, fuzzy, c-format
msgid "can't find file: `%s'"
msgid "Huh? Melismatic note found to have associated lyrics."
msgstr ""
-#: main.cc:108
+#: main.cc:104
msgid "EXT"
msgstr "EXT"
-#: main.cc:108
+#: main.cc:104
#, fuzzy
msgid "use output format EXT (scm, ps, tex or as)"
msgstr "½ÐÎÏ¥Õ¥©¡¼¥Þ¥Ã¥È EXT ¤ò»È¤¦"
-#: main.cc:110
+#: main.cc:106
#, fuzzy
msgid "FIELD"
msgstr "FILE"
-#: main.cc:110
+#: main.cc:106
msgid "write header field to BASENAME.FIELD"
msgstr ""
-#: main.cc:111 main.cc:114
+#: main.cc:107 main.cc:110
msgid "DIR"
msgstr "DIR"
-#: main.cc:111
+#: main.cc:107
msgid "add DIR to search path"
msgstr "DIR ¤ò¸¡º÷¥Ñ¥¹¤ËÄɲÃ"
-#: main.cc:98 main.cc:112
+#: main.cc:98 main.cc:108
msgid "FILE"
msgstr "FILE"
-#: main.cc:112
+#: main.cc:108
msgid "use FILE as init file"
msgstr "FILE ¤ò½é´ü²½¥Õ¥¡¥¤¥ë¤È¤·¤Æ»ÈÍÑ"
-#: main.cc:114
+#: main.cc:110
msgid "prepend DIR to dependencies"
msgstr ""
-#: main.cc:115
+#: main.cc:111
msgid "produce MIDI output only"
msgstr "MIDI ½ÐÎϤÎÀ¸À®¤Î¤ß"
-#: main.cc:116
+#: main.cc:112
#, fuzzy
msgid "NAME"
msgstr "BASENAME"
-#: main.cc:116
+#: main.cc:112
#, fuzzy
msgid "write output to NAME"
msgstr "BASENAME[-x].³ÈÄ¥»Ò ¤Ø½ÐÎϤò½ñ¤¹þ¤à"
-#: main.cc:117
+#: main.cc:113
msgid "inhibit file output naming and exporting"
msgstr "̾Á°ÉÕ¤±¤È¥¨¥¯¥¹¥Ý¡¼¥È¤Î½ÐÎÏ¥Õ¥¡¥¤¥ë¤òÍÞÀ©¤¹¤ë"
-#: main.cc:103 main.cc:118
-msgid "don't timestamp the output"
-msgstr "½ÐÎϤ˥¿¥¤¥à¥¹¥¿¥ó¥×¤ò¤Ä¤±¤Ê¤¤"
-
-#: main.cc:120
-#, fuzzy
-msgid "verbose"
-msgstr "¾ÜºÙ¤Ê¾ðÊó¤òɽ¼¨¤·¤Þ¤¹"
+#: main.cc:117
+msgid "EXPR"
+msgstr ""
-#: main.cc:122
-msgid "write midi ouput in formatted ascii"
+#: main.cc:117
+msgid "evalute EXPR as Scheme after .scm init is read"
msgstr ""
#.
#. No version number or newline here. It confuses help2man
#.
-#: main.cc:139
+#: main.cc:134
#, c-format
msgid "Usage: %s [OPTION]... [FILE]..."
msgstr "»È¤¤Êý: %s [¥ª¥×¥·¥ç¥ó]... [¥Õ¥¡¥¤¥ë]..."
-#: main.cc:141
+#: main.cc:136
msgid "Typeset music and or play MIDI from FILE"
msgstr "¥Õ¥¡¥¤¥ë¤Î³Ú¶Ê¤òÁÈÈǤ·¤¿¤ê¡¢MIDI ±éÁÕ¤·¤¿¤ê¤¹¤ë"
-#: main.cc:145
+#: main.cc:140
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"
"Èþ¤·¤¤ÉèÌ̤òºîÀ®¤¹¤ë¤³¤È¤¬¤Ç¤¤Þ¤¹¡£LilyPond ¤Ï GNU "
"¥×¥í¥¸¥§¥¯¥È¤Î°ìÉô¤Ç¤¹¡£\n"
-#: main.cc:155
+#: main.cc:150
msgid "This binary was compiled with the following options:"
msgstr "¤³¤Î¥Ð¥¤¥Ê¥ê¤Ï°Ê²¼¤Î¥ª¥×¥·¥ç¥óÉÕ¤¤Ç¥³¥ó¥Ñ¥¤¥ë¤µ¤ì¤Þ¤·¤¿"
-#: main.cc:55 main.cc:182
+#: main.cc:55 main.cc:177
#, c-format
msgid ""
"This is free software. It is covered by the GNU General Public License,\n"
"¤³¤ì¤ò²þÊѤ·¤¿¤ê¡¢Ê£À½¤òÇÛÉÛ¤·¤¿¤ê¤¹¤ë»ö¤Ï´¿·Þ¤µ¤ì¤Þ¤¹¡£\n"
"`--warranty' ¥ª¥×¥·¥ç¥óÉÕ¤¤Çµ¯Æ°¤¹¤ë¤È¡¢¤è¤ê¾ÜºÙ¤Ê¾ðÊó¤¬ÆÀ¤é¤ì¤Þ¤¹¡£\n"
-#: main.cc:62 main.cc:189 main.cc:201
+#: main.cc:62 main.cc:184 main.cc:196
#, c-format
msgid "Copyright (c) %s by"
msgstr "Copyright (c) %s by"
-#: main.cc:199
+#: main.cc:194
#, fuzzy
msgid "GNU LilyPond -- The music typesetter"
msgstr "GNU LilyPond -- The GNU Project music typesetter"
-#: main.cc:71 main.cc:207
+#: main.cc:71 main.cc:202
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"
msgid "Transposition by %s makes accidental larger than two"
msgstr "%s ¤ÎÊÑÄ´¤Ë¤è¤Ã¤Æ¡¢Æó¤Ä¤òĶ¤¨¤ëÇÉÀ¸²»¤¬ºî¤é¤ì¤Þ¤·¤¿"
-#: music.cc:222
+#: music.cc:224
msgid "ly_get_mus_property (): Not a Music"
msgstr ""
-#: music.cc:236
+#: music.cc:238
msgid "ly_set_mus_property (): Not a symbol"
msgstr ""
-#: music.cc:248
+#: music.cc:250
msgid "ly_set_mus_property (): not of type Music"
msgstr ""
+#: music.cc:264
+msgid "ly_make_music (): Not a string"
+msgstr ""
+
+#: music.cc:284
+msgid "ly_music_name (): Not a music expression"
+msgstr ""
+
#: music-output-def.cc:115
#, fuzzy, c-format
msgid "can't find `%s' context"
msgstr "`%s' ¥³¥ó¥Æ¥¥¹¥È¤¬¸«¤Ä¤«¤ê¤Þ¤»¤ó"
-#: my-lily-lexer.cc:137
+#: my-lily-lexer.cc:138
#, c-format
msgid "Identifier name is a keyword: `%s'"
msgstr "¼±ÊÌ»Ò̾¤Ï¥¡¼¥ï¡¼¥É¤Ç¤¹: `%s'"
-#: my-lily-lexer.cc:157
+#: my-lily-lexer.cc:158
#, c-format
msgid "error at EOF: %s"
msgstr "EOF ¤Î¤È¤³¤í¤Ç¥¨¥é¡¼: %s"
msgid "Parsing..."
msgstr "¹½Ê¸²òÀÏÃæ..."
-#: my-lily-parser.cc:55
+#: my-lily-parser.cc:57
msgid "Braces don't match"
msgstr "¥Ö¥ì¡¼¥¹¤¬°ìÃפ·¤Þ¤»¤ó"
msgid "paper output to %s..."
msgstr "%s ¤Ø paper ½ÐÎÏ..."
-#: mudela-stream.cc:93 paper-outputter.cc:94 performance.cc:102
+#: lilypond-stream.cc:93 paper-outputter.cc:85 performance.cc:95
msgid ", at "
msgstr ", at "
-#: paper-outputter.cc:245
+#: paper-outputter.cc:232
#, fuzzy, c-format
msgid "writing header field %s to %s..."
msgstr "°Í¸´Ø·¸¥Õ¥¡¥¤¥ë¤Î½ñ¤¹þ¤ß: `%s'..."
msgid "Preprocessing elements..."
msgstr "Í×ÁǤòÁ°½èÍýÃæ..."
-#: paper-score.cc:113
+#: paper-score.cc:114
msgid "Outputting Score, defined at: "
msgstr "ÉèÌ̤ò½ÐÎϤ·¤Þ¤¹¡£¤³¤³¤ÇÄêµÁ: "
msgid "none of these in my family: `%s'"
msgstr "¥Õ¥¡¥ß¥ê¤ÎÃæ¤Ë¤¢¤ê¤Þ¤»¤ó"
+#: percent-repeat-engraver.cc:108
+#, fuzzy
+msgid "Don't know yet how to handle this percent repeat."
+msgstr "¶õ¤Î¥¡¼¤Î°·¤¤Êý¤¬È½¤ê¤Þ¤»¤ó"
+
+#: percent-repeat-iterator.cc:53
+#, fuzzy
+msgid "no one to print a percent"
+msgstr "È¿Éüµ¹æ¤òɽ¼¨¤¹¤ë¤â¤Î¤¬¤¢¤ê¤Þ¤»¤ó"
+
#: performance.cc:51
msgid "Track ... "
msgstr "¥È¥é¥Ã¥¯ ..."
msgid "Creator: "
msgstr "ºî¶Ê¼Ô: "
-#: performance.cc:116
+#: performance.cc:109
#, c-format
msgid "from musical definition: %s"
msgstr "²»³ÚŪÄêµÁ¤è¤ê: %s"
-#: performance.cc:171
+#: performance.cc:164
#, c-format
msgid "MIDI output to %s..."
msgstr "%s ¤Ø¤Î MIDI ½ÐÎÏ"
msgid "elapsed time: %.2f seconds"
msgstr "·Ð²á»þ´Ö: %.2f ÉÃ"
-#: score-engraver.cc:177
+#: score-engraver.cc:183
#, c-format
msgid "unbound spanner `%s'"
msgstr "ÊĤ¸¤Æ¤¤¤Ê¤¤¥¹¥Ñ¥Ê `%s'"
msgid "unterminated slur"
msgstr "½ªÃ¼¤µ¤ì¤Æ¤¤¤Ê¤¤¥¹¥é¡¼"
-#: slur-engraver.cc:142
+#. How to shut up this warning, when Voice_devnull_engraver has
+#. eaten start request?
+#: slur-engraver.cc:144
#, fuzzy
msgid "can't find start of slur"
msgstr "ËöÈø¤Ø¤Î(¥Ç)¥¯¥ì¥Ã¥·¥§¥ó¥É¤¬¸«¤Ä¤«¤ê¤Þ¤»¤ó"
msgid "can't find ascii character: %d"
msgstr "ascii ʸ»ú¤¬¸«¤Ä¤«¤ê¤Þ¤»¤ó: `%d'"
-#: tfm-reader.cc:105
-#, c-format
-msgid "TFM header of `%s' has only %u word(s)"
+#: tfm-reader.cc:106
+#, fuzzy, c-format
+msgid "TFM header of `%s' has only %u word (s)"
msgstr "`%s' ¤Î TFM ¥Ø¥Ã¥À¤Ë %u ¸ì¤·¤«¤¢¤ê¤Þ¤»¤ó"
-#: tfm-reader.cc:139
+#: tfm-reader.cc:140
#, c-format
msgid "%s: TFM file has %u parameters, which is more than the %u I can handle"
msgstr "%s: TFM ¥Õ¥¡¥¤¥ë¤Ï %u ¸Ä¤Î¥Ñ¥é¥á¥¿¤¬¤¢¤ê¤Þ¤¹¤¬¡¢%u °Ê¾å¤Ï°·¤¨¤Þ¤»¤ó"
-#: tie-engraver.cc:211 tie-performer.cc:173
+#. How to shut up this warning, when no notes appeared because
+#. they were suicided by Thread_devnull_engraver?
+#: tie-engraver.cc:215 tie-performer.cc:173
msgid "No ties were created!"
msgstr "ºî¤é¤ì¤¿¥¿¥¤¤¬¤¢¤ê¤Þ¤»¤ó!"
-#: tie-engraver.cc:230
+#: tie-engraver.cc:234
msgid "lonely tie"
msgstr "°ì¤Ä¤À¤±¤Î¥¿¥¤"
msgid "unknown translator: `%s'"
msgstr "Ƚ¤é¤Ê¤¤¥È¥é¥ó¥¹¥ì¡¼¥¿: `%s'"
-#: translator-def.cc:96
+#: translator-def.cc:99
msgid "Program has no such type"
msgstr "¥×¥í¥°¥é¥à¤Ë¤Ï¤½¤ÎÍͤʥ¿¥¤¥×¤¬¤¢¤ê¤Þ¤»¤ó"
-#: translator-def.cc:102
+#: translator-def.cc:105
#, c-format
msgid "Already contains: `%s'"
msgstr "´û¤Ë´Þ¤ó¤Ç¤¤¤Þ¤¹: `%s'"
-#: translator-def.cc:103
+#: translator-def.cc:106
#, fuzzy, c-format
msgid "Not adding translator: `%s'"
msgstr "Ƚ¤é¤Ê¤¤¥È¥é¥ó¥¹¥ì¡¼¥¿: `%s'"
-#: translator-def.cc:215
+#: translator-def.cc:224
#, fuzzy, c-format
msgid "can't find: `%s'"
msgstr "¸«¤Ä¤«¤ê¤Þ¤»¤ó: `%s'"
msgid "can't find or create: `%s'"
msgstr "¸«¤Ä¤«¤é¤Ê¤¤¤«ºî¤ì¤Þ¤»¤ó: `%s'"
-#: translator-group.cc:403
+#: translator-group.cc:414
#, c-format
msgid ""
"Can't find property type-check for `%s'. Perhaps you made a typing error?"
msgstr ""
-#: translator-group.cc:417
+#: translator-group.cc:428
#, c-format
msgid "Type check for `%s' failed; value `%s' must be of type `%s'"
msgstr ""
#. programming_error?
-#: translator-group.cc:436
+#: translator-group.cc:447
msgid "ly-get-trans-property: expecting a Translator_group argument"
msgstr ""
msgid "Oldest supported input version: %s"
msgstr "°ìÈָŤ¤ÆþÎϲÄǽ¥Ð¡¼¥¸¥ç¥ó: %s"
-#: parser.yy:471
+#: parser.yy:473
msgid "Wrong type for property value"
msgstr "°ÀÃͤؤΥ¿¥¤¥×¤¬´Ö°ã¤Ã¤Æ¤¤¤Þ¤¹"
-#: parser.yy:666
+#: parser.yy:672
msgid "More alternatives than repeats. Junking excess alternatives."
msgstr "·«¤êÊÖ¤·¤è¤ê¤âÁªÂò»è¤¬Â¿¤¤¡£Ä¶²áʬ¤ò¼Î¤Æ¤Þ¤¹¡£"
-#: parser.yy:730
+#: parser.yy:736
msgid "Second argument must be a symbol"
msgstr ""
-#: parser.yy:735
+#: parser.yy:741
msgid "First argument must be a procedure taking 1 argument"
msgstr ""
-#: parser.yy:1211
+#: parser.yy:1236
msgid "Expecting string as script definition"
msgstr ""
-#: parser.yy:1221
+#: parser.yy:1246
msgid "Can't specify direction for this request"
msgstr "¤³¤ÎÍ×µá¤ËÂФ¹¤ëÊý¸þ¤ò»ØÄꤹ¤ë¤³¤È¤Ï¤Ç¤¤Þ¤»¤ó"
-#: parser.yy:1353
+#: parser.yy:1371
msgid "Expecting musical-pitch value"
msgstr ""
-#: parser.yy:1364
+#: parser.yy:1382
#, fuzzy
msgid "Must have duration object"
msgstr "²»Ä¹¤òºÇ¾®¤ËÀßÄꤷ¤Þ¤¹"
-#: parser.yy:1373 parser.yy:1381 parser.yy:1661
+#: parser.yy:1391 parser.yy:1399 parser.yy:1679
msgid "Have to be in Lyric mode for lyrics"
msgstr "²Î»ì¤Ï Lyric ¥â¡¼¥ÉÆâ¤Ë½ñ¤¤¤Æ¤¯¤À¤µ¤¤"
-#: parser.yy:1546 parser.yy:1575
+#: parser.yy:1564 parser.yy:1593
#, c-format
msgid "not a duration: %d"
msgstr "²»Ä¹¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó: %d"
-#: parser.yy:1584
+#: parser.yy:1602
msgid "Have to be in Note mode for notes"
msgstr "²»Éä¤Ï Note ¥â¡¼¥ÉÆâ¤Ë½ñ¤¤¤Æ¤¯¤À¤µ¤¤"
-#: parser.yy:1680
+#: parser.yy:1698
msgid "Have to be in Chord mode for chords"
msgstr "¥³¡¼¥É¤Ï Chord ¥â¡¼¥ÉÆâ¤Ë½ñ¤¤¤Æ¤¯¤À¤µ¤¤"
-#: parser.yy:1842 parser.yy:1860
+#: parser.yy:1860 parser.yy:1878
msgid "need integer number arg"
msgstr ""
-#: parser.yy:1846
+#: parser.yy:1864
msgid "Must be positive integer"
msgstr ""
-#: lexer.ll:165
+#: lexer.ll:166
msgid "EOF found inside a comment"
msgstr "¥³¥á¥ó¥ÈÆâ¤Ë EOF ¤¬¸«¤Ä¤«¤ê¤Þ¤·¤¿"
-#: lexer.ll:179
+#: lexer.ll:180
msgid "\\maininput disallowed outside init files"
msgstr "½é´ü²½¥Õ¥¡¥¤¥ë¤Î³°¤Ç¤Ï \\maininput ¤òµ½Ò¤Ç¤¤Þ¤»¤ó"
-#: lexer.ll:203
+#: lexer.ll:204
#, fuzzy, c-format
msgid "wrong or undefined identifier: `%s'"
msgstr "̤ÄêµÁ¤Î¼±ÊÌ»Ò: `%s'"
#. backup rule
-#: lexer.ll:208
+#: lexer.ll:209
msgid "Missing end quote"
msgstr "½ªÎ»¥¯¥ª¡¼¥È¤¬¤¢¤ê¤Þ¤»¤ó"
#. backup rule
-#: lexer.ll:230 lexer.ll:234
+#: lexer.ll:231 lexer.ll:235
msgid "white expected"
msgstr "¶õÇò¤¬É¬ÍפǤ¹"
-#: lexer.ll:243
+#: lexer.ll:244
msgid "Can't evaluate Scheme in safe mode"
msgstr "°ÂÁ´¥â¡¼¥É¤Ç¤Ï Scheme ¤Îɾ²Á¤ò¤Ç¤¤Þ¤»¤ó"
-#: lexer.ll:335
+#: lexer.ll:336
msgid "Brace found at end of lyric. Did you forget a space?"
msgstr ""
-#: lexer.ll:439
+#: lexer.ll:440
#, c-format
msgid "invalid character: `%c'"
msgstr "̵¸ú¤Êʸ»ú: `%c'"
-#: lexer.ll:520
+#: lexer.ll:521
#, c-format
msgid "unknown escaped string: `\\%s'"
msgstr "̤ÃΤΥ¨¥¹¥±¡¼¥×ʸ»úÎó: `\\%s'"
-#: lexer.ll:602
+#: lexer.ll:603
#, fuzzy, c-format
msgid "incorrect lilypond version: %s (%s, %s)"
msgstr "´Ö°ã¤Ã¤¿ mudela ¥Ð¡¼¥¸¥ç¥ó: %s (%s, %s)"
-#: lexer.ll:603
+#: lexer.ll:604
msgid "Consider converting the input with the convert-ly script"
msgstr ""
+#: lilypond-item.cc:161
+#, c-format
+msgid "#32 in quarter: %d"
+msgstr "»Íʬ¤ÎÃæ¤Ë #32: %d"
+
+#: lilypond-score.cc:108
+#, c-format
+msgid "Lily output to %s..."
+msgstr "Lily ¤Ï %s ¤Ë½ÐÎϤ·¤Þ¤¹..."
+
+#: lilypond-score.cc:119
+#, c-format
+msgid "track %d:"
+msgstr "¥È¥é¥Ã¥¯ %d:"
+
+#: lilypond-score.cc:155
+msgid "Processing..."
+msgstr "½èÍýÃæ..."
+
+#: lilypond-score.cc:164
+msgid "Creating voices..."
+msgstr "²»À¼¤òºîÀ®Ãæ..."
+
+#: lilypond-score.cc:168
+msgid "track "
+msgstr "¥È¥é¥Ã¥¯ "
+
+#: lilypond-score.cc:177
+msgid "NOT Filtering tempo..."
+msgstr "¥Æ¥ó¥Ý¤Î¥Õ¥£¥ë¥¿¤ò¤·¤Þ¤»¤ó..."
+
+#: lilypond-score.cc:186
+msgid "NOT Quantifying columns..."
+msgstr "¥«¥é¥à¤ÎŤµ¤òÎ̤ê¤Þ¤»¤ó..."
+
+#: lilypond-score.cc:190
+msgid "Quantifying columns..."
+msgstr "¥«¥é¥à¤ÎŤµ¤òÎ̤ê¤Þ¤¹..."
+
+#: lilypond-score.cc:223
+msgid "Settling columns..."
+msgstr "¥«¥é¥à¤ò·èÄꤷ¤Þ¤¹..."
+
+#: lilypond-staff.cc:209
+msgid "% MIDI copyright:"
+msgstr "% MIDI copyright:"
+
+#: lilypond-staff.cc:210
+msgid "% MIDI instrument:"
+msgstr "% MIDI instrument:"
+
+#: lilypond-stream.cc:37
+#, c-format
+msgid "lily indent level: %d"
+msgstr "lily indent level: %d"
+
+#. Maybe better not to translate these?
+#: lilypond-stream.cc:83
+msgid "% Creator: "
+msgstr "%s Creator: "
+
+#: lilypond-stream.cc:88
+msgid "% Automatically generated"
+msgstr "% Automatically generated"
+
+#: lilypond-stream.cc:97
+#, c-format
+msgid "% from input file: "
+msgstr "% from input file: "
+
#: main.cc:93
msgid "write exact durations, e.g.: a4*385/384"
msgstr "Àµ³Î¤Ê²»Ä¹¤ò½ñ¤¤¤Æ¤¯¤À¤µ¤¤¡£Îã: a4*385/384"
msgid "set smallest duration"
msgstr "²»Ä¹¤òºÇ¾®¤ËÀßÄꤷ¤Þ¤¹"
+#: main.cc:103
+msgid "don't timestamp the output"
+msgstr "½ÐÎϤ˥¿¥¤¥à¥¹¥¿¥ó¥×¤ò¤Ä¤±¤Ê¤¤"
+
#: main.cc:105
msgid "be verbose"
msgstr "¾ÜºÙ¤Ê¾ðÊó¤òɽ¼¨¤·¤Þ¤¹"
msgstr "»È¤¤Êý: %s [¥ª¥×¥·¥ç¥ó]... [¥Õ¥¡¥¤¥ë]"
#: main.cc:116
-msgid "Translate MIDI-file to mudela"
+#, fuzzy
+msgid "Translate MIDI-file to lilypond"
msgstr "MIDI ¥Õ¥¡¥¤¥ë¤ò mudela ¤ËÊÑ´¹¤·¤Þ¤¹"
#: main.cc:130
msgid "invalid track length"
msgstr "̵¸ú¤Ê¥È¥é¥Ã¥¯Ä¹¤Ç¤¹"
-#: mudela-item.cc:161
-#, c-format
-msgid "#32 in quarter: %d"
-msgstr "»Íʬ¤ÎÃæ¤Ë #32: %d"
-
-#: mudela-score.cc:108
-#, c-format
-msgid "Lily output to %s..."
-msgstr "Lily ¤Ï %s ¤Ë½ÐÎϤ·¤Þ¤¹..."
-
-#: mudela-score.cc:119
-#, c-format
-msgid "track %d:"
-msgstr "¥È¥é¥Ã¥¯ %d:"
-
-#: mudela-score.cc:155
-msgid "Processing..."
-msgstr "½èÍýÃæ..."
-
-#: mudela-score.cc:164
-msgid "Creating voices..."
-msgstr "²»À¼¤òºîÀ®Ãæ..."
-
-#: mudela-score.cc:168
-msgid "track "
-msgstr "¥È¥é¥Ã¥¯ "
-
-#: mudela-score.cc:177
-msgid "NOT Filtering tempo..."
-msgstr "¥Æ¥ó¥Ý¤Î¥Õ¥£¥ë¥¿¤ò¤·¤Þ¤»¤ó..."
-
-#: mudela-score.cc:186
-msgid "NOT Quantifying columns..."
-msgstr "¥«¥é¥à¤ÎŤµ¤òÎ̤ê¤Þ¤»¤ó..."
-
-#: mudela-score.cc:190
-msgid "Quantifying columns..."
-msgstr "¥«¥é¥à¤ÎŤµ¤òÎ̤ê¤Þ¤¹..."
-
-#: mudela-score.cc:223
-msgid "Settling columns..."
-msgstr "¥«¥é¥à¤ò·èÄꤷ¤Þ¤¹..."
-
-#: mudela-staff.cc:209
-msgid "% MIDI copyright:"
-msgstr "% MIDI copyright:"
-
-#: mudela-staff.cc:210
-msgid "% MIDI instrument:"
-msgstr "% MIDI instrument:"
-
-#: mudela-stream.cc:37
-#, c-format
-msgid "lily indent level: %d"
-msgstr "lily indent level: %d"
-
-#. Maybe better not to translate these?
-#: mudela-stream.cc:83
-msgid "% Creator: "
-msgstr "%s Creator: "
-
-#: mudela-stream.cc:88
-msgid "% Automatically generated"
-msgstr "% Automatically generated"
-
-#: mudela-stream.cc:97
-#, c-format
-msgid "% from input file: "
-msgstr "% from input file: "
-
#, fuzzy
#~ msgid "Dependency file left in `%s'"
#~ msgstr "°Í¸´Ø·¸¥Õ¥¡¥¤¥ë¤Î½ñ¤¹þ¤ß: `%s'..."
#~ msgid "No key name, assuming `C'"
#~ msgstr "¥¡¼Ì¾¤¬¤¢¤ê¤Þ¤»¤ó¡¢`C' ¤ò»î¤ß¤Þ¤¹"
-#~ msgid "Don't know how handle empty keys"
-#~ msgstr "¶õ¤Î¥¡¼¤Î°·¤¤Êý¤¬È½¤ê¤Þ¤»¤ó"
-
#~ msgid "Don't have that many octaves (%s)"
#~ msgstr "¤½¤ó¤Ê¤ËÂô»³¤Î¥ª¥¯¥¿¡¼¥Ö (%s) ¤ò»È¤ï¤Ê¤¤¤Ç¤¯¤À¤µ¤¤"
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
-"POT-Creation-Date: 2001-03-16 09:44+0100\n"
+"POT-Creation-Date: 2001-03-21 16:06+0100\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: ENCODING\n"
-#: ly2dvi.py:74 main.cc:95 main.cc:109
+#: ly2dvi.py:86 main.cc:95 main.cc:105
msgid "this help"
msgstr ""
-#: ly2dvi.py:75
+#: ly2dvi.py:87
msgid "change global setting KEY to VAL"
msgstr ""
-#: ly2dvi.py:76
+#: ly2dvi.py:88
msgid "generate PostScript output"
msgstr ""
-#: ly2dvi.py:77
+#: ly2dvi.py:89
msgid "keep all output, and name the directory ly2dvi.dir"
msgstr ""
-#: ly2dvi.py:78
+#: ly2dvi.py:90
msgid "don't run LilyPond"
msgstr ""
-#: ly2dvi.py:79 main.cc:104 main.cc:119
+#: ly2dvi.py:91 main.cc:115
+msgid "verbose"
+msgstr ""
+
+#: ly2dvi.py:92 main.cc:104 main.cc:114
msgid "print version number"
msgstr ""
-#: ly2dvi.py:80 main.cc:106 main.cc:121
+#: ly2dvi.py:93 main.cc:106 main.cc:116
msgid "show warranty and copyright"
msgstr ""
-#: ly2dvi.py:81
+#: ly2dvi.py:94
msgid "dump all final output into DIR"
msgstr ""
-#: ly2dvi.py:82 main.cc:113
+#: ly2dvi.py:95 main.cc:109
msgid "write Makefile dependencies for every input file"
msgstr ""
-#: data-file.cc:118 input.cc:85 ly2dvi.py:108 midi-parser.cc:100 warn.cc:23
+#: data-file.cc:118 input.cc:85 ly2dvi.py:123 midi-parser.cc:100 warn.cc:23
msgid "warning: "
msgstr ""
-#: input.cc:90 ly2dvi.py:113 ly2dvi.py:247 warn.cc:9 warn.cc:17
+#: input.cc:90 ly2dvi.py:128 ly2dvi.py:263 warn.cc:9 warn.cc:17
msgid "error: "
msgstr ""
-#: ly2dvi.py:115
+#: ly2dvi.py:130
msgid "Exiting ... "
msgstr ""
-#: ly2dvi.py:134
+#: ly2dvi.py:149
#, c-format
-msgid "Reading `%s'"
+msgid "Reading %s..."
msgstr ""
-#: ly2dvi.py:138 mapped-file-storage.cc:87 mudela-stream.cc:111
+#: lilypond-stream.cc:111 ly2dvi.py:153 mapped-file-storage.cc:87
#: paper-stream.cc:40 scores.cc:48 simple-file-storage.cc:44 text-stream.cc:23
#, c-format
msgid "can't open file: `%s'"
msgstr ""
-#: ly2dvi.py:201
+#: ly2dvi.py:216
#, c-format
msgid "Usage: %s [OPTION]... FILE"
msgstr ""
-#: ly2dvi.py:203
+#: ly2dvi.py:218
msgid "Generate .dvi with LaTeX for LilyPond"
msgstr ""
-#: ly2dvi.py:205 main.cc:119 main.cc:151
+#: ly2dvi.py:220 main.cc:119 main.cc:146
msgid "Options:"
msgstr ""
-#: ly2dvi.py:209
+#: ly2dvi.py:224
msgid "all output is written in the CURRENT directory"
msgstr ""
-#: ly2dvi.py:211 main.cc:123 main.cc:174
+#: ly2dvi.py:226 main.cc:123 main.cc:169
#, c-format
msgid "Report bugs to %s"
msgstr ""
-#: ly2dvi.py:243
+#: ly2dvi.py:260
#, c-format
msgid "Invoking `%s'"
msgstr ""
-#: ly2dvi.py:247
+#: ly2dvi.py:263
#, c-format
msgid "command exited with value %d"
msgstr ""
-#: ly2dvi.py:249
+#: ly2dvi.py:265
msgid "(ignored)"
msgstr ""
-#: ly2dvi.py:278
-#, c-format
-msgid "invalid value: %s"
-msgstr ""
-
-#: ly2dvi.py:284
+#: ly2dvi.py:301
#, c-format
msgid "no such setting: %s"
msgstr ""
-#: ly2dvi.py:292
+#: ly2dvi.py:309
#, c-format
msgid "Analyzing `%s'"
msgstr ""
-#: ly2dvi.py:336
+#: ly2dvi.py:353
#, c-format
msgid "no lilypond output found for %s"
msgstr ""
-#: ly2dvi.py:568 scores.cc:44
+#: ly2dvi.py:395
+#, c-format
+msgid "invalid value: %s"
+msgstr ""
+
+#: ly2dvi.py:602 scores.cc:44
#, c-format
msgid "dependencies output to %s..."
msgstr ""
-#: ly2dvi.py:569
+#: ly2dvi.py:603
#, c-format
-msgid "%s file left in `%s'"
+msgid "%s output to %s..."
msgstr ""
#: data-file.cc:54
msgid "can't find default font: `%s'"
msgstr ""
-#: all-font-metrics.cc:172 includable-lexer.cc:50 scores.cc:137
+#: all-font-metrics.cc:172 includable-lexer.cc:51 scores.cc:137
#, c-format
msgid "(search path: `%s')"
msgstr ""
-#: all-font-metrics.cc:173 parser.yy:1663
+#: all-font-metrics.cc:173 parser.yy:1681
msgid "Giving up"
msgstr ""
msgid "already have a decrescendo"
msgstr ""
-#: dynamic-engraver.cc:315
+#: dynamic-engraver.cc:318
msgid "unterminated (de)crescendo"
msgstr ""
msgid "no one to print a repeat brace"
msgstr ""
-#: font-interface.cc:220
+#: font-interface.cc:237
msgid "couldn't find any font satisfying "
msgstr ""
msgid "Nothing to connect hyphen to on the left. Ignoring hyphen request."
msgstr ""
-#: includable-lexer.cc:48 lily-guile.cc:139 midi-score-parser.cc:24
+#: includable-lexer.cc:49 lily-guile.cc:139 midi-score-parser.cc:24
#: scores.cc:136 scores.cc:142
#, c-format
msgid "can't find file: `%s'"
msgid "Huh? Melismatic note found to have associated lyrics."
msgstr ""
-#: main.cc:108
+#: main.cc:104
msgid "EXT"
msgstr ""
-#: main.cc:108
+#: main.cc:104
msgid "use output format EXT (scm, ps, tex or as)"
msgstr ""
-#: main.cc:110
+#: main.cc:106
msgid "FIELD"
msgstr ""
-#: main.cc:110
+#: main.cc:106
msgid "write header field to BASENAME.FIELD"
msgstr ""
-#: main.cc:111 main.cc:114
+#: main.cc:107 main.cc:110
msgid "DIR"
msgstr ""
-#: main.cc:111
+#: main.cc:107
msgid "add DIR to search path"
msgstr ""
-#: main.cc:98 main.cc:112
+#: main.cc:98 main.cc:108
msgid "FILE"
msgstr ""
-#: main.cc:112
+#: main.cc:108
msgid "use FILE as init file"
msgstr ""
-#: main.cc:114
+#: main.cc:110
msgid "prepend DIR to dependencies"
msgstr ""
-#: main.cc:115
+#: main.cc:111
msgid "produce MIDI output only"
msgstr ""
-#: main.cc:116
+#: main.cc:112
msgid "NAME"
msgstr ""
-#: main.cc:116
+#: main.cc:112
msgid "write output to NAME"
msgstr ""
-#: main.cc:117
+#: main.cc:113
msgid "inhibit file output naming and exporting"
msgstr ""
-#: main.cc:103 main.cc:118
-msgid "don't timestamp the output"
-msgstr ""
-
-#: main.cc:120
-msgid "verbose"
+#: main.cc:117
+msgid "EXPR"
msgstr ""
-#: main.cc:122
-msgid "write midi ouput in formatted ascii"
+#: main.cc:117
+msgid "evalute EXPR as Scheme after .scm init is read"
msgstr ""
#.
#. No version number or newline here. It confuses help2man
#.
-#: main.cc:139
+#: main.cc:134
#, c-format
msgid "Usage: %s [OPTION]... [FILE]..."
msgstr ""
-#: main.cc:141
+#: main.cc:136
msgid "Typeset music and or play MIDI from FILE"
msgstr ""
-#: main.cc:145
+#: main.cc:140
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 ""
-#: main.cc:155
+#: main.cc:150
msgid "This binary was compiled with the following options:"
msgstr ""
-#: main.cc:55 main.cc:182
+#: main.cc:55 main.cc:177
#, c-format
msgid ""
"This is free software. It is covered by the GNU General Public License,\n"
"certain conditions. Invoke as `%s --warranty' for more information.\n"
msgstr ""
-#: main.cc:62 main.cc:189 main.cc:201
+#: main.cc:62 main.cc:184 main.cc:196
#, c-format
msgid "Copyright (c) %s by"
msgstr ""
-#: main.cc:199
+#: main.cc:194
msgid "GNU LilyPond -- The music typesetter"
msgstr ""
-#: main.cc:71 main.cc:207
+#: main.cc:71 main.cc:202
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"
msgid "Transposition by %s makes accidental larger than two"
msgstr ""
-#: music.cc:226
+#: music.cc:224
msgid "ly_get_mus_property (): Not a Music"
msgstr ""
-#: music.cc:240
+#: music.cc:238
msgid "ly_set_mus_property (): Not a symbol"
msgstr ""
-#: music.cc:252
+#: music.cc:250
msgid "ly_set_mus_property (): not of type Music"
msgstr ""
-#: music.cc:266
+#: music.cc:264
msgid "ly_make_music (): Not a string"
msgstr ""
+#: music.cc:284
+msgid "ly_music_name (): Not a music expression"
+msgstr ""
+
#: music-output-def.cc:115
#, c-format
msgid "can't find `%s' context"
msgstr ""
-#: my-lily-lexer.cc:137
+#: my-lily-lexer.cc:138
#, c-format
msgid "Identifier name is a keyword: `%s'"
msgstr ""
-#: my-lily-lexer.cc:157
+#: my-lily-lexer.cc:158
#, c-format
msgid "error at EOF: %s"
msgstr ""
msgid "paper output to %s..."
msgstr ""
-#: mudela-stream.cc:93 paper-outputter.cc:94 performance.cc:102
+#: lilypond-stream.cc:93 paper-outputter.cc:85 performance.cc:95
msgid ", at "
msgstr ""
-#: paper-outputter.cc:245
+#: paper-outputter.cc:232
#, c-format
msgid "writing header field %s to %s..."
msgstr ""
msgid "Creator: "
msgstr ""
-#: performance.cc:116
+#: performance.cc:109
#, c-format
msgid "from musical definition: %s"
msgstr ""
-#: performance.cc:171
+#: performance.cc:164
#, c-format
msgid "MIDI output to %s..."
msgstr ""
#. How to shut up this warning, when no notes appeared because
#. they were suicided by Thread_devnull_engraver?
-#: tie-engraver.cc:213 tie-performer.cc:173
+#: tie-engraver.cc:215 tie-performer.cc:173
msgid "No ties were created!"
msgstr ""
-#: tie-engraver.cc:232
+#: tie-engraver.cc:234
msgid "lonely tie"
msgstr ""
msgid "unknown translator: `%s'"
msgstr ""
-#: translator-def.cc:96
+#: translator-def.cc:99
msgid "Program has no such type"
msgstr ""
-#: translator-def.cc:102
+#: translator-def.cc:105
#, c-format
msgid "Already contains: `%s'"
msgstr ""
-#: translator-def.cc:103
+#: translator-def.cc:106
#, c-format
msgid "Not adding translator: `%s'"
msgstr ""
-#: translator-def.cc:215
+#: translator-def.cc:224
#, c-format
msgid "can't find: `%s'"
msgstr ""
msgid "can't find or create: `%s'"
msgstr ""
-#: translator-group.cc:403
+#: translator-group.cc:414
#, c-format
msgid ""
"Can't find property type-check for `%s'. Perhaps you made a typing error?"
msgstr ""
-#: translator-group.cc:417
+#: translator-group.cc:428
#, c-format
msgid "Type check for `%s' failed; value `%s' must be of type `%s'"
msgstr ""
#. programming_error?
-#: translator-group.cc:436
+#: translator-group.cc:447
msgid "ly-get-trans-property: expecting a Translator_group argument"
msgstr ""
msgid "Oldest supported input version: %s"
msgstr ""
-#: parser.yy:472
+#: parser.yy:473
msgid "Wrong type for property value"
msgstr ""
-#: parser.yy:667
+#: parser.yy:672
msgid "More alternatives than repeats. Junking excess alternatives."
msgstr ""
-#: parser.yy:731
+#: parser.yy:736
msgid "Second argument must be a symbol"
msgstr ""
-#: parser.yy:736
+#: parser.yy:741
msgid "First argument must be a procedure taking 1 argument"
msgstr ""
-#: parser.yy:1212
+#: parser.yy:1236
msgid "Expecting string as script definition"
msgstr ""
-#: parser.yy:1222
+#: parser.yy:1246
msgid "Can't specify direction for this request"
msgstr ""
-#: parser.yy:1353
+#: parser.yy:1371
msgid "Expecting musical-pitch value"
msgstr ""
-#: parser.yy:1364
+#: parser.yy:1382
msgid "Must have duration object"
msgstr ""
-#: parser.yy:1373 parser.yy:1381 parser.yy:1661
+#: parser.yy:1391 parser.yy:1399 parser.yy:1679
msgid "Have to be in Lyric mode for lyrics"
msgstr ""
-#: parser.yy:1546 parser.yy:1575
+#: parser.yy:1564 parser.yy:1593
#, c-format
msgid "not a duration: %d"
msgstr ""
-#: parser.yy:1584
+#: parser.yy:1602
msgid "Have to be in Note mode for notes"
msgstr ""
-#: parser.yy:1680
+#: parser.yy:1698
msgid "Have to be in Chord mode for chords"
msgstr ""
-#: parser.yy:1842 parser.yy:1860
+#: parser.yy:1860 parser.yy:1878
msgid "need integer number arg"
msgstr ""
-#: parser.yy:1846
+#: parser.yy:1864
msgid "Must be positive integer"
msgstr ""
msgid "Consider converting the input with the convert-ly script"
msgstr ""
+#: lilypond-item.cc:161
+#, c-format
+msgid "#32 in quarter: %d"
+msgstr ""
+
+#: lilypond-score.cc:108
+#, c-format
+msgid "Lily output to %s..."
+msgstr ""
+
+#: lilypond-score.cc:119
+#, c-format
+msgid "track %d:"
+msgstr ""
+
+#: lilypond-score.cc:155
+msgid "Processing..."
+msgstr ""
+
+#: lilypond-score.cc:164
+msgid "Creating voices..."
+msgstr ""
+
+#: lilypond-score.cc:168
+msgid "track "
+msgstr ""
+
+#: lilypond-score.cc:177
+msgid "NOT Filtering tempo..."
+msgstr ""
+
+#: lilypond-score.cc:186
+msgid "NOT Quantifying columns..."
+msgstr ""
+
+#: lilypond-score.cc:190
+msgid "Quantifying columns..."
+msgstr ""
+
+#: lilypond-score.cc:223
+msgid "Settling columns..."
+msgstr ""
+
+#: lilypond-staff.cc:209
+msgid "% MIDI copyright:"
+msgstr ""
+
+#: lilypond-staff.cc:210
+msgid "% MIDI instrument:"
+msgstr ""
+
+#: lilypond-stream.cc:37
+#, c-format
+msgid "lily indent level: %d"
+msgstr ""
+
+#. Maybe better not to translate these?
+#: lilypond-stream.cc:83
+msgid "% Creator: "
+msgstr ""
+
+#: lilypond-stream.cc:88
+msgid "% Automatically generated"
+msgstr ""
+
+#: lilypond-stream.cc:97
+#, c-format
+msgid "% from input file: "
+msgstr ""
+
#: main.cc:93
msgid "write exact durations, e.g.: a4*385/384"
msgstr ""
msgid "set smallest duration"
msgstr ""
+#: main.cc:103
+msgid "don't timestamp the output"
+msgstr ""
+
#: main.cc:105
msgid "be verbose"
msgstr ""
msgstr ""
#: main.cc:116
-msgid "Translate MIDI-file to mudela"
+msgid "Translate MIDI-file to lilypond"
msgstr ""
#: main.cc:130
#: midi-track-parser.cc:353
msgid "invalid track length"
msgstr ""
-
-#: mudela-item.cc:161
-#, c-format
-msgid "#32 in quarter: %d"
-msgstr ""
-
-#: mudela-score.cc:108
-#, c-format
-msgid "Lily output to %s..."
-msgstr ""
-
-#: mudela-score.cc:119
-#, c-format
-msgid "track %d:"
-msgstr ""
-
-#: mudela-score.cc:155
-msgid "Processing..."
-msgstr ""
-
-#: mudela-score.cc:164
-msgid "Creating voices..."
-msgstr ""
-
-#: mudela-score.cc:168
-msgid "track "
-msgstr ""
-
-#: mudela-score.cc:177
-msgid "NOT Filtering tempo..."
-msgstr ""
-
-#: mudela-score.cc:186
-msgid "NOT Quantifying columns..."
-msgstr ""
-
-#: mudela-score.cc:190
-msgid "Quantifying columns..."
-msgstr ""
-
-#: mudela-score.cc:223
-msgid "Settling columns..."
-msgstr ""
-
-#: mudela-staff.cc:209
-msgid "% MIDI copyright:"
-msgstr ""
-
-#: mudela-staff.cc:210
-msgid "% MIDI instrument:"
-msgstr ""
-
-#: mudela-stream.cc:37
-#, c-format
-msgid "lily indent level: %d"
-msgstr ""
-
-#. Maybe better not to translate these?
-#: mudela-stream.cc:83
-msgid "% Creator: "
-msgstr ""
-
-#: mudela-stream.cc:88
-msgid "% Automatically generated"
-msgstr ""
-
-#: mudela-stream.cc:97
-#, c-format
-msgid "% from input file: "
-msgstr ""
msgid ""
msgstr ""
"Project-Id-Version: lilypond 1.3.59\n"
-"POT-Creation-Date: 2001-03-16 09:44+0100\n"
+"POT-Creation-Date: 2001-03-21 16:06+0100\n"
"PO-Revision-Date: 2000-06-09 02:23+0200\n"
"Last-Translator: Jan Nieuwenhuizen <janneke@gnu.org>\n"
"Language-Team: Dutch <nl@li.org>\n"
"Xgettext-Options: --c++ --default-domain=lilypond --join --output-dir=../po --add-comments --keyword=_\n"
"Files: bow.cc int.cc\n"
-#: ly2dvi.py:74 main.cc:95 main.cc:109
+#: ly2dvi.py:86 main.cc:95 main.cc:105
msgid "this help"
msgstr "deze hulp"
-#: ly2dvi.py:75
+#: ly2dvi.py:87
msgid "change global setting KEY to VAL"
msgstr "verander globale instelling SLEUTEL in WAARDE"
-#: ly2dvi.py:76
+#: ly2dvi.py:88
msgid "generate PostScript output"
msgstr "genereer PostScipt uitvoer"
-#: ly2dvi.py:77
+#: ly2dvi.py:89
msgid "keep all output, and name the directory ly2dvi.dir"
msgstr "bewaar alle uitvoer, en noem de directory ly2dvi.dir"
-#: ly2dvi.py:78
+#: ly2dvi.py:90
msgid "don't run LilyPond"
msgstr "draai LilyPond niet"
-#: ly2dvi.py:79 main.cc:104 main.cc:119
+#: ly2dvi.py:91 main.cc:115
+msgid "verbose"
+msgstr "breedsprakig"
+
+#: ly2dvi.py:92 main.cc:104 main.cc:114
msgid "print version number"
msgstr "druk versienummer af"
-#: ly2dvi.py:80 main.cc:106 main.cc:121
+#: ly2dvi.py:93 main.cc:106 main.cc:116
msgid "show warranty and copyright"
msgstr "toon garantie en auteursrechten"
-#: ly2dvi.py:81
+#: ly2dvi.py:94
msgid "dump all final output into DIR"
msgstr "dump alle uiteindelijke uivoer in DIR"
-#: ly2dvi.py:82 main.cc:113
+#: ly2dvi.py:95 main.cc:109
msgid "write Makefile dependencies for every input file"
msgstr "schrijf Makefile afhankelijkheden voor elk invoerbestand"
-#: data-file.cc:118 input.cc:85 ly2dvi.py:108 midi-parser.cc:100 warn.cc:23
+#: data-file.cc:118 input.cc:85 ly2dvi.py:123 midi-parser.cc:100 warn.cc:23
msgid "warning: "
msgstr "waarschuwing: "
-#: input.cc:90 ly2dvi.py:113 ly2dvi.py:247 warn.cc:9 warn.cc:17
+#: input.cc:90 ly2dvi.py:128 ly2dvi.py:263 warn.cc:9 warn.cc:17
msgid "error: "
msgstr "fout: "
-#: ly2dvi.py:115
+#: ly2dvi.py:130
msgid "Exiting ... "
msgstr "Beëidigen ..."
-#: ly2dvi.py:134
+#: ly2dvi.py:149
#, c-format
-msgid "Reading `%s'"
-msgstr "Inlezen `%s'"
+msgid "Reading %s..."
+msgstr "Inlezen %s..."
-#: ly2dvi.py:138 mapped-file-storage.cc:87 mudela-stream.cc:111
+#: lilypond-stream.cc:111 ly2dvi.py:153 mapped-file-storage.cc:87
#: paper-stream.cc:40 scores.cc:48 simple-file-storage.cc:44 text-stream.cc:23
#, c-format
msgid "can't open file: `%s'"
msgstr "kan bestand niet openen: `%s'"
-#: ly2dvi.py:201
+#: ly2dvi.py:216
#, c-format
msgid "Usage: %s [OPTION]... FILE"
msgstr "Gebruik: %s [OPTIE]... BESTAND"
-#: ly2dvi.py:203
+#: ly2dvi.py:218
msgid "Generate .dvi with LaTeX for LilyPond"
msgstr "Genereer .dvi met LaTeX voor LilyPond"
-#: ly2dvi.py:205 main.cc:119 main.cc:151
+#: ly2dvi.py:220 main.cc:119 main.cc:146
msgid "Options:"
msgstr "Opties:"
-#: ly2dvi.py:209
+#: ly2dvi.py:224
msgid "all output is written in the CURRENT directory"
msgstr "alle uitvoer wordt naar HUIDIGE directory geschreven"
-#: ly2dvi.py:211 main.cc:123 main.cc:174
+#: ly2dvi.py:226 main.cc:123 main.cc:169
#, c-format
msgid "Report bugs to %s"
msgstr ""
"Meld luizen in het programma aan %s;\n"
"meld onjuistheden in de vertaling aan <janneke@gnu.org> of <hanwen@cs.uu.nl>"
-#: ly2dvi.py:243
+#: ly2dvi.py:260
#, c-format
msgid "Invoking `%s'"
msgstr "Uitvoeren `%s'"
-#: ly2dvi.py:247
+#: ly2dvi.py:263
#, c-format
msgid "command exited with value %d"
msgstr "opdracht eindigde met waarde %d"
-#: ly2dvi.py:249
+#: ly2dvi.py:265
msgid "(ignored)"
msgstr "(genegeerd)"
-#: ly2dvi.py:278
-#, c-format
-msgid "invalid value: %s"
-msgstr "ongeldige waarde: %s"
-
-#: ly2dvi.py:284
+#: ly2dvi.py:301
#, c-format
msgid "no such setting: %s"
msgstr "geen dergelijke instelling: %s"
-#: ly2dvi.py:292
+#: ly2dvi.py:309
#, c-format
msgid "Analyzing `%s'"
msgstr "Analyseren `%s'"
-#: ly2dvi.py:336
+#: ly2dvi.py:353
#, c-format
msgid "no lilypond output found for %s"
msgstr "geen lilypond uitvoer gevonden voor %s"
-#: ly2dvi.py:568 scores.cc:44
+#: ly2dvi.py:395
+#, c-format
+msgid "invalid value: %s"
+msgstr "ongeldige waarde: %s"
+
+#: ly2dvi.py:602 scores.cc:44
#, c-format
msgid "dependencies output to %s..."
msgstr "afhankelijkheden uitvoer naar %s..."
-#: ly2dvi.py:569
+#: ly2dvi.py:603
#, c-format
-msgid "%s file left in `%s'"
-msgstr "%s bestand achtergelaten in `%s'"
+msgid "%s output to %s..."
+msgstr "%s uitvoer naar %s..."
#: data-file.cc:54
msgid "EOF in a string"
msgid "can't find default font: `%s'"
msgstr "kan verstekfont niet vinden: `%s'"
-#: all-font-metrics.cc:172 includable-lexer.cc:50 scores.cc:137
+#: all-font-metrics.cc:172 includable-lexer.cc:51 scores.cc:137
#, c-format
msgid "(search path: `%s')"
msgstr "(zoekpad: `%s')"
-#: all-font-metrics.cc:173 parser.yy:1663
+#: all-font-metrics.cc:173 parser.yy:1681
msgid "Giving up"
msgstr "Geef op"
msgid "already have a decrescendo"
msgstr "heb al een decrescendo"
-#: dynamic-engraver.cc:315
+#: dynamic-engraver.cc:318
msgid "unterminated (de)crescendo"
msgstr "onbeëindigd (de)crescendo"
msgid "no one to print a repeat brace"
msgstr "niemand om een herhalings haak af te drukken"
-#: font-interface.cc:220
+#: font-interface.cc:237
msgid "couldn't find any font satisfying "
msgstr "kon geen enkel font vinden dat voldoet aan "
msgstr ""
"Niets om streepje aan linkerkant aan vast te maken. Negeer streepje verzoek."
-#: includable-lexer.cc:48 lily-guile.cc:139 midi-score-parser.cc:24
+#: includable-lexer.cc:49 lily-guile.cc:139 midi-score-parser.cc:24
#: scores.cc:136 scores.cc:142
#, c-format
msgid "can't find file: `%s'"
msgid "Huh? Melismatic note found to have associated lyrics."
msgstr "Huh? Melismatische noot blijkt bijbehorende liedtekst te hebben."
-#: main.cc:108
+#: main.cc:104
msgid "EXT"
msgstr "EXT"
-#: main.cc:108
+#: main.cc:104
msgid "use output format EXT (scm, ps, tex or as)"
msgstr "gebruik uitvoer formaat EXT (scm, ps, tex of as)"
-#: main.cc:110
+#: main.cc:106
msgid "FIELD"
msgstr "VELD"
-#: main.cc:110
+#: main.cc:106
msgid "write header field to BASENAME.FIELD"
msgstr "schrijf kop veld naar BASISNAAM.VELD"
-#: main.cc:111 main.cc:114
+#: main.cc:107 main.cc:110
msgid "DIR"
msgstr "DIR"
-#: main.cc:111
+#: main.cc:107
msgid "add DIR to search path"
msgstr "voeg DIR toe aan zoekpad"
-#: main.cc:98 main.cc:112
+#: main.cc:98 main.cc:108
msgid "FILE"
msgstr "BESTAND"
-#: main.cc:112
+#: main.cc:108
msgid "use FILE as init file"
msgstr "gebruik BESTAND als initialisatiebestand"
-#: main.cc:114
+#: main.cc:110
msgid "prepend DIR to dependencies"
msgstr "voeg DIR voor aan afhankelijkheden"
-#: main.cc:115
+#: main.cc:111
msgid "produce MIDI output only"
msgstr "produceer alleen MIDI uitvoer"
-#: main.cc:116
+#: main.cc:112
msgid "NAME"
msgstr "NAAM"
-#: main.cc:116
+#: main.cc:112
msgid "write output to NAME"
msgstr "schrijf uitvoer naar NAAM"
-#: main.cc:117
+#: main.cc:113
msgid "inhibit file output naming and exporting"
msgstr "verbied naamgeving van uitvoer bestand en exportering"
-#: main.cc:103 main.cc:118
-msgid "don't timestamp the output"
-msgstr "geen tijdsstempel in de uitvoer"
-
-#: main.cc:120
-msgid "verbose"
-msgstr "breedsprakig"
+#: main.cc:117
+msgid "EXPR"
+msgstr "EXPR"
-#: main.cc:122
-msgid "write midi ouput in formatted ascii"
-msgstr "schrijf midi uitvoer in geformatteerd ascii"
+#: main.cc:117
+msgid "evalute EXPR as Scheme after .scm init is read"
+msgstr "evalueer EXPR als Scheme nadat .scm init is gelezen"
#.
#. No version number or newline here. It confuses help2man
#.
-#: main.cc:139
+#: main.cc:134
#, c-format
msgid "Usage: %s [OPTION]... [FILE]..."
msgstr "Gebruik: %s [OPTIE]... [BESTAND]..."
-#: main.cc:141
+#: main.cc:136
msgid "Typeset music and or play MIDI from FILE"
msgstr "Zet muziek en of speel MIDI van BESTAND"
-#: main.cc:145
+#: main.cc:140
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"
"uitgaande van een hoog niveau beschrijving bestand. LilyPond \n"
"maakt deel uit van het GNU Project.\n"
-#: main.cc:155
+#: main.cc:150
msgid "This binary was compiled with the following options:"
msgstr "Dit programma is gecompileerd met de volgende instellingen:"
-#: main.cc:55 main.cc:182
+#: main.cc:55 main.cc:177
#, c-format
msgid ""
"This is free software. It is covered by the GNU General Public License,\n"
"onder bepaalde voorwaarden. Roep aan als `%s --warranty' voor meer\n"
"informatie.\n"
-#: main.cc:62 main.cc:189 main.cc:201
+#: main.cc:62 main.cc:184 main.cc:196
#, c-format
msgid "Copyright (c) %s by"
msgstr "Copyright (c) %s "
-#: main.cc:199
+#: main.cc:194
msgid "GNU LilyPond -- The music typesetter"
msgstr "GNU LilyPond -- De Muziekzetter"
-#: main.cc:71 main.cc:207
+#: main.cc:71 main.cc:202
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"
msgid "Transposition by %s makes accidental larger than two"
msgstr "Transponering van %s geeft tripel kruizen/mollen"
-#: music.cc:226
+#: music.cc:224
msgid "ly_get_mus_property (): Not a Music"
msgstr "ly_get_mus_property (): Geen Muziek"
-#: music.cc:240
+#: music.cc:238
msgid "ly_set_mus_property (): Not a symbol"
msgstr "ly_set_mus_property (): Geen symbool"
-#: music.cc:252
+#: music.cc:250
msgid "ly_set_mus_property (): not of type Music"
msgstr "ly_set_mus_property (): niet van type Muziek"
-#: music.cc:266
+#: music.cc:264
msgid "ly_make_music (): Not a string"
msgstr "ly_make_music (): Geen string"
+#: music.cc:284
+msgid "ly_music_name (): Not a music expression"
+msgstr "ly_make_music (): Geen muziek expressie"
+
#: music-output-def.cc:115
#, c-format
msgid "can't find `%s' context"
msgstr "kan `%s' context niet vinden"
-#: my-lily-lexer.cc:137
+#: my-lily-lexer.cc:138
#, c-format
msgid "Identifier name is a keyword: `%s'"
msgstr "Identifier naam is een sleutelwoord: `%s'"
-#: my-lily-lexer.cc:157
+#: my-lily-lexer.cc:158
#, c-format
msgid "error at EOF: %s"
msgstr "fout bij EOF: %s"
msgid "paper output to %s..."
msgstr "papier uitvoer naar %s..."
-#: mudela-stream.cc:93 paper-outputter.cc:94 performance.cc:102
+#: lilypond-stream.cc:93 paper-outputter.cc:85 performance.cc:95
msgid ", at "
msgstr ", bij "
-#: paper-outputter.cc:245
+#: paper-outputter.cc:232
#, c-format
msgid "writing header field %s to %s..."
msgstr "Schijven van kop veld %s naar bestand %s..."
msgid "Creator: "
msgstr "Schepper: "
-#: performance.cc:116
+#: performance.cc:109
#, c-format
msgid "from musical definition: %s"
msgstr "van muzikale definitie: %s"
-#: performance.cc:171
+#: performance.cc:164
#, c-format
msgid "MIDI output to %s..."
msgstr "MIDI uitvoer naar %s..."
#. How to shut up this warning, when no notes appeared because
#. they were suicided by Thread_devnull_engraver?
-#: tie-engraver.cc:213 tie-performer.cc:173
+#: tie-engraver.cc:215 tie-performer.cc:173
msgid "No ties were created!"
msgstr "Geen overbindingen geschapen!"
-#: tie-engraver.cc:232
+#: tie-engraver.cc:234
msgid "lonely tie"
msgstr "eenzame overbinding"
msgid "unknown translator: `%s'"
msgstr "onbekende translator: `%s'"
-#: translator-def.cc:96
+#: translator-def.cc:99
msgid "Program has no such type"
msgstr "Programma heeft geen dergelijk type"
-#: translator-def.cc:102
+#: translator-def.cc:105
#, c-format
msgid "Already contains: `%s'"
msgstr "Bevat reeds: `%s'"
-#: translator-def.cc:103
+#: translator-def.cc:106
#, c-format
msgid "Not adding translator: `%s'"
msgstr "Voeg translator niet toe: `%s'"
-#: translator-def.cc:215
+#: translator-def.cc:224
#, c-format
msgid "can't find: `%s'"
msgstr "kan niet vinden: `%s'"
msgid "can't find or create: `%s'"
msgstr "kan niet vinden of scheppen: `%s'"
-#: translator-group.cc:403
+#: translator-group.cc:414
#, c-format
msgid ""
"Can't find property type-check for `%s'. Perhaps you made a typing error?"
msgstr ""
"Kan geen type-controle vinden voor property `%s'. Misschien een tikfout?"
-#: translator-group.cc:417
+#: translator-group.cc:428
#, c-format
msgid "Type check for `%s' failed; value `%s' must be of type `%s'"
msgstr "Type contole gefaald voor `%s'; waarde `%s' moet type hebben: `%s'"
#. programming_error?
-#: translator-group.cc:436
+#: translator-group.cc:447
msgid "ly-get-trans-property: expecting a Translator_group argument"
msgstr "ly-get-trans-property: verwacht een Translator_group argument"
msgid "Oldest supported input version: %s"
msgstr "Oudst ondersteunde invoerversie: %s"
-#: parser.yy:472
+#: parser.yy:473
msgid "Wrong type for property value"
msgstr "Verkeerd type voor property waarde"
-#: parser.yy:667
+#: parser.yy:672
msgid "More alternatives than repeats. Junking excess alternatives."
msgstr ""
"Meer alternatieven dan herhalingen. Schroot overvloedige alternatieven."
-#: parser.yy:731
+#: parser.yy:736
msgid "Second argument must be a symbol"
msgstr "Tweede argument moet een symbool zijn"
-#: parser.yy:736
+#: parser.yy:741
msgid "First argument must be a procedure taking 1 argument"
msgstr "Eerste argument moet een procedure zijn met 1 argument"
-#: parser.yy:1212
+#: parser.yy:1236
msgid "Expecting string as script definition"
msgstr "Verwacht string voor script definitie"
-#: parser.yy:1222
+#: parser.yy:1246
msgid "Can't specify direction for this request"
msgstr "Kan richting voor dit verzoek niet specificeren"
-#: parser.yy:1353
+#: parser.yy:1371
msgid "Expecting musical-pitch value"
msgstr "Verwacht musical-pitch waarde"
-#: parser.yy:1364
+#: parser.yy:1382
msgid "Must have duration object"
msgstr "Moet duur object hebben"
-#: parser.yy:1373 parser.yy:1381 parser.yy:1661
+#: parser.yy:1391 parser.yy:1399 parser.yy:1679
msgid "Have to be in Lyric mode for lyrics"
msgstr "Moet in Lyric modus zijn voor liedteksten"
-#: parser.yy:1546 parser.yy:1575
+#: parser.yy:1564 parser.yy:1593
#, c-format
msgid "not a duration: %d"
msgstr "geen duur: %d"
-#: parser.yy:1584
+#: parser.yy:1602
msgid "Have to be in Note mode for notes"
msgstr "Moet in Note modus zijn voor noten"
-#: parser.yy:1680
+#: parser.yy:1698
msgid "Have to be in Chord mode for chords"
msgstr "Moet in Chord modus zijn voor accoorden"
-#: parser.yy:1842 parser.yy:1860
+#: parser.yy:1860 parser.yy:1878
msgid "need integer number arg"
msgstr "heb integer getal arg nogig"
-#: parser.yy:1846
+#: parser.yy:1864
msgid "Must be positive integer"
msgstr "Moet positieve integer zijn"
msgid "Consider converting the input with the convert-ly script"
msgstr "Overweeg de invoer te converteren met het convert-ly script"
+#: lilypond-item.cc:161
+#, c-format
+msgid "#32 in quarter: %d"
+msgstr "#32 in kwart: %d"
+
+#: lilypond-score.cc:108
+#, c-format
+msgid "Lily output to %s..."
+msgstr "Lelie uitvoer naar %s..."
+
+#: lilypond-score.cc:119
+#, c-format
+msgid "track %d:"
+msgstr "spoor %d:"
+
+#: lilypond-score.cc:155
+msgid "Processing..."
+msgstr "Verwerken..."
+
+#: lilypond-score.cc:164
+msgid "Creating voices..."
+msgstr "Scheppen van stemmen..."
+
+#: lilypond-score.cc:168
+msgid "track "
+msgstr "spoor "
+
+#: lilypond-score.cc:177
+msgid "NOT Filtering tempo..."
+msgstr "NIET Filteren van tempo..."
+
+#: lilypond-score.cc:186
+msgid "NOT Quantifying columns..."
+msgstr "NIET Kwantificeren van kolommen..."
+
+#: lilypond-score.cc:190
+msgid "Quantifying columns..."
+msgstr "Kwantificeren van kolommen..."
+
+#: lilypond-score.cc:223
+msgid "Settling columns..."
+msgstr "Zetten van kolommen..."
+
+#: lilypond-staff.cc:209
+msgid "% MIDI copyright:"
+msgstr "% MIDI copyright:"
+
+#: lilypond-staff.cc:210
+msgid "% MIDI instrument:"
+msgstr "% MIDI instrument:"
+
+#: lilypond-stream.cc:37
+#, c-format
+msgid "lily indent level: %d"
+msgstr "lelie inspring diepte: %d"
+
+#. Maybe better not to translate these?
+#: lilypond-stream.cc:83
+msgid "% Creator: "
+msgstr "% Schepper: "
+
+#: lilypond-stream.cc:88
+msgid "% Automatically generated"
+msgstr "% Automatisch gegenereerd"
+
+#: lilypond-stream.cc:97
+#, c-format
+msgid "% from input file: "
+msgstr "% van invoerbestand: "
+
#: main.cc:93
msgid "write exact durations, e.g.: a4*385/384"
msgstr "schrijf exacte duren, bijv.: a4*385/384"
msgid "set smallest duration"
msgstr "zet kortste duur"
+#: main.cc:103
+msgid "don't timestamp the output"
+msgstr "geen tijdsstempel in de uitvoer"
+
#: main.cc:105
msgid "be verbose"
msgstr "wees breedsprakig"
msgstr "Gebruik: %s [OPTIE]... [BESTAND]"
#: main.cc:116
-msgid "Translate MIDI-file to mudela"
-msgstr "Vertaal MIDI-bestand naar mudela"
+msgid "Translate MIDI-file to lilypond"
+msgstr "Vertaal MIDI-bestand naar lilypond"
#: main.cc:130
#, c-format
#: midi-track-parser.cc:353
msgid "invalid track length"
msgstr "ongeldige spoorlengte"
-
-#: mudela-item.cc:161
-#, c-format
-msgid "#32 in quarter: %d"
-msgstr "#32 in kwart: %d"
-
-#: mudela-score.cc:108
-#, c-format
-msgid "Lily output to %s..."
-msgstr "Lelie uitvoer naar %s..."
-
-#: mudela-score.cc:119
-#, c-format
-msgid "track %d:"
-msgstr "spoor %d:"
-
-#: mudela-score.cc:155
-msgid "Processing..."
-msgstr "Verwerken..."
-
-#: mudela-score.cc:164
-msgid "Creating voices..."
-msgstr "Scheppen van stemmen..."
-
-#: mudela-score.cc:168
-msgid "track "
-msgstr "spoor "
-
-#: mudela-score.cc:177
-msgid "NOT Filtering tempo..."
-msgstr "NIET Filteren van tempo..."
-
-#: mudela-score.cc:186
-msgid "NOT Quantifying columns..."
-msgstr "NIET Kwantificeren van kolommen..."
-
-#: mudela-score.cc:190
-msgid "Quantifying columns..."
-msgstr "Kwantificeren van kolommen..."
-
-#: mudela-score.cc:223
-msgid "Settling columns..."
-msgstr "Zetten van kolommen..."
-
-#: mudela-staff.cc:209
-msgid "% MIDI copyright:"
-msgstr "% MIDI copyright:"
-
-#: mudela-staff.cc:210
-msgid "% MIDI instrument:"
-msgstr "% MIDI instrument:"
-
-#: mudela-stream.cc:37
-#, c-format
-msgid "lily indent level: %d"
-msgstr "lelie inspring diepte: %d"
-
-#. Maybe better not to translate these?
-#: mudela-stream.cc:83
-msgid "% Creator: "
-msgstr "% Schepper: "
-
-#: mudela-stream.cc:88
-msgid "% Automatically generated"
-msgstr "% Automatisch gegenereerd"
-
-#: mudela-stream.cc:97
-#, c-format
-msgid "% from input file: "
-msgstr "% van invoerbestand: "
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
-"POT-Creation-Date: 2001-03-06 12:36+0100\n"
+"POT-Creation-Date: 2001-03-21 16:06+0100\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: August S.Sigov <august@infran.ru>\n"
"Language-Team: Russian <ru@li.org>\n"
"Content-Type: text/plain; charset=koi8-r\n"
"Content-Transfer-Encoding: ENCODING\n"
-#: ly2dvi.py:67 main.cc:95 main.cc:109
+#: ly2dvi.py:86 main.cc:95 main.cc:105
msgid "this help"
msgstr "ÜÔÁ ÓÐÒÁ×ËÁ"
-#: ly2dvi.py:68
+#: ly2dvi.py:87
msgid "change global setting KEY to VAL"
msgstr ""
-#: ly2dvi.py:69
+#: ly2dvi.py:88
msgid "generate PostScript output"
msgstr ""
-#: ly2dvi.py:70
+#: ly2dvi.py:89
msgid "keep all output, and name the directory ly2dvi.dir"
msgstr ""
-#: ly2dvi.py:71
+#: ly2dvi.py:90
msgid "don't run LilyPond"
msgstr ""
-#: ly2dvi.py:72 main.cc:104 main.cc:119
+#: ly2dvi.py:91 main.cc:115
+#, fuzzy
+msgid "verbose"
+msgstr "ÂÙÔØ ÂÏÌÔÌÉ×ÙÍ"
+
+#: ly2dvi.py:92 main.cc:104 main.cc:114
msgid "print version number"
msgstr "×Ù×ÏÄÉÔØ ÎÏÍÅÒ ×ÅÒÓÉÉ"
-#: ly2dvi.py:73 main.cc:106 main.cc:121
+#: ly2dvi.py:93 main.cc:106 main.cc:116
msgid "show warranty and copyright"
msgstr "ÐÏËÁÚÁÔØ ÇÁÒÁÎÔÉÀ É copyright"
-#: ly2dvi.py:74
+#: ly2dvi.py:94
msgid "dump all final output into DIR"
msgstr ""
-#: ly2dvi.py:75 main.cc:113
+#: ly2dvi.py:95 main.cc:109
msgid "write Makefile dependencies for every input file"
msgstr "ÚÁÐÉÓÙ×ÁÔØ ÚÁ×ÉÓÉÍÏÓÔÉ Makefile ÄÌÑ ËÁÖÄÏÇÏ ×ÈÏÄÎÏÇÏ ÆÁÊÌÁ"
-#: ly2dvi.py:101
+#: data-file.cc:118 input.cc:85 ly2dvi.py:123 midi-parser.cc:100 warn.cc:23
+msgid "warning: "
+msgstr "ÐÒÅÄÕÐÒÅÖÄÁÀ: "
+
+#: input.cc:90 ly2dvi.py:128 ly2dvi.py:263 warn.cc:9 warn.cc:17
+msgid "error: "
+msgstr "ÏÛÉÂËÁ: "
+
+#: ly2dvi.py:130
msgid "Exiting ... "
msgstr ""
-#: ly2dvi.py:120
+#: ly2dvi.py:149
#, fuzzy, c-format
-msgid "Reading `%s'"
+msgid "Reading %s..."
msgstr "÷ÙÂÒÁÓÙ×ÁÀ ÍÕÚÙËÕ: `%s'"
-#: ly2dvi.py:124 mapped-file-storage.cc:87 mudela-stream.cc:111
+#: lilypond-stream.cc:111 ly2dvi.py:153 mapped-file-storage.cc:87
#: paper-stream.cc:40 scores.cc:48 simple-file-storage.cc:44 text-stream.cc:23
#, c-format
msgid "can't open file: `%s'"
msgstr "ÎÅ ÍÏÇÕ ÏÔËÒÙÔØ ÆÁÊÌ: `%s'"
-#: ly2dvi.py:187
+#: ly2dvi.py:216
#, fuzzy, c-format
msgid "Usage: %s [OPTION]... FILE"
msgstr "éÓÐÏÌØÚÏ×ÁÎÉÅ: %s [ïðãéñ]... [æáêì]"
-#: ly2dvi.py:189
+#: ly2dvi.py:218
msgid "Generate .dvi with LaTeX for LilyPond"
msgstr ""
-#: ly2dvi.py:191 main.cc:119 main.cc:151
+#: ly2dvi.py:220 main.cc:119 main.cc:146
msgid "Options:"
msgstr "ïÐÃÉÉ:"
-#: data-file.cc:118 input.cc:85 ly2dvi.py:195 midi-parser.cc:100 warn.cc:23
-msgid "warning: "
-msgstr "ÐÒÅÄÕÐÒÅÖÄÁÀ: "
-
-#: ly2dvi.py:196
+#: ly2dvi.py:224
msgid "all output is written in the CURRENT directory"
msgstr ""
-#: ly2dvi.py:198 main.cc:123 main.cc:174
+#: ly2dvi.py:226 main.cc:123 main.cc:169
#, c-format
msgid "Report bugs to %s"
msgstr "óÏÏÂÝÁÊÔÅ ÏÂ ÏÛÉÂËÁÈ ÐÏ %s"
-#: ly2dvi.py:230
+#: ly2dvi.py:260
#, fuzzy, c-format
msgid "Invoking `%s'"
msgstr "÷ÙÂÒÁÓÙ×ÁÀ ÍÕÚÙËÕ: `%s'"
-#: input.cc:90 ly2dvi.py:234 warn.cc:9 warn.cc:17
-msgid "error: "
-msgstr "ÏÛÉÂËÁ: "
-
-#: ly2dvi.py:234
+#: ly2dvi.py:263
#, c-format
msgid "command exited with value %d"
msgstr ""
-#: ly2dvi.py:236
+#: ly2dvi.py:265
msgid "(ignored)"
msgstr ""
-#: ly2dvi.py:277
+#: ly2dvi.py:301
+#, fuzzy, c-format
+msgid "no such setting: %s"
+msgstr "ÎÅÔ ÔÁËÏÇÏ ÉÎÓÔÒÕÍÅÎÔÁ: `%s'"
+
+#: ly2dvi.py:309
#, c-format
msgid "Analyzing `%s'"
msgstr ""
-#: ly2dvi.py:539 scores.cc:44
+#: ly2dvi.py:353
+#, c-format
+msgid "no lilypond output found for %s"
+msgstr ""
+
+#: ly2dvi.py:395
+#, fuzzy, c-format
+msgid "invalid value: %s"
+msgstr "ÎÅ×ÅÒÎÙÊ ÓÉÍ×ÏÌ: `%c'"
+
+#: ly2dvi.py:602 scores.cc:44
#, fuzzy, c-format
msgid "dependencies output to %s..."
msgstr "\"ÂÕÍÁÖÎÙÊ\" ×Ù×ÏÄ × %s..."
-#: ly2dvi.py:540
-#, c-format
-msgid "%s file left in `%s'"
-msgstr ""
+#: ly2dvi.py:603
+#, fuzzy, c-format
+msgid "%s output to %s..."
+msgstr "×Ù×ÏÄ MIDI × %s..."
#: data-file.cc:54
msgid "EOF in a string"
msgid "can't find default font: `%s'"
msgstr "ÎÅ ÍÏÇÕ ÎÁÊÔÉ ÛÒÉÆÔ ÐÏ ÕÍÏÌÞÁÎÉÀ: `%s'"
-#: all-font-metrics.cc:172 includable-lexer.cc:50 scores.cc:137
+#: all-font-metrics.cc:172 includable-lexer.cc:51 scores.cc:137
#, c-format
msgid "(search path: `%s')"
msgstr "(ÐÕÔØ ÐÏÉÓËÁ: `%s')"
-#: all-font-metrics.cc:173 parser.yy:1663
+#: all-font-metrics.cc:173 parser.yy:1681
msgid "Giving up"
msgstr "óÄÁÀÓØ"
msgid "invalid inversion pitch: not part of chord: %s"
msgstr ""
-#: chord-tremolo-engraver.cc:141
+#: chord-tremolo-engraver.cc:141 percent-repeat-engraver.cc:162
msgid "unterminated chord tremolo"
msgstr "ÎÅÚÁËÏÎÞÅÎÎÏÅ ÔÒÅÍÏÌÏ ÁËËÏÒÄÁ"
msgid "no one to print a tremolos"
msgstr "ÎÅËÏÍÕ ÒÉÓÏ×ÁÔØ ÓËÏÂÕ ÐÏ×ÔÏÒÁ"
-#: collision.cc:116
+#: collision.cc:118
msgid "Too many clashing notecolumns. Ignoring them."
msgstr "óÌÉÛËÏÍ ÍÎÏÇÏ ÐÅÒÅÓÅËÁÀÝÉÈÓÑ ÓÔÏÌÂÃÏ× ÎÏÔ. éÇÎÏÒÉÒÕÀ."
msgid "already have a decrescendo"
msgstr "ÄÅËÒÅÝÅÎÄÏ ÕÖÅ ÅÓÔØ"
-#: dynamic-engraver.cc:307
+#: dynamic-engraver.cc:318
msgid "unterminated (de)crescendo"
msgstr "ÎÅÚÁËÏÎÞÅÎÎÏÅ (ÄÅ)ËÒÅÝÅÎÄÏ"
msgid "no one to print a repeat brace"
msgstr "ÎÅËÏÍÕ ÒÉÓÏ×ÁÔØ ÓËÏÂÕ ÐÏ×ÔÏÒÁ"
-#: font-interface.cc:220
+#: font-interface.cc:237
msgid "couldn't find any font satisfying "
msgstr ""
msgid "Nothing to connect hyphen to on the left. Ignoring hyphen request."
msgstr "îÅ Ë ÞÅÍÕ ÐÒÉÓÏÅÄÉÎÉÔØ ÐÅÒÅÎÏÓ ÓÌÅ×Á. éÇÎÏÒÉÒÕÀ ÚÁÐÒÏÓ ÐÅÒÅÎÏÓÁ."
-#: includable-lexer.cc:48 lily-guile.cc:139 midi-score-parser.cc:24
+#: includable-lexer.cc:49 lily-guile.cc:139 midi-score-parser.cc:24
#: scores.cc:136 scores.cc:142
#, c-format
msgid "can't find file: `%s'"
msgid "Huh? Melismatic note found to have associated lyrics."
msgstr ""
-#: main.cc:108
+#: main.cc:104
msgid "EXT"
msgstr "òáóû"
-#: main.cc:108
+#: main.cc:104
#, fuzzy
msgid "use output format EXT (scm, ps, tex or as)"
msgstr "ÉÓÐÏÌØÚÏ×ÁÔØ ×ÙÈÏÄÎÏÊ ÆÏÒÍÁÔ òáóû"
-#: main.cc:110
+#: main.cc:106
#, fuzzy
msgid "FIELD"
msgstr "æáêì"
-#: main.cc:110
+#: main.cc:106
msgid "write header field to BASENAME.FIELD"
msgstr ""
-#: main.cc:111 main.cc:114
+#: main.cc:107 main.cc:110
msgid "DIR"
msgstr "ëáô"
-#: main.cc:111
+#: main.cc:107
msgid "add DIR to search path"
msgstr "ÄÏÂÁ×ÉÔØ ëáô Ë ÐÕÔÉ ÐÏÉÓËÁ"
-#: main.cc:98 main.cc:112
+#: main.cc:98 main.cc:108
msgid "FILE"
msgstr "æáêì"
-#: main.cc:112
+#: main.cc:108
msgid "use FILE as init file"
msgstr "ÉÓÐÏÌØÚÏ×ÁÔØ æáêì ËÁË ÆÁÊÌ ÉÎÉÃÉÁÌÉÚÁÃÉÉ"
-#: main.cc:114
+#: main.cc:110
msgid "prepend DIR to dependencies"
msgstr ""
-#: main.cc:115
+#: main.cc:111
msgid "produce MIDI output only"
msgstr "ÐÒÏÉÚ×ÏÄÉÔØ ×Ù×ÏÄ ÔÏÌØËÏ MIDI"
-#: main.cc:116
+#: main.cc:112
#, fuzzy
msgid "NAME"
msgstr "ïóîï÷á"
-#: main.cc:116
+#: main.cc:112
#, fuzzy
msgid "write output to NAME"
msgstr "ÚÁÐÉÓÙ×ÁÔØ ×Ù×ÏÄ × ïóîï÷á[-x].ÒÁÓÛÉÒÅÎÉÅ"
-#: main.cc:117
+#: main.cc:113
msgid "inhibit file output naming and exporting"
msgstr "ÓËÒÙÔØ ÉÍÅÎÏ×ÁÎÉÅ É ÜËÓÐÏÒÔ ×Ù×ÏÄÁ × ÆÁÊÌ"
-#: main.cc:103 main.cc:118
-msgid "don't timestamp the output"
-msgstr "ÎÅ ÏÔÍÅÞÁÔØ ÄÁÔÕ É ×ÒÅÍÑ ×Ù×ÏÄÁ"
-
-#: main.cc:120
-#, fuzzy
-msgid "verbose"
-msgstr "ÂÙÔØ ÂÏÌÔÌÉ×ÙÍ"
+#: main.cc:117
+msgid "EXPR"
+msgstr ""
-#: main.cc:122
-msgid "write midi ouput in formatted ascii"
+#: main.cc:117
+msgid "evalute EXPR as Scheme after .scm init is read"
msgstr ""
#.
#. No version number or newline here. It confuses help2man
#.
-#: main.cc:139
+#: main.cc:134
#, c-format
msgid "Usage: %s [OPTION]... [FILE]..."
msgstr "éÓÐÏÌØÚÏ×ÁÎÉÅ: %s [ïðãéñ]... [æáêì]..."
-#: main.cc:141
+#: main.cc:136
msgid "Typeset music and or play MIDI from FILE"
msgstr "îÁÂÉÒÁÔØ ÍÕÚÙËÕ É/ÉÌÉ ÐÒÏÉÇÒÙ×ÁÔØ MIDI ÉÚ æáêìÁ"
-#: main.cc:145
+#: main.cc:140
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"
"ÎÁ ÂÕÍÁÇÅ, ÉÓÐÏÌØÚÕÑ ×ÙÓÏËÏÕÒÏ×ÎÅ×ÙÊ ÆÁÊÌ ÏÐÉÓÁÎÉÑ ÎÁ ××ÏÄÅ. Lilypond\n"
"Ñ×ÌÑÅÔÓÑ ÞÁÓÔØÀ ðÒÏÅËÔÁ GNU.\n"
-#: main.cc:155
+#: main.cc:150
msgid "This binary was compiled with the following options:"
msgstr "üÔÏÔ ÉÓÐÏÌÎÑÅÍÙÊ ÆÁÊÌ ÂÙÌ ÓÏÂÒÁÎ ÓÏ ÓÌÅÄÕÀÝÉÍÉ ÏÐÃÉÑÍÉ:"
-#: main.cc:55 main.cc:182
+#: main.cc:55 main.cc:177
#, c-format
msgid ""
"This is free software. It is covered by the GNU General Public License,\n"
"ÐÒÉ ÓÏÂÌÀÄÅÎÉÉ ÎÅËÏÔÏÒÙÈ ÕÓÌÏ×ÉÊ. ÷ÙÚÙ×ÁÊÔÅ ËÁË `%s --warranty' ÄÌÑ\n"
"ÐÏÌÕÞÅÎÉÑ ÄÏÐÏÌÎÉÔÅÌØÎÏÊ ÉÎÆÏÒÍÁÃÉÉ.\n"
-#: main.cc:62 main.cc:189 main.cc:201
+#: main.cc:62 main.cc:184 main.cc:196
#, c-format
msgid "Copyright (c) %s by"
msgstr "÷ÓÅ ÐÒÁ×Á ÚÁÝÉÝÅÎÙ (c) %s by"
-#: main.cc:199
+#: main.cc:194
#, fuzzy
msgid "GNU LilyPond -- The music typesetter"
msgstr "GNU LilyPond -- îÁÂÏÒÝÉË ÍÕÚÙËÉ ðÒÏÅËÔÁ GNU"
-#: main.cc:71 main.cc:207
+#: main.cc:71 main.cc:202
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"
msgid "Transposition by %s makes accidental larger than two"
msgstr ""
-#: music.cc:222
+#: music.cc:224
msgid "ly_get_mus_property (): Not a Music"
msgstr ""
-#: music.cc:236
+#: music.cc:238
msgid "ly_set_mus_property (): Not a symbol"
msgstr ""
-#: music.cc:248
+#: music.cc:250
msgid "ly_set_mus_property (): not of type Music"
msgstr ""
+#: music.cc:264
+msgid "ly_make_music (): Not a string"
+msgstr ""
+
+#: music.cc:284
+msgid "ly_music_name (): Not a music expression"
+msgstr ""
+
#: music-output-def.cc:115
#, c-format
msgid "can't find `%s' context"
msgstr "ÎÅ ÍÏÇÕ ÎÁÊÔÉ ËÏÎÔÅËÓÔ `%s'"
-#: my-lily-lexer.cc:137
+#: my-lily-lexer.cc:138
#, c-format
msgid "Identifier name is a keyword: `%s'"
msgstr "éÍÑ ËÏÍÁÎÄÙ Ñ×ÌÑÅÔÓÑ ËÌÀÞÅ×ÙÍ ÓÌÏ×ÏÍ: `%s'"
-#: my-lily-lexer.cc:157
+#: my-lily-lexer.cc:158
#, c-format
msgid "error at EOF: %s"
msgstr "ÏÛÍÂËÁ × ËÏÎÃÅ ÆÁÊÌÁ: %s"
msgid "Parsing..."
msgstr "òÁÚÂÉÒÁÀ..."
-#: my-lily-parser.cc:55
+#: my-lily-parser.cc:57
msgid "Braces don't match"
msgstr "æÉÇÕÒÎÙÅ ÓËÏÂËÉ ÎÅ ÓÏ×ÐÁÄÁÀÔ"
msgid "paper output to %s..."
msgstr "\"ÂÕÍÁÖÎÙÊ\" ×Ù×ÏÄ × %s..."
-#: mudela-stream.cc:93 paper-outputter.cc:94 performance.cc:102
+#: lilypond-stream.cc:93 paper-outputter.cc:85 performance.cc:95
msgid ", at "
msgstr ", ×"
-#: paper-outputter.cc:245
+#: paper-outputter.cc:232
#, fuzzy, c-format
msgid "writing header field %s to %s..."
msgstr "úÁÐÉÓÙ×ÁÀ ÆÁÊÌ ÚÁ×ÉÓÉÍÏÓÔÅÊ: `%s'..."
msgid "Preprocessing elements..."
msgstr "ðÒÅÄ×ÁÒÉÔÅÌØÎÏ ÏÂÒÁÂÁÔÙ×ÁÀ ÜÌÅÍÅÎÔÙ..."
-#: paper-score.cc:113
+#: paper-score.cc:114
msgid "Outputting Score, defined at: "
msgstr ""
msgid "none of these in my family: `%s'"
msgstr "ÏÎÉ ÍÎÅ ÎÅ ÒÏÄÓÔ×ÅÎÎÉËÉ"
+#: percent-repeat-engraver.cc:108
+#, fuzzy
+msgid "Don't know yet how to handle this percent repeat."
+msgstr "îÅ ÚÎÁÀ, ÞÔÏ ÄÅÌÁÔØ Ó ÐÕÓÔÙÍÉ ËÌÀÞÁÍÉ"
+
+#: percent-repeat-iterator.cc:53
+#, fuzzy
+msgid "no one to print a percent"
+msgstr "ÎÅËÏÍÕ ÒÉÓÏ×ÁÔØ ÓËÏÂÕ ÐÏ×ÔÏÒÁ"
+
#: performance.cc:51
msgid "Track ... "
msgstr "äÏÒÏÖËÁ ..."
msgid "Creator: "
msgstr "óÏÚÄÁÔÅÌØ: "
-#: performance.cc:116
+#: performance.cc:109
#, c-format
msgid "from musical definition: %s"
msgstr "ÉÚ ÍÕÚÙËÁÌØÎÏÊ ÎÏÔÁÃÉÉ %s"
-#: performance.cc:171
+#: performance.cc:164
#, c-format
msgid "MIDI output to %s..."
msgstr "×Ù×ÏÄ MIDI × %s..."
msgid "elapsed time: %.2f seconds"
msgstr "ÚÁÔÒÁÞÅÎÎÏÅ ×ÒÅÍÑ: %.2f ÓÅËÕÎÄ"
-#: score-engraver.cc:177
+#: score-engraver.cc:183
#, c-format
msgid "unbound spanner `%s'"
msgstr ""
msgid "unterminated slur"
msgstr "ÎÅÚÁ×ÅÒÛÅÎÎÁÑ ÌÉÇÁ"
-#: slur-engraver.cc:142
+#. How to shut up this warning, when Voice_devnull_engraver has
+#. eaten start request?
+#: slur-engraver.cc:144
#, fuzzy
msgid "can't find start of slur"
msgstr "ÞÔÏ-ÔÏ ÎÅ ÎÁÊÄÕ ÎÁÞÁÌÏ ÇÒÕÐÐÉÒÏ×ËÉ ÛÔÉÌÅÊ"
msgid "can't find ascii character: %d"
msgstr "ÎÅ ÍÏÇÕ ÎÁÊÔÉ ÓÉÍ×ÏÌ ASCII: `%d'"
-#: tfm-reader.cc:105
+#: tfm-reader.cc:106
#, c-format
-msgid "TFM header of `%s' has only %u word(s)"
+msgid "TFM header of `%s' has only %u word (s)"
msgstr ""
-#: tfm-reader.cc:139
+#: tfm-reader.cc:140
#, c-format
msgid "%s: TFM file has %u parameters, which is more than the %u I can handle"
msgstr ""
-#: tie-engraver.cc:211 tie-performer.cc:173
+#. How to shut up this warning, when no notes appeared because
+#. they were suicided by Thread_devnull_engraver?
+#: tie-engraver.cc:215 tie-performer.cc:173
msgid "No ties were created!"
msgstr ""
-#: tie-engraver.cc:230
+#: tie-engraver.cc:234
msgid "lonely tie"
msgstr ""
msgid "unknown translator: `%s'"
msgstr ""
-#: translator-def.cc:96
+#: translator-def.cc:99
msgid "Program has no such type"
msgstr ""
-#: translator-def.cc:102
+#: translator-def.cc:105
#, c-format
msgid "Already contains: `%s'"
msgstr "õÖÅ ÓÏÄÅÒÖÉÔ: `%s'"
-#: translator-def.cc:103
+#: translator-def.cc:106
#, c-format
msgid "Not adding translator: `%s'"
msgstr ""
-#: translator-def.cc:215
+#: translator-def.cc:224
#, c-format
msgid "can't find: `%s'"
msgstr "ÎÅ ÍÏÇÕ ÎÁÊÔÉ: `%s'"
msgid "can't find or create: `%s'"
msgstr "ÎÅ ÍÏÇÕ ÎÁÊÔÉ ÉÌÉ ÓÏÚÄÁÔØ: `%s'"
-#: translator-group.cc:403
+#: translator-group.cc:414
#, c-format
msgid ""
"Can't find property type-check for `%s'. Perhaps you made a typing error?"
msgstr ""
-#: translator-group.cc:417
+#: translator-group.cc:428
#, c-format
msgid "Type check for `%s' failed; value `%s' must be of type `%s'"
msgstr ""
#. programming_error?
-#: translator-group.cc:436
+#: translator-group.cc:447
msgid "ly-get-trans-property: expecting a Translator_group argument"
msgstr ""
msgid "Oldest supported input version: %s"
msgstr ""
-#: parser.yy:471
+#: parser.yy:473
msgid "Wrong type for property value"
msgstr ""
-#: parser.yy:666
+#: parser.yy:672
msgid "More alternatives than repeats. Junking excess alternatives."
msgstr ""
-#: parser.yy:730
+#: parser.yy:736
msgid "Second argument must be a symbol"
msgstr "÷ÔÏÒÏÊ ÁÒÇÕÍÅÎÔ ÄÏÌÖÅÎ ÂÙÔØ ÓÉÍ×ÏÌÏÍ"
-#: parser.yy:735
+#: parser.yy:741
msgid "First argument must be a procedure taking 1 argument"
msgstr ""
-#: parser.yy:1211
+#: parser.yy:1236
msgid "Expecting string as script definition"
msgstr ""
-#: parser.yy:1221
+#: parser.yy:1246
msgid "Can't specify direction for this request"
msgstr "îÅ ÍÏÇÕ ÕËÁÚÁÔØ ÎÁÐÒÁ×ÌÅÎÉÅ ÄÌÑ ÜÔÏÇÏ ÚÁÐÒÏÓÁ"
-#: parser.yy:1353
+#: parser.yy:1371
msgid "Expecting musical-pitch value"
msgstr ""
-#: parser.yy:1364
+#: parser.yy:1382
#, fuzzy
msgid "Must have duration object"
msgstr "ÕÓÔÁÎÏ×ÉÔØ ÎÁÉÍÅÎØÛÕÀ ÐÒÏÄÏÌÖÉÔÅÌØÎÏÓÔØ"
-#: parser.yy:1373 parser.yy:1381 parser.yy:1661
+#: parser.yy:1391 parser.yy:1399 parser.yy:1679
msgid "Have to be in Lyric mode for lyrics"
msgstr "äÏÌÖÅÎ ÂÙÔØ × ìÉÒÉÞÅÓËÏÍ ÒÅÖÉÍÅ ÄÌÑ ÌÉÒÉËÉ"
-#: parser.yy:1546 parser.yy:1575
+#: parser.yy:1564 parser.yy:1593
#, c-format
msgid "not a duration: %d"
msgstr "ÎÅ ÐÒÏÄÏÌÖÉÔÅÌØÎÏÓÔØ: %d"
-#: parser.yy:1584
+#: parser.yy:1602
msgid "Have to be in Note mode for notes"
msgstr "äÏÌÖÅÎ ÂÙÔØ × îÏÔÎÏÍ ÒÅÖÉÍÅ ÄÌÑ ÎÏÔ"
-#: parser.yy:1680
+#: parser.yy:1698
msgid "Have to be in Chord mode for chords"
msgstr "äÏÌÖÅÎ ÂÙÔØ × áËËÏÒÄÎÏÍ ÒÅÖÉÍÅ ÄÌÑ ÁËËÏÒÄÏ×"
-#: parser.yy:1842 parser.yy:1860
+#: parser.yy:1860 parser.yy:1878
msgid "need integer number arg"
msgstr ""
-#: parser.yy:1846
+#: parser.yy:1864
msgid "Must be positive integer"
msgstr ""
-#: lexer.ll:165
+#: lexer.ll:166
msgid "EOF found inside a comment"
msgstr "ëÏÎÅà ÆÁÊÌÁ ×ÎÕÔÒÉ ËÏÍÍÅÎÔÁÒÉÑ"
-#: lexer.ll:179
+#: lexer.ll:180
msgid "\\maininput disallowed outside init files"
msgstr ""
-#: lexer.ll:203
+#: lexer.ll:204
#, fuzzy, c-format
msgid "wrong or undefined identifier: `%s'"
msgstr "ÎÅÉÚ×ÅÓÔÎÁÑ ÍÅÔËÁ/ËÏÍÁÎÄÁ: `%s'"
#. backup rule
-#: lexer.ll:208
+#: lexer.ll:209
msgid "Missing end quote"
msgstr "ïÔÓÕÔÓ×ÕÅÔ ÚÁËÌÀÞÉÔÅÌØÎÁÑ ËÁ×ÙÞËÁ"
#. backup rule
-#: lexer.ll:230 lexer.ll:234
+#: lexer.ll:231 lexer.ll:235
msgid "white expected"
msgstr "× ÔÏ ×ÒÅÍÑ ËÁË ÏÖÉÄÁÌÏÓØ"
-#: lexer.ll:243
+#: lexer.ll:244
msgid "Can't evaluate Scheme in safe mode"
msgstr "îÅ ÍÏÇÕ ×ÙÐÏÌÎÑÔØ ËÏÄ ÓÈÅÍÙ × ÂÅÚÏÐÁÓÎÏÍ ÒÅÖÉÍÅ"
-#: lexer.ll:335
+#: lexer.ll:336
msgid "Brace found at end of lyric. Did you forget a space?"
msgstr ""
-#: lexer.ll:439
+#: lexer.ll:440
#, c-format
msgid "invalid character: `%c'"
msgstr "ÎÅ×ÅÒÎÙÊ ÓÉÍ×ÏÌ: `%c'"
-#: lexer.ll:520
+#: lexer.ll:521
#, c-format
msgid "unknown escaped string: `\\%s'"
msgstr "ÎÅÉÚ×ÅÓÔÎÁÑ escape-ÐÏÓÌÅÄÏ×ÁÔÅÌØÎÏÓÔØ: `\\%s'"
-#: lexer.ll:602
+#: lexer.ll:603
#, fuzzy, c-format
msgid "incorrect lilypond version: %s (%s, %s)"
msgstr "ÎÅ×ÅÒÎÁÑ ×ÅÒÓÉÑ mudela: %s (%s, %s)"
-#: lexer.ll:603
+#: lexer.ll:604
msgid "Consider converting the input with the convert-ly script"
msgstr ""
+#: lilypond-item.cc:161
+#, c-format
+msgid "#32 in quarter: %d"
+msgstr "#32 × ÞÅÔ×ÅÒÔÎÏÊ: %d"
+
+#: lilypond-score.cc:108
+#, c-format
+msgid "Lily output to %s..."
+msgstr "Lily ×ÙÈÏÄ × %s..."
+
+#: lilypond-score.cc:119
+#, c-format
+msgid "track %d:"
+msgstr "ÄÏÒÏÖËÁ %d:"
+
+#: lilypond-score.cc:155
+msgid "Processing..."
+msgstr "ïÂÒÁÂÁÔÙ×ÁÀ..."
+
+#: lilypond-score.cc:164
+msgid "Creating voices..."
+msgstr "óÏÚÄÁÀ ÇÏÌÏÓÁ..."
+
+#: lilypond-score.cc:168
+msgid "track "
+msgstr "ÄÏÒÏÖËÁ"
+
+#: lilypond-score.cc:177
+msgid "NOT Filtering tempo..."
+msgstr ""
+
+#: lilypond-score.cc:186
+msgid "NOT Quantifying columns..."
+msgstr ""
+
+#: lilypond-score.cc:190
+msgid "Quantifying columns..."
+msgstr ""
+
+#: lilypond-score.cc:223
+msgid "Settling columns..."
+msgstr ""
+
+#: lilypond-staff.cc:209
+msgid "% MIDI copyright:"
+msgstr "% MIDI copyright:"
+
+#: lilypond-staff.cc:210
+msgid "% MIDI instrument:"
+msgstr "% MIDI ÉÎÓÔÒÕÍÅÎÔ:"
+
+#: lilypond-stream.cc:37
+#, c-format
+msgid "lily indent level: %d"
+msgstr "ÕÒÏ×ÅÎØ ÏÔÓÔÕÐÏ× lily: %d"
+
+#. Maybe better not to translate these?
+#: lilypond-stream.cc:83
+msgid "% Creator: "
+msgstr "% óÏÚÄÁÔÅÌØ: "
+
+#: lilypond-stream.cc:88
+msgid "% Automatically generated"
+msgstr "% á×ÔÏÍÁÔÉÞÅÓËÉ ÓÇÅÎÅÒÉÒÏ×ÁÎÏ"
+
+#: lilypond-stream.cc:97
+#, c-format
+msgid "% from input file: "
+msgstr "% ÉÚ ×ÈÏÄÎÏÇÏ ÆÁÊÌÁ: "
+
#: main.cc:93
msgid "write exact durations, e.g.: a4*385/384"
msgstr ""
msgid "set smallest duration"
msgstr "ÕÓÔÁÎÏ×ÉÔØ ÎÁÉÍÅÎØÛÕÀ ÐÒÏÄÏÌÖÉÔÅÌØÎÏÓÔØ"
+#: main.cc:103
+msgid "don't timestamp the output"
+msgstr "ÎÅ ÏÔÍÅÞÁÔØ ÄÁÔÕ É ×ÒÅÍÑ ×Ù×ÏÄÁ"
+
#: main.cc:105
msgid "be verbose"
msgstr "ÂÙÔØ ÂÏÌÔÌÉ×ÙÍ"
msgstr "éÓÐÏÌØÚÏ×ÁÎÉÅ: %s [ïðãéñ]... [æáêì]"
#: main.cc:116
-msgid "Translate MIDI-file to mudela"
+#, fuzzy
+msgid "Translate MIDI-file to lilypond"
msgstr "ôÒÁÎÓÌÉÒÏ×ÁÔØ MIDI-ÆÁÊÌ × mudela"
#: main.cc:130
msgid "invalid track length"
msgstr "ÎÅ×ÅÒÎÁÑ ÄÌÉÎÁ ÄÏÒÏÖËÉ"
-#: mudela-item.cc:161
-#, c-format
-msgid "#32 in quarter: %d"
-msgstr "#32 × ÞÅÔ×ÅÒÔÎÏÊ: %d"
-
-#: mudela-score.cc:108
-#, c-format
-msgid "Lily output to %s..."
-msgstr "Lily ×ÙÈÏÄ × %s..."
-
-#: mudela-score.cc:119
-#, c-format
-msgid "track %d:"
-msgstr "ÄÏÒÏÖËÁ %d:"
-
-#: mudela-score.cc:155
-msgid "Processing..."
-msgstr "ïÂÒÁÂÁÔÙ×ÁÀ..."
-
-#: mudela-score.cc:164
-msgid "Creating voices..."
-msgstr "óÏÚÄÁÀ ÇÏÌÏÓÁ..."
-
-#: mudela-score.cc:168
-msgid "track "
-msgstr "ÄÏÒÏÖËÁ"
-
-#: mudela-score.cc:177
-msgid "NOT Filtering tempo..."
-msgstr ""
-
-#: mudela-score.cc:186
-msgid "NOT Quantifying columns..."
-msgstr ""
-
-#: mudela-score.cc:190
-msgid "Quantifying columns..."
-msgstr ""
-
-#: mudela-score.cc:223
-msgid "Settling columns..."
-msgstr ""
-
-#: mudela-staff.cc:209
-msgid "% MIDI copyright:"
-msgstr "% MIDI copyright:"
-
-#: mudela-staff.cc:210
-msgid "% MIDI instrument:"
-msgstr "% MIDI ÉÎÓÔÒÕÍÅÎÔ:"
-
-#: mudela-stream.cc:37
-#, c-format
-msgid "lily indent level: %d"
-msgstr "ÕÒÏ×ÅÎØ ÏÔÓÔÕÐÏ× lily: %d"
-
-#. Maybe better not to translate these?
-#: mudela-stream.cc:83
-msgid "% Creator: "
-msgstr "% óÏÚÄÁÔÅÌØ: "
-
-#: mudela-stream.cc:88
-msgid "% Automatically generated"
-msgstr "% á×ÔÏÍÁÔÉÞÅÓËÉ ÓÇÅÎÅÒÉÒÏ×ÁÎÏ"
-
-#: mudela-stream.cc:97
-#, c-format
-msgid "% from input file: "
-msgstr "% ÉÚ ×ÈÏÄÎÏÇÏ ÆÁÊÌÁ: "
-
#, fuzzy
#~ msgid "Dependency file left in `%s'"
#~ msgstr "úÁÐÉÓÙ×ÁÀ ÆÁÊÌ ÚÁ×ÉÓÉÍÏÓÔÅÊ: `%s'..."
#~ msgid "No key name, assuming `C'"
#~ msgstr "îÅÔ ÎÁÚ×ÁÎÉÑ ËÌÀÞÁ, ÐÏÄÒÁÚÕÍÅ×ÁÀ `C'"
-#~ msgid "Don't know how handle empty keys"
-#~ msgstr "îÅ ÚÎÁÀ, ÞÔÏ ÄÅÌÁÔØ Ó ÐÕÓÔÙÍÉ ËÌÀÞÁÍÉ"
-
#~ msgid "out of tune:"
#~ msgstr "×ÎÅ ÔÏÎÁÌØÎÏÓÔÉ:"
;
; How should a bar line behave at a break?
;
+;; Why prepend `default-' to every scm identifier?
(define (default-break-barline glyph dir)
(let ((result (assoc glyph
'((":|:" . (":|" . "|:"))
(uniqued-alist (cdr alist) (cons (car alist) acc)))))
+;; used in denneboom.ly
+(define (cons-map f x)
+ (cons (f (car x)) (f (cdr x))))
-;;(define (cons-map f x)
-;; (cons (f (car x)) (f (cdr x))))
-
-
+;; used where?
;;(define (reduce operator list)
;; (if (null? (cdr list)) (car list)
;; (operator (car list) (reduce operator (cdr list)))))
(string-append (number->string line) " " file)
)
+;; cpp hack to get useful error message
+(define ifdef "First run this through cpp.")
+(define ifndef "First run this through cpp.")
(define default-script-alist '())
(define font-name-alist '())
(begin
(set! fonts (cons (cons "default" (generate-default-font)) fonts))
(display "\n" (current-error-port))
- (if (and (defined? 'mudelapaperlinewidth)
- (> (string->number mudelapaperlinewidth) 0))
+ (if (and (defined? 'lilypondpaperlinewidth)
+ (> (string->number lilypondpaperlinewidth) 0))
(set! canvas-width
- (inexact->exact (string->number mudelapaperlinewidth))))))
+ (inexact->exact (string->number lilypondpaperlinewidth))))))
(set! canvas-height height)
(set! canvas (make-array " " canvas-height canvas-width)))
'''
TODO:
- * --dependencies
+ * check --dependencies
+
+ * move versatile taglines,
+
+ \header {
+ beginfooter=\mutopiaPD
+ endfooter=\tagline -> 'lily was here <version>'
+ }
+
+ * head/header tagline/endfooter
* dvi from lilypond .tex output? This is hairy, because we create dvi
from lilypond .tex *and* header output.
'latexheaders' : [],
'latexpackages' : ['geometry'],
'papersize' : [],
- 'pagenumber' : [],
+ 'pagenumber' : [1],
'textheight' : [],
'linewidth' : [],
'orientation' : []
# generate ps ?
postscript_p = 0
+# be verbose?
+verbose_p = 0
+
option_definitions = [
('', 'h', 'help', _ ("this help")),
('KEY=VAL', 's', 'set', _ ("change global setting KEY to VAL")),
('', 'P', 'postscript', _ ("generate PostScript output")),
('', 'k', 'keep', _ ("keep all output, and name the directory ly2dvi.dir")),
('', '', 'no-lily', _ ("don't run LilyPond")),
+ ('', 'V', 'verbose', _ ("verbose")),
('', 'v', 'version', _ ("print version number")),
('', 'w', 'warranty', _ ("show warranty and copyright")),
('DIR', '', 'outdir', _ ("dump all final output into DIR")),
+def star_progress (s):
+ '''Progress messages that stand out between lilypond stuff'''
+ progress ('*** ' + s)
+
def progress (s):
- '''Make the progress messages stand out between lilypond stuff'''
- # Why should they have to stand out? Blend in would be nice too.
- sys.stderr.write ('*** ' + s+ '\n')
+ sys.stderr.write (s + '\n')
def warning (s):
sys.stderr.write (_ ("warning: ") + s)
except IOError:
pass
if f:
- sys.stderr.write (_ ("Reading `%s'") % nm)
+ sys.stderr.write (_ ("Reading %s...") % nm)
sys.stderr.write ('\n');
return (f.read (), nm)
else:
os.environ['TFMFONTS'] = original_dir + fp
os.chdir (temp_dir)
- progress (_ ('Temp directory is `%s\'\n') % temp_dir)
+ if verbose_p:
+ progress (_ ('Temp directory is `%s\'\n') % temp_dir)
def system (cmd, ignore_error = 0):
- sys.stderr.write (_ ("Invoking `%s\'") % cmd)
- sys.stderr.write ('\n')
+ if verbose_p:
+ progress (_ ("Invoking `%s\'") % cmd)
st = os.system (cmd)
if st:
msg = ( _ ("error: ") + _ ("command exited with value %d") % st)
def cleanup_temp ():
if not keep_temp_dir:
- progress (_ ('Cleaning up `%s\'') % temp_dir)
+ if verbose_p:
+ progress (_ ('Cleaning up `%s\'') % temp_dir)
system ('rm -rf %s' % temp_dir)
linewidth = 597
s = s + '\geometry{width=%spt%s,headheight=2mm,headsep=0pt,footskip=2mm,%s}\n' % (linewidth, textheight, orientation)
- s= s + r'''
-\usepackage[latin1]{inputenc}
+ s = s + r'''
+\usepackage[latin1]{inputenc}
\input{titledefs}
\makeatletter
-\renewcommand{\@oddfoot}{\parbox{\textwidth}{\mbox{}\thefooter}}%%
+\renewcommand{\@oddfoot}{\parbox{\textwidth}{\mbox{}\thefooter}}%
'''
- if extra['pagenumber'] and extra['pagenumber'][-1]:
+
+ if extra['pagenumber'] and extra['pagenumber'][-1] and extra['pagenumber'][-1] != 'no':
s = s + r'''
- \renewcommand{\@oddhead}{\parbox{\textwidth}%%
- {\mbox{}\small\theheader\hfill\textbf{\thepage}}}%%'''
+\renewcommand{\@oddhead}{\parbox{\textwidth}%
+ {\mbox{}\small\theheader\hfill\textbf{\thepage}}}
+'''
else:
- s = s + '\\pagestyle{empty}'
-
- s = s + '\\begin{document}'
+ s = s + '\\pagestyle{empty}\n'
+
+ s = s + '\\makeatother\n'
+ s = s + '\\begin{document}\n'
+
first = 1
for t in tfiles:
s = s + one_latex_definition (t, first)
first = 0
-
+
+ s = s + r'''
+\makeatletter
+\renewcommand{\@oddfoot}{\parbox{\textwidth}{\mbox{}\lilypondtagline}}%
+\makeatother
+'''
s = s + '\\end{document}'
return s
f.close ()
# todo: nonstopmode
- system ('latex %s' % latex_file)
+ system ('latex \\\\nonstopmode \\\\input %s' % latex_file)
return latex_file + '.dvi'
def generate_postscript (dvi_name, extra):
set_setting (extra_init, ss[0], ss[1])
elif o == '--dependencies' or o == '-d':
track_dependencies_p = 1
+ elif o == '--verbose' or o == '-V':
+ verbose_p = 1
elif o == '--version' or o == '-v':
identify ()
sys.exit (0)
if outdir != '.':
system ('mkdir -p %s' % outdir)
system ('cp \"%s\" \"%s\"' % (srcname, dest ))
- system ('cp *.midi %s' % outdir, ignore_error = 1)
+ if re.match ('[.]midi', string.join (os.listdir ('.'))):
+ system ('cp *.midi %s' % outdir, ignore_error = 1)
depfile = os.path.join (outdir, base + '.dep')
# most insteresting info last
progress (_ ("dependencies output to %s...") % depfile)
- progress (_ ("%s file left in `%s'") % (type, dest))
+ progress (_ ("%s output to %s...") % (type, dest))
--- /dev/null
+% pedal.tex
+
+\hsize = 296mm
+\vsize = 210mm
+
+% fix chord.cc::banter_str before removing these
+\def\fetdef#1#2{%
+ \def#1{\hbox{\char#2}}}
+
+\fetdef\pedalasterisk{101}
+\fetdef\pedaldash{102}
+\fetdef\pedaldot{103}
+\fetdef\pedalP{104}
+\fetdef\pedald{105}
+\fetdef\pedale{106}
+
+%\font\fetatwentysixfontt=feta26 scaled \magstep 4
+%\font\fetatwentysixfontt=feta26 scaled 18842
+\font\fetatwentysixfontt=feta26 scaled 2407
+\magnification \magstep 4
+
+\def\fetafont{\fetatwentysixfontt}
+
+\baselineskip 12mm
+
+\vbox{
+\kern 20mm
+
+\hbox{
+\fetatwentysixfontt
+\hbox { \pedalP\kern-0.06ex\pedale\kern -0.55ex\pedald\pedaldot}
+\kern 50mm
+\pedalasterisk
+}
+}
+
+\end
+
+%\endinput