xml2abc
Version:
Unofficial package for unofficial fork of Wim Vree's excellent xml2abc-js (https://wim.vree.org/js/xml2abc-js_index.html).
86 lines (72 loc) • 4.96 kB
HTML
<!DOCTYPE HTML><html><head><meta charset="utf-8"></head>
<body><pre>Version 68:
- An xml file where the last part happened to be empty procuced no output at all, even when the other
parts did contain music.
Version 67:
- removed voice reordering for ottava annotations, because abc2svg is now capable of rendering ottava's
in any voice.
Version 66:
- translate pedal directions and ottava directions (8va, 8vb)
- improved allocation of staff directions to ABC voices (wedges, ottava etc.). They are now put
into the voice of the next note (if any) on the staff.
- option --v1 to enable the old allocation method (all directions to first voice of staff)
- option --noped to disable translation of pedal directions
- recognize both tie variants in MusciXML (<tie> and <notations/tied>) and translate to ABC tie.
Version 65:
- improved the translation of durations in MusicXML where the rational approximation needs a denominator > 64
Version 64:
- take the duration of invisible notes into account, as subsequent backup elements seem to expect this. Previously
invisible notes followed by a backup would cause a negative time value and crash.
- three ad-hoc note heads replaced by unicode symbols (in perc2map) because their svg definitions were removed from abc2svg.
Version 63:
- do not skip voices without notes when they do contain certain directions (words, coda, dynamics, chords)
- rehearsal directions are translated to ABC text annotations (requested by Donovan Simmons)
Version 62:
- bug in translation of xml 'default-y' argument for text directions (reported and corrected by Janus Meuris)
- xml 'rights' elements (copyright statements) are translated to Z: information fields (reported and corrected by Janus Meuris)
- trim white space from xml 'work-title' and 'movement-title' and replace each newline by newline + T:
- bug in translation of accidentals (reported by Janus Meuris). Can only occur with xml files where altered notes (i.e.
the pitch/alter-element is present) do not have a corresponding accidental-element. Neither Finale nor Musescore produces such
files. But it seems Sibelius does ....
- honour the print-object attribute in a rest, i.e. make it invisible (x) when print-object == no. (reported by Janus Meuris)
Version 61:
- maintenance update, no functional changes.
- replaced object iteration by array iteration where possible.
- code wrapped in annonymous function application to avoid global name space pollution.
- volta option -v did not work correctly
Version 60:
- output percmap when display step is different from abc note (for legacy abc percussion code)
- bug in matching percussion clef when writing file header (only occurred with multiple parameters in V: K: field)
Version 59:
- improved and debugged translation of clef suffixes +/-8 and +/-15
- translation of the "filled" attribute for note heads.
- added -t option which makes staff step values depend on the clef (percmap)
- in I:percmap transposition 4 diatonic steps for stafflines=1 (xml: E -> abc: B)
- the value zero was not handled correctly in the pageformat options
Version 58:
- staff step value in I:percmap always computed relative to treble clef (independent of actual clef).
- all notehead names translate to I:percmap (spaces replaced by hyphen). Previously only cirle-x and x were translated.
Version 57:
- translation of instrument/channel changes (as implemented in Finale) into equivalent [I:MIDI=] commands
(use option "-m 1" or "-m 2" to allow these commands to appear in the resulting output)
- change "perc=on" voice parameter into "map=perc"
- translate staff-lines attribute
- program more resilient against buggy Sibelius xml (voice and lyric numbers)
Version 56:
- translation of drum parts using a percussion map. Both %%drummap and I:percmap instructions are issued.
Some notehead symbols are mapped to notation that abcm2ps supports (^ and _). The voice definition
of a percussion instrument (V:) gets an extra perc=true parameter when it has a normal (bass) clef.
(This generates an error in abcm2ps, and it outputs a percussion clef ... )
- changed -m option, -m 0 (default): no %%MIDI output, -m 1: only %%MIDI program, -m 2: all %%MIDI
- A percussion voice always gets a "%%MIDI channel 10" specification (when option -m > 0)
Version 55
- insert tempo changes at the place where they belong (were previously always moved to the beginning of the mesure).
- program version is in global var xml2abc_VERSION of xml2abc.js
Version 10
- replace global function info by infof with modified parameters and delete function info
- uniform option parameter passing, no more separate variables just one object
- added translation of default xml pageformatting
- added option -p for pageformatting
- added option -x for omitting linebreaks ($) in generated abc code
- "treble-8 m=B" is not supported by abc2svg. Should we change it do treble-8 octave=+1? Same for other +-8 clefs.
</pre></body></html>