The horizontal middle should not overlap with a staffline.
"
}
-\score{
- \relative c''{
- %b2~b4~b8~b16~b32~b64 r64\break
- %a2~a4~a8~a16~a32~a64 r64
- \time 8/4
- d1 ~ d2~d4~d8~d16~d32~d64 r64\break
- a1~ a2~a4~a8~a16~a32~a64 r64
- %c2~c4~c8~c16~c32~c64 r64
- }
- \paper{
- linewidth=0.
- }
+\paper{
+ raggedright= ##t
}
+
+\relative c''{
+ %b2~b4~b8~b16~b32~b64 r64\break
+ %a2~a4~a8~a16~a32~a64 r64
+ \time 8/4
+ d1 ~ d2~d4~d8~d16~d32~d64 r64\break
+ a1~ a2~a4~a8~a16~a32~a64 r64
+ %c2~c4~c8~c16~c32~c64 r64
+}
%type <scm> context_def_spec_block context_def_spec_body
%type <scm> context_mod context_def_mod optional_context_mod
%type <scm> context_prop_spec
+%type <scm> direction_less_char
%type <scm> duration_length fraction
%type <scm> embedded_scm scalar
%type <scm> identifier_init
}
;
-
-direction_less_event:
+direction_less_char:
'[' {
-
-
-/*
-
-TODO: should take all these defs out of the parser, adn make use
-configurable, i.e.
-
-
-(set-articulation '~ "trill")
-
-*/
- Music *m = MY_MAKE_MUSIC ("BeamEvent");
- m->set_spot (THIS->here_input ());
- m->set_property ("span-direction", scm_int2num (START));
- $$ = m;
+ $$ = ly_symbol2scm ("bracketOpenSymbol");
}
| ']' {
- Music *m = MY_MAKE_MUSIC ("BeamEvent");
- m->set_spot (THIS->here_input ());
- m->set_property ("span-direction", scm_int2num (STOP));
- $$ = m;
+ $$ = ly_symbol2scm ("bracketCloseSymbol");
}
- | '~' {
- Music *m = MY_MAKE_MUSIC ("TieEvent");
- m->set_spot (THIS->here_input ());
- $$ = m;
+ | '~' {
+ $$ = ly_symbol2scm ("tildeSymbol");
}
- | close_event {
- $$ = $1;
- dynamic_cast<Music *> ($$)->set_property ("span-direction",
- scm_int2num (START));
+ | '(' {
+ $$ = ly_symbol2scm ("parenthesisOpenSymbol");
}
- | open_event {
- $$ = $1;
- dynamic_cast<Music *> ($$)->set_property ("span-direction",
- scm_int2num (STOP));
+ | ')' {
+ $$ = ly_symbol2scm ("parenthesisCloseSymbol");
+ }
+ | E_EXCLAMATION {
+ $$ = ly_symbol2scm ("escapedExclamationSymbol");
+ }
+ | E_OPEN {
+ $$ = ly_symbol2scm ("escapedParenthesisOpenSymbol");
+ }
+ | E_CLOSE {
+ $$ = ly_symbol2scm ("escapedParenthesisCloseSymbol");
+ }
+ | E_BIGGER {
+ $$ = ly_symbol2scm ("escapedBiggerSymbol");
+ }
+ | E_SMALLER {
+ $$ = ly_symbol2scm ("escapedSmallerSymbol");
+ }
+ ;
+
+direction_less_event:
+ direction_less_char {
+ SCM predefd = THIS->lexer_->lookup_identifier_symbol ($1);
+ Music * m = 0:
+ if (unsmob_music (predefd))
+ {
+ m = unsmob_music (predefd)->clone ();
+ }
+ else
+ {
+ m = MY_MAKE_MUSIC ("Music");
+ }
+ m->set_spot (THIS->here_input ());
+ $$ = m;
}
| EVENT_IDENTIFIER {
$$ = unsmob_music ($1);
| steno_tonic_pitch
;
-close_event:
- '(' {
- Music *s = MY_MAKE_MUSIC ("SlurEvent");
- $$ = s;
- s->set_spot (THIS->here_input ());
- }
- | E_OPEN {
- Music *s = MY_MAKE_MUSIC ("PhrasingSlurEvent");
- $$ = s;
- s->set_spot (THIS->here_input ());
- }
- | E_SMALLER {
- Music *s = MY_MAKE_MUSIC ("CrescendoEvent");
- $$ = s;
- s->set_spot (THIS->here_input ());
- }
- | E_BIGGER {
- Music *s = MY_MAKE_MUSIC ("DecrescendoEvent");
- $$ = s;
- s->set_spot (THIS->here_input ());
- }
- ;
-
-
-open_event:
- E_EXCLAMATION {
- Music *s = MY_MAKE_MUSIC ("CrescendoEvent");
- s->set_spot (THIS->here_input ());
-
- $$ = s;
- }
- | ')' {
- Music *s= MY_MAKE_MUSIC ("SlurEvent");
- $$ = s;
- s->set_spot (THIS->here_input ());
-
- }
- | E_CLOSE {
- Music *s= MY_MAKE_MUSIC ("PhrasingSlurEvent");
- $$ = s;
- s->set_property ("span-type",
- scm_makfrom0str ("phrasing-slur"));
- s->set_spot (THIS->here_input ());
- }
- ;
-
gen_text_def:
full_markup {
Music *t = MY_MAKE_MUSIC ("TextScriptEvent");
pageBreak = #(make-event-chord (list (make-penalty-music -10001 -10001)))
noPageBreak = #(make-event-chord (list (make-penalty-music 0 10001)))
+
+%
+% Code articulation definitions
+%
noBeam = #(make-music 'BeamForbidEvent)
pipeSymbol = #(make-music 'BarCheck)
+bracketOpenSymbol = #(make-span-event 'BeamEvent START)
+bracketCloseSymbol = #(make-span-event 'BeamEvent STOP)
+tildeSymbol = #(make-music 'TieEvent)
+parenthesisOpenSymbol = #(make-span-event 'SlurEvent START)
+parenthesisCloseSymbol = #(make-span-event 'SlurEvent STOP)
+escapedExclamationSymbol = #(make-span-event 'CrescendoEvent STOP)
+escapedParenthesisOpenSymbol = #(make-span-event 'PhrasingSlurEvent START)
+escapedParenthesisCloseSymbol = #(make-span-event 'PhrasingSlurEvent STOP)
+escapedBiggerSymbol = #(make-span-event 'CrescendoEvent START)
+escapedSmallerSymbol = #(make-span-event 'DecrescendoEvent START)
+
+
foo = { \pageBreak }