MobileSheets Forums
Sharp/flat buttons for transposing - Printable Version

+- MobileSheets Forums (https://zubersoft.com/mobilesheets/forum)
+-- Forum: Support (https://zubersoft.com/mobilesheets/forum/forumdisplay.php?fid=1)
+--- Forum: MobileSheetsPro (Android) (https://zubersoft.com/mobilesheets/forum/forumdisplay.php?fid=23)
+--- Thread: Sharp/flat buttons for transposing (/showthread.php?tid=5717)



Sharp/flat buttons for transposing - itsme - 09-14-2019

The sharp/flat buttons on the transpose dialog seem to switch only the enharmonic equivalent of the destination key. I would expect that it also affects how chords are displayed within the song.

There's a really ugly work-around: if I set a wrong starting key in a way that the (also wrong) destination key has an enharmonic equivalent, then I can tweak that the song is displayed as I want it.

See attached example. If I transpose "What A Wonderful World" (with chords in F within the file) I would like the Db in the 5th measure of the A section to be transposed to Ab, not G#.

If no transposing is set (starting key = destination key) the chords should be displayed unchanged, as written in the file, to allow the rare case of mixed sharps and flats in one song

I'm not sure if that worked as expected before the implementation of the chord localization feature.
I tested with MSP 2.7.3 on Android.


RE: Sharp/flat buttons for transposing - itsme - 09-14-2019

That recalls a discussion we had long ago: imho it is absolutely not necessary to set the starting key manually. The starting key is already specified within the ChordPro file: the setting "Detect Key By" combined with the chords in the file specify the key clearly. If the file contains {key: C} or {meta: key C} that overwrites the result of "Detect Key By".
Why do we need that additional, error-prone and confusing user action?


RE: Sharp/flat buttons for transposing - Zubersoft - 10-15-2019

I define C as a key containing only sharps, and I define F as a key containing only flats. That's just how I implemented the transposing. There is no override for chosing sharp or flat when using the dialog - it's based on the transposed key. If it's confusing having the sharp/flat buttons enabled when a key is selected that has no accidentals, then I will disable them. Those buttons are not meant to override how chords are transposed, and whether sharp or flat chords are chosen when transposing. They just toggle between enharmonic equivalents. If you disagree and think those buttons should provide a way to override the way in which every chord is transposed, that would require changes to all the text file processing and database changes to store the new field to capture that selection.  As a side note, if you use the transpose keyword in the chord pro file itself, transposing up (a positive value) will choose sharps whereas transposing down (a negative value) will chose flats.

As for why we have the dialog, it's because the {key:} and {meta} values are not read out of the file every time - only when the song is first created. I could certainly change this to either use what is specified in the file or fall back on the "Detect Key By" setting and recalculate the key every time the file is loaded if you would prefer. This obviously requires extra processing, but it shouldn't slow down the loading a noticeable amount. I still think I should list on that dialog what the starting key is so that users can understand how many steps their chords are being transposed. 

Thanks,
Mike