X: 0
T: title, and
K: key signature. sanity check If you do not succeed in getting runabc working properly, you can do a sanity check and send me the runabc.out file by e-mail to me. The runabc.out file is a text file that you can view with any editor. Register abc files
If you are running on Windows, operating system, you will see the button Register abc files. Clicking this button will display the following window which will allow you to associate abc files with runabc. Associating the abc files with runabc means that whenever you double click on an abc file it will automatically start up runabc with that file loaded. If runabc was already running, then double clicking on the file will load that file into the current process. The association is set up through the Windows registry system. (Note this feature requires tcl/tk version 8.4. It will not work with 8.3. If you are using a freewrapped (or starpack) version like runabc.exe then you don't care, since the correct version is already built in.)
Normally it is only necessary to create this association once. The association remains permanent (unless changed by another abc application). If you later decide to move runabc to a new directory, then it is necessary to reestablish the association the same way. If at sometime you wish to destroy or change this association, you can do this by going to 'Folder Options' which is accessed from the file manager under the menu item view or toolbar or somthing else (depending on which version of Windows you are running -- 95,98,ME,etc.); then select 'File Types' find ABC, select it and take the appropriate action (eg remove).
When you double click on abc file, windows starts up runabc and loads up the selected abc file. However, the current directory is the same directory where the abc file was found. This poses a problem, since the runabc.ini and tmp directory is normally in the same directory as where runabc was installed. To fix this problem, this function also stores the path name to the runabc install directory in the registry. Runabc determines whether runabc.tcl or runabc.exe are found in the current directory. If they are not found, then runabc looks in the registry to find out where they are located and changes the current directory to this location. Now it is possible to load and store the correct runabc.ini file.
Note if you use runabc.exe or runabc.kit, you should associate the abc files with runabc.exe or runabc.kit.
If you want a similar feature on other operating systems, it will be necessary for you to set it up yourself. You can put a link a runabc link in your ~/bin directory (i.e. in your home directory), so that it points to the location of runabc.tcl. For example, you would create the link by typing.
 ln -s ~/abc/runabc.tcl runabc
 Now you can start up runabc from any current directory. Furthermore, if you enter
 runabc sample.abc
 where sample.abc is some abc file in your current directory, then runabc will start up with this file preloaded. However, in order for this to work properly, you also need to create a new environment variable called RUNABCPATH which points to the folder where runabc.tcl is stored. On my system, I added the following to my .bashrc file.
 export RUNABCPATH=~/abc/
 If this is not done, runabc will not cd to the directory where runabc.tcl was installed and will not find the runabc.ini file.
[main]:  Main Features
At this point you are ready to start using the program. Click the file button at the top left, and use the file browser to select the desired abc file. Alternatively, you may enter the full file pathname in the entry box and press 'return'. (The return key can be used to remove the focus, i.e. flashing cursor from many of the entry boxes you will see.) A list of all the tunes in that file should appear below. (If no index appears on the screen, it may be necessary to convert abc text file to unix, dos format or whatever is appropriate for your machine using utilities like dos2unix, see readme file for more discussion.) If you do not have those utilities, you may be able to accomplish this using the edit/copy to file command on the runabc console and create a new copy of the tunes in the abc file. This is discussed later.
Select a tune, using the mouse pointer. If you right click a particular tune, a short summary will pop up in a separate window. Then click the play button, to hear it on your speakers or the display button to view the tune in musical notation. You can select several tunes by dragging the mouse pointer, or clicking with the shift key (or control key) depressed. When you click the play or display button, all the selected tunes will be converted to midi files or a postscript file.
Other bindings: the arrow, page up/down, allow you to scroll up and down the table of contents. In addition the p key or  will play the current selection and the d key will display this selection.
When you right click any tune in the table of contents list box, a short menu (play, display, summary) will pop up. Clicking on play is equivalent to clicking on the speaker icon in the top menu array. A MIDI file of that tune will be created and played. Clicking on the display menu item, is equivalent to clicking on the printer icon in the top menu array. A postscript file will be created for the particular tune and this file will be displayed on the screen. Clicking on the summary menu item, will display the header items of that tune in a separate window called summary. If you want the entire tune shown then set 'summary_enabled' to 2 in runabc.ini.
If you click the Play selection button (which has a speaker icon), the program will convert the specific tunes to a midi files, store them in a specific directory (by default tmp in your current directory) and then attempt to play these midi files using the midi player that you had designated in the configuration property sheet. Any error or warning messages reported by abc2midi can be viewed by clicking the button labeled Console. (The Console button appears as a rectangular box with a blue bar at the top.) Note abc2midi is more stringent than abc2ps in the use of the
P: field. The
P: field has sometimes been used to put additional annotation rather than designate the parts and how they are repeated.
