lilypond-user
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: that acciaccatura issue


From: Mark Stephen Mrotek
Subject: RE: that acciaccatura issue
Date: Mon, 22 Aug 2016 09:38:51 -0700

Thomas,

Ah yes, trial and error, it has been my means of leaning most everything. And 
no less in learning Lilypond. Before submitting any request some time (and 
frustration) was spend on consulting manual, adding/deleting, moving, and just 
cussing at the screen (Frescobaldi provides immediate feedback).

Regarding isolation of the problem: if I were able to distill code down to the 
two or three offending lines, I would possibly (though perhaps not probably) be 
able to see/solve the problem. For the case at hand, I knew what the problem 
was, and it had been discussed/solved on the list several times previous: the 
placement of an acciaccatura at the very beginning of one of several voices 
requires an identical (except for pitch "s") to be placed in the other voices. 
The context used was a piano score for four explicit voices (for fugues) 
provided by a member of the list. Somehow the two "clashed." Was it syntax? 
General coding? Conflict of commands?" The context was a part of the "problem." 

The two line "solution" does provide the desired "print out," yet in isolation. 
When inserted into the entire score (Piano of two staves) it creates the same 
multiple time/key signatures as my coding. This leads me to question the 
benefit of the minimalist of examples. The two line solution also eliminates 
the "Instrument Name" (I use it to denote the variation number) and change from 
relative pitch coding to absolute pitch encoding. What precedes the "solution" 
affects as well as is affect by the "solution." 

The two lines have been used toe "rebuild" the template. Yet the acciaccatura 
problem still exists! My solution: eliminate the acciaccatura and get on with 
the rest of the score.

My sincere thanks to everyone who has refused to dismiss my inquiry as trivial. 
All have demonstrated a desire to teach me the workings of Lilypond. Perhaps 
this dialogue might lead to the consideration that not allsituations are 
resolved with a single method.

Thank you again, and good day.

Martk

-----Original Message-----
From: Thomas Morley [mailto:address@hidden /
Sent: Monday, August 22, 2016 12:34 AM
To: Mark Stephen Mrotek <address@hidden>
Cc: Simon Albrecht <address@hidden>; lilypond-user <address@hidden>
Subject: Re: that acciaccatura issue

2016-08-22 0:20 GMT+02:00 Mark Stephen Mrotek <address@hidden>:
> I do not know the intricacies of Lilypond and therefore am unable to 
> distinguish what code can be eliminated to create a "minimal."

Remembering the time I started with LilyPond, things went wrong pretty often. I 
had no clue why and ofcourse I was hardly aware what I was doing ...

To solve the problem first step is always to isolate it.
I.e. copy and paste the code into a test file and try to comment elements, 
lines or blocks, if the problem persists delete what you've commented. Only 
thing: don't introduce other problems. If this happens don't delete it.
http://lilypond.org/doc/v2.19/Documentation/usage/troubleshooting

Yes, it's try and error, but you don't need _any_ knowledge about LilyPond for 
this task.



Btw, back to the small example from my previous post:

\new Staff <<
  \time 4/4
  \key bes \major
  \new Voice { \voiceOne \acciaccatura r8 r4 }
  \new Voice { \voiceTwo \grace s8 r4 }
>>

At some point while creating a minimal example you may get:

<<
  \time 4/4
  \key bes \major
  \new Voice { s1 }
  \new Voice { s1 }
>>

Now all voices (those you explicitely create _and_ the others) are not longer 
forced to be in one Staff.
(Though I'm somewhat surprised only three not four staves are displayed. 
Obviously LilyPond accumulates some loosing ends per
default.)

Anyway, if you now apply \displayMusic you get the internal 
scheme-representation of whats going on:


\displayMusic
<<
  c'1
  \new Voice { s1 }
  \time 4/4
  \new Voice { s1 }
  \key bes \major
>>

==>

(make-music
  'SimultaneousMusic
  'elements
  (list (make-music
          'TimeSignatureMusic
          'beat-structure
          '()
          'denominator
          4
          'numerator
          4)
        (make-music
          'KeyChangeEvent
          'pitch-alist
          (list (cons 6 -1/2)
                (cons 0 0)
                (cons 1 0)
                (cons 2 -1/2)
                (cons 3 0)
                (cons 4 0)
                (cons 5 0))
          'tonic
          (ly:make-pitch -1 6 -1/2))
        (make-music
          'ContextSpeccedMusic
          'create-new
          #t
          'property-operations
          '()
          'context-type
          'Voice
          'element
          (make-music
            'SequentialMusic
            'elements
            (list (make-music
                    'SkipEvent
                    'duration
                    (ly:make-duration 0 0 1)))))
        (make-music
          'ContextSpeccedMusic
          'create-new
          #t
          'property-operations
          '()
          'context-type
          'Voice
          'element
          (make-music
            'SequentialMusic
            'elements
            (list (make-music
                    'SkipEvent
                    'duration
                    (ly:make-duration 0 0 1)))))))

Ofcourse this would be far too large, if not applied to a minimal ;) But have a 
look what follows after

elements
  (list

Yes, it's a still a lot stuff, but do me the favor ;)

You see four entries: settings for time-sig, key-sig and two Voices.
But you want only two voices, thus put time/key-sig into one of the voices.

More, the time-sig is (per default) applied to the whole score, but not the 
key-sig.
This is a feature, ofcourse. How to deal with it depends on the use-case...


Cheers,
  Harm




reply via email to

[Prev in Thread] Current Thread [Next in Thread]