JWLuaMenu

JWLuaMenu allows you to arrange your plugin menu into menus and submenus to your taste. Originally targeted specifically at JW Lua scripts, it now supports other plugins that do not themselves organize their own menus. Examples of plugins that do organize their own menus (and therefore do not work with JWLuaMenu) are FinaleScript, TGTools, and many of the Patterson Plugins. Examples of plugins that do work with JWLuaMenu are other plugins that ship with Finale, JW Lua, RGP Lua, and Patterson Plugins with saved settings for which the "Use submenu for the Saved Settings of this plugin" option is unchecked.

The menu layout is determined by a text file called JWLuaMenuLayout.txt that must reside in the same folder as the JWLuaMenu plugin file. The first time you run the plugin, it offers to create a template version of the text file based on your JW Lua menu items. (This is a holdover from when it was targeted specifically at JW Lua.) Save this file in the same folder as the plugin, and it will recognize it right away. You can then edit the file to taste from there. (Each time you change it you must restart Finale to reflect the changes.)

The JWLuaMenuLayout.txt file supports the following keywords and tokens. Empty lines are skipped.

MENUNAME [text]
Locates the source menu from which to take items; note that this is not the actual name of the menu. The plugin searches Finale's Plug-Ins menu and submenus for a plugin that starts with this text (e.g., JW Lua or RGP Lua for organizing Lua scripts). The menu containing that plugin becomes the menu from which items listed below this keyword are taken. MENUNNAME can be specified multiple times in the file to allow items to be drawn from multiple source menus. If this value is omitted, it defaults to JW Lua.
USEMAINMENU [text]
Specifies the name of a new menu to be created in Finale's main menu bar for submenus which follow in the file. If omitted, the items listed in the file will be copied to the same menu located by MENUNAME. You can include an ampersand (&) for a Windows menu hotkey. This will be stripped out and ignored if the file is used with Mac Finale.
>[text] Starts a submenu with name [text]. Submenus can be nested.
< Ends the current submenu.
=> Changes the menu item text from the original text to new text. (See sample files.)
- A single hyphen by itself inserts a divider into the menu.
// Delimits a comment. Everything after the comment delimiter is ignored.

Tabs and other whitespace are ignored, but it may be useful to use tabs to show submenus. If any of the source menus are empty after the menu layout is complete, JWLuaMenu removes that submenu from Finale's plugin menu.

Examples:

Sample file that shows the creation of two separate new menus for RGP Lua and JW Lua.

Sample file that shows how to mix the items from RGP Lua and JW Lua into a single new menu in Finale's main menu.

JWLuaMenu Version History

v1.06 Dec. 22, 2021 Minor bug fixes.
v1.05 Nov. 22, 2021 Mac version requires macOS 10.12 or higher. (Previously the minimum version was 10.10.)
Added ability to organize multiple menus.
Mac version adds native Apple Silicon support to work with potential future versions of Finale with native Apple Silicon support.
v1.04 Mar. 26, 2021 Added ability to change menu item text with ==> delimiter.
v1.03 Feb. 19, 2021 Changed Windows version to allow the JWLuaMenu plugin to reside anywhere in the plugin folder hierarchy.
v1.02 Feb. 15, 2021 Added support for JW Lua plugin inside JW Lua subfolder.
Added error handling if JW Lua menu item not found.
Open Save As in same directory as JWLuaMenu plugin.
Add exception to "&" removal on Mac side.
v1.01 Feb. 11, 2021 Added support for Windows keyboard shortcuts (with "&")

Return to Download Utilities page.