source file of the GNU LilyPond music typesetter
- (c) 1997--2006 Han-Wen Nienhuys <hanwen@xs4all.nl>
+ (c) 1997--2007 Han-Wen Nienhuys <hanwen@xs4all.nl>
Jan Nieuwenhuizen <janneke@gnu.org>
*/
%type <scm> absolute_pitch
%type <scm> assignment_id
%type <scm> bare_number
+%type <scm> unsigned_number
%type <scm> bass_figure
%type <scm> figured_bass_modification
%type <scm> br_bass_figure
lilypond_header_body:
{
- $$ = get_header(PARSER);
+ $$ = get_header (PARSER);
PARSER->lexer_->add_scope ($$);
}
| lilypond_header_body assignment {
repeated_music:
- REPEAT simple_string bare_unsigned music alternative_music
+ REPEAT simple_string unsigned_number music alternative_music
{
- $$ = MAKE_SYNTAX ("repeat", @$, $2, scm_int2num ($3), $4, $5);
+ $$ = MAKE_SYNTAX ("repeat", @$, $2, $3, $4, $5);
}
;
generic_prefix_music_scm {
$$ = run_music_function (PARSER, $1);
}
- | CONTEXT simple_string optional_id optional_context_mod music {
+ | CONTEXT simple_string optional_id optional_context_mod music {
$$ = MAKE_SYNTAX ("context-specification", @$, $2, $3, $5, $4, SCM_BOOL_F);
}
| NEWCONTEXT simple_string optional_id optional_context_mod music {
octave_check:
/**/ { $$ = SCM_EOL; }
| '=' { $$ = scm_from_int (0); }
- | '=' sub_quotes { $$ = scm_from_int ($2); }
+ | '=' sub_quotes { $$ = scm_from_int (-$2); }
| '=' sup_quotes { $$ = scm_from_int ($2); }
;
script_abbreviation:
'^' {
- $$ = scm_makfrom0str ("Hat");
+ $$ = scm_from_locale_string ("Hat");
}
| '+' {
- $$ = scm_makfrom0str ("Plus");
+ $$ = scm_from_locale_string ("Plus");
}
| '-' {
- $$ = scm_makfrom0str ("Dash");
+ $$ = scm_from_locale_string ("Dash");
}
| '|' {
- $$ = scm_makfrom0str ("Bar");
+ $$ = scm_from_locale_string ("Bar");
}
| ANGLE_CLOSE {
- $$ = scm_makfrom0str ("Larger");
+ $$ = scm_from_locale_string ("Larger");
}
| '.' {
- $$ = scm_makfrom0str ("Dot");
+ $$ = scm_from_locale_string ("Dot");
}
| '_' {
- $$ = scm_makfrom0str ("Underscore");
+ $$ = scm_from_locale_string ("Underscore");
}
;
}
;
+unsigned_number:
+ bare_unsigned { $$ = scm_from_int ($1); }
+ | NUMBER_IDENTIFIER {
+ $$ = $1;
+ }
+ ;
+
+
exclamations:
{ $$ = 0; }
| exclamations '!' { $$ ++; }
SCM
get_next_unique_context_id ()
{
- return scm_makfrom0str ("$uniqueContextId");
+ return scm_from_locale_string ("$uniqueContextId");
}
static int new_context_count;
char s[128];
snprintf (s, sizeof (s)-1, "uniqueContext%d", new_context_count++);
- return scm_makfrom0str (s);
+ return scm_from_locale_string (s);
}