executeMenuCommand() Command List

Contributor ,
Aug 12, 2022 Aug 12, 2022

Copy link to clipboard

Copied

While building Ai Command Palette I found a great list of executeMenuCommand() values extracted by Shalako Lee from the 2017 SDK. As you might imagine, some of those commands no longer work, and since I'm about to release v0.2.0 of Ai Command Palette I've been testing them all and keeping track of the results in this Google Sheet.

 

I'm sharing this here because I figured this might be useful to some of you who write scripts for Illustrator. The sheet includes the Original List of commands from Shalako and a working list of the commands that I'm testing in Ai v26.3.1.

 

Right now I'm about halfway through the original 506 commands from Shalako's list. So far, I've found about 90 that no longer work. I've also updated any verbiage that may have changed in the menu system (since 2017) and updated the ordering to match Ai v26.3.1.

 

I also, made a simple script to test the commands below if you want to test any yourself. I'm trying to test each command in context to ensure they are working correctly.

 

Let me know if you have any other that I may have missed... Cheers!

 

P.S. There is another list on this forum (posted in 2014) that I have yet to review but I am aware of it and plan to compare it with Shalako's.

 

var result = prompt("Enter Command To Test", "", "Test Built-In Commands");

try {
  app.executeMenuCommand(result);
} catch (e) {
  alert("Error executing command:\n" + result + "\n\n" + e);
}

 

TOPICS
Scripting

Views

304

Likes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines

correct answers 3 Correct answers

Advisor , Aug 12, 2022 Aug 12, 2022

You may be interested in this 

 

I've found Ten A's list to be the most complete: 

https://ten-artai.com/illustrator-ccver-22-menu-commands-list 

Likes

Translate

Translate
Participant , Aug 12, 2022 Aug 12, 2022

I also maintain a menuCommandString database, so I will introduce it. It is Illustrator 2022 (26.4.1) equivalent and is made of Notion. There are currently 530 commands in this database.

Illustrator Reference/ExtendScript/app.executeMenuCommand | Notion

Likes

Translate

Translate
Community Beginner , Aug 15, 2022 Aug 15, 2022

There is my list for app.executeMenuCommand('command'),

with some plugins and parm error:

https://www.dropbox.com/s/kr426jos9gw09ko/menu.txt?dl=0

 

And app.selectTool('command'):

https://www.dropbox.com/s/qjivaj753y1egwl/tool.txt?dl=0

Likes

Translate

Translate
LEGEND ,
Aug 12, 2022 Aug 12, 2022

Copy link to clipboard

Copied

Awesome! Thanks for sharing this.

Likes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Advisor ,
Aug 12, 2022 Aug 12, 2022

Copy link to clipboard

Copied

You may be interested in this 

 

I've found Ten A's list to be the most complete: 

https://ten-artai.com/illustrator-ccver-22-menu-commands-list 

Likes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Contributor ,
Aug 12, 2022 Aug 12, 2022

Copy link to clipboard

Copied

Holy smokes this looks great! I'll get new ones I don't already have added to the sheet and added to Ai Command Palette. Thanks!

Likes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Contributor ,
Aug 12, 2022 Aug 12, 2022

Copy link to clipboard

Copied

@femkeblanco good news is mine matched up almost perfectly with Ten A's except for the following commands that I had removed because they do not work. Thanks again for the tip!

 

Non-Working Commands

  • Define Pattern Menu Item
  • TracingPresets
  • SWFPresets
  • FileClipboardPref
  • Adobe internal composite font plugin
  • Adobe Kinsoku Settings (may not be working on my machine because of language issues)
  • Adobe MojiKumi Settings (may not be working on my machine because of language issues)
  • Selection Hat 12
  • Dynamic Text
  • Input Text
  • Live PSAdapter_plugin_Ct
  • Live PSAdapter_plugin_Spt
  • Live PSAdapter_plugin_Gls
  • Live PSAdapter_plugin_Grn
  • Adobe Save Workspace
  • AdobeBuiltInToolbox1
  • Adobe Illustrator Kuler Panel
  • about (since it's being run from a script the About screen only flashes for a split second)
  • Adobe Color Palette Secondary (just a copy of Adobe Color Palette)
  • AdobeNavigator2
  • AdobeNavigator2

Likes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Participant ,
Aug 12, 2022 Aug 12, 2022

Copy link to clipboard

Copied

I also maintain a menuCommandString database, so I will introduce it. It is Illustrator 2022 (26.4.1) equivalent and is made of Notion. There are currently 530 commands in this database.

Illustrator Reference/ExtendScript/app.executeMenuCommand | Notion

Likes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Contributor ,
Aug 12, 2022 Aug 12, 2022

Copy link to clipboard

Copied

This is great! Seems you have about 75 that I haven't found anywhere else. I'll go through them all and get them added. Thanks so much!

Likes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Participant ,
Aug 12, 2022 Aug 12, 2022

Copy link to clipboard

Copied

Remarks:

 

  • Includes both old and new menu items that have been renamed. There are duplicates
  • The last part of the Photoshop effect is 4 characters long. If it is short, fill in the spaces (e.g. 'Live PSAdapter_plugin_Ct  ')
  • There was confusion in the specification with both the properties panel and version history being the empty string ''. It seems that they changed to 'Adobe Property Palette' and 'Adobe Version History File Menu Item' at some point

Likes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Contributor ,
Aug 13, 2022 Aug 13, 2022

Copy link to clipboard

Copied

@sttk3, your list of command strings is great! I tested all 500+ on my Mac in Ai v26.3.1 and only found 11 that didn't work for me. I've listed them below. I've updated my spreadsheet with any new commands you had that I didn't. Thanks again for sharing!

 

Edit > SWF PresetsSWFPresets
Illustrator > Preferences > File Handling & ClipboardFileClipboardPref
Type > Composite FontsAdobe internal composite font plugin
Type > Kinsoku Shori SettingsAdobe Kinsoku Settings
Type > Mojikumi SettingsAdobe MojiKumi Settings
Window > Toolbars > DefaultDefault ToolBar
Window > Color ThemesAdobe Illustrator Kuler Panel
Window > LibrariesAdobe CSXS Extension com.adobe.DesignLibraries.angularライブラリ
Window > LibrariesAdobe CSXS Extension com.adobe.DesignLibraries.angularCC ライブラリ
Window > HistoryAdobe HistoryPanel Menu Item
Window > LearnAdobe Learn Panel Menu Item

Likes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Participant ,
Aug 14, 2022 Aug 14, 2022

Copy link to clipboard

Copied

Thanks @jduncan, I noticed some changes thanks to your confirmation. I’m actually tracking the available versions as best I can and will update later.

 

Illustrator Reference/Raw Database (for internal use)/menuCommandsString | Notion

 

Edit > SWF Presets

SWFPresets

Removed from v26

Illustrator > Preferences > File Handling & Clipboard

FileClipboardPref

Removed from v25

Illustrator > Preferences > Clipboard Handling

ClipboardPref

Added from v26

Type > Composite Fonts

Adobe internal composite font plugin

Japanese language features

Type > Kinsoku Shori Settings

Adobe Kinsoku Settings

Japanese language features

Type > Mojikumi Settings

Adobe MojiKumi Settings

Japanese language features

Window > Toolbars > Default

Default ToolBar

Removed from v23

Window > Color Themes

Adobe Illustrator Kuler Panel

Removed from v26

Window > Libraries

Adobe CSXS Extension com.adobe.DesignLibraries.angularライブラリ

Removed from v23

Window > Libraries

Adobe CSXS Extension com.adobe.DesignLibraries.angularCC ライブラリ

Japanese characters are included. This item means Creative Cloud Library

Window > History

Adobe HistoryPanel Menu Item

Added from v26.4

Window > Learn

Adobe Learn Panel Menu Item

Removed from v26

Likes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Contributor ,
Aug 14, 2022 Aug 14, 2022

Copy link to clipboard

Copied

I found that "Preferences > File Handling..." ==  "FilePref" in v26 if you wanted to add that to your list. Thanks again for your help!

Likes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Contributor ,
Aug 12, 2022 Aug 12, 2022

Copy link to clipboard

Copied

Awe inspiring, that's what I'm looking for.👍👍

Likes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Beginner ,
Aug 15, 2022 Aug 15, 2022

Copy link to clipboard

Copied

There is my list for app.executeMenuCommand('command'),

with some plugins and parm error:

https://www.dropbox.com/s/kr426jos9gw09ko/menu.txt?dl=0

 

And app.selectTool('command'):

https://www.dropbox.com/s/qjivaj753y1egwl/tool.txt?dl=0

Likes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Contributor ,
Aug 15, 2022 Aug 15, 2022

Copy link to clipboard

Copied

Another great list! I went through all of yours and added the ones I didn't have. Thanks so much!

Likes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
LEGEND ,
Aug 16, 2022 Aug 16, 2022

Copy link to clipboard

Copied

LATEST

I was not aware of the "app.selectTool()" command! Thank you.

Likes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Expert ,
Aug 15, 2022 Aug 15, 2022

Copy link to clipboard

Copied

awesome work, thanks to all that contributed to put the list together.

Likes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Expert ,
Aug 15, 2022 Aug 15, 2022

Copy link to clipboard

Copied

So many great resources here. Thanks to everyone for contributing and compiling these lists and even testing them in different versions.

 

On the topic of menu commands, my biggest gripe has always been the naming convention of the commands. In many cases, the argument required for app.executeMenuCommand() is cryptic, nonsensical, or not at all descriptive of what the command does. Additionally, the variable naming convention makes it very difficult to remember how to format the argument for the command you need. And incorrectly formatting your menu command argument brings about the dreaded MRAP/PARM. 

 

Would there be any interest in, or do you think you might use some kind of framework for app.executeMenuCommand() allowing the freedom to effectively namespace "app.executeMenuCommand" with a custom function name (personally, id choose emc("commandName"); but any user could choose whatever function name they want. Then within the function, the custom arguments are assigned to the appropriate argument for executeMenuCommand(). Errant arguments could also be handled more gracefully and with more useful info than a generic mrap.

 

This also gives freedom to the user to customize their command/argument pairs to best suit their workflow. As an example, to select all same fill colors, the default argument is "Find Fill Color menu item" in a frustrating variable letter case scheme.. I'd like to call that command with emc("sameFill"); so in my emc() function, i'd assign "sameFill" to "Find Fill Color menu item", then input the appropriate argument into executeMenuCommand();

 

It would also be possible to include custom logic before/after the actual menu command for certain commands. As an example, the live pathfinder effects often need to be expanded. But not always. emc() could accept another argument for enabling or disabling the paired functionality, or even just passing it in as one of the parameters. perhaps an object literal for feeding custom params to different functions.

 

You could also bind multiple menu commands together for common tasks, all while keeping your main code nice and tidy (a big priority of mine after many years of writing disgusting spaghetti code) with menu command arguments that make sense to YOU and are customizable for your own workflow.

 

If optimization is desired.. I.E, not including a giant function with 500+ commands to every script just so you can use one or two.. The commands could be split into smaller chunks by category like "File", "Edit", etc. Or even compact custom sets for production that only include the commands your code actually uses.

 

What do you guys think? I know extendscript/scripting-as-we-know-it is dying anyway and transitioning to UXP.. But I think this would be a pretty straightforward build that could still be useful in the interim.

Likes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Participant ,
Aug 15, 2022 Aug 15, 2022

Copy link to clipboard

Copied

Small emc() chunks can be manually written for the current task. I haven't seen any scripts that use a lot of different app.executeMenuCommand().

 

ES will not die as long as there are users of old versions of Illustrator. And there are a lot of them, because Adobe updates are unpredictable, break paid plugins and user workflow.

Likes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines

Save time with Adobe Express quick actions