To simplify the writing of note input names, they might be separated into separate parts for pitch and accidentals (or intervals). Testing this, I made C++ code where one first reads the longest pitch name available in a table, and then proceeds for a succession of accidentals, also the longest available in a separate table, and it looks like nice.
- Separating note names into pitch and accidentals Hans Åberg