Double-click the PerfectLayoutSetup.exe file to start the installation. The installation software will guide you through the installation process.
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.
A video of the Windows installer is available here.

MacOS: (example for the Gold edition. Replace Gold with Silver or Silver400 on other editions.)
Double-clicking the PerfectLayoutGold.dmg will mount the Perfect Layout installer disk image.
Then double-click Perfect Layout Gold vX.XX.pkg and you will be guided through the installation.
A video of the MacOS installer is available here.
You will receive the license key in the order confirmation email from the online shop (from "share-it!").
Look for "license key" in the email.
Note: it's not included in the PDF invoice, but only in the email text.

The license key is in the format XXXXXXXXXXXXXXXX (digits and letters mixed).
If it looks like this: 9999-9999-9999-9999 (digits + hyphens), it's the activation code (not the license key).

After you have installed the plug-in the license key and the registration data (name and email) are also displayed at the left bottom of the General tab in Finale (see image 1).

Image 1: Registration data on the General tab
The activation code will be sent to you via email after clicking "Submit License Key" in the plug-in registration dialog.
The activation code is in the format 9999-9999-9999-9999 (digits only!). You can delete the activation code email after activation. It's not relevant after the activation anymore:
these codes are one-time-only and are different every time you install the plug-in.

Image: Email with activation code.
The update code is included in the purchase confirmation email when purchasing an update (e.g. v1.0 to v2.0). The update code must be entered on the Download Updates web page to update your account to the new plug-in version.
After your account has been updated, the update code becomes invalid and can be deleted.
When installing the update (e.g. v1.x to v2.0), you again need the (original) license key from your very first purchase in the registration/activation dialog of the plug-in.
The update code is ONLY for the software download on the web page, not for the plug-in.

The update code is in the format XXXXXXXXXXXXXXXX (digits and letters mixed).
Your activation code is in the format 9999-9999-9999-9999 (digits only!).
The update code and license key are in the format XXXXXXXXXXXXXXXX (digits and letters mixed)

If your code includes any letters, it's not the activation code, but probably the license key.

The license key must not be deleted as it is required for all installations. Also for updates (e.g. v1.0 to v2.0). The update code and activation code can be deleted after their first usage. They are one-time-only.
Node.js is required for reading the metrics of .OTF (open type) fonts.
If it is not installed, only .TTF (true type) fonts are supported.
Perfect Layout v2.x requires at least Node.js version 14.16.1: Windows or macOS.
Perfect Layout v3.x requires at least Node.js version 16.17.0: Windows or macOS.
Older versions of Perfect Layout worked with version 12.x.

To check if Node.js works correctly, open cmd.exe on Windows (type in CMD in start menu)
or Terminal app on macOS, then type node and press Enter.
If everything is installed correctly, you should see a "Welcome to Node.js" message.

The installation of all components takes about 1 - 5 minutes (Windows) and up to 1 minute on MacOS.

The Windows 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.
If you get this error message, make sure that your Finale plug-in doesn't use unicode characters.
JW Lua has a problem with unicode characters in file names.

If possible, always use the English default folder names like:
Windows: c:\Program Files\MakeMusic\Finale 26\Plug-ins
macOS: /Library/Application support/MakeMusic/Finale 26/Plug-ins

Finale and/or JW Lua don't like network drives either.
Try to avoid network ressources (\\NetworkPC\FinaleDoc.musx).
There is another FAQ article on this topic.

Image: Error message "No such file or directory"
Yes. It is required to activate and register the plug-in and to download the Finale® plug-in interface "JW Lua" which is not included in the package.
Internet access is also required for updating the plug-in and for deactivating it.
Run the installer tool maintenancetool.exe with administration rights (Right-click with the mouse and select "Run as Admin").
The file maintenancetool.exe can usually be found in C:\Program Files (x86)\Elbsound.studio\Perfect Layout.

Select "Remove all components" and the "Next" and "Ok".

The uninstallation process takes between 30 seconds and three minutes, dependent on the number of users on your Windows system.
During the uninstallation you must explicitly confirm that you also want to uninstall Node.js. Otherwise it won't be uninstalled.
The Perfect Layout edition (Silver400, Silver, Gold) and version number is included in the title of the Perfect Layout window:

a) If Perfect Layout uses RGP Lua (Perfect Layout v3 in Finale 25-27), you need the following files:
The blackened letter is dependent on the plug-in version.



b) If Perfect Layout uses JW Lua (i.e. Perfect Layout v1, v2 in all Finale versions or Perfect Layout v3 in Finale 2014/2014.5), you need the following files:

These seven files must be in the Finale/Plug-ins/Elbsound JW Lua folder after installation on Windows.
By default the full folder name is c:\program files\Finale\Plug-ins\Elbsound JW Lua (for Finale 25).
The blackened areas are different dependent on the Finale and plug-in version.

These three files must be in the Finale/Plug-ins/Elbsound JW Lua folder after installation on MacOS.
By default the full folder name is /Library/Application Support/MakeMusic/Finale/Plug-ins/Elbsound JW Lua.
The blackened area depends on the Finale and plug-in version.

This is how the MacOS Elbsound.studio/Perfect Layout folder should look after the installation.
By default the full folder name is /Library/Application Support/Elbsound.studio/Perfect Layout.

This is how the Windows Elbsound.studio/Perfect Layout folder should look after the installation.
By default the full folder name is c:\program files (x86)\Elbsound.studio\Perfect Layout.
The ending of the JALAYOU... files is different on the Gold/Silver editions.

Perfect Layout generates up to 6 files in Finale's user folder. The folder is typically located in:
Windows: c:\users\YOURNAME\appdata\roaming\makemusic\finale 26 (or other Finale version)
MacOS: ~/library/application support/makemusic/finale 26
Each Finale version has its own folder. So the files are available - and can be different! - in each Finale version.

None of these files are necessary to run Perfect Layout.
If they are missing, the installer or the plug-in itself will (re-)generate them.

The files in detail:
1.) jwpluginstorage.xml: this file determines Finale's plug-in menu name of Perfect Layout and also other JW plug-ins. It also stores the location of the plug-in. If this file is missing or corrupt, the plug-in will not appear in Finale's plug-in menu.
If you delete this file manually, all user settings from any JW plug-ins will be deleted. The file will recreate itself once the plug-in was used, but still your original settings are gone, if you delete it.
Note: this file is only generated from within the Elbsound installer (!), not from running the plug-in.
2.) JALAYOUX.ini (the X letter depends on your plug-in edition): this file stores the last used user settings of Perfect Layout
3.) JALAYOUX.log or JALAYOUX64.log: this log file stores all progress bar text messages from the last usage of the plug-in
4.) ES Perfect Layout.log: this second log file gives more detailed feedback about the last processed file. It is automatically opened at the end of the processing.
5.) LastFANFileCheck.txt: stores info about when the last update or font check has been performed
6.) ESFontFileNames.txt: stores info about the available fonts and font locations on your system

In Finale's subfolder Font Annotation, the Elbsound plug-ins also generate their own font annotation files with the file extension .f2n.
These font annotation files are currently recreated each time after you have run the full installer to make sure the font annotation files have the latest format.
There can be two reasons, if Perfect Layout v3.x doesn't appear in the Finale 25-27+ menu. 1.) Plug-in files missing
Make sure that the Finale plug-in folder, includes all necessary files:


All of these files are installed automatically with the plug-in installer.
If some files are missing, please first delete the "com.robertg..." file and then run the installer again.

If you use Perfect Layout v3.x in Finale 2014/2014.5, the RGPLua.bundle will be replaced with JWLua.bundle. Note: Perfect Layout v3 in Finale 25-27 only works with RGP Lua, and in Finale 2014/2014.5 only with JW Lua.

2.) Wrong settings in the com.robertgpatterson.RGPPluginSettings.xml file
The com.robertgpatterson.RGPPluginSettings.xml file in the Finale/Plug-ins/Elbsound JW Lua folder tells Finale to show ES Perfect Layout in the plug-in menu.

Usually, the Perfect Layout installer will create this com.robertgpatterson.RGPPluginSettings.xml file automatically. However in rare cases it might not work:
For example, if the plug-in folder already existed and included this file and the file was messed up (it's not very likely, but possible).
The installer has a few repair options, but can't solve all problems automatically.

If you don't see the ES Perfect Layout entry in your Finale menu, you can also edit the path in the com.robertgpatterson.RGPPluginSettings.xml file manually in a text editor.

If the file looks like this and includes the correct path of the "ES Perfect Layout (for Menu).lua" file, Finale will show "Elbsound JW Lua/ES Perfect Layout" in its plug-in menu.


   <RGPLua IncludeUI="false">
         <Script Path="c:\Program Files\MakeMusic\Finale 27\Plug-ins\Elbsound JW Lua\ES Perfect Layout - Apply to Parts Only (for Menu).lua" IsDirectory="false" Trusted="true" Debug="false" UseString="false" FromRGPLuaDirectory="false"/>
         <Script Path="c:\Program Files\MakeMusic\Finale 27\Plug-ins\Elbsound JW Lua\ES Perfect Layout (for Menu).lua" IsDirectory="false" Trusted="true" Debug="false" UseString="false" FromRGPLuaDirectory="false"/>

On macOS it looks the same - except the path which typically looks like this:

   <RGPLua IncludeUI="false">
         <Script Path="/Library/Application Support/MakeMusic/Finale 27/Plug-ins/Elbsound JW Lua/ES Perfect Layout - Apply to Parts Only (for Menu).lua" IsDirectory="false" Trusted="true" Debug="false" UseString="false" FromRGPLuaDirectory="false"/>
         <Script Path="/Library/Application Support/MakeMusic/Finale 27/Plug-ins/Elbsound JW Lua/ES Perfect Layout (for Menu).lua" IsDirectory="false" Trusted="true" Debug="false" UseString="false" FromRGPLuaDirectory="false"/>

By default Perfect Layout v3.x (from on 3.0071+) installs and uses RGP Lua as the base plug-in for Finale.
This will work fine in Finale 27.2 - both on an M1 in native mode or in Rosetta mode.

However, if you try to use Perfect Layout v2.x, it won't work in the macOS native mode in Finale 27.2 on the Apple M1/M2/M3 chip.
In this case please run Finale 27.2+ in Rosetta mode. Then Perfect Layout 2.x and JW Lua will work.

This also affects other third party Finale plug-ins:
they may not be compatible with with the native mode and then don't show up in the Finale plug-in menu.

If you have an M1/M2/M3 chip, it's recommended to use Perfect Layout v3.x in Finale 27.2 on an M1 chip with RGP Lua in native mode. It is about 40% faster than in Rosetta mode.

To run Finale in Rosetta mode please:
-Open Finder and select the "Finale 27" app.
-In the File menu click on "Get Info" in the menu bar
-Activate "Open using Rosetta"

Perfect Layout version 3:
PL v3.x in RGP Lua supports the native mode.
PL v3.x in JW Lua still requires Rosetta mode.
This can have several causes:

1.) Did you install Finale 27 after you have installed Perfect Layout?
When you already had a previous version of Finale (e.g. Finale 26) with Perfect Layout, you need to re-install Perfect Layout to make sure it also appears in the plug-in menu of Finale 27.

2.) When applying Perfect Layout to a Finale 27 score with the new SMuFl fonts (e.g. "Finale Maestro"), it doesn't work. Please try the following four solutions:
a) Make sure to have at least v2.47 of Perfect Layout installed. The version number is visible in the top title of Perfect Layout's user dialog.

Image 1: Version number of Perfect Layout

b) Make sure to have the component "Node.js" installed with the automatic plug-in installer (see image 2 below). If you deactivate Node.js during the installation, Perfect Layout won't work with OTF fonts like Finale Maestro.
Perfect Layout v3.x requires at least Node.js version 16.17.0.
Perfect Layout v2.x requires at least Node.js version 14.16.1.
In previous versions Perfect Layout used version 12.x - this doesn't work anymore. If you have an older version of Node.js installed, please re-install Perfect Layout (on Windows you need to uninstall first).
You can also download Node.js 16.17.0 for Perfect Layout v3 directly and install it:
Windows version
macOS version

You can also download Node.js 14.16.1 for Perfect Layout v2 directly and install it:
Windows version
macOS version

c) Should Perfect Layout still have problems with SMuFl fonts, rescan for new fonts. Go to the "General" tab of the plug-in and click on "Rescan Installed System Fonts->Rescan now!".
d) Go to your Finale user folder (Windows: c:\users\YOURNAME\appdata\roaming\makemusic\finale 27, macOS: ~/library/application support/makemusic/finale 27) and delete the file "ESFontFileNames.txt". Perfect Layout will automatically rescan all fonts the next time it starts.
e) Check that your Finale 27 MacSymbolFonts.txt file doesn't include the new SMuUFl font names.

If you want to check if Node.js is correctly installed, please open Windows command (cmd.exe), and type node. It should look like this:

Image 2: Node.js 14.16.1 available on Windows

3.) macOS:
Make sure the macOS tools curl, defaults, sudo and node are available via Terminal.app.
When you open Terminal.app, and type their names it should look like this:

If this is not the case, please contact Elbsound.studio.
For node please follow the installation instructions as described under 2b) above.
macOS has changed its system identification in OS Ventura (13.0).

This means:
Under certain circumstances the plug-in activation is not recognized in Finale anymore if the plug-in (v1.x or v2.x) had been activated in OS 10.13-11.x or in OS 12.x in Rosetta Mode and is now run on an M1 in OS Ventura (OS 13.x).

When the plug-in activation is available, but not recognized, you can't start the plug-in.
Unfortunately you don't see an error message either: the plug-in simply won't start in Finale.

1.) If you have not updated to OS Ventura yet, please deactivate Perfect Layout before updating to OS Ventura and re-activate it after you have updated your OS to Ventura (v13.x).
2.) If you have already updated to Ventura, you need to deactivate the plug-in manually and then re-activate it:
  a) Reset the activation online here
    and then
  b) Clear the activation on your Mac by running the Perfect Layout Deactivation tool

Note: if your plug-in already works fine in OS Ventura, you don't need to deactivate/reactivate the plug-in!
Especially Perfect Layout version 3 has some fixes for avoiding similar problems.
However, according to our users it's likely that old installations of Perfect Layout v1 and v2 only work in OS Ventura with this trick.
If your computer has crashed and you can't deactivate the plug-in anymore, it's not possible to re-activate the plug-in on a new computer. Your old activation blocks the new activation.

Here is how to reset the activation manually in this case.

The macOS deactivation requires two steps:
1) Reset the activation online here
You need your license key (included in your purchase confirmation email) and your registered email address for this.

2) Then clear the activation on your Mac by running the Perfect Layout Deactivation tool.
Just download and run this uninstaller. After running your Elbsound plug-in activations will have been removed from your computer.
Perfect Layout requires either the Finale plug-in JW Lua or RGP Lua to work properly in Finale.

Perfect Layout version 1 and version 2 will only work in JW Lua.
It's impossible to get v1 and v2 to work in RGP Lua!

However, for Perfect Layout version 3+ it is recommended to use RGP Lua.
Version 3 will also still work in JW Lua, but with less features and not in native mode on a macOS M1 chip.

The Perfect Layout v3.x installer automatically installs Perfect Layout with RGP Lua.
There is usually no need to install it manually.

Anyway this is how to do it manually:
To install Perfect Layout in RGP Lua, you first need to download RGP Lua.

Note: You need at least RGP Lua version 0.64 for Perfect Layout v3.0075.
It is always recommended to use the latest version of RGP Lua.

Then open the downloaded .zip file and extract the RGPLua.bundle (macOS) or RGPLuaWin.fxt (Windows) file into your Finale plug-ins Perfect Layout folder.
By default this is the folder:
macOS: /Library/Application Support/MakeMusic/Finale 27/Plug-ins/Elbsound JW Lua
Windows: c:/Program Files/Finale 27/Plug-ins/Elbsound JW Lua

Then you need to connect Perfect Layout with RGP Lua.
Download this Perfect Layout for RGP Lua setup file and paste it into the same folder from above.
This setup file tells RGP Lua to show ES Perfect Layout in the Finale plug-in menu.

At the end you need to have at least four files in that folder:
ES Perfect Layout (for Menu).lua
RGPLua.bundle (macOS) / RGPLuaWin.fxt (Windows)

If JW Lua was installed too, then you will typically have five (macOS) or six (Windows) files in that folder. But these can be ignored.

If Finale was open during this installation process, you would need to restart Finale now. This will update its plug-in menu.

The com.robertgpatterson.RGPPluginSettings.xml looks like this.
Please edit folder name marked in bold, so that it matches your Finale plug-ins Elbsound folder.


   <RGPLua IncludeUI="false">
         <Script Path="D:\Programme\Finale 27\Plug-ins\Elbsound JW Lua\ES Perfect Layout (for Menu).lua" IsDirectory="false" Debug="false" UseString="false" FromRGPLuaDirectory="false"/>

On macOS it looks the same - except the path which typically looks like this:

         <Script Path="/Library/Application Support/MakeMusic/Finale 27/Plug-Ins/Elbsound JW Lua/ES Perfect Layout (for Menu).lua" IsDirectory="false" Debug="false" UseString="false" FromRGPLuaDirectory="false"/>

Image 2: The macOS Finale plug-in folder with all files (jwlua64.bundle is not necessary for RGP Lua)

Note 1: If you also have other versions of Finale installed (25 or 26), you need to repeat the whole RGP Lua setup process for each version of Finale.
I.e. you need to copy all RGP Lua files into the plug-in folders of each Finale version.

Note 2: RGP Lua requires at least Finale 25. It does not work in Finale 2012, 2014 or 2014.5.

Note 3: MacOS only: If you are running Finale 27.2 or higher on a M1 mac, you can run Finale both in native mode or Rosetta mode. RGP Lua supports both modes, JW Lua only supports Rosetta mode. If you run Finale in Rosetta mode and you have both JW Lua and RGP Lua in that folder, you will have two (!) ES Perfect Layout entries in the Finale plug-in menu. It's recommended to remove JW Lua from that folder in this case.

Note 4: MacOS only: If ES Perfect Layout still doesn't work now, please check that you have granted the necessary system access to Finale as described here.

Note 5: If ES Perfect Layout still doesn't work in the Finale menu, please also check that your antivirus/internet security software or firewall doesn't block Perfect Layout's internet access. This is required for checking the license activation. For more info on this issue see here.
The message looks like this:

Image 1: Message "0 Finale installation(s) Found"

The installer only detects Finale versions if they are correctly registered in the Windows registry.
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:

For Finale 27 the following entry should exist:

If you open the Windows tools Regedit, it should look like in the images below.
Note: Your Finale install paths may be different than those in the images below!

Image 2: Finale 2014.5 Registry Entry

Image 3: Finale 25 Registry Entry

Image 4: Finale 27 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 5: 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.
Did you uninstall the Elbsound package or the plug-in right before you started the installer?
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.
In general you can activate the plug-in on only one computer.
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).
We recommend to do both installations within a short time frame (like a few hours). If there are several days between the two installations, it's very likely that it won't work - but it depends on your network settings. If your network never changes its IP address at all ("static IP address"), then there won't be no problems with the two installations.
If the installation fails because of a change in the IP address, you have to uninstall the first installation, and then re-install both installations within the allowed time frame again.
If you uninstall the plug-in completely, make safety copies of your settings file if you have changed the default settings (i.e. JALAYOUX.ini in your Finale configuration folder).

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.

Do not use any IP-hiding or other IP-manipulating services like "No-IP.com" during the activation of the plug-in as this won't work.
After the activation of the plug-in the IP addresses or networks are not important anymore.

One user has reported that it didn't work when one computer used LAN and one WLAN.
In his configuration it only worked when both computers were connected to his LAN.
The reason was that one network used IPv4 addresses and the other one IPv6 addresses.
Usually LAN and WLAN share the same IP base, but this could be a solution if you still have installation problems.

Please also read the next section "Common error codes -18, -19, -21, -22, -44, 83, 84, 85, 86, 120 from second computer activations explained" if you have these error messages during the installation on the second computer.
The following error messages can occur during the installation:

Error -18:
You have tried to activate an update, but your (old) license key is not yet valid for that update.
E.g. if you have bought v1.0 and now try to install v2.x, you will get this error message.

Please purchase the "v1.x to v2.x" update.
Then register the update code to make your old v1.x license key valid for v2.x.
Then install the v2.x update.
(Same for other version number changes, v3, v4, v5, etc.)

Error "-18/64":
Please contact Elbsound.studio if this error occurs.

Error -19:
You are running a plug-in version that doesn't match the version registered to your account.
E.g. if you have bought version 1 or 2 and install the beta of version 3 without upgrading your account to version 3, then you will get this error message.
If Elbsound.studio should update your account (e.g. because you are participating in the beta test), contact Elbsound.studio.
Other please install the correct version that matches the version number from your activation.

This problem also occurs when you have activated an (old) license key on your computer (e.g. a license key for PL v1.0) and then purchase a new license key for a new version like PL v3.0. When you try to start the new PL v3 plug-in from the Finale plug-in menu it will give this error message -19, because it only finds the old license for v1.0 on the computer.
In this case either deactivate the old license key first and reactivate the plug-in with the new license key from the new plug-in which you have purchased.
Or purchase an update which will make your old license key also work with newer versions.

Error -21:
There is a problem with your license key or the plug-in activation.
Please try to uninstall the plug-in from this computer and then try to reinstall. Should it still not work, please contact Elbsound.studio support.

Error -22:
There is a problem with your license key or the plug-in activation.
This error typically occurs when you install the wrong edition:
For example, if Perfect Layout Silver is installed and activated on your computer, and then you run the Gold installer, you will get a warning message that the wrong edition has been installed and also this -22 error message.
In this case try to deactivate the old plug-in from this computer first and then reinstall the new version.

If you have purchased an upgrade and want to install version Gold over Silver, please deactivate Silver first.
Then run the Gold installer.

This error also occurs when you change your computer and re-use the data from the old hard drive.
In this case it's recommended to run the "Perfect Layout Removal"-Tool (for macOS) on the new computer which removes the old installation data.
If Perfect Layout was already activated before, you also need to reset the activation through our online deactivation tool.
After the removal of the old data and the online deactivation you can run the Perfect Layout installer again.

Note 1: The online deactivation tool only works on macOS activations with Perfect Layout v2.x or v3.x,
or on Windows activations with Perfect Layout v3.x. On Windows with PL v1.x and v2.x please contact Elbsound.studio.
Note 2: Don't forget to confirm the deactivation by opening the link in the confirmation email.

The detailed deactivation instructions can be found on this FAQ page under the PL v2: Perfect Layout and Updating to OS Ventura".
Should it still not work, please contact Elbsound.studio support.

Error -44:
The automatic activation check failed. Make sure you are connected to the internet.
In rare cases this error can occur if your internet connecion is extremely slow (e.g. more than 10 seconds for the simple internet connection). Usually this can be handled running the plug-in again.

Error 83:
The plug-in has already been activated on this computer. You may get this message when you try run the installer a second time on this computer and your original installation is broken (e.g. because of a re-installation of Windows or another severe crash). Please try to uninstall the plug-in from this computer and then try to reinstall. Should it still not work, please contact Elbsound.studio support.

Error 84:
The name or email address for your second activation doesn't match the email address in the Elbsound.studio database from your first activation.
Please make sure to use the same email address and retry. Please check your old emails for the email address you used when activating the plug-in on the first computer.
Should you still can't recover the correct email address, please contact Elbsound.studio.

Error 85:
The name/company name for your second activation doesn't match the name/company name in the Elbsound.studio database from your first activation.
Please make sure to use the same name and retry. Please check your old emails for the name you used when activating the plug-in on the first computer.
Should you still can't recover the correct name, please contact Elbsound.studio.

Error 86:
The IP address of your second activation doesn't match the IP address from your first activation.
For more details please read the FAQ section "How can I activate the plug-in on a second computer?".
Please also make sure to not use any IP-hiding or other IP-manipulating services like "No-IP.com" during the activation of the plug-in. This won't work.
However, after the activation of the plug-in has been completed the IP addresses or networks are not important anymore.

Error 120:
Please contact Elbsound.studio if this error occurs.
The full Perfect Layout installer always installs the correct RGP Lua version.

However, in rare cases there may be version conflicts.
There are typically two reasons for an RGP Lua version conflict:

1.) (Main reason!) The RGP Lua file is installed in two Finale plug-in subfolders, but with different version numbers.
Please search all Finale plug-in subfolders for the RGPLuaWin.fxt (Windows) or RGPLua.bundle (macOS) file and make sure they all have the same version number.
Differences can easily be found by looking at the modification date or the file size.
It's ok to have the RGP Lua file in several Finale subfolders, but only if the RGP Lua version numbers are identical.

2.) If you have installed RGP Lua or Perfect Layout manually, conflicts can also occur more easily.
In this case, just re-run the latest Perfect Layout installer to make sure you get the correct RGP Lua version.
When Panda Dome antivirus is installed, make sure its setting "Ask before neutralizing a virus" is activated.
This setting is NOT activated by default.
This means: Panda Dome can delete files automatically without asking the user for permission, even if these are obviously not affected by a virus. In the worst case this can crash programs - like Finale.

If this option is activated, Panda Dome still doesn't ask anything during the plug-in activation and the activation will work fine. It's probably a Panda Dome bug.

Image: Panda Dome setting "Ask before neutralizing a virus" activated (=green)
The plug-in activation does not support the Windows DOS code page 65001.

However, it's possible to manipulate this value in your Windows systems which leads to an error during the activation of the plug-in.
This typically occurs when the Windows Beta option 'Beta: Use Unicode UTF-8 for worldwide language support' is activated in the Windows 'Region Settings' dialog (see image below).

Image: 'Beta: Use Unicode UTF-8 for worldwide language support' option in Windows 10 and 11
By default, this option is deactivated. Only in this case the plug-in activation will work.

It's a known Windows issue that, if activated, old DOS commands like the ones Perfect Layout requires do not work any more (technical explanation here).
Please deactivate this Windows option before activating Perfect Layout.
Note: Deactivating this option requires a Windows reboot.

To automatically detect this problem, Perfect Layout scans the Windows registry value HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Nls\CodePage\OEMCP which stores the default DOS code page value.
The activation on Windows won't work if this value is set to 65001.
There are two known reasons for this problem:

a) An IP-hiding or manipulating services like "No-IP.com" or a virtual private network (VPN) change the IP address of your computer. This may lead to problems during the activation process of the plug-in.

b) Your DOS code page settings prevent an activation.

c) Your antivirus software blocks the activation process.

a) IP problems
Please deactivate any VPN or IP-hiding services before running the activation process in Perfect Layout.

b) Please read the FAQ section on DOS code page problems for a solution.

c) Antivirus software blocking the acitvation process (e.g. BitDefender/Windows)
If the registration dialog appears again after you seem to have successfully activated the plug-in, it's very likely that your antivirus software has blocked the activation of the plug-in in the Windows system.
It's known that the software BitDefender can do that.

However, this does't occur with all BitDefender installations. But we don't know yet what exactly causes this.

1.) Make sure you have the latest BitDefender release.

2.) If you have Finale 25, 26 or 27+, please use these version for the plug-in activation.
Finale 2014/2014.5 are still 32-bit and lead to more problems in the antivirus detection.

3.) If the problem still occurs, have a look at the BitDefender log file and add an exception to BitDefender that allows the registration command to Finale.
Note: You have to reset your plug-in activation online, before you can activate the plug-in again.
Otherwise you will see a message that the license key already has been activated.
Don't forget: The online deactivation requires clicking on the link in the confirmation email that you will receive.

4.) Should it still not work, you may have to deactivate BitDefender during the activation of the plug-in.

Elbsound.studio cannot confirm this issue or its solution.
The problem didn't occur on our computers when we tested BitDefender.
We only report what helped other users who had this problem on their computer.
Please use these solutions at your own risk. Elbsound.studio cannot be held liable for any damages that these external solutions do to your computer.

Unfortunately, we don't have any influence on the development of the many antivirus programs.
Small sofware development companies with these problems are typically ignored.
However, when a software developer looks at the code that BitDefender claims to be dangerous, he can easily see that the blocked code won't do any harm: the code just writes some values into the Windows registry.
The blocked code starts with a PowerShell command.
The only known case where this error message occurs is the Apple "-10673 Error" which occurs in installers from many software companies since January 2022 (see more info). Only a few macOS computers seem to have this problem. On the Elbsound computers this problem didn't occur.

To find out if this was the problem, open the Finder and go to the /var/log folder.
Then open the file install.log in a text editor and search for Perfect Layout at the end of the file.
It is about 100 lines of text from the Perfect Layout installation.
Browse to the very end of this installation block.

Does it include an entry like "The application /Applications/Google Chrome.app cannot be opened for an unexpected reason" followed by "Code=-10673"?

For example like this:
2022-07-24 03:09:50-07 DREF-OFDQ-QHB package_script_service[86658]: ./postinstall: The domain/default pair of (com.elbsound.perfectlayout, InstallName) does not exist
2022-07-24 03:09:51-07 DREF-OFDQ-QHB package_script_service[86658]: ./postinstall: The application /Applications/Google Chrome.app cannot be opened for an unexpected reason, error=Error Domain=NSOSStatusErrorDomain Code=-10673 "(null)" UserInfo={_LSLine=3863, _LSFunction=_LSOpenStuffCallLocal}
2022-07-24 03:09:51-07 DREF-OFDQ-QHB package_script_service[86658]: Responsibility set back to self.

If it includes the code -10673, then the problem has something to do with your default browser settings.

To solve this:
Open the macOS "System Preferences", go to the "General" tab.

If your default browser is not "Safari", please change it to "Safari". Then restart your computer and run the installer again.
If your default browser is "Safari", please change it to "Chrome" (or the other installed browser). Then change it back to "Safari". Then restart your computer and run the installer again.
Should it still not work, change it to "Chrome", restart the computer. Then change it back to "Safari" and restart the computer. Then re-run the installer.

Sounds like a weird solution, but it actually worked and was recommended in the "more info" link above.
Make sure that your computer has internet access. Otherwise read the next FAQ entry: "How do I deactivate the plug-in when my computer has crashed?"

Go to your Elbsound.studio/Perfect Layout folder.
By default this is: c:\program files (x86)\elbsound.studio\perfect layout
Then run the maintenancetool.exe located in that folder, select to "Remove all components". Then click on ok and start the uninstallation/deactivation process.
When the uninstallation is finished, you have to cancel the maintenancetool.exe.

Start the plug-in in Finale. Go to the "General" tab and click on Deactivate. Then cancel the plug-in. This short video shows how to do it - including (re-)activation:

Video: How to deactivate and reactivate Perfect Layout on macOS
To deactivate your plug-in when you don't have access to your computer anymore go to our homepage:
Support->Deactivate Plug-in.

Image A: Online deactivation of the plug-in

Make sure you have your license key and your registered email address at hand.

Enter this info and click on "Get Deactivation Link".
If your product data is correct, you will receive and email with a deactivation link.
If you click on that link and confirm it by entering your license key again, your product will automatically be deactivated in our database.

Note 1: for security reasons the deactivation link is only valid for a few minutes.
Note 2: This only removes the activation
If you have started Finale by double-clicking on a Finale document that is hosted on a network address (e.g.\FinaleDoc.musx or \\NetworkPC\FinaleDoc.musx), then JW Lua On Windows has problems.

Please close Finale and restart it regularly by clicking on the Finale app and opening the Finale document from within Finale. Then run the plug-in again.

If you get this message on MacOS, please contact Elbsound.studio support.
Perfect Layout is automatically installed in Finale 2014, 2014.5, 25 and 26 - but only once for each version. So if you have installed for example multiple instances of Finale 26 (e.g. a German and an English version, or v26.2 and 26.3), you need to install the plug-in manually in some versions.

If you have installed Finale 2014, Finale 25, Finale v26.0 and Finale 26.3 on your computer, you probably only need to install the plug-in manually in either Finale 26.0 or Finale 26.3 (dependent on which is registered correctly).

Here is how to do it:
1.) Make sure you have run the Perfect Layout installer on your computer
2.) Find the main Finale 64bit-version (i.e. Finale 25 or Finale 26) where the plug-in has been installed correctly (i.e. where it appears in the Finale plug-in menu).
3.) MacOS only (on Windows skip this step): Run the plug-in in this main Finale version by selecting the plug-in in Finale's plug-in menu and register/activate the plug-in.
4.) Open MacOS Finder or Windows Explorer and go to the plug-ins folder of your main Finale version.
In Finale 26 this is probably /Library/Application Support/MakeMusic/Finale 26/Plug-ins or c:\program files\MakeMusic\Finale 26\Plug-ins.
5.) Copy the full Elbsound JW Lua folder and paste it into the Plug-ins folder of each of your other Finale 64bit versions where it has not been installed automatically.

Example on MacOS:
If you had /Library/Application Support/MakeMusic/Finale 26/Plug-ins/Elbsound JW Lua and /Library/Application Support/MakeMusic/Finale 26.3/Plug-ins before, then you should also have /Library/Application Support/MakeMusic/Finale 26.3/Plug-ins/Elbsound JW Lua afterwards.

Make sure this new folder contains these files:

Image A: Windows: Necessary files in Plug-ins Folder

Image B: MacOS: Necessary files in Plug-ins Folder

6.) Now open your new Finale version (e.g. 26.3 in the example above) and add the plug-in to Finale's plug-in menu. This also shown in this 1 minute real-time video:

Video: How to manually add Perfect Layout to your Finale plug-in menu

Adding the plug-in entry to Finale's plug-in menu:
7.) Open JW Lua in your Finale plug-in menu (it's available in the folder that you selected during the installation, e.g. Elbsound JW Lua).
8.) In the JW Lua plug-in click on the Development tab.

9.) Click on the "..." (three dots) button at the left bottom, then click on "Add" and select your Finale Elbsound JW Lua plug-ins folder (e.g. /Library/Application Support/MakeMusic/Finale 26.3/Plug-ins/Elbsound JW Lua or c:\program files\MakeMusic\Finale 26.3\Plug-ins\Elbsound JW Lua).
10.) Click on OK and change to the Manager tab of the JW Lua plug-in.

11.) Click on [Menu] in Plug-in Groups
12.) Click on New... in Items in Groups
13.) Select "ES Perfect Layout (for Menu).lua" in your Finale/Plug-ins/Elbsound JW Lua folder from step 9 above.
14.) Close the JW Lua plug-in by clicking on the "Close" button at the right bottom and then close Finale.
Note: Only closing Finale will save the changes to JW Lua.

Repeat the steps 2.-14. for the Finale 32bit-version (i.e. Finale 2014 or Finale 2014.5).

The Elbsound and JW Lua files used in Finale 2014 and Finale 2014.5 are identical (32bit).
The Elbsound and JW Lua files used in Finale 25 and Finale 26 are identical (64bit).
So if you need for example files for Finale 26, you can also use the Elbsound Finale 25 files.

If you have installed Finale 2014, 2014.5 and Finale 25, then install Perfect Layout and then install Finale 26, Perfect Layout will not be available in Finale 26 unless you install it manually as described above or run the installer again.
No, this is not possible. The installer wipes out other Perfect Layout installations in the same folder.
Windows 7 is not supported by Microsoft anymore. We try to support it as long as no new severe issues come up, but we highly recommend to update to Windows 10 or 11 for general security reasons.

To be able to use our plug-ins on Windows 7, please make sure that you have Windows 7 Service Pack 2 (="Convenience Rollup") and all the latest updates installed. Otherwise Windows' PowerShell which is used by the Perfect Layout installer might not work as expected.

Also please always use the latest Perfect Layout Windows installer. The last Windows 7 updates require at least Perfect Layout v2.0042.

Should you still get the "-1756/No Internet Connection Available" message, please install the "Windows Management Framework 5.1" update which installs PowerShell version 5.1 and gives support to TLS12 (the Transport Layer Security protocol required for accessing some https files).
This official Microsoft update KB3191566 is available here.
Make sure to select the correct version which depends on if you have Windows 7 32-bit (File: Win7-KB3191566-x86.zip) or Windows 7 64-bit (File: Win7AndW2K8R2-KB3191566-x64.zip).

The "WMF 5.1" update also requires .NET 4.5 to be installed which is usually the case.
If not, it is available here.

Elbsound.studio cannot confirm this issue or its solution. We only tell what helped other users that had this problem on their computer.
Please use these solutions at your own risk. Elbsound.studio cannot be held liable for any damages that these external solutions do to your computer.
This error can occur on Windows systems where the WMI ("Windows Management Instrumentation") component has become corrupt or is not correctly activated.
According to several sources on a Google search and a confirmation by a Perfect Layout user, running the "Tweaking.com - Windows Repair" tool with its component "WMI Repair" solved this issue.
According to the Tweaking.com homepage the tool is available for free for personal use.

More info on this (common) error message "SWbemObjectSet: Invalid class" is available for example here:
1. "WMI Error: swbemobjectset: invalid class"
2. "WMI Error: swbemobjectset: invalid class"

Note: Use the Tweaking.com - Windows Repair tool at your own risk!
Elbsound.studio is not responsible for this tool and can't guarantee that this fixes the WMI issue or that this tool is even safe and trustful.
Elbsound.studio could not reproduce this WMI error on its own computers and thus cannot confirm this solution.
If this error occurs after the registration dialog, it's very likely that either
(1) your antivirus software has blocked the system registration of the plug-in.
It's known that "Kaspersky Total Security" can trigger this error message.
(2) Or on macOS only the "Security & Privacy->Automation" settings didn't allow Finale to access Terminal.app.
Access must be granted to Finale to use Terminal.app, System Events and Image Events.
It must look like in this image:

If this error mssage has occured, you need to do the following to activate the plug-in:

1.) Clear the failed activation in the Elbsound database via this link.
2.) The following script will remove all invalid Perfect Layout entries from your computer.
a.) Windows: download and run the "Remove Perfect Layout from System" tool.
    To run the script, right click on the script and click on "Run as administrator".
    If Windows doesn't allow to run the script (Dialog "Windows protected your PC"), click on "More info" and then on "Run anyway".
b.) macOS: run the "Deactivate Perfect Layout in System" tool.
3.) Download and run the lastest Perfect Layout installer again
4.) Dependent on problem (1) or (2) you have to:
     (1) Deactivate your antivirus software for a short moment
     (2) or make sure your "Security & Privacy->Automation" are set up as in the image above
5.) Start Finale and click on "ES Perfect Layout" in the Finale Plug-ins menu.
6.) Fill out the Perfect Layout registration form and go through the plug-in activation
7.) After the activation has been completed and you see the first user dialog of Perfect Layout, you can reactivate your antivirus software.
The plug-in has now be correctly activated and should work fine.

Note 1:
The same problem can also occur when you update Perfect Layout.
In this case you may also have to deactivate your antivirus software or add an exception.
The exception is probably:
a) access to the domain https://elbsound.studio
b) allow all Finale.exe files (from each Finale version) to access the system, especially the registry.

Note 2:
Please use this solution at your own risk.
Elbsound.studio cannot be held liable for any damages that deactivating the antivirus system does to your computer.
Make sure you have not added any plug-in to the macOS sudo tool that could affect the output behaviour of sudo.
Sudo is used for accessing the macOS system and in case of the password input, it can lead to problems when sudo plug-ins change the output.
To check if a sudo plugin could be the problem, please disable it and try running the Perfect Layout installer or the plug-in again.
Please contact Elbsound.studio if sudo plug-ins may be the problem and you can't disable them.
There are three known issues:

1. Windows Only:
Make sure PowerShell is installed and accessible on your computer.
It is installed in Windows by default.
However in rare cases it's not accessible because of a corrupt system enviroment setup.

a) Look for your folder c:\Windows\System32\WindowsPowerShell\v1.0\
Does it exist? If so, fine.
If not and you are on Windows 7, please read the topic I am having installation problems under Windows 7 (Error: -1756 / "No Internet Connection Available").

b) Now check that Powershell actually works:
Open the Windows command tool (cmd.exe) and type
powershell $PSVersionTable
Does it look like this:

If so, fine.

c) If not, please check your Windows system environment variables.
Does the system environment variable "Path" include "C:\WINDOWS\System32\WindowsPowerShell\v1.0\"?
If not, please add it.
After that PowerShell should be working.

2. Windows Only:
Make sure the Windows tools cmd and wmic are installed and accessible.
They are installed in Windows by default.
However it's possible that they are not accessible because of a corrupt system enviroment setup.

When typed into the Windows command tool, it should like this:

If this is not the case, make sure your Windows system environment variable Path includes:
c:\Program Files (x86)\nodejs

Image: Screenshot from the German Windows (in English it's "System Environment Variables").
Upper and lower case is not important (Windows and WINDOWS is the same).
This image shows only the entries required for Perfect Layout.
It's very likely that there are many more entries in your Windows setup.

If your main Windows or Program Files (x86) folder is on another hard drive than c:, please change the drive name accordingly.

See 1.) on how to add new environment variables (Click on "Neu" (New) in that dialog).

3. Windows/macOS:
Make sure that you don't have an anti-virus, firewall or internet security software that blocks the domain elbsound.studio.
In this case the plug-in can't connect to the activation database and won't work.

One user reported that the internet security software F-Secure/Windows had blocked the internet access from cmd.exe which the plug-in calls.
Another user reported that the internet security software Sophos had blocked the domain elbsound.studio.
To solve this, please add exceptions to your security software.

4. macOS with sudo plug-ins:
Make sure you have not added any plug-in to sudo that could affect the output behaviour of sudo.
To check if a sudo plugin could be the problem, please disable it and try running the Perfect Layout installer or the plug-in again.
Please contact Elbsound.studio if sudo plug-ins may be the problem and you can't disable them.
  • Perfect Layout v3: Finale® 2014, 2014.5, v25, v26, v27 for 64bit Windows 10, 11 or macOS 10.13+ - 13.x (tested until 13.2).
    Note 1: PL v3 should also work in Windows 7 and 8 when all the latest Windows updates are installed, but Elbsound.studio doesn't support that.
    Note 2: According to some users PL v2 also works in 10.11/10.12, but Elbsound.studio doesn't support that either.
  • Perfect Layout v2: Finale® 2014, 2014.5, v25, v26, v27 for 64bit Windows 7, 8, 10, 11 or macOS (tested in 10.13 - 12.6, according to some users also working in 10.11/10.12)
  • Minimum 4 GB RAM, for huge orchestra scores exceeding about 20.000 frame assignments 8-12 GB RAM and Finale® v25, v26 or v27 are required, otherwise the plug-in may run out of memory.
  • Windows: 250 MB, macOS: 400 MB of free hard drive space (after installation 250 MB), plus space for the font annotation files dependent on the number of fonts that are installed
  • For the installation/(de-)activation 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.
  • macOS (PL v2.x+) and Windows (PL v3.x+): an internet connection is required during the processing of the plug-in for checking the activation
  • macOS only: You need to grant access to Finale to use the Terminal app, Image Events and System Events for activating/checking the license, downloading updates, displaying the plug-in's progress bar (optional) and finding out the number of screens for correct coordinates.
  • macOS only: The macOS standard tool "sudo" is used for some system calls. You may need to disable sudo plug-ins, if they cause problems with Perfect Layout's sudo calls.
  • Windows only: Powershell, WMIC, cmd and curl must be installed (it is installed by default on Windows unless the user has removed it manually)
  • macOS only: The macOS Bash system must be available together with the tools curl, defaults, sudo, echo and osascript. They are available in macOS by default.
  • The faster the processor speed, the faster the plug-in (see this comparison). The plug-in is single-threaded, so multiple cores do not speed up the processing.
  • Data Privacy: For the activation and license validation of the software some data will be stored on our servers. For more info read Data Privacy at Elbsound.studio and the EULA
  • We have tested the French edition of Finale® 2014 and the German edition of Finale® 25 and both worked fine. So we assume that the other versions will do too.
    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.
    No, it isn't. The plug-in was developed with JW Lua, but it can be used like and feels like any other Finale plug-in. The user won't see JW Lua when using Perfect Layout.
    The plug-in appears in Finale's plug-in menu and everything is installed automatically with the installer.
    It has many options though, so it might take some time to get acquainted with all features and options.
    But the plug-in is also designed for "one-click usage". So you should already get good results with the default settings if you follow the workflow suggested in the Quickstart: How to Use-document.

    Image 6: After the installation the plug-in automatically appears in Finale's Elbsound JW Lua plug-in folder.


    To get the new license key please

    1.) Uninstall (Windows) or deactivate (MacOS) your current version (e.g. Silver 400).
    If you have activated two installations ("Two Activation License"), make sure to have both versions uninstalled. For more information on uninstalling/deactivating the plug-in see thread below on uninstallation/deactivation.
    a.) To deactivate the plug-in on MacOS, start the plug-in in Finale, go to the "General" tab and click on "Deactivate", then click on "Cancel".

    Image 1: MacOS Deactivation

    b.) To uninstall the plug-in on Windows, start the maintenancetool.exe in your Elbsound.studio/Perfect Layout folder (probably c:\program files (x86)\elbsound.studio\perfect layout).
    Then select "Remove all components", click "Next" and on the next page click "Uninstall".

    Image 2a und b: Windows Uninstallation

    2.) Tell us that you have uninstalled it (send us a mail via our contact form or use our support email address).
    3.) We will check it in our activation datebase and then remove your old license key from the database
    4.) Then we will send you the new license key for the upgrade edition (e.g. Silver)
    5.) Download your new installer. The link is in your purchase receipt email.
    6.) Run the downloaded installer, enter the new license key and activate the new edition (e.g. Silver).

    The old license key (e.g. from Silver400) is not valid anymore after this procedure (i.e. neither for a Silver400 installation, nor for a Silver upgrade installation).

    We always try to send you the license key as fast as possible. But please keep in mind that this is no automated process. You may have to wait until the next business day until you receive the license key.
    Please also check your spam folder if you haven't received the license key within two business days.
    If you are eligible for a free update, skip to step 2.

    1.) Purchase the update through our online shop.
    The purchase confirmation mail includes an Update Code. This is required on the download page to update your account to the new major version (e.g. from v1.0 to v2.0). It is only required once for that purpose.
    Once your account is set to the new major version (e.g. v2.0), subsequent downloads of intermediate updates (v2.x) don't require the update code anymore, but only the license key.
    Your old v1.x license key is still valid after the update wherever you are asked for the license key - also in a v2.x or v3.x version.

    2.) Open the Elbsound download page in your browser

    3.) Enter your "Update Code" (something like XAHZ96DGS4EL6CMXEGF) included in your update purchase confirmation email together with your original license key (from your old version v1.x) and your registered email address to download the new installer.
    Make sure to select the correct version (Silver400, Silver, Gold).
    If you are eligible for a free update, because you bought a plug-in shortly before the update came out, leave the update code field free as your user account already has been updated automatically.

    If you are on MacOS, just run the new installer like any of our plug-in updates without deactivating the previous Perfect Layout version. The installer overwrites the previous version. Done.

    On Windows you need to uninstall the previous version first before installing the update as the installers are only valid for one main version number. Here is how to install a v1.x to v2.0 update on Windows:

    4.) Make a safety copy of your last saved settings file if these settings are important for you (JALAYOUX.ini in c:\users\YOURNAME\appdata\MakeMusic\Finale ...\JALAYOUX.ini, X can be H, B or G dependent on your version) and if you haven't already saved your settings to a user file.
    It's possible that the deinstallation deletes your last saved settings file (dependent on the version your current v1.x installation).
    5.) Uninstall the old plug-in version by running maintenancetool.exe typically found in c:\program files(x86)\elbsound.studio\perfect layout and selecting "Remove all components".
    6.) If you're using the plug-in with a two activation license on two computers, please make safety copies of your last saved settings and uninstall the plug-in on both computers before running the new installation.
    7.) Run the new installer that you downloaded. Make sure to use your old license key (from v1.x) when you're asked for the license key in the new version (e.g. v2.x). Your license key doesn't change through an update!
    8.) If you have made safety copies of the last saved settings, then restore these settings. Don't delete your old copy - just in case of any problems.
    9.) When you open Finale and start the plug-in, it displays the new version number in its title on the main user dialog.
    10.) If you have two activation licenses, run the new installer on the second computer and restore the settings (as described in 7. + 8.).
    There are three methods to install an intermediate update.
    Either you use Perfect Layout's automatic update installation (1), or you start the update manually in the plug-in (2) or you (re-)run the installer (3). These are described below.
    For updates that change the main version number (e.g. v1.x to v2.x), please read the section above ("How do I update a plug-in from v1.x to v2.0?").

    (1) Automatic Update
    The automatic update download and installation is shown in the video below.
    If you just confirm the automatic installation when you're asked to, everything will happen automatically.
    There is no need to cancel Finale. You just have to restart the plug-in after the update has finished.

    Note: this update method only updates the plug-in in the current Finale version. If you have multiple Finale versions installed, you have to use this process in each Finale version. Only if you use method (3), Perfect Layout will be updated in all Finale versions at the same time.

    Video: Automatic Update Installation (Windows and macOS)

    (2) Manual Update in the Plug-in
    If you want to use Perfect Layout's update function manually, go to the General tab of the plug-in and click on "Check for Updates Now!".

    (3) Update through the installer
    Just run the new installer. It will update any existing installation.

    New updates can be installed through the maintenancetool.exe file in the Elbsound.studio folder (typically: c:\programme (x86)\Elbsound.studio\Perfect Layout\maintenancetool.exe). Make sure that you start the maintenance tool with admin rights (right-click the file with the mouse and select "Run as Administrator").

    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 with maintenancetool.exe on Windows:

    Video: How to update Perfect Layout in one minute
    Some users have reported "false positive" alerts from Kaspersky Total Security during the installation of an update. Kaspersky is informed about this issue, but hasn't fixed it yet.
    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.

    a.) Solution for Perfect Layout version 3
    You can either avoid the update process and download and install the full installer instead, or - at your own risk - deactivate Kaspersky during the update process.

    b.) Solution for Perfect Layout version 1 and 2
    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.

    Note (Perfect Layout v1 and v2/Windows only):
    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.

    One user has reported a "false positive" alert from F-Secure while running the plug-in.
    F-Secure warned that the plug-in uses cmd.exe. As Perfect Layout requires cmd.exe, powershell.exe and node.exe for some system calls (like checking the registration, looking for installed fonts, showing the progress bar, etc.) you need to allow F-Secure to use these Windows system programs.

    Processing Speed

    Lua is a fast script language, but it is unfortunately much slower than optimized and compiled programming languages like C++. Here are a few tips for comfortable working with the Perfect Layout plug-in:

    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.) macOS: If you are on an M1 processor, use PL v3+ in RGP Lua in Finale 27.2 in native mode. This is currently the fastest combination on macOS and about 40% faster than in Rosetta mode.

    However it's typically still about 25% slower than on a fast Windows-PC.
    Or in other words: use a Windows computer!

    c.) 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.

    d.) Running the plug-in:
    - Follow the "Quickstart: 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%) But if you run it on multiple instances at the same time to fine-tune your settings, it might help you to get your desired results faster.
    - 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, v26 and v27. 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.
    No, you don't. But it is more fun on a fast computer. The number of CPU cores doesn't matter. Only the GHz frequency counts. Here you can see how fast the Perfect Layout plug-in performed on the "ES Perfect Layout Demo.musx":

    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.
    MakeMusic (the makers of Finale®) have decided to not give the Finale® PDK (which is needed for development of Finale plug-ins) to new developers like Elbsound.studio. Only the three known developers (Jari Williamsson, Robert Patterson and Tobias Giessen) still have access to the PDK.
    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".
    There are four reasons for this behaviour:
    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.
    There seems to be a little memory leak in the JW Lua PDK, in the Finale® PDK or in Finale.
    Just restart Finale® and the plug-in will be fast again.
    The main dialog shows a rough estimation of the plug-in processing time:

    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.

    One way to save lots of time with Perfect Layout is to do "batch processing". For example if you have a huge score and many extracted parts and you want to process it overnight, this is the solution.
    Attention: this is technique is a bit advanced, so take your time in reading this short tutorial.

    Batch processing with JW Lua only works with the "ES Perfect Layout" plug-in, but NOT with "ES Perfect Layout - Apply to Parts Only" which requires RGP Lua.

    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 settings

    First 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 dialogs

    Batch 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.5 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 processing

    1.) 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 dialogs

    Delete 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.

    MacOS specific

    Perfect Layout uses Terminal.app for showing the progress bar of the plug-in and activating/deactivating the plug-in, "Image Events" for detecting a multi-screen setup and "System Events" for activating/deactivating the plug-in and detecting the screen resolution for correct placement of the progress bar. An external progress bar is necessary as Finale is a single-core software and it's not possible through JW Lua to update a progress bar over a longer period including text descriptions for the current state.
    On the first use of the plug-in you may get a warning message about Terminal.app and System Events wanting to access something (as in the images 11a and 11b below).
    Please allow this if you want to have the progress bar working by clicking on OK and/or Open System Preferences.

    If you don't allow this, Perfect Layout will also work, but dependent on your MacOS and Finale version you probably will not see a progress bar.
    Make sure to allow at least Terminal.app as it is also required for activating/deactivating the plug-in.
    The progress bar script that is run on Terminal.app is located in /Library/Application Support/Elbsound.studio/Perfect Layout/progressbar.sh and its code is readable.

    After you have allowed this access or if you want to change this manually later, you can do so in the macOS "System Preferences" under "Security & Privacy"->"Privacy"->"Automation".
    This is how it looks for Finale 26 and Finale 27 under macOS Big Sur:

    Image 11: Finale 26/27 has been granted access to Terminal.app, System Events and Image Events

    Note: it's possible that the messages below look different or don't pop up at all on other MacOS versions and/or on other Finale versions. Finale versions before 26 and/or macOS versions before Mojave didn't have this accessibility issue.

    Image 11a: One of the Access Warning Messages

    Image 11b: One of the Access Warning Messages

    Image 11c: One of the Access Warning Messages

    Image 11d: One of the Access Warning Messages

    How to reset this?

    If you have accidentally disallowed to use Terminal, SystemEvents or ImageEvents, you can either manually reactivate it by going to System Preferences->Security & Privacy->Privacy->Automation and activating the (deactivated) sub-options Terminal, SystemEvents and/or ImageEvents, so that it looks again like in the image 11 above.
    Make sure to unlock on the "Lock" symbol at the left bottom of the dialog. Otherwise you can't change these entries.

    It's also possible to remove all entries from that Security & Privacy->Automation list.
    Just open Terminal.app and enter:
    tccutil reset AppleEvents
    The next time an app requires access it will again ask you.

    There are three known issues where this can happen.

    1.) The macOS "Security & Privacy->Automation" Settings
    If you are on macOS Mojave (10.14) or higher then make sure that in the macOS "Security & Privacy->Automation" settings "System Events" is activated under your Finale app.
    The first time you ran the plug-in macOS asked if you want to allow Finale to access "System Events". If you have denied this, the plug-in won't work.
    To allow it unlock the setting by clicking on the Unlock symbol at left bottom, then check the "System Events" entry below Finale as in this image:

    2.) The Perfect Layout registration uses AppleScript.
    In rare cases there may be a conflict, for example, with very old Adobe or QuarkXpress software which messes up AppleScript on macOS.
    This does not only affect Perfect Layout, but many other standard software too.
    Two conflicts are known:

    a) The macOS standard tool osascript is not accessible at all.
    This is a very rare, but confirmed macOS issue that is, for example, mentioned and solved in these forums (Link 1 and Link 2).
    To check if this is the problem on your computer, open Terminal.app and copy&paste the next line followed by hitting "Enter":

    osascript -e 'tell application "System Events" to display dialog "Please enter a few letters." with hidden answer default answer "" with title "Test Code for Osascript" with icon 2' -e 'text returned of result'

    You should see a popup dialog that asks you to enter a few letters.
    Or, in case of the issue, you will see the error message:

    How to solve this?
    Should Terminal.app also display the following lines:

    Then you should try Apple's suggestion to type the following line into Terminal.app, hit "Enter" and restart your computer:
    chsh -s /bin/zsh

    If Perfect Layout still doesn't work, then it is probably some other software on your computer that causes this problem.
    You will find many solutions by googling this problem with this link.
    Users that reported this problem on internet forums for other software had many different solutions, so it might be a little tricky to find out what stops osascript on your computer.
    However, it's very recommended to fix this problem on your computer as it also may affect other software.
    osascript is a macOS standard tool that helps to automate many macOS system taks as it can access all kinds of system tools. It's frequently used - not only in Perfect Layout.

    b) The problem with very old Adobe files
    When you google this problem, you will find many confirmations. See for example discussions.apple.com or page 7 in Troubleshooting for Photoshop.

    The solution is to remove the (usually very old) two files:

    Adobe Unit Types.osax

    from these three folders:

    and then restart the computer.
    Note: it's not sufficient that you rename the files in these folder. They must be removed completely from these folders.
    After that the two folders /Library/ScriptingAdditions and ~/Library/ScriptingAdditions should be empty.
    The folder /System/Library/ScriptingAdditions only includes StandardAdditions.osax and Digital Hub Scripting.osax.
    Then run the plug-in again and the "Activate" button should work now.

    Should it still not work, it's possible that you have blocked Terminal.app or Finale some time ago in System Preferences->Security & Privacy->Privacy->Automation.
    In this case have a look at the previous topic ("I get a warning message about Terminal.app/System Events/Image Events access") and search for tccutil reset AppleEvents.
    Usually the first time the plug-in runs, you are being asked to confirm if you want to auto-close the Terminal window which shows the progress of the plug-in. There you should select "Yes".

    If you want to change this behaviour later, go to
    Terminal -> Preferences -> Profiles -> (Select a Profile) -> Shell
    on "When the shell exits" chose "Close the window"
    on "Ask before closing" chose "Never".

    Either selection should work.


    This is an old Finale® bug.
    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).
    Usually this not should occur (so if you encounter this, please contact support).
    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.

    Known Issues

    A user has reported that Perfect Layout doesn't work on Windows if he starts Finale by double-clicking on a Finale document that is hosted on a Samba share. It seems to have to do with the working directory being set differently by Finale when you double-click on a file.

    start Finale regulary (by clicking on the Finale app) and open the Finale document through Finale's Open File dialog.


    The Lua programming language is very limited and many functions required to run the plug-in are not accessible through Lua, but through the Microsoft Windows console (the "Black Window").
    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.

    On MacOS these black windows are not visible.

    Image 5: Several black window pop up during the initialization of the plug-in
    The Finale® window is minimized during the processing as otherwise the automatic redraw functions of Finale® would slow down the plug-in processing dramatically (about 3 times slower).
    Usually this should not occur.
    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.


    It's possible to deactivate all dialogs and warning messages for batch processing.

    In Perfect Layout Gold this can be done easily through the dialog (General->Bypass...).
    In Perfect Layout Silver/Silver400 this can only be done through a trick by changing the BypassMainDialog value in the Perfect Layout settings file (JALAYOUx.ini where x can be H, G or B) from false to true.

    How do I get the user dialog back when it doesn't pop up anymore?
    Either set the option BypassMainDialog in the settings file JALAYOUx.ini to false, so that it looks like this:

    or delete the whole JALAYOUx.ini file. It will automatically recreated next time by Perfect Layout.
    Note: Deleting the file will also delete the last saved settings and return to the default settings of the plug-in.

    The JALAYOUx.ini file for Finale 27 is located in:
    Windows: c:\users\YOURUSERNAME\appdata\roaming\makemusic\finale 27
    MacOS: ~/library/application support/makemusic/finale 27
    No, as in every standard software you will only get the compiled binary which can not be edited.
    JW Lua is a free plug-in development environment for Finale® developed by Jari Williamsson. It uses the original Finale® plug-in development kit (PDK) and gives an interface to develop plug-ins in the programming language Lua.
    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

    More info:
    Documentation: http://jwmusic.nu/jwplug-ins/wiki/doku.php?id=jw_lua
    Interface docs: http://www.finaletips.nu/frameworkref/annotated.php
    JW Lua Mailing List: http://jwmusic.nu/mailman/listinfo/jwlua_jwmusic.nu
    Download: https://www.finaletips.nu/index.php/download/category/28-beta-version
    Free Plug-in Scripts: https://elbsound.studio/jw-lua-scripts.php
    Open JW Lua (Plug-ins->JW Lua->JW Lua) and click on the "Development" tab (see image 6 above). Then click on the file name (left to Plug-in Def...) and select <Open...>.

    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 progress bar shows the progress of the plug-in.

    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.
    I have noticed unoptimized or faulty expression positions and/or the vertical staff spacing is too wide.
    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.) ditto., 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.)
    Technique text expressions are currently only partially part of the collision removal process, because it is more difficult to define their best position. Usually they don't have such a fixed position as for example dynamic expressions have. Hopefully they will be included in a future release.
    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.
    A collision detection for these symbols is currently not supported by the plug-in.
    The same goes for tuplet numbers and slurs.
    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.
    Yes, this is possible. If you apply the Perfect Layout plug-in after the Realbook Plug-in, make sure the following options are unchecked - otherwise the spacing and/or measure layout might get messy:
    - Optimize->Always Apply Music (Re-)Spacing to Full Document Before Processing
    - Optimize->Always Respace If Chords Found
    There are three known scenarios where this can occur:

    1.) 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.
    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.

    BTW, this is a reason why you must always save a Finale® document before running any plug-in.

    2.) When you use unicode letters in the Score Manager->File Info page where the text of the title, subtitle, arranger, etc. are defined, the plug-in can crash.
    For some yet unknown reason (either a problem in the Finale plug-in interface or in JW Lua/RGP Lua) Finale crashes when it reads certain unicode letters from this file info page.

    a) Don't use unicode letters on Finale's File Info page.
    b) Activate "General->Asian Unicode Safety Mode" in the plug-in. When activated the plug-in ignores all texts from the file info page.
    However, this b) solution means that collisions with page text elements that use the file info texts won't be detected anymore.

    As this problem originally occured with unicode characters from Chinese and Japanese fonts only, this is how it got into the dialog.
    Meanwhile there is one known scenario where this crash can also occur with a European unicode letter.

    3.) If you have huge scores (like 600 measures, 50 staves, 50 linked parts or more), you must run the plug-in in Finale 25 or Finale 26 (i.e. with 64 bit).
    If you run it in Finale 2014 or 2014.5 (32bit), it's possible that there is a memory limit problem with JW Lua which can lead to a crash. This doesn't occur in 64bit.

    No, as this is very likely to be more than 100.000 items in a huge score which would be difficult to read.
    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

    Starting ProgressBar
    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 MinimizeFinaleWindow
    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

    The plug-in can be applied both in "Score View" and in "Parts View".
    It is very much recommended though to run the plug-in the first time in "Score View" 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).
    Running the plug-in on the score also makes sure that all inconsistencies between score and parts are removed. Especially older Finale files sometimes have inconsistencies.

    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.

    However it's safe to run the plug-in in "Parts" mode, even if the plug-in has not been applied to the score before. But the plug-in will have slightly less features.

    Which means: if changes are required in the "Score" that are linked to the "Parts", the change will not be made if you run the plug-in in parts only - to avoid inconsistencies.
    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 the change would still be linked correctly between score and parts. Then just run the plug-in on this single part.

    A common use case for running the plug-in in "Parts view" only is for example if you did some changes to a part at the very end of the processing (after Perfect Layout has been applied to the score and all parts).
    In huge scores (or probably only in Finale® documents that are buggy?) Finale® seems to create a massive amount of temporary undo files. So many that temp folder is full (65536 files). We haven't found out yet what Finale® element causes this behaviour. From our 9000 test files this occured in three cases (all files from the same client).
    Although the plug-in will still improve such a score (especially expression and hairpin alignment), it is very likely that it will also remove some manual optimizations.
    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 Quickstart: How to Use the Plug-in).
    Make sure that the font file is available in OTF or TTF format and that it is installed in c:\windows\fonts or in the Windows user font folder (typically C:\Users\YOURUSERNAME\AppData\Local\Microsoft\Windows\Fonts ).

    If you have installed new fonts on your system after the installation of Perfect Layout, make sure to click the "General->Recan Now!" button in Perfect Layout that searches for all (newly) installed fonts.
    Perfect Layout only scans all fonts the very first time it is started.

    If the font is installed on your computer in one of the above mentioned two folders and has an .OTF filename extension, make sure that the tool Node.js is installed on your computer.
    By default Perfect Layout installs Node.js. However, in the Perfect Layout v1 and v2 for Windows it was possible to deactivate the installation. And in very rare cases Node.js is installed, but not accessible.
    To check if Node.js works correctly, open cmd.exe on Windows (type in CMD in the start menu)
    or in Terminal app on macOS, then type node and press Enter.
    If everything is installed correctly, you should see a "Welcome to Node.js" message.

    If it doesn't look like this, you need to re-install Node.js.
    The easiest way is to re-run the Perfect Layout installer.
    However, you can also download the Node.js installer directly from their homepage.
    Perfect Layout v2.x requires at least Node.js version 14.16.1: Download it for Windows or macOS.
    Perfect Layout v3.x requires at least Node.js version 16.17.0: Download it for Windows or macOS.
    After installing Node.js the problem should be solved.

    If the plug-in still complains that it can't generate font annotation files for an .OTF font, there is also another workaround:
    a) Generate a .TTF version of your .OTF font file with a font converter like www.onlinefontconverter.com (Make sure the font license allows the creation)
    b) Create a sub-folder "ttf-fonts" in your Finale/Font Annotation folder
    c) If you have several Finale versions installed, create a sub-folder for each Finale/Font Annotation folder
    d) Rename the font file name of the newly generated .TTF file to be eactly like the .OTF file (but keep the .TTF file extension)
    e) Copy the new ttf font file into the "ttf-fonts" folder
    f) If you have several Finale version installed, copy it into each of the "ttf-fonts" folders

    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.
    The OK button is not clickable when the Finale document is larger than the plug-in edition allows:
    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.
    Yes. It's also possible to apply it to the full score/parts first, and after some minor adjustment apply it to single measures or staves.
    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.
    1.) Check that the pages don't have page breaks which prevents measure shifting.
    Perfect Layout automatically adds page breaks to lock the page layout - in order to prevent that Finale automatically undoes the layout that Perfect Layout has created.
    To do this select the Page Layout tool, right-click on the staff system and click on "Delete Page Break" if available.
    2.) There is also a JW Lua script that can remove all page breaks with one click.
    You can download the script here. If you need help on how to use the JW Lua script "RemoveAllPageBreaks", please read this (external) "Getting Started with JW Lua" tutorial.
    3.) Please check Finale's Preferences->Edit and look at the reflow settings. Make sure "Reflow Systems Across Pages" is checked (for moving systems). Then set "Reflow Measures" to "Only Within Systens" or "Across Systems (Maintain System Locks)" (for moving measures).

    Please also read the section on the Reflow settings in the "Quickstart: 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 3.).
    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 Finale's font encoding settings don't match Perfect Layout's settings, it will display this warning message:

    Image: MacSymbolFonts.txt warning message

    If you don't use the fonts from the warning message in Finale at all, just ignore the warning message and select yes.
    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.
    If your accidentals become like this (i.e. the bottom accidental colliding with the notehead in the right image):

    this may be the result of a very old Finale file (created before 2004).
    To fix this go to Document Options->Accidentals and activate "Use cross-layer accidental positioning" before running Perfect Layout.
    The plug-in supports nearly all main music fonts (more than 470).
    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.
    These are:
    - 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.
    Finale sometimes only shows musical symbols from a font in their font selection lists instead of the real font name:

    To select the correct font, please type the name manually as in this animation:
    In two cases JetStream seems to have problems when adding hairpins that span over more than one measure to a Finale document (as of 20th January 2021).
    While the hairpins visually look fine after adding them through JetStream, they are internally stored critically - and can lead to problems when changing the measure layout of the (second) hairpin measure in Finale or when applying Perfect Layout: the hairpins can suddenly appear above the staff or even in the previous measure. The JetStream team is already working on a fix.

    Quick Workaround:
    Problem 1:
    If you only have hairpins below the staff in your score, there is a simple fix for the "above the staff" problem:
    select the whole document and go to Plug-ins->JW Change->Hairpins->Vertical Position , then uncheck "Relative" and set "Vertical" to -144 EVPU. This moves ALL hairpins below the staff.
    If you then apply Perfect Layout, the "JetStream"-hairpins will not appear above the staff anymore.

    The information about this JetStream behaviour was not confirmed by Elbsound.studio, but only reported to us by a client.
    The JetStream team was informed by us and confirmed that they will have a look at this issue.

    Problem 2:
    There is probably no workaround for the "move to the previous measure" problem, except: don't use Perfect Layout, don't change the measure layout in the second (or third) hairpin measure and don't change the time signature as this might influence the (visual) placement of the hairpins.
    We recommend to wait for an update of JetStream.
    We don't know which hairpins are affected by this. In the document that we received from a client, this second problem only affected a cresc. hairpin over several measures directly connected with a dim. hairpin. These were internally not assigned to the measure in which they were visible, but to the previous measure at a beat position beyond the time signature (e.g. at beat 6 in a 4/4 measure).
    For most users the Silver400 edition is the best choice.
    It costs about half as much as a regular Finale® update, but has hundreds of powerful features which is much, much more than a regular Finale® update - maybe as much as five or more updates.

    With Perfect Layout you can easily create scores with a professional look. Professionals calculate in working hours.
    80% of our v2.0 beta users reported that Perfect Layout saved them 20% or more of their overall Finale working time. One third even reported that it saved them more than 25% of their time (see image below from the v2.0 beta test survey from January 2021).
    And the plug-in creates a more balanced output than you could achieve manually in that time.
    So if you save one day 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 200 options in the user dialog, more than 700 internal parameters which cover all options, distances, movements, etc, more than 300.000 lines of code and support for more than 470 music fonts. It also fixes very many long-term problems of Finale® and features many new "intelligent" algorithms for automatic score and parts preparation.

    And 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.

    Perfect Layout version 3: yes!

    Perfect Layout version 1 and 2: In general yes.
    Only the new Fin26 functions (articulation stacking and slur collision with articulations) currently can't be detected with the recent JW Lua release.
    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".
    Our online shop is operated by the German company Digital River GmbH.
    You can download their W-8BEN-E form here.
    Write us a mail and let us know what you would like to see in the next update of the Perfect Layout plug-in.