erhe - the one thing I'm unsure about is what you are proposing from a UI perspective here. All of your examples and the script are taking two inputs for every chord you have transposed, but does that mean the UI should be asking for two separate inputs as well? Your algorithm asks for a letter offset as well as a semitone offset - does that mean I would then be applying those same offsets to every chord in the entire song? Is that what most users would expect when using a transpose feature? I have been displaying the transpose as being key-based, but in reality, as you have mentioned, it's just doing it based on intervals (similar to the {transpose: #} directive with ChordPro) with extra (incorrect) logic for accidentals.
It sounds like I can just use the mechnical approach mentioned above and just get rid of a lot of what is in the transpose UI at the moment, and just have it based on an interval/number. Seems like trying to track the original key of the song and displaying the key to transpose to is unnecessary as I'm not really using that information (at least not in a correct manner) under the hood.
Mike
It sounds like I can just use the mechnical approach mentioned above and just get rid of a lot of what is in the transpose UI at the moment, and just have it based on an interval/number. Seems like trying to track the original key of the song and displaying the key to transpose to is unnecessary as I'm not really using that information (at least not in a correct manner) under the hood.
Mike