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 - Mike Shawaluk

451
General Discussion / Re: boxed text
Since you specifically mentioned %br% (multiple lines of text), I think it makes more sense to petition @hmmueller for a box option in his XText.hmm object, which is already chock full of interesting features.  One more can only make it better!
452
General Discussion / Re: boxed text
You can put a BarLabel.ms pretty much anywhere in a measure, and it should display correctly. However, it currently only knows how to center text over the item which follows the marker.

It would be possible to modify BarLabel.ms to add some positioning flexibility, such as allowing the box to be left or right aligned in addition to centered, and there are some other "niceties" that I've thought of since I created it, like allowing the line thickness and spacing to be adjusted. Maybe allow different shapes besides a rectangle. But when I created it, one of the things that people liked about it was that it was simple to use; not a lot of options to mess with. And it is especially handy for its intended use case, which is bar numbers. Perhaps @hmmueller would consider adding a boxed text option to his XText.hmm object :)

It was ingenious of you to think of this alternate use for BarLabel.ms.  I guess this is an example of thinking outside the box? ;)
453
General Discussion / Re: Hairpins
I only put the hidden dynamic there to position the hairpin. I think you had an earlier one in your score to do that. You have already figured out that hairpins get their vertical position from the most recent dynamic. Sometimes I will insert hidden dynamics if I need to shift the hairpins up or down a bit.
454
General Discussion / Re: Hairpins
This is what I meant by using spacers. I've duplicated your two staves to get a feel for what you are trying to do, since spacers work differently when there are multiple staves present. As you can see in my example, I have inserted 3 spacers: between the note and the dynamic, the dynamic and the hidden grace note, and between the hidden grace note and the ending bar line. You might not need all three, but if you experiment with their sizes, you can see that they interact and each have their own influence on the hairpin's appearance. Note that they will look different in edit mode versus view/print preview modes.

Code: (nwc) [Select · Download]
!NoteWorthyComposer(2.751)
|Editor|ActiveStaff:2|CaretIndex:1|CaretPos:7
|SongInfo|Title:""|Author:"<Name>"|Lyricist:""|Copyright1:"Copyright © 2018 <Name>"|Copyright2:"All Rights Reserved"
|AddStaff|Name:"Staff"|Group:"Standard"
|StaffProperties|EndingBar:Section Close|Visible:Y|BoundaryTop:12|BoundaryBottom:12|Lines:5|Color:Default
|StaffProperties|Muted:N|Volume:127|StereoPan:64|Device:0|Channel:1
|StaffInstrument|Trans:0|DynVel:10,30,45,60,75,92,108,127
|Lyrics|Placement:Bottom|Align:Standard Rules|Offset:0
|Lyric1|Text:"bring. Glo-ry! Glo-ry!\n"
|Note|Dur:8th|Pos:-5|Opts:Stem=Up,Beam=First
|Dynamic|Style:f|Pos:10.5
|Note|Dur:16th|Pos:0|Opts:Stem=Up,Beam
|Note|Dur:16th|Pos:-2^|Opts:Stem=Up,Beam
|Note|Dur:8th|Pos:-2|Opts:Stem=Up,Beam=End
|Rest|Dur:8th
|Note|Dur:16th|Pos:0|Opts:Stem=Up,Beam=First
|Note|Dur:16th|Pos:-1^|Opts:Stem=Up,Beam
|Note|Dur:8th|Pos:-1|Opts:Stem=Up,Beam=End
|Bar
|AddStaff|Name:"Staff-1"|Group:"Standard"
|StaffProperties|EndingBar:Section Close|Visible:Y|BoundaryTop:10|BoundaryBottom:14|Lines:5|Color:Default
|StaffProperties|Muted:N|Volume:127|StereoPan:64|Device:0|Channel:2
|StaffInstrument|Trans:0|DynVel:10,30,45,60,75,92,108,127
|Lyrics|Placement:Bottom|Align:Standard Rules|Offset:0
|Lyric1|Text:"bring.\n"
|Dynamic|Style:mf|Pos:7|Visibility:Never
|Note|Dur:Half,Dotted|Pos:-5|Opts:Crescendo
|Spacer|Width:425
|Dynamic|Style:f|Pos:8
|Spacer|Width:450
|Note|Dur:8th,Grace|Pos:-5|Visibility:Never
|Spacer|Width:350
|Bar
!NoteWorthyComposer-End
455
General Discussion / Re: Hairpins
I am looking for help in getting those hairpins to behave satisfactorily.

I found this topic from 10 years ago.
https://forum.noteworthycomposer.com/?topic=6446.msg45412#msg45412

Have there been any new tricks or tools discovered? I've tried using an invisible muted grace note and that helps sometimes. Not always, like when I want a new hairpin after a whole note to show a crescendo on the note moving into a new dynamic range.

Thanks
It would help to see a score snippet with hairpins that is not showing as you would like. In addition to using hidden muted grace notes (or grace rests), I've also had some luck by inserting spacers in a staff.

But then again, if you are not worried about the hairpin playing, you can always use this.
456
Tips & Tricks / Re: An experiment in tuplets
I probably didn't explain it very well, so let me try again. There would be a cluster of invisible muted grace notes, that would only be present to establish the pitch, articulation, accidentals, etc. of each tuplet note. Then you put a hidden normal (non-grace) rest after that, to take up the appropriate staff duration (so the measure is properly filled). Maybe you also need to add a spacer there if there is only a single staff, so the measure doesn't collapse (I forgot to mention that last time.)  Anyway... the user object could be right before the grace notes, and it could have a parameter to specify how many tuplet notes to expect. So it would look ahead in the measure to see how much space was available, and it would place the "n" notes there appropriately spaced (I would say "equally spaced" but some might have accidentals, which would mess up the spacing. I didn't say the object would be simple :) )

The idea is that if I am putting a septuplet run in staff #1 and there are 4 quarter notes in staff #2, I really don't care if the notes line up exactly.

Does that make more sense?
457
Tips & Tricks / Re: An experiment in tuplets
Of course, all these "blank head features" collide with CueHeads ....
One thing I forgot to mention before is that you can "turn off" CueHeads temporarily in your score by inserting a hidden CueHeads object, and then turn it on again later by inserting another object instance, this time unhidden. Alternately, inserting a copy with Class set to Standard will stop its StaffSig behavior, and not insert the "banner" in your score. In fact, if your score only contains a few cue sized notes, you can insert Standard CueHeads immediately before those notes, instead of using the StaffSig object.
458
Tips & Tricks / Re: An experiment in tuplets
I understand the approach you are taking here, and it's an interesting one. However, another approach occurred to me, that was inspired by your second version of CueStaff.hmm. You never did explain how that approach worked, although I poked around a little in the object's code, and I think I figured out enough of the general approach to see how it could be applied to the tuplet problem.

Imagine that a user wishes to create a custom tuplet at some spot in their score. They would insert the tuplet notation as grace notes, and then make the notes hidden and muted. This gives them zero duration in the measure. Then, they would insert a non-grace rest of the desired duration of the tuplet, and mark that hidden as well.  Immediately preceding these notes, there would be a user object, which would have necessary parameters to control the appearance (and playback) of the tuplet. The object would then loop over the grace notes and draw them on the staff as regular notes, using the appropriate properties of the grace notes (stem direction, beam type, "duration", etc.)

I've left out some details, but let me know if this approach could work in theory. It could be a bit simpler than the CueStaff object since it only needs to draw notes, and maybe rests.  Does the idea sound feasible?

Mike
459
General Discussion / Re: An idea
For example, with the tremolo tool, I started by reading the instructions. That didn't totally illuminate me, so I opened the example. Then, I tried and failed to make one. (Had missed a key point) Then I cut and pasted the example into my score. Then I went into the settings to figure out how it was set up. Then I asked for some clarification and googled a few notation related things, went back and was successful.
Mea culpa on the built-in instructions... I was reading them today, and they were written back before there was a built-in tool for turning notes into tremolos; the process was pretty tedious. It's much simpler now using the embedded user tool: you don't have to manually create the rest chords before-hand, or remember which note and rest duration combinations to use.  I should go back and update the instructions for my various objects to reference the embedded tools.
461
Object Plugins / Re: Tremolo.ms (2.1)
The Tremolo.ms user object has been updated, with the following changes:

  • A new parameter has been added which allows the angle of whole note tremolo beams to be adjusted.

Please refer to the parent post for a description of the available parameters and a sample clip.

462
Object Plugins / Re: Tremolo.ms (2.0c)
For whole note tremolos, the position of the beams will be different depending on whether the rest chords have the rests on the top or bottom. You can flip the direction by highlighting the rest chord and pressing Shift+Up or Shift+Down. Also, note that both rest chords must be in the same direction in order for the tremolo to be drawn.

It would not be difficult to add an offset parameter that would allow the angle of the beams for whole note tremolos to be adjusted. Currently, they are drawn at the same angle as the noteheads.

Thanks for the suggestions and kind words.
463
General Discussion / Re: An idea
I think this has been discussed before, but one attraction of a scripted plugin system (especially one that does not require compilers or other special tools) is that it takes relatively little time for someone to implement a brand new feature.  While some of the objects I have created did take a while to evolve, there were a few that were almost overnight efforts. And when problems were found, or new features needed, these often happened very quickly, sometimes within hours. On the other hand, creating a new feature natively in NWC generally takes much longer, often many weeks or months. (I am speaking in general terms here.)

I think it has been suggested that the user object (and user tool) subsystems could be sort of "proving ground" for new program features. If an object is popular, and a significant number of users find it useful (or perhaps indispensable), maybe it WILL become a standard feature in a future version. Likewise, there have been numerous workarounds and tricks to achieve special spacing, slur positioning, etc. over the years, and finally in the current version we have much better control over notation appearance: finer vertical positioning and stem length, accidental, extra notehead space and augmentation dot spacing, slur positioning, and so on. Courtesy accidentals now exist as a native feature. I think much of the evolution to create these new features has been from the community of users in this and other forums, letting the NWC authors know what they like and don't like, what they need and don't need.

We will all have to wait and see what the future brings as far as the next version of NWC is concerned. I am looking forward to the next beta period (which I think is a bit overdue).
465
General Discussion / Re: Do we need a "CueStaff" plugin?
Your method is basically the same as my "newer" idea, using the Span class, to scan over and mirror the notes in smaller size, using the various nwcdraw methods to determine the appropriate locations of stem, dot, accidentals, etc.  I see from your code that you have "stubs" for the majority of staff objects that need to be filled in.

There is code in NWC which will "shut down" any plugin that is taking too much CPU time. You may have already seen this in action if you accidentally create an infinite loop (which I have done from time to time). If this is happening for you with the current code, then perhaps this technique isn't going to work.  However, maybe there is a bug lurking that is causing the plugin to run excessively. I don't recall if there is a way for a plugin to log the execution time, however.

One small note/suggestion for your current code that draws bar lines: nwcdraw.barSegment. Look at the code for TabStaff.nw for an example of this.

All in all, this is an excellent proof of concept, but as you say, it will take much work to build it out to handle more notation.

Editorial comment follows:
What would be helpful for this (and other) objects would be some way to tell NWC to "not draw things" so that the user object could draw them instead. Objects like this (as well as CueHeads.ms and Beam.hmm and a few others) are forced to use special tricks like blank space noteheads and zero-stem-length notes in order to suppress the drawing of noteheads and flags. We can currently use the marker object to suppress the rendering of slurs, articulations and triplet markings, but there are more things that would be useful to be able to hide or control.  However, I don't know what NWC has in store for the next version, since the author has been very quiet lately. Perhaps there will be other mechanisms available that give us some of the new features and abilities that we are trying to do via plugins.  I guess we'll have to wait and see.
466
General Discussion / Re: Do we need a "CueStaff" plugin?
I too have thought about this sort of plugin, and agree that it would be a lot of work. However, while looking at your example, I had a different idea on how to accomplish it, which might be slightly less work (but still not inconsiderable). Would you be willing to describe your approach so far in the sample code? If it's not the idea I just had, I'll let you know, and you can tell me which of the two ideas might work best.
467
User Tools / Re: Is there a way to get the current cursor position ("caret position") ...
You are of course correct about CaretPos - it is in fact the vertical position on the staff.

I indicated a saved nwctxt file just as an example, but those values are also dynamically sent to a user tool. I would suggest running the "nwctxt File Explorer" user tool, which is installed as part of the NWC2 User Tool Starter Kit. (You can find it under the .Developer Tools group). This is a handy tool for browsing the structure of a score from a user tool's perspective.

I seem to recall that it is possible for a clip text user tool to also access the score's file text, but I can't think of any examples off the top of my head. Hopefully one of the other user tool authors can provide an example.
468
User Tools / Re: Is there a way to get the current cursor position ("caret position") ...
If you save a song in NWCTXT format, you will see something like the following as the second line:
Code: (nwc) [Select · Download]
|Editor|ActiveStaff:1|CaretIndex:5|SelectIndex:7|CaretPos:0
CaretIndex holds the cursor position when the file was saved. If there was an active selection, SelectIndex will hold that. I haven't figured out what CaretPos indicates.

I haven't verified this, but I would assume that this information is available if you are using file mode in the user tool.
469
Object Plugins / Re: Breve.test (0.1)
Just a quick note, you probably know you can hide accidental signs by hitting 7, 8 or 9 a second time.
Well, sure, but that's not really "hiding" the accidentals, it's removing them. Which is fine if you are only worried about the score looking right, but if you remove them, it probably won't play correctly anymore.
470
Object Plugins / Re: RepeatMark.ms (0.3)
When I first started creating user plugins, there weren't a lot of other people out there making them, so I managed to get my initials on many of the "standard" ones. I'm happy that you have come forward and are making a number of useful additions.

A number of plugins that I wrote were created because they were things I found myself wanting or needing, for the choral music files that I was creating for our church choir. Once I created them, I was happy to share them with other NWC users.  RepeatMark.ms is not one of these; that one was a somewhat recent addition, and was something I did mainly to see if it would fit the needs of people who create scores that require them.  I've never really needed a repeat mark (or simile mark, which I now understand is the better name for that notation) in the scores I create.

That said - I would be happy to relegate the RepeatMark code over to you, where you can evolve it as needed, since you have more knowledge as to how these marks are actually used. Feel free to start a new thread with your RepeatMark.hmm (or SimileMark.hmm) code, and I'll retire the version in this thread once you have done that.

Thanks,
Mike
471
Object Plugins / Re: Breve.test (0.1)
And I have another question: Can a plugin somehow detect whether a font is actually installed? .setFont does not return any "success" value, and even querying .getTypeFace() afterwards just returns the set typeface, even if it is 'asdfghj' or some other nonsense. This seems to be the way the Windows font system works ... but I would like to give the user some - any - feedback if the square breve head cannot be drawn (my ugly kicked-over I's, on the other hand, always work ... as long as a "Times New Roman" font is present ...).
Try this function: https://lua.noteworthycomposer.com/plugin/nwc.md#hasTypeface
472
General Discussion / Re: Objects online synch
I have a theory as to the cause of the problem, based on Lawrie's TLS v1 comment. Let me ask a question that I probably know the answer to already: are Lawrie and Flurmy (who both report having the problem) running Window XP? I'm pretty sure the rest of us (including me) are running a newer version of Windows. I am also having no problems doing a sync.

Do a search on "TLS 1.0 end of life" for more information. I am guessing that NWC's web host has already disabled it, and it appears that TLS 1.0 is the latest version directly supported by Windows XP. Hopefully someone will prove me wrong on that last bit.
473
Object Plugins / Re: Breve.test (0.1)
(a) CueHeads detecting Breve should be possible - I already thought of this, but the creators of both would have to discuss this :)
This should certainly be possible, since we are doing it now :)
(b) Implementing width and marking the chords as hidden: I actually started with this, but it did not work out at all (maybe I did not try all possibilities). The main problem is that hidden notes are not aligned by NWC with other notes, and therefore it is alsmost impossible to place the breves lined up with notes on other staffs; it gets worse with (*) accidentals, (*) the "increase spacing" option in the page setup, (*) lyrics (breves are mostly useful for vocal music) etc. That's why I ended up with the blank noteheads ...
In my experience, while NWC does remove all space for a note on the current staff when you mark it as not visible. However, when there are multiple staves, it does seem to keep them lined up with the same note position on the other staves. But maybe I am mistaken.
(In the course of this and - upcoming - considerations about RepeatMarks, I would wish that (x) NWC had more than one - distinguishable - "quite" blank heads; and (y) a way to insert additional, note-aligned spacers when drawing (my idea would be that width(t) could return some more sophisticated result ... but that's long-term ...)
I know what you mean, and I agree. Another suggestion that has been offered in the past is to have "transparent" as one of the notehead colors. This is a bit different than what a blank space notehead does, since that only "hides" the notehead, not the accidental or augmentation dots associated with a notehead.
475
Object Plugins / Re: Breve.test (0.1)
A further suggestion for you to consider. I assume you are using a blank notehead for the semibreves so that NWC will still reserve space in the layout. However, since you are placing the user object at each breve location, it can specify its own width via the "width" hook. In that case, you can mark the actual semibreve chords as hidden, and avoid interaction with CueHeads.ms.

This is just a theoretical suggestion, which I haven't tried.
476
Object Plugins / Re: Breve.test (0.1)
This user object does not work nicely with the Cueheads.ms object, because that object also uses blank note heads.
It would certainly be possible for CueHeads.ms to detect Breve.hmm and adjust its behavior accordingly (i.e. suppress its drawing when that object is found).
477
General Discussion / Re: Why use hidden staves?
I'm not interested in that plugin since all I want is the display of the chord name.
How can I make ChordPlay hush?  ;)

Of course I can (and I do) use text for chord names, but having a... "dedicated" item simplifies the creation of a user tool to transpose the chords or also to simplify operations on them like, for example, moving all them up or down at once.
(N.B. Yes, I already did the transpose tool for text chords long ago and it still works fine, but...)
It's easy to make ChordPlay hush; just set Note Span to 0 (which is the default value)

One of the nice parts of the ChordPlay.nw object is that it automatically transposes, but I assume you knew that. No user tool required.
481
General Discussion / Re: Italics again
There is one small problem with Warren's suggestion: if you mark the note as not having a lyric syllable, then there won't be space reserved for it in the score. This might be okay if the word is fairly short, but I use the following approach instead:

In your lyrics, put several consecutive underline characters ( _ ) in place of the syllables you will be doing with italics. NWC will render these as spaces, assuming that you set the "Underscore shown as space" checkbox. You can experiment with the number of underscores for each syllable to give you the right spacing. You can even hyphenate your underscores if you have a two syllable Hebrew word (i.e. ______-______ ) so you'll get the hyphen at the right spot, and you can put the syllables on either side.

Also, Warren didn't mention this, but for the text expressions, you probably want to set each syllable's placement to be center justification, aligned at the next note/bar.

Good luck!
483
General Discussion / Re: Printing to PDF
I also use PDFCreator, with Windows 10, and it seems to work fine. I use it primarily to create custom-sized PDF files that match the aspect ratio of various tablets (Android, iPad, Surface Pro), which we use in our choir.
484
General Discussion / Re: Printing to PDF
I'm assuming that since you have a new computer, it is probably running Windows 10, but for NWC to print to PDF, the steps should be the same regardless of what version of Windows you have.
  • Install your PDF generation program (which you have already done)
  • While running NWC, go to File > Printer Setup..., and choose the PDF driver from the dropdown list.
  • Open a score, then go to File > Print... and click OK. It should prompt you as it did before.
Let me know if that didn't work, and what you did or didn't see when you went to Printer Setup or Print.
485
Object Plugins / Re: Beam.test (0.2)
Quite impressive. I have a very small suggestion: for your "spin" function (to alter the final stem length), you should use an increment/decrement of 0.5, to match the step value for the parameter on the properties window.

I look forward to experimenting with this new object.

Mike
486
Object Plugins / Re: XText.hmm (0.6)
That was pretty much the way I figured it would change. Your plugin is now shorter AND faster.

No complaints from me :)

Mike

Edit: Oops, maybe not "shorter" since you had to double up the % because of string.gsub... but still should be faster.
487
Object Plugins / Re: XText.hmm (0.6)
Hello @hmmueller,

A question/suggestion for you: I notice in your code you have a function named replaceAll(text, k, v) where you are doing string.find() and string.sub() within a loop. Did you consider using the Lua string.gsub() function? I think it should work well for what you are doing.

Thanks,
Mike
488
General Discussion / Re: My (new, and long) NWC wishlist
I suppose you know that BarCounter.nw.nwcuser.lua does this too, do you?
There are quite a few enhancement requests up there for which there are already user object solutions (or partial ones). RepeatMarks.ms was my attempt to do simile marks (maybe that would have been a better name) but it has a number of limitations. CueHeads.ms was mentioned as part of a number of the original post's requests; if there were a way to suppress the accidentals for a blank space notehead, I would have considered adding smaller accidental rendering as part of that object. But I still consider CueHeads as a workaround to having true cue-sized noteheads (which NWC already knows how to render for grace notes.)
G-2. Beams between staffs
It's been previously discussed that the 2.75a update includes several plugin API functions that should make cross-staff beaming possible by a plugin. But it will still be a challenge to implement all of the various types and styles of cross-staff beams. Part of the problem is that you need to suppress the normal note flags in order to draw your own beams, and the only way to do that is to set the stem length to 0. So the cross-staff beaming object would also need to draw the stems. (Unless I am missing a better approach.)
489
General Discussion / Re: Beyond Bars Lyric sizes
I think you meant Behind Bars (the Elaine Gould book), which I have a copy of, so I read through the relevant sections for lyrics. Surprisingly, I did not find any mentions of font sizes, although there were references to staff size for various score types. There are recommendations on text alignment and spacing, and for lyric extenders (a.k.a. melisma lines). I guess the best practice is to "pick something that looks right".  Although it is possible that I missed this during my search.

This is a perfect opportunity to bring up what I see as an annoying quirk of NWC regarding lyrics: the way it determines line spacing. For a particular font, as you change the point size, the line spacing is also changed, but the two sometimes are not changed equally. It is as though the line spacing is rounded to some coordinate system, and will sometimes give tighter or looser line spacing. Also, it is only possible to directly enter point size as a whole number (although there are workarounds to enter fractional font sizes that I will leave to others to describe).  In addition to more uniform/predictable lyric spacing, I'd like to see a few enhancements around lyrics:
  • A separate setting for lyric line spacing
  • The ability to specify fractional font sizes without needing to resort to workarounds
  • The ability to incorporate bold, italic or underlining in lyrics (without having to resort to special composite fonts) Maybe bold and underline are overkill, but italics at least would be nice to have.
  • The ability to change lyric position (and spacing) "on the fly" using boundary commands.
490
General Discussion / Re: Inserting dynamics
I don't see any of your intelligent friends here at the moment, so let me respond instead.

If you press "d" (lower case) it brings up the selector, that lets you choose the dynamics visually, as you describe.  However, if you press "D" (upper case) it brings up the more terse dialog box (but that has additional options).

Hope that helps,

Mike
491
Object Plugins / Re: Envelope.hmm (0.7) - supporting envelopes in NWC
Thank you! -> I have uploaded version 0.7 with corrected @ labels. Also, I have removed all the commented nwc.debug calls.

H.M.
You're very welcome.

BTW, this is not a big deal, but I noticed that when you bumped the version to 0.7, it still says 0.6 in the help comment section.  You can fix that when you go to 0.8 :)

Also, I saw this usage comment:

Quote
--!! (17) Why are these plugins (both Envelope and its Maestro) shown as tiny triangles?

It's more of a "tear drop" but that is the standard icon for a user plugin. You've probably noticed that a number of other plugins show as sideways text with an oval around them.  There's a "toolbox" for drawing that which you can use if you like; you should look at the source code for one of those objects to see how it's done (try Cueheads.ms as an example).

Basically you would add the following code:
Code: (lua) [Select · Download]
-- Following line is outside any functions
local userObjSigName = nwc.toolbox.genSigName(userObjTypeName)
-- Following three lines are added to the top of the _draw hook
local isStaffSig = (t.Class == 'StaffSig')
local w = isStaffSig and nwc.toolbox.drawStaffSigLabel(userObjSigName) or 0
if not nwcdraw.isDrawing() then return w end

You could include additional information inside the oval, such as the name of the controller.
You would also need to add "width = _draw" to your return hooks.
492
Object Plugins / Re: Envelope.hmm (0.6) - supporting envelopes in NWC
** Question: Where does one see the comments after @... properties? I knew that once, I believe - but have not found that explanation ...

When you have the object properties window open, you would click the "?" in the title bar, and then click on a particular field. If your second click is the object name (or any property which doesn't have an @ entry) it will display the information that precedes the first @ entry.

However, one note: you have named some of your @ labels incorrectly. You should use the "id" value, not the "label" value. For some of your Envelope.hmm entries, they are the same, so they work.

Mike
493
General Discussion / Re: Multiple Rests (Please Help! I'm such a beginner)
The good news is that you don't need special fonts or tools anymore to do multi-measure rests. The recent versions of NWC now support them natively. Just go to Insert > Multi-measure Rest, or press [. Then, enter the number of measures you want it to span. However, note that if you want it to appear as in your example image, you should set the Visibility to Always.
Code: (nwc) [Select · Download]
!NoteWorthyComposerClip(2.751,Single)
|RestMultiBar|NumBars:15|PrintOnce:N|WhenHidden:ShowBars,ShowRests|Visibility:Always
!NoteWorthyComposerClip-End
494
Object Plugins / Re: Envelope.test (0.3) - supporting envelopes in NWC
(5) [see code/please help] I would like to set the color of all envelope objects for one controller to the corresponding maestro's object color - is this possible?
Alas, it appears not. Currently, a user object can only draw in a single color. Attempting to set t.Color in an object's Create or Audit function gives an error about trying to change a read-only property. Perhaps in a future version of NWC, this parameter will be allowed to be writable in these functions, as is the Pos property.

One thing you might try is to create an embedded user tool for your Envelope object, and have it set the color based on the color of the corresponding EnvelopeMaestro object. This should work in theory because a user tool can modify any object property.
495
Object Plugins / Re: Envelope.test (under development) - supporting envelopes in NWC
Greetings,

I have only looked over your code and comments briefly so far, but I have one suggestion that might help, regarding your use of {ntnidx}:objProp() to retrieve the properties of your Maestro object. You might try using {ntnidx}:userProp() instead, as this will be "filtered through" the spec table, and should thus have default values (and types) applied.

I will give it a closer look-at this weekend, but this is an interesting plugin you are undertaking - thanks for your efforts!

Mike
496
User Tools / Re: Turn grace notes into real ones.
The following typo looks familiar to me:
Code: [Select · Download]
var NoteLengths = [ "Whole", "Half", "4th", "8th", "16th", "32nd", "64th", "128th", "256th", "512th", "1028th" ]
You probably want that to be "1024th" (although NWC doesn't support notes that short yet). Also, there should be a ";" at the end of the statement to be proper JavaScript.
497
General Discussion / Re: incorrect layout
In a created song some lyrics are printed wrong.
<Image Link>
What can I do to fix this problem?

Regards.
Guido van Harten
There is a joke that goes something like this:

Patient: Doc, it hurts when I do this: (patient makes a particular motion)
Doctor: Well then, don't do that!

When you enter notes and lyrics into NWC, it will add space between the notes when particular lyric syllables are longer, so that the text remains readable.  However, as you have shown, inserting a spacer between two notes, which overrides NWC's automatic spacing, can also be used to bring notes closer together. Doing this also overrides the automatic lyric spacing, because you told it you want those notes closer today, and it is obeying your command. This is made worse in your example because of the small notes and the correspondingly large lyric font. (Incidentally, what notation typeface are you using, which has those round noteheads?)

If you really need the notes that close together, there are a few options:
  • Add one or more underscores to the end of the first note's word/syllable, and to the beginning of the second note's word/syllable. This might not work for your example, because then they will run into the adjacent lyrics.
  • Put the word/syllable for the first note on the existing lyric line, and add a 2nd lyric line below with just the second note's word/syllable. (or add the second word via a text object)
  • Try a smaller lyric font size, or a larger notation font size

But my best advice would be to increase the spacing between the two notes, or, in the above doctor's advice, "don't do that!" :)
498
General Discussion / Re: verse numbering
If you are talking about the VerseNumbers.ms object, just go to the properties for the user object and change the Class from StaffSig to Standard. Then it will only display once. (Note that this is mentioned in the help information for the object)
499
General Discussion / Re: new computer recommendations
It is also possible to install NWC from a downloaded file, without using optical media. Alternately, if you have your installation CD, you can pop it in another computer and copy the necessary files to a thumb drive and install them from that (I assume your new computer has USB ports :) )
500
General Discussion / Re: Wish-list: Slur Direction and Tie Direction on Toolbar
What would also be nice to have is a way to create a button or selector that could run a specified user tool. This would essentially fulfill this request, since it would not be too difficult to create a user tool that sets slur or tie direction on selected notes. This could then be accessed by a click, or a keystroke, since selectors can have keyboard shortcuts.  This would also be very useful for custom objects' user tools, such as those for creating arpeggios and tremolos.