ACCS —the most advanced and comprehensive accidental editor ever created!
The fundamental function of this program is to arrange accidentals before chords. This may seem like a simple feat, but it really isn't...
The goal of any good accidental-stacking method is to produce visually-pleasing arrangements that can be immediately apprehended. The problem is that most stacking algorithms make assumptions about the shapes of accidentals and whether 2 accidentals can fit one on top of the other. With that assumption in place, any such algorithm is actually doomed to fail.
You can't know whether a given configuration of accidentals will work unless you attempt to make the accidentals in question fit the proposed pattern!
ACCS.EXE divides the problem of arranging accidentals into two halves:
With that information, ACCSKERN is able to determine at what point two accidentals paired at a given interval will touch. When will a flat placed a second below a sharp touch the sharp? At what point will the same flat placed a third below a sharp touch the sharp? And likewise for a fourth below the sharp? And so on...
The program allows you to specify the horizontal and vertical clearance between pairs of accidentals at different intervals—in other words, you specify how close is too close. And this measure of "closeness" can be a blanket setting for all accidentals, or you can specify different "closeness" settings for specific accidentals.
The result is an enormous table—over 3,000 entries, in fact—which you may edit as you see fit. If you don't like the results that ACCSKERN created, even with your directions, you may edit the table any way you wish.
This table is fed into the ACCS.EXE program at program execution, and thus gives the program the precise kerning information about your accidental set that is required for outstanding results.
Most notation books disagree as to how accidentals should be arranged. The one point of agreement is that you should start with the top accidental and work your way down from there.
ACCS's philosophy is that the clearest solution is one in which the arrangement produces a set of interwoven columns and rows. For example, a set of eight accidentals might fit a pattern like this:
#_#_#
_#_#_
#_#_#
Here we have 3 rows: a row of 3 on top, a row of 2 in the middle, and a row of 3 on the bottom.
Here we also have 5 columns: (working from right to left) a column of 2 followed by a column of 1 (yes, 1 accidental can stand for a column), a column of 2, a column of 1, and another column of 2.
But the same accidentals might fit a pattern like this:
#_#
_#_
#_#
_#_
#_#
Here we have 5 rows: (from the top down) 2 - 1 - 2 - 1 - 2
And we have 3 columns: (from right to left) 3 - 2 - 3
If the accidentals in question fit both patterns, which one do we choose? The second pattern takes less horizontal space, and thus it is chosen. (The pattern with the fewest number of columns is generally the best choice.)
For a chord of any number of accidentals, ACCS has at its disposal every possible arrangement of a given number of accidentals. Armed with complete and pixel-accurate kerning information, ACCS can determine which of those arrangements will acommodate the accidentals in question, and then can select the one that consumes the least horizontal space.
ACCS gives the user many controls over this:
ACCS has many advanced capabilities:
And then there are these functions:
ACCS is a 32-bit Console Application, which means that it requires Win95 or higher MicroSoft Windows Operating System to execute, but it employs a DOS-like text-based interface (like PAGE, JUST, or SCORLAS.)
Use ACCS before LJ'ing, and you may never need to edit accidentals manually ever again!
Left-click to view, or right-click to download ACCS-SAMPLES.PDF, a PDF showing the results of ACCS of chords ranging from the mundane to the complex!
Download order form for ACCS!
Back to home page of Brodhead Music Typography
For more information, write to Tom Brodhead at
Since 14 July 2007, you are visitor #
This page last updated 14 July 2007
Webpage Copyright © 2001–2007 Thomas Brodhead