Hi Callum,
The proper use of accidentals greatly enhances readability. As in “your” numeric system, MIDI doesn’t care about accidentals, either, but MIDI has been designed for producing sound, not sheet music. As a simple example, just take two triads: B major and C diminished. Triads are supposed to be constructed by stacking thirds, and that’s what the reader expects. All these chords (I hope the PNG file will survive) have been built from the numbers below, but only the first one will be readable resp. noticeable. Note numbers 3 and 6, in these examples, will have to be a D# and F# in a B major chord, but an Eb and Gb in a C° chord. That’s just one reason why accidentals matter in printed music. All the best, Torsten Von: Callum Cassidy-Nolan c...@cuppajoeman.com <mailto:c...@cuppajoeman.com> Gesendet: Mittwoch, 31. März 2021 21:21 An: torsten.haemme...@web.de; lilypond-user@gnu.org Betreff: Re: AW: Custom Format Hi Torsten, You are correct, there is no distinction between these two notes, because in terms of pitch they are the same. I realize that my approach to music is non-standard, and when I made it I was not thinking about how that would play into formatting documents with it. I follow the same idea for intervals too. I suppose you are asking me these questions because lilypad does differentiate between these different ways of saying the same note or interval? Could you give me some use cases where my notation would cause problems - I'd like to know for the future. Personally I don't mind which it chooses, say D# or Eb, based on Aarons original function: #(define (: n) (apply ly:make-pitch (cons (1- (floor (/ n 12))) (list-ref `((0 0) (0 ,SHARP) (1 0) (1 ,SHARP) (2 0) (3 0) (3 ,SHARP) (4 0) (4 ,SHARP) (5 0) (5 ,SHARP) (6 0)) (modulo n 12))))) But having a way to over-ride it's value to be one or the other would be nice. As I am new to Scheme I don't know exactly how to do it, but my idea would be to have the following behavior. Always choose the sharp version unless an optional argument is provided to the function which tells it to choose the flattened version. If someone could outline how I could implement that with Scheme, it would be awesome. Best, Callum ‐‐‐‐‐‐‐ Original Message ‐‐‐‐‐‐‐ On Wednesday, March 31, 2021 2:05 PM, <torsten.haemme...@web.de <mailto:torsten.haemme...@web.de> > wrote: Hi Callum, In the first place, I don’t understand how your numeric code could ever handle accidentals correctly. Looking into your PDF document, I can’t see any distinction between D# and Eb, for instance. And your table states: 9 “Minor sixth”. But how would you code an augmented fifth, then? Etc. All the best Torsten Von: lilypond-user <lilypond-user-bounces+torsten.haemmerle=web...@gnu.org <mailto:lilypond-user-bounces+torsten.haemmerle=web...@gnu.org> > Im Auftrag von Callum Cassidy-Nolan Gesendet: Mittwoch, 31. März 2021 02:31 An: lilypond-user@gnu.org <mailto:lilypond-user@gnu.org> Betreff: Custom Format Hi there, I have just become aware of lilypond. I would love to use it, but I have a particular way I interact with music. Particularly I don't use letter names, but instead I use numbers, to understand what I mean, please take a look at my document: https://gitlab.com/cuppajoeman/music/-/blob/master/diagrams/standard_to_semitones.pdf I just saw a basic example in the documentation, something like this: \version "2.22.0" { c' e' g' e' } In my system I would write something like this: \version "2.22.0" { 0' 4' 7' 4' } I am assuming some sort of parsing could be done to my files to convert it into the correct format, and then could be parsed by lilypond. Could anyone let me know how I could do something like this? Thanks in advance,