Skip to main content

Messages

This section allows you to view all Messages made by this member. Note that you can only see Messages made in areas you currently have access to.

Messages - Randy Williams

101
General Discussion / Re: Arpeggio?
I use those pedal marks all the time in handbell music.  Handbells have an LV (let vibrate) marking, that means not to damp the handbell when the duration of the note runs out.  All handbells are damped at the next LV marking, or the next R marking (ring normally), whichever comes first.  I add LV's and R's as text expressions, and then I have a user tool which appends a pedal release and pedal down after each LV, and a pedal release after each R.  Works great, and I no longer have to hack up some audio staff version with all kinds of tied notes!  I can only assume (and hope for your sake) that grace notes will sustain just like regular notes.  If so, I can imagine a version of my script that can automate adding pedal marks for arpeggios.
102
General Discussion / Re: Width of natural sign in NWC2STDA.TTF
That the naturals should have some spacing, as in the "346" example above, is not at all in question.  The issue is that the "346" appearance can be obtained by artificially growing the glyph, or by allowing the program to add spacing after the glyph based on the context in which it appears (e.g. in key signatures vs before notes).
103
User Tools / Re: Audit selection - rg_AuditBarLines.vbs
Perhaps it would be nice if the audit bar lines tool (and actually, just about any of the audit tools?) continued to operate on the entire staff if there was no selection, but limited itself to only operating on the selection if there was one, as user tools do?
104
General Discussion / Re: Width of natural sign in NWC2STDA.TTF
IMHO, I think it's better to have the font glyphs be the minimum possible width, and let the code insert the proper spacing after an accidental, depending on its context.  IMHO, the natural sign glyph should stay like it is, and the sharp and flat sign glyphs should actually be changed to get rid of extra right-side padding.  Either way, the example given should be fixed!
105
General Discussion / Re: Feature request: marcato marking
Quote
Marcato is currently available in NWC as a performance style.

But I believe the marcato performance style is currently ignored on playback - it is basically no better than a text expression?

Quote
The musical definition of marcato is is "emphasized."

I knew that, musically, tenuto can be an articulation of force and/or of duration, depending on context.  I've seen information on the web (even other than Wikipedia :-) that indicates marcato can be so also.  But I just finally got a copy of Alfred's, and I see now that it limits marcato to force only.  I will have to reconsider my position on all this, including whether marcato can occur with other articulations.  (As an aside, I see that perhaps tenuto should be allowed with staccato!)

Quote
Notes played marcato generally sound quite distinct from each other, but this is a result of the technique, not a requirement of it.

I wonder.  If a human ends up playing marcato as "staccato", due to human technique restrictions, should not the computer play it as staccato, to emulate what a human can (and does) do, rather than what a robot might do?
106
General Discussion / Re: Rehearsal letters?
Quote
Rounded Rectangle might help some as a separate style, but rehearsal letters/numbers need to be circles.

I just figured that the "circled" style could not really remain a circle as the text length got longer.  As I said, certainly for rehearsal letters/numbers (or any text that is a single character), it would truly be circled.  But once the text had 2 or more characters, I envisioned the "circle" being a rectangle, but with the "square bracket" on the right and left ends being replaced by a "half circle".  Does this make any more sense now?
107
General Discussion / Re: Feature request: marcato marking
Quote
Marcato is an articulation of force, not duration.

The great authority on all things musical (Wikipedia :-) states first off:

Quote
Marcato (Italian for marked) is a form of staccato.

And I agree that marcato can generally not emphasize any more than accent, as accent is often already maxed out.
108
General Discussion / Re: Converting PDF to Noteworthy
Thanks for the info Phil!  It sounds like I can get what I need by:

  • Converting NWC to NWCTXT via nwc-conv.
  • Converting NWCTXT to LY via your converter.
  • Converting LY to PDF via LilyPond.

Once I have a script that automates NWC to PDF conversion (similar to my previous script for NWC to MIDI), I'll post it, in case anyone else is interested.
109
General Discussion / Re: Feature request: marcato marking
Quote
It would seem not too hard to support, given that the others are there.

Perhaps it's the others being there that actually make it harder to support, rather than easier as you assume!

  • Right now, I'm sure there is a bit of code to enforce that staccato and tenuto not be allowed to coexist with each other, while accent is optionally allowed with either.  Would you expect marcato to coexist with any of staccato, tenuto, or accent?  It would be a lot of work to handle too many new possible combinations, but I don't think marcato makes sense with any of these anyway.  So any time marcato were turned on, all the others would have to be turned off?  And any time any of the others were turned on, marcato would be turned off?
  • Even if marcato could be blocked from coexisting with staccato, tenuto, and accent, I'd assume one would still have to handle all possible combinations involving: stem up or down, grace note or not, and attribute on stem or not (and various stem lengths for this if yes)?  The differing sizes of the the attributes' font characters may not make it so easy to share code among these, and still get the attribute properly located horizontally and vertically in relation to the note head.
  • For audio purposes, what should marcato do?  I'd guess that marcato would be simplest to implement as a combination of accent and staccato.  So where accent increased note velocity, so should marcato the same way?  And where staccato decreased note duration, so should marcato the same way (including factoring in whether its under a slur or not?)?
  • And how about performance styles?  There already exists a marcato performance style, as well as styles for staccato and tenuto.  How would a marcato note be played if it were in a tenuto section?  Or a tenuto note in a marcato section?  And for both of these, what if the note is slurred?  Hopefully, a marcato note in a staccato section (or vice versa) would be considered as both asking for the same thing.

Maybe I'm overthinking this, but perhaps you might want to document here what you're expecting, so if you ever get this feature, you'll get what you're expecting!

Quote
... the marcato music symbol has been available in the NoteWorthy font files for years ...

It occurs to me that the marcato symbol, unlike the accent, staccato, and tenuto symbols, is not vertically symmetrical!  So just like the fermata, one would have to add an upside-down marcato symbol to the font, before the right-side up marcato symbol would become truly usable?
110
General Discussion / Re: Rehearsal letters?
Quote
Native ability to box, circle, and underline text would be higher on my priority list.

So would this look like a new property for text expressions, perhaps called "Decorations"?  It's default value would be "None", but then there would be options for "Square Box" (square for 1 char, rectangle for more), "Rounded Box" (circle for 1 char, rounded rectangle for more), and "Underline"?  Would it be worth adding "Strikethrough"?  Are there any other possible decorations involving line-drawing and/or arc-drawing?
111
General Discussion / Re: Converting PDF to Noteworthy
Thanks for the info all, but I was looking for a conversion from NWC to PDF which at no point involves having to fire up another GUI.  Does bullzip or lilypond have a command line mode, to automate conversion to a PDF?
112
General Discussion / Re: Converting PDF to Noteworthy
How much does it cost for PDFtoMusic Pro?  How much for Sharpeye?  What formats do they generate - MusicXML or LilyPond or something else (which then has to be converted to NWC?)?  I think I'd have to do a lot of cleanup after the conversions, so I'm not sure the automation is worth much money to me, but I could be wrong.

How about the other direction - is there any way to bulk convert NWC to PDF?  There is nwc-conv, which gets you from NWC to NWCTXT.  Then I think there's utilities to get from there to MusicXML or LilyPond or something else?  (Sorry if I'm remembering these other formats wrong.)  Then is there anything out there that can generate PDF from these other formats, using command line parameters?

I've got batch NWC scripts which take an SATB hymn "master" and generate various versions, for instruments pitched in different keys and/or read in different clefs (never sure what instrumentalists will show up for church ensemble any given morning).  But right now, I have to load each version into NWC in turn, and "print" out a PDF file (with PDFCreator).  Any help would be appreciated.
113
General Discussion / Rehearsal letters?
I was wondering if anyone wanted to comment on what rehearsal letters would look like, if they were ever to be supported natively in NWC.  I think everyone would agree they would be a property of a bar line, but I have some other questions:

  • Would the rehearsal letter for each bar line be limited to a single character?  (e.g. would some want AA, BB, etc for a large piece with more than 26 rehearsal points?)
  • Would the rehearsal letter(s) be limited to uppercase letters?  Should lowercase letters be allowed?  Should numbers be allowed?  Should all ASCII letters be allowed?
  • Could rehearsal letters be allocated automatically, A and up, from start to end, via a simple checkbox?  Inserting a new rehearsal letter could automatically bump up all following letters.
  • Would an offset be needed, to vary the height of the rehearsal letter above the staff?  There is currently no such control for measure numbers.
  • Would the font for rehearsal letters have to be specified separately, or could a common one be used (like measure numbers)?
  • Would circles and/or boxes around rehearsal letters be required as options?
  • If a bar line that has a rehearsal letter happens to fall at a system break (randomly, or purposely via the break property), would the rehearsal letter go over the line before the automatic clef (as with measure numbers) or after the automatic clef and key signature (if not key of C) or somewhere in between?  Depending on where it went, it may have to replace the measure number for that system.

I've seen that go-to a rehearsal letter would be nice too.
114
User Tools / Re: CopyHiddenAccidentals
Quote
By default, |Instrument and |MPC are |Visibility:Never
Some items are TopStaffOnly by default.

That's very interesting, Rick.  It looks like if you set an MPC (for example) to the "Default" visibility choice, it will stay logically "Default" in the nwxtxt clip (although the Visibility will be pruned physically, since "Default" is the default for this field :-), but it will act as if the visibility is "Never".  That all makes sense for MPC/Instrument.  So there is an object type that acts as if the visibility is "Top Staff Only" when the visibility is set to "Default"?!
115
User Tools / Re: CopyHiddenAccidentals
Quote
... using prw_CopyGraceAccidentals.php as starting point I wrote this tool ...

I'm not complaining here, but just for the record, I think your script is identical to mine, except for adding my "clef" enhancement I think you found that I figured out later in prw_FindAmbiguous.php, and except for the 1 line that checks for visibility rather than grace!  :-)  [Changing formatting doesn't count, as the compiler ignores formatting anyway :-]

So your 1 line has a problem.  You assume that all non-"default" values are hidden, and it's true that "never" values are, but "always" values are not, and "top staff only" values may or may not be!  The best you can probably do is check for equal to "Never", rather than not equal to "Default", since you currently have no way of knowing whether your user tool was invoked on the top staff or not.  (Anyone: can a "default" value ever default to hidden?)
116
General Discussion / Re: Tie Error?
A minor file cleanup suggestion:  While editing your NWC file, you may want to do an Edit/Find/Find-by-category/Unassigned-octave-accidentals.  There is 1 place in the treble clef, and multiple places in the bass clef, where a note accidental status is "ambiguous" - NWC will play it one way, but a musician would probably play it another.  For each such note, you might want to explicitly assign an accidental, whether it's right in NWC playback and wrong for a musician, or vice versa.  For example, take the last note in measure 123 of the bass clef - NWC is playing that as natural, due to no accidental being assigned, and due to the last A seen (in any octave) being assigned a natural.  Maybe you wanted this, but in that case, a natural accidental on the last A too would make it clearer.
117
General Discussion / Re: Tie Error?
Quote
Not quite a true cluster, but close.

Rats.  I thought 5 out of 6 consecutive notes would qualify.  :-)

Quote
The femata on the last bass note looks better if it is centered.

I usually do center them!  This was about the first handbell song I entered, so perhaps I hadn't standardized that yet.  Or more likely, I think I tried left/center/right on the treble fermata, trying to get it to "center" over the very top note, but the "stacked" chord apparently made it such that all 3 alignments were identical, centering over the stem!  I suspect I gave up, leaving it at "left" (since it didn't matter), but then blindly copied that fermata to the bass clef.  I actually like a "right" justify in the bass clef better in this case, to align that fermata over the stem like the treble clef is forced to be.  But center is good too.  And left is definitely no good.
118
User Tools / Re: Quickly (re)generate MIDI files for your entire NWC library
Quote
I hope that no folks are "aware" of it, since that is not what NWC does. NWC stops processing MIDI events for the period representing the Tempo Variance Command's delay. NWC (and the Viewer) most definitely do not implement Tempo Variances with "tempos and MPCs". I know this because I have spent hours looking at NWC's MIDI output with MIDI OX.

Sorry Rick, but I guess I wasn't clear here.  I did not emulate fermatas with tempos or MPCs, and never plan to!  I only mentioned those 2 in the context of NWC applying their respective functionalities (which are totally different from each other) across all staffs, even though they only appear in one staff.  (My "ala" was meant to be "in the manner of", not "using".)  My current script implementation is simply to increase the duration of the note, chord, or rest that follows the fermata (I don't support fermatas over split-chords or rest-chords yet).  Sorry for the confusion.

Quote
Please do not add to the mistaken impressions of many that "Fermatas and Breath Marks can be simulated with Tempo changes." Some can be simulated that way but many cannot. In any case, it would be a hack. As implemented by NWC, 'Tempo Variance delays' represent an addition of beats, not a decrease in tempo.

Agreed.  Did not mean to add to such a mistaken impression, however I did.

Quote
There are no delays associated with the fermatas, so I fail to see this piece as a relevent example.

It was specifically an example of folks being used to entering "parallel" fermatas across all staffs (for the visual of all parts individually seeing the fermata, irrelevant of the pause for playback).  My point was that any fermata in one staff (with whatever pause, if any) was likely to be copied to all other staffs, thus likely avoiding the problem we foresaw of a fermata in one staff failing to automatically propagate to the corresponding spot in another staff (where one was missing).  Again, sorry I led you to believe that I was trying to show specifically a fermata with non-zero pause - that was not my intent.
119
General Discussion / Re: Tie Error?
Rick - I enjoyed reading about the tone clusters - now I know what to call the beasts I run into in handbells - e.g. check out the last chord of the attached simple kids' handbell arrangement - Randy
120
User Tools / Re: Quickly (re)generate MIDI files for your entire NWC library
Quote
Fermatas and breath marks must be accumulated and be reflected in all tracks.

Agreed - I'd already seen this in my testing.  I was hoping that the tool would still be useful as is, since I felt that most people might put "parallel" fermatas in across all staffs (e.g. see the very end of the 1812 sample).  I feel like the only time one shouldn't already have parallel fermatas is on the auxilliary staffs of a layer?  (I guess there's the case of a pianist technically not needing a fermata duplicated from right hand staff to left hand staff.)  I also feel like most folks might not be aware that NWC applies a fermata from one staff across all staffs (ala tempos and MPCs).  Users can add parallel fermatas if they need to and don't mind, or I was already planning on this (and other) enhancements to fermatas, once I had some folks interested in at least discussing the implications.  [For example, note what happens when measure X of one staff has a half note followed by a half note with fermata, and measure X of another staff has a whole rest with fermata.  Musically, I'd treat those as one logical fermata, but NWC treats them as 2!]

Quote
They often occur on triplets.

I'm sure it can happen, but "often"?!  As you may or may not have noticed, my script already considers the possibility, but for now, it does not try to expand fermatas over triplets.  It has a placeholder to add in the future, if there is interest.

Quote
In adding beats, a decision about correcting Time Signatures needs to be made. If TimeSigs are not changed, the resulting MIDI will import badly. Correcting TimeSigs is not trivial, especially around triplets.

Certainly my initial technique for emulating fermatas can be enhanced in the future, if there is interest.  I'm not sure I'll ever be worried about what happens on an import of midi files generated by my script though.  The fermata can never be restored (I believe), so why would I want to encourage trying to regenerate the original nwc file from the exported midi file?!  [And again, as my script already notes, and codes, I am purposely staying away from triplets for now.  :-]
121
User Tools / Re: Quickly (re)generate MIDI files for your entire NWC library
Quote
You might start by showing us how to generate one MIDI from one sample NWC file. A program that operates recursively on subfolders is not one that I would like to test blindly. Too much chance that I might confuse it into thinking that it should start in the root folder...

There are several protections already available - use any one or more of these - however many you want:
  • As I said in my initial post, but not clearly enough, recursion only occurs if you want it to - you have to specify the "-r" flag to get it.  Leave off the "-r" flag, and it will only see NWC files in the directory you run the tool from.  Even with recursion, it will only ever recurse "down" from the working directory, never "up".  You'd have to run it from "C:\" to hit all NWC files, but even then, it won't find other drives.
  • There is a "-t" option available for "test" mode.  If you specify it, the script will tell you what it would have done (without the test option), but it will not actually do anything.  Add the "-v" verbose option (with or without test option) to get even more information.
  • There is a "-n" option available for "no clobber" mode.  If you specify it, the script will never overwrite any pre-existing midi file.  It will only generate new midi files, and not regenerate old ones.
  • There is a "-i" option available for "interactive" mode.  If you specify it, the script will prompt you every time there is a pre-existing midi file, and you can choose whether to overwrite it (regeneration) or leave it alone.
  • There is a "-b" option available for "backup" mode.  If you specify it, the script will always rename any pre-existing midi file to a "*.bak" name before regenerating a new midi file.  If there was a previous backup file, the (current) script will overwrite that with the new backup file!
  • There is a "-u" option available for "update" mode.  If you specify it, the script will generate midi files where none was pre-existing, and it will regenerate midi files where the pre-existing midi file was older than the corresponding nwc file.  It will not touch midi files that appear to be "up to date" already (according to the file modify timestamp).

Above all else, this script will only (re)generate midi files, and will not change nwc/nwctxt files in any way.  And this script will only operate on the current working directory (and downward if recursion).

To answer your question, simply create a new (empty) directory, and copy any test nwc file(s) into it.  Then from a DOS command prompt, run NWC's PHP, specifying the path to the script (which should be placed in the same directory as nwc-conv.exe), for example:
Quote
"C:\Program Files\Noteworthy Software\NoteWorthy Composer 2\PHP\php.exe" "C:\Program Files\Noteworthy Software\NoteWorthy Composer 2\nwc2midi.php" -t -n -i -b -u

One can easily create a shortcut, which contains the above as the target, and the desired root NWC directory (or subdirectory thereof) as the "start in".  Then a double-click (re)generates all the midi files it finds.
122
User Tools / Quickly (re)generate MIDI files for your entire NWC library
I'm looking for testing and feedback on a new tool.  It's not a user tool (run from within NWC) - it's a PHP script run from a DOS command line (or from a shortcut).

You give it a starting directory, and it will find all NWC files in that directory, and recursively in all directories under that if you want.  For each NWC file, it will generate (or regenerate) the corresponding MIDI file as desired.

There is an extra layer of functionality I'd like to add options for.  Right now, I've got some support for automatically expanding note/rest durations to account for any fermata delay in the NWC file.  There's more I can do with fermatas, and other things (like breath marks for example, or global instrument changes, or global tempo changes, or whatever one can think of) if someone wants it.

If there's any interest at all, I'll post details on the script's invocation (including setting up handy shortcuts and using all the options provided).  The script is attached now only for proof of existence.  :-)

Apologies in advance to those who expect NWC to natively support anything in this tool - I hope along with you that some or all of this tool will be obsolete someday.
123
General Discussion / Re: Tie Error?
A trick to get the audio right without all those ties would be to mute all those whole note stacks, and hide a pedal down right before the half note stacks (and a pedal up after the second whole note stacks).  To get a cleaner simulation of the visual, you could try just adding a tie to the top note of each stack (or just a slur over them, except that I don't know how to keep NWC from joining 2 adjacent slurs into 1).
124
General Discussion / Re: Rest plus note as chord, without layering
I agree wholeheartedly with Joseph - layering provides many advantages over trying to pack split chords and rest chords into a single staff.  It's a little more work sometimes for the initial note entry - you've got to watch for things such as:

  • Needing to specify stems up or down, to keep stems from defaulting to pointing toward their layered line.
  • Needing "extra note spacing" on the occasional note, to reproduce a chord where 2 noteheads are on different sides of a stem.
  • Needing to "override stem length" on some flagged notes, to get the flags (or even beams) of the 2 layers to overlap exactly.
  • Needing "extra accidental spacing" on the rare occasion that both layers have an accidental at the same place.
  • Needing to "use stem for articulations" to move them away from a layered note (probably not applicable for choirs?).

But the advantages are many:

  • You can print out any single part (or any subset of parts) as desired, separated or overlayed.
  • You can individually control dynamics for each part, as well as dynamic variances (e.g. crescendo).
  • You can get certain combinations of articulations and beaming and tripleting that are otherwise unattainable.
  • You can control tie and slur placement in ways you sometimes can't do otherwise.
  • You can achieve certain "rest chord" and "split chord" combinations that are otherwise unattainable.
  • You can listen to (and generate midi/mp3 for) any single part (or any subset of parts) as desired.
125
General Discussion / Re: Sample "moonlite.nwc"
Did not mean to offend, Andrew! Let me say that upon further thought, it now seems more possible that I added the hidden bars, while adding hidden rests to get the treble and bass clefs of that cadenza to stay in sync.  I hadn't heard of Claudio - just looked him up - would like to hear his playing of it someday!  Edit:  I think now that most of the "changes" you made to the hidden audio staffs can perhaps be attributed more to running one or more of NWC's audits on it, and less to manual changes you made?  Again, it really doesn't matter to me - sorry to have made that comment at all!
126
General Discussion / Re: Sample "moonlite.nwc"
Almost 40 years ago, before I learned to read music or play any instrument, I watched my mother's hands as she played the first movement of Sonata quasi una Fantasia, commonly known as Moonlight Sonata.  I memorized it from her playing it, and it became the first real song I ever played.  Back then, and still today, I flip through the weathered pages of the manuscript (copyright 1894!), and find a second movement that I can fumble through, and lastly a third movement that I will never be able to touch.  I've programmed it on successively better computers and computer programs in homage to those geniuses that can play it (as well as to the genius who wrote it!).  I often got the reaction from those listening to it that I had unfairly used the computer to ramp up the tempo, and that no human could play it that fast.  I then thoroughly enjoyed pulling out my CD of Vladimir Horowitz playing it, at the same tempo!  Anyway, I still have my (even more) weathered copy of the music, and I've always wanted the visible staffs of the sample to match it as closely as possible (as well as the audio staffs to match Horowitz as closely as possible).  I'm not sure how those bars got there (me or Andrew, it doesn't matter), but they're not in my manuscript, so to make a long story short (too late, I know), you're quite welcome to simply remove them.  :-)
127
General Discussion / Re: Sample "moonlite.nwc"
Oh my gosh too!  I remember entering that piece many many years ago, back before the turn of the century.  Many many features of NWC now were not even imagined back then.  And long before even that early NWC, I'd "entered" it (aka programmed it) using Basic, having to "arrange" it for single voice.  I remember being thrilled when the PC JR came along, and I could reprogram it for upwards of 3 voices at the same time.  :-)
128
General Discussion / Re: Request: Advanced player for choir members
Okay Joseph and Richard, I give up.  It is very clear now that you want what you want, and nothing else will make you happy.  You have no idea what my music background is, yet you call it into question because I disagree with you.  You obviously are very emotional about this issue, and are not interested in any workarounds.  You seem to think that NWC is some big corporation that's laughing at its customers, when you have no idea what NWC is.  You seem to think that pause/resume is trivial to program, and is being withheld from you just for the fun of it.  You have your view, and I have mine.  Good luck to you getting your pause/resume using the method you've chosen.
129
General Discussion / Re: Request: Advanced player for choir members
So let me see if I can capture every relevant point from your post:

  • You desperately need "pause/resume" in viewer.  I still don't get why any musically-inclined person cannot listen to an audio file and follow along with the music.  One can take a printout and an audio file anywhere (e.g. on an MP3 player) for practice - using viewer requires sitting in front of a computer or laptop.  If I have to sit in front of something, I'd rather it be a piano.  The viewer is, as you admit, a "freebie" - if I was NWC, I'd drop support for it, since instead of appreciating it for what it gives, it seems to be a lightning rod for demanding more out of it (and for free at that).  And far from bringing (paying) people to NWC, I think viewer enhancements would just allow more people to stay with the freebie.
  • You would like "mute staff" in viewer.  It's pretty trivial to generate MIDI files with various combinations of staffs enabled/muted.  In fact, I'd be happy to provide you with a script that automatically generates all possible combinations of staffs.  For SATB, you might then for example send S, SA, and even ATB versions to each soprano.  I just don't see people desperately needing to switch their practice mode at the touch of a button.  If needed, they can have all MIDI versions loaded at the same time, and just switch windows quickly.
  • You need Breath Mark support in MIDI.  Your singers need to hear how it sounds to take a breath, or else they'll forget to breathe at the breath mark?  If you want, I can write you a script that will automatically cut short the last note before any breath mark, for audio purposes only even.
  • You need Fermata support in MIDI.  I've played/sung in a lot of groups, and I haven't found the need to practice fermatas.  I see one in the music, and I know to watch the director, while he holds us for whatever length of time he decides to at that time.  I just again don't see the need for a musically-inclined person to have to hear a fermata to be able to do it.  And again, I can write you a script to automatically simulate this.

What am I still missing?
131
General Discussion / Re: How to use nwcconv.exe
In a nutshell, nwc-conv can convert:
  • *.nwc files to *.nwctxt and/or to *.mid
  • *.nwctxt files to *.nwc and/or to *.mid

It can also extract song information from *.nwc and/or *.nwctxt files.
132
User Tools / Re: STDIN problem with nwc-conv.exe, version 2.1b
Ah, now I see the problem.  You are using piping to supply STDIN, whereas I've always used file redirection:

Quote
nwc-conv NWCTXT INFO < xxx.nwctxt

works fine, but:

Quote
type xxx.nwctxt | nwc-conv NWCTXT INFO

fails as you say.  It may be that nwc-conv is watching for an EOF character coming from the stream, when instead (or additionally) it should be checking the FEOF status.  With file redirection, the file is naturally supplying an EOF character (actually even before the end of file usually, due to padding out to a block size).  With piping, the stream sets a status to indicate no more characters available (at that time, as more may come in from the stream subsequently), but does not artificially generate an EOF character.  I think it is typical for GETCHAR to infinitely return hex FF's when the FEOF status is set.
133
User Tools / Re: STDIN problem with nwc-conv.exe, version 2.1b
Well strike two for me.  I'm amazed that NWC will allow *all* song header and *all* staff header info to default!  I've had no trouble with running nwc-conv from a PHP script, and I'd assumed it was because I was supplying all the header info.  But it works for me even with no headers whatsoever.  So this must be a VBS-specific issue?

VBS isn't case-significant, is it?  I see one of your StdIn's is Stdin, but it's that way for the sort example too, so that can't be it?  Does writing a blank line after the song footer line help any?  Is VBS something available in Windows by default, or does it have to be installed somehow?  Can't test any theories without it.
134
User Tools / Re: STDIN problem with nwc-conv.exe, version 2.1b
Yep, you're right about that.  I saw the "(2.0)" and compared it to my "song" header constant, which doesn't have the version/issue, and assumed you were using a clip header.  But I forgot that my song class adds the version/issue to the constant later, just like the NWC clip class adds it.  My bad.

But I still stand by the issue of the missing song header (along with the missing staff headers).  A song header consists of SongInfo/PgSetup/PgMargins/Font items, and staff headers consist of AddStaff/StaffInstrument/StaffProperties items.  You must give nwc-conv a proper song syntax, with a leading song header, and with every clip prefaced by a staff header.
135
General Discussion / Re: Request: Advanced player for choir members
Hi Joe,

I'm not sure I understand your beef.  It's trivial to export your songs as MIDI files, and then a program as simple as Windows Media Player can play with pause, and even pretty easily jump to parts of the song.  It's also trivial to print out your songs as PDF files (I use PDFCreator), so you can send someone the MIDI and PDF files for a song, and they can listen (with pause) while they follow along in the music.

So is it the "note chase" feature of NWC that is so bad to be missing in this case?  Are your "customers" unable to sync between the audio and the printout, and/or unable to stay in sync?  If this is just for your use, then why aren't you using NWC itself for your music, including any demos to others?  Can you help me understand your issue?

I find it interesting that you want NWC to develop a feature (that you have no idea how complex it might be) which will not make any money (at least directly anyway) and which might serve to lose money (when people can get what they want out of the viewer instead of buying the main program)!  NWC allows you to provide audit and printouts - the key deliverables of a music annotation program - to anyone you want.  Why do you expect it to provide "note chase" (for free, and with whistles) to the world?

Just wondering,
Randy
136
User Tools / Re: STDIN problem with nwc-conv.exe, version 2.1b
Hi Rick,

You are giving nwc-conv a "clip" when it is expecting a "song".  The start and end lines for a song are different from a clip, and a song is expected to first contain song header info followed by one or more pairs of staff header info and its staff clip.  In particular, nwc-conv wants the song header info in your case (to return INFO), and it's "hanging" because it's happily waiting for the song header info (or perhaps even for just the song start line).

I have created various include files and tools for processing entire songs (as opposed to single clips), and would be happy to help you more offline.

Randy
137
General Discussion / Re: help with notation please
For the 4 staffs you posted (you may have other staffs you deleted before posting, looking at the default staff names and their MIDI channel numbers), it appears that they are all 4/4 time throughout!  You can easily hide the time signature for printing purposes if you want, but I see no reason now not to add it to all staffs.

Why hide the rests at the start of the second and third staffs, and in the middle of the third staff?  Why not just use whole rests for each resting measure?

Why the occasional red note in the first staff?  Why are all the objects red in the fourth staff?  Do you know about editing properties of an object (or of a group of objects simultaneously)?  You can use that to quickly turn off all the red if you'd simply hit the backslash key at some point by accident (use "select all" for the fourth staff).

You might like to edit properties for each bar right before a chorus or verse starts, and change it to a "double" bar.  You also might want want to check out Staff Properties (under Staff menu) for each staff, and Page Setup (under File menu).  It seems you have all defaults there, and you might like changing some things under many of the tabs.
138
General Discussion / Re: Question about "o" in nwctxt
Quote
With the GUI, I can produce objects that contain each item in my list in a single object clip format. In each case, the item is not present in the multi-object clip format. Perhaps you define "defaults being stripped" differently. I believe that my list is complete and sufficient, subject to counter examples.

I guess it depends on your frame of reference, now that I think more about it.  You are comparing nwctxt in a single object to nwctxt in a multiple object.  I am comparing the NWC GUI to my tool GUI.  For you, the nwctxt is the end product.  For me, the nwctxt is merely a (hidden) transport mechanism between the two GUI's, and nwctxt idiosyncracies should not alter the look and feel between GUI's.

Quote
I cannot produce a clip that contains any of these: ...

So we both agree that nwctxt strips those defaults, we again just have a different frame of reference.  The NWC GUI can select a 0 for these, and subsequently strip the 0 going to nwctxt, but that does not interest you as it does me.  I see now that you don't consider the GUI 0 as ever having been there, since it is (currently) not generated in a single-object paste.  For me, the 0 was stripped and I must know to restore it.

Quote
Generally, I think it is safe to produce a Tool that does not handle that which cannot happen.

Again, for my tool, the nwctxt is completely hidden from the user, and (hopefully) it's a 100% pass-through method from NWC GUI to my GUI.  If something appears in the NWC GUI, and it disappears in the nwctxt, I must make it reappear.  For me, if it happens in the NWC GUI, it happens, regardless of whether it (currently) makes it into the nwctxt file.

I did not mean to challenge your credibility, and I concede that your list is likely perfect given your frame of reference!  :-)
140
General Discussion / Re: Question about "o" in nwctxt
Quote
It always adds it if only one object is copied and never adds it if more than one one object is copied.

The single-object special case is a byproduct of NWC's Edit/Find function allowing searching for expressions that can contain default values.

Quote
I can not produce a single or multiple object clip with "!0" in either Pos: or Pos2:
Could you provide an example?

I can't reproduce this now - it may have only happened back when I had a very early alpha of note colorization.

Quote
These defaults are always stripped from mutiple object clips and from nwctxt export: ...

I'd venture to say that some in your list do not truly have defaults being "stripped", since they are checkboxes in the NWC interface, and it's really just a matter of the options never being selected, rather than being selected to some default.  The list of these includes:

  • various/Wide (Preserve Width)
  • notes/Muted (Muted)
  • notes/NoLegerLines (No Leger Lines)
  • notes/ArticulationsOnStem (Use stem for articulations)
  • notes/StemLength (Override Stem Length)
  • RestChord/HideRest (Show Rest - inverted!)
  • Bar/SysBreak (Force System Break)
  • Bar/XBarCnt (Exclude From Bar Count)
  • Dynamic/Velocity (Custom Note Velocity)
  • Dynamic/Volume (Change Channel Volume)
  • Ending/Endings (nth Ending)
  • Instrument/Bank (Send Bank Select)
  • Instrument/Patch (Send Patch)
  • MPC/Pt2,Pt3,Pt4 (Setting n)

As for options where a default is selected in the NWC GUI, and subsequently stripped from nwctxt, here is my list:

  • various/Color:0
  • various/Justify:Left
  • various/Placement:BestFit
  • various/Visibility:Default
  • notes/XAccSpace:0
  • notes/XNoteSpace:0
  • notes/Slur:Default
  • notes/Tie:Default
  • notes/Lyric:Default
  • Bar/Style:Single
  • Clef/OctaveShift:None
  • Instrument/Name:""
  • Tempo/Base:Quarter
  • Tempo/Text:""
  • SustainPedal/Status:Down

Mistakes?  Omissions?  It's important to me for a tool I'm working on, and want to release soon.
142
General Discussion / Re: Question about "o" in nwctxt
Sometimes NWC adds the "o" for a standard notehead, and sometimes it leaves it out.  Just like sometimes it adds a "!0" for the default color, and sometimes it leaves it out.  There are also many non-note examples of defaults that you may or may not see, like "justify left".  It saves space to omit values (and entire fields) when they are the default value for their particular field, but it's often clearer to leave them in.  I haven't ever taken the time to figure out when the defaults are included and when they aren't, but I've seen them both ways at times.
143
General Discussion / Re: NWC in Linux problems
If you select a note, and then hit the "+" key, the note length doubles, by design (although technically undocumented for this context).  So perhaps somehow your Mac keyboard driver is taking the shift-left arrow sequence and generating what NWC sees as a shift-left arrow and a "+" key?!  (Assuming your finger isn't slipping off the left arrow every time and flying up to the "+" key without you noticing it :-)
144
General Discussion / Re: When "regular" quintuplet and so on?
Quote
Some answers here: http://en.wikipedia.org/wiki/Tuplet

Actually, that's where I got most of my info from above.  :-)

I'm just wondering how the folks who've requested duplets/n-lets over the years wanted them to behave, if they were ever to be implemented native to NWC.  The chances of them getting into NWC are directly proportional to how complicated they'd need to be to satisfy those that have asked for it.  So where are all the folks who've been complaining about this?
145
General Discussion / Re: When "regular" quintuplet and so on?
The request for "n-tuplets" has come up many times.  Most often it is for doublets (n=2) and for quintuplets (n=5).  I'm curious how one would define what these mean:

  • For a triplet, the duration of the note is always multiplied by 2/3 I believe, regardless of time signature.
  • For a doublet in 6/8 time, is the duration of the note always multiplied by 3/2?  Does a doublet make sense in every possible time signature?  Can a doublet note duration always simply be multiplied by 3/2?
  • For a quintuplet in 4/4 time, is the duration of the note always multiplied by 4/5?  What about 6/8 time, where it should perhaps be multiplied by 3/5?

If n-tuplets were to be done, could there be simple rules as to change in duration?  Or would the rules have to depend on the time signature?  Or should the "n:x" notation always be forced, where n notes would occupy the same time as x notes would, and the duration of each would be multiplied by x/n?  Thoughts anyone?
147
General Discussion / Re: display suggestion
Quote
...the name for those little boxes that pop up when you hover over something - is "tooltips."

Eureka!  The term "tooltips" reminded me that long ago, I'd unchecked the box that allowed "tooltips on startup" to show.  So I forced up a tooltip via Help/Did you know?, and rechecked the box.  I quit NWC and started it again, and after closing the tooltip on startup, all of my "tooltips" worked again when hovering over buttons (including the key signature when over the label)!  So I then turned "tooltips on startup" back off again, restarted NWC, and all still works!  Somehow, cylcing the "tooltips on startup" on and back off again "kicked" something, and got my hover tooltips back.  Very strange, but all's well that ends well.
149
User Tools / Re: First time user-tool user.
Instead of modifying the standard require line:
Quote
require_once("lib/nwc2clips.inc");

Is it better, worse, or the same architecturally to just add this line before it:
Code: [Select · Download]
set_include_path("C:/Program Files/Noteworthy Software/NoteWorthy Composer 2/Scripts");

Either way, is there an easy way for a script to obtain the path from a registry entry, rather than hard-coding it?
150
General Discussion / Re: Is it possible to make note spacing proportional to their duration?
Quote
I have yet to find a case where "Extra Note Spacing" produces a superior result to adding "Preserve Width Text" in front of the note.

I have to make extensive use of layering, and often have to tweak the note spacing in one staff to get it to overlay properly with the other staffs it layers with.  Preserve Width Text to my knowledge impacts all staffs synchronously, which is great if that's what you want.  But I find Extra Note Spacing invaluable in many cases, and actually, I like that its granularity is a notehead's width.  I've never needed to adjust a rest in this manner (nor was this asked for in the post :-).  Granted, in the rare case I run into it, the accidental thing is an annoyance.  But even if Extra Note Spacing may or may not be useful to me, I shouldn't have assumed it would be useful for anyone else.  :-)