I find myself adding texts all the time above the stave in the fingering position, in order to make notes for myself. In the QwikType User Tool (attached as qwiktext.zip in https://forum.noteworthycomposer.com/?topic=8312.0 post #26), it allows the user to enter for example, "\v 4a, 5a, 6a, 7a" as hexadecimal volume numbers for volume entities to be inserted in front of the following 4 notes, so that each note has a different volume. If it's of any help, I will add in a command e.g. "\/ 1, 2, 3, 4" which will for example add the texts 1, 2, 3, 4 in the fingering position in front of the following 4 notes, so that each note has a finger number.
Thanks Rick for the code. It works fine as a standalone program, and also when I put it at the start of the globals (main) section in qwiktype.php. But the intention is to put it just before the final "exit(NWC2RC_SUCCESS)" line of qwiktype.php so that it can playback the entities that have just been newly inserted. Unfortunately it returns the error "Format error in the clip text" in l.40 of obj_NWC2Clip.php. The error occurs in the line "$clip = new NWC2Clip();". I've tried various alternatives, such as renaming the clip object (so as not to clash with the qwiktype clip object), using the qwiktype clip object inside the "$list" array for playback (this playbacks the notes before the change, and then outputs the new notes and entities as nwctxt in the stdout dialog box instead of into the NWC2 stave) etc, but still can't get it to work. If there's a quick answer to this, or if you have any initial thoughts, any help would be greatly appreciated, otherwise I'd rather park this to one side, and focus on getting a stable version of qwiktype released. Best Wishes
Updated 2012/11/30: replaced beta 1 zipfile with beta 2. Also changed the name from qwiktype to qwiktext as it sounds more appropriate now that insertion commands can also be read from a file.
Updated 2012/12/02: replaced beta 2 file attachment with release version 1.0
Updated 2012/12/11: replaced release version 1.0 with version 1.0a. Now renamed back to "qwiktype"
Updated 2012/12/15: Removed attachment, and added link to Scriptorium
Hi Warren, apologies about the "~s" not working. I've now put "(tested on IE 9)" at the start of the page so that Chrome and Firefox users are aware.
It looks like I'm beginning to get the hang of PHP scripting for User Tools. I've created a page at http://geocities.ws/aardvarksong1/introusrtools.html for newbies like myself. After changing php.exe to WScript in the Command box, I can also run JavaScript in User Tools. I'll look more carefully next time. I've attached a zipped up qwiktype.php to this post. To insert a treble clef, the user needs to insert a text entity with the text value '\&t', and then run the script. Similarly '\v120' inserts a volume entity with value 120, '\c120' inserts a velocity entity with value 120, '\ivln' inserts a violin instrument change, and '\mv0,10/1,20/1,40/1,50' inserts an MPC volume increase for every 16th note duration. It's still really buggy, and its functionality is limited, but hopefully I'll add to it as I use it. Really appreciate all the help I've received in this thread. Best Wishes
(Attachment qwiktype.zip has been removed because it has been replaced with qwiktype.v.1.0.beta.1.zip later in this thread)
Hi Warren, "~s" is the command to translate to nwctxt, so typing "[test-text]~s" in the upper pane will produce "|Text|Text:"test-text"|Font:StaffItalic|Pos:-10" in the lower pane. It's still really buggy (e.g. it can't handle spaces inside text), but hopefully it will get ironed out the more I use it.
Thanks for the Tidy.js, Rick. I tried to use it but I'm getting "Command process failed". I tried to run just a single line like "var io = WScript.StdIn.ReadAll().split("\r\n");" and this is also giving the same error on both Windows XP and Vista. But this has given me a few new ideas to try out inside PHP, e.g. typing in the shortcut command as text, and using PHP to globally transform the text into an entity.
I have started a page at http://geocities.ws/aardvarksong1/qwikcopypaste.html which generates nwctxt from a shortcut code entered by the user for copying and pasting into NWC. At the moment it only allows the user to insert clef, text, instrument change, volume and velocity, and MPC volume entities, but hopefully I'll be able to work on it. It is only an HTML page with javascript code inside. Getting Started instructions are on the page. Best Wishes
Thank you very much. I tried the dynamics.htm out on a line consisting of a flute and violin, and it really does make such a difference in producing a humanized sound, particularly on the violin. By the way, your site is full of useful pages related to NWC. Maybe someone should start a main topic in the NWC forum entitled "useful tools, scripts and websites" so that people can get access to it, and also where I can eventually post my library of shortcut command mappings to nwctxt. Best Wishes
Thanks Lawrie for your suggestion. Warren's suggestion has mostly solved what I wanted to do. I was trying to write music that had alot of dynamic changes in order to produce a realistic performance sound, e.g. multiple dynamic changes using hidden dynamic entities and volume multi-point controllers within the same measure. The keyboard shortcuts are really handy, and I use them all the time, but it can become a chore having to press for example "D+m+m+shift+V+100+Enter" just to insert an mp dynamic entity with volume 100. One has to pay attention to the content of the current selection list and values in the text boxes as well, as these values keep changing in order to preserve the last entered values. I wanted just to press Ctrl+Alt+F8+Dmpv100+Enter to do the same. In terms of number of keystrokes the saving probably isn't very great, but it means I don't have to think about what is happening inside the dialog boxes.
Thank you so much for the above. It really is so handy. By building a library of lines for copying and pasting from Notepad into NWC, I can finally quickly insert instrument changes, decorated bar lines, dynamics etc without having to navigate through all the selection lists. Best Wishes
If it is a relatively straightforward task, is it possible for someone to provide a working example of a script that: 1) Displays a dialog box, in which a input textbox has focus 2) The user enters the entity in nwctxt e.g. "|Instrument|Patch:40+Enter" 3) On pressing Enter the dialog box closes, and the instrument change to patch 40 entity is then inserted at current cursor position. Many Thanks
I am trying to create tool that allows the user to enter a specific entity such as an instrument change, clef, dynamic or barline at the current cursor position. I looked at the examples in the User Tools and they all seem to apply changes to the entire file, or a selection of notes. Is there any way of inserting a specific entity at the cursor position?