51
Announcements / News via Twitter
http://twitter.com/nwsw
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.
Wednesday, Oct 3
Thank you for submitting your inquiry. A response will be sent within two business days to the e-mail address you specified.
# This is a sample NWC Text file. As you can see, any text starting with
# a '#' character is treated as a comment.
#
# When accepting nwctxt in a File mode user tool, a comment header will
# include some details about the current editor file. For example:
#
#/File: D:\nwctest.nwctxt
#/SavePending: N
#/ReturnFormat: FileText
#
# ------------------------------------------------------------------------------
# This first non-comment line of the file should be the !NoteWorthyComposer
# header line. This indicates that this file contains NoteWorthy Composer Text.
# This sample targets version 2.75.
#
!NoteWorthyComposer(2.75)
# Blank lines can appear anywhere in the file after the
# initial !NoteWorthyComposer header
# ------------------------------------------------------------------------------
# The Editor line indicates the currently active staff and selection positions
|Editor|ActiveStaff:1|CaretIndex:1|SelectIndex:59|CaretPos:0
# ------------------------------------------------------------------------------
# The SongInfo, PgSetup, PgMargins, and Font lines can appear anywhere in
# the file, but it is good form to have them at the top, prior to adding
# any staff data.
# It is fine to use multiple SongInfo, PgSetup, and PgMargins in a file.
# If a field is specified more than once, the last one overrides any
# previous assignment.
|SongInfo|Title:"<FileTitle>"|Author:"<Author>"|Lyricist:"<Lyricist>"
|SongInfo|Copyright1:"<Copyright1>"
|SongInfo||Copyright2:"<Copyright2>"
|SongInfo|Comments:"<Comments>"
|PgSetup|StaffSize:16|NtnTypeface:NWC2SwingDings|Zoom:4
|PgSetup|TitlePage:Y|JustifyVertically:Y|ExtendLastSystem:Y
|PgSetup|DurationPadding:Y|PageNumbers:3|StaffLabels:First System
|PgSetup|BarNumbers:Circled|StartingBar:20|AllowLayering:Y
# Margins are specified in Centimeters. You can convert to
# inches by dividing these values by 2.54.
|PgMargins|Left:1.27|Top:1.27|Right:1.27|Bottom:1.27
|PgMargins|Mirror:Y
# Unlike the other top level instructions, each Font instruction should
# be defined on a single line. Each Font instruction must include the
# Style option, which identifies which named font is being defined on
# the line. The Size is in points. The CharSet comes from Script field
# in the Font dialog.
|Font|Style:StaffItalic|Typeface:"Times New Roman"|Size:12|Bold:Y|Italic:Y|CharSet:0
|Font|Style:StaffBold|Typeface:"Times New Roman"|Size:9|Bold:Y|Italic:N|CharSet:0
|Font|Style:StaffLyric|Typeface:"Times New Roman"|Size:9|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
# If a particular User font is not used in the file, then it might
# not appear in the file. When scanning an existing nwctxt file,
# you cannot assume that any particular fields or instructions
# will exist in the file.
|Font|Style:User1|Typeface:"Times New Roman"|Size:8|Bold:N|Italic:N|CharSet:0
|Font|Style:User2|Typeface:"Times New Roman"|Size:8|Bold:N|Italic:N|CharSet:0
|Font|Style:User3|Typeface:"Times New Roman"|Size:8|Bold:N|Italic:N|CharSet:0
|Font|Style:User4|Typeface:"Times New Roman"|Size:8|Bold:N|Italic:N|CharSet:0
|Font|Style:User5|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
# ------------------------------------------------------------------------------
# The first AddStaff line is optional, although it is required if you want to name,
# label, or group a staff
|AddStaff|Name:"<Staff1Name>"|Label:"<StaffLabel>"|Group:"Vocal"
# The various StaffProperties can be assigned using multiple instances of
# the instruction.
|StaffProperties|EndingBar:Section Close|Visible:Y
|StaffProperties|BoundaryTop:16|BoundaryBottom:14
|StaffProperties|Lines:5|WithNextStaff:Brace,ConnectBars|Color:Default
|StaffProperties|Muted:N|Volume:127|StereoPan:64|Device:0|Channel:1
# The StaffInstrument uses the same syntax as the Instrument instruction
# used in NWC clip text
|StaffInstrument|Name:"Lead 6 (voice)"|Patch:85|Trans:0|DynVel:10,30,45,60,75,92,108,127
# Lyrics can be defined anywhere after the AddStaff line, but it is good form
# to place them before the notation for the staff
|Lyrics|Placement:Bottom|Align:Standard Rules|Offset:0|UnderscoreAsSpace:N
|Lyric1|Text:"Aaaaaaaah________\r\n"
# The notation contained in the staff uses the same format as NWC Clip
# Text from the User Tool and clipboard mechanisms
|Clef|Type:Treble
|Note|Dur:Whole|Pos:1^
|Bar
|TempoVariance|Style:Fermata|Pause:0|Pos:9
|Note|Dur:Whole|Pos:1
# ------------------------------------------------------------------------------
# Whenever an AddStaff is encountered, a new staff is created. The new
# staff then becomes the target for the instructions that follow it, until
# another AddStaff is encountered.
|AddStaff|Name:"<Staff2Name>"|Label:"<PianoStaffLabel>"|Group:"Piano"
|StaffProperties|EndingBar:Section Close|Visible:Y|BoundaryTop:10|BoundaryBottom:18|Lines:5|Style:Upper Grand Staff|Layer:N|Color:Default
|StaffProperties|Muted:N|Volume:127|StereoPan:64|Device:0|Channel:1
|StaffInstrument|Trans:0|DynVel:10,30,45,60,75,92,108,127
|Lyrics|Placement:Bottom|Align:Start of Accidental/Note|Offset:2
|Lyric1|Text:"1_1 1_2 1_3 1_4\r\n1_5 1_6 1_7 1_8\r\n"
|Lyric2|Text:"2_1 2_2 2_3 2_4\r\n2_5 2_6 2_7 2_8\r\n"
|Clef|Type:Treble
|Note|Dur:4th|Pos:-4
|Note|Dur:4th|Pos:-3
|Note|Dur:4th|Pos:-2
|Note|Dur:4th|Pos:-1
|Bar
|Note|Dur:4th|Pos:0
|Note|Dur:4th|Pos:1
|Note|Dur:4th|Pos:2
|TempoVariance|Style:Fermata|Pause:5|Pos:9
|Chord|Dur:4th|Pos:1,3,5
# ------------------------------------------------------------------------------
|AddStaff|Name:"<Staff3Name>"|Group:"Piano"
|StaffProperties|EndingBar:Section Close|Visible:Y|BoundaryTop:15|BoundaryBottom:14|Lines:5|Style:Lower Grand Staff|Layer:N|Color:Default
|StaffProperties|Muted:N|Volume:127|StereoPan:64|Device:0|Channel:1
|StaffInstrument|Trans:0|DynVel:10,30,45,60,75,92,108,127
|Lyrics|Placement:Top|Align:Standard Rules|Offset:-2|UnderscoreAsSpace:N
|Lyric1|Text:"1_1 1_2 1_3 1_4\r\n1_5 1_6 1_7 1_8\r\n"
|Lyric2|Text:"2_1 2_2 2_3 2_4\r\n2_5 2_6 2_7 2_8\r\n"
|Clef|Type:Bass
|Note|Dur:4th|Pos:-1
|Note|Dur:4th|Pos:0
|Note|Dur:4th|Pos:1
|Note|Dur:4th|Pos:2
|Bar
|Note|Dur:4th|Pos:3
|Note|Dur:4th|Pos:4
|Note|Dur:4th|Pos:5
|TempoVariance|Style:Fermata|Pause:0|Pos:-7
|Note|Dur:4th|Pos:6
!NoteWorthyComposer-End
<?php
/*******************************************************************************
nwsw_Visibility Version 1.01
This script enables fast alteration of the visibility property for selected
items.
Copyright © 2007 by NoteWorthy Software, Inc.
All Rights Reserved
History:
[2007-01-03] Version 1.01 - Inclusion in starter kit
[2006-07-11] Version 1.00 - Initial release
*******************************************************************************/
//
//AdvisoryInvocation:"/visibility=<PROMPT:Set Visibility to:=|Default|Always|TopStaff|Never|>" "/skip=<PROMPT:Skip:=|None|Bar|Bar,Text|Bar,Text,Flow,Ending|>"
require_once("lib/nwc2clips.inc");
$clip = new NWC2Clip('php://stdin');
$opts = array('visibility' => 'hide','skip' => 'all');
foreach ($argv as $k => $v) {
if (!$k) continue;
if (preg_match('/^\/([a-z]+)\=(.*)$/',$v,$m)) {
$optname = $m[1];
$optvalue = $m[2];
$opts[strtolower($optname)] = $optvalue;
}
}
$opts['skip'] = strtolower($opts['skip']);
$skiplist = explode(',',$opts['skip']);
echo $clip->GetClipHeader()."\n";
//
foreach ($clip->Items as $item) {
$o = new NWC2ClipItem($item);
//
$skipit = false;
//
if ($opts['skip'] == 'all') $skipit = true;
else if ($opts['skip'] != 'none') $skipit = in_array(strtolower($o->GetObjType()), $skiplist);
//
if ($skipit) {
echo $item;
continue;
}
$o->Opts['Visibility'] = $opts['visibility'];
echo $o->ReconstructClipText()."\n";
}
echo NWC2_ENDCLIP."\n";
exit(NWC2RC_SUCCESS);
?>
"/visibility=<PROMPT:Set Visibility to:=|Default|Always|TopStaff|Never|>" "/skip=<PROMPT:Skip:=|None|Bar|Bar,Text|Bar,Text,Flow,Ending|>"
<?php
/*******************************************************************************
nwsw_Unjazzify Version 1.1
This script will find note pairs where the first note is a dotted note,
and the second is half the notehead duration of the first and is not dotted.
It will convert the pair into two notes of equal duration.
Copyright © 2006 by NoteWorthy Software, Inc.
All Rights Reserved
History:
2006-05-09: Version 1.1
- Changed detection to allow rests, non-beamed notes, and quarter note duration
2006-05-09: Initial release (1.0)
*******************************************************************************/
require_once("lib/nwc2clips.inc");
$clip = new NWC2Clip('php://stdin');
//
$validPairs = array(
"4th" => "8th",
"8th" => "16th",
"16th" => "32nd",
"32nd" => "64th"
);
//
// Track the number of conversions
$numConvertedPairs = 0;
//
// Track the previous note if it is eligible for conversion
$priorNoteObj = false;
$targetEndingDuration = false;
//
// Track any items that fall between the two notes in the group
$NonNoteQ = "";
//
function FlushTheGroupingQ()
{
global $NonNoteQ,$priorNoteObj;
if ($priorNoteObj) echo $priorNoteObj->ReconstructClipText()."\n";
if ($NonNoteQ) echo $NonNoteQ;
$NonNoteQ = "";
$priorNoteObj = false;
}
echo $clip->GetClipHeader()."\n";
//
foreach ($clip->Items as $item) {
$o = new NWC2ClipItem($item);
//
$is_note = in_array($o->GetObjType(), array("Chord","Note","Rest"));
$is_rest = ($o->GetObjType() == "Rest");
$is_grace = isset($o->Opts["Dur"]["Grace"]);
$is_dotted = isset($o->Opts["Dur"]["Dotted"]);
$is_dbldotted = isset($o->Opts["Dur"]["DblDotted"]);
$is_beamed = isset($o->Opts["Opts"]["Beam"]);
$is_beamstart = $is_beamed && ($o->Opts["Opts"]["Beam"] == "First");
if ($is_note) {
if (!$priorNoteObj) {
$starterDuration = array_intersect(array_keys($o->Opts["Dur"]),array_keys($validPairs));
if (count($starterDuration)) $starterDuration = array_shift($starterDuration);
else $starterDuration = false;
//
if ($is_dotted && !$is_grace && $starterDuration && (!$is_beamed || ($is_beamed && $is_beamstart))) {
$targetEndingDuration = $validPairs[$starterDuration];
$priorNoteObj = $o;
continue;
}
//
echo $item;
}
else if (in_array($targetEndingDuration, array_keys($o->Opts["Dur"])) && !$is_beamstart && !$is_dotted && !$is_dbldotted) {
$numConvertedPairs++;
unset($priorNoteObj->Opts["Dur"]["Dotted"]);
unset($o->Opts["Dur"][$targetEndingDuration]);
$o->Opts["Dur"][$starterDuration] = "";
FlushTheGroupingQ();
echo $o->ReconstructClipText()."\n";
}
else {
FlushTheGroupingQ();
echo $item;
}
continue;
}
if (in_array($o->GetObjType(),array("Bar","TimeSig"))) {
FlushTheGroupingQ();
echo $item;
continue;
}
if ($priorNoteObj) $NonNoteQ .= $item;
else echo $item;
}
FlushTheGroupingQ();
echo NWC2_ENDCLIP."\n";
if (!$numConvertedPairs) {
fputs(STDERR,"No valid note pairs were found within the selection");
exit(NWC2RC_ERROR);
}
exit(NWC2RC_SUCCESS);
?>
\Piano
Acoustic Grand Piano=0
Bright Acoustic Piano=1
Electric Grand Piano=2
Honky-tonk Piano=3
Rhodes Piano=4
Chorused Piano=5
Harpsichord=6
\Chromatic Percussion
Clavinet=7
Celesta=8
Glockenspiel=9
Music Box=10
Vibraphone=11
Marimba=12
Xylophone=13
Tubular Bells=14
\Organ
Dulcimer=15
Hammond Organ=16
Percussive Organ=17
Rock Organ=18
Church Organ=19
Reed Organ=20
Accordion=21
Harmonica=22
Tango Accordion=23
\Guitar
Acoustic Guitar (nylon)=24
Acoustic Guitar (steel)=25
Electric Guitar (jazz)=26
Electric Guitar (clean)=27
Electric Guitar (muted)=28
Overdriven Guitar=29
Distortion Guitar=30
Guitar Harmonics=31
\Bass
Acoustic Bass=32
Electric Bass (finger)=33
Electric Bass (pick)=34
Fretless Bass=35
Slap Bass 1=36
Slap Bass 2=37
Synth Bass 1=38
Synth Bass 2=39
\Strings
Violin=40
Viola=41
Cello=42
Contrabass=43
Tremolo Strings=44
Pizzicato Strings=45
Orchestral Harp=46
Timpani=47
\Ensemble
String Ensemble 1=48
String Ensemble 2=49
SynthStrings 1=50
SynthStrings 2=51
Choir Aahs=52
Voice Oohs=53
Synth Voice=54
Orchestra Hit=55
\Brass
Trumpet=56
Trombone=57
Tuba=58
Muted Trumpet=59
French Horn=60
Brass Section=61
Synth Brass 1=62
Synth Brass 2=63
\Reed
Soprano Sax=64
Alto Sax=65
Tenor Sax=66
Baritone Sax=67
Oboe=68
English Horn=69
Bassoon=70
Clarinet=71
\Pipe
Piccolo=72
Flute=73
Recorder=74
Pan Flute=75
Bottle Blow=76
Shakuhachi=77
Whistle=78
Ocarina=79
\Synth Lead
Lead 1 (square)=80
Lead 2 (sawtooth)=81
Lead 3 (caliope lead)=82
Lead 4 (chiff lead)=83
Lead 5 (charang)=84
Lead 6 (voice)=85
Lead 7 (fifths)=86
Lead 8 (brass + lead)=87
\Synth Pad
Pad 1 (new age)=88
Pad 2 (warm)=89
Pad 3 (polysynth)=90
Pad 4 (choir)=91
Pad 5 (bowed)=92
Pad 6 (metallic)=93
Pad 7 (halo)=94
Pad 8 (sweep)=95
\Synth Effects
FX 1 (rain)=96
FX 2 (soundtrack)=97
FX 3 (crystal)=98
FX 4 (atmosphere)=99
FX 5 (brightness)=100
FX 6 (goblins)=101
FX 7 (echoes)=102
FX 8 (sci-fi)=103
\Ethnic
Sitar=104
Banjo=105
Shamisen=106
Koto=107
Kalimba=108
Bagpipe=109
Fiddle=110
Shanai=111
\Percussive
Tinkle Bell=112
Agogo=113
Steel Drums=114
Woodblock=115
Taiko Drum=116
Melodic Tom=117
Synth Drum=118
Reverse Cymbal=119
\Sound Effects
Guitar Fret Noise=120
Breath Noise=121
Seashore=122
Bird Tweet=123
Telephone Ring=124
Helicopter=125
Applause=126
Gunshot=127
# This is a sample instrument tree. This can be used as the basis for
# creating your own instrument tree definitions. As you can see, comments
# are added by starting a line with a '#' character. Any line that starts
# like this is considered a comment and is ignored by NoteWorthy Composer.
# In addition, any blank lines are ignored by NoteWorthy Composer.
#
# An instrument tree can be as simple or as complex as you want. Instruments
# are defined by assigning the name of the instrument to a definition that
# describes the MIDI properties of the instrument. You can group sets of
# instruments into different named branches, but you do not have to do this.
# Branch names start with a \ character. Instrument names may not include this
# character.
#
# Creating instrument branches is generally a good idea, though, because it
# allows you to assign default properties to all instruments contained in a
# branch. It also makes it easier to navigate to the desired instrument when
# selecting it in NoteWorthy Composer.
#
# Any instrument or branch can have instrument properties assigned to it.
# If a particular property is not assigned directly to an instrument
# definition, that property may still be inherited from the branch that
# encloses the instrument.
#
# The first assignment in the file can be used to define the properties for
# the main branch. This assignment is optional, but if present, will embody
# all other definitions in the file.
#
# The following optional line assigns default properties for the main
# instrument branch, which will act as defaults for all instruments if
# they do not include a specific property assignment.
\=Bank(0,112),DynVel(10,30,45,60,75,92,108,127),Trans(0)
# The line starts with the new branch indicator (a '\'), followed by the
# assignment operator (an '=' sign). The different properties that can be
# assigned include:
#
# Bank(MSB,LSB):
# This indicates a bank select definition. Both the MSB and LSB values
# must be indicated if the Bank property is added to the assignment.
#
# DynVel(ppp,pp,p,mp,mf,f,ff,fff):
# This indicates the default dynamics that should be applied. All eight
# values must be included for this to be a valid property assignment.
#
# Trans(0):
# This indicates the pitch transposition that should be applied when
# an instrument is selected. Here, we default this to 0 for all
# instruments in the file, and let each instrument override this if
# necessary.
# Now, as a demonstration, a branch can be added that will enclose instrument
# definitions that will be treated as favorites. For demonstration purposes,
# some default properties are added, but a true file would likely use different
# property combinations.
#
# First, create a branch for favorites:
\My Favorites=Bank(0,0)
# In this example, the Church Organ is so special, it gets listed tight at the top
Church Organ=19
# Now, add a branch for the instruments that I play. In this case, no default
# properties are assigned to the branch, since the instruments are so varied.
# Each instrument is assigned the relevant properties:
\My Favorites\that I play
Trumpet=56,Trans(-2)
Muted Trumpet=59,Trans(-2),DynVel(10,20,30,40,50,60,70,80)
Piano=0
# Add some instruments to My Favorites that are used often:
\My Favorites\that I use=DynVel(5,15,30,45,60,80,100,127)
Acoustic Grand Piano=0
Bright Acoustic Piano=1
String Ensemble 1=48
String Ensemble 2=49
Orchestra Hit=55
Applause=126
# Favorites when playing to my Yamaha piano
\My Favorites\that I use\Yamaha Clav=Bank(0,112)
Grand Piano=0
Rock Piano=1,Bank(0,113)
NewAgePiano=2,Bank(0,118)
Dream EP=5,Bank(0,114)
Guitar (Bright Clean)=27,Bank(0,113)
Guitar (Smooth Nylon)=24,Bank(0,114)
Dist. Guitar=30,Bank(0,112)
# Now, in this example, the remainder of the list is just excerpts of
# the General MIDI list, to show how it would interact. This ends the
# descriptive comments in the file.
\GeneralMidi\Piano
Acoustic Grand Piano=0
Bright Acoustic Piano=1
Electric Grand Piano=2
Honky-tonk Piano=3
Rhodes Piano=4
Chorused Piano=5
Harpsichord=6
\GeneralMidi\Chromatic Percussion
Clavinet=7
Celesta=8
Glockenspiel=9
Music Box=10
Vibraphone=11
Marimba=12
Xylophone=13
Tubular Bells=14
\GeneralMidi\Organ
Dulcimer=15
Hammond Organ=16
Percussive Organ=17
Rock Organ=18
Church Organ=19
Reed Organ=20
Accordion=21
Harmonica=22
Tango Accordion=23
\GeneralMidi\Guitar
Acoustic Guitar (nylon)=24
Acoustic Guitar (steel)=25
Electric Guitar (jazz)=26
Electric Guitar (clean)=27
Electric Guitar (muted)=28
Overdriven Guitar=29
Distortion Guitar=30
Guitar Harmonics=31
\GeneralMidi\Bass
Acoustic Bass=32
Electric Bass (finger)=33
Electric Bass (pick)=34
Fretless Bass=35
Slap Bass 1=36
Slap Bass 2=37
Synth Bass 1=38
Synth Bass 2=39
\GeneralMidi\Strings
Violin=40
Viola=41
Cello=42
Contrabass=43
Tremolo Strings=44
Pizzicato Strings=45
Orchestral Harp=46
Timpani=47
\GeneralMidi\Ensemble
String Ensemble 1=48
String Ensemble 2=49
SynthStrings 1=50
SynthStrings 2=51
Choir Aahs=52
Voice Oohs=53
Synth Voice=54
Orchestra Hit=55
\GeneralMidi\Brass
Trumpet=56
Trombone=57
Tuba=58
Muted Trumpet=59
French Horn=60
Brass Section=61
Synth Brass 1=62
Synth Brass 2=63
\GeneralMidi\Reed
Soprano Sax=64
Alto Sax=65
Tenor Sax=66
Baritone Sax=67
Oboe=68
English Horn=69
Bassoon=70
Clarinet=71
\GeneralMidi\Pipe
Piccolo=72
Flute=73
Recorder=74
Pan Flute=75
Bottle Blow=76
Shakuhachi=77
Whistle=78
Ocarina=79
\GeneralMidi\Synth Lead
Lead 1 (square)=80
Lead 2 (sawtooth)=81
Lead 3 (caliope lead)=82
Lead 4 (chiff lead)=83
Lead 5 (charang)=84
Lead 6 (voice)=85
Lead 7 (fifths)=86
Lead 8 (brass + lead)=87
\GeneralMidi\Synth Pad
Pad 1 (new age)=88
Pad 2 (warm)=89
Pad 3 (polysynth)=90
Pad 4 (choir)=91
Pad 5 (bowed)=92
Pad 6 (metallic)=93
Pad 7 (halo)=94
Pad 8 (sweep)=95
\GeneralMidi\Synth Effects
FX 1 (rain)=96
FX 2 (soundtrack)=97
FX 3 (crystal)=98
FX 4 (atmosphere)=99
FX 5 (brightness)=100
FX 6 (goblins)=101
FX 7 (echoes)=102
FX 8 (sci-fi)=103
\GeneralMidi\Ethnic
Sitar=104
Banjo=105
Shamisen=106
Koto=107
Kalimba=108
Bagpipe=109
Fiddle=110
Shanai=111
\GeneralMidi\Percussive
Tinkle Bell=112
Agogo=113
Steel Drums=114
Woodblock=115
Taiko Drum=116
Melodic Tom=117
Synth Drum=118
Reverse Cymbal=119
\GeneralMidi\Sound Effects
Guitar Fret Noise=120
Breath Noise=121
Seashore=122
Bird Tweet=123
Telephone Ring=124
Helicopter=125
Applause=126
Gunshot=127