Skip to main content


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

Topics - Opagust

This tool convert musicxml files to nwctxt files

- The input file must be a score-partwise musicxml file.
- The output file is a nwctxt file.
- Different voices are placed on different (layered) staves.
- For some features that aren't supported in NWC itself, a 'user object' is used. You may see a popup that alerts you to download
a missing plugin.

- Known issues:
  - Features that aren't supported in NWC and for which no user object exists or for which I can't determine the correct parameters,
  will give erroneous results, e.g. tuples other than triples, cross-staff beams and slurs.
  - Because of the layering, some notes, their accidentals or dots may overlap with each other. This can be fixed by setting
  the properties 'Extra Accidental Spacing', 'Extra Note Spacing' and/or 'Extra Dot Spacing'.
  - If you encounter other issues, please let me know.

This is a stand alone Windows program, not a classic nwc user tool, so you can't invoke it from within NWC.
You can download a Windows installer program in

- 15/09/2021: 1.0: Original version
- 02/11/2021: 1.0.1: bug fixes

    Download and run the installation file.
    During installation, the target folder is shown and can be modified.
    After installation, a shortcut 'MXML2NWC' will be created on your desktop.
General Discussion / Chord/measure length problem
When you compare the extracts of the original pdf_score and the resulting nwc-file (see attachments), you notice that the measure in the second staff of the nwc-file is too long.

What's going wrong?

Code: [Select · Download]
User Tools / Search & Modify
A new tool 'Search & Modify' is added to the multitool PYNWC: (version 1.4)

With this tool you can search a score for all objects of a given type that have some given properties.
Next you can:
    - Inspect where the occur (staff, measure number), with their nwctxt presentation.
    - Choose an action: 'Modify' or 'Delete.
    - For the action 'Modify':
        - Indicate which property(ies) you want to modify.
        - Fill in the new value(s) in a popup, that resembles the 'Notation Properties' window in NWC for the given object type.
    - At every moment you can leave to undo your choices or modifications.
    - On the main window, every input field is a combo box from you can select the appropriate value.
    Only those values that are of interest are presented.
    For instance: If you specified 'Clef' as object type and all clefs have the same value for 'Octave Shift',
    that property is not present in the 'condition' lines.
Detailed description:
    The main window consists of following parts, from top to bottom:
        - The frame 'Make your choices' to specify:
            - Where to search (selection, active staff, all staves or visible staves).
            - The object type to search for.
        - The 'Conditions' frame where you can set up to 6 search criteria.
          If you specify more than 1 condition for the same property, then all the objects are selected that satisfy any of these criteria.
          Criteria for different properties must be satisfied separately.
          At the bottom of the conditions frame you can see a verbose description of your selection criteria.
          It's updated after every completed condition line.
        - A status line, that indicates:
            - The object type to search for.
            - The number of objects found (dynamically updated).
            - A button 'Show'.
                When clicked a popup window will show the location and nwctxt presentation of the objects that satisfy the criteria.
        - The 'Action' line, with choices 'Modify' or 'Delete'
        - The 'Modifications' frame, where (if your action = 'Modify') you have to specify at least 1 and at most 4 properties.
            Only those properties can be specified that are present in the 'Notation Properties' window for the object type.
            e.g.: for a note you can't change the position, duration, accidental, staccato,....
        - Three buttons:
            - The action button. The caption will indicate the action you chose.
                If the action is 'Modify', a popup is presented that resembles the 'Notation Properties' window of NWC,
                in which the fields contain the values of the first object found.
                Only the fields for the properties you selected in the modification frame will be enabled.
                After you entered your new values, these will be set in each found object.
                All the other properties of each object remain unchanged.
            - The 'Reset' button. When clicked, every input is cleared so you can restart your input.
            - Finally a 'Cancel' button to leave without any action taken.

General Discussion / Where are the colors from Tools/Options/Color Tab stored?
Via 'Tools/Options/Color Tab' you can change the colors. But I wonder: where are the stored?
I have written some tools where one can set the color of an object or staff, but I can't show the exact color next to the names ('Highlight 1', ...) in the dialog box.
If I knew where I could find the color values from the Tool/Options, I could present a more user friendly dialog box.
User Tools / Audit score
A new tool 'Audit score' is added to the multitool PYNWC: (version 1.3)

Before running this tool, be sure to select in the tool parameter window the audit you want to be performed.
Also specify the process mode: all staves, visible staves, active staff or the selection.
Depending on the audit you choose, additional options will be shown. See below for details per audit.

- Audit accidentals:
    Via the tool parameters you can select one of this options for handling natural accidentals:

        - Leave naturals unchanged
        - Make courtesy accidentals
        - Remove accidentals

    This audit acts on any unnecessary accidentals assigned to notes.
    It compares a note with an accidental with the 'running' key signature, which is determined by the previous key
    signature + the preceding accidentals in the measure.
    If the accidental matches the running signature, and it's not a courtesy accidental, it will be removed if it's
    not a natural.
    For naturals the action taken depends on the option in the tool parameters.

- Audit bar lines:
    Audits the bar line alignment.
    In the tool parameters you can indicate whether you want to admit a short first measure (anacrusis).
    If the audit finds a standard bar line that is not aligned properly, it is removed and a new bar line is added in
    the proper place. As a result, notes and chords can be split and tied.

    * Measures with a special ending that is not at the beginning of the measure, are not audited.

- Audit enharmonic spelling:
    Replaces notes with their enharmonic equivalents.
    There are several options you can choose from (see below), via the tool parameters.
    If your process mode = 'Process selection', and an enharmonic change is to be done on a note, the following notes
    in the same measure or which are tied to the changed note, are investigated to determine if they need to be changed
    also. If affirmative, they will be added to the selection.

    Available options:
     - 'No sharps': All sharps are replaced.
     - 'No flats': All flats are replaced.
     - 'Reverse sharps/flats'.
     - 'No doubles': All double sharps and double flats are replaced.
     - 'Preferably naturals': If a enharmonic equivalent without accidental is possible, it's used.
     - 'No forced naturals':
        If a natural accidental is caused by an preceding note with an accidental, this preceding note is replaced by
        its enharmonic equivalent.
     - 'Common preferred accidentals': A# -> Bb, Db -> C#, D# -> Eb, Gb -> F#, Ab -> G#.
     - 'Sharps up, flats down':
        If the next note is a tone or a semitone higher, a sharp is used; if it is a tone or a semitone lower, a flat is
        used (not applicable to chords and restchords).
     - 'Custom changes': You can choose one or more items from a list of all possible enharmonic changes.

- Audit note length and beaming:
    Splits notes and group beamings, according to the time signatures.
    Upon start, a window is shown with the default groupings for note length and beaming, for each found time signature.
    You can accept or modify them.

    The specifications mainly come from @hmmueler

    - Note, chord and rest lengths are distributed in each measure according to standard rules(see e.g. Elaine Gould, Behind Bars, pp. 160-164, 166-169, 171).

        * Rest chords, chords with different durations, triplets, or notes with a 'Staccato', 'Staccatissimo', 'Accent' or 'Marcato' articulations will not be split.

    - Beams connect notes and chords according to standard rules (see e.g. Elaine Gould, Behind Bars, pp. 153-155).

    - The main and secondary beat patterns are derived from the currently active time signature.

    - It 's possible to specify alternative beat patterns for a time signature, both for the note lengths and beams.

    - A long note that starts at a beat and spans over several beats, will not be split.

    - If the first measure of the score or selection is a short measure, it is treated as the right part of the full beat pattern.

    - When a special ending is found that's not at the beginning of the measure, the remaining of the measure is not audited.

    - A measure that is longer than the current time signature indicates causes an error message.

 - Audit note stems:
    Removes unnecessary stem up or down attributes and resets stem directions for note beams and triplets.

User Tools / Construct a medley
A new tool 'Construct a medley' is added to the multitool PYNWC (version 1.1)

Combine several song files into 1 medley file.

    To create a medley file, you have to start this tool from a blank score:
    Choose 'File/New' and select <blank score> from the 'Song Templates/General' tab and save it before you go to 'Tools/User Tools'.
    This file will be the destination file, in which you add the songs that will make up the medley.
    You can create the medley file in several steps, so you can also start this tool from an earlier created medley file.
    (The tool checks the presence of 'song lines'(1) in the Comments section of the Song Info to decide whether it's a valid medley file.)

    Via the tool parameters you can specify:
     - Include song titles at the start of each song (top staff).
     - Position, scale and font for the Song Title text objects.
     - Type of separation bar between the songs (except when the previous song ends with a Repeat Close): Single, Double or Section Close.
     - Page break, System Break or no break between the songs.

    The tool consists of several stages:

     - A popup window 'Select Songs'.
        - If you press 'Add a file', a Windows Explorer window will be opened.
        - Important: Only files in NWC Text format can be processed. So maybe you'll have to open and 'save as' one or more of your songs first.
        - A selected song can be removed from the list by clicking on it.
        - In this stage you can also set or change the Medley Title.
        - 'Cancel' will exit the tool without any changes.
        - If you have chosen your files, press 'Continue >'.

     - A popup window 'Arrange Staves'. Via this window you can:
        - Reorder the staves
        - Change song titles(2)
        - Change staff names and labels
        - Join staves (by assigning the same name and label)
        - Press '?' to see more detailed help info
        - Press '< Back' to return to the 'Adding Songs' window.

     - Review of the staff properties:
        - For each staff that appears in several songs, the properties from the different songs are compared.
          For each mismatch(except for 'visibility' and 'muted'), a popup window is presented where you can choose which values to retain(2).
          If there are to many mismatches, you may want to  press 'Cancel', in which the tool is ended without any change.
          When there's a mismatch for 'visibility', the part of the song with property invisible will be collapsed.
          When there's a mismatch for 'muted', the appropriate notes will be muted.

     - Construction of the medley, according the choices in the Tool Parameters:
        - Adding 'song lines(1)' to the Comments Section of the Song Info.
        - Adding song titles at the start of each song.
        - Creating delimiter objects: separation bar, new system or new page.
        - Inserting rests measures in staves that aren't part of every song, surrounded by boundary collapse and end collapse objects (3).

        (1) A 'song line' is of the form "Song:{song title}#{starting measure}-{ending measure}"
        (2) Changing the song titles and/or staff properties has only effect in the destination file. The original song files will not be modified.
        (3) The inserted boundary changes don't always give the expected result between the songs, so may be you'll have to delete or replace some of them.

General Discussion / Creating a .bat file to convert all files of a folder to NWCTXT.
I'd like to convert all my NWC files to NWCTXT.

For 1 file, I know I can do this with a command like:
"C:\Program Files (x86)\Noteworthy Software\NoteWorthy Composer 2\nwc-conv  "nwc_folder\song.nwc" NWCTXT > "nwctxt_folder\song.nwctxt".

So what I need is a .bat file where I can specify the input and output folder and create a loop to convert every file with .nwc extension from the input folder to a .nwctxt file in the output folder.

But my knowledge of the syntax of .bat files is hidden far away in my memory.

So any help would be appreciated.
User Tools / Multitool PYNWC
In NWC you'll have to install PYNWC as 1 tool, but when invoking it, it's like a second layer: the PYNWC environment, where you have access to a number of tools that I developed using the Python programming language. The reason is that Python has several possibilities that are missing in the Lua language, of which on of the most important is the use of a flexible graphical user interface.

Within this environment you can:
 - see information about the score
 - see help information about the PYNWC environment
 - select a tool
 - see help information about the selected tool
 - see and change parameters for the selected tool
 - run the selected tool
 - see the results after running a tool (before saving)
 - save the changes to the score (if any) in the input file
 - depending on the tool:
   - save the changed score as another NWC file
   - save a generated report into a txt file
   - save a generated worksheet into a xlsx file

You can download the Windows installation file and a link to the full documentation (including installation instructions) in:
User Tools / File Organization
The purpose of this tool is to provide a sort of 'version management'.
A possible scenario:
- When you think a draft version of your score is ready to be 'promoted' or secured,
you can register the date last modified in the File Info comments section, create a
read-only copy in a dedicated folder, with one or more suffixes added to the file
name to see at a glance the date last modified, the creation date of the copy and/or
a 'version text'.
- Then you can safely continue working with the original draft version.
- If you want to work again with the secured version, you could unlock it, or leave
it locked and create a new, writable copy in your 'working' folder. 

The tool window:
- The date modified, shown at the top of the window, is extracted from the Windows
file system.
- The 'File Info Comments' frame shows the comment section of the 'File Info' from
the input file. 
- The actions that you select in the 'Actions' frame are not accomplished until you
click one of the buttons 'Save changes' or 'Save copy'.

If you save a copy of the input file, you can add one or more suffixes:
- #m, followed by the date modified
- #c, followed by the creation date of the copy
- #v, followed by a self chosen text
(Remark: Any suffixes of the input file are not retained in the name of the copy.)
Via a popup window you can choose the folder for the copy. (Remark: If the folder
doesn't exist, you'll be ask if it should be created.)

Since the script is written in the Python programming language, it can't be run directly in the NWC Tools environment, so I have build an executable file from it (file_organization.exe) and a Windows installation file.
I can't attach it here, bt you can find the zipped installation file in my website:
After you have downloaded that file, you can unpack and run it. It will install the tool as a Windows application. It will suggest a folder, but you can change that. Copy that folder name.
The next step is the installation in NWC:
- Open the User Tools window (via Tools/User Tool...)
- Click 'New...' and fill in the dialog box:
  - Choose e group and a name
  - In the command line, paste the folder name where the tool is installed, followed by '/file_organization.exe' (without the quotes)
   - Choose 'File Text' as Input Type
   - In the Options section: leave 'Compress Input' unchecked and chek the other ones.
- Click 'OK'
User Tools / Timeout problem with Python tool
I'm experimenting with a user tool written in Python, since I like Python more then Lua. In this tool I use the module PySimpleGui to create a popup  window to accept some user input (see attachment 'Knipsel1'). The problem is: there seems to a timeout after about 10 seconds. If nothing is entered within that time, the tool aborts (see attachment 'Knipsel2').
I use the module PySimpleGui in other Python scripts and never had that problem. So I think the timeout is generated by the user tool environment of NWC.
Is there anyone who has an idea how to solve this?
User Tools / AddRestMeasures
The reason I wrote this tool is this topic.
This tool add 'rest measures' to every visible staff that has less measures then the active staff. Each 'rest measure' contains a copy of the corresponding measure in the active staff, replacing notes, chords and restchords with rests of the same duration.
Edit 03/05/2020: hidden staves remain unchanged
Installation: download the attached script, start NWC, open any file and drag anddrop the downloaded script onto the NWC window.
User Tools / ColoringBeamsSlursTriplets.og
Quote from @fathafluff in topic Note Color Question

When I select the notes and change the color, the note heads, stems and accents change to the new color, but the beams, slurs and leger lines do not.

Thanks to the replies of @Rick G. and @hmmueller, we know there are workarounds: markers for slurs and triplets, user object beam.hmm for the beams (with the appropriate color set).

With this tool, the necessary markers and beam objects are cretaed. It contains an algorithm to determine the position and final stemlength of the beam object and the position af the triplet marker, but maybe you need to change them for an optimal result.

Installation: After downloading this tool, start NWC, open any file and drag and drop the tool onto the NWC window and confirm.

Use: Select a group of notes ( only the first note needs to be colored), and press ALt-F8 to run the tool.
User Tools / ExportImportMeasures.og
Version 2.0 is now added.
Apart from fixing some bugs, following modifications are added:
* Extending incomplete staves, not only before, but also after the import.
* Warning at the export stage for possible exceeding the maximum length for import.
* The medley title in the commnents section should be in the last line. This is now added in the help text.

* With this tool you can copy all or selected measures (of all staves), including the lyrics, and pasting them in another file. A possible use is to reassemble a medley from its separate songs.

* In order to do this, you have to run the tool from a source file to 'export' a selection or all measures.
You'll be shown an output window, which you have to copy into your clipboard.

* Then you have to rerun the tool from your 'destination file' to import (append or insert after a specified measure) the exported items . An input window will be presented where you have to paste the content of your clipboard.

* The input screen for the import seems to be limited. The tool will check if the input contains the trailer line and ends with an error message if not. In that case, use smaller selections for exporting.

* In the selection box for last measure to export, a default value of 1024 is prefilled. Leave that unchanged if you want to specify the last measure of your file.

* Linking the import staves to the corresponding staves in the destination file is done by comparing the staff labels.
If no matching is found, you'll be presented two options: specify the staff to link with, or add a new staff.
If you have specified a linking staff, you'll be asked wich label has to be withheld.

* A text marker with the song title will be added in the first imported measure of the first staff. 

*It's recommended that, before importing, you add the medley title as a line in the comments section of the Song Info window. This line should start with "MedleyTitle:", without a space.
You can start with a copy of the first song as destination file. At the fist import (of the second song), the song title of the first song will be added as a text marker in the first measure, and the medley title from the comments will be used as new song title.

* The following properties of a staff will be compared with those in its corresponding imported staff: visibility, muted, layered, ending bar, volume, stereopan, channel, play back device, instrument, default dynamic velocities and trasposition.
Difference will be reported and you have the choice to proceed or cancel. If you proceed, the propertied of the destination file will be withheld.
* Before appending or inserting the imported staves, incomplete staves in the destination file will be extended with measures containins rests, up to the insertion measure.

* If a stave contains few lyric lines than the corresponding imported staff, the number of lyric lines of the destination file will be augmented and the lower boundary increased accordingly.
* Incomplete lyric lines in the destination files will be filled with underscores, separated with blanks.
Object Plugins / Rehearsal.og
Five years ago I wrote the usertool 'MakeRehearsalFile, which had several upates until 2 years ago.
One of these updates made it possible to add arguments to the command line to set the value or default for one or more parameters.

Since it's now possible (for NWC version 2.75a Beta 2 or later) to integrate a user tool into a user object, I decided to write a whole new version. Apart from foreground and background voices, it also supports 'center voices', 'velocity instruments' and volume instruments'.

With this plugin you can transform a (vocal) score into a rehearsal score, by specifying different channel volume, stereopan and dynamic volumes and velocities for each staff, according to its 'Staff Type'. You can also specify a different color for a 'Foreground voice'.

To do that you have to create one rehearsal object subtype 'Parameters' (anywhere in the score), and a subtype 'Staff Type' in each staff you want to change.
Hint: create rehearsal objects in your template file.

Staff Types are: 'Backgroud voice', 'Center voice', 'Foreground voice', 'Velocity instrument' and 'Volume Instrument'.

Parameters are: Foreground color, Channel Volume and Stereopan for each staff type and dynamic velocities for each dynamic (ppp ... fff). They all have predefined default settings, which you can change or leave unchanged.

After creation of your objects, they can be processed by the integrated 'Rehearsal.og' user tool in the .Plugins group (which you can invoke via 'Tools/User Tool...' or ALT-F8).

Velocities and Volumes of the dynamics are calculated as follows (for more information: see document 'Dynamics.pdf' in
- for a voice staff or volume instrument staff:
  ° The Velocity of each dynamic is set equal to the highest Staff Velocity ('fff').
  ° The Volume is set using Tina Billet's formula :
      Volume  = Velocity * Staff Volume) / highest Staff Velocity.
- for a velocity staff: the custom velocity and volume settings are set to nil, which means that they get the dynamic velocity and channel volume from the parameters (which are stored in the staff properties).

7dec2020: Update to version 1.1:
New in version 1.1:
  - test on NWC version: it has to be > 2.75
  - correction of a bug: dynamic velocities from the parameters were not copied into the staff instruments.
General Discussion / Installing on new computer
I'm planning to replace my good old laptop by a two-in-one, without CD drive.
So my question is: how should I re-install NWC, if I can't read my original installation CD?
User Tools / Copy and past measures of mutiple staves
With this tool you can copy and paste measures of multiple staves, including the lyrics.

Via the dialog you can specify
- the staves to process
- copy and past or cut
- the first measure to copy or cut
- the last measure to copy or cut
- the measure after which you want to paste.

Multimeasure rests are split, if necessary.

Attention: beware of ties and slurs that could be cut at the start or the end of the measures to copy.

Remarks and bug reports are welcome.

- download the file into your tool folder;
- open any nwc file;
- drag and drop the downloaded file to your nwc window.

Edit 4/07/2019: added an option to rather cut than copy
User Tools / Audit ties
I wrote this tool in response to this topic: Persistent (stuck) notes

It inspects all tied notes in all staves and reports the folllowing situations:
1. The destination note of a tie is muted and the source note is not, or vice versa.
2. A tie has no destination.
3. There are 1 or more notes between cource and destination note.

The first and second situation cause a hanging sound on playback and should be corrected, the 3th is just a notification.

Installation:Download the attached file and drag and drop it upon any open NWC file
Any suggestions or bug reports are welcome!

11/07/2017: new version to take accidentals into account
User Tools / Number notation tool
This tool inserts a 'number notation staff' above the active staff. The inserted staff doesn't have ledger lines and has the notes made invisible.

* Each note is then represented with a number from 1 to 7 (a rest = 0). Notes with accidentals are denoted with a '/' (sharp) or '\' (flat) strikethrough. A dot above or under the number means an octave higher or lower.

* The plain number represents a quarter note. Each dash above the number halves the note length: one dash represents an eighth note, two represent a sixteenth note, and so on (analogous to the number of flags and beaming). Dots after a note lengthen it, each dot by the length of a quarter note (these dots are also used for slured notes). 

* If a key signature is present, you have to choose between two base methods to assign numbers to the notes:
  1. '1=C', that means 2=D, 3=E, ... . In this method, every accidental according to the key signature is denoted by a strikethrough number.
  2. 'According to Key Signature'. In this method the base number is chosen thru a transposition. The key signature is indicated by '1=x' for a major signature, '6=x' for a minor one. The transposition is determined in a way that only the explicit accidentals need a strikethrough number.
  Remark: In both methods the distance between 3 and 4, resp. 7 and 1 is a semitone.
* You also have the option to make the active staff invisible. In that case, the lyrics are copied to the created number notation staff. If you choose to leave the active staff visible, the lyrics are moved above the staff (unless they are placed already there).

*Two special typefaces are needed:
° for dots and dashes, a 'Symbol' typeface of size 16
° for the strikethrough, the same typeface as for the numbers (i.e. StaffLyric), but with a larger size (+3)
Therefor,  unless they are  already present, the tool will set such fonts in 2 unused 'User Fonts'.  If no free user font can be found, an error message will be displayed.

Remark: Chords are not supported.

02/05/2017: Modification: removing of previously created number notation staff.
08/05/2017: I fixed a bug in my latest version: when recreating a number notation staff, the old one was removed (OK) but the new created one was for the staff following the active staff (not OK).
User Tools / Move Dynamics
User tool to move dynamics.

Via the dialog, you can specify
* Part of the score to be processed :
    - your selected items
    - the active staff
    - the visible staves
    - all staves
  * How to move the dynamics :
    - place at a given position
    - move up (positive value) or down (negative value)
    - place relative to highest note position (negative, zero or positive value)
    - place relative to lowest note position (negative, zero or positive value)
    - move to the position of the first dynamic
  * The value to use for the movement (accept if you chose the last movement option)

REMARK: moving dynamics will also move the crescendo and diminuendo hairpins.
Object Plugins / GlobModParms.og
The User Object 'GlobModParms.og' is a container for parameters to use in the User Tool 'GlobMod.og'
This script is only used for drawing the user object. You shouldn't create one via 'Insert/User Object...'.
The description text can be moved up or down with the + and - key.

Creation is done by the user tool 'GlobMod.og': after specifying the parameters for a global modification, you have the possibility to store them in a user object.
The same user tool can then be used to process the user object, avoiding the need to enter again the parameters.

User Tools / Dialog based Global Modification Tool: GlobalMod.og
This tool is inspired by the 'Global Modification (adp) tool from the User Tool Starter Kit. The purpose is identical: search for certain objects with certain properties within a staff or a selection and do some 'global' modifications (are remove them).
But here you don't need to know how to construct a global modification expression. It's completely dialog driven.
You'll be asked for a type and then you can specify 0 or more conditions and the desired action(s): delete or do 1 or more modifications.
No knowlegde is required of how an object or property is represented within NWC. Just select what you want from the selection lists.

- no modification possible on individual notes in chords and restchords;
- multi-point controller and instrument change are not supported.

Installation:Download the attached file and drag and drop it upon any open NWC file
Any suggestions or bug reports are welcome!

21/10/2016: Bug fix (An error occured when processing an object with empty conditions).


07/07/2016: replaced by new version (1.1), using nwc.txt where possible, as suggested by NoteWorhy Online.

12/07/2016: Replaced by new version(1.2): A new functionality has been added: save the parameters and reuse them on another staff or file.

After specifying your parameters, you have the opporunity to save and reuse them.
To do so I created a new User Object 'GlobModParms.og', that you can download here:
If you choose to save your parameters, such an object is inserted by the User Tool in front of your clip input, with a description text you specify. You can then copy it and paste it elsewhere.
If the tool is run with on or more User Objects 'GlobMod.Parms' in the clip input, you'll have the choise for each of them: process that User Object or not. If none is to be processed, you'll have to specify new parameters.

01/03/2017: Version 1.2.2 (see reply #8 for more details)
26/03/2017: Version 1.2.3 (see reply #16 for more details)
07/09/2017: Version 1.2.4 (see reply #17 for more details)
General Discussion / Mind the accidentals when deduplicating multivoice staffs.
The lower staff of the attachment is to be sung by two voice groups.

But I like to have seperate staffs,  which makes it easier to see the notes I have to sing, and also for playing 'my' staff only when studying.
So I made two seperate staffs in my NWC file of this song. In the upper staff I've put in this measure:  a half b flat, a quarter  rest and and 2 eighth d's, in the lower staff: a half f,  a quarter  rest and and 2 eighth b's.

And then, to prepare myself for the rehearsal of our choir, I played the lower staff several times with my earphone plugged in.
But when singing it with the choir, the director noticed that there was someone of the basses that didn't sing the b's flat correctly. Then I realized that my NWC file was not correct: I should have put 2 b's flat in stead of two natural b's, because in the original score, there were preceded by a b flat in the same measure!

Conclusion: when deduplicating a multivoice staff: mind the accidentals!
User Tools / TransposeStaffs.og
This tool transposes the instruments (*) of all staffs up or down by the given number of semitones.
Exception: A staff with Channel = 10 will not be transposed.

(*) This involves:
 - adjusting the Staff Property Instrument Transposition value;
 - adjusting the transposition values of any instrument changes;
 - adjusting the StaffTranspose parameter of any objects.

See also :
Transpose a whole score
User Tools / ScoreAnalysis.og
This tool is inspired by the NWC menu command 'Tools/Score Review...', but gives a little bit more info.
It creates an analysis report, which is divided in several groups. Each group contains several group items.
It's shown either with the staffs in colums (Orientation 'Landscape') or with the group items in colums ('Portrait').

The default settings for the orientation, groups and group items are:

These settings can be modified via parameters in the command line and/or the dialog option 'Settings'.
If you do so, the modified settings are included in the report, so you can copy and paste them as parameters in the command line for future use.
A parameter mustn't contain spaces, and the parameters must be seperated by one or more spaces.
If you provide a parameter 'SkipHelp', the help window isn't shown.

Hint: since the output window is limited, you may want to copy and past it in a word processor or text editor.

I attached also 2 output reports, the first with teh default settings, the 2nd with modified settings.

If you find any bugs are have some suggestions for improvement, please let me know.
User Tools / Lua as user tool script
At the moment, I'm learning the Lua script language. I want to experiment with writing some simple user tools, but I don't know how to access stdin, stdout and stderr.
User Tools / Layering voices
In many song sheets for choirs, each group of two voices is on 1 staff. In NWC, you can do this by entering chords, or by layering each group of two staffs.But both methods are not ideal:
– Entering chords is not very easy + you don’t always have control over the stems of the individual notes of a chord, which is necessary to differentiate between the two voices.
– When layering, you not only have to set the stems. In order not to have a messy result after layering, you also have to set the properties ‘Use stem for articulation’, ‘Slur direction’ and ‘Tie direction’.
This can easily be done by selecting a whole staff. But that’s not always enough: you have to check the whole staff for situations where you have to set the properties ‘Extra note spacing’ and/or ‘Extra accidental spacing':
– when the distance between the note on the top staff and the note on the bottom equals 1,
– when you have notes with accidentals,
– when the top note is lower then the bottom note,
– when you have chords.
This tool takes care of all this (with the active staff as top staff and the next as bottom staff).

In addition:
– The label and the abbreviated label of the top staff is modified by concatenating with those of the bottom staff, since the former are used when printing the layered staffs. (When the labels are equal, there will be no concatenation.)
– If both staffs have lyrics, the property ‘Placement’ will be set to ‘Top’, resp. ‘Bottom’.

By choosing the action ‘Unlayer’, you can undo all the actions described above.

Installation instructions:
- Download and save the file in YourScriptsFolder and change the extention' txt' to 'js'.
- Open a NoteWorthy File
- Choose ‘Tools’, ‘User Tool…’ or enter Alt-F8
- Click ‘New…’
- Enter the name of the tool and choose a group or enter the name of a new group
Command Line: Wscript  C:\Users\Gust\MijnScripts\LayerVoices.js <PROMPT:Action:=|Layer|Unlayer|Help”
Input Type:  File Text
Under ‘Options: Check ‘Returns File text’

28/12/2017: New version attached, written in lua. See next post for some details.
14/03/2017: Bug corrected in lua script. See reply #2
User Tools / MetroNomeStaff
This tool creates a new staff 'Metronome' with metronome ticks.

It's inserted above the active staff, has zero Staff Lines, Channel 10, (hidden) Percussion Clef and 'Woodblock' as Staff Instrument.
The other properties are inherited from the active staff.
The notes have 'x' noteheads and zero stemlength.

You can download the tool from the attached file or my website:
Don't forget to change the extension to '.js'.

To Install in NoteWorthy:
- Open a NoteWorthy File
- Choose ‘Tools’, ‘User Tool…’ or enter Alt-F8
- Click ‘New…’
-  Enter the name of the tool and choose a group or enter the name of a new group

   Command Line: "Wscript YourScriptsFolder\MetronomeStaff.js <PROMPT:Action=|Create_MetronomeStaff|Help>"
   Input Type: File Text
   Under 'Options: Check 'Returns File text'
User Tools / OGNoteNames
With this tool you can insert note names into your song file.

You can download the tool from the attached file or my website:
Don't forget to change the extension to '.js'.

To Install in NoteWorthy:
- Open a NoteWorthy File
- Choose ‘Tools’, ‘User Tool…’ or enter Alt-F8
- Click ‘New…’
-  Enter the name of the tool and choose a group or enter the name of a new group
- Command Line: “Wscript YourScriptsFolder\OGNoteNames.js <PROMPT:Act upon:=|All_Staffs|Visible_Staffs|Active_Staff|Help> <PROMPT:NoteNames:=|A_B_C_...|do_re_mi...> <PROMPT:Insert as:=|Lyrics|Text|>
-  Input Type: File Text
- Under ‘Options: Check ‘Returns File text’
User Tools / OGNoteRange
This tool inserts a chord of muted grace notes at the cursor position.
This ‘range chord’ contains the highest and lowest note found in the selection or, if nothing is selected, in the part of the active staff after the cursor position.
Accidentals and Key Signatures are taken into account.

You can download the tool from the attached file or my website:
Don't forget to change the extension to '.js'.

To Install in NoteWorthy:
- Open a NoteWorthy File
- Choose ‘Tools’, ‘User Tool…’ or enter Alt-F8
- Click ‘New…’
-  Enter the name of the tool and choose a group or enter the name of a new group
- Command Line: “Wscript YourScriptsFolder\OGNoteRanges.js <PROMPT:Option:=|Create_Range_Chord|Help>”
-  Input Type: File Text
- Under ‘Options: Uncheck ‘Returns File text’
User Tools / Courtesy Accidentals
Update: Don't use the links below, use instead and click on the name of the tool to download (changing the extension into '.js').

With this tool you can create courtesy accidentals according to the Key Signature. It acts on a selection, if present, or on the whole active staff.

The courtesy accidentals are inserted as text items,
 - with the font StaffSymbols(normal size) or StaffCueSymbols(small size);
 -  with or without parentheses;
 - repeated or not if the same note occurs more than once within a measure.

If you choose 'Undo', all 'texted' accidentals are removed, regardless of the choices on size, parentheses or repeats.

To download the tool from the link above :
- Select and copy all the text within the frame
- Open a text editor like Wordpad or a Java Script Editor and past the copied text
- Click on the name of the tool
- Save as ’CourtesyAccidentals.js' in YourScriptFolder

To Install in NoteWorthy:
- Open a NoteWorthy File
- Choose ‘Tools’, ‘User Tool…’ or enter Alt-F8
- Click ‘New…’
-  Enter the name of the tool and choose a group or enter the name of a new group
-  Command Line: "Wscript YourScriptsFolder\CourtesyAccidentals.js <PROMPT:Action:=|Create_CourtesyAccidentals|Undo|Help> <PROMPT:Parenthesize?=|Yes|No> <PROMPT:Repeat in same measure?=|Yes|No> <PROMPT:Size:=|Normal|Small>"
-  Input Type: Clip Text
-  Under 'Options: Uncheck 'Returns File Text'

P.S.I also modified the tool to also move the courtesy accidentals, inserted by CourtesyAccidentals.js.
User Tools / Make Rehearsal File
This tool is intended to make seperate rehearsal scores for the different voices of polyphonic songs.

Before running this tool, make a group "Piano" for the instrumental staffs.

When running the tool, you have to to set two volumes, for 'Foreground' and 'Background'.

The result will be:

- The Staff Velocities(DynVel) from the first visible staff will be copied to the next staffs.

- For the staffs in the "Piano" group:
  - Staff Volume = BackGround Volume;
  - Default Dynamics (with varying Velocities and constant Volume);
  - StereoPan = 64;
  - StaffColor = 'Default';

- For the active staff:
  - Staff Volume = Foreground Volume;
  - Dynamics with constant (highest)Velocity, and Volumes calculated using Foreground Volume and the Staff Velocities ;
  - StereoPan  = 0;
  - StaffColor = 'Highlight 2';

- For the other staffs:
  - Staff Volume = Background Volume;
  - Dynamics with constant (highest) Velocity, and Volumes calculated using Background Volume and the Staff Velocities ;
  - StereoPan  = 127;
  - StaffColor = 'Default' (unless the StaffName = "All" >> 'Highlight 2');

There are 3 execution modes : 'Modify', 'Show' and 'Help'. 'Modify' is the normal mode, 'Show' shows the generated output in stdout (without modifying your file), 'Help' shows the Helptext.

Installation instructions:
  Command Line: "Wscript YourScriptsFolder\MakeRehearsalFile.js <PROMPT:Foreground Volume:=*120> <PROMPT:Background Volume:=*80> <PROMPT:Execution Mode:=|Modify|Show|Help><PROMPT:Action:=|Make_Rehearsal_File|Undo|Help> <PROMPT:Foreground Volume:=*120]> <PROMPT:Background Volume:=*80>" (You may use other pre-filled values then 120 and 80.)" (You may use other pre-filled values then 120 and 80.)
  Input Type: File Text
  Under 'Options: Check 'Returns File text'

Don't forget to change the extension to ".js" after downloading.

Any comments are bug reports are welcome.

02/01/2017: Attached a lua version of the tool.
Updated lua version 20/11/2017
* New Parameters:
  - Foreground Staves : one or more staff names (instead of active staff + staff named 'All')
  - Foreground Color (instead of fixed 'Highlight 2')
  - What to Color :key signature & clef or whole staff
* You can add arguments to the command line to set the value or default for one or more parameters.
Syntax: <parameter>=<value>['?']. The arguments pairs must be seperated by 1 or more spaces. There must not be a space within an argument.
If an argument ends with a '?', the value will be used as default in the dialog, otherwise the value will be assiged to the parameter, which will be skipped in the dialog.
See 'Help on command line parameters' for description of the paramters and valid values.).

21/11/20017 : test switch off.
User Tools / Dynamics, Velocity and Volume
If you want to know all about dynamics, velocity and volume, you should read Tina Billet's document on the NWC Scriptorium (If you get "Forbidden File Access", copy the link into a new browser window.)

It also describes how to change the default dynamics to vary in volume rather than velocity, so that crescendo and decrescendo not only effect the loudness of each note at the start, but also varies while the note is playing. It contains a formula for calculating the right dynamic volumes, using the wanted Velocities and maximum staff volume. It then describes how to change the dynamics using the built in User Tool adp_GlobalMod.This tool is to be executed for each staff individually. That's because at the time the document was made, User Tools could only work on 1 staff at a time.

In the present version  of NWC2 a User Tool can work on an entire file (Input Type 'File Text'). So I have tried to make it somewhat easier. It takes a few additonal steps, but they have to be done only once , or once per existing NWC file. So here is what I suggest:
1.   Decide what for you are the ideal Velocities (DynVel) and Channel Volume.  You can set the velocities by making your own itree, as explained in Tina Billet's document. This is to be done only once.
2.   If you want it to take effect on an existing NWC file, you should do this via the Staff Properties, Instrument Tab. You may also want to change the Channel Volume (Midi Tab). This is to be done only for the top staff. You can then copy and paste the new Volumes and Velocities using my tool 'CopyVolVel.js'.
3.    Then use my tool 'SetDynVol.js' to change the Dynamic Volumes,  according to Tina's formula "(Velocity * default volume)/highest dynamic velocity" for calculating the required volume of a specific dynamic.

That's what you can do for your existing NWC files. Next you can make your own custom Dynamics selector that you can use when making a new NWC file:
1.   Move your mouse cursor over the Dynamics selector, rightclick and choose "Customize...". The selector file will open.
2.   Save a copy: go to 'File'/'Save as..." in your Config Folder (*) and choose a non existing name of the form '10#.nwc', where # = 0, a, b, c, d, e or f (100.nwc being selector 11, ... 10f.nwc selector 16).
3.   Do step 2 and 3 above on this file.
4.   If you want to use a specific short cut key, say 'v' (for volume), change the title from "Dynamics Selector (&d)" to "Dynamics Selector (&v)"
(*) If you don't know where to find your Config Folder, go to 'Tools/Options...' and select the 'Foldesr' tab

In attachment, you find the 2 tools mentioned above. Don't forget to change the extansion to '.js' after downloading.
General Discussion / Dynamics, Volume and Velocities
I'm working on a tool to change Dynamic Volumes according to Tina Billet's document, in order to have a (de)crescendo has also affect during the playing of long notes.
So I will use her formula "(Velocity * default volume)/highest dynamic velocity" for calculating the required volume of a specific dynamic.
But I'm not sure about the velocities: shall I leave them unchanged, or do I have to use the highest dynamic velocity for each dynamic?
Example: If the default volume is set to 120 and DynVal = (25,35,45,55,68,80,92,108), we become, using the formula, a value of 50 for the volume of dynamic 'p'. That's clear. But should it become "p[-, 50]" (which will be the same as p[45,50], or is p[108,50] the correct result?

Thanks in advance for all expert advices!
User Tools / Change Clef
This tool changes the clef, moving all notes and chords up or down appropriately.
Update 18/02-2015 : new version :
 - correction of a bug (inserting clef after selection); this involved change of input type ('Clip Text' ==> 'File Text')
 - rewritten in script language Lua ==> change of installation instructions

Installation instructions:
- Download and save the file in YourScriptsFolder and change the extention' txt' to 'js'.
- Open a NoteWorthy File
- Choose ‘Tools’, ‘User Tool…’ or enter Alt-F8
- Click ‘New…’
- Enter the name of the tool and choose a group or enter the name of a new group
- Command Line: "Wscript YourScriptsFolder\ChangeClef.js <PROMPT:New Clef:=|Treble|Bass> <PROMPT:Octave Shift:=|None|Octave_Up|Octave_Down> <PROMPT:Execution Mode:=|Modify|Show|Help>"

- Drag and drop the downloaded file upon the NWC window and click "Yes" on the pop up window "Please Confirm"
- Click "Edit" in the window "User Tools"
- Choose Input Type: Clip Text
- Under 'Options: Uncheck 'Returns File Text'

Any comments are welcome.

P.S. You can find this and other tools also on my website
User Tools / Extend Staff
This tool extends the current staff, so that it has an equal number of measures and ‘structure’ as the previous staff.

Installation instructions:
- Download and save the file in YourScriptsFolder and change the extention' txt' to 'js'.
- Open a NoteWorthy File
- Choose ‘Tools’, ‘User Tool…’ or enter Alt-F8
- Click ‘New…’
- Enter the name of the tool and choose a group or enter the name of a new group
- Command Line: "Wscript YourScriptsFolder\ExtendStaff.js <PROMPT:Fill measures with whole rests?:=|Yes|No> <PROMPT:Execution Mode:=|Modify|Show|Help>"
- Input Type: File Text
- Under 'Options: Uncheck 'Returns File text'

Any comments are welcome.

User Tools / Add empty staff
This tool creates a new, ‘empty’ copy of the active staff.

Possible uses:
– to start with a new staff (not filled with rests) that inherits the ‘structure’ of the copied staff, so you’ll just have to enter the notes in the empty measures;
– to create a tempo or a conductor staff (filled with whole rests).

Installation :
- Download and save the file in YourScriptsFolder and change the extention' txt' to 'js'.
- Open a NoteWorthy File
- Choose ‘Tools’, ‘User Tool…’ or enter Alt-F8
- Click ‘New…’
- Enter the name of the tool and choose a group or enter the name of a new group
- Command Line: "Wscript YourScriptsFolder\AddEmptyStaff.js <PROMPT:Execution Mode:=|Show|Modify|Help> "
- Command Line: “Wscript YourScriptsFolder\AddEmptyStaff.js <PROMPT:Fill measures with rests?=|No|Yes,Visible|Yes,Visibility=Never> <PROMPT:Copy Lyrics?=|Yes|No> <PROMPT:Execution Mode:=|Modify|Show|Help>”
- Input Type: File Text
- Under  'Options': check 'Returns File Text'

P.S. You can find this and other tools also on my website

Any comments are welcome.
User Tools / Template files for developing JavaScript User Tools
After studying a user tool I downloaded a while ago (mmr.js from Warren Porter), I wanted to try to write a tool myself. So I downloaded a Java Script Editor and started to experiment.

After many trials and errors, I decided to first write a template script, that I could use as a starting point for developing a specific tool. When testing it, I discovered the different behaviour of the User Tool Environment, depending of the input type and return format.

So I ended up with 3 different templates: 1 for tools with input type 'Clip Text'  (and also 'Clip Text' as the only allowed return format),  1 for input type 'File Text' and return format 'File Text' and 1 for input type 'File Text' and Return Format 'Clip Text'.

You can find these template files in attachment. (After download, change the extention 'txt' to 'js'.)

I used each of these templates to write a user tool, which you will will find in seperate posts.

Any comments are welcome.

P.S. You can find these tools also on my website
General Discussion / Disappearing template files
When I change one of my custom template files, and then want to save it, I get a warning that it's created with an older NWCfile format and the original version will no longer  be able to open it.
This seems normal, so I click 'yes' to proceed.

But after that, the template file is disappeared. It's not showing in the template/custum folder, nor in the folder where I keep my NWC songs.
General Discussion / MMR of 10 is split in 8 and 2 in Print Preview
In the attached song, in measures 38 to 47 there's only piano to be played.  The score is only showing the voices parts, with one special staff 'ALL', wich is used when all voices have to sing unisono. So in all but the piano staff I have a MMR of 10 measures, where the voice staffs are collapsed, so only the 'ALL' show is to be shown. 
The problem is : in Print Preview this creates a MMR of 8 in one system, followed by a MMr of 2 in the next system. What I want is 1 MMR of 10.

How can I do this?
General Discussion / Collapsible staffs and visibility property 'Top staff only'
When I have a score with multiple staffs and I use the Visibility property 'Top Staff Only', then it's indeed only printed on the top staff, according to the staffs selected in the Page Setup.
But when I use collapsible staves this does not work, if the staff that's really the top staff on the print preview is not the top staff according to the page setup.
Thus my question is : how to accomplish that something is only printed on the staff that's really the top staff?
General Discussion / Screen doesn't follow the music in the viewer
I'm using Noteworthy Composer version 2.5.3. and the viewer version 2.5.6a. I'm member of a choir and some of the other singers use only the viewer to rehearse the songs.

For one song I recently entered (see attachment) and in wich I used the new features (MMR and Boundary change), the viewer doesn't behave as it should. When playing a song,as the music reaches the right edge of the screen, there are 2 problems, one minor and one more serious:
  • if the last measure on the screen is incomplete, the screen is shifted only when the music has reached the first note of the next measure
  • and worse: when there is a double bar reached, the screen is shifted only when the music has reached the next double bar

In other songs the behavior is correct, so I assume the problem is caused by the new features I used.
Has someone experienced similar problems?

General Discussion / Multi-measure rest - playback options
The multi-measure rest is a very handy feature, a specially in combination with the collapsing staff option in the boundary change command.

But what I miss is an option where one could specify that a MMR should be handled as a single measure when played back (and in the viewer), in the case where all the played staves contain MMR's.

This would be very useful for the rehearsal files I create for my choir. I make several files, one for each voice (TTBB) and 1 for ALL voices.

Now one has either to wait in silence till the MMR is fully played, or stop, click behind the MMR and then restart.

Moreover, since some of the choir members use an Apple, I also create midi-files. In that case there's only silence during the MMR. So this option should also be used for exporting to midi-files.

I don't think I am the only one that should find this option usefull.
Or am I?
General Discussion / Fermata - odd behaviour
The example below is the start of the song 'Runaround Sue', arrangement of Jeff Funk.
In the first staff there are fermatae on the last (half) note of a measure; in the second staff fermatae on whole notes. As a result the duration of the notes in the to staffs is not the same anymore !

Code: (nwc) [Select · Download]
|SongInfo|Title:"Run Around Sue"|Author:"Dion Di Mucci and Ernest Maresca"|Lyricist:"Arr. Jeff Funk"|Copyright1:""|Copyright2:""
|PgSetup|StaffSize:15|Zoom:4|TitlePage:Y|JustifyVertically:Y|ExtendLastSystem:Y|DurationPadding:Y|PageNumbers:1|StaffLabels:All Systems|BarNumbers:Boxed|StartingBar:1|AllowLayering:N
|Font|Style:StaffItalic|Typeface:"Times New Roman"|Size:10|Bold:Y|Italic:Y|CharSet:0
|Font|Style:StaffBold|Typeface:"Times New Roman"|Size:7|Bold:Y|Italic:N|CharSet:0
|Font|Style:StaffLyric|Typeface:"Times New Roman"|Size:10|Bold:N|Italic:N|CharSet:0
|Font|Style:PageTitleText|Typeface:"Times New Roman"|Size:24|Bold:Y|Italic:N|CharSet:0
|Font|Style:PageText|Typeface:"Times New Roman"|Size:12|Bold:N|Italic:N|CharSet:0
|Font|Style:PageSmallText|Typeface:"Times New Roman"|Size:8|Bold:N|Italic:N|CharSet:0
|Font|Style:User6|Typeface:"Times New Roman"|Size:8|Bold:N|Italic:N|CharSet:0
|StaffProperties|EndingBar:Section Close|Visible:Y|BoundaryTop:15|BoundaryBottom:15|Lines:5|Style:Standard|Layer:N|Color:Default
|Lyrics|Placement:Bottom|Align:Standard Rules|Offset:0
|Lyric1|Text:"Here\'s my sto-ry, it\'s sad but true;\r\nit\'s a-bout a girl that I once knew.\r\nShe took my love then ran a-round\r\nwith ev-\'ry sin-gle guy in town.\r\n\r\nOh, woh, oh, woh, oh woh, oh.\r\n\r\nI should have known it from the ver-y start,\r\nNow lis-ten, peo-ple, what I\'m tel-ling you,\r\na-keep a-way fom a-Run-a-round Sue.\r\n\r\nI miss her lips and the smile on her face,\r\nthe touch of her hair and this girl\'s warm em-brace.\r\nSo if you don\'t wan-na cry like I do,\r\na-keep a-way from a-Run-a-round Sue.\r\n\r\nOh, woh, oh, woh, oh woh, oh.\r\n\r\nShe likes to tra-vel a-round,\r\nshe\'ll love you, but she\'ll cut you down.\r\nNow, peo-ple, let me put you wise,\r\nSue goes out with oth-er guys.\r\nHere\'s the mor-al and the sto-ry from the guy who knows,\r\nI fell in love and my love still grows.\r\nAsk a-ny fool that she ev-er knew,\r\nthey\'ll say a-keep a-way from a-Run-a-round Sue.\r\nkeep a-way, a-keep a-way from a-Run-a-round Sue.\r\n"
|Clef|Type:Treble|OctaveShift:Octave Down|Visibility:Always
|Text|Text:"Free Tempo"|Font:StaffItalic|Pos:9
|StaffProperties|EndingBar:Section Close|Visible:Y|BoundaryTop:15|BoundaryBottom:15|Lines:5|Style:Standard|Layer:N|Color:Default
|Lyrics|Placement:Bottom|Align:Standard Rules|Offset:0
|Lyric1|Text:"Oo, oo, ah, oo.\r\nHayp hayp, bum-da ha-dy ha-dy,\r\nhayp hayp bum-da ha-dy ha-dy\r\nhayp hayp bum-da ha-dy ha-dy\r\nhayp. Ah.\r\n\r\nthis girl would leave me with a bro-ken heart.\r\na-keep a-way from a-Run-a-round Sue.\r\n\r\nHayp hayp, bum-da ha-dy ha-dy,\r\nhayp hayp bum-da ha-dy ha-dy\r\nhayp hayp bum-da ha-dy ha-dy\r\nhayp.\r\nHayp hayp, bum-da ha-dy ha-dy,\r\nhayp hayp bum-da ha-dy ha-dy\r\nhayp hayp bum-da ha-dy ha-dy\r\nhayp. Ah. Ah, ah, ah.\r\nHayp hayp, bum-da ha-dy ha-dy,\r\nhayp hayp bum-da ha-dy ha-dy\r\nhayp hayp bum-da ha-dy ha-dy\r\nhayp.\r\nkeep a-way, a-keep a-way from a-Run-a-round Sue.\r\n"
|AddStaff|Name:"Right Hand"|Label:"Piano"|Group:"Piano"
|StaffProperties|EndingBar:Section Close|Visible:N|BoundaryTop:10|BoundaryBottom:10|Lines:5|Style:Upper Grand Staff|Layer:N|Color:Default
|AddStaff|Name:"Left Hand"|Group:"Piano"
|StaffProperties|EndingBar:Section Close|Visible:N|BoundaryTop:10|BoundaryBottom:10|Lines:5|Style:Lower Grand Staff|Layer:N|Color:Default