Quickstart: Thanks a lot for installing the Perfect Layout plug-in.
How to Use Perfect Layout
PLEASE READ THIS TUTORIAL.If you use the plug-in for the first time and are curious about how your old Finale® documents will look with the plug-in, don't grab a manually optimized document from your archive, but take a raw and unoptimized older version of the document instead. If you don't archive these, you may find some in your Finale® automatic backup folder.Already manually optimized documents will sure get some optimizations through the plug-in, but other manual movements might be removed or solved differently.
THERE ARE CRITICAL OPTIONS TO CHOOSE THAT THE PLUGIN CANNOT CHECK ITSELF.
The power and time-saving element of Perfect Layout lies in processing completely unoptimized documents.
We recommend testing the plug-in on the first run with the "Perfect Layout demo file" as this is an unoptimized, short and complex test file which also creates all necessary font metrics files.By default it is stored in
c:\program files (x86)\Elbsound.studio\Perfect Layout\Docs and Test Files\ES Perfect Layout Demo.musx
Manual and User Dialog Settings The complete manual which includes all web pages is available here. There are also some international editions of the manual.
Note: These were translated automatically from the English version and only give a rough translation of the full content. But hopefully it is fully understable.
If you have any suggestions for "automatic improvements" (like word ABC is always translated wrong and could be easily replaced by another word), please let us know.
English PDF or as web page
French PDF or as web page
German PDF or as web page
Italian PDF or as web page
Polish PDF or as web page
Spanish PDF or as web page
User Dialog TabsYou can click on the tabs (see red mark) to navigate through this online help system.
If you work in a different metrics system, the plug-in will show converted values according to your selected system.
Unfortunately these values cannot directly be read through the plug-in, so you may have to adjust them manually.
You can ignore this tab if ...
(1) ... your document uses Finale's default slur contour settings (this is usually the case)
(2) ... your score doesn't use shape articulations for trills (e.g. a trill combined with an accidental as a shape articulation)
If you haven't changed these settings - most users probably haven't -, skip this step.Unfortunately the Perfect Layout plugin currently can't read these values automatically.
To get the settings open SmartShape->Slur Contour and write down the Height and Inset settings for all four span widths (short, mediumm, long, extra long).
Then run the plug-in and enter these values by clicking on the "Enter Slur Settings from SmartShape->Slur Contour" button.
These values will automatically be saved in your plug-in .ini file and only need to be entered again when they change.
In most cases users don't have to change anything here.
These articulations currently are not detected automatically.
If you don't use shape articulations, skip this step and just leave the fields as they are.
Optimize Finale's Defaults
The plug-in can update Finale's settings for slurs, ties, hairpins, tuplets and spacing.
Slur values are only updated in the Smart Shape Options menu, not in the Placement or Contour menu.
These values are hard-coded in the plug-in and result from many years of Finale® expertise.
Still it's possible that they don't fit your personal needs, so you can switch off these settings individually. As JW Lua doesn't allow slur modification, it's also possible that some slurs still have little collisions with notes as there are no all-purpose settings for slurs.
For better readability it is recommended to have different values for each type. The plug-in will apply these thicknesses:
Stem Line: 2,65 EVPU
Staff Line: 2,96 EVPU
Ledger Line: 4,00 EVPU
(Thin) Bar Line: 3,82 EVPU
For better quality the plug-in will also set the Curves Resolution to 127 (from Document Options->Lines and Curves).
The "Double barline preceding key changes" feature will also be enabled automatically.
It's currently not implemented to switch off these features.
The default placement for tuplets is the stem side.
But there are situations where it makes more sense to place them via the "Above" or "Below" method.
In order not to overwrite these above/below tuplets with the default settings, the option "Copy Default Settings Also on Explicit 'Above' or 'Below' Tuplets" is unchecked by default.
For better readability tuplets on extreme low or high notes can get their brackets on the note side (instead of the stem side).
Check "Put Tuplet Brackets on Notes Above Staff Position X on Top" for that feature. X is the minimum staff position where this feature is activated:
1 means the first ledger line, 2 the space between the first and the second ledger line, 3 the second ledger line and so on.
By default this option is selected and affects notes on the second ledger line and above.
This feature always works on tuplets above and below the staff.
Left: Original, Right: Tuplets on extreme notes are put on the note side and get brackets (X=3)
If many alternating, complex or ambiguous time signatures are used, it is also possible to turn off "Optimize Rests".
Consolidated rests (i.e. rests in multiple layers that are merged to one visible rest) are by default excluded from the rest optimization algorithm (Option: "Exclude Consolidated Rests from Rest Optimization").
The "Force consolidated rests" option creates consolidated rests if non-consolidated rests are in the score. This is especially interesting on MusicXML imported documents as they don't conserve Finale's consolidated rests feature. If the plug-in detects a MusicXML imported document, this feature is automatically activated in the user dialog and needs to be deactivated manually, if unwanted.
You can force a full respacing by checking "Always Apply Music (Re-)Spacing to Full Document Before Processing".
This option makes sense if the part layout is still "raw" and multi-measure rests haven't been created either.
If you have applied music spacing to the document or if "Automatic Music Spacing" in Finale's preferences had been switched on (it must be switched off before running the plugin! See here), you don't need to check this option.
By default it's unchecked.
If chord symbols are found and there is at least one measure with three chords or an overlapping of chords is very likely (e.g. chords at end of measure or wide chord suffices), a (re-)spacing is always performed, when the option "Always Respace If Chords Found" is selected.
When the spacing settings are optimized, a (Re-)spacing is only applied to the document if "Force Full Document Respace If Major Spacing Settings Change" is checked.
It is selected by default.
Other situations where the spacing may change are described in the overview.
The baseline position is the vertical offset from the middle of the staff lines.
This will update the placement and alignment of all existing expressions. Expressions from other categories will be corrected, so that they stay at the original position.
While the "Below Staff Baseline Position" affects expressive text and dynamics expressions, the "Above Staff Baseline" mainly affects tempo marks, rehearsal marks and tempo alterations.
For the Perfect Layout plugin the baseline always means the closest position to the staff line. If there is a collision, the expression will be horizontally or vertically shifted, but never closer to the staff.
There is only one exception: dynamics are shifted slightly closer to the staff, if the "Shift Dyn. Expressions Up If Lowest Element is Staff Line" is selected in the "Express." tab.
Usually the plug-in first removes any manual adjustments, then looks for collisions and, should it detect any, moves the expression away from the colliding object.
If the horizontal offsets of the expressions are huge, then it is unlikely that a clear zero position was intended by the engraver. In this case manual (horizontal) adjustments are not removed.
The thresholds for "huge offsets" can be set in "Reset Horizontal Position of Dynamics Until Maximum Horizontal Offset" and "dito., Max. Horizontal Resset Offset for Whole or Dotted Notes".
Dynamic expressions in staves with lyrics are very often placed above the staff, these are currently not taken into account for alignment.
The option "Reset Vertical Position of Dynamics and Expressive Text on Notes With Lyrics" is switched off by default. If selected, dynamics above the staff will suddenly appear below the staff line if they were taken from the default dynamics category and it is still set to below baseline.
Some expressions usually only appear in the parts, to not mess up the conductor's score. These expressions must be placed in a user-defined category containing the keywords defined in "Hide Expressions in Score with Category Keyword(s)".
E.g. if you name the expression category "In Parts Only" and enter the keywords "part,only", then the plug-in will hide all expressions from categories with names that includes these keywords.
Image 1: Category "In Parts Only"
It is highly recommended to keep the option "Reset Vertical Position of Note Articulations, Fermatas, Bows and Ornaments" selected.
Only recognized articulations are reset, i.e. shape articulations or articulations with unknown music symbols are not reset, except for those shape articulations that are explicitly defined in the Perfect Layout settings (e.g. up/down bow shape articulation).
Articulations that are usually aligned manually (e.g. arpeggio) are not reset by default (see option "Also on 'Position: Manually' Articulations").
Certain articulations can be automatically hidden in the score. This might make sense for bow marks, breath mark commas or certain shape articulations (e.g. brass fingering).
These can be selected in "Hide These Articulations in Score Only".
By default, only bow marks are selected.
This helps detecting wrong notes in playback or even wrong ties.
If the tie was correct, it also looked correct without the extra accidental. But if the accidental is revealed by the plugin, it will look wrong.
This option is more important if you work with playback. It is not recommended to use it, if you work without playback.
Image 2: Left: Original, Right: Hidden accidental revealed
By default manual slur adjustments are removed, while manual curve adjustments are not because they are very often "hand-made" to illustrate a more complex behaviour.
The option "Move Single Pitch Notes on One-Line Percussion Staves Onto Staff Line" is required for 1-line percussion staves where the notes are not centered on the staff line.This occurs from time to time in older documents or when imported through MusicXML.
This feature only becomes active when only one pitch ("Single pitch") is used throughout the staff. It will not do anything for example to two-note conga or bongo staves.
But there are, of course, scenarios where this option should better be switched off (especially in contemporary notation).
Image 3: Left: Original, Right: Start position set to horizontal offset 0.
Image 4: Left: Original, Right: After vertical reset
Image 5: Left: Original, Right: Added Brackets
Another tuplet feature which can't be unselected is automatic secondary beam break insertion as in image 6:
Image 6: Left: Original, Right: Added secondary beam break
"Force Tuplet Brackets on Unsymmetrics Tuplets" adds tuplet brackets to unsymmetrics tuplets (i.e. if the duration of the notes is different from left to right than from right to left).In these cases it might be difficult to decipher the reference duration of the tuplet.
Image 7: Left: Original, Right: Added brackets only to unsymmetric tuplet to not mix it up with a 16th note tuplet
"Increase Tuplet Number If Max. Note Duration Is Shorter" changes the tuplet number for better readability if it doesn't match the note durations.I.e. six 16th notes with a "3" tuplet number would be transformed into a "6".
Image 8: Left: A five 8th note tuplet with 16th notes becomes a ten 16th notes tuplet
Note: In the Silver edition of the plug-in these three options are on the "Tuplets" tab.
If this option is unchecked, the multi-measure rest style will not be changed.
The number of empty bars for hiding/showing measure ranges can be set twice:
a.) Absolute: "Always Hide Measure Range If Less Than X MMRest Bars". By default it's set to 3.
b.) Relative: "Hide Measure Range If Less than X Adjacent MMRest bars" also takes into account measures before and after this multi-measure rest. By default this is set to 10.
For example two multi-measure rests of 3 and 8 measures each will show the range (3+8=11), but a single 8 measure MMRest will not show the range (see image 1).
The measure range can be activated by selecting "Show Measure Number Range on MM Rests", but it currently can't be hidden if it is already visible.
Image 1: Adaptive Measure Range Visibility on Multi-Measure Rests: Visible if at least 10 adjacent measures and after double bar lines.
The sub-option "dito., But Only If No Notes Follow Until End" allows to hide tempo alterations at the end of the file if no notes follow until end. This is usually "safe" for the player.
This sub-option is activated by default.
Image 2: Some Multi-Measure Rest Settings
Alternatively Finale splits the multi-measure rest and adds an extra empty measure with the tempo mark.While this may be more clear in some cases, it might be easier to read if the symbol was visible at the end of the multi-measure rest (see image 3 last line).To activate this feature select "Show Right-Aligned Tempo Marks on MMRests".
Make sure the expressions are right-aligned, attached near the end of the measure and are set to "Break MM Rest".
Image 3: Tempo Marks at the End of Multi-Measure Rests
The Perfect Layout plugin offers to show the chords on all staves in the score, or on one or on two (Option: "Show Chords in Score Only on Staff").
This only affects the score. In the parts all chord symbols will be visible.
By default Finale® chords have a horizontal offset of 12 EVPU. This can be changed to any value ("Set All Chords to Horizontal Pos X").Changing this value might improve the look on handwritten/jazz fonts which otherwise might have an odd offset.
If the part doesn't have a page text object with the part name, the group name will not be hidden.
The plugin makes sure that these groups don't interfere with other groups or other group brackets and in doubt it won't add a bracket.
It usually looks better if only placed on the top staff or only few staves. The "Show Repeat Brackets and Texts" option solves this.
a.) Align each expressions individually (closest to the staff)
b.) Align all expressions per system on the best fitting line (above all other objects)
c.) Align all text expressions on the best fitting line, but keep rehearsal marks close to the staff (Option "Per System/Skip Rehearsal Marks")
This option can selected differently for the score and the parts.
Individual alignment gives more vertical space for other objects and works better in narrow part pages.Alignment per system is usually better readable, but requires more space.
Top (a): Individual alignment (close to the note/staff)
Middle (b): Alignment on the best fitting line
Bottom (c): Alignment of the text expressions. Rehearsal marks are close to the notes/staff.
An "Extra Vertical Collision Offset" can be set here (Default: 5 EVPU). This value is added to all vertical offsets on the expression, articulation and hairpin tab and makes it easier to generally increase the vertical distances of two objects. Don't forget to also adjust the "Below Staff Baseline Position" and/or the "Vertical Entry Offset" on the "Optimize" tab in order to adjust the general placement of dynamics and expressive text.
The Silver edition allows six predefined values (-3, 0, 5, 10, 15 or 20 EVPU), while the Gold edition is fully flexible.
Image 2: Extra Vertical Collision Offset: -2, +5 and +15 EVPU
The "Harmonize Offsets and Aligment of Rehearsal and Tempo Marks" option harmonizes the offsets in the Rehearsal Marks, Tempo Marks and Tempo Alteration categories which improves their horizontal and vertical alignment.
The overall vertical alignment of hairpins, dynamics and expressive text on a system is done in a complex algorithm which takes into account many vertical and horizontal positions and distances and tries to create a visually balanced and pleasing look.
The options for the algorithm are:
a.) Vertically Align Dynamic Expressions Only If Connected by Hairpins: self-explanatory (see image 3 below)
b.) Smoothen Vertical Alignment of Hairpins and Dynamic Expressions: If selected, the vertical alignment algorithm is run twice. This usually leads to more hairpins and dynamics being on the same vertical position and thus look smoother.
In the parts where there is usually more vertical space available and where readability is much improved by dynamics and hairpins being on the same vertical position, it makes sense to align close dynamics also if unconnected and to smoothen the vertical alignment.
In the score these options usually are selected the other way round. These are also the default settings.
Single dynamics on very low notes are usually not taken into account for overall vertical alignment (see the fff and the ff in image 2 above).
Top: All dynamics are aligned, also if unconnected.
Bottom: Only those dynamics are aligned that are connected by a hairpin.
The Perfect Layout offers vertically staff-centered alignment of dynamics and hairpins in combination with automatic best staff distance calculation.
To activate this feature check "Center Dynamics and Hairpins Between Two-Staff Groups".
The feature is still in beta state, but already delivers very good results most of the time - even if there is not much vertical space available.
Don't forget to uncheck "Hide Measure Numbers" in the rehearsal mark expression to actually see measure numbers next to rehearsal marks.
To fine-tune the placement of measure numbers, you can also change the horizontal and vertical offsets at system start manually. By default these values are created automatically ("Automatically Set Measure Number Offsets at Start of System").
To avoid collisions with group brackets, you can check "Extra Vertical Offset for Curved Group Brackets". It moves measure numbers on top of a group bracket slightly upwards and below the bracket slightly downwards.
Image 4: Extra vertical offset for curved group brackets
In general it is recommended to use narrow fonts for measure numbers at system start (e.g. Arial Narrow) - especially when the piece has more than 100 measures (i.e. 3 digits).
Other recommended fonts for measure numbers are available here: serif and sans serif fonts.
Here are some of the options:
1: Reh.Mark: Left Edge, Left-Aligned / Measure Number: Left Edge, Left-Aligned, Above
2: Reh.Mark: Left Edge, Centered / Measure Number: Centered over Clef
3: Reh.Mark: Centered over Clef / Measure Number: Left Edge, Right-Aligned, Below
4: Reh.Mark: Centered over Time-Signature / Measure Number: Centered over Clef
Other options are "At Music Start" and "After Time Signature".
Unfortunately the JW Lua plug-in interface doesn't support creating new staff baselines for lyrics.
So if a Finale document doesn't have any manually adjusted staff baseline for lyrics, the alignment won't work.
Here is the description what you have to do before running the plug-in.
The available distance options are:
Vertical Distance to Lowest Note
Vertical Distance Between Multiple Lyrics Lines
Extra Distance to Bottom Staff Line (if all notes are only above the bottom staff line)
The lyrics alignment is rather limited. It only takes into account the note bottom positions (including articulation) and fixed offset if a note has a slur.The exact slur data is currently not taken into account which might lead to collisions.
Image 6: Automatic Multi-Verse Alignment with the Perfect Layout Plugin
Tuplet brackets on lyric staves are automatically moved on top of the staff to avoid collisions (measure 1).
In the last measure the slur collision is removed, but the distance to the slur is slightly too small which is a result of the fixed slur offset. This will be fixed in a future release.
Layers and Cues
The option "Remove Unnecessary Use of Layers 2-4" is checked by default.
If no cue notes were found, then these options ("Dedicated Cue Note/Lyrics Layer") cannot be set.
The plug-in processes cue texts created with Finale's "Add Cue Notes" plug-in like "Fl." or "Trb.1" if they are placed in a dedicated expression category. To detect this expression category it looks if the category names include the keyword listed in the option "Keyword for Categories with Cue Expressions" (set to "cue" by default).
Image 1: Cue expressions category
If the option "Scale Cue Expression with Note Entry" is selected, then the cue expression will get be reduced like the note entry (activated by default).
The same goes for Finale®'s other default categories:
1.) Dynamics/Niente Circle: Keep dynamics only in a category with the keyword "Dynamics" (or Dynamik or dynamiques or dinamiche from the international editions of Finale). It's also possible to combine words like "Percussion dynamics" or "Above Staff Dynamics" - as long as the main keyword is found.
2.) Expressive Text: Expressive text expressions are partially taken into account in alignment. Especially in combination with dynamics or hairpins on the same measure position the expression will be aligned horizontally and/or vertically.
3.) Rehearsal Marks/Tempo Marks/Tempo Alterations: Elements in these categories are taken into account for vertical and horizontal alignment above the staff. Rehearsal Marks can also be placed at different positions at the beginning of a staff (see alignment tab).
4.) Technique Text: Expressions in this category are not vertically/horizontally aligned!
5.) "Cue"-Keyword (user-defined): see Layer/Cues tab.
6.) "In Parts Only"-Keyword (user-defined): see Reset/Hide tab.
If you use expressions with numbers only, the plug-in can move them into the Rehearsal Marks category, if these options are checked.Numbers with rectangular expressions can be automatically moved (Option "Move Number Expressions with Non-Circular Enclosure to Rehearsal Mark Category"). Numbers with circular enclosures are typically fingerings and will not be moved automatically.
Measure number expressions can also be moved automatically: the plug-in compares the expression number with the measure that the expression is used in and if it fits, it will be moved (Option "Move Measure Number Expressions to Rehearsal Marks Category").
For best alignment use as less expressions in one measure position as possible.
E.g. "più f" or "pp sub." should be a single expression. The horizontal alignment (not centered as in standard dynamics, but left- or right-aligned) is automatically applied in these cases.
The same goes for tempo marks and rehearsal texts:
If you have for example the four above staff lines "M" (=Letter M), "Andante", "q=100" and "Verse" don't use four expressions on top of each other, but only two: use the rehearsal mark M plus a single expression for the text.
The Perfect Layout plug-in has a few cases where multiple expressions are aligned correctly, but it becomes difficult if it is more than two of the same type.
If you have imported a document through MusicXML, it performs an automatic category assignment if the whole score is processed with the Perfect Layout plug-in:If the plug-in detects typical keywords, it suggests to move the expressions to the corresponding category.
This works very good with dynamic expressions and also with a few standard expressions from the other categories. But especially if you use less common or foreign texts, the automatic category detection does not work.In this case it is important that you move the expressions to the correct category before applying the plug-in. Otherwise not all features will work.
Usually the opaque feature is not required for rehearsal marks after applying Perfect Layout, as the plug-in will remove all collisions anyway.Nevertheless it's possible to fine-tune this feature by the selection list which includes
"Remove If Most Expressions Are Opaque" and
To optimize the look some dynamic symbols (mf, sf, rf, f) can get reduced offsets which better fits their skyline.
Image 1a (Left) Ouside Slur Articulation, 1b (Right) Inside Slur Articulation
On tuplet brackets it's possible to automatically place ornament articulations outside tuplet brackets (Option: "Place Ornaments Ouside Tuplet Brackets").
While standard note articulations (staccato, accent, dot, tenuto, etc.) are automatically placed inside the tuplet bracket, fermatas and bow marks are automatically placed outside.
Image 2: Before and after the Perfect Layout plug-in (ornaments outside tuplet brackets)
You can select a connectiona) to measure position 0 in the next measure or
b) to the end of the previous measure.
Solution a) is optimized for playback, but has the drawback that hairpins over systems can't be separated from the end of system barline.
Solution b) is visually optimized, but doesn't work fully optimized with Finale's cresc./diminuendo playback.
In solution b) the hairpins ALWAYS end before the barline.
If solution a) is selected, it's possible to specify where the hairpins should visually end: to avoid/allow collisions with the barline.
This selection can be made for the parts, for the score and for piano (two staff) groups.
Image 1 lists a view options.
Image 1: The hairpin connection options
Option: "Move Hairpins on Dynamics with Express. Text After Dynamics/After Expressive Text".
Expressive text expressions that start somewhere in the middle of the hairpin are moved below the hairpin (e.g. "molto" in image 3).
Image 2: The hairpin connection options
Image 3: Hairpin and "molto" text (with end hairpin before barline option)
Image 4: A gap between connected or overlapping hairpins is automatically inserted (width: 33 EVPU by default)
(Note: the niente circle has been automatically shifted to the end of the note)
It's also possible to only keep it, if it is connected to a final dynamic expression (image 5c).
The same option is available for start notes.
Image 5: Hairpins and rests at the end
For niente hairpins create an expression in the Dynamics category and use an O, 0, o, ° from a text font or an 0 or o from any of the supported music fonts as the symbol.Make sure to activate the "Enclosure" property. You don't need to fine-tune the enclosure - the plug-in will do this for you (but unfortunately JW Lua doesn't allow the activation of the Enclosure field, so this needs to be done manually).The opaque enclosure is required to make sure that there is no tip of the hairpin visible after the niente.
Instead of the "o" symbol you can also use the music symbol "n" or the text "niente" or "quasi niente".
For exponential hairpins the symbols from the November2 and the DSE Music Symbols fonts are supported. Again create an expression with these symbols and place it in the Dynamics category.
This video shows how it looks in the score:
Video: Exponential and Niente Hairpins
In contemporary notation however there may be situations where hairpins should occur in "empty" measures, especially if it's a graphical or other note-less notation.In this case you should uncheck "Shorten Right End of Hairpins If They End On An Empty Measure".
In the Silver Edition this option is on the "Alignment" tab.
Image 6: Hairpin start and end points after applying the plug-in (with end hairpin before barline option)
If the start/end of the hairpin is further away from the next note, it depends on the context whether the plug-in snaps the hairpin to the closest note.Only if the plug-in is sure that this is what was originally intended and if "Allow Snap To Closest Note, Rest or End of Measure" is checked, then it might snap.
The plug-in takes into account the horizontal distance between the objects, dynamics and also hairpins on other staves in the same measure, so that, if possible, all hairpin are treated equally.
In doubt the hairpin will not be changed. So when entering the hairpin, it is best to not create ambiguous layouts as in image 7.
Image 7: Where should the hairpin end on the left image? On beat 3, 4 or even on beat 1 of the next measure?
On the right image it's obvious.
Note: Finale has a problem with the end of the closed side of a hairpin on screen which doesn't match the end position of the hairpin in print (PDF or paper).The plug-in takes this into account and always calculates the offsets for print only. I.e. should there still be a collision of a hairpin with a dynamic on-screen, do a print to PDF or paper first to check if it isn't that bug.
Only in very rare cases the plug-in doesn't solve this bug.
a) the vertical position of a hairpin in relation to a connected dynamic is set in "Center of Dyn. Expression" (13 EVPU by default on a hairpin opening width of 28 EVPU).
Image 8: Vertical relation of hairpin and dynamics
b) On very low notes it's possible to have hairpins closer to slurs and ties to save space (Option: "Slur/Tie (Very Low Notes)").
The threshold for very low notes is set in the field below ("Very Low Note Threshold", 80 EVPU by default, i.e. ca. 3 ledger lines below the staff).
Image 9: Hairpins on very low notes can have smaller distances
Image 1a (Left): Original; 1b (Right): Slur Prolongation
Case 1b) is standard notation in most cases. Exceptions which should not be prolonged are for example string staves with very many tied notes or guitar staves where the legato slur might be mixed up with a hammer-on/pull-off slur.These exceptions are deactivated by default.
Notes tied over many measures or with many ties should not be prolonged either. The default maximum span is three measures or three ties (Option: "Only If Tied Measure Span and Number of Ties is Less or Equal than X Measures").
Image 2a (Left): Original; 2b (Right): Open Tie Removed
Usually glissandi are note-attached smartshapes or tab slides.
By selecting "Handle Solid Lines as Glissando" or "Handle Dashed Lines As Glissando" it's also possible to use measure-attached smartshapes as glissandi.
As this option is unselected by default, it's not available in the Silver edition.
Note: If selected, the algorithm currently assumes that all solid and/or dashed lines are glissandi. So use with caution.
Otherwise for example dashed crescendo lines might be turned into a vertical glissando line.
Measure Counting Measure counting expressions are shown by default on one-bar repeat and slash style measures if there are at least three adjacent measures of the same style (see image 2).Repeat brackets are automatically taken into account (see image 1). In second endings the counting restarts by 1.You can select to show them on "All Staves" or on "Percussion Staves Only".
It's also possible to show the numbers only every xth measure.
The minimum number of repeat/slash measures to show the measure counting can also be set in "Minimum Number of Repeat/Slash Measures to Show Counting".
Measure counting can be hidden in the score ("Show Measure Counting Expressions in Score"). They are hidden by default.
Or measure counting can be deactivated completely (Uncheck "Add Measure Counting Expressions").
In the first measure of a new counting region, you can additionally show the range. ("Show Measure Counting Range in First Measure").
Image 1: Slash measure counting
Image 2: One-bar repeat measure counting
This algorithm is currently only applied to the score (not to the parts). But if the score actually is a part (i.e. a single staff), then it will also be applied, but in a less sophisticated way (full page span and non-collision only, but not fully visually balanced).
Porting this function to the parts will be a major task for future updates.
Image 1: The score balancing algorithm on an overstuffed page
The algorithm works on overstuffed pages as well as on pages with lots of free space.The plug-in starts by creating the maximum condensed score and then inserts space for a good visual balance.
If there is way too much space, it won't stretch the page until the bottom page margin, but keep a portion free at the bottom of the page.
In general you should always get good results with the default score balancing settings of the plug-in. Should you not be happy with the result or would like to have access to more spacing parameters which are currently hidden to the user, please contact our support team: we might fine-tune our default settings for the future.
The current options for vertical spacing are:
a.) Max. Distance between Staves (Default: 470 EVPU)
Usually you will not get this distance between two staves as probably your page will not have that much space. But in case that there is so much space it will be limited to 470 EVPUs, unless only "a bit more" is required to fill the full page.
b.) Standard Distance Between Two-Staff Groups (Default: 280 EVPU)
If there is for example a piano part on the staff system, it should not have a distance of 470 EVPU as the other single staves. Instead they should be aligned a bit tighter. 280 EVPU has proved to be a good value for typical piano or harp staves.
c.) Multiple systems on a page are automatically spaced too. The extra space that is added between staves and/or systems can be controlled via the "Staff/System Distance" slider.The more you move the slider to the right the more space is inserted between staff systems.
d.)The extra space for groups within a system is controlled via the "Extra Distance Before/After Staff Groups" slider.
The more you move the slider to the right the more extra space is inserted before and after groups.
By default these sliders are set to auto-detection: an algorithm automatically sets good default spacing values for standard score types like single staff, piano, piano + solo, duo, piano + duo, small ensemble or large ensemble.
e.) Reserve Distance Between Top and Bottom System Margin (Default: 120 EVPU)
After the score balancing algorithm the bottom system margin will be reduced by this value to allow easy manual shifting of the systems if still necessary.
f.) Min. Vertical Distance on Reflow Systems Across Pages (Default: 14 EVPU)
If "Reflow Systems Across Pages" is activated in the Finale preferences, Perfect Layout will re-arrange the systems across the pages and improve the layout. This "Min. Vertical Distance" value defines the minimum distance between two systems.Usually you will never encounter this exact distance between systems in the end, as there is nearly always more space available on a page.
This is more a guide value that defines the general density of a page: the higher the value, the less number of systems will appear on a page.
E.g. the value 0 EVPU creates very dense parts, while a value of 50-70 EVPU generates a very loose vertical spacing.
Note: The whole staff/system spacing algorithm is a very complex system which takes into account many parameters for a good visual balance, so we found these sliders to be a good and easy-to-use compromise.
Alignment at the page bottom:
You can select different alignment techniques for the bottom of the page. In this case alignment means "snap an element to the bottom page margin". That is also why it is important to set the bottom page margin to your needs before running the Perfect Layout plug-in.
The option "Fix Staff System Bottom Margin (Auto-Detect Lowest)" looks at all score pages, finds the lowest element at the bottom staff and uses the distance of this element to the bottom staff line as the "fix bottom margin".This guarantees that all staff lines of the bottom staff system align over all pages and that no element goes below the bottom page margin line. This default option works best in most cases.
If the bottom staff has very different distances to the bottom staff line (e.g. in modern piano works), it may work better to select the "Lowest Element On Bottom Staff" algorithm which aligns the lowest elements on all pages (and not the bottom staff line).
Both options are combined in the default option "Auto-Detect (Fix Staff System Bottom Margin or Lowest Element)": if the bottom margin is huge and very different on each page (e.g. contemporary piano scores), the "Lowest Element" algorithm is select, otherwise the "Fix Staff System Bottom Margin (Auto-Detect Lowest)".
Other options are:
"Fix Staff System Bottom Margin": same as above, but the distance is not auto-detected and can be entered manually.
"Bottom Staff Line": this option aligns the bottom staff line with the bottom page margin which means that all elements below the bottom staff line appear below the bottom page margin. It's the same as a "Fix Staff System Bottom Margin" with a value of 0 EVPU.
Note: the score balancing algorithm needs to take into account each Finale object (except page texts). Unfortunately JW Lua doesn't support all object properties yet, so the algorithm has some minor restrictions.
Currently unsupported or only partially supported objects are for example measure text objexts, graphic objects, chord suffix heights, mid-measure clefs, glissando lines, enclosed objects, staff names, lyrics baselines, complex cross staff notes, shape articulations, ledger lines, modified ties and smartshapes that span more then two systems.
To still support some of these objects dummy values are used which already lead to better results.
If the algorithm detects this word at the beginning of a system, it will move the system down by the given value (120 EVPUs by default). If there is not enough space on the page, the score balancing algorithm will probably decrease the distance.
IT IS NOT RECOMMENDED THOUGH! Especially if one doesn't use the Perfect Layout plug-in on a daily basis, it is very likely that one forgets to do some of the preparations before running the plug-in.
If you have bypassed the main dialog, you can only reset it by deleting its .ini-file. It is located in the same folder as the Finale® configuration files (typically C:\Users\USERNAME\AppData\Roaming\MakeMusic\Finale) and is called "JALAYOUG.ini". Simply delete the JALAYOUG.ini file and restart the plug-in. Then the main dialog will reappear.
If you don't want to see the progress bar, you can also kill the two AutoHotKey tasks (AutoHotKey Unicode 64-bit and AutoHotKey Unicode 64-bit (2)) in Window's task manager.
Attention: You have to maximize the Finale® window manaully if you kill the tasks and probably you won't notice when the plug-in has finished.
Image 1: The two AutoHotKey tasks created from within the Perfect Layout plug-in
Usually you don't have to consult this log file. But it may be interesting if you have a corrupt Finale® file and try to repair it with the Perfect Layout plug-in or if you are new to the plug-in and want learn a bit more of what it does.
The option "Open Log File After Processing" is unselected by default.
More about the log file can be found in the FAQ.
You can also check manually by clicking the "Check for Updates Now!" button.
Loading and Saving the configurationThe plug-in always loads the last used settings when it starts and saves the current settings when the dialog is closed with "Ok".
If you click on "Cancel" instead, the last saved settings file remains unchanged.
To restore the factory settings, select "Factory Settings" at the bottom of the dialog and click on "Load".
To reload the last saved settings (e.g. if you have changed some settings, but now have changed your mind), select "Last Saved Settings" and click on "Load".
To load or save your own settings, select "User File" and click on "Load" or "Save as".
Other Features More features of the Perfect Layout plug-in are listed in the Overview section.
As these are so basic for every music score, they can't be switched off.
Image 1: EXCLUDE in the description text
(MacOS is not supported in the first release, but is to be supported in the next release)
Make sure to have the "Configuration Files" folder set to Finale®'s default "Configuration Files" or "Konfigurationsdateien" (German version) as the Perfect Layout plug-in doesn't detect other configuration folders at the moment.
This value can be set in Edit->Preferences->Folders->Configuration Files.
The user won't see JW Lua when using the Perfect Layout.
It appears in Finale's plug-in folder and everything is installed automatically with the installer.
Image 6: After the installation the plug-in automatically appears in Finale's Elbsound JW Lua plug-in folder.
No manual adjustments have to be made in Finale® after the installation.
The installation takes about 3-9 minutes dependent on the computer speed and the number of components installed.It is highly recommended to install all components to have access to all plug-in features.
Look for "license key" in the email.
If it is not installed, only .ttf (true type) fonts are supported.
The installation has finished when the screen says: "Click Finish to Exit the Perfect Layout Plugin Wizard." - then click on "Finish" and start Finale®.
Don't interrupt the installation process with a process kill through the task manager or a computer reset (use the "Back" button or the right top corner "x" instead). Otherwise your plug-in activation may get corrupted and you will probably have to contact our support.
Internet access is also required for updating the plug-in and for deactivating it.
The file can usually be found in C:\Program Files (x86)\Elbsound.studio\Perfect Layout.
The uninstallation process usually takes about one to five minutes.
During the uninstallation you must explicitly confirm that you also want to uninstall AutoHotKey and Node.js. Otherwise they won't be uninstalled.
By default for Finale 25 it's located at c:\program files\Finale\Plug-ins\Elbsound JW Lua.
The blackened areas are different dependent on the Finale and plug-in version.
By default it's located at c:\program files (x86)\Elbsound.studio\Perfect Layout.
The ending of the JALAYOU... files is different on the Gold/Silver editions.
For Finale 2014/2014.5 the following entries should exist:
For Finale 25 the following entry should exist:
For Finale 26 the following entry should exist:
If you open the Windows tools Regedit, it should look like this:
Image : Finale 2014.5 Registry Entry
Image 2: Finale 25 Registry Entry
You can also test if these entries exist, by opening the Windows console ("cmd") and typing:
reg query HKLM\SOFTWARE\MakeMusic\Finale\InstallPath /reg:64
reg query HKLM\SOFTWARE\WOW6432Node\MakeMusic\Finale2014.5\InstallPath /reg:32
This is how it should look for a working installation in Finale 2014.5 and Finale 25:
Image 3: Finale Registry Entries in the Windows Console
(Note: the folder names can, of course, be different on your installation. They must direct to the folder with the Finale.exe file.)
You can add these entries manually through the Windows console ("Cmd"), through "Regedit" or by re-installing Finale. For more info please contact our support.
Unfortunately this doesn't work - probably because of a problem with Windows font cache.
You need to restart Windows before reinstalling the plug-in and the Elbsound Music Font Package. Otherwise the fonts may not be registered correctly.
If you have problems with installed/uninstalled fonts, another solution is to remove the Windows font cache file (c:\windows\system32\fntcache.dat).If you delete this file and restart Windows, it will be recreated which also very often fixes font issues on Windows.
If you have a license key that allows activation on two computers, you need to make sure that you use the identical licensee name and email address in the license key dialog in the installer.You also need to make sure that your computers are in the same network and thus use the same IP address base.
This is usually only the case if you perform both installations within a short time frame as the IP address may change from time to time (dependent on your network).
If you do both installations within an hour, it usually should work. If you do them on different days, it's very likely that it won't work - but it depends on your network settings. In this case you have to uninstall the first installation, and re-install both installations within the allowed time frame again.
Make sure to first have one installation fully completed (i.e. installer finished), before you start the second installation. It doesn't work if you run the two installations at the same time.
The updater tool checks if new updates for the plug-in or its other components are available in the online repository and will automatically install them, if you wish to.You need to close all Finale® programs before updating the files.
The plug-in can automatically check if a new update is available (Option "General->Automatically Check for Plug-in Updates").To save time this check is not performed each time you run the plug-in, but only from time to time.
If you want to check it yourself, you can click the "Check for Updates Now!" button on the General settings page.
The maintenancetool.exe is also used for uninstalling the plug-in.
Here is a real-time video of the update process:
Video: How to update Perfect Layout in one minute
Interestingly online virus checkers like virustotal.com don't list a Kaspersky alert, so it may also have to do with some special user settings.
You can either avoid the update process and uninstall and re-install the new software instead, or - at your own risk - deactivate Kaspersky during the update process.
If the maintenancetool.exe has been quarantined and is no longer available, you need to reinstall the plug-in. An automatic update is not possible anymore.
a.) Use a fast PC! Recommended are overclocked PCs above 4,0 GHz. They don't need to have many cores, the plug-in (and Finale®) can only use one core. Not recommended are energy-saving variable speed laptop processors (like Intel's N4200) that operate on a very low basic frequency (e.g. 1.10 GHz): see speed comparison.
b.) Fine-tuning the plug-in settings:
If you want to experiment with the plug-in's settings on a larger score, test it on a reduced score first. Remove all linked parts and in the score keep only the first page (or the first two pages), save again with a new file name. Now experiment with the plug-in in this reduced document. This usually only takes a few seconds or at least less than a minute. If you have the right settings, load the original file and apply the plug-in again.
c.) Running the plug-in:
- Follow the "How to Use" guide and don't do any unnecessary manual adjustments before running the plug-in.
- Finale® creates linked parts by default. If you don't use them, delete the parts before running the plug-in. This will decrease the processing time about 40%.
- If you have expression libraries with more than 500 or even 1000 expressions, it is recommended to delete all unused expression definitions. (Go to "Show All" in Expression Designer dialog and then select all (!) an click on "Delete". When asked "One or more of these itemes is currently in use in the score. Are you sure you want these items removed?" click on "No". This will only remove the unused expressions.)
- If you have a really huge score at Finale's internal limit (like 29.000 frames, 150.000 entries=e.g. 60 staves with 1200 measures each plus linked parts) or apply the plug-in to a corrupted Finale file, it might be helpful to run the plug-in overnight.
- If you run the plug-in on multiple instances of Finale® at the same time (e.g. 2014, 2014.5, v25), this slows down processing slightly (ca. 10%).
- MacOS: If possible, don't use Finale 25/MacOS: the processing speed of the MacOS version of Finale 25 is considerably slower than Finale 2014, 2014.5 and v26. On Windows Finale v25 is NOT slower.
- Clear your temporary files folder from time to time (e.g. c:\windows\temp and/or c:\Users\XXXX\AppData\Local\Temp). If you have 40.000 files in your temp folder, then the plug-in becomes slower.You can also create a dedicated temporary files folder for Finale (Edit->Preferences->Folders->Temporary Files).
- If you have openend Finale® some time ago (maybe a day or even longer), the plug-in processing can be much faster if you close Finale® and restart it before running the plug-in (up to 30% faster).
- While waiting for the plug-in's results, you can do other stuff on your computer. If you have installed other versions of Finale, you can use them.
Windows 10, Laptop (from 2017, 8 GB, 1.1 GHz, N4200 CPU -> very slow):
Finale® 2014.5 JW Lua plug-in processing time: 31,6 seconds
Windows Vista, Laptop (from 2009, 3 GB, 2,5 GHz, P9500, AMD Radeon 3400):
Single-threaded benchmark: 1145
Finale® 2014.5 JW Lua plug-in processing time: 16,8 seconds
Windows 10, PC (from 2013, 32 GB, 3.3 GHz, i3960, AMD Radeon 5450):
Single-threaded benchmark: 1928
Finale® 2014.5 JW Lua plug-in processing time: 12,6 seconds
Windows 10, Laptop (from 2017, 32 GB, 4.4 GHz, i8700, NVidia GTX 1060):
Single-threaded benchmark: 2815
Finale® 2014.5 JW Lua plug-in processing time: 7,1 seconds
The processing speed for Finale® 25/Windows is the same.
Note: Finale 25/MacOS is MUCH slower than Fin2014/2014.5/MacOS.
If the plug-in had been programmed in C++ (Finale's programming language), we assume that this task would have taken less than 1 second on any of these computers.
So we had to use JW Lua, a plug-in interface for Finale® designed by Jari Williamsson which is based on the programming language Lua.JW Lua is a fantastic platform. But if the Perfect Layout plug-in had been developed directly in Jari Williamsson's Finale C++ framework, it probably would have been 20-100 times faster.
Hopefully MakeMusic will change their policy in the future, so that also the processing speed becomes "perfect".
a.) General checks which take quite some processing time are independent on the selected region (like an installed fonts check, creating font metrics files or checking for expression categories)
b.) The plug-in never only works on one measure, but also analyzes the surrounding measures and staves.
c.) The larger and more complex a score, Finale® seems to become exponentially slower.
d.) Especially the page update function takes a lot of time on large scores: it can take more than a minute - and this is called several times.
(This is also the reason why calling the plug-in on a part is much faster than calling it on a single staff in an orchestra score.)
e.) The plug-in is not yet fully optimized for sub-regions.
So processing one measure in a huge score might take more than 10 seconds, while the same measure in a small score takes less than a second.
Just restart Finale® and the plug-in will be fast again.
The first time the plug-in is applied, the estimation isn't that good as it doesn't know yet how fast the computer is.The more the plug-in is used the more exact the estimation will be as it compares each time the estimation with the resulting time and updates its factors.The larger the score, the better the estimation. For only a few selected measures, the estimation is usually not very good.
Attention: this is technique is a bit advanced, so take your time in reading this short tutorial.
There are several ways to achieve this:
1.) JW Lua has its own batch processing function.
2.) Write your own JW Lua script that loads documents (for example in one folder) and applies the plug-in.
3.) Finale Script can also call Perfect Layout as it is available in Finale's plug-in menu structure.
We will describe the first solution ("JW Lua") here.
a.) Select the correct plug-in settingsFirst you need to make sure that the correct plug-in options are selected.
You can't select different settings for each file - all will use the same settings.
So run the plug-in on a short test document (e.g. a single staff default file, so that you don't have to wait too long) and set all Perfect Layout options as you need them for the batch processing. The settings are automatically saved when you apply the plug-in and will appear again the next time you call the plug-in.
But ALSO SAVE THESE SETTINGS MANUALLY by selecting "Save As": you need to restore your settings later after the batch processing has been finished.
b.) Hide the user dialogsBatch processing means processing without any interruption through user dialogs. So you need to hide all user dialogs first.
(1) Gold Edition
In the Gold edition it's easy: go to the "General" tab and check "Bypass All Warning Dialogs", "Bypass All Plug-in Cancel Dialogs" and "Bypass Main Dialog".
JW Lua's own batch processing function doesn't save the files after processing.To have this automated check on the "General Settings" tab "Save Document Automatically After Prcoessing with 'PL' ending".This step should be done DIRECTLY AFTER you have saved all other settings with "Save as" in the previous step. Then click on "ok" to fix these settings internally (and start the plug-in).
(2) Silver Edition
In the Silver edition this feature is officially not supported, but you can hack it at your own risk:
Open the Perfect Layout settings file JALAYOUB.ini (Silver400) or JALAYOUH.ini (Silver) in your Finale configuration folder (e.g. for Finale 2014 it is c:\users\YOURNAME\appdata\roaming\MakeMusic\Finale 2014.5).Then search for the entries "BypassAllPluginCancelDialogs", "BypassAllWarningDialogs", "BypassMainDialog" and "SaveDocToPL" and set their value to "true" (instead of "false"). Then save the file.
c.) Run the batch processing1.) Open all the files that you want to have processed in Finale.
2.) Instead of calling ES Perfect Layout in Finale's plug-in menu, click on JW Lua in the same menu folder and go to the "Explorer" tab.
3.) In the tree "Menu" select ES Perfect Layout, then click on "Run Multi..." (see image 3a).
4.) In "Selected Regions" select "Always Select Full Document as a Region" (in batch processing mode the plug-in always processes the whole document).
5.) Click on "All" to select and process all files, then click on "Run" (see image 3b).
Now all files will be processed.
d.) Restore the user dialogsDelete the settings file JALAYOUB.ini (Silver400) or JALAYOUH.ini (Silver) in your Finale configuration folder (e.g. for Finale 2014 it is c:\users\YOURNAME\appdata\roaming\MakeMusic\Finale 2014.5).If the .ini file is missing, the plug-in will create a new one with the default settings.If you have made a copy of your settings file, you can also either rename it to JALAYOUB/JALAYOUH.ini or load it when you run the plug-in the next time.
Image 3a: Batch Processing with JW Lua
Image 3b: Select the files for batch processing
Finale might crash during the batch processing: we have been using batch processing on a daily basis now for three years for testing the plug-in with our ca. 11.000 Finale test documents.It's likely that after some time, a Finale crash will occur. We assume that it has to do with a missing memory garbage collection that we can't influence.This crash can occur at any time. It seems to depend on the complexity, size and number of files: the smaller the files, the more will be processed.Our experience with our own JW Lua batch processing script is that up to ca. 2500 files can be processed, if they are rather small (less than 200kB).But only very few (ca. 10-30) can be processed if they are huge (>5 MB).
If such a crash occurs, it doesn't mean that your original document can't be processed. Just remove the files that have already been processed and start the batch processing again. It will ALWAYS work like this.
The Perfect Layout plug-in creates hairpins that look correct when printed to PDF, but which might look faulty in Finale®.
Image 2 Left: The hairpin goes through the niente expressions (Finale® View).
Right: The hairpin stops below the niente expressions (PDF View).
Image 3 Left: The hairpin has a soft tip (Finale® View).
Right: The hairpin has an angular tip (PDF View).
There are however five cases where this can happen:
a.) the dynamic expressions were placed in the wrong expression category (e.g. "Miscellaneous" instead of "Dynamics")
b.) the hairpin and/or the expression are attached to other measure positions than what they visually seem to be attached to ("ambiguous assignment").
c.) the dynamics use an unsupported music font
d.) the font annotation files are missing for the music font of the dynamic expression
e.) the dynamics are applied as articulations instead of expressions
f.) the dynamics/hairpins are placed on a staff with lyrics
The first problem (a) is automatically fixed by the plug-in, if the whole document is selected in "Score View" when applying the plug-in.
The second problem (b) is automatically solved in many cases, but not in all (see image 4).
Image 4: Ambiguous assignment of hairpins and expressions: the expressions are both attached to the left note, while the hairpin's start and end points are both connnected to the right note
Problem c) can be solved by only using supported music fonts (see Supported Music Fonts).
Create the missing font annotation files to solve problem d) (Preferences->Edit->Font Annotation, then select the font and click on Auto Annotate All and then Save).
Always use expressions to apply dynamics (problem e) - never use articulations for this.
Collision removal on staves with lyrics (problem f) is more difficult and currently not implemented in Perfect Layout. Why? Because there is no standard way of solving the dynamic/hairpin/lyrics collisions.Sometimes the dynamics are placed on top of the staff (which is currently not taken into account for collision removal at all). Sometimes the dynamics are place before, below or above the notes.We plan to have an automatic solution available for version 2.0 of the plug-in. Until then you unfortunately need to solve dynamic collisions on lyrics staves on your own.
Unfortunately it's not possible to hide this window, so it might look a bit irritating at first.
The window is used for example for reading the font metrics.
Image 5: Several black window pop up during the initialization of the plug-in
However some situations were reported that involved several instances of different Finale® versions being open at the same time (Finale® 2014, 2014.5 and 25) and running several Perfect Layout plug-ins and one plug-in terminates unexpectedly.
Sometimes warning messages for missing fonts also didn't make the window reappear.
Should you notice an unexpectedly long processing time (e.g. the progress bar doesn't change for several minutes), simply maximize the Finale® window manually by clicking on the Finale® symbol in the task list at the bottom of your screen.
The advantages of JW Lua compared to the original Finale® PDK are:
- easy to learn
- easy access to all Finale® functions
- it doesn't need any other software for running the programs in Finale® (compiler, software development kit, etc.)
- simple Finale® plug-ins can be written within a few minutes
- platform compatible (MacOS/Windows)
- as the original Finale® PDK isn't available anymore to the public, this is currently the only way to develop plug-ins for Finale®.
The disadvantages are:
- it is very slow
- the programming language is limited, so operating system functions are difficult to access and make complex development difficult.
Image 6: JW Lua development window
Interface docs: http://www.finaletips.nu/frameworkref/annotated.php
JW Lua Mailing List: http://jwmusic.nu/mailman/listinfo/jwlua_jwmusic.nu
Free Plug-in Scripts: https://elbsound.studio/jw-lua-scripts.php
Image 7: JW Lua Open File
Navigate to your Finale® program folder and go to the sub-folder Plug-ins\JW Lua
(e.g. C:\Program Files\Finale25\Plug-ins\JW Lua or c:\Program Files\Finale 2014\Plug-ins\JW Lua).Then select "ES Perfect Layout (for Menu).lua" and click on "Open" ("Öffnen" in the image below).
Image 8: Select the file and click on "Open"
Start the plug-in script by clicking on Run script or press Alt-R.
Image 9: Starting the script
The major steps are called:
- Initialization (e.g. Preparation for the user dialog)
- Checking Expression Categories
- General Preparation (e.g. Font metrics creation, font availability, check for invalid or weird smart shape connections, etc.)
- Preparing and Resetting Parts (e.g. calculation of the start metrics, reset/hide/clear the start positions, MMRest reation, rest minimization)
- Processing Parts (e.g. remove collisions, vertical and horizontal alignment and do most of the other features)
- Optimizing Systems Distances (Staff and system balancing)
- Finalization (e.g. checks that no staves have disappeared or were accidentally shifted to the next page)
The progress bar is increased after each task that has been completed.
It doesn't take into account that some function take much longer than others.
For example "Processing Parts" has about 100 sub tasks: while some take only a few milliseconds, others may need a few seconds or even minutes.
As the progress bar is not connected directly to Finale® (but through AutoHotKey and some .log files), it has a delay of up to 0.5 seconds.
In Finale® 2014/2014.5 the progress bar can also show a red alert message when there is a huge probability that the file is too big for processing under 32bit. If the Perfect Layout crashes a bit later, then you need Finale® 25 to process the file with the Perfect Layout plug-in.
The plug-in has a few rules dedicated to "2-staff systems" used for example in piano, harp or accordeon notation.
But it only works if the system is detected correctly. To be detected:
a.) The two staves must be grouped (Staff->Group and Bracket->Add Bracket, will be automatically added when creating it through the Score Manager or the Document Setup Wizard)
b.) You need to either give it the proper instrument name in the score; or the proper group name; or the proper staff name or abbreviation; or a piano group bracket together with the same MIDI channel; or the proper instrument ID or playback sound (see image 10).
Make sure these are given to both staves.
If a) and any of b) is detected, the rules will apply automatically.
Image 10: Score Manager
Image 11: The left dynamic expression is not automatically centered, the right one is
The plug-in only corrects the layout, if it is very likely that this is what the engraver wanted.
In the left image it's a bit unclear, if the mf was supposed to be below the first or the second note, although it's attached to the second.
The Perfect Layout only centers the expression, if the horizontal offset is below the thresholds defined in the Reset/Hide settings of the plug-in:
a.) Reset Horizontal Position of Dynamics Until Maximum Horizontal Offset: the default value is 57 EVPU.
b.) dito., Max. Horizontal Reset Offset for Whole or Dotted Notes: the default value is 85 EVPU.
To check the current offset, right-click on the expression, select Edit Expression Assignment and look at the horizontal offset value.
(In the left image below the horizontal offset is -60 EVPU, so it was 3 EVPU above the threshold.)
However they are included in other collision detection processes: e.g. the vertical alignment of tempo marks or the vertical staff spacing takes them into account.
The same goes for tuplet numbers and alurs.
As slurs currently can't be changed through the JW Lua interface, it would only be possible to automatically shift tuplet brackets, but not to correct the slurs.
- Optimize->Always Apply Music (Re-)Spacing to Full Document Before Processing
- Optimize->Always Respace If Chords Found
from time to time (ca. every 100-1000 call of the plug-in) the measure number region preparation function crashes for a yet unknown reason.It's listed as a JW Lua bug. Should Finale® crash, please check the log file of the plug-in which can be found in the Finale® configuration folder (e.g. C:\Users\XXX\AppData\Roaming\MakeMusic\Finale 2014).
The plug-in creates two log files:
JALAOUX.log: Includes the texts for the progress bar
ES Perfect Layout.log: Includes a more detailed description of what the plug-in has done including warning messages.
If the last entry in "ES Perfect Layout.log" is "Checking Measure Number Regions", then the known measure number region bug has occured.Simply restart Finale® and run the plug-in again. It won't crash again unless the Finale® document was indeed corrupted.
BTW, this is a reason why you must always save a Finale® document before running any plug-in.
Should the last entry be different, please contact support to let them analyze the crash. The problem can probably only be fixed if you also submit the Finale® document.
But the plug-in provides a log file which includes those items where it detected problems, discovered untypical mistakes or where it moved items (expressions, articulations, hairpins) more than "just a little bit".
The log file can be found at Finale®'s configuration folder (e.g. C:\Users\XXX\AppData\Roaming\MakeMusic\Finale 2014). The file is named "ES Perfect Layout.log".
This is the log file of the ES Perfect Layout Demo.musx document.
Note: Normally there is less info in the log file, but the ES Perfect Layout Demo document includes many critical scenarios, so there are more warning messages than usually.
Initialization, Elapsed time: 0.07
Current Document Filename:D:\eigene dateien\musik\jw lua\page layout test3.musx
File name: D:\eigene dateien\musik\jw lua\page layout test3.musx, Elapsed time: 1.66
Initialization, Elapsed time: 0.00
The current settings are:
Reflow Measures: Only Within Systems
Reflow Systems Across Pages: Deactivated
Manual Positioning is set to: Incorporate
Starting Dialogs, Elapsed time: 1.07
Creating Staff Style: BlankNtnWRests -OthNotes -Art -Expr -Lyr -SmaSh -OthLyr...
Checking Expression Categories, Elapsed time: 0.00
General Preparations, Elapsed time: 0.00
Dialogs finished, Elapsed time: 0.00
Preparation and Resetting started, Elapsed time: 0.00
Font metrics file must be created for Helvetica
Loading the font 'Helvetica'... not successful. Using the metrics from the font 'Arial' instead.
Font metrics file must be created for Times
Expression changed from measure 54/4096 to measure 55/0 (Staff: 1/"Violin I ").
Duplicate identical Expression 7 deleted in measure 54 position 0 in staff "Violin I " (ExprID:7).
Layer 2 moved to layer 1 in staff "Violin I "(1), measure 9.
Layer 2 moved to layer 1 in staff "Violin I "(1), measure 7.
Hairpin vertical line removed in measure 5, position 0 (Staff 1 "Violin I "). Its start and end points were connected to the same measure position.
Slur replaced with tie in part 0/Score, staff 1/"Violin I ", measure 23 (Slur item number: 3188).
Preparation finished, Elapsed time: 0.00
Resetting score and parts, Elapsed time: 0.00
Preparing and Resetting Part: 0 (Score, Staff: 1 / "Violin I ", Slot: 1, Measures:1-79), Elapsed time: 0.01
Articulation removed from rest: ID 1 in measure 18 position 2048 staff 1/"Violin I ".
Articulation removed from rest: ID 3 in measure 32 position 2048 staff 1/"Violin I ".
'Open tie' removed in measure 13 position 1024 in staff "Violin I ".
Expression 3 on staff 1 ("Violin I ") was attached beyond measure duration (old position measure 6 / 5000 EDUs). It is now assigned to measure 6 / 4032 EDUs.
Duplicate articulation removed in measure 19 position 1024 staff 1/"Violin I ".
Duplicate articulation removed in measure 32 position 0 staff 1/"Violin I ".
Preparing and Resetting Part: 0 (Score, Staff: 67 / "Drum Set", Slot: 2, Measures:1-79), Elapsed time: 0.00
Expression moved (Function 3) from measure 9/384 to measure 9/0 (Staff: 1/"Violin I ").
The expression 3 has changed its horizontal position by -58 EVPUs (see measure 28/4032/Staff: 1/"Violin I "). Please check that it is and/or was placed correctly.
The expression 51 has changed its horizontal position by -147 EVPUs (see measure 79/0/Staff: 67/"Drum Set"). Please check that it is and/or was placed correctly.
Preparing and Resetting Part: 1 (Violin I , Staff: 1 / "Violin I ", Slot: 1, Measures:1-79), Elapsed time: 0.01
Measure reflow performed over systems for part 1: Violin I .
Preparing and Resetting Part: 2 (Drum Set, Staff: 67 / "Drum Set", Slot: 1, Measures:1-79), Elapsed time: 0.00
Measure reflow performed over systems for part 2: Drum Set.
Reset finished, Elapsed time: 0.00
Processing score and parts, Elapsed time: 0.00
Processing Part: 0 (Score,Staff: 1 / "Violin I ", Slot: 1, Measures:1-79), Elapsed time: 0.32
Stunted slur removed in part 0/Score, staff 1/"Violin I ", measure 5 (Slur item number: 3192).
Slur over identical tie removed in part 0/Score, staff 1/"Violin I ", measure 7 (Slur item number: 3196).
Duplicate slur removed in part 0/Score, staff 1/"Violin I ", measure 35 (Slur item number: 3206).
DC/DS repeat element in measure 61 moved by 49 units.
Coda/Segno repeat mark in measure 39 moved by -89 units.
The dynamic expression 3 has changed its horizontal position by -53 EVPUs (see measure 6/4032/Staff: 1/"Violin I "). Please check that it is and/or was placed correctly.
The dynamic expression 2 has changed its horizontal position by -67 EVPUs (see measure 9/3008/Staff: 1/"Violin I "). Please check that it is and/or was placed correctly.
The dynamic expression 3 has changed its horizontal position by -49 EVPUs (see measure 19/4032/Staff: 1/"Violin I "). Please check that it is and/or was placed correctly.
The dynamic expression 36 has changed its horizontal position by 72 EVPUs (see measure 40/0/Staff: 1/"Violin I "). Please check that it is and/or was placed correctly.
The dynamic expression 33 has changed its horizontal position by 64 EVPUs (see measure 56/0/Staff: 1/"Violin I "). Please check that it is and/or was placed correctly.
The dynamic expression 7 has changed its horizontal position by -51 EVPUs (see measure 56/4032/Staff: 1/"Violin I "). Please check that it is and/or was placed correctly.
The dynamic expression 7 has changed its horizontal position by -51 EVPUs (see measure 59/4032/Staff: 1/"Violin I "). Please check that it is and/or was placed correctly.
Very short hairpin found. Probably not enough space in measure 9, part "Score", staff "Violin I ". (Smartshape saved: true)
Very short hairpin found. Probably not enough space in measure 12, part "Score", staff "Violin I ". (Smartshape saved: true)
Very short hairpin found. Probably not enough space in measure 50, part "Score", staff "Violin I ". (Smartshape saved: true)
Very short hairpin found. Probably not enough space in measure 56, part "Score", staff "Violin I ". (Smartshape saved: true)
Processing Part: 0 (Score,Staff: 67 / "Drum Set", Slot: 2, Measures:1-79), Elapsed time: 0.00
Congruent hairpin deleted in part 0/Score, staff 67/"Drum Set", measure 59, measure pos 1024.
Optimizing System Distances..., Elapsed time: 0.00
Part finished., Elapsed time: 0.00
Processing Part: 1 (Violin I ,Staff: 1 / "Violin I ", Slot: 1, Measures:1-79), Elapsed time: 0.12
Text repeat element in measure 61 is set to right justification, but currently aligned with the left barline. Please check the justification settings for optimal layout.
Coda/Segno repeat mark in measure 39 moved by -89 units.
Very short hairpin found. Probably not enough space in measure 50, part "Violin I ", staff "Violin I ". (Smartshape saved: true)
Very short hairpin found. Probably not enough space in measure 56, part "Violin I ", staff "Violin I ". (Smartshape saved: true)
Very short hairpin found. Probably not enough space in measure 59, part "Violin I ", staff "Violin I ". (Smartshape saved: true)
Optimizing System Distances..., Elapsed time: 0.00
Part finished., Elapsed time: 0.00
Processing Part: 2 (Drum Set,Staff: 67 / "Drum Set", Slot: 1, Measures:1-79), Elapsed time: 0.08
DC/DS repeat element in measure 61 moved by 49 units.
Coda/Segno repeat mark in measure 39 moved by -89 units.
Optimizing System Distances..., Elapsed time: 0.00
Part finished., Elapsed time: 0.00
Part Processing finished, Elapsed time: 0.05
Finalization, Elapsed time: 0.00
Plugin Processing Time: 14.56 seconds
Close progress bar, Elapsed time: 0.01
Some pages need more vertical space to avoid colliding staves or to insert enough space between staff systems (Page: 1). If possible, try reducing the page scale or staff height and run the plugin again.
Plugin Processing Time:0m:17s, Elapsed time: 2.49
Plugin finished, Elapsed time: 0.00
It is recommended though to run it in "Score View" first with the whole document selected, because some main functions are only activated if the whole document is processed (e.g. expression category fixes, MusicXML improvements on expressions, some multi-measure rest unifications).
If the plug-in is run in "Score View", the selected region in the parts will always be processed too.
If the plug-in is run in "Parts" mode, the selected region in the score will not be processed.
Which means: if changes are required in the "Score" that are linked to the "Parts", the change will not be made!
For example: if a hairpin is attached to measure position 0 (=first beat) in both score and parts, and the plug-in would like to snap it to a dynamic expression on beat 2, this will not happen if the plug-in is run in "Parts View" as the link would be destroyed.If the plug-in is run in "Score View", the snap would happen and also occur in the parts, so that there the change is still linked.
The plug-in was not designed for use on an already manually optimized score that makes extensive use of custom smart lines or contemporary notation.
It will save you more time if you run it before doing any manual optimizations (see How to Use the Plug-in).
Especially on Windows there are some old format fonts (.fon) like Courier, System or Roman. These are not supported by the plug-in. Please don't use them.
It's possible that the font is still not detected as Finale has an unusual way of using font names: it's different than in other standard Windows software (see our article Font Names in Finale).
This is especially true for font names using name extensions like "... LT Std", "... MT Pro", " BT" or font weights that Finale doesn't support ("Medium", "Thin", "Black", etc.).
Not finding the font files may also lead to long start-up times of the plug-in (with the message: Creating font annotation files...).
In this case please contact our support team. We will try to support your font in the next plug-in update.
Silver400/Gold400 allow 400 measures and 36 (visible) staves.
For processing larger documents you need the full Silver/Gold edition.
Also see overview of plug-in editions.
You will probably not get identical results when applying multiple times: the horizontal and vertical spacing might be slightly different.
But don't forget: you will always get the best results when the plug-in is applied to the score and thus also to the parts.
It's not recommended to run the plug-in on the score only, then generate the parts and then run the plug-in on the individual parts. Because all functions that would break linked score/part elements (like hairpins, expressions) are not activated when applied to a part only.
2.) Check that the pages don't have page breaks which prevents measure shifting.
To do this select the Page Layout tool right-click on the staff system and click on "Delete Page Break" if available.
Please also read the section on the Reflow settings in the "How to Use"-tutorial.This is a very powerful and important feature for the plug-in as it allows the plug-in to automatically layout completely unlayouted parts with one click.
But this only works with the settings from 1.).
if you want your system and measure layout untouched, uncheck "Reflow Systems Across Pages" and set "Reflow Measures" to "Only Within Systems" before applying the plug-in.
If you only use the font files in other notation software (e.g. Capella, Sibelius), ignore the warning message too.
If you have never used these fonts before in Finale, but wish to use them now or later, just ignore the warning message.
In other words the warning message is only relevant, if you have already used the mentioned fonts in older Finale documents, because when re-opening these documents it is possible that Finale displays wrong symbols if the MacSymbolFonts.txt entry has changed.
But it is a reversible process: if you select yes the MacSymbolFonts.txt will be automatically updated. Should you encounter any symbol problems later in older documents that use these fonts, you can simply remove the added font name manually from MacSymbolsFonts.txt later.
Finale®'s MacSymbolFonts.txt file includes a list of music fonts for Finale's internal font handling. The program uses a different font encoding when a font is on the list. Fonts can have several encodings. This means for example if you select the character 138, a different symbol appears if the font is in MacSymbolFonts.txt or if not.
Very often fonts have several encodings (e.g. for MacOS and for Windows) and not all of them fully work in Finale® (on MacOS and/or on Windows), so one has to test which encoding works best.
This also depends on how you work, what fonts you use and what you need:
While Windows is more tolerant regarding the selected encoding, MacOS very often requires the font name to be added to MacSymbolFonts.txt.
So if a Finale® document is to be exchanged between MacOS and Windows, it is recommended to have matching MacSymbolFonts.txt files.
Note: Unicode fonts (=fonts with more than 255 symbols like Aruvarb or November2) must never be added to MacSymbolFonts.txt, as MacSymbolFonts.txt automatically limits the number of available symbols top 256.
The Perfect Layout plug-in currently only supports one type of encoding for each music font. That's why you will get an error message if MacSymbolFonts.txt doesn't match the encoding that the plug-in requires.
The plug-in will automatically update MacSymbolFonts.txt if it is not compatible. After the update a restart of Finale is necessary.
When the MacOS version of the Perfect Layout plug-in is released, the recommended font encodings might slightly change to guarantee best compatibility between MacOS and Windows.
In general it is save to just follow the suggestions of the Perfect Layout plug-in regarding MacSymbolFonts.txt.
But attention must be paid if you have manually adjusted font annotation files that don't mark the glyph borders, but have user-defined borders that don't match the glyph borders (for whatever reason ... usually this is not recommended and not necessary):these font annotation files are not compatible with a changed encoding and need to be recreated.
More than 300 of the supported fonts/font families can be seen in the highly recommended Elbsound Music Font Comparison tool.
What does "supported music font" mean?
First the plug-in needs to know if a font is a music font, a chord font, a symbol font or a text font.The plug-in currently knows more than 1200 of these font names (see font list here) and assumes that every unknown font is a text font.
For some tasks of the plug-in it is also important to understand what a symbol from the font means (i.e. the semantics).A fermata requires a different handling than a dynamic symbol.
The plug-in uses both the expression category names and/or the "description of the music symbol" for its detection.
About 1200 symbols from more than 470 music and chord fonts are described in the plug-in's music font database.
If a symbol is not described, it might be excluded from some of the plug-in's tasks.
There are however a few commercial music fonts that are officially not supported yet as we didn't get free samples in time to include them.But they will probably work as well as they are all (nearly) Maestro-compatible.
- Font Shop's Urtext fonts,
- the hadnwritten fonts by NorFonts,
- the MTF fonts by Music Type Foundry.
If your music font is not supported yet, but Maestro-compatible, it is very likely that the plug-in will work without problems.If you want other music fonts to be supported, please contact support. For a small fee it is possible to include your font in the next release.
To select the correct font, please type the name manually as in this animation:
It costs about half as much as a regular Finale® update, but has more than 100 features which is much, much more than a regular Finale® update - maybe as much as five or more updates.
Perfect Layout is a professional tool for professionals. Professionals calculate in working hours.
It will save you about 10-25% of your Finale working time (many users even reported more than 25%!) and usually creates a more balanced output than you could achieve manually in that time.
So if you save eight hours per week for layout tasks (with a 20,- Eur per hour rate - which is still pretty low), even the Gold version of the plug-in has already paid off after less than one month of usage.
Perfect Layout is not comparable with any other existing Finale® plug-in. It is a "one-click" solution for optimizing scores and parts at the same time with more than 100 features, more than 700 internal options, more than 300.000 lines of code and support for more than 470 music fonts.It also fixes many long-term problems of Finale® and features many new "intelligent" algorithms for automatic score and parts preparation.
Don't forget plug-ins for music software are a niche market and professional plug-ins for notation software are an even smaller niche market.
A good comparison for the price are "Sampling Libraries".
Professional sampling libraries cost between ca. 400,- Eur and 5.000,- Eur (e.g. VSL Symphonic Cube).
The host software usually costs much less (for example 100,- Eur for Plogue Bidule or Cubase LE).But it requires the plug-ins (=sample libraries) to be used professionally.
So it might look better (or worse - just as you prefer it) if you switched off "Stacking" and set "Slur Interaction: Auto inside/outside" to "Ignore" before applying the plug-in.
Also make sure to select "Keep Positioning" of articulations when opening a document from a previous version of Finale®. If you select "Enhance" instead, some articulations might not be fixed.
Here is a PDF comparison of a pre-Finale 26 document imported into Finale 26 and processed with the plug-in: once with "Enhance Positioning" selected, once with "Keep Positioning".
Features of "Perfect Layout" for Finale® Perfect Layout includes more than 100 automated layout processes for Finale® like:
-collision removal of most music symbols
-automatic alignment of expressions, articulations, hairpins, lyrics and many smart shapes
-automatic visual balancing and collision removal of staves and systems in score and extracted parts
-improval of MusicXML imported files and old Finale files from the 90s (including automatic expression category assignment and alignemnt correction)
-automatic repeated measure numbering for percussion/drum staves
-automatic rest splitting and merging according to the time signature
The plug-in works both as a "1-click solution" with many intelligent algorithms that automatically set the best parameters as well as with a very flexible and versatile user dialog with more than 200 parameters in the Gold edition. A full feature list with references to the before/after images below is available at the bottom of this page.
The images below show a few before and after the plug-in comparison.
More before/after examples are available in the Example and Video section.
Feature Overview with Before/After Images
The red and blue measure numbers were added afterwards to the image to help identifying the measures.
Image 2: Automatic score balancing
Image 3: The Perfect Layout User Interface (for details see here)
, expressions, barlines and repeat brackets (below staff only). (mm.4, 6, 9, 15, 19, 29/30, 43, 55,etc.)
- Removes collision of (standard) articulations with (one!) other articulation on top of the staff, with slurs (only if connected with start or end note of slur), ties and dynamic expressions. (mm.1, 2, 4, 7, 35, 37 / m.1)
- Removes collision of dynamic expressions with slurs, ties, repeat brackets, notes, accidentals and barlines (below staff only). (mm.6, 22, 23, 24, 28, 51, 52, 54, 56, 59)
- Removes collision of trill line smartshapes with up/down bow articulations. (m.37)
- Removes collision of text repeats and notes, articulations and multi-measure rest numbers (on top of the staff only). (m.61)
- Removes collision of ottava and trill lines (not custom line trills) with notes, accidentals and articulations (on top of the staff only). (m.23)
- Removes collision of rehearsal mark letters, rehearsal mark texts and tempo mark text expressions with notes, articulations and left-aligned chord symbols. (mm.4, 25-38, 58)
- Removes collision of voice 1 note with voice 2 articulation. (m.25)
- Removes collision of Voice1/Layer1 dynamic expressions with Voice2/Layer2 notes). (m.25)
- Removes collision of glissando lines with accidentals and augmentation dots (together with optimized vertical alignment). (m.40)
- Tremolo articulations on whole notes are corrected. (m.59)
- Not all slur parameters are currently supported, unsymmetric slurs may still have tiny collisions.
Each collision system just checks the collisions of two individual elements. It is not a general collision avoidance system that checks all surrounding elements and calculates the best spacing solution. In most cases this system works fine, but from time to time there are situations where the suggested solution is not the optimum.
- Hairpins and dynamic expressions below the staff are aligned vertically (expressive text in conjunction with dynamic expressions also). Vertical alignment is reset after a few measures, a certain distance and on each new system. (mm.3/4, 8-10, 12-14, 15-16, 24-30 and more)
- Dynamic expressions and expressive text on the same measure position are aligned horizontally and vertically. (m.53)
- Adjacent hairpins and dynamic expressions are connected with a small visual gap in between. (mm.6, 9, 10, 12 and more)
- Moves dynamic expressions slightly up on systems with slash staff style measures where no other object goes below the bottom staff line. This reduces unnecessary space e.g. on drumset parts with lots of slash notation. (mm.63)
- Moves dynamic expression up on slash staff style measure with invisible very low notes. (mm.65)
- Positions dynamics expressions in the centre below the note. (mm.1, 3 and more)
- Corrects vertical alignment of hairpins with line breaks (i.e. two alignments necessary). (mm.14/15)
- Dynamic expressions attached to very low notes and shifted left and upwards are kept on that position and will not be centered below the note to avoid very low dynamics. It doesn't work the other way round yet: centered dynamics on very low notes are kept on the centered position and will not be shifted left and upwards. (m.32)
- Alignment of expressions is content-dependent (e.g. pp and mf get a reduced vertical offset value compared to fff, so that the actual distance to a note or articulation is identical).
- Corrects wrong horizontal position of a niente hairpin expression under a rest. (m.68)
- Tempo marks, tempo alterations and rehearsal marks are aligned horizontally. (mm.4-7)
- Tempo marks, tempo alterations and rehearsal marks can be aligned vertically.
Two different modes are available:
a) minimum distance to staff (each mark is aligned individually)
b) align according to highest offset (all marks are vertically aligned according to the highest mark). (mm.25-38)
- Centered "più ff" expressions become quasi right-aligned. (m.59)
- Centered "ff sub." expressions become quasi left-aligned (same for poss., s(i)empre, espr., secco, etc.). (m.40)
- Moves expressions connected to a centered "real" whole rest to other layers' notes on measure position 0 if available. (m.49)
- Numbers from the Finale "Number Repeated Measures" plugin are centered. (m.45)
- Moves an expression that is assigned to "All Layers" to another layer if layer 1 is invisible. Otherwise Finale doesn't do a correct vertical alignment. (m.58)
- Moves dynamic expression from the end of the measure to next measure's position 0 if it either has a huge horizontal offset to the right or if the note on measure position 0 is tied backwards. (m.54/55)
- Slurs at line breaks which end with high notes will be re-aligned, for example when a run with a slur ends on the next system (This feature is implemented, but only works on manually adjusted slurs because of a JW Lua bug). (m.14)
- Harp glissando optimization can be achieved with the Elbsound Harp Glissando plugin (mm.40)
- Can remove multi-measure rests in measures that have non-MM breaking expressions and/or hairpins. (mm.14/15)
- Removes multi-measure rests in parts if the measures have changed after the first MM rest creation. (mm.51/52)
- Moves multi-measure rest numbers slightly down on 1-line staff measures. (mm.73-75)
- Shows/hides measure number ranges below multi-measure rests if the multi-measure rest has a defined length. (hidden mm.41-42, shown mm.72-77)
- Updates all multi-measure rests to the current style from the multi-measure rest document settings (e.g. change from shape to symbol). (m.72)
- Updates the settings of measure number ranges to valid values (centered, below, square brackets)
- GP (=Generalpause) expressions are detected and split MM rests. (m.42)
- If a multi-measure rest ends with a clef change, then the MM rest will be reduced in size to avoid collision between the MM rest and the clef. (m.42)
- A measure number group below the MM rest will also be shifted slightly to the right to match the new position. (m.42)
- Moves hairpins that are attached to rests to note before, otherwise the Finale 2014 hairpin playback doesn't work correctly. (m.13)
- Lets hairpins start slightly right to a note/rest and lets them end slightly before a note/rest. (mm.4, 13, 9, 10 and more)
- Shortens hairpins that end on measure position 0 of the next system to end on the last beat of the last measure of the previous system, in order to avoid hairpin line breaks (but for optimal playback this should not be done, it's just for visual reasons)
- Automatically resets hairpin horizontal break offset to 0, so that they align with measure start and measure end. (mm.14/15)
- Support of "niente" hairpins: automatic connection of hairpin with any niente ("o") text expression or a niente text ("niente" or "quasi niente") (currently restricted to one niente hairpin per measure). (mm.66 and 67)
- Can auto-connect to the next/previous note if it is close enough. (m.34)
- Hairpins can be made horizontal. (m.34)
- Hairpins can be resized to the default opening width. (m.13)
- Hairpins that start on measure position 0 before the note can be reset to a horizontal offset of 0. (m.3)
- Hairpins that end on a rest are shortened to the start of the rest (if not followed by a note with a dynamic expression). (m.13)
- Hairpins that end in the middle of an empty measure are shortened to the end of the previous measure. (mm.59/60)
- Moves articulation on high-pitched grace notes from below staffline to above the note. (m.59)
- Combinations of two symbol staccato/tenuto plus accent articulations are correctly aligned on articulations above the notes (not supported below the note yet).
- Creates inside slur articulations if necessary for collision with steep slurs (but not if there are multiple articulations on that note). (m.12)
- Changes certain shape articulations with helpful descriptions in the shape definition to character articulations.
For example, different staccato dot articulations may have a shape symbols of their duration, i.e. 30%,50%,75%, etc. The shape is great for the score/playback creation process, but for printing it will be reverted to the staccato dot character. (m.39)
- Puts tuplets over one line (percussion) staves on top in order to avoid collision with dynamics on bottom. (m.43)
- Optimized tuplet and/or default values from the tuplet preferences can be applied to all tuplets. (m.33)
- Tuplets on extreme notes can be moved on top of the notes instead of staying on the stem side. (m.60)
- Tuplet brackets on quarter note tuplets (and higher) can be hidden (turned off by default).
- Nested tuplets are split: the main tuplet will be on the stem side, the sub tuplet on the note side.
- Splits fake tuplets where the first half of a tuplet is a regular note (e.g. dotted eight note plus three 16th notes in a 8th note triplet become eighth note plus three 16th notes in a 16th note tuplet). (m.55)
- Optimize tuplet numbers: if the tuplet number doesn't match the longest/shortest note duration, it can be adjusted (e.g. 6 16th notes with a tuplet number 3 (i.e. 3 8th notes), get a new tuplet number 6). (m.58)
- Missing tuplet brackets are added if it simplifies reading (e.g. within a group of beamed notes without secondary beam breaks).
- Moves typically left-aligned text repeats to the left border of the measure (Coda, Segno, etc.). (m.39)
- Unifies vertical offset of all text repeats.
- Repeat brackets will horizontally (not vertically yet!) aligned with their starting/ending measure.
- Moves a system starting with a "Coda" rehearsal mark slightly down in extracted parts. (mm.62-71)
- Fixes the distance between multiple lyric baselines of the same type (unless multiple different lyrics types and numbers occur in one measure). (m.5)
- Removes vertical offset from manually adjusted syllables. (m.5)
- Removes invalid syllables.
- Removes invalid lyric flags.
- Sets slash style measures to time signature spacing. (mm.21, 63-67)
- Sets slash style measures with visible offbeat notes in other layers to note spacing.
- Removes uneven slash measure spacing caused by non-hidden, but invisible notes. (mm.21, 64)
- Apply music spacing to full score (turned off by default).
- Adaptive spacing for chord symbol collisions: measures with chord collisions are set to "Avoid chord" collisions in spacing, others are set to not use it. (mm.13, 14, 34)
- Reduces the measure width in blank notation style, slash and repeat style measures with individual values for minimum measure widths.
- Adaptive spacing for blank notation and repeat styles measures: if the staff is very crowded, these special measures will be squeezed more. (m.11)
- Reduces the width of the last system on the last page, if that holds too less musical information to span the full system width. (mm.62-71)
- If a measure holds a preparation clef for the next measure, the measure will be broadened and extra space at the end added if there is a collision with a note entry or a slash symbol (from the slash staff style) in that measure. (mm.24, 48)
- Inserts additional beat chart elements to measures if necessary for improved spacing (e.g. in a measure with one whole note, but several hairpins or expressions: (m.56))
- Clears manual positioning of articulations, dynamic expressions, rehearsal marks and tempo expressions. (m.24, 52 and more)
- Removes unneccessary articulations on rests (e.g. if staccato dots were copied to rests with the explode function. Allowed articulations like a fermata remain.). (m.18, 32)
- Removes duplicate articulations of the same kind on the same note (resulting for example from staff implode). (m.32)
- Removes duplicate (nearly) identical expressions at the same position. (m.54)
- Removes duplicate (nearly) identical hairpins at the same position. (m.59)
- Removes duplicate (nearly) identical slurs. (m.35)
- Corrects dynamic expression placement at the beginning of a pickup measure.
- Non-opaque expression enclosures with line width 0 will be removed.
- Right-aligned multi-measure rest breaking expressions are duplicated and also stored in measure 1 of the multi-measure rest, so that they don't disappear anymore at the end of the mm rest.
- Separated "f" and "p" dynamics on a note will be connected to "fp". (m.48)
- Resets manual accidental shifts (turned off by default).
- Unisons are slightly separated.
- Warning message is issued when the pickup measure is set to a value less than 32 EDUs (which may result in undesired symbols being displayed).
- Apply optimized tie preference settings. (m.61)
- Apply optimized slur preference settings.
- Measure numbers on measures with "space before music" (i.e. key or time sig changes) can be shifted to the left to appear directly above/below the barline (instead of at the beginning of the music). (m.16, 68)
- Removes (unnecessary) accidentals from backwards tied notes. (m.51)
- Sets tempo marks, tempo alterations and rehearsal marks to "break multi-measure rests".
- Tempo alterations can be optionally be hidden under multi-measure rests.
- Tempo alterations are hidden at the end of a piece, if no note entries follow.
- Can optionally hide tempo alterations in MM rests (turned off by default).
- Split three beamed eighth notes in pickup measure to one eighth note plus two beamed eighth notes.
- Removes 'open ties' (i.e. tie starts that don't have a corresponding tie end). Laisser-vibrer staves like harp, timpani, cymbals or vibraphone are ignored. (m.13)
- Close hairpins are "connected" with a gap. (mm.63-68)
- Assigns noteID to entry-based glissando lines that are connected with a note, but have no noteID.
- Sets vertically moved rests to standard position if it is a one-layer and one-voice measure. (m.7)
- Detects text expressions assigned to invalid categories and moves them to "Miscellaneous".
- Invalid expressions are deleted (i.e. if the expression ID doesn't exist anymore).
- Certain smart lines will be placed at a fixed vertical position on top of a staff (for example Fill-in-------¬ on drumset staves). They will also be aligned with right before the barline if they are close. (m.66)
- Deletes empty pages at the end of a part. (m.68-71 - not visible)
- Corrects expressions that are connected to a slightly wrong measure position (e.g. Pos 32 instead of 0) to the correct position (this occurs especially in older Finale documents). (m.9)
- All single grace notes get slashes. (m.59)
- All single grace notes become 8th notes, all multiple grace notes become 16th notes.
- Rests are checked if they match the time signature and otherwise splitted/merged and the measures respaced (not in measures with the different notation styles as in m.49). (mm.23, 50, 51, 57, 61)
- Invalid composite time sigs that are actually non-composite time sigs are included in the rest check for time signature matching.
- Rebar is optionally possible (same as Utilites->Rebar, turned off by default because of its side effects on quantization)
- Measures can optionally be padded with rests if incomplete (turned off by default, in order not to pad layers that are incomplete on purpose)
- Removes stunted slurs that start and end on the same note/position. (m.5)
- Removes hairpins that start and end on the same note/position. (m.5)
- Deletes invisible articulations with invalid articulation definitions (i.e. those articulation definitions that were already deleted).
- Expressions that were assigned beyond measure duration (e.g. position 4096 EDUs in a 3072 EDUs measure) are corrected and assigned to the best fitting note position where they are currently visible. (ff in m.6 was actually assigned to measure 7)
- Manual adjustments of slurs can be removed. (m.24)
- Accidentally flipped hairpins that start and end in the same measure are corrected.
- Accidentally flipped ties are corrected if there are no voice2 entries and no entries in other layers (only if the FlipTie flag is used, not with the Special flag). (m.54)
- Accidentally flipped/frozen stems are corrected if there are no voice2 entries and no entries in other layers. (m.31)
- Voice2Launch flags are reset if there is no voice2 on that beat. This also corrects the direction of wrong stems and slurs. (m.8: the wrong flag results in an upsidedown stem)
- Corrects messed up measure number region indices.
- Removes slurs that double ties. (m.7)
- Replaces slurs with ties if slurs were applied accidentally. (m.23)
- Dynamic expressions which are assigned to non-dynamic categories are automatically shifted to 'Dynamic Expressions'. (f in m.12)
- Typical expressive text expressions which are assigned to non-expressive text categories are automatically shifted to 'Expressive Text'. (legato in m.52)
- Typical tempo mark text expressions which are assigned to non-tempo mark categories are automatically shifted to 'Tempo Marks'.
- Typical tempo alteration text expressions which are assigned to non-tempo alteration categories are automatically shifted to 'Tempo Alterations'. (A tempo in m.79)
- Measure number expressions which are assigned to the "Miscellaneous" category can be shifted to "Rehearsal Marks".
- Slurs can be updated from on/off to automatic engraver slur. (m.38)
- Slurs not connected to the end note of a series of tied notes will be connected to the end note (except for grace note slurs). (m.59)
- Invalid invisible slurs (attached only to one entry instead of two) are deleted.
- Wrong SmartShape flags in measures are cleared.
- Wrong Expression flags in measures are cleared.
- Wrong Special flags in note entries are cleared.
- Wrong Articulation flags in note entries are cleared.
- Manual positioning of notes can be cleared. (m.5)
- Group brackets can be automatically added on groups with at least 3 staves (and bracket set to none).
- Moves entries that were accidentally placed on layers 2-4 to layer 1. Cue notes, non-playback layers, or notes under alt notation staff styles are not moved. (m.7,9)
- Hairpins with a start or end measure position greater than the acutal measure duration are reset to the measure duration.
- Hairpins that end after the last measure are reset to end in the last measure.
- Horizontal custom smart lines are forced to be horizontal. If you don't want that feature, uncheck "Horizontal" in the custom smart line definition. (m.66)
- Cue note instrument texts move below the staff. (m.11)
- Cue note instrument texts are connected with the first note of the cue (instead of rests). (m.11)
- Assigns cue note instrument text to the same layer as the cue note, so that they have a reduced size as the cue note. (m.11)
- Hides "cue notes only"-measures in the score and applies an "Blank Notation with Rests" staff style. (m.11)
- Hides "100% sized"-cue notes that were only created to have 100% sized lyrics with a "Blank Notation: Layer X" staff style.
- Cue note text expressions (e.g. "(Fl.)") without notes can now break multi-measure rests. (m.68)
- If an "empty" pick-up measure holds a cue note clef change only, the width of the measure will be fixed so that the clef is displayed correctly
(i.e. this is necessary if a part starts with a clef followed by a cue note clef which can only be handled with an empty extra measure)
- Hairpins, custom line and trills can be hidden in cue measures (m.11)
- Hides unnecessary group names that are also part names (e.g. Piano or Harp).
- Hides chord symbols on selected staves in the score, but shows them in the parts (to reduce complexity in the score). (m.63)
- Hides rehearsal mark texts that have the same text as the lyrics in that measure. (m.5)
- Hides all expressions in the score that are only to be shown in page view (e.g. harp tuning or solo markings) based on user-defined expression categories. (m.16)
- Hides instrument-specific articulations in the score that are only to be shown in the parts to reduce complexity of the score (e.g. up/down bow). (m.1, m.1)
- Adds automatic measure counting to slash measures (every xth measure and after double barlines). (m.63-67)
- Add automatic measure counting to one-bar repeat measures (every measure, optionally in parts only (see m.45)). (m.44-46)
- All the functions mentioned above can be switched on/off and have many parameters.
- The plugin uses the same font database as the House Style Changer and recognizes music symbol and glyph spacing from more than 300 music fonts. (mm.24, 30, 51, 52)
- The installer currently doesn't support Windows user folders with unicode characters (i.e. the folder c:\users\.....\). At the moment only symbols from Windows-1252 encoding are supported (i.e. allowed are Western European symbols like äôáèüß, but not letters like ǧȒʥԖש).
- No support for scores with staff dependent time signatures.
- GPOS tables in OpenType fonts are currently not supported by our font engine (e.g. vertical glyph placement as in the Figurato font currently leads to wrong metrics in the plug-in)
- Diagonal hairpins are only partially supported.
- Non left-aligned chords are only partially supported in collision detection.
- The chord styles Solfeggio, Nashville and Roman are not yet supported in collision detection (the plugin always assumes one of the CDEFGA(BH)-standards).
- Enclosures are not supported yet for all collision types, but they are supported for rehearsal mark expressions.
- Cross-staff smartshapes are not supported for collision detection.
- Dynamics on cross-staff notes in two-staff groups (e.g. piano) are only partially corrected in placement.
- Not all cross-staff scenarios are yet supported for optimal staff/system balancing.
- No support for non-smart (=old-style) word extensions. These can not be detected correctly in JW Lua. Please activate "Use Smart Word Extensions" in the Lyrics->Word Extension dialog.
- Invisible measure texts are detected as visible (JW Lua bug). This might lead to weird shifts of rehearsal marks or to unbalanced staff spacing.
- Some fonts will work better on Windows/MacOS if they are/are not added to MacSymbolFonts.txt. The plug-in font database currently only supports the state that works better on Windows. As a result the plug-in might require to update the MacSymbolFonts.txt file, if it doesn't find the correct fonts listed.
- Multi-measure rests are be automatically created/validated. But as this may affect the system layout, it's possible that systems end up on different pages than before or that extra pages are added somewhere in between. Automatic MMRest creation should be avoided if the part has systems with different number of staves (e.g. hidden staves) and many empty measures that would be consolidated to a multi-measure rest. This would massively influence the part layout. In this case create the multi-measure rests manually before calling the plugin and adjust the measure layout to your needs.
- The left/right metrics of consolidated rests are not always calculated correctly (JW Lua or Finale plugin SDK bug). The best result appears when the active layer in Finale is layer 1.
- In custom line definitions the values in the "Line Adjustments" group (Start H, Continue H, End H, V) can not be read by JW Lua. If possible, set them to 0, otherwise the lines may align wrong.
- Rests in very ambiguous time signatures are not corrected (e.g. 11/4).
- Chord spacing not fully correct in measures that have all of the following properties: slash/repeat style, overlapping chords, more notes than chord positions and not notes on all chord positions.
- Tracking (of text elements) is not calculated 100% correctly.
- Diagonal hairpins that cross staff lines are made horizontal.
- Finale's tool palettes are sometimes resorted by the minimization and maximization of the Finale Windows. We are still looking for a solution to this phenomenon.
- Automatic staff system balancing works best when all pages have the same page scaling, system scaling and staff scaling. Should they not match, it is not guaranteed that the result over all pages is fully convincing.
- When clicking on "Undo" and then on "Redo" after having run the plug-in, JW Lua or the Finale PDK has a bug that may lead to a different page layout or even systems vanishing in the score. It's possible to use undo/redo, but use it with care - i.e. check the page layout is still ok.
- The staff stem setting "Always Up" and "Always Down" cannot be detected (JW Lua bug). This can lead to stems being falsely flipped.
- Fingering articulations are only supported in articulation stacking if they have a horizontal offset of 0.
- Stacked hairpins (one above the other) are currently not handled correctly and might be placed on top of each other.
- Hairpins are vertically aligned to dynamics, expressive text, articulations, slurs, ties, notes and the staff line. Other symbols (e.g. custom lines) between hairpin and the staff line are currently not taken into account.
- Graphics attached to measures are currently not supported by JW Lua. So they are not taken into account for collision detection.
- Expressive text as custom smart lines (e.g. cresc. - - - -) is currently not automatically aligned with dynamics.
- Accidentals as expressions are not taken into account for collisions.
- Ottava lines and custom smart lines may collide with slurs (currently only an approximation for 'over' slurs is taken into account. Under slurs are not taken into account.).
- Glissando smartshapes are not connected correctly to the notes, if their custom smart lines use an offset ("Start H" and "End H" values). JW Lua doesn't support reading this offset.
- Collision detection of rehearsal marks, tempo marks and tempo alterations only works reliably if there are at maximum two expressions per measure at the same measure position.
- The clef slots are assumed to be used as in the Finale default document (i.e. slot 1=violin clef, slot 4=bass clef, etc.).
- JW Lua doesn't allow the detection of full or short barline in 1-line staves, so they are both aligned identically.
- Three stacked articulations (e.g. downbow, fermata and accent) are not included in collision removement.
- Lyrics baseline optimization for Verse/Section/Chorus 1 currently requires a call of TG Tools->Lyrics->Baselines before running the Perfect Layout plugin (JW Lua bug).
- Lyrics baseline optimization for Verse/Section/Chorus 2+ currently requires a manual adjust of each staff system's lyrics baseline before running the Perfect Layout plugin (JW Lua bug).
- Lyrics baseline optimization currently only works for lyrics below the staff.
- All staff systems on a page should have the same Staff Height value.
- Document options for tie placement currently can't be read through the plugin interface, so the plugin always assumes Finale's standard values tie positionings.
- Tie alterations that affect the tie metrics are currently not supported, i.e. collisions might occur. The functionality is supported by the Finale PDK, but currently not implemented yet in JW Lua.
- Collision of articulations with ties on top of the staffline is currently not supported yet, but also occurs rather seldom.
- Pickup duration detection is unstable: if a pickup measure is created with the "Use a different time signature for display" method and the second measure has a completely different time signature, the pickup is only detected if one of the first measures has at least one rest. (JW Lua bug: it has limited support for "Use a different time signature".)
- Automatic shape detection is currently switched off in Finale 2014 as JW Lua currently crashes Finale when examining shape instructions (i.e. down/up bow shapes are not detected as valid articulations for collision detection).
- As shape expressions are hardly supported, molto crescendo "end of hairpin" expressions are only detected if they are text expressions, not shape expressions.
- Shape articulations and expressions are currently not supported for collision detection.
- The articulation "inside slur" capability of Finale 26 is currently not supported by JW Lua. The plug-in automatic inside/outside slur feature only works up to Finale 25.
- Time signatures with decimals are currently not supported by JW Lua (e.g. .625/2 for a 5/16 time signature with one beaming group).
- JW Lua currently doesn't support updates of the Vertical Baseline Offset on shape expressions. This may lead to displaced expressions when they are baseline dependent and the baseline offset has changed.
- Automatic detection of shape articulations is only supported in Finale 2014.5 and Finale 25 (not Finale 2014).
- The few supported shape articulations (like "Up+Down Bow") must be designed "on baseline" (they must not cross below the baseline). Otherwise the stacked articulation collision doesn't work.
- Because of a Finale bug with the "Slur Tips Avoid Staff Lines" option, there may be collisions with slurs in rare cases that appear on the screen only. But: when printing the document to a printer or to PDF, the collisions are not visible.
- Hairpins that appear on three staff systems in a row are only checked for collision on the first row.
- Slur collisions are only detected correctly for slurs without line break or for the first system of slurs with a linebreak (i.e. slur collisions after the linebreak are only estimated very roughly or not taken into account at all, because of a JW Lua or Finale PDK bug).
- When an alert message dialog is clicked, Finale may lose the window focus (This is a known JW Lua bug). Simply click on the Finale window to get the focus back.
- Dynamic expressions might get close to steep beams. Those beams are currently not included in collision detection.
- You must not specify a different configuration folder name and directory other than Finale's default ("Configuration Folder" or "Konfigurationsdateien"). Otherwise the directory will not be detected and the plug-in doesn't work.
- The superscript command is not yet supported in collision detection and niente alignment.
- Rest optimization is currently not activated on slash and repeat style measures with multiple layers.
- Document default fonts (from the Document Options->Fonts menu) are only partially supported if they are set to "Fixed" size (which they usually aren't).
- Resized staff systems have not been fully tested yet (-> planned for future update). If possible, use other scaling options like staff height or page percentage.
- Only partial support yet for individually resized staves.
- The plug-in has many optimizations for two-staff groups, like piano notation. These do not always work on three staff groups (e.g. a piano in contemporary three staff notation).
- User-defined font annotation files are currently not supported. Only the original font metrics are used. This can lead to incorrect metrics and thus collisions or too big distances if the Finale document loads user-defined FAN files.
- Staves that don't have 1- or 5 staff lines are only partially supported in spacing/collision optimizations.
- The values from the Smart Shape Placement menu are currently not accessible from JW Lua. So the plugin assumes the default values.
- An OTF/TTF font file must be available on the hard disk for font metrics analyzation in OS registered font directory, otherwise the metrics are not available.
- Priorization: manually adjusted tremolo articulations may be messed up when the connected note entry has illegal flags (like Special or Voice2Launch). So note entry flag correction has a higher priority than tremolo articulation placement. So it's recommended to run for example the JW Yada Yada plugin after having run the Perfect Layout plugin.
- The plugin has not been tested with the international versions of Finale and might not fully work in these because of different keywords. If you notice a difference, please contact us.
- Windows Powershell must be installed (usually is in Windows)
- minimum 4 GB RAM, for huge orchestra scores exceeding about 20.000 frame assignments 8-12 GB RAM and Finale 25/64bit are required, otherwise the plugin may run out of memory.
- About 70-100 MB of free hard drive space, plus space for the font annotation files dependent on the number of fonts that are installed
- For the installation you need a user with administration rights
- Internet connection during the installation and update process, and an email address to receive the activation code or an installed email program to request the activation code.
- Internet connection for accessing the online documentation.
- The faster the processor speed, the faster the plugin (see this comparison). The plugin is single-threaded, so multiple cores do not speed up the processing.
- Data Privacy: For the activation and license validation of the software the following data will be stored on our servers: serial number, registration name, registration email address, number of activations and deactivations, date of activation. During the activation process an anonymous computer ID will also be transferred, but not stored.
- on piano staves if the bottom staff is empty, but holds a pedal articulation and dynamics assigned to the top staff, the dynamics will not be shifted below the pedal articulation anymore
- When importing old documents from the 90s (without expression categories), rehearsal mark letters assigned to the end (!) of the measure (instead of the beginning of a measure) are not moved to position 1 in the current, but in the next measure.
- in Finale 25/26 time signatures in the parts were sometimes not detected when "Show Time Signatures" in the score (!) was deactivated. In Fin2014/2014.5 it worked fine.
- Articulations that use font style set to hidden are not taken into account for collisions
- Inner pick-up measures (i.e. pick-up measures after measure 1 that use the "Time Signature for Display"-feature where the internal time signature is a fraction of the display time signature) sometimes received a whole measure rest instead of their pick-up rest.
- Trill smart shapes are not moved over accidental articulations anymore (though smart shape + accidental articulation isn't best practise either: use a custom trill smart shape instead that already includes the accidental for best performance)
- Better error message on a "hard disk is full" error
- The user dialog buttons now right-align again on the Gold user interface.
- Breath mark comma articulations that are placed horizontally away from the note and directly above the staff line are kept at this position (they are not reset to the default placement of the breath mark comma anymore).
- Better support for enclosures using "Options: None" combined with the "Fixed Size" attribute.
- Improved placement of dynamics on very low notes with slurs that also have a dynamic on the end position of the slur
- Improved placement of bracket expressions (e.g. "( )"): they are not treated as technique text expressions anymore and thus not moved on collisions.
- Improved pedal articulations are not taken into account anymore for tuplet collisions
- Improved installer: better activation on two computers
- Improved tuplet bracket angles on brackets that start with a rest
- Improved detection of "nearly horizontal" hairpins
- Improved rest displacement on consolidated rests
- Improved tempo mark detection of expressions in the Miscellaneous category
- Improved placement of custom trill smart shapes
- Improved placement of text expressions with many (invisible) "empty space" symbols at the end of the text (in some cases the plug-in used detect collision where there weren't any)
- Improved metrics for vertical staff spacing on accidentals of cross staff notes
- Hairpins ending on fermatas are now only snapped to the next note if they are visually very close to the next note.
- Improved import of expressive text expressions (better alignment settings in many cases)
- Improved placement of smart shapes on vertical collisions if the colliding object is on measure position before the smart shape start position
- When Optimize Spacing Settings is activated, then "Scale Manual Positioning of Notes" from Document Options->Music Spacing is deactivated (usually leads to better grace note spacing) and "Grace Note Spacing" is set to "Automatic".
- User dialog correction: vertical space removed on the "Hairpins" tab before "Diminuendo Offset Right"
- Improved placement of text expression next to f dynamics, if the text expressions are not on the same baseline as the dynamics (slightly further away from the upper right corner of the dynamic f)
- Improved vertical collision offset for some smart shapes over articulations collisions (if the articulation glyph goes below the font baseline)
- Improved support for piano notation with three staves
- Improved placement of diagonal hairpins
- Improved attachment and alignment of ottava smart shapes
- Improved placement of measure numbers if two or more measure number regions with similar settings are valid for the same region
- Improved detection of font files from complex font names that appear in different combinations of " ", "-", "bold" and "italic" (e.g. MinionPro-Bold-Italic=Minion Pro-BoldIt=Minion Pro Bold Italic)
- Improved detection of font files which don't include their full name in the postscript name or full font name entries in the ttf meta data.
- Improved measure moving to previous systems on very wide expressive text expressions (not only on tempo marks and tempo alterations as before)
- In some cases improved note spacing (=note collision removal) on beamed notes with accidental collisions
- Improved placement of p dynamics on very low notes (slightly closer to the note)
- Improved detection of two "connected hairpins" if the note entries have a manual offset and don't match the position of the hairpins attached to these notes.
- Improved start position of hairpins on certain multi-layer/multi-voice scenarios
- Improved optimized hairpin settings: slightly increased line thickness (3 EVPU) if Finale's default value (1,79 EVPU) was still used.
- Improved warning message on Finale 26 and articulations compatibility
- Improved detection of correctly flipped stems
- Improved placement on 8va smart shapes that are continued on to a second system
- Improved automatic detection of visual differences in scores between each plug-in version
- Improved dynamics+expressive text on the same beat ABOVE the staff are not torn apart vertically (according to the distances to notes below), if they already (more or less) vertically align.
- Improved articatulion/tied backwards collision detection at the beginning of a system
- Improved detection of duplicate expressions (especially in old Finale documents from the 90s)
- Improved rest splitting/merging (e.g. for 5/16, 9/16 and 12/16 measures)
- Improved detection of tempo marks/alterations ("stringendo" and "rubato" are not detected any more as they are sometimes used as expressive text too)
- Automatic category expression assignment for MusicXML and old 90s imported Finale documents now also works for the mixed music/text fonts FreeSerif and Symbola
- In complex multi-layer/multi-voice scenarios long notes tied over the center of a measure at the wrong position are not adjusted in duration anymore to make the middle of the measure more clear.
- Entry-based glissandi that end with modified hidden notehead are now handled much faster in the metrics calculation (seems to be a Finale or JW Lua bug)
- Improved detection cue note layers
- Horizontal collision removal of dynamics and other text-only expressions that overlap below the staff.
- New user dialog option in the Reset/Hide dialog: remove flipped stems also on slurred notes (deactivated by default).
- New user dialog option (in the Gold edition): allow/remove collision on dynamics ABOVE the staff with barlines ("Prevent Barline Collisions of Dynamics" in the Express." tab). This value is deactivated by default.
;v1.0000 2019-08-03 (RC1)
- Font metrics file creation would fail in some cases
- Horizontal placement of subito and più expressions (e.g. "sub. f") now works correctly again.
- No more error message if the piece starts with several measures that only include hairpins.
- If only a small region at the beginning of the document was selected (e.g. measure 1-3) in some cases the "full document selected" flag was set which could lead to a longer pre-processing time
- Improved horizontal positioning of dynamics, expressive text and hairpin on (individually) resized staves.
- Measure numbers at the start of a system on an (individually) resized staff are now placed better vertically.
- Above staff dynamics on beat 1 are moved to the right (as below staff dynamics) if they collide with the barline.
- Below staff tuplets on lyrics staves are not put above staff if there is already a slur above the staff at that position.
- Improved collision detection on rehearsal and tempo marks with tuplet brackets and tuplet numbers.
- Non-rehearsal/tempo mark expressions above the staff are not horizontally shifted towards a rehearsal mark at the same measure position (and thus being closer than the allowed min. distance) if they collide with a slur or tuplet.
- Improved horizontal connection of dynamic expression and expressive text in parts, if they are pretty far away apart in the score, but pretty close or even overlapping in the part.
- Improved detection whether tuplet brackets are required or not.
- If a piece ends with a very short single coda measure on the last staff system, this measure will not be automatically moved to the previous staff system (as it is a coda measure). It's up to the user to decide, if it should be moved up.
- Better support for Adobe Blank font (font metrics file is created and read much faster).
- Improved font folder priority when searching for font files.
- Better warning message if the plug-in crashes because of the Finale PDK/JW Lua "measure numbere region" bug (also see https://elbsound.studio/perfect-layout/faq.php#go-to-other17)
- Sometimes the very first hairpin on a staff didn't get the optimimum start position below a note.
- The progress bar now supports other Windows designs and colors (e.g. high contrast designs).
- Invalid group start measures (below 1, displayed in Finale as 65536-x) are set to 1.
- Rehearsal and tempo marks on (individually) resized staves can get a larger vertical distance to match the distance on the non-resized staves.
- Translations of the manual with all web pages to German, Italian, Spanish, Polish and French.
- An error message could occur in very rare cases of hairpin with note collisions
- Slurs below the staff are now always detected correctly (in some situations they were not detected correctly which lead to some weird tuplet bracket placement).
- If hidden staves in the score were at the same time individually resized (e.g. to 60%) and used in a part, the vertical score balancing would produce collisions.
- Infinite loop fixed that could occur in a very rare case of hidden staves with reh. mark expressions that use enclosures that re-appear in the score as the top staff when "Reflow Across Systems" was checked
- Expressive Text expressions were sometimes too close to the bottom staff line (bug introduced in 0.9654)
- Hide hairpins, custom lines and trill smartshapes in cue expressions measures did not work in all cue measures.
- If no dynamic expressions were used in a document, then a warning message popped up saying that all dynamic expression were placed above the staff. This has been fixed.
- Recreation of multi-measure rests is now performed the same way in parts no matter if the plug-in is applied to the score (and thus all parts) or to the part only. (If applied to the part only, it used to do a measure reflow less often).
- Better removal of horizontal collisions of two chord symbols in parts, if both the score and the part have only one visible staff at that measure.
- In very rare cases an error could occur when using linked parts with specified voicing on calculating the lowest visible note.
- The PDF manual has now a black font color for better print readability (instead of dark grey).
- Improved multi-measure rest metric creation if a multi-measure rest block starts with a repeat bracket and a text repeat element.
- Improved placement of text repeats
- Improved collision detection of multi-measure rest numbers at the end of a system in a measure with a backwards repeat bracket.
- Numbers on multi-measure rests on 1-line staves that are from a handwritten music font with vertically centered placement of digits (as in Jazz font) are now placed better on multi-measure rests.
- Online documentation updated for some of the recent improvements
- Improved vertical score balancing on congruent staves (fully overlapping staves with a distance of 0 EVPU). The support of this rarely used feature is still not optimum, but at least the staves are not torn apart anymore.
- Improved user dialogs
- Improved placement of left-aligned repeat text symbols at the beginning of a measure on collisions with notes, rehearsal mark expressions and/or repeat wings.
- Installer stability (UTF8 support for jwpluginstorage.xml and support of settings files with more than 100kb length)
- Improved connection of dynamic expressions to the left end of a hairpin on slash notation with (hidden) rests
- Cresecendo hairpins that collide with (bottom) accent articulations are automatically moved slightly upwards, because of the similar steepness and thus less vertical space required.
- Collisions of notes with clefs at the end of a measure are better spaced when the spacing/width of the adjacent measure changes.
- The ES Perfect Layout Demo.musx document file has been updated (especially the parts).
- Improved batch processing support including an automatic save feature (with 'PL' added to the filename).
- New PDF manual that includes all relevant pages from the online documentation. The PDF included in the installer, available online https://elbsound.studio/download.php?f=Perfect%20Layout%20Manual.pdf and as web page https://elbsound.studio/perfect-layout/manual-for-print.php .
- The installer now supports two activations of the plug-in if the license key allows two activations. Read the FAQ (https://elbsound.studio/perfect-layout/faq.php#go-to-installation10 ) on how to activate two installations.
- Two tempo marks in the same measure at the measure position 0 could collide under certain circumstances at the beginning of a system
- If measures at the end of a score were removed before applying the plug-in, Finale sometimes keeps invalid smart shape end positions. In one rare case the plug-in would issue an error message. This is fixed now.
- If one visible articulation was below the staff and one invisible articulation (e.g. bow mark) above the staff, the bottom articulation could collide with a tie under certain circumstances.
- In a few cases automatic measure widening for wide tempo marks was not activated. This is fixed now.
- If trill lines spun over at least three systems and at the same time collided with bow marks, a plug-in error could occur.
- Tempo marks and alterations from MusicXML documents are now again set to use category positioning of the tempo marks / alterations category (if it makes sense). This used to work, but was broken for a few versions.
- Expressive text expressions in connected dynamic and expressive text scenarios (i.e. mf + cresc.) were sometimes vertically torn apart
- Tempo alterations and rehearsal marks in imported MusicXML documents are now detected correctly and automatically moved in the correct expression category if they use a "music and text" font like JazzText.
- Improved horizontal placement of dyn. expression on measure position 0 that have a very low horizontal offset (e.g -100), but are placed after the barline.
- On imported MusicXML documents (or very old documents that don't use expression categories yet) tempo and reh. mark expressions that are detected as "valid marks" are removed from those staves that don't belong to the staff list of the expression category
- Improved vertical score balancing on documents with a handwritten music font and huge violin clefs
- Improved prolongation of repeat brackets with system breaks on the second system when the second system includes multi-measure rests
- Right-aligned "subito pp" dynamics that collide with a barline on the left are not automatically moved to the right anymore (but it's recommend to use "pp sub." for clearness)
- Improved installer stability
- Improved vertical lyrics alignment on hyphens
- Improved vertical lyrics alignment lyrics that are added to a non-vocal instrument: when there also notes before or afterwards on the system staff that don't have lyrics, these are not taken into account for lyrics alignment.
- Improved vertical system staff alignment on staves that have small very low elements and improved alignment on empty staves and on staves with lyrics
- Dyn. expressions in user-defined expression categories get a better horizontal offset if they are set to "Center of primary notehead", instead of the Finale default "Left of primary notehead".
- Improved rest split on orchestra scores with 5/4 (2+3 or 3+2) time signatures that use whole notes
- Tempo marks on measure position 0 that collide with notes to the right will not be moved up above the note, but to the left if it is only a small movement to the left to prevent the collision.
- Improved placement of rehearsal and tempo marks over cancel key sigs on a bass clef staff when changing to a flat key sig.
- Improved placement of rehearsal marks at the beginning of a system in case of a rare collision
- Improved placement of rehearsal marks after an open second ending repeat bracket
- More tolerance on connecting hairpin ends with end of measure or rests at the end of a measure when the next measure is empty (i.e. more hairpins are prolonged to the rest)
- Improved visual score balancing on extracted parts if a system has only few peaks and thus a large white area between two adjacent systems
- The enclosed letters from JazzText and SwingText font (symbols 0xd8 - 0xf1) are recognized as rehearsal letters
- On documents with handwritten music fonts the default horizontal distance between dynamic and expressive text expressions is automatically slightly increased (e.g. the distance between mf and cresc. on the same measure position)
- Improved vertical placement of expressive text expressions below the staff if they collide with other symbols that are on other measure positions
- Improved collision detection of left- and center-aligned repeat text expressions
- Improved expression below baseline for handwritten fonts
- Improved detection of coda repeat texts (e.g. D.S.al coda), if these are enclosed with non-asci characters (as in JazzText or Finale Copyist Text)
- Improved handling of coda systems
- Improved placement reh./tempo marks at measure position 0 if the previous measure ended with the coda sign.
- Improved chord spacing on chords at the end of a measure that are very close to the chord on the next measure beat 1. In some case "space at the end of the measure" will be added instead of doing a music re-spacing with "Include Chords" activated.
- Improved hairpin start if rest and note are on the same measure position and the note is slightly shifted (then the hairpin will align with the note, and not with unshifted the rest)
- Improved vertical alignment of "outlier" tempo marks in difficult collision scenarios (especially with very high slurs)
- Improvement handling of "the last measure" in parts: if the last staff system only consists of a single (short) measure, it will be automatically shifted to the previous system.
- Fermata expressions in the rehearsal, tempo mark or alteration category are not aligned vertically anymore with other text expressions from these categories (It's recommended though to have fermata expressions in the technique text category or to use a different vertical alignment point than in the reh./tempo mark categories, otherwise the fermata might be placed to high)
- If all dynamic expressions are above staff with vertical click position alignment and no lyrics have been found, then a dialog will pop-up and ask if they should be moved below staff and use the standard positioning.
- Opaque background on rehearsal, tempo marks and alterations can be automatically removed (as the plug-in will remove the collisions anyway, an opaque background is usually not necessary anymore). You can select "Don't Remove", "Always Remove" or "Remove If At Least 80% of the Expressions Are Opaque" (which is the default).
- Automatic repeat bracket staff lists: it's now possible to select if the repeat brackets should only appear on the top staff, top of the groups, top of the groups and single staves, all staves or to keep it as it is. If the plug-in detects a staff list that is assigned to the repeat marks and which is not only an "All Staves" list, then by default the plug-in will select "Keep it as is".
- Invalid word extensions (i.e. not connected to note entries) are deleted as they can span over several pages on the score
- Problems with the installer on Windows 7 (introduced with last version 0.9650)
- If a 1-line staff only has notes on one pitch and these are above or below the staff line, then they will be moved onto the staff line (activated by default).
- A few corrections in the plug-in's main dialog
- Improved score balancing if a score uses measure numbers between staves and at the same time rehearsal mark expressions that hide measure numbers, but that are placed in a different staff
- Improved installer stability
- Improved measure number metrics function
- Performance of font metrics reader has been improved
- Malwarebytes anti-virus has blocked the plug-in update tool in previous versions. They now have removed the block.
- If two nested group brackets were used (one with curves, one without), then a collision with a measure number could occur.
- If a music font is used for measure numbers with digits that are vertically centered on the font baseline (instead of put on top as in text fonts), the measure numbers at the start of the system are now placed correctly.
- Horizontal placement of dyn. expressions on very low notes with tie backwards
- The coda system detection works faster now.
- Speed boost of ca. 11-15% on Windows and 25% on MacOS by introducing a few optimizations
- The "How to use Perfect Layout" document is now included as a PDF in the installer
- The plug-in and the installer now issue a warning message if Windows PowerShell is not installed on the computer (under normal circumstances it is always installed on Windows 7, 8 and 10). If it is not correctly installed, neither the plug-in nor the installer will work as it is necessary system requirement for the installation.
- Improved placement of dynamics before very low notes
- If PowerShell is installed, but not included in the Windows environment variables (which seems to occur on some Windows 7 installations), it will be automatically added (but it requires a reboot of Windows).
- Improved glissandi distances
- Multi-measure rests are not squeezed anymore on a crowded system with lots of horizontal note collisions that get extra horizontal space from the plug-in
- Automatic multi-measure rest measure range placement uses a more intelligent algorithm and only updates the default placement values if necessary
- If the multi-measure rest range font is a music font, then the brackets are not updated to "[" and "]" anymore.
- Improved vertical alignment of trill articulations with wiggle smart shapes
- Improved vertical placement of custom smart lines and trill shapes above notes with ties and/or accidentals
- Improved note spacing on note-to-note collisions in multi-layer/multi-voice scenarios
- Hairpin with tie/slurs collision removal improved in a few cases where ties, slurs and/or hairpins span over several systems
- Dynanmic expressions at the very end of an empty measure are moved forward to the next measure if that one has notes on beat 1 on no other dynamic expressions.
- The rehearsal marks at beginning of system placement has a new option "Keep Current Position".
- The installer now has the option to change the default plug-in folder in your Finale menu. If you use a folder name like "ZZZ Elbsound JW Lua" instead of "Elbsound JW Lua" it will be added at the end of the plug-in menu and won't mess up with any macro settings.
- Notes in octaves both doubled with unisons on another layer are not torn apart anymore (both layers will keep the note entry offset of 0)
- long vertical or diagonal custom smart shapes (solid lines, dashed lines, etc.) are not taken into account for staff spacing in piano groups (i.e. they don't lead to unnecessarily big staff distances anymore)
- If group brackets are automatically added, then on piano groups piano braces will be used.
- Whole measure rests are not removed anymore, if the staff (style) is set to not show whole measure rests in empty measures
- Wrong rehearsal mark width calculation in some cases which could lead to other tempo mark expression next to it having a too large horizontal distance to it
- When the Human Playback plug-in was used and it generated hidden tremolo playback notes, the stem direction of the notes could be wrong.
- A collision between a rehearsal mark and a tempo mark could occur under certain circumstances (at least three rehearsal marks on one line and two at the same measure position and one in a different measure at an outlier position).
- Piano (or organ) systems now have a better support on cross staff notation metrics/collision removal if they consist of 3 staves.
- Improved placement of dynamics on cross staff notes
- Invisible custom smart shapes are not replaced according to close notes, but just ignored
- when the page format settings of the first part are different to the default settings, the plug-in automatically updates the default settings according to the part (in previous versions this was only done in the score, but not in the part)
- Improved font detection for font Times, and for fonts with bold or italic styles.
- Improved horizontal distance between tempo marks and rehearsal marks with opaque background that is wider than the expression itself (e.g. with the EnclSerif font)
- Improved hairpin/dynamics spacing in very narrow measures if there is in general enough space on that system.
- Improved score balancing on measure numbers between staves with fixed size fonts
- Improved hairpin/dynamics spacing in very narrow measures if there is in general enough space on that system.
- An error could occur in a document with linked parts that use the "Specify Voicing" feature where ties or tuplets in the score appear
- In rare cases in extracted parts with hidden staves in some systems (e.g. percussion parts) multi-measure rests could span over a time signature change
- In 3/2 time signature whole measure rests were accidentally split into to half rests
- Forte-Piano marks consisting of two separate dynamic expressions are now better handled if they are both expressions are shifted away from a measure position
- When automatic staff hiding was activated (e.g. for percussion parts), in rare cases (especially in short parts with less than 30 measures) a metrics problem could occur
- In automatic score balancing huge instrument groups with more than 15 staves (e.g. a triple woodwinds plus doubling instruments) are now correctly detected as a "super group" which leads to a better sub-group vertical spacing within the group
- Vertical custom smartshape lines are not repositioned anymore (in rare cases they used to become slightly diagonal)
- The option "Double Barline Preceding Key Changes" is only automatically activated if the document has just one key change
- Many more messages can now be hidden after they are shown once. But make sure that they are really irrelevant to you.
- Improved note metrics on linked parts with specified voicing
- Improved placement of dynamics on very low notes followed by a hairpin
- Improved tuplet metrics
- Better support for 0-line staves in automatic score layout
- Homepage compatibility with mobile phones and on Safari browser improved
- custom trill smart shapes with several letters (e.g. tr 1/2) are now correctly detected as trills as along as they include the trill and the wiggle symbol
- Improved (=closer) placement of f and fff dynamics below an accent (">").
- Improved placement/metrics for rehearsal marks with enclosures
- Correct ledger line detection and staff position calculation on non-standard key scores (seems to be a new detected JW Lua bug)
- Improved score balancing for piano staff groups that at the same have a second larger group bracket (for example for group two pianos)
- Huge measure text blocks (i.e. speaker texts) are now fully included in automatic score spacing if they are close to the measure. Make sure to vertically and horizontally align them manually before calling the plug-in as this is not done automatically. These text blocks are also only taken into account if they are assigned to a measure (and not a page).
- Automatic score layout now supports the coda plug-in for one staff systems (i.e. two staffsystems on one line)
- if you append EXCLUDE to the description text of an expression (in the expression dialog), the expression will not be included in alignment and keep its position. While this is usually not necessary, there are a few cases where this makes sense in order to get a good automatic score spacing.
- Added a new option for score balancing: always spread the system(s) until the page bottom, even if this requires very wide distances between the staves. The same result was already possible before by increasing the max. distance between staves to a very high number (e.g. 9999 EVPU), but now it's one click on "Force Spread To Page Bottom Margin" (next to max. distance between staves).
- The option "Shorten right end of hairpins if they end on an empty measure" (Gold: Hairpin Tab, Silver: Alignment Tab) can now be activated and deactivated (it used to be always activated, but for contemporary scores it should have the option to deactivate)
- Repeat texts with enclosures, but a line thickness of 0 are now handled as repeat texts without enclosures
- An error could occur on collision of rehearsal marks and invisible tuplet brackets (only if not the whole document was processed)
- An error could occur on note collisions between layers 2-4 (only if not the whole document was processed)
- Text expressions that have the auto-rehearsal mark code "^rehearsal()" in the text, but do not have the auto-sequence checked (maybe this is a Finale bug?), now get the correct width metrics calculation.
- Some kerning pairs were not correctly read from the font metrics files
- Error in the Finale Copyist Text font metrics calculation which could lead to collisions in expressions with enclosures. The
font Finale Copyist Text Ext was not affected.
- OTF fonts are now supported if they are not located in the standard fonts folders
- Plug-in issued an error message on some international Windows7 editions (Windows 8 and 10 were not affected)
- on some document duplicate additional staff styles were created
- Measure counting expressions on one-bar repeats were sometimes wrong when the chord symbol changed
- The "Scan for updates" button sometimes returned the wrong result ("No update available"). This is fixed now.
- If the plug-in was cancelled through the user because of a missing font, then the Finale Window was not always restored automatically.
- Correct measure counting expressions on one-bar staff styles if multiple staff styles are used in some measures and more than one of them is a one-bar staff style
- Bottom staff lines didn't align across pages in some cases when staff scaling changed from system to system
-Technique text expressions under repeat brackets are not moved anymore on top of the repeat bracket, if they don't collide
- An error could occur (introduced in the last update) when measure counting expressions were added
- Repeat texts in the middle of a staff system at the start or end of a measure don't collide with a barline above the staff anymore.
- Installer stability
- Improved collision detection of enclosures
- Improved placement of dynamic expressions on very low notes before the note
- Speed boost, especially on long pieces, for placement of measure numbers
- Improved measure number metrics at beginning of a system
- Better metrics/collision support for all known figured bass fonts (see this figured bass fonts list)
- The "Automatic Update Layout" option from Finale's preferences is not automatically deactivated anymore at the end of the plug-in processing.
- Improved compatibility with Finale 26 (JW Lua officially still doesn't support Fin26): Articulations on slurs are now handled better
- Improved multi-articulation collision removal on slash style measures with hidden slurs
- Improved vertical alignment of two connected hairpins at the beginning of a system: sometimes they were not aligned, although they should have been
- Improved placement of dynamics under very low notes that are tied
- Improved metrics for fonts that use styles (bold, italics, fixed) and enclosures
- Improved position reset on shape expressions
- Automatic detection and handling of multi-letter rehearsal marks with blank spaces (e.g. "II A" or "BB 2")
- Improved note metrics on linked parts with specified voicing
- Measure counting expressions now always appear below measures with chord symbols unless the measures have hairpins
- Three new measure counting options in the user dialog:
1.) Switch on/off measure counting expressions
2.) Set minimum number of one-bar repeat style measures for counting
3.) Set minimum number of slash style measures for counting
- If a corrupt Finale document has an extremely high top staff distance value in the global staff set (we found the value 1090453505 in a client's document), the score isn't visible in Scroll View and it can cause the plug-in to crash. These values are now detected and automatically fixed, so that both the score is visible again and the plug-in doesn't crash.
- The new vertically aligned Figurato font is now partially supported: if you also have the FiguratoMAC font installed, it will calculate the correct collision metrics in most cases (both for expressions and lyrics). Full support will still take a few updates as it requires support of OTF GPOS tables which are currently not implemented in our font engine.
- Horizontal solid and dashed line smartshape brackets above the staff are now included in collision detection.
- Improved performance of the new outlier feature introduced in v0.9580
- Improved performance of the multiple-notes (seconds and unisons) collision feature
-Tie metrics on invisible notes or staff styles that hide ties are not taken into account for automatic score balancing
-Tie metrics on rhythm notation staff styles with less than 5 staff lines are now correct
-Horizontal length of repeat brackets fixed on nested repeat brackets
- If rehearsal mark vertical alignment "per system" is selected, then outliers (tempo expressions much far above the others) are not taken into account anymore for finding the best fitting line. In this image the expression in the first measure is the outlier and only the other two tempo marks are aligned.
- on MusicXML imported documents bottom fermatas in multi-layer scenarios are placed on the correct (bottom) side
- in some cases the "Adjust top system margin to max. position of top staff in score" was always executed
- In rare case automatic score balancing of single staff systems could lead to an unnecessary page break before the last system
- if tuplet brackets start on consolidated rests Finale only shows the tuplet bracket of the currently active layer or the entry with the lowest layer number. The plug-in now only takes the metrics of the visible tuplet in account for collisions and score balancing.
- tuplet numbers below the staff sometimes collided with articulations
- 8va violin clef and 8va bass clef changes at the end of a measure are taken into account for rehearsal and tempo mark collisions
- dynamic expressions on very low notes on 1-line staves are now correctly placed before the note (if there is enough space, e.g. through rests)
- Improved placement of measure numbers at system start on inner staves in a score (slightly shifted to the right, if otherwise colliding with the system barline)
- Improved vertical placement of articulations in multi-layer scenarios
- Improved support for scores that use single staff resizing AND where the measure layout changes during the plug-in processing
- Whole measure rests in multi-layer scenarios that were not centered, but manually shifted slightly away from the center now stay at that position
- on tuplet number collisions with (inner) articulations a tuplet bracket will be added to make sure the tuplet number is still readable if moved further away from the notes
- if a document was imported from MusicXML and right after the import the plug-in was applied only to selected measures (and not to the full document as recommended in the documentation), then dynamic expressions could move to wrong vertical positions. With the fix they are not moved anymore.
- Repeat measure counting expressions are now added correctly to measure 1 (under certain circumstances two expressions used to be added instead of one)
- Improved placement of dynamics in empty measures
- Improved handling of tremolo articulations that have been sent through JW Yada Yada, but which a completely wrong default placement
- Improved detection of measure number/curved group bracket collisions in multi-group scores
- Improved handling of dynamic expressions assigned to a measure position far beyond the measure duration (e.g. position 12288 EDU in a 4/4 measure with only 4096 EDUs). In previous versions they were only handled correctly until 3072 EDUs above measure duration.
- Repeat measure counting expressions now have less collisions if placed on top on notes
- "Force consolidated rests": creates consolidated rests if non-consolidated rests are in the score. This is especially interesting on MusicXML imported documents as they don't conserve Finale's consolidated rests feature. If the plug-in detects a MusicXML imported document, this feature is automatically activated in the user dialog and needs to be deactivated manually, if unwanted.
- Bug introduced in 0.9568 fixed: if only a single measure was selected, page scaling and/or page margins can get wrong values in certain cases
- Improved placement of custom smart lines on slur collisions and if the custom smart lines span multiple systems
- Improved vertical placement of articulations in multi-layer scenarios
- Improved placement of dynamics with expressive text in certain scenarios
- In extracted parts cue instrument text expressions that are connected with cue note layers (2, 3 or 4) are now assigned to the score (not to the linked part)
- Measure numbers on measures with time signature changes were not moved onto the barline as they should
- "Hidden text" expressions (i.e. invisible texts) that have a visible enclosure are now correctly taken into account for collision detection
- Bug in the font database fixed
- Improved MusicXML text expression adjustment
- Improved collision removal on tempo marks and tempo alterations on top of each other
- When "Always Apply Music (Re-)Spacing" was activated and Reflow Systems and Remove System Locks were checked, then an error could occur if the system layout das drastically changed through the plug-in. This has been fixed.
- An installation bug that only occured on Windows 32bit platforms was fixed.
- The Finale 26 installation now also works if the temporary files folder includes non-ASCI symbols.
- Multiple tremolo articulations on multiple layers are now correctly aligned.
- Technique text expressions are not moved onto the staff lines anymore
- Expressions with the text "0" are not suggested as niente expressions anymore if the next expression ID is "1"
- Systems that have both 1-line and 5-line staves as top staff on some systems now align correctly at the top margin (same for bottom staff/bottom margin)
- Metrics calculation of multi-measure rest ranges fixed for 1-line staves on parts with multiple staves
- Multi-measure rest creation bug fixed for instrument parts with multiple staves and one staff being completely empty
- The font metrics were sometimes not read correctly if the music font only included very few symbols (e.g. RealBook Chords).
- Multi-measure rest numbers are not shifted down on 1-line staves if they are MMRests with rest symbols
- Cancelling the plug-in now restores the document options that had been changed during the start up process of the plug-in (e.g. Double Barline at Key Sig Changes, Curve Resolution).
- In rare cases corrupt Finale documents can include text expressions that don't appear in the Expression Selection dialog, but that are visible in the score. The plug-in doesn't crash anymore when it encounters these "ghost" expressions.
- Note spacing bug fixed (if the minimum measure width was different to 150 EVPU, then not all re-spacing functions were activated. Now they are again.)
- Metrics of top and bottom position of one-bar repeat symbol on 1-line staves is now calculated correctly
- Installer stability
- Font detection improved for fonts that don't have postscript names (e.g. capella)
- Added warning message if the option "Reset Vertical Pos of Note Articulations" is unchecked as this might lead to incorrect articulation metrics in rare cases.
- Warning message is displayed if the plug-in updates the reflow settings.
- Improved detection of user-defined tempo marks, tempo alterations and rehearsal marks categories
- Better detection of scores that are actually parts
- Improved measure number placement over curved group brackets
- Improved detection MusicXML expressions
- Multi-measure rest ranges are now also shown if the adjacent empty measures are empty single measures which sum up to more than the required minimum number of empty measures to show the range (in previous version only mm rest measures were counted).
- Improved collision detection on smart lines over slurs and on slurs about dotted notes
- Improved detection of vertical order when multiple tempo and rehearsal text expressions are at the same measure position
- Improved automatic score balancing
- Improved measure spacing (in some cases) when two dynamic expressions collided horizontally
- List of fonts needed in MacSymbolsFonts.txt extended
- On a score that has at least 10% systems with only one staff the user will be asked if it the score is to be treated as a part or as a score? Several features are score/part-dependent (e.g. hidden cue notes, hidden part-only articulations, ...)
- Petaluma, SchottMusicOctav, SchottMusicStringnumbers fonts added to font database
- New option: "Hide empty staves in parts if reflow measures across systems is performed"
- Placement of system dividers (as page text elements) is now automatically corrected to the news staff system margins.
- On some computers the plug-in files were not correctly copied to the Finale plug-in folder in versions 0.9557/0.9558 - this is fixed now.
- The documentation of the Elbsound Music Font Package is now correctly linked in the Windows start menu (will only corrected on "Update", but only if full installation is performed)
- The online documentation now links directly to the individual Gold or Silver pages (not only Gold anymore)
- All user interface changes from the last four versions are now visible in the online documentation
- The cache control in the online documentation has been improved, so that the browser always loads the latest image (and doesn't display old images anymore).
- Articulations using a "space" symbol are not taken into account for collision detection anymore
- Installer stability improved
- The installer now shows a message at the end of the installation for which Finale versions the plug-in has been installed successfully. If a Finale version is not correctly registered in the system, the automatic installation might fail.
- The installer now includes a warning message to not select the Finale plug-ins folder during installation for the Perfect Layout system files.
- Improved recognition/creation of multi-measure rests: if one of several empty measures includes a hidden time signature change, an mm rest is now created.
- Improved metrics calculation on expressions with enclosures for score balancing
- Tuplets collision detection and removal and tuplet performance in automatic score balancing improved
- If an expression is automatically moved and finally ends up on a scaled note, the "scale with entry" property will be unchecked.
- Tempo mark, tempo alteration and rehearsal mark expressions in the "Miscellaneous" category are now also detected if they appear on multiple staves and moved to their designated categories (they used to be detected if they appeared on the top staff only)
- Alignment of all systems at the page bottom margin has been improved
- Miscellaneous, Technique text and unknown text expressions from user-defined categories that are below or above the staff now have a basic collision removal function: in case of collisions they will be shifted up/down until there is no collsion anymore. This is only activated if there is just one expression on that measure position above/below staff (in the image not in m.4 beat 1 in the image below) and if it is a text expression (not in m.2 beat 2). Multiple text expressions on one position are currently not corrected. This feature can be deactivated (Gold+Silver)and the vertical distance can be adjusted in the user interface (Gold only /In Silver it's always the Gold default value 17 EVPU).
- If "Reflow Systems Across Pages" is checked, the plug-in will now create better balanced parts when the document is an extracted part (linked parts are not supported yet).
- New warning message in the log file if an expression is extremely wide (>1000 EVPUs).
- Multi-measure rests with "classical look" that use 3 rest symbols become slightly wider (i.e. on 7 and 9 measure rests).
- Measures become wider (!) if a wide text expressions on beat 1 collides with a text expression in the next measure. If the system allows for wider measures (not in very dense scores), they now get enough space to not collide. Text expressions after beat 1 are currently not taken into account. This is a very complex process and is very much dependent on the context and the density of the measures, so it might not work in all cases. But it should lead to better spacing results and less fine-tuning than without this feature.
- New option: Set top margin of top system to max. position of top staff in order to avoid the top element to be above the top page margin.
- If the windows user name included spaces, then the plug-in in versions 0.9557 and 0.9553 issued an error message (not in the versions before 0.9553). This is now fixed.
- Minor correction of rehearsal mark metrics calculation for automatic score balancing
- Improved detection of true type fonts with styles bold, italic especially on fonts where Finale uses the postscript name instead of the font name
- "niente" and "quasi niente" text expressions are now connected to hairpins
- The Silver edition has now the option "Optimize Tuplet Setttings" in the Optimize tab. In previous versions iit used to be set to "always activated" (=default value in the Gold edition).
- If more than one part has measures without beat chart elements, then the "Always Apply Music (Re-)Spacing to Full Document Before Processing" option will be automatically checked
- combinations of "f" and "p" dynamics were not correctly merged to "fp" when hairpin started on same measure position
- Jazz scores will keep the "Above" placement on tuplets (and not set to "Stem side") if tuplet optimization is checked
- The "Max Slope" tuplet default value is now 10 again as in Finale's default document (and not 1).
- No more hairpin/tie collisions on low one line staves
- Multi-user and installation on non-admin accounts now works again
- Completely empty staves at the bottom of a system are now correctly aligned with the page bottom margin
- Rehearsal/tempo marks assigned to used-defined category that doesn't use staff lists is now again correctly aligned vertically with other rehearsal marks
- The "Check for Activated Concert Pitch" has been disabled for Fin25/26, because of a bug in JW Lua. It doesn't return reliable results in Fin25/26.
- More .ttc, .ttf and .otf fonts are now supported/detected
- better detection of the font encoding on music fonts from MacSymbolFonts.txt that use the postscript name instead of the original name with spaces
- better readability of the online documentation on mobile phones
- Score balancing: improved enclosure calculation of measure numbers between two staves
- Installer restructered for much faster updates and faster installation
- Improved installer stability
- Extra measure space for note collisions is not added anymore if the page is already extremely crowded. In previous versions this feature only looked at the current measure, in the new version all measures of the current page are taken into account.
- Rehearsal mark texts are not shifted below horizontal offset 0 if they are attached to the "Left Barline"
- Automatic score balancing imrpoved when only the top staff in an orchestra score does not belong to a group and it is followed by grouped staves
- The updater tool now issues a warning message if updating is not allowed, but only uninstallation and new installation.
- The updater tool now shows "Update" as the default selection (not "Remove").
- Support for MacOS .suit fonts that include ttf data
- If the reflow options are set to "Reflow systems across pages" and to "Remove System Locks", then all "Begin a new staff system" entries from the Measure Attributes dialog can also be automatically removed (in the last update 0.9553 this feature was only added for manual page breaks). These entries often occur in imported MusicXML documents.
- More TTF/OTF fonts are now correctly detected and their metrics files are automatically created
- Some Windows encoding problems with have been fixed that caused problems with the plug-in activation
- Vertical alignment of dynamic expressions with multiple layers and grace notes before fixed
- In linked parts that use a staff with more than one layer and "Specify Voicing" activated colliding notes are not shifted beyond measure borders anymore.
- The "Display in Concert Pitch Detected" warning now works again correctly.
- Hairpin distance to the bottom staff now again has the correct value if the measure also has tied notes.
- Meta tool assignment is not changed through the plug-in anymore
- Rest optimization in 9/8 and 12/8 measures with x/8 time signature (and not x/dotted quarters time signature)
- Installer stability
- Unused expressions that the plug-in creates (two 5-staff line expressions, a comma and a dot expression) are automatically removed if the full score is processed
- The sub sections in the online manual and FAQ can now be linked directly. This allows faster, easier and more detailed support (https://elbsound.studio/perfect-layout/faq.php#go-to-other13 ).
- As part of the conversion of the plug-in for MacOS, the plug-in will now only scan the available system fonts the first time the plug-in is called. This saves ca. 0,5 - 1,5 seconds on Windows, but up to 10 seconds on MacOS if you have many fonts installed. If your document uses fonts that you have added to your system after the plug-in installation, you can also manually rescan for fonts on the "General" tab.
- Bow mark/Trill/8va collisions are now also detected and removed on smart lines that span multiple systems (detection on the first and last system, the middle systems are not supported by JW Lua).
- Dynamics on very low notes are placed before the note if there is enough space (i.e. at the beginning of a system, on key/time sig changes and if rests before)
- Vertical alignment of multiple rehearsal marks, tempo marks and tempo alterations at the same measure position was improved
- The Elbsound Perfect Layout homepage has been improved for mobile viewing.
- New score balancing option: "Allow Overlapping Systems", e.g. for crowded piano scores. Not very recommended, but in some cases necessary to save space.
- Silver Edition: Rest optimization can now be switched off (in the Gold edition this was already possible)
- Articulations with "Always Notehead/Stem Side" and "Below/Above Note" can now be switched of for automatic placement on the opposite stem side in multi-layer/multi-voice scenarios. In previous versions only articulations with the "Manual" positioning were excluded.
- Trill articulations are now placed below 8va smart lines
- Bow marks are now placed above 8va smart lines if there is not enough space below, and below if there is enough space.
- Automatic removal of 2-tuplets to 2 notes without a tuplet bracket can now be switched on and off (default is on)
- If the reflow options are set to "Reflow systems across pages" and to "Remove System Locks" manual page breaks can be automatically removed in the score and/or in the parts (a new dialog will popup in this case).
- The vertical distance of hairpins to slurs or ties can now be set independently. Their default values have been slightly decreased.
- Two new options for the vertical distances of rehearsal and tempo marks to the top staff line and to other symbols.
- The Silver edition now has the identical output for score balancing as Gold
- Installer crashed on some Windows 7 SP1/64bit installations
- Installer stability
- AutoHotKey installation is not needed (and not included) anymore.
- Bottom alignment in score balancing improved on scores with different page bottom margins on several pages.
- The Silver edition now has 10 new score balancing settings to allow for more fine-tuning
- New score balancing option: "Min. System Distance Between Movements" for detecting multiple movements in one document (Gold only, Silver is always set to 400 EVPU)
- Rest optimization has now the option to include or exclude consolidated rests
- Rest optimization can now be switched on and off (in Gold edition only, in Silver it is always switched on as in previous versions)
- MusicXML: placement of expressions improved
- Improved dynamic/hairpin alignment and spacing
- "Force Tuplet Brackets on Unsymmetrics Tuplets" is only performed when the symbolic tuplet number is smaller than the number of notes below the tuplet.
- "Force Tuplet Brackets on Ambiguous Tuplets" improved detection
- Processing speed improved on trill lines with bow marking collision function
- Corrupted measure-attached smart shapes of any type (used to be: hairpins only) that internally have their end position beyond the last visible measure are now automatically detected and corrected
- Vertical positioning of unknown articulations on voice 2 improved
- Warning message issued if articulations are not included in music spacing
- Horizontal alignment of custom smart lines at the end of the measure
- Installer more stable
- MusicXML: Fixed "expressions removed" bug
- MusicXML: Auto-placement of MusicXML dynamics on the bottom staff in piano notation was fixed
- Alternate Finale-fonts that are compatible with Maestro are now also supported as "Default Music Font"
- Warning message issued if articulations are not included in music spacing
- Final barline metrics fixed for a special case
- Plug-in didn't show up in Finale's plug-in menu when JW Lua Auto File Folder Group feature was used before installation
- Dynamics/hairpin alignment on piano notation grouped staves with cross staff notes improved
- Dynamics that collided with accidentals could appear too far left on piano notation grouped staves
- Cue staff style hidden notes fixed in single staff score without parts
- Line spacing in text expressions is not changed anymore when unused MusicXML expressions are in the document
- Improved rehearsal mark and tempo mark alignment
- If the main plugin file (JALAYOU.lua) was missing in Finale's plug-in folder, it will be automatically restored from the Elbsound installation folder.
- Multi-measure rest measures that show a measure range above 99 or 999 will become wider.
- "Force Tuplet Brackets on Ambiguous Tuplets" has been added to the Reset/Hide tab and can be switched on/off. It adds tuplet brackets on beamed notes when the tuplet doesn't start on the first note of the beamed group and thus is difficult to read.
- "Force Tuplet Brackets on Unsymmetrics Tuplets" has been added to the Reset/Hide tab and can be switched on/off. It adds tuplet brackets when the tuplet note durations are unsymmetric (compared from start to middle and end to middle).
- New Option "Increase Tuplet Number If Max. Tuplet Note Duration Is Shorter": The feature was already in previous versions, but now it can be switched off optionally. It converts for example an 8th triplet made of 6 16th notes to a 16th 6-tuplet.
- New Option for rehearsal/tempo mark alignment: Keep Current Placement.
- "Reserve Distance Between Top and Bottom System Margin" has been added to the Systems tab. It defines the space between the top and bottom system margin after score balancing.
- Installer stability improved
- Installer made compatible with Microsofts Windows certification app
- "Windows Defender" warning fixed
- Installer opens "How to use" page at end of the installation
- Glissando horizontal alignment improved
- Dynamics/hairpin alignment improved
- Measure numbers on curved group brackets improved
- Page bottom alignment bug fixed
- A few minor things fixed
- Allow solid and/or dashed non-entry based smart lines as glissandi and include them in horizontal/vertical alignment (not checked by default and thus only available in the Gold edition)