Skip to main content

Show Posts

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

Messages - Warren Porter

2
General Discussion / Re: Question on tremelo
This might not be a true tremolo, but it is a shortcut for showing each note is played twice like the last measure.
Code: (nwc) [Select · Download]
!NoteWorthyComposerClip(2.751,Single)
|Clef|Type:Treble
|Key|Signature:F#,C#,G#,D#,A#|Tonic:B
|TimeSig|Signature:2/4
|Tempo|Tempo:36|Pos:7
|Note|Dur:8th,Tenuto|Pos:-6|Opts:Stem=Up,Beam=First
|Note|Dur:8th,Tenuto|Pos:-6|Opts:Stem=Up,Beam=End
|Note|Dur:8th|Pos:-9|Opts:Stem=Up,Beam=First
|Note|Dur:64th,Slur|Pos:n-8|Opts:Stem=Up,Beam
|Note|Dur:64th,Slur|Pos:-7|Opts:Stem=Up,Beam
|Note|Dur:64th,Slur|Pos:-6|Opts:Stem=Up,Beam
|Note|Dur:64th,Slur|Pos:-5|Opts:Stem=Up,Beam
|Note|Dur:64th,Slur|Pos:-4|Opts:Stem=Up,Beam
|Note|Dur:64th,Slur|Pos:-3|Opts:Stem=Up,Beam
|Note|Dur:64th,Slur|Pos:-2|Opts:Stem=Up,Beam
|Note|Dur:64th,Slur|Pos:n-1|Opts:Stem=Up,Beam=End
|Bar
|Text|Text:"written"|Font:StaffItalic|Pos:10
|User|TremoloSingle.ms|Pos:-2|Beams:1
|Note|Dur:8th,Triplet=First|Pos:0|Opts:Stem=Down,Beam=First
|User|TremoloSingle.ms|Pos:-2|Beams:1
|Note|Dur:8th,Triplet|Pos:1|Opts:Stem=Down,Beam
|User|TremoloSingle.ms|Pos:-2|Beams:1
|Note|Dur:8th,Triplet=End|Pos:n2|Opts:Stem=Down,Beam=End
|User|TremoloSingle.ms|Pos:-2|Beams:1
|Note|Dur:8th,Triplet=First|Pos:3|Opts:Stem=Down,Beam=First
|User|TremoloSingle.ms|Pos:-2|Beams:1
|Note|Dur:8th,Triplet|Pos:4|Opts:Stem=Down,Beam
|User|TremoloSingle.ms|Pos:-2|Beams:1
|Note|Dur:8th,Triplet=End|Pos:n5|Opts:Stem=Down,Beam=End
|Bar
|User|TremoloSingle.ms|Pos:-2|Beams:1
|Note|Dur:8th,Triplet=First|Pos:n6|Opts:Stem=Down,Beam=First
|User|TremoloSingle.ms|Pos:-2|Beams:1
|Note|Dur:8th,Triplet|Pos:7|Opts:Stem=Down,Beam
|User|TremoloSingle.ms|Pos:-2|Beams:1
|Note|Dur:8th,Triplet=End|Pos:8|Opts:Stem=Down,Beam=End
|User|TremoloSingle.ms|Pos:-2|Beams:1
|Note|Dur:8th,Triplet=First|Pos:#9|Opts:Stem=Down,Beam=First
|User|TremoloSingle.ms|Pos:-2|Beams:1
|Note|Dur:8th,Triplet|Pos:10|Opts:Stem=Down,Beam
|User|TremoloSingle.ms|Pos:-2|Beams:1
|Note|Dur:8th,Triplet=End|Pos:#10|Opts:Stem=Down,Beam=End
|Bar|Style:Double
|Text|Text:"played"|Font:StaffItalic|Pos:11
|Note|Dur:16th,Triplet=First|Pos:0|Opts:Stem=Down,Beam=First
|Note|Dur:16th,Triplet|Pos:0|Opts:Stem=Down,Beam
|Note|Dur:16th,Triplet|Pos:1|Opts:Stem=Down,Beam
|Note|Dur:16th,Triplet|Pos:1|Opts:Stem=Down,Beam
|Note|Dur:16th,Triplet|Pos:n2|Opts:Stem=Down,Beam
|Note|Dur:16th,Triplet=End|Pos:2|Opts:Stem=Down,Beam=End
|Note|Dur:16th,Triplet=First|Pos:3|Opts:Stem=Down,Beam=First
|Note|Dur:16th,Triplet|Pos:3|Opts:Stem=Down,Beam
|Note|Dur:16th,Triplet|Pos:4|Opts:Stem=Down,Beam
|Note|Dur:16th,Triplet|Pos:4|Opts:Stem=Down,Beam
|Note|Dur:16th,Triplet|Pos:n5|Opts:Stem=Down,Beam
|Note|Dur:16th,Triplet=End|Pos:5|Opts:Stem=Down,Beam=End
!NoteWorthyComposerClip-End
TIA
3
General Discussion / Question on tremelo
I am trying to transcribe a two note tremolo on each note. Using TremoloSingle I can create one extra flag on each note, but is there a way to put two staccato dots on each note? Also, when using that object, the first note has a duration 2 or 3 times longer than the 2nd note.
Code: (nwc) [Select · Download]
!NoteWorthyComposerClip(2.751,Single)
|Tempo|Tempo:108|Text:"Pas vite (gai)"|Pos:14
|Clef|Type:Treble
|Key|Signature:F#,C#,G#,D#,A#|Tonic:B
|TimeSig|Signature:2/4
|Tempo|Tempo:36|Pos:7
|Note|Dur:8th,Tenuto|Pos:-6|Opts:Stem=Up,Beam=First
|Note|Dur:8th,Tenuto|Pos:-6|Opts:Stem=Up,Beam=End
|Note|Dur:8th|Pos:-9|Opts:Stem=Up,Beam=First
|Note|Dur:64th,Slur|Pos:n-8|Opts:Stem=Up,Beam
|Note|Dur:64th,Slur|Pos:-7|Opts:Stem=Up,Beam
|Note|Dur:64th,Slur|Pos:-6|Opts:Stem=Up,Beam
|Note|Dur:64th,Slur|Pos:-5|Opts:Stem=Up,Beam
|Note|Dur:64th,Slur|Pos:-4|Opts:Stem=Up,Beam
|Note|Dur:64th,Slur|Pos:-3|Opts:Stem=Up,Beam
|Note|Dur:64th,Slur|Pos:-2|Opts:Stem=Up,Beam
|Note|Dur:64th,Slur|Pos:n-1|Opts:Stem=Up,Beam=End
|Bar
|User|TremoloSingle.ms|Pos:-2|Beams:1
|Note|Dur:8th,Triplet=First|Pos:0|Opts:Stem=Down,Beam=First
|User|TremoloSingle.ms|Pos:-2|Beams:1
|Note|Dur:8th,Triplet|Pos:1|Opts:Stem=Down,Beam
|User|TremoloSingle.ms|Pos:-2|Beams:1
|Note|Dur:8th,Triplet=End|Pos:n2|Opts:Stem=Down,Beam=End
|User|TremoloSingle.ms|Pos:-2|Beams:1
|Note|Dur:8th,Triplet=First|Pos:3|Opts:Stem=Down,Beam=First
|User|TremoloSingle.ms|Pos:-2|Beams:1
|Note|Dur:8th,Triplet|Pos:4|Opts:Stem=Down,Beam
|User|TremoloSingle.ms|Pos:-2|Beams:1
|Note|Dur:8th,Triplet=End|Pos:n5|Opts:Stem=Down,Beam=End
|Bar
|User|TremoloSingle.ms|Pos:-2|Beams:1
|Note|Dur:8th,Triplet=First|Pos:n6|Opts:Stem=Down,Beam=First
|User|TremoloSingle.ms|Pos:-2|Beams:1
|Note|Dur:8th,Triplet|Pos:7|Opts:Stem=Down,Beam
|User|TremoloSingle.ms|Pos:-2|Beams:1
|Note|Dur:8th,Triplet=End|Pos:8|Opts:Stem=Down,Beam=End
|User|TremoloSingle.ms|Pos:-2|Beams:1
|Note|Dur:8th,Triplet=First|Pos:#9|Opts:Stem=Down,Beam=First
|User|TremoloSingle.ms|Pos:-2|Beams:1
|Note|Dur:8th,Triplet|Pos:10|Opts:Stem=Down,Beam
|User|TremoloSingle.ms|Pos:-2|Beams:1
|Note|Dur:8th,Triplet=End|Pos:#10|Opts:Stem=Down,Beam=End
|Bar
!NoteWorthyComposerClip-End

Thanks in advance.
4
User Tools / Problem with my webpages on Scriptorium
I am really embarrassed that several webpages on Scriptorium didn't work until today. The pages ClearStaff, MoveChord, nummeas, Pentuplets, spacepart, and Triplets all used a function in the file notelength.js which I had forgotten about.

To test nwc-scriptorium.org/wp/pentuplets.html, open the webpage and attached file in different windows. Enter Alt/Tab to go from one window to the other and your cursor will be where you left it.
  • Copy the tempo into Tempo Here.
  • Copy the pentuplets (red notes) into the Textarea.
  • Choose the Tuplet Staff radio button and hit Submit. The Textarea will now have hidden tempo changes at the front and back ends of the notes with a 5 over the middle.
  • Change the radio button to Played (hidden) Staff.
  • Copy the lime green notes into the Textarea and hit Submit. Each note will be tied to a note with a quarter of its duration.
  • Click on Restore Last, choose Displayed (muted) Staff, and Submit.
  • The same notes will be in the Textarea, each followed with a hidden rest with a quarter of its duration.
Please let me know if you have any problem with this or anything else on that page.
6
General Discussion / What is 2 Ped.
I am transcribing a work by a French composer and the bass staff of the piano starts with 2 Ped. Besides Pedal Down, and Pedal Release, what else needs to be done?

Also, what is a good midi channel for a muted violin? I've been listening to patchtest.nwc (from nwc-scriptorium.org) and 64 is the only one that sounds close.

TIA
8
User Tools / Re: Metronome
The input type is File Text and also select Returns File Text.

Good tool!
9
General Discussion / Re: NWC won't open downloads
Just sent this to Beth at NoteWorthy support:
I've tried a number of websites, including scriptorium, however I've noticed other things: If I search through my file structure for something on my PC, it opens NWC but does not open the file. When my browser opens my downloads, the same thing happens. When I open NWC, choose file open and search for a file, it opens. I get the same behavior if I change browsers.

Think I discovered a big clue: If NWC is already open, NWC opens it. The workaround appears to be to double click on the downloaded NWC file to open NWC and double click on it a 2nd time to open it in NWC.
10
General Discussion / Re: NWC won't open downloads
Something to do with the file system associations in the registry?  Perhaps the wrong/corrupted directive?
I'm thinking the "%1" at the end of the Data section would be the likely culprit.  Either missing or incorrect.
......
There's probably an easy way to fix associations from NWC, I just don't know what it is.  Perhaps re-run the installer?
I ran regedit and my entry for that looks just like yours.

Thanks for looking at it though.
11
General Discussion / Re: NWC won't open downloads
It seems NWC will open a file if I open NWC, choose File ->Open, navigate to my Downloads, and click on the file. However, if I get to it using the file system or the browser's look at recent downloads, double-clicking on it would open NWC but not a work area for the file--just a big grey area under the toolbars.
12
General Discussion / Re: Violin harmonics
In the example you gave, the G on the E string would sound two octaves higher than written.

For open strings, touching the string in the middle creates a note an octave higher than the open string.
Touching a node that divides the string into thirds creates a note a 5th above the next octave. From 1st position, this would be the 4th finger and stopping (pressing it into the fingerboard here, normal playing) would give a pitch a 5th above the open string, but just touching it would send it an octave higher.
Dividing the string into 4 sections (the node is 3rd finger from first position) would raise the pitch two octaves from the open string.

There are also artificial harmonics where the player would stop with the first finger but barely touch the string with the 4th finger. This produces a pitch two octaves higher than if only the first finger was used.

Dividing the string into more than five parts can be done, but I have never seen it in real music.
Playing more than two notes in a chord produces a rolled or arpeggiated chord, two notes at a time.
Code: (nwc) [Select · Download]
!NoteWorthyComposerClip(2.751,Single)
|Clef|Type:Treble
|Chord|Dur:16th,Grace|Pos:-9,-5^|Opts:Stem=Up,Beam=First
|Chord|Dur:16th,Grace|Pos:-5,b0^|Opts:Stem=Up,Beam=End
|Text|Text:"2"|Font:PageSmallText|Scale:80|Pos:5.5|Placement:BestFitForward
|Text|Text:"4"|Font:PageSmallText|Scale:80|Pos:8|Wide:Y
|Chord|Dur:4th|Pos:b0,5,8X|Opts:Stem=Up
!NoteWorthyComposerClip-End
14
General Discussion / NWC won't open downloads
NWC won't open files found in my downloads folder. When I click on an *.nwc file, NWC starts but there is no file appearing in the work area.  The same thing happens when I open NWC first, choose open and navigate there.

Any ideas as to what happened? TIA
15
General Discussion / Re: Script Bug Challenge
The bug was that after replacing 32nd with 64th, it is (unfortunately) an exact match when 4th is replaced with 8th.

  • It can be solved by making that set of statements use a case construct where a break would follow each replace and only one replace is ever done to the duration.
  • The 32nd can be replaced by X which will be turned into 64th after the Whole note is addressed.
  • Instead of looking for "4th", look for /^4th/. That search string, as a regular expression must start the string so it would ignore 64th.
18
General Discussion / Script Bug Challenge
I haven't touched my fiddle in quite a while and noticed I was getting intonation problems. One idea to work on that would be to play the note, then the note would play through NWC and midi and I could hear if my note was in tune.

This is the working part of my script, it determines half the duration of the note and creates a rest followed by the note with it:
Code: [Select · Download]
function calculate(clip) {
  var i, saveDur, saveDurB, saveDurE;
  var lines = new Array(), result = new Array(); 
  lines = clip.split("\r\n");

  for (i=0; i < lines.length; i++) {
      result=lines[i].match(/(.*Dur:)([^\|]*)(.*$)/);
  if (result == null)
  continue;  // No duration, didn't follow grace note.
  if (lines[i].indexOf("Grace") > 0) {  // Found a grace note/chord
        continue;  }
  if (lines[i].indexOf("Rest") > 0) {  // Found a rest, ignore
        continue;  }
// shell.popUp(lines[i]);
saveDur = result[2];
//shell.popUp(saveDur);
saveDur = saveDur.replace("32nd","64th");
saveDur = saveDur.replace("16th","32nd");
saveDur = saveDur.replace("8th","16th");
saveDur = saveDur.replace("4th","8th");
saveDur = saveDur.replace("Half","4th");
saveDur = saveDur.replace("Whole","Half");
shell.popUp(saveDur);
   // thisDur = getNoteLength(saveDur);
   // shell.popUp(saveDur);
// Code to manipulate durations goes here
saveDurB = saveDur.replace("=End",""); // In case of triplets.
saveDurE = saveDur.replace("=First",""); // In case of triplets.
lines[i] = "|Rest|Dur:" + saveDurB + "\r\n" + result[1] + saveDurE + result[3];
    }
  return lines;
So far, so good except it changes a 32nd note to a 68th note.
This was my test data:
Code: (nwc) [Select · Download]
!NoteWorthyComposerClip(2.751,Single)
|MPC|Controller:vol|Style:Linear Sweep|TimeRes:Sixteenth|SweepRes:1|Pt1:0,127|Pt2:1,123|Pt3:1,120|Pos:-6
|DynamicVariance|Style:Sforzando|Pos:-8
|Note|Dur:8th,DblDotted,Slur|Pos:n-3|Opts:Stem=Up,Beam=First
|Note|Dur:32nd|Pos:-4|Opts:Stem=Up,Beam=End
|Note|Dur:4th|Pos:-4^
|Note|Dur:8th|Pos:-4
|Note|Dur:4th,Tenuto|Pos:-3
|Note|Dur:8th,Tenuto|Pos:-3
|Bar
!NoteWorthyComposerClip-End
Please hold off 24 hours after this is posted to let others take a shot at it.
20
User Tools / Re: Audit Bar Lines tool
On line 96, please change "whole note" to "whole rest". Lines 89-91 as well as 96-97 are there to allow a whole rest in a measure with nothing else with a duration in it to correctly fill the measure using the current time signature.

This change has been made in the attachment to the top message.
21
General Discussion / Re: Very long half note
I ask if there is a User tool, a Manage objects or a Performance style to achieve this.
You might want to visit nwc-scriptorium.org and select Custom Dynamics. As Flurmy mentioned, you can't have a percussive instrument (like a piano) selected--only an instrument requiring effort for the full duration of your (tied) notes would work, such as a voice (oohs, ahas), wind, brass, or bowed strings.

If changing the instrument doesn't work by itself, try to install the above tool.

Good luck!
23
User Tools / Repeated Measures
This tool allows the user to repeat a measure many times. After selecting the measure to be repeated, there will be a prompt for the total number of times that measure will be played. For example, if you answer 10 to the prompt, the measure will be repeated 9 times showing only bar lines, the repeat measure sign, and repetition number on every 4th bar.

Staff Bold is 0.5 the size of Staff Metrics and Boxmark2 under User1 is 1.375 that of Staff Metrics.

 wscript "'Browse can insert the path for you' \repMeas.js <PROMPT:Tot Times?=#>"
     Suggested path \Program Files (x86)\Noteworthy Software\Noteworthy Composer 2\Scripts\

Rename the attachment removing .txt before installing.

This was my sample file, but you will have to change the User1 font if it doesn't contain Boxmark2.
Code: (nwc) [Select · Download]
!NoteWorthyComposerClip(2.751,Single)
|Clef|Type:Treble
|Key|Signature:F#|Tonic:G
|TimeSig|Signature:5/4
|Note|Dur:8th|Pos:-4
|Note|Dur:4th|Pos:-2
|Note|Dur:8th|Pos:-4
|Note|Dur:4th|Pos:-2
|Note|Dur:4th|Pos:-7
|Note|Dur:4th|Pos:-5
|Bar
!NoteWorthyComposerClip-End

You may need to change lines 58 and/or 59 to use a different font or User font number.
Enjoy!
** Updated attachment 02/28/2024 **
25
User Tools / Re: Examine clipboard
This is the newest version--I also tested the Wscript.Echo statement
Code: [Select · Download]
WScript.StdOut.Write(WScript.StdIn.ReadAll());
WScript.Echo("Testing");   // This line may be taken out.
WScript.quit(99);
/*
WScript.StdErr.Write(WScript.StdIn.ReadAll());
WScript.quit(1);
 */
Same information, just in a different tab.

This might be helpful when working on scripts that change the staff (Return Code == zero).
27
User Tools / Examine clipboard
When working on a script for a NWC tool, it can be helpful to see what is being passed to the script, especially the Fake and Context lines. This reads the clipboard and copies it to StdErr where a return code of 1 will display it. I called it seeClip.js:
Code: [Select · Download]
WScript.StdErr.Write(WScript.StdIn.ReadAll());
WScript.quit(1);

Create the file in your usual Scripts folder (must end in .js). When installing it as a new script, browse for the name of it, then add "wscript " (note trailing space) to the beginning of the line. No prompts.

28
General Discussion / Re: Percusion
Where can I get the equivalences of the percussion notes between the scores that are available on the Internet and the Noteworthy percussion notes?
For example:
In a score downloaded from the internet, the note FA, which is the Bass Drum, is shown on the percussion staff.
but in Noteworthy the Bass Drum is an LA.


Thanks for the attention.

Pedro López from Caracas, Venezuela
30
General Discussion / Re: Repeated measures
This is what I got with Boxmark2 as User1 font with a size of 5/4 of the staff size. Would you want a count every 4 measures?
You can also use a MusicDings font for User1. Which font did you use to show the measure repeat sign?
Code: (nwc) [Select · Download]
!NoteWorthyComposerClip(2.751,Single)
|Bar|SysBreak:Y
|Note|Dur:8th,Staccato|Pos:-2|Opts:Stem=Up,Lyric=Never,Beam=First
|Note|Dur:8th,Staccato|Pos:-2|Opts:Stem=Up,Lyric=Never,Beam=End
|Note|Dur:8th,Staccato|Pos:5|Opts:Stem=Down,Lyric=Never,Beam=First
|Note|Dur:8th,Staccato|Pos:4|Opts:Stem=Down,Lyric=Never,Beam=End
|Note|Dur:8th,Staccato|Pos:5|Opts:Stem=Up,Lyric=Never,Beam=First
|Note|Dur:16th|Pos:1|Opts:Stem=Up,Lyric=Never,Beam
|Note|Dur:16th|Pos:b2|Opts:Stem=Up,Lyric=Never,Beam=End
|Rest|Dur:16th
|Note|Dur:16th|Pos:4|Opts:Stem=Down,Lyric=Never,Beam=First
|Note|Dur:8th,Staccato|Pos:5|Opts:Stem=Down,Lyric=Never,Beam=End
|Bar
|Spacer|Width:100
|Spacer|Width:100
|Text|Text:"\]"|Font:User1|Pos:-1.5|Justify:Center
|Spacer|Width:100
|Spacer|Width:100
|Note|Dur:8th,Staccato|Pos:-2|Opts:Stem=Up,Lyric=Never,Beam=First|Visibility:Never
|Note|Dur:8th,Staccato|Pos:-2|Opts:Stem=Up,Lyric=Never,Beam=End|Visibility:Never
|Note|Dur:8th,Staccato|Pos:5|Opts:Stem=Down,Lyric=Never,Beam=First|Visibility:Never
|Note|Dur:8th,Staccato|Pos:4|Opts:Stem=Down,Lyric=Never,Beam=End|Visibility:Never
|Note|Dur:8th,Staccato|Pos:5|Opts:Stem=Up,Lyric=Never,Beam=First|Visibility:Never
|Note|Dur:16th|Pos:1|Opts:Stem=Up,Lyric=Never,Beam|Visibility:Never
|Note|Dur:16th|Pos:b2|Opts:Stem=Up,Lyric=Never,Beam=End|Visibility:Never
|Rest|Dur:16th|Visibility:Never
|Note|Dur:16th|Pos:4|Opts:Stem=Down,Lyric=Never,Beam=First|Visibility:Never
|Note|Dur:8th,Staccato|Pos:5|Opts:Stem=Down,Lyric=Never,Beam=End|Visibility:Never
|Bar
|Spacer|Width:100
|Spacer|Width:100
|Text|Text:"\]"|Font:User1|Pos:-1.5|Justify:Center
|Spacer|Width:100
|Note|Dur:8th,Staccato|Pos:-2|Opts:Stem=Up,Lyric=Never,Beam=First|Visibility:Never
|Note|Dur:8th,Staccato|Pos:-2|Opts:Stem=Up,Lyric=Never,Beam=End|Visibility:Never
|Note|Dur:8th,Staccato|Pos:5|Opts:Stem=Down,Lyric=Never,Beam=First|Visibility:Never
|Note|Dur:8th,Staccato|Pos:4|Opts:Stem=Down,Lyric=Never,Beam=End|Visibility:Never
|Note|Dur:8th,Staccato|Pos:5|Opts:Stem=Up,Lyric=Never,Beam=First|Visibility:Never
|Note|Dur:16th|Pos:1|Opts:Stem=Up,Lyric=Never,Beam|Visibility:Never
|Note|Dur:16th|Pos:b2|Opts:Stem=Up,Lyric=Never,Beam=End|Visibility:Never
|Rest|Dur:16th|Visibility:Never
|Note|Dur:16th|Pos:4|Opts:Stem=Down,Lyric=Never,Beam=First|Visibility:Never
|Note|Dur:8th,Staccato|Pos:5|Opts:Stem=Down,Lyric=Never,Beam=End|Visibility:Never
|Bar
|Spacer|Width:100
|Spacer|Width:100
|Text|Text:"4"|Font:StaffBold|Pos:7
|Text|Text:"\]"|Font:User1|Pos:-1.5|Justify:Center
|Spacer|Width:100
|Spacer|Width:100
|Note|Dur:8th,Staccato|Pos:-2|Opts:Stem=Up,Lyric=Never,Beam=First|Visibility:Never
|Note|Dur:8th,Staccato|Pos:-2|Opts:Stem=Up,Lyric=Never,Beam=End|Visibility:Never
|Note|Dur:8th,Staccato|Pos:5|Opts:Stem=Down,Lyric=Never,Beam=First|Visibility:Never
|Note|Dur:8th,Staccato|Pos:4|Opts:Stem=Down,Lyric=Never,Beam=End|Visibility:Never
|Note|Dur:8th,Staccato|Pos:5|Opts:Stem=Up,Lyric=Never,Beam=First|Visibility:Never
|Note|Dur:16th|Pos:1|Opts:Stem=Up,Lyric=Never,Beam|Visibility:Never
|Note|Dur:16th|Pos:b2|Opts:Stem=Up,Lyric=Never,Beam=End|Visibility:Never
|Rest|Dur:16th|Visibility:Never
|Note|Dur:16th|Pos:4|Opts:Stem=Down,Lyric=Never,Beam=First|Visibility:Never
|Note|Dur:8th,Staccato|Pos:5|Opts:Stem=Down,Lyric=Never,Beam=End|Visibility:Never
|Bar
|Spacer|Width:100
|Spacer|Width:100
|Text|Text:"\]"|Font:User1|Pos:-1.5|Justify:Center
|Spacer|Width:100
|Spacer|Width:100
|Note|Dur:8th,Staccato|Pos:-2|Opts:Stem=Up,Lyric=Never,Beam=First|Visibility:Never
|Note|Dur:8th,Staccato|Pos:-2|Opts:Stem=Up,Lyric=Never,Beam=End|Visibility:Never
|Note|Dur:8th,Staccato|Pos:5|Opts:Stem=Down,Lyric=Never,Beam=First|Visibility:Never
|Note|Dur:8th,Staccato|Pos:4|Opts:Stem=Down,Lyric=Never,Beam=End|Visibility:Never
|Note|Dur:8th,Staccato|Pos:5|Opts:Stem=Up,Lyric=Never,Beam=First|Visibility:Never
|Note|Dur:16th|Pos:1|Opts:Stem=Up,Lyric=Never,Beam|Visibility:Never
|Note|Dur:16th|Pos:b2|Opts:Stem=Up,Lyric=Never,Beam=End|Visibility:Never
|Rest|Dur:16th|Visibility:Never
|Note|Dur:16th|Pos:4|Opts:Stem=Down,Lyric=Never,Beam=First|Visibility:Never
|Note|Dur:8th,Staccato|Pos:5|Opts:Stem=Down,Lyric=Never,Beam=End|Visibility:Never
|Bar
|Spacer|Width:100
|Spacer|Width:100
|Text|Text:"\]"|Font:User1|Pos:-1.5|Justify:Center
|Spacer|Width:100
|Note|Dur:8th,Staccato|Pos:-2|Opts:Stem=Up,Lyric=Never,Beam=First|Visibility:Never
|Note|Dur:8th,Staccato|Pos:-2|Opts:Stem=Up,Lyric=Never,Beam=End|Visibility:Never
|Note|Dur:8th,Staccato|Pos:5|Opts:Stem=Down,Lyric=Never,Beam=First|Visibility:Never
|Note|Dur:8th,Staccato|Pos:4|Opts:Stem=Down,Lyric=Never,Beam=End|Visibility:Never
|Note|Dur:8th,Staccato|Pos:5|Opts:Stem=Up,Lyric=Never,Beam=First|Visibility:Never
|Note|Dur:16th|Pos:1|Opts:Stem=Up,Lyric=Never,Beam|Visibility:Never
|Note|Dur:16th|Pos:b2|Opts:Stem=Up,Lyric=Never,Beam=End|Visibility:Never
|Rest|Dur:16th|Visibility:Never
|Note|Dur:16th|Pos:4|Opts:Stem=Down,Lyric=Never,Beam=First|Visibility:Never
|Note|Dur:8th,Staccato|Pos:5|Opts:Stem=Down,Lyric=Never,Beam=End|Visibility:Never
|Bar
|Spacer|Width:100
|Spacer|Width:100
|Text|Text:"\]"|Font:User1|Pos:-1.5|Justify:Center
|Spacer|Width:100
|Spacer|Width:100
|Note|Dur:8th,Staccato|Pos:-2|Opts:Stem=Up,Lyric=Never,Beam=First|Visibility:Never
|Note|Dur:8th,Staccato|Pos:-2|Opts:Stem=Up,Lyric=Never,Beam=End|Visibility:Never
|Note|Dur:8th,Staccato|Pos:5|Opts:Stem=Down,Lyric=Never,Beam=First|Visibility:Never
|Note|Dur:8th,Staccato|Pos:4|Opts:Stem=Down,Lyric=Never,Beam=End|Visibility:Never
|Note|Dur:8th,Staccato|Pos:5|Opts:Stem=Up,Lyric=Never,Beam=First|Visibility:Never
|Note|Dur:16th|Pos:1|Opts:Stem=Up,Lyric=Never,Beam|Visibility:Never
|Note|Dur:16th|Pos:b2|Opts:Stem=Up,Lyric=Never,Beam=End|Visibility:Never
|Rest|Dur:16th|Visibility:Never
|Note|Dur:16th|Pos:4|Opts:Stem=Down,Lyric=Never,Beam=First|Visibility:Never
|Note|Dur:8th,Staccato|Pos:5|Opts:Stem=Down,Lyric=Never,Beam=End|Visibility:Never
|Bar
|Spacer|Width:100
|Spacer|Width:100
|Text|Text:"8"|Font:StaffBold|Pos:7
|Text|Text:"\]"|Font:User1|Pos:-1.5|Justify:Center
|Spacer|Width:100
|Spacer|Width:100
|Note|Dur:8th,Staccato|Pos:-2|Opts:Stem=Up,Lyric=Never,Beam=First|Visibility:Never
|Note|Dur:8th,Staccato|Pos:-2|Opts:Stem=Up,Lyric=Never,Beam=End|Visibility:Never
|Note|Dur:8th,Staccato|Pos:5|Opts:Stem=Down,Lyric=Never,Beam=First|Visibility:Never
|Note|Dur:8th,Staccato|Pos:4|Opts:Stem=Down,Lyric=Never,Beam=End|Visibility:Never
|Note|Dur:8th,Staccato|Pos:5|Opts:Stem=Up,Lyric=Never,Beam=First|Visibility:Never
|Note|Dur:16th|Pos:1|Opts:Stem=Up,Lyric=Never,Beam|Visibility:Never
|Note|Dur:16th|Pos:b2|Opts:Stem=Up,Lyric=Never,Beam=End|Visibility:Never
|Rest|Dur:16th|Visibility:Never
|Note|Dur:16th|Pos:4|Opts:Stem=Down,Lyric=Never,Beam=First|Visibility:Never
|Note|Dur:8th,Staccato|Pos:5|Opts:Stem=Down,Lyric=Never,Beam=End|Visibility:Never
|Bar
|Spacer|Width:100
|Spacer|Width:100
|Text|Text:"\]"|Font:User1|Pos:-1.5|Justify:Center
|Spacer|Width:100
|Spacer|Width:100
|Note|Dur:8th,Staccato|Pos:-2|Opts:Stem=Up,Lyric=Never,Beam=First|Visibility:Never
|Note|Dur:8th,Staccato|Pos:-2|Opts:Stem=Up,Lyric=Never,Beam=End|Visibility:Never
|Note|Dur:8th,Staccato|Pos:5|Opts:Stem=Down,Lyric=Never,Beam=First|Visibility:Never
|Note|Dur:8th,Staccato|Pos:4|Opts:Stem=Down,Lyric=Never,Beam=End|Visibility:Never
|Note|Dur:8th,Staccato|Pos:5|Opts:Stem=Up,Lyric=Never,Beam=First|Visibility:Never
|Note|Dur:16th|Pos:1|Opts:Stem=Up,Lyric=Never,Beam|Visibility:Never
|Note|Dur:16th|Pos:b2|Opts:Stem=Up,Lyric=Never,Beam=End|Visibility:Never
|Rest|Dur:16th|Visibility:Never
|Note|Dur:16th|Pos:4|Opts:Stem=Down,Lyric=Never,Beam=First|Visibility:Never
|Note|Dur:8th,Staccato|Pos:5|Opts:Stem=Down,Lyric=Never,Beam=End|Visibility:Never
|Bar
|Spacer|Width:100
|Spacer|Width:100
|Text|Text:"10"|Font:StaffBold|Pos:7
|Text|Text:"\]"|Font:User1|Pos:-1.5|Justify:Center
|Spacer|Width:100
|Spacer|Width:100
|Note|Dur:8th,Staccato|Pos:-2|Opts:Stem=Up,Lyric=Never,Beam=First|Visibility:Never
|Note|Dur:8th,Staccato|Pos:-2|Opts:Stem=Up,Lyric=Never,Beam=End|Visibility:Never
|Note|Dur:8th,Staccato|Pos:5|Opts:Stem=Down,Lyric=Never,Beam=First|Visibility:Never
|Note|Dur:8th,Staccato|Pos:4|Opts:Stem=Down,Lyric=Never,Beam=End|Visibility:Never
|Note|Dur:8th,Staccato|Pos:5|Opts:Stem=Up,Lyric=Never,Beam=First|Visibility:Never
|Note|Dur:16th|Pos:1|Opts:Stem=Up,Lyric=Never,Beam|Visibility:Never
|Note|Dur:16th|Pos:b2|Opts:Stem=Up,Lyric=Never,Beam=End|Visibility:Never
|Rest|Dur:16th|Visibility:Never
|Note|Dur:16th|Pos:4|Opts:Stem=Down,Lyric=Never,Beam=First|Visibility:Never
|Note|Dur:8th,Staccato|Pos:5|Opts:Stem=Down,Lyric=Never,Beam=End|Visibility:Never
|Bar
|Note|Dur:8th,Staccato|Pos:-2|Opts:Stem=Up,Lyric=Never,Beam=First
|Note|Dur:8th,Staccato|Pos:-2|Opts:Stem=Up,Lyric=Never,Beam=End
|Note|Dur:8th,Staccato|Pos:5|Opts:Stem=Down,Lyric=Never,Beam=First
|Note|Dur:8th,Staccato|Pos:4|Opts:Stem=Down,Lyric=Never,Beam=End
|Note|Dur:4th,Staccato|Pos:5
|Note|Dur:4th,Staccato|Pos:5
|Bar|Style:SectionClose|SysBreak:Y
!NoteWorthyComposerClip-End
31
User Tools / Re: Audit Bar Lines tool
Just a minor tweak in the code. If you run the script on a selected part of the staff, just before a bar line, the measure number may be off by 1. Lines containing contextOn are the only changes since the last version.

To see what this script sees, run it with Y on the prompt, then choose STDIN.
32
General Discussion / Re: Ridimensionamento Partitura
I wonder how useful multi-lingual prompts would be. A simple change would be possible where a script asks for Y or N. Instead of checking if a prompt is or isn't Y, it could check for prompt isn't or is N since "No" is the same in several languages. A prompt could ask for Yes, Oui, or Si without any changes to a script looking for a not No since all would work. More involved prompts might be beyond the scope of a translate web page that might not know about music idioms or how the language is used by native speakers.

For example, in mmr.js script looks for the literal "Undo", but the word "Yes" could easily be replaced.

Other thoughts?
34
General Discussion / Re: Ridimensionamento Partitura
Hi everyone.
I wrote a score completely about NWC
Now I have to go to print.
Do you know if there is a function that resizes the score?
In scores, especially the oldest ones, when an instrument does not play, it disappears from the score.
It then reappears later when it plays again.
If NWC has this function it would be a good thing to save paper and ink
Visit nwc-scriptorium.org/wp to download and install Multi Measure Rests (mmr.js) in the right column. It can handle collapsing staves for long rests automatically.
Ciao.
35
User Tools / Re: Audit Bar Lines tool
I think I can put this script to bed. The attachment in the top post is replaced, but needs this line after 104:
Code: [Select · Download]
               foundWhole = false; // Reset for next measure.
This is near the end of the loop that finds a bar line and gets ready for the next measure.
36
User Tools / Re: Audit Bar Lines tool
Good point! I think it can be corrected by adding the following after line 81:
Code: [Select · Download]
		if (durLen == 768 && lines[i].substr(0,5) == "|Rest" && lines[i-1].substr(0,4) == "|Bar" && lines[i+1].substr(0,4) == "|Bar") // Find only whole rest in bar?
durLen = targetMeasure; // Found | wh rest |

Am trying to implement multi-measure rests, but will have to tackle that next year.

** I replaced the script in the first post. Will check it out further after New Year's Day. MC & HNY **
39
User Tools / Re: Audit Bar Lines tool
This should fix that problem. sumNotes would be zero for an empty measure so I am checking it as well as Exclude from Bar Count before incrementing the bar number. Also postponed the zeroing of sumNotes for the next bar.

This replaces lines 92-94:
Code: [Select · Download]
		if (lines[i].indexOf("XBarCnt:Y") == -1 && sumNotes > 0)    // Change 3 since 1st replacement script 
barNum++;                                             // Change 3 since 1st replacement script
sumNotes=0;                                                 // Change 3 since 1st replacement script
40
User Tools / Re: Audit Bar Lines tool
Thank you for looking at it.
 I am changing line 86 to the following:
Code: [Select · Download]
		if (diff != 0 && sumNotes !=0) {    // Change 1 since 1st replacement script 
The variable sumNotes will be zero for an empty measure.

Also on line 43, I am changing the default value of num and denom to 4 each for a default 4/4 time signature.

When I ran the script with the above changes against each of your snippets, it did not find any errors.

On line 68, please change \n+ to \d+

To not count bars excluded from line count, these next three lines replace line 92:
Code: [Select · Download]
		sumNotes=0;                                 // Change 2 since 1st replacement script 
if (lines[i].indexOf("XBarCnt:Y") == -1)    // Change 2 since 1st replacement script
barNum++;                             // Change 2 since 1st replacement script
41
User Tools / Re: Audit Bar Lines tool
The comments in the tool say that it does not modify the staff, so I would think that changing color of the bar lines (or something like that) would be a significant design change.
Rick G pointed me in the right direction about a framework for JavaScript scripts. My scripts start near the bottom (line 103 in this script) with NWC giving the script the nwctxt version of the staff or selected part of it. In the calculate() function, the nwctxt is broken down into an array named lines which is usually modified in some way. The variables rc and errMsg are global so any function can read or modify them. If the Return Code is zero, lines will replace what was passed to the script while any other value else will pass the contents of errMsg to NWC where it will be displayed to the user.

I have had my share of projects where a seemingly trivial change turned into a major undertaking, but fortunately this wasn't one of them . . . . .yet.
42
General Discussion / Re: Audit Bar Lines
I replaced the script on my first post in User Tools. Please revisit my post 4 above to download an updated copy. This version has a prompt.

Revised 2024/01/22 Corrected problem w/measure number when selecting part of the staff.
43
User Tools / Re: Audit Bar Lines tool
I have replaced the attachment in the initial post. There is also a prompt--Please edit the end of the command line for this tool to end in "  <PROMPT:Summarize?:=|Y|N>" after you replace the original script.   It will follow "auditBar.js".
44
General Discussion / Re: Audit Bar Lines
On my installation the command line reads: "wscript Scripts\auditBar.js ". While installing (or Editing an install) it may help to browse and open the file, then insert "wscript " into the front of the command line.

My generic instructions in Scriptorium on the right side might also be helpful.

If I change the script to prompt for a list or a text comment when an error is found, the end of the command will need to be changed, but I will wait until I replace the script before giving the details.
45
General Discussion / Re: Audit Bar Lines
Can you post a link or instructions on how to install the tool? Is there an automated way, or do you manually copy the file to an nwc folder? Which one? You delete the .txt extension, but do you have to add a .php or .lua extension?
No, it ends in ".js". Lawrie's reply # 6 describes the installation very well.
46
User Tools / Re: Audit Bar Lines tool
There is an expression "I do my best proofreading right after I hit SEND".  I had a variable "foundError" maintained for that but forget to use it at the end. It also doesn't handle Common or Cut time yet. If it is in 9/8 time, should it report the difference in 8ths or dotted quarters?

It could report the result with a red text message that could be easily be deleted when that measure is corrected. This is in the new version.

Feedback welcome.

Put the following just before "return lines":
Code: [Select · Download]
  if (!foundError)
  errMsg="No errors found!";
48
User Tools / Audit Bar Lines tool
The Audit Bar Lines tool that NWC provides assumes the note lengths are correct and it will move the bar lines if necessary.
This tool assumes the bar lines are correct and will point out the measures that are short or long in beats defined by the most recent Time Signature.

After downloading this file, please remove the .txt from the end of the file name.

I'll submit it to Scriptorium in a few weeks after I can check feedback.

*** Attachment replaced 12/21/2023. ***
Latest changes: Does not count bar lines excluded from count or empty measures.
*** Attachment replaced 12/22/2023. ***
*** Attachment replaced 12/24/2023. ***
Multi measure rests, Whole rest by itself works for any time signature.
*** Attachment replaced 01/01/2024 ***
Better documentation--cleaned up potential bug.
*** Attachment replaced 01/22/2024 ***
Selecting part of staff just before a bar line could throw the measure count off.
*** Attachment replaced 01/30/2024 ***
Line 96, changing "whole note" to "whole rest"
*** Attachment replaced 03/31/2024 ***
49
General Discussion / Re: Development of Rubato User Tool
In spite of my problems with my algebra, coding errors, and trying to reuse old code, I finally got something with which to test.
Once unzipped, you can see the source if you open with a text editor (i.e., Notepad) or open with a browser and select "view source" (it's Cntl/U on Chrome).

To use this, open NWC at the same time as your browser. Select your rubato section and cut it to the clipboard (Cntl/X), paste it into the text area, and click "Submit". Select the textarea contents and copy it back to your NWC file. If you used the Alt/Tab shortcut to get to the webpage, your NWC cursor will be right where you left it.

The checkbox brings up my test data.

If you think you will need this tool, please test it. If there are any problems, I will need to have a copy of your input data as well as your notes on what it did or didn't do or how to improve it.  This version has a "seeded" random number generator so you may replicate previous tests.

I won't ask to put this on Scriptorium in either form until I can check it out further and get some feedback.

Enjoy!
50
General Discussion / Re: Audit Bar Lines
I have several tools with a function to determine the duration (in 768th notes) of anything with a Dur: attribute. Unless someone beats me to it, I'll give that function a shot. Right now, Rubato has me pulling my hair out.

You could create and copy a staff and then audit the new staff. Then look for the first place they don't match. Correct the problem then replace your new staff with the corrected staff. Repeat until no changes.