Skip to main content
Topic: enharmonic errors in NWC's "audit enharmonics" tool (Read 5088 times) previous topic - next topic

enharmonic errors in NWC's "audit enharmonics" tool

Has anyone found a way to correct enharmonic spelling in a way that leaves the interval structure of chords intact? For example, transposing a staff with an F# minor chord and a G minor chord on it (F#-A-C# and G-Bb-D) up by half a step gives you a G minor chord and an Ab minor chord (G-Bb-D and Ab-Cb-Eb). If you run Tools, Audit Enharmonic Spelling on that, the Ab minor changes to a G# minor (which you probably want) but the G minor changes to G-A#-D (which you definitely don't want). A minor triad always has a minor 3d on the bottom and a major 3d on the top. Changing Ab-Cb-Eb to G#-B-D# maintains that structure. Changing G-Bb-D to G-A#-D puts an augmented 2nd on the bottom and a diminished 4th on top, and to any educated musician's eye that looks ludicrous. I'm looking for a method that will only look at double sharps, double flats, C flats, F flats, B sharps and E sharps, and will correct those in a way that doesn't change chord interval structures. Sometimes this requires changing flats to sharps and naturals on the next pitch down - that works fine in the current system - but sometimes it requires changing sharps to flats and naturals on the next pitch up, which utterly fails in the current system. Eric, this is something that definitely needs to be addressed - any music that uses extensive chromaticism requires multiple manual corrections at this point on what should be simple transpositions. In the meantime, does anyone have a trick to pass on?

Re: enharmonic errors in NWC's "audit enharmonics" tool

Reply #1
To quantify things, here: I need to transpose a four-measure, highly chromatic phrase up half a step. To correct by hand the enharmonic errors resulting from the transposition will require 12 separate actions. If I use the "Audit Enharmonic Spelling" tool first, correcting the errors resulting from the program's inappropriate enharmonic changes still requires 12 separate actions. They're different actions, but the number needed is the same. The chart I'm working with contains 192 measures, all of them similarly chromatic. Perhaps you begin to get the idea.

Re: enharmonic errors in NWC's "audit enharmonics" tool

Reply #2
I'm looking for a method that will only look at double sharps, double flats, C flats, F flats, B sharps and E sharps, and will correct those in a way that doesn't change chord interval structures.
That won't help you with G-A#-D

To quantify things, here: I need to transpose a four-measure, highly chromatic phrase up half a step.
A clip of those 4 bars might quantify things.


Registered user since 1996

Re: enharmonic errors in NWC's "audit enharmonics" tool

Reply #3
In the meantime, does anyone have a trick to pass on?
Perhaps.
To change G-A#-D to G-Bb-D try the User Tool Command:
Code: [Select · Download]
php\php.exe scripts\nwsw_PitchMod.php A#/pos+=1,acc=b
That will change:
Code: (nwc) [Select · Download]
!NoteWorthyComposer(2.75)
|StaffProperties|EndingBar:Open (hidden)
|Clef|Type:Treble
|Key|Signature:C|Tonic:A
|Chord|Dur:Whole|Pos:-2,#-1,2
|Bar
!NoteWorthyComposer-End
to: |Chord|Dur:Whole|Pos:-2,b0,2
More discussion <here>.
Registered user since 1996

Re: enharmonic errors in NWC's "audit enharmonics" tool

Reply #4
This may come as a shock to Rick, Lawrie, Mike, Eric, and probably others, but some of us don't LIKE user tools. I have yet to actually use one. (The new user OBJECTS are in a different category, although I'd still rather have most of what they do incorporated into the program instead of being done through the plug-in mechanism - or at least integrated better [see Paint.net for an example of the latter].)

<sigh> I suppose I'll have to download the user tool starter kit, install it, and figure out how to use the damn things. But this problem with enharmonic correction is actually a design flaw in the product. Really. And, not incidentally, looking back through the material Rick pointed to, I note that he made the laconic comment "Results may be erratic for chords...." Meaning I may go through the whole process and still not have a fix, because I'm dealing, in this case, ONLY with chords.

Apparently I, and others, have been complaining about this for some time (thanks, Rick, for the tracings). "Audit Enharmonic Spelling" simply doesn't operate in a useful manner much of the time. Isn't it time to actually address this, instead of throwing a user tool at it and hoping for the best?

Re: enharmonic errors in NWC's "audit enharmonics" tool

Reply #5
Isn't it time to actually address this, instead of throwing a user tool at it and hoping for the best?
No, it is long past time for you to learn how to use tools.
Registered user since 1996

Re: enharmonic errors in NWC's "audit enharmonics" tool

Reply #6
I just went to download the user tool starter kit and discovered you have to download the VC++ runtime environment first. This is getting ridiculous.  Not that I'm against VC++, but I am really not happy with instructions that tell you to download something that when you get there tell you you have to go someplace else and download something completely different first. I have been having a bad evening. Laptop bluescreened in Win 8.1, which almost never happens, and then went to a blank screen before I could read the complete message on the bluescreen - something about a profile mismatch - and wouldn't turn off. Went to pull the battery to force a power down and discovered Asus doesn't let you pull the battery on this model. Who in the hell designs a laptop that won't let the user pull the battery? Finally got the machine turned off by holding the power button down forever, started it up, and ran directly into this user tool roundabout when user tools aren't even something I want to deal with. This after an afternoon spent listening to a very well-presented premiere of one of my choral pieces (scored in NWC, of course). From the sublime to the ridiculous. ANYway....

No, Rick, this is not an indication that it's time that I learned how to use user tools. That's a copout, and unrelated to the problem. There is a design flaw in the enharmonic correction tool that needs to be addressed. Whether or not I break down and use user tools, that fact remains. A user tool shouldn't be necessary here.

To hell with it. I'm going to go do the transpositions and correct everything by hand. It will be easier than continuing down this extremely frustrating path. In fact, if I'd just done that instead of trying to encourage an actual fix, I'd have been done hours ago. Eric, I think this one comes over to you. Please make fixing this a high priority for the next release.


Re: enharmonic errors in NWC's "audit enharmonics" tool

Reply #8
Not worth the hassle, Rick. I've found a workaround that will save well over half the work. Transposition by a whole step instead of a half step results in significantly fewer enharmonic errors. I'm transposing a chord progression to all 12 chromatic steps. Once I have the first half-step transposition corrected, all the rest will become straightforward....simply by making the starting point the last transposition but one instead of the last transposition.

It'll probably work even better if I transpose around the circle of fifths instead of going straight up the scale. Hmmmm.....


Re: enharmonic errors in NWC's "audit enharmonics" tool

Reply #10
Hey William,
sure sounds like you've had a crappy day.  You definitely have my sympathy mate, Windows problems really are the pits.

I don't have a satisfactory comment about the enharmonic spelling issues in NWC as I've never had any real problems - I rarely need to do the transpositions that lead to them, but I will admit to a few odd issues with what I've felt were unnecessary double sharps or double flats.

That said, I really think you are denying yourself access to some truly useful tools.  It does take some imagination to use them I admit.  If  you cannot "see" what a particular tool might do for you then it won't occur to you to use it.  Problem is if you don't familiarise yourself with what's available you can't imagine what it might do - a bit of a circular problem. 

You NEVER need to write one if you don't want to.  There are already plenty available and if you can picture a need that isn't covered then a simple request is very likely to elicit a positive response from at least some of the "addicted coders" that post here.

I understand your irritation at needing to download the C library that the environment requires, but this is hardly limited to NWC user tools.  E.G. I had already installed the library before NWC required it as it was needed for other software I was using (it's that long ago I forget now which software it was).

If it was me, I reckon I'd sit back with a nice glass of white (or red or a beer) and leave it for another day to try my hand again.

Nothing is so important you can't take time to relax.  Took me a long time to learn that lesson :(  Wish it hadn't, would've saved myself a lot of angst.

Hope your day improves buddy!

I plays 'Bones, crumpets, coronets, floosgals, youfonymums 'n tubies.

Re: enharmonic errors in NWC's "audit enharmonics" tool

Reply #11
I've been reading and re-reading the responses to this thread, and a part of me wants to weigh in on the issue (especially since my name was included in Bill's comments about people who "like" user tools).

I'm not a huge fan of user tools. But I do use them occasionally, when they give me a way to do something that would otherwise be difficult/impossible. (As opposed to custom objects, which I love & use in virtually every score I create lately... but that is not what I wanted to talk about here.) I agree with Bill that it's a bit frustrating that a number of tools are essentially "better" versions of features that are already in NWC. (e.g. audit enharmonics, audit accidentals, score analysis). I try to remind myself that there will always be a need for specialized tools for certain situations (i.e. why there are so many different kinds of hammers out there), so it might make sense to have different types of audit tools for different kinds of music.

One thing that I personally would like to see is better integration of user tools into the NWC "experience". The current user tool dialog works well enough for infrequently used tools, but I would also like a way to assign a particular tool (or tools) to be run via a selector button. (This is mainly for the simple tools I've written to automate creation of tremolos and 8va sections.)

One final note about my usage of tools. Until recently, the tool I used most was Rick's "Flip RestChord" tool, because it's something I found myself needing to do frequently. Happily, as of version 2.75 I can now flip rest chords directly in the program, so I was able to retire that tool. I guess what I'm saying here is that perhaps Bill's request for enhancing the Audit Enharmonics function could also result in something like this happening some day.

Re: enharmonic errors in NWC's "audit enharmonics" tool

Reply #12
Hi Mike,
actually, I really like user tools.  Not so much to "make up for deficiencies" but to automate repetitive tasks.

Probably my most used tools are:
adp_Global_Mod
adp_Parts
kph_Multibarrest (I know NWC does MMR's natively now, but with this tool I can control the appearance more as it can use my fonts)
MakeChord (this is one I created for myself to speed up creating lots of chords)

I have these setup with different invocations with my most used parameter settings, as well as the default invocations.
I plays 'Bones, crumpets, coronets, floosgals, youfonymums 'n tubies.

Re: enharmonic errors in NWC's "audit enharmonics" tool

Reply #13
I really like user tools.  Not so much to "make up for deficiencies" but to automate repetitive tasks.
Oh, yeah! Not the same tools but the same goal.

Re: enharmonic errors in NWC's "audit enharmonics" tool

Reply #14
Thanks to everyone who has replied on this topic, especially to Lawrie (for the psychological support) and Mike (for the issue support). I did in fact go have a glass of wine (red), with my favorite of our two cats purring on my lap, and that helped a lot. (We have his 'n' hers cats. It wasn't planned that way when we picked them up as rescue cats from the pound, but their personalities are totally different and each of them has gravitated toward a different human.) Anyway....

This morning started with snow on the ground that kept us from church (actually, the local Friends Meeting) - a mixed blessing, because we missed Meeting but I was able to get some work done, after fixing yet another computer glitch - my trackball this time, but easy to fix as it was just low batteries. Hopefully enough snow will melt before afternoon that I'll be able to get to the third and final concert in the series that's premiering my two choral works, one town over. I'm looking forward to that.

Back to the issue at hand. I can see one good use for user tools - to automate repetitive tasks. I've never felt a need for that, but I can certainly understand how others would. What we're looking at here, though, isn't exactly a repetitive task. Yes, it repeats; but each repeat requires a decision about how to properly handle the result. It's really not enough to just say, Oh, I'll run a user tool and be done with it.  If Audit Enharmonic Spelling were working properly, I'd still need to check its work - it's just that there would be a lot fewer times when I would disagree with it. To put it again in terms I've used before: a user tool should never be thought of as a substitute for a piece of the program that isn't working right. The fact that a task needs to be repeated numerous times is not the responsibility of the programmer. The fact that a task isn't working the way it should be is the programmer's responsibility. Let's not confuse the issue just because it's possible for a user tool to sort of emulate a correctly working enharmonic audit. What is really needed is to correct the enharmonic audit.

Enough. I'm ready to let this one rest.

Bill