2024.02.25

This commit is contained in:
sshlien
2024-02-25 07:53:27 -05:00
parent bf013dc428
commit 4d51b779bf
5 changed files with 25 additions and 44 deletions

View File

@@ -15377,49 +15377,22 @@ it is only called if the token was a clef.
Fix: commented out the line in isclef() which zeros the octave_offset.
February 23 2024
February 25 2024
abcmidi bug:
abcmidi note:
Besides clef=treble-8, the abcmidi 2.2 standard also recognizes
clef=treble_8 which it treats similarly. The standard also allows
clef=treble^8 to be substituted for treble+8. abc2midi does not
recognize these variants.
Fix: extended the function get_clef_octave_offset in music_utils.c
to recognize these variants. Unfortunately, readword() called by
parseclef breaks the clef string when it encounters either a ^
or _. This was necessary to handle sharps and flats in the
K: declaration. (See note above April 8 2015.) It was necessary
to create a replacement function, readword_with_() which does
not break the string on underscore _ or caret ^.
The following test file was used to verify the correct operation
of this feature.
X:1
T: clef= variants
M:4/4
L:1/4
V:1 clef=treble-8
V:2 clef=treble_8
V:3 clef=treble+8
V:4 clef=treble^8
K:C
[V:1] z z C z |
[V:2] z z z C |
[V:3] C z z z |
[V:4] z C z z |
clef=treble_8, clef=treble^8 and etc. These clefs do not transpose
the notes in the midi file but merely put the appropriate symbol
on the clef. Abc2midi presently ignores these endings in the
function get_clef_octave_offset() in music_utils.c. When it is
necessary for the parseclef to see these endings the following fix
is necessary.
Fix: readword() called by parseclef breaks the clef string
when it encounters either a ^ or _ in order to handle sharps
and flats in the K: declaration. (See note above April 8 2015.)
It is necessary to use the new function, readword_with_()
which does not break the string on encountering either
the underscore _ or caret ^.

View File

@@ -1,7 +1,7 @@
abcMIDI : abc <-> MIDI conversion utilities
midi2abc version 3.59 February 08 2023
abc2midi version 4.89 February 23 2024
abc2midi version 4.90 February 25 2024
abc2abc version 2.21 February 19 2024
yaps version 1.93 February 19 2024
abcmatch version 1.83 February 19 2024